您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
From rushers for rushers
// ==UserScript== // @name E-Push // @version 1.7.0 // @description From rushers for rushers // @description:ru От рашеров для рашеров // @author PixelMelt // @author Exobyte // @namespace https://github.com/PixelMelt // @match https://evades.io/ // @match https://evades.online/ // @match https://eu.evades.io/ // @match *://192.99.150.59/* // @license Proprietary - All Rights Reserved // @grant none // @icon https://www.google.com/s2/favicons?domain=evades.io // @run-at document-start // ==/UserScript== (function () { /* * Copyright (c) 2025 Pixelmelt * All Rights Reserved * * This code is proprietary and confidential. * Unauthorized copying, modification, distribution, or use of this code, * via any medium, is strictly prohibited. * * Libraries used: * https://github.com/protobufjs/protobuf.js/ * * ES5 Compatable */ /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ // E-Push v1.7.0 // Created by Pixelmelt !function(A, e) { "object" == typeof exports && "object" == typeof module ? module.exports = e() : "function" == typeof define && define.amd ? define([], e) : "object" == typeof exports ? exports.EPush = e() : A.EPush = e(); }(self, (() => (() => { var __webpack_modules__ = { 34: (A, e, t) => { "use strict"; var i = t(4901); A.exports = function(A) { return "object" == typeof A ? null !== A : i(A); }; }, 81: (A, e, t) => { "use strict"; var i = t(9565), n = t(9306), r = t(8551), o = t(6823), a = t(851), s = TypeError; A.exports = function(A, e) { var t = arguments.length < 2 ? a(A) : e; if (n(t)) return r(i(t, A)); throw new s(o(A) + " is not iterable"); }; }, 113: (A, e, t) => { "use strict"; var i = t(6518), n = t(9213).find, r = t(6469), o = "find", a = !0; o in [] && Array(1)[o]((function() { a = !1; })), i({ target: "Array", proto: !0, forced: a }, { find: function(A) { return n(this, A, arguments.length > 1 ? arguments[1] : void 0); } }), r(o); }, 235: (A, e, t) => { "use strict"; var i = t(9213).forEach, n = t(4598)("forEach"); A.exports = n ? [].forEach : function(A) { return i(this, A, arguments.length > 1 ? arguments[1] : void 0); }; }, 259: (A, e, t) => { "use strict"; var i = t(4376), n = t(6198), r = t(6837), o = t(6080), flattenIntoArray = function(A, e, t, a, s, g, I, c) { for (var u, C, Q = s, B = 0, E = !!I && o(I, c); B < a; ) B in t && (u = E ? E(t[B], B, e) : t[B], g > 0 && i(u) ? (C = n(u), Q = flattenIntoArray(A, e, u, C, Q, g - 1) - 1) : (r(Q + 1), A[Q] = u), Q++), B++; return Q; }; A.exports = flattenIntoArray; }, 280: (A, e, t) => { "use strict"; var i = t(6518), n = t(7751), r = t(6395), o = t(550), a = t(916).CONSTRUCTOR, s = t(3438), g = n("Promise"), I = r && !a; i({ target: "Promise", stat: !0, forced: r || a }, { resolve: function(A) { return s(I && this === g ? o : this, A); } }); }, 283: (A, e, t) => { "use strict"; var i = t(9504), n = t(9039), r = t(4901), o = t(9297), a = t(3724), s = t(350).CONFIGURABLE, g = t(3706), I = t(1181), c = I.enforce, u = I.get, C = String, Q = Object.defineProperty, B = i("".slice), E = i("".replace), l = i([].join), h = a && !n((function() { return 8 !== Q((function() {}), "length", { value: 8 }).length; })), f = String(String).split("String"), d = A.exports = function(A, e, t) { "Symbol(" === B(C(e), 0, 7) && (e = "[" + E(C(e), /^Symbol\(([^)]*)\).*$/, "$1") + "]"), t && t.getter && (e = "get " + e), t && t.setter && (e = "set " + e), (!o(A, "name") || s && A.name !== e) && (a ? Q(A, "name", { value: e, configurable: !0 }) : A.name = e), h && t && o(t, "arity") && A.length !== t.arity && Q(A, "length", { value: t.arity }); try { t && o(t, "constructor") && t.constructor ? a && Q(A, "prototype", { writable: !1 }) : A.prototype && (A.prototype = void 0); } catch (A) {} var i = c(A); return o(i, "source") || (i.source = l(f, "string" == typeof e ? e : "")), A; }; Function.prototype.toString = d((function() { return r(this) && u(this).source || g(this); }), "toString"); }, 298: (A, e, t) => { "use strict"; var i = t(4576), n = t(5397), r = t(8480).f, o = t(7680), a = "object" == typeof window && window && Object.getOwnPropertyNames ? Object.getOwnPropertyNames(window) : []; A.exports.f = function(A) { return a && "Window" === i(A) ? function(A) { try { return r(A); } catch (A) { return o(a); } }(A) : r(n(A)); }; }, 350: (A, e, t) => { "use strict"; var i = t(3724), n = t(9297), r = Function.prototype, o = i && Object.getOwnPropertyDescriptor, a = n(r, "name"), s = a && "something" === function() {}.name, g = a && (!i || i && o(r, "name").configurable); A.exports = { EXISTS: a, PROPER: s, CONFIGURABLE: g }; }, 361: (A, e, t) => { "use strict"; var i = e, n = t(3262), r = [ "double", "float", "int32", "uint32", "sint32", "fixed32", "sfixed32", "int64", "uint64", "sint64", "fixed64", "sfixed64", "bool", "string", "bytes" ]; function bake(A, e) { var t = 0, i = {}; for (e |= 0; t < A.length; ) i[r[t + e]] = A[t++]; return i; } i.basic = bake([ 1, 5, 0, 0, 0, 5, 5, 0, 0, 0, 1, 1, 0, 2, 2 ]), i.defaults = bake([ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, !1, "", n.emptyArray, null ]), i.long = bake([ 0, 0, 0, 1, 1 ], 7), i.mapKey = bake([ 0, 0, 0, 5, 5, 0, 0, 0, 1, 1, 0, 2 ], 2), i.packed = bake([ 1, 5, 0, 0, 0, 5, 5, 0, 0, 0, 1, 1, 0 ]); }, 373: (A, e, t) => { "use strict"; var i = t(2195), n = t(7476), r = t(9039), o = t(9306), a = t(4488), s = t(4644), g = t(3709), I = t(3763), c = t(9519), u = t(3607), C = s.aTypedArray, Q = s.exportTypedArrayMethod, B = i.Uint16Array, E = B && n(B.prototype.sort), l = !(!E || r((function() { E(new B(2), null); })) && r((function() { E(new B(2), {}); }))), h = !!E && !r((function() { if (c) return c < 74; if (g) return g < 67; if (I) return !0; if (u) return u < 602; var A, e, t = new B(516), i = Array(516); for (A = 0; A < 516; A++) e = A % 4, t[A] = 515 - A, i[A] = A - 2 * e + 3; for (E(t, (function(A, e) { return (A / 4 | 0) - (e / 4 | 0); })), A = 0; A < 516; A++) if (t[A] !== i[A]) return !0; })); Q("sort", (function(A) { return void 0 !== A && o(A), h ? E(this, A) : a(C(this), function(A) { return function(e, t) { return void 0 !== A ? +A(e, t) || 0 : t != t ? -1 : e != e ? 1 : 0 === e && 0 === t ? 1 / e > 0 && 1 / t < 0 ? 1 : -1 : e > t; }; }(A)); }), !h || l); }, 397: (A, e, t) => { "use strict"; var i = t(7751); A.exports = i("document", "documentElement"); }, 420: (A, e, t) => { "use strict"; A.exports = function(A) { var e = n.codegen([ "m" ], A.name + "$verify")('if(typeof m!=="object"||m===null)')("return%j", "object expected"), t = {}; A.oneofsArray.length && e("var p={}"); for (var i = 0; i < A.fieldsArray.length; ++i) { var r = A._fieldsArray[i].resolve(), o = "m" + n.safeProp(r.name); if (r.optional && e("if(%s!=null&&m.hasOwnProperty(%j)){", o, r.name), r.map) e("if(!util.isObject(%s))", o)("return%j", invalid(r, "object"))("var k=Object.keys(%s)", o)("for(var i=0;i<k.length;++i){"), genVerifyKey(e, r, "k[i]"), genVerifyValue(e, r, i, o + "[k[i]]")("}"); else if (r.repeated) e("if(!Array.isArray(%s))", o)("return%j", invalid(r, "array"))("for(var i=0;i<%s.length;++i){", o), genVerifyValue(e, r, i, o + "[i]")("}"); else { if (r.partOf) { var a = n.safeProp(r.partOf.name); 1 === t[r.partOf.name] && e("if(p%s===1)", a)("return%j", r.partOf.name + ": multiple values"), t[r.partOf.name] = 1, e("p%s=1", a); } genVerifyValue(e, r, i, o); } r.optional && e("}"); } return e("return null"); }; var i = t(5643), n = t(3262); function invalid(A, e) { return A.name + ": " + e + (A.repeated && "array" !== e ? "[]" : A.map && "object" !== e ? "{k:" + A.keyType + "}" : "") + " expected"; } function genVerifyValue(A, e, t, n) { if (e.resolvedType) if (e.resolvedType instanceof i) { A("switch(%s){", n)("default:")("return%j", invalid(e, "enum value")); for (var r = Object.keys(e.resolvedType.values), o = 0; o < r.length; ++o) A("case %i:", e.resolvedType.values[r[o]]); A("break")("}"); } else A("{")("var e=types[%i].verify(%s);", t, n)("if(e)")("return%j+e", e.name + ".")("}"); else switch (e.type) { case "int32": case "uint32": case "sint32": case "fixed32": case "sfixed32": A("if(!util.isInteger(%s))", n)("return%j", invalid(e, "integer")); break; case "int64": case "uint64": case "sint64": case "fixed64": case "sfixed64": A("if(!util.isInteger(%s)&&!(%s&&util.isInteger(%s.low)&&util.isInteger(%s.high)))", n, n, n, n)("return%j", invalid(e, "integer|Long")); break; case "float": case "double": A('if(typeof %s!=="number")', n)("return%j", invalid(e, "number")); break; case "bool": A('if(typeof %s!=="boolean")', n)("return%j", invalid(e, "boolean")); break; case "string": A("if(!util.isString(%s))", n)("return%j", invalid(e, "string")); break; case "bytes": A('if(!(%s&&typeof %s.length==="number"||util.isString(%s)))', n, n, n)("return%j", invalid(e, "buffer")); } return A; } function genVerifyKey(A, e, t) { switch (e.keyType) { case "int32": case "uint32": case "sint32": case "fixed32": case "sfixed32": A("if(!util.key32Re.test(%s))", t)("return%j", invalid(e, "integer key")); break; case "int64": case "uint64": case "sint64": case "fixed64": case "sfixed64": A("if(!util.key64Re.test(%s))", t)("return%j", invalid(e, "integer|Long key")); break; case "bool": A("if(!util.key2Re.test(%s))", t)("return%j", invalid(e, "boolean key")); } return A; } }, 421: A => { "use strict"; A.exports = {}; }, 436: (A, e, t) => { "use strict"; var i, n, r, o = t(6518), a = t(6395), s = t(6193), g = t(2195), I = t(9565), c = t(6840), u = t(2967), C = t(687), Q = t(7633), B = t(9306), E = t(4901), l = t(34), h = t(679), f = t(2293), d = t(9225).set, y = t(1955), w = t(3138), v = t(1103), p = t(8265), D = t(1181), b = t(550), k = t(916), S = t(6043), m = "Promise", N = k.CONSTRUCTOR, G = k.REJECTION_EVENT, M = k.SUBCLASSING, J = D.getterFor(m), R = D.set, U = b && b.prototype, L = b, Y = U, K = g.TypeError, H = g.document, x = g.process, O = S.f, q = O, T = !!(H && H.createEvent && g.dispatchEvent), P = "unhandledrejection", isThenable = function(A) { var e; return !(!l(A) || !E(e = A.then)) && e; }, callReaction = function(A, e) { var t, i, n, r = e.value, o = 1 === e.state, a = o ? A.ok : A.fail, s = A.resolve, g = A.reject, c = A.domain; try { a ? (o || (2 === e.rejection && onHandleUnhandled(e), e.rejection = 1), !0 === a ? t = r : (c && c.enter(), t = a(r), c && (c.exit(), n = !0)), t === A.promise ? g(new K("Promise-chain cycle")) : (i = isThenable(t)) ? I(i, t, s, g) : s(t)) : g(r); } catch (A) { c && !n && c.exit(), g(A); } }, notify = function(A, e) { A.notified || (A.notified = !0, y((function() { for (var t, i = A.reactions; t = i.get(); ) callReaction(t, A); A.notified = !1, e && !A.rejection && onUnhandled(A); }))); }, dispatchEvent = function(A, e, t) { var i, n; T ? ((i = H.createEvent("Event")).promise = e, i.reason = t, i.initEvent(A, !1, !0), g.dispatchEvent(i)) : i = { promise: e, reason: t }, !G && (n = g["on" + A]) ? n(i) : A === P && w("Unhandled promise rejection", t); }, onUnhandled = function(A) { I(d, g, (function() { var e, t = A.facade, i = A.value; if (isUnhandled(A) && (e = v((function() { s ? x.emit("unhandledRejection", i, t) : dispatchEvent(P, t, i); })), A.rejection = s || isUnhandled(A) ? 2 : 1, e.error)) throw e.value; })); }, isUnhandled = function(A) { return 1 !== A.rejection && !A.parent; }, onHandleUnhandled = function(A) { I(d, g, (function() { var e = A.facade; s ? x.emit("rejectionHandled", e) : dispatchEvent("rejectionhandled", e, A.value); })); }, bind = function(A, e, t) { return function(i) { A(e, i, t); }; }, internalReject = function(A, e, t) { A.done || (A.done = !0, t && (A = t), A.value = e, A.state = 2, notify(A, !0)); }, internalResolve = function(A, e, t) { if (!A.done) { A.done = !0, t && (A = t); try { if (A.facade === e) throw new K("Promise can't be resolved itself"); var i = isThenable(e); i ? y((function() { var t = { done: !1 }; try { I(i, e, bind(internalResolve, t, A), bind(internalReject, t, A)); } catch (e) { internalReject(t, e, A); } })) : (A.value = e, A.state = 1, notify(A, !1)); } catch (e) { internalReject({ done: !1 }, e, A); } } }; if (N && (Y = (L = function(A) { h(this, Y), B(A), I(i, this); var e = J(this); try { A(bind(internalResolve, e), bind(internalReject, e)); } catch (A) { internalReject(e, A); } }).prototype, (i = function(A) { R(this, { type: m, done: !1, notified: !1, parent: !1, reactions: new p, rejection: !1, state: 0, value: null }); }).prototype = c(Y, "then", (function(A, e) { var t = J(this), i = O(f(this, L)); return t.parent = !0, i.ok = !E(A) || A, i.fail = E(e) && e, i.domain = s ? x.domain : void 0, 0 === t.state ? t.reactions.add(i) : y((function() { callReaction(i, t); })), i.promise; })), n = function() { var A = new i, e = J(A); this.promise = A, this.resolve = bind(internalResolve, e), this.reject = bind(internalReject, e); }, S.f = O = function(A) { return A === L || void 0 === A ? new n(A) : q(A); }, !a && E(b) && U !== Object.prototype)) { r = U.then, M || c(U, "then", (function(A, e) { var t = this; return new L((function(A, e) { I(r, t, A, e); })).then(A, e); }), { unsafe: !0 }); try { delete U.constructor; } catch (A) {} u && u(U, Y); } o({ global: !0, constructor: !0, wrap: !0, forced: N }, { Promise: L }), C(L, m, !1, !0), Q(m); }, 467: (A, e, t) => { "use strict"; function asyncGeneratorStep(A, e, t, i, n, r, o) { try { var a = A[r](o), s = a.value; } catch (A) { return void t(A); } a.done ? e(s) : Promise.resolve(s).then(i, n); } function _asyncToGenerator(A) { return function() { var e = this, t = arguments; return new Promise((function(i, n) { var r = A.apply(e, t); function _next(A) { asyncGeneratorStep(r, i, n, _next, _throw, "next", A); } function _throw(A) { asyncGeneratorStep(r, i, n, _next, _throw, "throw", A); } _next(void 0); })); }; } t.d(e, { A: () => _asyncToGenerator }); }, 511: (A, e, t) => { "use strict"; var i = t(788), n = TypeError; A.exports = function(A) { if (i(A)) throw new n("The method doesn't accept regular expressions"); return A; }; }, 527: A => { "use strict"; A.exports = tokenize; var e = /[\s{}=;:[\],'"()<>]/g, t = /(?:"([^"\\]*(?:\\.[^"\\]*)*)")/g, i = /(?:'([^'\\]*(?:\\.[^'\\]*)*)')/g, n = /^ *[*/]+ */, r = /^\s*\*?\/*/, o = /\n/g, a = /\s/, s = /\\(.?)/g, g = { 0: "\0", "r": "\r", "n": "\n", "t": "\t" }; function unescape(A) { return A.replace(s, (function(A, e) { switch (e) { case "\\": case "": return e; default: return g[e] || ""; } })); } function tokenize(A, s) { A = A.toString(); var g = 0, I = A.length, c = 1, u = 0, C = {}, Q = [], B = null; function illegal(A) { return Error("illegal " + A + " (line " + c + ")"); } function charAt(e) { return A.charAt(e); } function setComment(e, t, i) { var a, g = { type: A.charAt(e++), lineEmpty: !1, leading: i }, I = e - (s ? 2 : 3); do { if (--I < 0 || "\n" === (a = A.charAt(I))) { g.lineEmpty = !0; break; } } while (" " === a || "\t" === a); for (var Q = A.substring(e, t).split(o), B = 0; B < Q.length; ++B) Q[B] = Q[B].replace(s ? r : n, "").trim(); g.text = Q.join("\n").trim(), C[c] = g, u = c; } function isDoubleSlashCommentLine(e) { var t = findEndOfLine(e), i = A.substring(e, t); return /^\s*\/\//.test(i); } function findEndOfLine(A) { for (var e = A; e < I && "\n" !== charAt(e); ) e++; return e; } function next() { if (Q.length > 0) return Q.shift(); if (B) return function() { var e = "'" === B ? i : t; e.lastIndex = g - 1; var n = e.exec(A); if (!n) throw illegal("string"); return g = e.lastIndex, push(B), B = null, unescape(n[1]); }(); var n, r, o, u, C, E = 0 === g; do { if (g === I) return null; for (n = !1; a.test(o = charAt(g)); ) if ("\n" === o && (E = !0, ++c), ++g === I) return null; if ("/" === charAt(g)) { if (++g === I) throw illegal("comment"); if ("/" === charAt(g)) if (s) { if (u = g, C = !1, isDoubleSlashCommentLine(g - 1)) { C = !0; do { if ((g = findEndOfLine(g)) === I) break; if (g++, !E) break; } while (isDoubleSlashCommentLine(g)); } else g = Math.min(I, findEndOfLine(g) + 1); C && (setComment(u, g, E), E = !0), c++, n = !0; } else { for (C = "/" === charAt(u = g + 1); "\n" !== charAt(++g); ) if (g === I) return null; ++g, C && (setComment(u, g - 1, E), E = !0), ++c, n = !0; } else { if ("*" !== (o = charAt(g))) return "/"; u = g + 1, C = s || "*" === charAt(u); do { if ("\n" === o && ++c, ++g === I) throw illegal("comment"); r = o, o = charAt(g); } while ("*" !== r || "/" !== o); ++g, C && (setComment(u, g - 2, E), E = !0), n = !0; } } } while (n); var l = g; if (e.lastIndex = 0, !e.test(charAt(l++))) for (;l < I && !e.test(charAt(l)); ) ++l; var h = A.substring(g, g = l); return '"' !== h && "'" !== h || (B = h), h; } function push(A) { Q.push(A); } function peek() { if (!Q.length) { var A = next(); if (null === A) return null; push(A); } return Q[0]; } return Object.defineProperty({ next, peek, push, skip: function(A, e) { var t = peek(); if (t === A) return next(), !0; if (!e) throw illegal("token '" + t + "', '" + A + "' expected"); return !1; }, cmnt: function(A) { var e, t = null; return void 0 === A ? (e = C[c - 1], delete C[c - 1], e && (s || "*" === e.type || e.lineEmpty) && (t = e.leading ? e.text : null)) : (u < A && peek(), e = C[A], delete C[A], !e || e.lineEmpty || !s && "/" !== e.type || (t = e.leading ? null : e.text)), t; } }, "line", { get: function() { return c; } }); } tokenize.unescape = unescape; }, 533: (A, e, t) => { "use strict"; var i = t(9504), n = t(8014), r = t(655), o = t(2333), a = t(7750), s = i(o), g = i("".slice), I = Math.ceil, createMethod = function(A) { return function(e, t, i) { var o, c, u = r(a(e)), C = n(t), Q = u.length, B = void 0 === i ? " " : r(i); return C <= Q || "" === B ? u : ((c = s(B, I((o = C - Q) / B.length))).length > o && (c = g(c, 0, o)), A ? u + c : c + u); }; }; A.exports = { start: createMethod(!1), end: createMethod(!0) }; }, 537: (A, e, t) => { "use strict"; var i = t(550), n = t(4428), r = t(916).CONSTRUCTOR; A.exports = r || !n((function(A) { i.all(A).then(void 0, (function() {})); })); }, 550: (A, e, t) => { "use strict"; var i = t(2195); A.exports = i.Promise; }, 597: (A, e, t) => { "use strict"; var i = t(9039), n = t(8227), r = t(9519), o = n("species"); A.exports = function(A) { return r >= 51 || !i((function() { var e = []; return (e.constructor = {})[o] = function() { return { foo: 1 }; }, 1 !== e[A](Boolean).foo; })); }; }, 616: (A, e, t) => { "use strict"; var i = t(9039); A.exports = !i((function() { var A = function() {}.bind(); return "function" != typeof A || A.hasOwnProperty("prototype"); })); }, 655: (A, e, t) => { "use strict"; var i = t(6955), n = String; A.exports = function(A) { if ("Symbol" === i(A)) throw new TypeError("Cannot convert a Symbol value to a string"); return n(A); }; }, 679: (A, e, t) => { "use strict"; var i = t(1625), n = TypeError; A.exports = function(A, e) { if (i(e, A)) return A; throw new n("Incorrect invocation"); }; }, 687: (A, e, t) => { "use strict"; var i = t(4913).f, n = t(9297), r = t(8227)("toStringTag"); A.exports = function(A, e, t) { A && !t && (A = A.prototype), A && !n(A, r) && i(A, r, { configurable: !0, value: e }); }; }, 706: (A, e, t) => { "use strict"; var i = t(350).PROPER, n = t(9039), r = t(7452); A.exports = function(A) { return n((function() { return !!r[A]() || " " !== " "[A]() || i && r[A].name !== A; })); }; }, 739: (A, e, t) => { "use strict"; var i = t(6518), n = t(9039), r = t(8981), o = t(2777); i({ target: "Date", proto: !0, arity: 1, forced: n((function() { return null !== new Date(NaN).toJSON() || 1 !== Date.prototype.toJSON.call({ toISOString: function() { return 1; } }); })) }, { toJSON: function(A) { var e = r(this), t = o(e, "number"); return "number" != typeof t || isFinite(t) ? e.toISOString() : null; } }); }, 741: A => { "use strict"; var e = Math.ceil, t = Math.floor; A.exports = Math.trunc || function(A) { var i = +A; return (i > 0 ? t : e)(i); }; }, 744: (A, e, t) => { "use strict"; var i = e, n = t(5643), r = t(3262); function genValuePartial_fromObject(A, e, t, i) { var r = !1; if (e.resolvedType) if (e.resolvedType instanceof n) { A("switch(d%s){", i); for (var o = e.resolvedType.values, a = Object.keys(o), s = 0; s < a.length; ++s) o[a[s]] !== e.typeDefault || r || (A("default:")('if(typeof(d%s)==="number"){m%s=d%s;break}', i, i, i), e.repeated || A("break"), r = !0), A("case%j:", a[s])("case %i:", o[a[s]])("m%s=%j", i, o[a[s]])("break"); A("}"); } else A('if(typeof d%s!=="object")', i)("throw TypeError(%j)", e.fullName + ": object expected")("m%s=types[%i].fromObject(d%s)", i, t, i); else { var g = !1; switch (e.type) { case "double": case "float": A("m%s=Number(d%s)", i, i); break; case "uint32": case "fixed32": A("m%s=d%s>>>0", i, i); break; case "int32": case "sint32": case "sfixed32": A("m%s=d%s|0", i, i); break; case "uint64": g = !0; case "int64": case "sint64": case "fixed64": case "sfixed64": A("if(util.Long)")("(m%s=util.Long.fromValue(d%s)).unsigned=%j", i, i, g)('else if(typeof d%s==="string")', i)("m%s=parseInt(d%s,10)", i, i)('else if(typeof d%s==="number")', i)("m%s=d%s", i, i)('else if(typeof d%s==="object")', i)("m%s=new util.LongBits(d%s.low>>>0,d%s.high>>>0).toNumber(%s)", i, i, i, g ? "true" : ""); break; case "bytes": A('if(typeof d%s==="string")', i)("util.base64.decode(d%s,m%s=util.newBuffer(util.base64.length(d%s)),0)", i, i, i)("else if(d%s.length >= 0)", i)("m%s=d%s", i, i); break; case "string": A("m%s=String(d%s)", i, i); break; case "bool": A("m%s=Boolean(d%s)", i, i); } } return A; } function genValuePartial_toObject(A, e, t, i) { if (e.resolvedType) e.resolvedType instanceof n ? A("d%s=o.enums===String?(types[%i].values[m%s]===undefined?m%s:types[%i].values[m%s]):m%s", i, t, i, i, t, i, i) : A("d%s=types[%i].toObject(m%s,o)", i, t, i); else { var r = !1; switch (e.type) { case "double": case "float": A("d%s=o.json&&!isFinite(m%s)?String(m%s):m%s", i, i, i, i); break; case "uint64": r = !0; case "int64": case "sint64": case "fixed64": case "sfixed64": A('if(typeof m%s==="number")', i)("d%s=o.longs===String?String(m%s):m%s", i, i, i)("else")("d%s=o.longs===String?util.Long.prototype.toString.call(m%s):o.longs===Number?new util.LongBits(m%s.low>>>0,m%s.high>>>0).toNumber(%s):m%s", i, i, i, i, r ? "true" : "", i); break; case "bytes": A("d%s=o.bytes===String?util.base64.encode(m%s,0,m%s.length):o.bytes===Array?Array.prototype.slice.call(m%s):m%s", i, i, i, i, i); break; default: A("d%s=m%s", i, i); } } return A; } i.fromObject = function(A) { var e = A.fieldsArray, t = r.codegen([ "d" ], A.name + "$fromObject")("if(d instanceof this.ctor)")("return d"); if (!e.length) return t("return new this.ctor"); t("var m=new this.ctor"); for (var i = 0; i < e.length; ++i) { var o = e[i].resolve(), a = r.safeProp(o.name); o.map ? (t("if(d%s){", a)('if(typeof d%s!=="object")', a)("throw TypeError(%j)", o.fullName + ": object expected")("m%s={}", a)("for(var ks=Object.keys(d%s),i=0;i<ks.length;++i){", a), genValuePartial_fromObject(t, o, i, a + "[ks[i]]")("}")("}")) : o.repeated ? (t("if(d%s){", a)("if(!Array.isArray(d%s))", a)("throw TypeError(%j)", o.fullName + ": array expected")("m%s=[]", a)("for(var i=0;i<d%s.length;++i){", a), genValuePartial_fromObject(t, o, i, a + "[i]")("}")("}")) : (o.resolvedType instanceof n || t("if(d%s!=null){", a), genValuePartial_fromObject(t, o, i, a), o.resolvedType instanceof n || t("}")); } return t("return m"); }, i.toObject = function(A) { var e = A.fieldsArray.slice().sort(r.compareFieldsById); if (!e.length) return r.codegen()("return {}"); for (var t = r.codegen([ "m", "o" ], A.name + "$toObject")("if(!o)")("o={}")("var d={}"), i = [], o = [], a = [], s = 0; s < e.length; ++s) e[s].partOf || (e[s].resolve().repeated ? i : e[s].map ? o : a).push(e[s]); if (i.length) { for (t("if(o.arrays||o.defaults){"), s = 0; s < i.length; ++s) t("d%s=[]", r.safeProp(i[s].name)); t("}"); } if (o.length) { for (t("if(o.objects||o.defaults){"), s = 0; s < o.length; ++s) t("d%s={}", r.safeProp(o[s].name)); t("}"); } if (a.length) { for (t("if(o.defaults){"), s = 0; s < a.length; ++s) { var g = a[s], I = r.safeProp(g.name); if (g.resolvedType instanceof n) t("d%s=o.enums===String?%j:%j", I, g.resolvedType.valuesById[g.typeDefault], g.typeDefault); else if (g.long) t("if(util.Long){")("var n=new util.Long(%i,%i,%j)", g.typeDefault.low, g.typeDefault.high, g.typeDefault.unsigned)("d%s=o.longs===String?n.toString():o.longs===Number?n.toNumber():n", I)("}else")("d%s=o.longs===String?%j:%i", I, g.typeDefault.toString(), g.typeDefault.toNumber()); else if (g.bytes) { var c = "[" + Array.prototype.slice.call(g.typeDefault).join(",") + "]"; t("if(o.bytes===String)d%s=%j", I, String.fromCharCode.apply(String, g.typeDefault))("else{")("d%s=%s", I, c)("if(o.bytes!==Array)d%s=util.newBuffer(d%s)", I, I)("}"); } else t("d%s=%j", I, g.typeDefault); } t("}"); } var u = !1; for (s = 0; s < e.length; ++s) { g = e[s]; var C = A._fieldsArray.indexOf(g); I = r.safeProp(g.name), g.map ? (u || (u = !0, t("var ks2")), t("if(m%s&&(ks2=Object.keys(m%s)).length){", I, I)("d%s={}", I)("for(var j=0;j<ks2.length;++j){"), genValuePartial_toObject(t, g, C, I + "[ks2[j]]")("}")) : g.repeated ? (t("if(m%s&&m%s.length){", I, I)("d%s=[]", I)("for(var j=0;j<m%s.length;++j){", I), genValuePartial_toObject(t, g, C, I + "[j]")("}")) : (t("if(m%s!=null&&m.hasOwnProperty(%j)){", I, g.name), genValuePartial_toObject(t, g, C, I), g.partOf && t("if(o.oneofs)")("d%s=%j", r.safeProp(g.partOf.name), g.name)), t("}"); } return t("return d"); }; }, 757: (A, e, t) => { "use strict"; var i = t(7751), n = t(4901), r = t(1625), o = t(7040), a = Object; A.exports = o ? function(A) { return "symbol" == typeof A; } : function(A) { var e = i("Symbol"); return n(e) && r(e.prototype, a(A)); }; }, 788: (A, e, t) => { "use strict"; var i = t(34), n = t(4576), r = t(8227)("match"); A.exports = function(A) { var e; return i(A) && (void 0 !== (e = A[r]) ? !!e : "RegExp" === n(A)); }; }, 816: (A, e, t) => { "use strict"; t.d(e, { A: () => toPropertyKey }); var i = t(2284); function toPropertyKey(A) { var e = function(A) { if ("object" != (0, i.A)(A) || !A) return A; var e = A[Symbol.toPrimitive]; if (void 0 !== e) { var t = e.call(A, "string"); if ("object" != (0, i.A)(t)) return t; throw new TypeError("@@toPrimitive must return a primitive value."); } return String(A); }(A); return "symbol" == (0, i.A)(e) ? e : e + ""; } }, 818: (A, e, t) => { "use strict"; A.exports = BufferWriter; var i = t(3449); (BufferWriter.prototype = Object.create(i.prototype)).constructor = BufferWriter; var n = t(3610); function BufferWriter() { i.call(this); } function writeStringBuffer(A, e, t) { A.length < 40 ? n.utf8.write(A, e, t) : e.utf8Write ? e.utf8Write(A, t) : e.write(A, t); } BufferWriter._configure = function() { BufferWriter.alloc = n._Buffer_allocUnsafe, BufferWriter.writeBytesBuffer = n.Buffer && n.Buffer.prototype instanceof Uint8Array && "set" === n.Buffer.prototype.set.name ? function(A, e, t) { e.set(A, t); } : function(A, e, t) { if (A.copy) A.copy(e, t, 0, A.length); else for (var i = 0; i < A.length; ) e[t++] = A[i++]; }; }, BufferWriter.prototype.bytes = function(A) { n.isString(A) && (A = n._Buffer_from(A, "base64")); var e = A.length >>> 0; return this.uint32(e), e && this._push(BufferWriter.writeBytesBuffer, e, A), this; }, BufferWriter.prototype.string = function(A) { var e = n.Buffer.byteLength(A); return this.uint32(e), e && this._push(writeStringBuffer, e, A), this; }, BufferWriter._configure(); }, 851: (A, e, t) => { "use strict"; var i = t(6955), n = t(5966), r = t(4117), o = t(6269), a = t(8227)("iterator"); A.exports = function(A) { if (!r(A)) return n(A, a) || n(A, "@@iterator") || o[i(A)]; }; }, 875: (A, e, t) => { "use strict"; var i = t(6518), n = t(9039), r = t(8981), o = t(2787), a = t(2211); i({ target: "Object", stat: !0, forced: n((function() { o(1); })), sham: !a }, { getPrototypeOf: function(A) { return o(r(A)); } }); }, 888: (A, e, t) => { "use strict"; var i = t(6518), n = t(9565), r = t(34), o = t(8551), a = t(6575), s = t(7347), g = t(2787); i({ target: "Reflect", stat: !0 }, { get: function get(A, e) { var t, i, I = arguments.length < 3 ? A : arguments[2]; return o(A) === I ? A[e] : (t = s.f(A, e)) ? a(t) ? t.value : void 0 === t.get ? void 0 : n(t.get, I) : r(i = g(A)) ? get(i, e, I) : void 0; } }); }, 916: (A, e, t) => { "use strict"; var i = t(2195), n = t(550), r = t(4901), o = t(2796), a = t(3706), s = t(8227), g = t(4215), I = t(6395), c = t(9519), u = n && n.prototype, C = s("species"), Q = !1, B = r(i.PromiseRejectionEvent), E = o("Promise", (function() { var A = a(n), e = A !== String(n); if (!e && 66 === c) return !0; if (I && (!u.catch || !u.finally)) return !0; if (!c || c < 51 || !/native code/.test(A)) { var t = new n((function(A) { A(1); })), FakePromise = function(A) { A((function() {}), (function() {})); }; if ((t.constructor = {})[C] = FakePromise, !(Q = t.then((function() {})) instanceof FakePromise)) return !0; } return !(e || "BROWSER" !== g && "DENO" !== g || B); })); A.exports = { CONSTRUCTOR: E, REJECTION_EVENT: B, SUBCLASSING: Q }; }, 926: (A, e, t) => { "use strict"; var i = t(9306), n = t(8981), r = t(7055), o = t(6198), a = TypeError, s = "Reduce of empty array with no initial value", createMethod = function(A) { return function(e, t, g, I) { var c = n(e), u = r(c), C = o(c); if (i(t), 0 === C && g < 2) throw new a(s); var Q = A ? C - 1 : 0, B = A ? -1 : 1; if (g < 2) for (;;) { if (Q in u) { I = u[Q], Q += B; break; } if (Q += B, A ? Q < 0 : C <= Q) throw new a(s); } for (;A ? Q >= 0 : C > Q; Q += B) Q in u && (I = t(I, u[Q], Q, c)); return I; }; }; A.exports = { left: createMethod(!1), right: createMethod(!0) }; }, 1034: (A, e, t) => { "use strict"; var i = t(9565), n = t(9297), r = t(1625), o = t(7979), a = RegExp.prototype; A.exports = function(A) { var e = A.flags; return void 0 !== e || "flags" in a || n(A, "flags") || !r(a, A) ? e : i(o, A); }; }, 1072: (A, e, t) => { "use strict"; var i = t(1828), n = t(8727); A.exports = Object.keys || function(A) { return i(A, n); }; }, 1080: (A, e, t) => { "use strict"; A.exports = function(A) { for (var e, t = r.codegen([ "m", "w" ], A.name + "$encode")("if(!w)")("w=Writer.create()"), o = A.fieldsArray.slice().sort(r.compareFieldsById), a = 0; a < o.length; ++a) { var s = o[a].resolve(), g = A._fieldsArray.indexOf(s), I = s.resolvedType instanceof i ? "int32" : s.type, c = n.basic[I]; e = "m" + r.safeProp(s.name), s.map ? (t("if(%s!=null&&Object.hasOwnProperty.call(m,%j)){", e, s.name)("for(var ks=Object.keys(%s),i=0;i<ks.length;++i){", e)("w.uint32(%i).fork().uint32(%i).%s(ks[i])", (s.id << 3 | 2) >>> 0, 8 | n.mapKey[s.keyType], s.keyType), void 0 === c ? t("types[%i].encode(%s[ks[i]],w.uint32(18).fork()).ldelim().ldelim()", g, e) : t(".uint32(%i).%s(%s[ks[i]]).ldelim()", 16 | c, I, e), t("}")("}")) : s.repeated ? (t("if(%s!=null&&%s.length){", e, e), s.packed && void 0 !== n.packed[I] ? t("w.uint32(%i).fork()", (s.id << 3 | 2) >>> 0)("for(var i=0;i<%s.length;++i)", e)("w.%s(%s[i])", I, e)("w.ldelim()") : (t("for(var i=0;i<%s.length;++i)", e), void 0 === c ? genTypePartial(t, s, g, e + "[i]") : t("w.uint32(%i).%s(%s[i])", (s.id << 3 | c) >>> 0, I, e)), t("}")) : (s.optional && t("if(%s!=null&&Object.hasOwnProperty.call(m,%j))", e, s.name), void 0 === c ? genTypePartial(t, s, g, e) : t("w.uint32(%i).%s(%s)", (s.id << 3 | c) >>> 0, I, e)); } return t("return w"); }; var i = t(5643), n = t(361), r = t(3262); function genTypePartial(A, e, t, i) { return e.resolvedType.group ? A("types[%i].encode(%s,w.uint32(%i)).uint32(%i)", t, i, (e.id << 3 | 3) >>> 0, (e.id << 3 | 4) >>> 0) : A("types[%i].encode(%s,w.uint32(%i).fork()).ldelim()", t, i, (e.id << 3 | 2) >>> 0); } }, 1088: (A, e, t) => { "use strict"; var i = t(6518), n = t(9565), r = t(6395), o = t(350), a = t(4901), s = t(3994), g = t(2787), I = t(2967), c = t(687), u = t(6699), C = t(6840), Q = t(8227), B = t(6269), E = t(7657), l = o.PROPER, h = o.CONFIGURABLE, f = E.IteratorPrototype, d = E.BUGGY_SAFARI_ITERATORS, y = Q("iterator"), w = "keys", v = "values", p = "entries", returnThis = function() { return this; }; A.exports = function(A, e, t, o, Q, E, D) { s(t, e, o); var b, k, S, getIterationMethod = function(A) { if (A === Q && J) return J; if (!d && A && A in G) return G[A]; switch (A) { case w: case v: case p: return function() { return new t(this, A); }; } return function() { return new t(this); }; }, m = e + " Iterator", N = !1, G = A.prototype, M = G[y] || G["@@iterator"] || Q && G[Q], J = !d && M || getIterationMethod(Q), R = "Array" === e && G.entries || M; if (R && (b = g(R.call(new A))) !== Object.prototype && b.next && (r || g(b) === f || (I ? I(b, f) : a(b[y]) || C(b, y, returnThis)), c(b, m, !0, !0), r && (B[m] = returnThis)), l && Q === v && M && M.name !== v && (!r && h ? u(G, "name", v) : (N = !0, J = function() { return n(M, this); })), Q) if (k = { values: getIterationMethod(v), keys: E ? J : getIterationMethod(w), entries: getIterationMethod(p) }, D) for (S in k) (d || N || !(S in G)) && C(G, S, k[S]); else i({ target: e, proto: !0, forced: d || N }, k); return r && !D || G[y] === J || C(G, y, J, { name: Q }), B[e] = J, k; }; }, 1103: A => { "use strict"; A.exports = function(A) { try { return { error: !1, value: A() }; } catch (A) { return { error: !0, value: A }; } }; }, 1108: (A, e, t) => { "use strict"; var i = t(6955); A.exports = function(A) { var e = i(A); return "BigInt64Array" === e || "BigUint64Array" === e; }; }, 1181: (A, e, t) => { "use strict"; var i, n, r, o = t(8622), a = t(2195), s = t(34), g = t(6699), I = t(9297), c = t(7629), u = t(6119), C = t(421), Q = "Object already initialized", B = a.TypeError, E = a.WeakMap; if (o || c.state) { var l = c.state || (c.state = new E); l.get = l.get, l.has = l.has, l.set = l.set, i = function(A, e) { if (l.has(A)) throw new B(Q); return e.facade = A, l.set(A, e), e; }, n = function(A) { return l.get(A) || {}; }, r = function(A) { return l.has(A); }; } else { var h = u("state"); C[h] = !0, i = function(A, e) { if (I(A, h)) throw new B(Q); return e.facade = A, g(A, h, e), e; }, n = function(A) { return I(A, h) ? A[h] : {}; }, r = function(A) { return I(A, h); }; } A.exports = { set: i, get: n, has: r, enforce: function(A) { return r(A) ? n(A) : i(A, {}); }, getterFor: function(A) { return function(e) { var t; if (!s(e) || (t = n(e)).type !== A) throw new B("Incompatible receiver, " + A + " required"); return t; }; } }; }, 1240: (A, e, t) => { "use strict"; var i = t(9504); A.exports = i(1..valueOf); }, 1278: (A, e, t) => { "use strict"; var i = t(6518), n = t(3724), r = t(5031), o = t(5397), a = t(7347), s = t(4659); i({ target: "Object", stat: !0, sham: !n }, { getOwnPropertyDescriptors: function(A) { for (var e, t, i = o(A), n = a.f, g = r(i), I = {}, c = 0; g.length > c; ) void 0 !== (t = n(i, e = g[c++])) && s(I, e, t); return I; } }); }, 1291: (A, e, t) => { "use strict"; var i = t(741); A.exports = function(A) { var e = +A; return e != e || 0 === e ? 0 : i(e); }; }, 1296: (A, e, t) => { "use strict"; var i = t(4495); A.exports = i && !!Symbol.for && !!Symbol.keyFor; }, 1344: (A, e, t) => { "use strict"; A.exports = Field; var i = t(7209); ((Field.prototype = Object.create(i.prototype)).constructor = Field).className = "Field"; var n, r = t(5643), o = t(361), a = t(3262), s = /^required|optional|repeated$/; function Field(A, e, t, n, r, g, I) { if (a.isObject(n) ? (I = r, g = n, n = r = void 0) : a.isObject(r) && (I = g, g = r, r = void 0), i.call(this, A, g), !a.isInteger(e) || e < 0) throw TypeError("id must be a non-negative integer"); if (!a.isString(t)) throw TypeError("type must be a string"); if (void 0 !== n && !s.test(n = n.toString().toLowerCase())) throw TypeError("rule must be a string rule"); if (void 0 !== r && !a.isString(r)) throw TypeError("extend must be a string"); "proto3_optional" === n && (n = "optional"), this.rule = n && "optional" !== n ? n : void 0, this.type = t, this.id = e, this.extend = r || void 0, this.required = "required" === n, this.optional = !this.required, this.repeated = "repeated" === n, this.map = !1, this.message = null, this.partOf = null, this.typeDefault = null, this.defaultValue = null, this.long = !!a.Long && void 0 !== o.long[t], this.bytes = "bytes" === t, this.resolvedType = null, this.extensionField = null, this.declaringField = null, this._packed = null, this.comment = I; } Field.fromJSON = function(A, e) { return new Field(A, e.id, e.type, e.rule, e.extend, e.options, e.comment); }, Object.defineProperty(Field.prototype, "packed", { get: function() { return null === this._packed && (this._packed = !1 !== this.getOption("packed")), this._packed; } }), Field.prototype.setOption = function(A, e, t) { return "packed" === A && (this._packed = null), i.prototype.setOption.call(this, A, e, t); }, Field.prototype.toJSON = function(A) { var e = !!A && Boolean(A.keepComments); return a.toObject([ "rule", "optional" !== this.rule && this.rule || void 0, "type", this.type, "id", this.id, "extend", this.extend, "options", this.options, "comment", e ? this.comment : void 0 ]); }, Field.prototype.resolve = function() { if (this.resolved) return this; if (void 0 === (this.typeDefault = o.defaults[this.type]) ? (this.resolvedType = (this.declaringField ? this.declaringField.parent : this.parent).lookupTypeOrEnum(this.type), this.resolvedType instanceof n ? this.typeDefault = null : this.typeDefault = this.resolvedType.values[Object.keys(this.resolvedType.values)[0]]) : this.options && this.options.proto3_optional && (this.typeDefault = null), this.options && null != this.options.default && (this.typeDefault = this.options.default, this.resolvedType instanceof r && "string" == typeof this.typeDefault && (this.typeDefault = this.resolvedType.values[this.typeDefault])), this.options && (!0 !== this.options.packed && (void 0 === this.options.packed || !this.resolvedType || this.resolvedType instanceof r) || delete this.options.packed, Object.keys(this.options).length || (this.options = void 0)), this.long) this.typeDefault = a.Long.fromNumber(this.typeDefault, "u" === this.type.charAt(0)), Object.freeze && Object.freeze(this.typeDefault); else if (this.bytes && "string" == typeof this.typeDefault) { var A; a.base64.test(this.typeDefault) ? a.base64.decode(this.typeDefault, A = a.newBuffer(a.base64.length(this.typeDefault)), 0) : a.utf8.write(this.typeDefault, A = a.newBuffer(a.utf8.length(this.typeDefault)), 0), this.typeDefault = A; } return this.map ? this.defaultValue = a.emptyObject : this.repeated ? this.defaultValue = a.emptyArray : this.defaultValue = this.typeDefault, this.parent instanceof n && (this.parent.ctor.prototype[this.name] = this.defaultValue), i.prototype.resolve.call(this); }, Field.d = function(A, e, t, i) { return "function" == typeof e ? e = a.decorateType(e).name : e && "object" == typeof e && (e = a.decorateEnum(e).name), function(n, r) { a.decorateType(n.constructor).add(new Field(r, A, e, t, { "default": i })); }; }, Field._configure = function(A) { n = A; }; }, 1392: (A, e, t) => { "use strict"; var i, n = t(6518), r = t(7476), o = t(7347).f, a = t(8014), s = t(655), g = t(511), I = t(7750), c = t(1436), u = t(6395), C = r("".slice), Q = Math.min, B = c("startsWith"); n({ target: "String", proto: !0, forced: !(!u && !B && (i = o(String.prototype, "startsWith"), i && !i.writable) || B) }, { startsWith: function(A) { var e = s(I(this)); g(A); var t = a(Q(arguments.length > 1 ? arguments[1] : void 0, e.length)), i = s(A); return C(e, t, t + i.length) === i; } }); }, 1405: (A, e, t) => { "use strict"; var i = t(2195), n = t(8745), r = t(4644), o = t(9039), a = t(7680), s = i.Int8Array, g = r.aTypedArray, I = r.exportTypedArrayMethod, c = [].toLocaleString, u = !!s && o((function() { c.call(new s(1)); })); I("toLocaleString", (function() { return n(c, u ? a(g(this)) : g(this), a(arguments)); }), o((function() { return [ 1, 2 ].toLocaleString() !== new s([ 1, 2 ]).toLocaleString(); })) || !o((function() { s.prototype.toLocaleString.call([ 1, 2 ]); }))); }, 1415: (A, e, t) => { "use strict"; t(2405); }, 1436: (A, e, t) => { "use strict"; var i = t(8227)("match"); A.exports = function(A) { var e = /./; try { "/./"[A](e); } catch (t) { try { return e[i] = !1, "/./"[A](e); } catch (A) {} } return !1; }; }, 1447: (A, e) => { "use strict"; var t = e; t.length = function(A) { for (var e = 0, t = 0, i = 0; i < A.length; ++i) (t = A.charCodeAt(i)) < 128 ? e += 1 : t < 2048 ? e += 2 : 55296 == (64512 & t) && 56320 == (64512 & A.charCodeAt(i + 1)) ? (++i, e += 4) : e += 3; return e; }, t.read = function(A, e, t) { if (t - e < 1) return ""; for (var i, n = null, r = [], o = 0; e < t; ) (i = A[e++]) < 128 ? r[o++] = i : i > 191 && i < 224 ? r[o++] = (31 & i) << 6 | 63 & A[e++] : i > 239 && i < 365 ? (i = ((7 & i) << 18 | (63 & A[e++]) << 12 | (63 & A[e++]) << 6 | 63 & A[e++]) - 65536, r[o++] = 55296 + (i >> 10), r[o++] = 56320 + (1023 & i)) : r[o++] = (15 & i) << 12 | (63 & A[e++]) << 6 | 63 & A[e++], o > 8191 && ((n || (n = [])).push(String.fromCharCode.apply(String, r)), o = 0); return n ? (o && n.push(String.fromCharCode.apply(String, r.slice(0, o))), n.join("")) : String.fromCharCode.apply(String, r.slice(0, o)); }, t.write = function(A, e, t) { for (var i, n, r = t, o = 0; o < A.length; ++o) (i = A.charCodeAt(o)) < 128 ? e[t++] = i : i < 2048 ? (e[t++] = i >> 6 | 192, e[t++] = 63 & i | 128) : 55296 == (64512 & i) && 56320 == (64512 & (n = A.charCodeAt(o + 1))) ? (i = 65536 + ((1023 & i) << 10) + (1023 & n), ++o, e[t++] = i >> 18 | 240, e[t++] = i >> 12 & 63 | 128, e[t++] = i >> 6 & 63 | 128, e[t++] = 63 & i | 128) : (e[t++] = i >> 12 | 224, e[t++] = i >> 6 & 63 | 128, e[t++] = 63 & i | 128); return t - r; }; }, 1457: (A, e, t) => { "use strict"; A.exports = OneOf; var i = t(7209); ((OneOf.prototype = Object.create(i.prototype)).constructor = OneOf).className = "OneOf"; var n = t(1344), r = t(3262); function OneOf(A, e, t, n) { if (Array.isArray(e) || (t = e, e = void 0), i.call(this, A, t), void 0 !== e && !Array.isArray(e)) throw TypeError("fieldNames must be an Array"); this.oneof = e || [], this.fieldsArray = [], this.comment = n; } function addFieldsToParent(A) { if (A.parent) for (var e = 0; e < A.fieldsArray.length; ++e) A.fieldsArray[e].parent || A.parent.add(A.fieldsArray[e]); } OneOf.fromJSON = function(A, e) { return new OneOf(A, e.oneof, e.options, e.comment); }, OneOf.prototype.toJSON = function(A) { var e = !!A && Boolean(A.keepComments); return r.toObject([ "options", this.options, "oneof", this.oneof, "comment", e ? this.comment : void 0 ]); }, OneOf.prototype.add = function(A) { if (!(A instanceof n)) throw TypeError("field must be a Field"); return A.parent && A.parent !== this.parent && A.parent.remove(A), this.oneof.push(A.name), this.fieldsArray.push(A), A.partOf = this, addFieldsToParent(this), this; }, OneOf.prototype.remove = function(A) { if (!(A instanceof n)) throw TypeError("field must be a Field"); var e = this.fieldsArray.indexOf(A); if (e < 0) throw Error(A + " is not a member of " + this); return this.fieldsArray.splice(e, 1), (e = this.oneof.indexOf(A.name)) > -1 && this.oneof.splice(e, 1), A.partOf = null, this; }, OneOf.prototype.onAdd = function(A) { i.prototype.onAdd.call(this, A); for (var e = 0; e < this.oneof.length; ++e) { var t = A.get(this.oneof[e]); t && !t.partOf && (t.partOf = this, this.fieldsArray.push(t)); } addFieldsToParent(this); }, OneOf.prototype.onRemove = function(A) { for (var e, t = 0; t < this.fieldsArray.length; ++t) (e = this.fieldsArray[t]).parent && e.parent.remove(e); i.prototype.onRemove.call(this, A); }, OneOf.d = function() { for (var A = new Array(arguments.length), e = 0; e < arguments.length; ) A[e] = arguments[e++]; return function(e, t) { r.decorateType(e.constructor).add(new OneOf(t, A)), Object.defineProperty(e, t, { get: r.oneOfGetter(A), set: r.oneOfSetter(A) }); }; }; }, 1469: (A, e, t) => { "use strict"; var i = t(7433); A.exports = function(A, e) { return new (i(A))(0 === e ? 0 : e); }; }, 1481: (A, e, t) => { "use strict"; var i = t(6518), n = t(6043); i({ target: "Promise", stat: !0, forced: t(916).CONSTRUCTOR }, { reject: function(A) { var e = n.f(this); return (0, e.reject)(A), e.promise; } }); }, 1489: (A, e, t) => { "use strict"; t(5823)("Uint8", (function(A) { return function(e, t, i) { return A(this, e, t, i); }; })); }, 1510: (A, e, t) => { "use strict"; var i = t(6518), n = t(7751), r = t(9297), o = t(655), a = t(5745), s = t(1296), g = a("string-to-symbol-registry"), I = a("symbol-to-string-registry"); i({ target: "Symbol", stat: !0, forced: !s }, { "for": function(A) { var e = o(A); if (r(g, e)) return g[e]; var t = n("Symbol")(e); return g[e] = t, I[t] = e, t; } }); }, 1575: (A, e, t) => { "use strict"; var i = t(4644), n = t(926).left, r = i.aTypedArray; (0, i.exportTypedArrayMethod)("reduce", (function(A) { var e = arguments.length; return n(r(this), A, e, e > 1 ? arguments[1] : void 0); })); }, 1625: (A, e, t) => { "use strict"; var i = t(9504); A.exports = i({}.isPrototypeOf); }, 1630: (A, e, t) => { "use strict"; var i = t(9504), n = t(4644), r = i(t(7029)), o = n.aTypedArray; (0, n.exportTypedArrayMethod)("copyWithin", (function(A, e) { return r(o(this), A, e, arguments.length > 2 ? arguments[2] : void 0); })); }, 1694: (A, e, t) => { "use strict"; var i = t(4644), n = t(9213).find, r = i.aTypedArray; (0, i.exportTypedArrayMethod)("find", (function(A) { return n(r(this), A, arguments.length > 1 ? arguments[1] : void 0); })); }, 1699: (A, e, t) => { "use strict"; var i = t(6518), n = t(9504), r = t(511), o = t(7750), a = t(655), s = t(1436), g = n("".indexOf); i({ target: "String", proto: !0, forced: !s("includes") }, { includes: function(A) { return !!~g(a(o(this)), a(r(A)), arguments.length > 1 ? arguments[1] : void 0); } }); }, 1745: (A, e, t) => { "use strict"; var i = t(6518), n = t(7476), r = t(9039), o = t(6346), a = t(8551), s = t(5610), g = t(8014), I = o.ArrayBuffer, c = o.DataView, u = c.prototype, C = n(I.prototype.slice), Q = n(u.getUint8), B = n(u.setUint8); i({ target: "ArrayBuffer", proto: !0, unsafe: !0, forced: r((function() { return !new I(2).slice(1, void 0).byteLength; })) }, { slice: function(A, e) { if (C && void 0 === e) return C(a(this), A); for (var t = a(this).byteLength, i = s(A, t), n = s(void 0 === e ? t : e, t), r = new I(g(n - i)), o = new c(this), u = new c(r), E = 0; i < n; ) B(u, E++, Q(o, i++)); return r; } }); }, 1761: (A, e, t) => { "use strict"; var i = t(9565), n = t(9228), r = t(8551), o = t(4117), a = t(8014), s = t(655), g = t(7750), I = t(5966), c = t(7829), u = t(6682); n("match", (function(A, e, t) { return [ function(e) { var t = g(this), n = o(e) ? void 0 : I(e, A); return n ? i(n, e, t) : new RegExp(e)[A](s(t)); }, function(A) { var i = r(this), n = s(A), o = t(e, i, n); if (o.done) return o.value; if (!i.global) return u(i, n); var g = i.unicode; i.lastIndex = 0; for (var I, C = [], Q = 0; null !== (I = u(i, n)); ) { var B = s(I[0]); C[Q] = B, "" === B && (i.lastIndex = c(n, a(i.lastIndex), g)), Q++; } return 0 === Q ? null : C; } ]; })); }, 1828: (A, e, t) => { "use strict"; var i = t(9504), n = t(9297), r = t(5397), o = t(9617).indexOf, a = t(421), s = i([].push); A.exports = function(A, e) { var t, i = r(A), g = 0, I = []; for (t in i) !n(a, t) && n(i, t) && s(I, t); for (;e.length > g; ) n(i, t = e[g++]) && (~o(I, t) || s(I, t)); return I; }; }, 1920: (A, e, t) => { "use strict"; var i = t(4644), n = t(9213).filter, r = t(9948), o = i.aTypedArray; (0, i.exportTypedArrayMethod)("filter", (function(A) { var e = n(o(this), A, arguments.length > 1 ? arguments[1] : void 0); return r(this, e); })); }, 1951: (A, e, t) => { "use strict"; var i = t(8227); e.f = i; }, 1955: (A, e, t) => { "use strict"; var i, n, r, o, a, s = t(2195), g = t(3389), I = t(6080), c = t(9225).set, u = t(8265), C = t(9544), Q = t(4265), B = t(7860), E = t(6193), l = s.MutationObserver || s.WebKitMutationObserver, h = s.document, f = s.process, d = s.Promise, y = g("queueMicrotask"); if (!y) { var w = new u, flush = function() { var A, e; for (E && (A = f.domain) && A.exit(); e = w.get(); ) try { e(); } catch (A) { throw w.head && i(), A; } A && A.enter(); }; C || E || B || !l || !h ? !Q && d && d.resolve ? ((o = d.resolve(void 0)).constructor = d, a = I(o.then, o), i = function() { a(flush); }) : E ? i = function() { f.nextTick(flush); } : (c = I(c, s), i = function() { c(flush); }) : (n = !0, r = h.createTextNode(""), new l(flush).observe(r, { characterData: !0 }), i = function() { r.data = n = !n; }), y = function(A) { w.head || i(), w.add(A); }; } A.exports = y; }, 2003: (A, e, t) => { "use strict"; var i = t(6518), n = t(6395), r = t(916).CONSTRUCTOR, o = t(550), a = t(7751), s = t(4901), g = t(6840), I = o && o.prototype; if (i({ target: "Promise", proto: !0, forced: r, real: !0 }, { "catch": function(A) { return this.then(void 0, A); } }), !n && s(o)) { var c = a("Promise").prototype.catch; I.catch !== c && g(I, "catch", c, { unsafe: !0 }); } }, 2008: (A, e, t) => { "use strict"; var i = t(6518), n = t(9213).filter; i({ target: "Array", proto: !0, forced: !t(597)("filter") }, { filter: function(A) { return n(this, A, arguments.length > 1 ? arguments[1] : void 0); } }); }, 2010: (A, e, t) => { "use strict"; var i = t(3724), n = t(350).EXISTS, r = t(9504), o = t(2106), a = Function.prototype, s = r(a.toString), g = /function\b(?:\s|\/\*[\S\s]*?\*\/|\/\/[^\n\r]*[\n\r]+)*([^\s(/]*)/, I = r(g.exec); i && !n && o(a, "name", { configurable: !0, get: function() { try { return I(g, s(this))[1]; } catch (A) { return ""; } } }); }, 2062: (A, e, t) => { "use strict"; var i = t(6518), n = t(9213).map; i({ target: "Array", proto: !0, forced: !t(597)("map") }, { map: function(A) { return n(this, A, arguments.length > 1 ? arguments[1] : void 0); } }); }, 2087: (A, e, t) => { "use strict"; var i = t(34), n = Math.floor; A.exports = Number.isInteger || function(A) { return !i(A) && isFinite(A) && n(A) === A; }; }, 2106: (A, e, t) => { "use strict"; var i = t(283), n = t(4913); A.exports = function(A, e, t) { return t.get && i(t.get, e, { getter: !0 }), t.set && i(t.set, e, { setter: !0 }), n.f(A, e, t); }; }, 2140: (A, e, t) => { "use strict"; var i = {}; i[t(8227)("toStringTag")] = "z", A.exports = "[object z]" === String(i); }, 2170: (A, e, t) => { "use strict"; var i = t(4644), n = t(9213).every, r = i.aTypedArray; (0, i.exportTypedArrayMethod)("every", (function(A) { return n(r(this), A, arguments.length > 1 ? arguments[1] : void 0); })); }, 2195: function(A, e, t) { "use strict"; var check = function(A) { return A && A.Math === Math && A; }; A.exports = check("object" == typeof globalThis && globalThis) || check("object" == typeof window && window) || check("object" == typeof self && self) || check("object" == typeof t.g && t.g) || check("object" == typeof this && this) || function() { return this; }() || Function("return this")(); }, 2211: (A, e, t) => { "use strict"; var i = t(9039); A.exports = !i((function() { function F() {} return F.prototype.constructor = null, Object.getPrototypeOf(new F) !== F.prototype; })); }, 2239: (A, e, t) => { "use strict"; A.exports = LongBits; var i = t(3610); function LongBits(A, e) { this.lo = A >>> 0, this.hi = e >>> 0; } var n = LongBits.zero = new LongBits(0, 0); n.toNumber = function() { return 0; }, n.zzEncode = n.zzDecode = function() { return this; }, n.length = function() { return 1; }; var r = LongBits.zeroHash = "\0\0\0\0\0\0\0\0"; LongBits.fromNumber = function(A) { if (0 === A) return n; var e = A < 0; e && (A = -A); var t = A >>> 0, i = (A - t) / 4294967296 >>> 0; return e && (i = ~i >>> 0, t = ~t >>> 0, ++t > 4294967295 && (t = 0, ++i > 4294967295 && (i = 0))), new LongBits(t, i); }, LongBits.from = function(A) { if ("number" == typeof A) return LongBits.fromNumber(A); if (i.isString(A)) { if (!i.Long) return LongBits.fromNumber(parseInt(A, 10)); A = i.Long.fromString(A); } return A.low || A.high ? new LongBits(A.low >>> 0, A.high >>> 0) : n; }, LongBits.prototype.toNumber = function(A) { if (!A && this.hi >>> 31) { var e = 1 + ~this.lo >>> 0, t = ~this.hi >>> 0; return e || (t = t + 1 >>> 0), -(e + 4294967296 * t); } return this.lo + 4294967296 * this.hi; }, LongBits.prototype.toLong = function(A) { return i.Long ? new i.Long(0 | this.lo, 0 | this.hi, Boolean(A)) : { low: 0 | this.lo, high: 0 | this.hi, unsigned: Boolean(A) }; }; var o = String.prototype.charCodeAt; LongBits.fromHash = function(A) { return A === r ? n : new LongBits((o.call(A, 0) | o.call(A, 1) << 8 | o.call(A, 2) << 16 | o.call(A, 3) << 24) >>> 0, (o.call(A, 4) | o.call(A, 5) << 8 | o.call(A, 6) << 16 | o.call(A, 7) << 24) >>> 0); }, LongBits.prototype.toHash = function() { return String.fromCharCode(255 & this.lo, this.lo >>> 8 & 255, this.lo >>> 16 & 255, this.lo >>> 24, 255 & this.hi, this.hi >>> 8 & 255, this.hi >>> 16 & 255, this.hi >>> 24); }, LongBits.prototype.zzEncode = function() { var A = this.hi >> 31; return this.hi = ((this.hi << 1 | this.lo >>> 31) ^ A) >>> 0, this.lo = (this.lo << 1 ^ A) >>> 0, this; }, LongBits.prototype.zzDecode = function() { var A = -(1 & this.lo); return this.lo = ((this.lo >>> 1 | this.hi << 31) ^ A) >>> 0, this.hi = (this.hi >>> 1 ^ A) >>> 0, this; }, LongBits.prototype.length = function() { var A = this.lo, e = (this.lo >>> 28 | this.hi << 4) >>> 0, t = this.hi >>> 24; return 0 === t ? 0 === e ? A < 16384 ? A < 128 ? 1 : 2 : A < 2097152 ? 3 : 4 : e < 16384 ? e < 128 ? 5 : 6 : e < 2097152 ? 7 : 8 : t < 128 ? 9 : 10; }; }, 2259: (A, e, t) => { "use strict"; t(2892)("iterator"); }, 2284: (A, e, t) => { "use strict"; function _typeof(A) { return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(A) { return typeof A; } : function(A) { return A && "function" == typeof Symbol && A.constructor === Symbol && A !== Symbol.prototype ? "symbol" : typeof A; }, _typeof(A); } t.d(e, { A: () => _typeof }); }, 2293: (A, e, t) => { "use strict"; var i = t(8551), n = t(5548), r = t(4117), o = t(8227)("species"); A.exports = function(A, e) { var t, a = i(A).constructor; return void 0 === a || r(t = i(a)[o]) ? e : n(t); }; }, 2333: (A, e, t) => { "use strict"; var i = t(1291), n = t(655), r = t(7750), o = RangeError; A.exports = function(A) { var e = n(r(this)), t = "", a = i(A); if (a < 0 || a === 1 / 0) throw new o("Wrong number of repetitions"); for (;a > 0; (a >>>= 1) && (e += e)) 1 & a && (t += e); return t; }; }, 2357: (A, e, t) => { "use strict"; var i = t(3724), n = t(9039), r = t(9504), o = t(2787), a = t(1072), s = t(5397), g = r(t(8773).f), I = r([].push), c = i && n((function() { var A = Object.create(null); return A[2] = 2, !g(A, 2); })), createMethod = function(A) { return function(e) { for (var t, n = s(e), r = a(n), u = c && null === o(n), C = r.length, Q = 0, B = []; C > Q; ) t = r[Q++], i && !(u ? t in n : g(n, t)) || I(B, A ? [ t, n[t] ] : n[t]); return B; }; }; A.exports = { entries: createMethod(!0), values: createMethod(!1) }; }, 2360: (A, e, t) => { "use strict"; var i, n = t(8551), r = t(6801), o = t(8727), a = t(421), s = t(397), g = t(4055), I = t(6119), c = "prototype", u = "script", C = I("IE_PROTO"), EmptyConstructor = function() {}, scriptTag = function(A) { return "<" + u + ">" + A + "</" + u + ">"; }, NullProtoObjectViaActiveX = function(A) { A.write(scriptTag("")), A.close(); var e = A.parentWindow.Object; return A = null, e; }, NullProtoObject = function() { try { i = new ActiveXObject("htmlfile"); } catch (A) {} var A, e, t; NullProtoObject = "undefined" != typeof document ? document.domain && i ? NullProtoObjectViaActiveX(i) : (e = g("iframe"), t = "java" + u + ":", e.style.display = "none", s.appendChild(e), e.src = String(t), (A = e.contentWindow.document).open(), A.write(scriptTag("document.F=Object")), A.close(), A.F) : NullProtoObjectViaActiveX(i); for (var n = o.length; n--; ) delete NullProtoObject[c][o[n]]; return NullProtoObject(); }; a[C] = !0, A.exports = Object.create || function(A, e) { var t; return null !== A ? (EmptyConstructor[c] = n(A), t = new EmptyConstructor, EmptyConstructor[c] = null, t[C] = A) : t = NullProtoObject(), void 0 === e ? t : r.f(t, e); }; }, 2376: (A, e, t) => { "use strict"; t.r(e), t.d(e, { Point: () => h, compute_path: () => compute_path, "default": () => f, initSync: () => initSync, run_on_init: () => run_on_init }); var i, n = t(467), r = t(3029), o = t(2901), a = t(2284), s = t(4756), g = (t(2675), t(9463), t(2259), t(8706), t(3771), t(3792), t(4782), t(4743), t(1745), t(739), t(2010), t(875), t(6099), t(3362), t(888), t(7495), t(7764), t(1489), t(1630), t(2170), t(5044), t(1920), t(1694), t(9955), t(3206), t(4496), t(6651), t(2887), t(9369), t(6812), t(8995), t(1575), t(6072), t(8747), t(8845), t(9423), t(7301), t(373), t(6614), t(1405), t(3684), t(2953), t(3296), t(7208), t(8408), new Array(128).fill(void 0)); function getObject(A) { return g[A]; } g.push(void 0, null, !0, !1); var I = 0, c = null; function getUint8ArrayMemory0() { return null !== c && 0 !== c.byteLength || (c = new Uint8Array(i.memory.buffer)), c; } var u = "undefined" != typeof TextEncoder ? new TextEncoder("utf-8") : { encode: function() { throw Error("TextEncoder not available"); } }, C = "function" == typeof u.encodeInto ? function(A, e) { return u.encodeInto(A, e); } : function(A, e) { var t = u.encode(A); return e.set(t), { read: A.length, written: t.length }; }; function passStringToWasm0(A, e, t) { if (void 0 === t) { var i = u.encode(A), n = e(i.length, 1) >>> 0; return getUint8ArrayMemory0().subarray(n, n + i.length).set(i), I = i.length, n; } for (var r = A.length, o = e(r, 1) >>> 0, a = getUint8ArrayMemory0(), s = 0; s < r; s++) { var g = A.charCodeAt(s); if (g > 127) break; a[o + s] = g; } if (s !== r) { 0 !== s && (A = A.slice(s)), o = t(o, r, r = s + 3 * A.length, 1) >>> 0; var c = getUint8ArrayMemory0().subarray(o + s, o + r); o = t(o, r, s += C(A, c).written, 1) >>> 0; } return I = s, o; } var Q = null; function getDataViewMemory0() { return (null === Q || !0 === Q.buffer.detached || void 0 === Q.buffer.detached && Q.buffer !== i.memory.buffer) && (Q = new DataView(i.memory.buffer)), Q; } var B = g.length; function addHeapObject(A) { B === g.length && g.push(g.length + 1); var e = B; return B = g[e], g[e] = A, e; } function handleError(A, e) { try { return A.apply(this, e); } catch (A) { i.__wbindgen_export_2(addHeapObject(A)); } } var E = "undefined" != typeof TextDecoder ? new TextDecoder("utf-8", { ignoreBOM: !0, fatal: !0 }) : { decode: function() { throw Error("TextDecoder not available"); } }; function getStringFromWasm0(A, e) { return A >>>= 0, E.decode(getUint8ArrayMemory0().subarray(A, A + e)); } function takeObject(A) { var e = getObject(A); return function(A) { A < 132 || (g[A] = B, B = A); }(A), e; } function debugString(A) { var e = (0, a.A)(A); if ("number" == e || "boolean" == e || null == A) return "".concat(A); if ("string" == e) return '"'.concat(A, '"'); if ("symbol" == e) { var t = A.description; return null == t ? "Symbol" : "Symbol(".concat(t, ")"); } if ("function" == e) { var i = A.name; return "string" == typeof i && i.length > 0 ? "Function(".concat(i, ")") : "Function"; } if (Array.isArray(A)) { var n = A.length, r = "["; n > 0 && (r += debugString(A[0])); for (var o = 1; o < n; o++) r += ", " + debugString(A[o]); return r + "]"; } var s, g = /\[object ([^\]]+)\]/.exec(toString.call(A)); if (!(g && g.length > 1)) return toString.call(A); if ("Object" == (s = g[1])) try { return "Object(" + JSON.stringify(A) + ")"; } catch (A) { return "Object"; } return A instanceof Error ? "".concat(A.name, ": ").concat(A.message, "\n").concat(A.stack) : s; } function isLikeNone(A) { return null == A; } function run_on_init() { i.run_on_init(); } function compute_path(A, e, t, n, r, o, a, s) { try { var g = i.__wbindgen_add_to_stack_pointer(-16); i.compute_path(g, A, e, t, n, addHeapObject(r), o, a, s); var I = getDataViewMemory0().getInt32(g + 0, !0), c = getDataViewMemory0().getInt32(g + 4, !0); if (getDataViewMemory0().getInt32(g + 8, !0)) throw takeObject(c); return takeObject(I); } finally { i.__wbindgen_add_to_stack_pointer(16); } } "undefined" != typeof TextDecoder && E.decode(); var l = "undefined" == typeof FinalizationRegistry ? { register: function() {}, unregister: function() {} } : new FinalizationRegistry((function(A) { return i.__wbg_point_free(A >>> 0, 1); })), h = function() { return (0, o.A)((function Point() { (0, r.A)(this, Point); }), [ { key: "__destroy_into_raw", value: function() { var A = this.__wbg_ptr; return this.__wbg_ptr = 0, l.unregister(this), A; } }, { key: "free", value: function() { var A = this.__destroy_into_raw(); i.__wbg_point_free(A, 0); } }, { key: "x", get: function() { return i.__wbg_get_point_x(this.__wbg_ptr); }, set: function(A) { i.__wbg_set_point_x(this.__wbg_ptr, A); } }, { key: "y", get: function() { return i.__wbg_get_point_y(this.__wbg_ptr); }, set: function(A) { i.__wbg_set_point_y(this.__wbg_ptr, A); } } ]); }(); function __wbg_load(A, e) { return _wbg_load.apply(this, arguments); } function _wbg_load() { return (_wbg_load = (0, n.A)(s.mark((function _callee(A, e) { var t, i; return s.wrap((function(n) { for (;;) switch (n.prev = n.next) { case 0: if (!("function" == typeof Response && A instanceof Response)) { n.next = 23; break; } if ("function" != typeof WebAssembly.instantiateStreaming) { n.next = 15; break; } return n.prev = 2, n.next = 5, WebAssembly.instantiateStreaming(A, e); case 5: case 20: return n.abrupt("return", n.sent); case 8: if (n.prev = 8, n.t0 = n.catch(2), "application/wasm" == A.headers.get("Content-Type")) { n.next = 14; break; } console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n", n.t0), n.next = 15; break; case 14: throw n.t0; case 15: return n.next = 17, A.arrayBuffer(); case 17: return t = n.sent, n.next = 20, WebAssembly.instantiate(t, e); case 23: return n.next = 25, WebAssembly.instantiate(A, e); case 25: if (!((i = n.sent) instanceof WebAssembly.Instance)) { n.next = 30; break; } return n.abrupt("return", { instance: i, module: A }); case 30: return n.abrupt("return", i); case 31: case "end": return n.stop(); } }), _callee, null, [ [ 2, 8 ] ]); })))).apply(this, arguments); } function __wbg_get_imports() { var A = { wbg: {} }; return A.wbg.__wbg_String_8f0eb39a4a4c2f66 = function(A, e) { var t = passStringToWasm0(String(getObject(e)), i.__wbindgen_export_0, i.__wbindgen_export_1), n = I; getDataViewMemory0().setInt32(A + 4, n, !0), getDataViewMemory0().setInt32(A + 0, t, !0); }, A.wbg.__wbg_buffer_609cc3eee51ed158 = function(A) { return addHeapObject(getObject(A).buffer); }, A.wbg.__wbg_call_672a4d21634d4a24 = function() { return handleError((function(A, e) { return addHeapObject(getObject(A).call(getObject(e))); }), arguments); }, A.wbg.__wbg_done_769e5ede4b31c67b = function(A) { return getObject(A).done; }, A.wbg.__wbg_error_7534b8e9a36f1ab4 = function(A, e) { var t, n; try { t = A, n = e, console.error(getStringFromWasm0(A, e)); } finally { i.__wbindgen_export_3(t, n, 1); } }, A.wbg.__wbg_get_67b2ba62fc30de12 = function() { return handleError((function(A, e) { return addHeapObject(Reflect.get(getObject(A), getObject(e))); }), arguments); }, A.wbg.__wbg_get_b9b93047fe3cf45b = function(A, e) { return addHeapObject(getObject(A)[e >>> 0]); }, A.wbg.__wbg_getwithrefkey_1dc361bd10053bfe = function(A, e) { return addHeapObject(getObject(A)[getObject(e)]); }, A.wbg.__wbg_instanceof_ArrayBuffer_e14585432e3737fc = function(A) { var e; try { e = getObject(A) instanceof ArrayBuffer; } catch (A) { e = !1; } return e; }, A.wbg.__wbg_instanceof_Uint8Array_17156bcf118086a9 = function(A) { var e; try { e = getObject(A) instanceof Uint8Array; } catch (A) { e = !1; } return e; }, A.wbg.__wbg_isArray_a1eab7e0d067391b = function(A) { return Array.isArray(getObject(A)); }, A.wbg.__wbg_iterator_9a24c88df860dc65 = function() { return addHeapObject(Symbol.iterator); }, A.wbg.__wbg_length_a446193dc22c12f8 = function(A) { return getObject(A).length; }, A.wbg.__wbg_length_e2d2a49132c1b256 = function(A) { return getObject(A).length; }, A.wbg.__wbg_new_405e22f390576ce2 = function() { return addHeapObject(new Object); }, A.wbg.__wbg_new_78feb108b6472713 = function() { return addHeapObject(new Array); }, A.wbg.__wbg_new_8a6f238a6ece86ea = function() { return addHeapObject(new Error); }, A.wbg.__wbg_new_a12002a7f91c75be = function(A) { return addHeapObject(new Uint8Array(getObject(A))); }, A.wbg.__wbg_next_25feadfc0913fea9 = function(A) { return addHeapObject(getObject(A).next); }, A.wbg.__wbg_next_6574e1a8a62d1055 = function() { return handleError((function(A) { return addHeapObject(getObject(A).next()); }), arguments); }, A.wbg.__wbg_set_37837023f3d740e8 = function(A, e, t) { getObject(A)[e >>> 0] = takeObject(t); }, A.wbg.__wbg_set_3f1d0b984ed272ed = function(A, e, t) { getObject(A)[takeObject(e)] = takeObject(t); }, A.wbg.__wbg_set_65595bdd868b3009 = function(A, e, t) { getObject(A).set(getObject(e), t >>> 0); }, A.wbg.__wbg_stack_0ed75d68575b0f3c = function(A, e) { var t = passStringToWasm0(getObject(e).stack, i.__wbindgen_export_0, i.__wbindgen_export_1), n = I; getDataViewMemory0().setInt32(A + 4, n, !0), getDataViewMemory0().setInt32(A + 0, t, !0); }, A.wbg.__wbg_value_cd1ffa7b1ab794f1 = function(A) { return addHeapObject(getObject(A).value); }, A.wbg.__wbindgen_boolean_get = function(A) { var e = getObject(A); return "boolean" == typeof e ? e ? 1 : 0 : 2; }, A.wbg.__wbindgen_debug_string = function(A, e) { var t = passStringToWasm0(debugString(getObject(e)), i.__wbindgen_export_0, i.__wbindgen_export_1), n = I; getDataViewMemory0().setInt32(A + 4, n, !0), getDataViewMemory0().setInt32(A + 0, t, !0); }, A.wbg.__wbindgen_error_new = function(A, e) { return addHeapObject(new Error(getStringFromWasm0(A, e))); }, A.wbg.__wbindgen_in = function(A, e) { return getObject(A) in getObject(e); }, A.wbg.__wbindgen_is_function = function(A) { return "function" == typeof getObject(A); }, A.wbg.__wbindgen_is_object = function(A) { var e = getObject(A); return "object" === (0, a.A)(e) && null !== e; }, A.wbg.__wbindgen_is_undefined = function(A) { return void 0 === getObject(A); }, A.wbg.__wbindgen_jsval_loose_eq = function(A, e) { return getObject(A) == getObject(e); }, A.wbg.__wbindgen_memory = function() { return addHeapObject(i.memory); }, A.wbg.__wbindgen_number_get = function(A, e) { var t = getObject(e), i = "number" == typeof t ? t : void 0; getDataViewMemory0().setFloat64(A + 8, isLikeNone(i) ? 0 : i, !0), getDataViewMemory0().setInt32(A + 0, !isLikeNone(i), !0); }, A.wbg.__wbindgen_number_new = function(A) { return addHeapObject(A); }, A.wbg.__wbindgen_object_clone_ref = function(A) { return addHeapObject(getObject(A)); }, A.wbg.__wbindgen_object_drop_ref = function(A) { takeObject(A); }, A.wbg.__wbindgen_string_get = function(A, e) { var t = getObject(e), n = "string" == typeof t ? t : void 0, r = isLikeNone(n) ? 0 : passStringToWasm0(n, i.__wbindgen_export_0, i.__wbindgen_export_1), o = I; getDataViewMemory0().setInt32(A + 4, o, !0), getDataViewMemory0().setInt32(A + 0, r, !0); }, A.wbg.__wbindgen_string_new = function(A, e) { return addHeapObject(getStringFromWasm0(A, e)); }, A.wbg.__wbindgen_throw = function(A, e) { throw new Error(getStringFromWasm0(A, e)); }, A; } function __wbg_finalize_init(A, e) { return i = A.exports, __wbg_init.__wbindgen_wasm_module = e, Q = null, c = null, i.__wbindgen_start(), i; } function initSync(A) { if (void 0 !== i) return i; void 0 !== A && (Object.getPrototypeOf(A) === Object.prototype ? A = A.module : console.warn("using deprecated parameters for `initSync()`; pass a single object instead")); var e = __wbg_get_imports(); return A instanceof WebAssembly.Module || (A = new WebAssembly.Module(A)), __wbg_finalize_init(new WebAssembly.Instance(A, e), A); } function __wbg_init(A) { return _wbg_init.apply(this, arguments); } function _wbg_init() { return (_wbg_init = (0, n.A)(s.mark((function _callee2(A) { var e, n, r, o; return s.wrap((function(a) { for (;;) switch (a.prev = a.next) { case 0: if (void 0 === i) { a.next = 2; break; } return a.abrupt("return", i); case 2: return void 0 !== A && (Object.getPrototypeOf(A) === Object.prototype ? A = A.module_or_path : console.warn("using deprecated parameters for the initialization function; pass a single object instead")), void 0 === A && (A = new URL(t(2609), t.b)), e = __wbg_get_imports(), ("string" == typeof A || "function" == typeof Request && A instanceof Request || "function" == typeof URL && A instanceof URL) && (A = fetch(A)), a.t0 = __wbg_load, a.next = 10, A; case 10: return a.t1 = a.sent, a.t2 = e, a.next = 14, (0, a.t0)(a.t1, a.t2); case 14: return n = a.sent, r = n.instance, o = n.module, a.abrupt("return", __wbg_finalize_init(r, o)); case 18: case "end": return a.stop(); } }), _callee2); })))).apply(this, arguments); } const f = __wbg_init; }, 2405: (A, e, t) => { "use strict"; t(6468)("Set", (function(A) { return function() { return A(this, arguments.length ? arguments[0] : void 0); }; }), t(6938)); }, 2478: (A, e, t) => { "use strict"; var i = t(9504), n = t(8981), r = Math.floor, o = i("".charAt), a = i("".replace), s = i("".slice), g = /\$([$&'`]|\d{1,2}|<[^>]*>)/g, I = /\$([$&'`]|\d{1,2})/g; A.exports = function(A, e, t, i, c, u) { var C = t + A.length, Q = i.length, B = I; return void 0 !== c && (c = n(c), B = g), a(u, B, (function(n, a) { var g; switch (o(a, 0)) { case "$": return "$"; case "&": return A; case "`": return s(e, 0, t); case "'": return s(e, C); case "<": g = c[s(a, 1, -1)]; break; default: var I = +a; if (0 === I) return n; if (I > Q) { var u = r(I / 10); return 0 === u ? n : u <= Q ? void 0 === i[u - 1] ? o(a, 1) : i[u - 1] + o(a, 1) : n; } g = i[I - 1]; } return void 0 === g ? "" : g; })); }; }, 2529: A => { "use strict"; A.exports = function(A, e) { return { value: A, done: e }; }; }, 2549: (A, e, t) => { "use strict"; A.exports = t(9100); }, 2551: (A, e, t) => { "use strict"; A.exports = Message; var i = t(3610); function Message(A) { if (A) for (var e = Object.keys(A), t = 0; t < e.length; ++t) this[e[t]] = A[e[t]]; } Message.create = function(A) { return this.$type.create(A); }, Message.encode = function(A, e) { return this.$type.encode(A, e); }, Message.encodeDelimited = function(A, e) { return this.$type.encodeDelimited(A, e); }, Message.decode = function(A) { return this.$type.decode(A); }, Message.decodeDelimited = function(A) { return this.$type.decodeDelimited(A); }, Message.verify = function(A) { return this.$type.verify(A); }, Message.fromObject = function(A) { return this.$type.fromObject(A); }, Message.toObject = function(A, e) { return this.$type.toObject(A, e); }, Message.prototype.toJSON = function() { return this.$type.toObject(this, i.toJSONOptions); }; }, 2609: A => { "use strict"; A.exports = "data:application/wasm;base64,AGFzbQEAAAAB/AEjYAAAYAABf2ABfwBgAX8Bf2ABfwF8YAJ/fwBgAn9/AX9gA39/fwBgA39/fwF/YAN/f38BfmAEf39/fwBgBH9/f38Bf2AFf39/f38AYAV/f39/fwF/YAZ/f39/f38AYAZ/f39/f38Bf2AHf39/f39/fwBgB39/f39/f38Bf2AJf39/f39/fn5+AGAFf39+f38AYAV/f31/fwBgA39/fABgBX9/fH9/AGAEf35/fwBgBH99f38AYAJ/fABgBH98f38AYAR/fH9/AX9gB398fH9/fHwAYAl/fHx8fH98fHwAYAJ+fwF/YAN+f38Bf2ABfAF/YAF8AXxgAnx8AXwCygopA3diZxRfX3diaW5kZ2VuX2Vycm9yX25ldwAGA3diZxRfX3diaW5kZ2VuX2lzX29iamVjdAADA3diZxdfX3diaW5kZ2VuX2lzX3VuZGVmaW5lZAADA3diZw1fX3diaW5kZ2VuX2luAAYDd2JnGl9fd2JpbmRnZW5fb2JqZWN0X2Ryb3BfcmVmAAIDd2JnFV9fd2JpbmRnZW5fbnVtYmVyX2dldAAFA3diZxVfX3diaW5kZ2VuX3N0cmluZ19uZXcABgN3YmcZX193YmluZGdlbl9qc3ZhbF9sb29zZV9lcQAGA3diZxZfX3diaW5kZ2VuX2Jvb2xlYW5fZ2V0AAMDd2JnFV9fd2JpbmRnZW5fc3RyaW5nX2dldAAFA3diZx1fX3diZ19TdHJpbmdfOGYwZWIzOWE0YTRjMmY2NgAFA3diZxVfX3diaW5kZ2VuX251bWJlcl9uZXcAIAN3YmcbX193YmluZGdlbl9vYmplY3RfY2xvbmVfcmVmAAMDd2JnJF9fd2JnX2dldHdpdGhyZWZrZXlfMWRjMzYxYmQxMDA1M2JmZQAGA3diZxpfX3diZ19zZXRfM2YxZDBiOTg0ZWQyNzJlZAAHA3diZxpfX3diZ19nZXRfYjliOTMwNDdmZTNjZjQ1YgAGA3diZx1fX3diZ19sZW5ndGhfZTJkMmE0OTEzMmMxYjI1NgADA3diZxpfX3diZ19uZXdfNzhmZWIxMDhiNjQ3MjcxMwABA3diZxZfX3diaW5kZ2VuX2lzX2Z1bmN0aW9uAAMDd2JnG19fd2JnX25leHRfMjVmZWFkZmMwOTEzZmVhOQADA3diZxtfX3diZ19uZXh0XzY1NzRlMWE4YTYyZDEwNTUAAwN3YmcbX193YmdfZG9uZV83NjllNWVkZTRiMzFjNjdiAAMDd2JnHF9fd2JnX3ZhbHVlX2NkMWZmYTdiMWFiNzk0ZjEAAwN3YmcfX193YmdfaXRlcmF0b3JfOWEyNGM4OGRmODYwZGM2NQABA3diZxpfX3diZ19nZXRfNjdiMmJhNjJmYzMwZGUxMgAGA3diZxtfX3diZ19jYWxsXzY3MmE0ZDIxNjM0ZDRhMjQABgN3YmcaX193YmdfbmV3XzQwNWUyMmYzOTA1NzZjZTIAAQN3YmcaX193Ymdfc2V0XzM3ODM3MDIzZjNkNzQwZTgABwN3YmceX193YmdfaXNBcnJheV9hMWVhYjdlMGQwNjczOTFiAAMDd2JnLV9fd2JnX2luc3RhbmNlb2ZfQXJyYXlCdWZmZXJfZTE0NTg1NDMyZTM3MzdmYwADA3diZx1fX3diZ19idWZmZXJfNjA5Y2MzZWVlNTFlZDE1OAADA3diZxpfX3diZ19uZXdfYTEyMDAyYTdmOTFjNzViZQADA3diZxpfX3diZ19zZXRfNjU1OTViZGQ4NjhiMzAwOQAHA3diZx1fX3diZ19sZW5ndGhfYTQ0NjE5M2RjMjJjMTJmOAADA3diZyxfX3diZ19pbnN0YW5jZW9mX1VpbnQ4QXJyYXlfMTcxNTZiY2YxMTgwODZhOQADA3diZxpfX3diZ19uZXdfOGE2ZjIzOGE2ZWNlODZlYQABA3diZxxfX3diZ19zdGFja18wZWQ3NWQ2ODU3NWIwZjNjAAUDd2JnHF9fd2JnX2Vycm9yXzc1MzRiOGU5YTM2ZjFhYjQABQN3YmcXX193YmluZGdlbl9kZWJ1Z19zdHJpbmcABQN3YmcQX193YmluZGdlbl90aHJvdwAFA3diZxFfX3diaW5kZ2VuX21lbW9yeQABA/YB9AEdCgwPAwoDGQYMBgYMBQoGCAsbHAgIDwgHBgIhGwghBwYGCAYIIgIGBQMSBgIFEBEGBRAJCQgGHwYGBggeBQYGCgUFDAwCAgIIAwMGAwcCAgIHCAUMDgYFBQoKCgoCBQcCBgUGDAgHBwcHBQYGHQcFBwICCAUGCAUIAwUIBgcHBg0HBgACBgACAAIFBAQLGRkPBhMMDQwMFA0WAgoKBgUIBgoFAgIGAgUCBQsHBggV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CiEBDAELIAogB0QAAAAuihmjO6IiCaEiASAHRMFJICWag3s5oiAKIAGhIAmhoSIIoSEJCyAAIAk5AwAgACABIAmhIAihOQMQIAdEAAAAAAAA4MFmIQQCQAJAIAeZRAAAAAAAAOBBY0UNACAHqiEDDAELQYCAgIB4IQMLIABBAEH/////ByADQYCAgIB4IAQbIAdEAADA////30FkGyAHIAdiGzYCCAwBCwJAIAEgAUSDyMltMF/kP6JEAAAAAAAAOEOgRAAAAAAAADjDoCIHRAAAQFT7Ifm/oqAiASAHRDFjYhphtNA9oiIIoSIJvUKAgICAgICA+P8Ag0L/////////hz9WDQACQCABIAdEAABgGmG00D2iIgmhIgogB0RzcAMuihmjO6IgASAKoSAJoaEiCKEiCb1CgICAgICAgID/AINC//////////88WA0AIAohAQwBCyAKIAdEAAAALooZozuiIgmhIgEgB0TBSSAlmoN7OaIgCiABoSAJoaEiCKEhCQsgACAJOQMAIAAgASAJoSAIoTkDECAHRAAAAAAAAODBZiEEAkACQCAHmUQAAAAAAADgQWNFDQAgB6ohAwwBC0GAgICAeCEDCyAAQQBB/////wcgA0GAgICAeCAEGyAHRAAAwP///99BZBsgByAHYhs2AggLIAJBMGokAAv+CQIFfwN+AkACQAJAAkACQAJAIAFBCEkNACABQQdxIgJFDQUgACgCoAEiA0EpTw0BAkAgAw0AIABBADYCoAEMBgsgA0F/akH/////A3EiBEEBaiIFQQNxIQYgAkECdEHYrMAAaigCACACdq0hBwJAIARBA08NAEIAIQggACECDAULIAVB/P///wdxIQRCACEIIAAhAgNAIAIgAjUCACAHfiAIfCIIPgIAIAJBBGoiBSAFNQIAIAd+IAhCIIh8Igg+AgAgAkEIaiIFIAU1AgAgB34gCEIgiHwiCD4CACACQQxqIgUgBTUCACAHfiAIQiCIfCIJPgIAIAlCIIghCCACQRBqIQIgBEF8aiIEDQAMBQsLIAAoAqABIgVBKU8NAQJAIAUNACAAQQA2AqABIAAPCyABQQJ0QdiswABqNQIAIQcgBUF/akH/////A3EiAkEBaiIEQQNxIQYCQCACQQNPDQBCACEIIAAhAgwDCyAEQfz///8HcSEEQgAhCCAAIQIDQCAC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AQEBBwALIAFB3ABGDQQLIAFBgAZJDQcgAkEBcUUNByABEFJFDQcgA0EAOgAKIANBADsBCCADIAFBFHZBtq/AAGotAAA6AAsgAyABQQR2QQ9xQbavwABqLQAAOgAPIAMgAUEIdkEPcUG2r8AAai0AADoADiADIAFBDHZBD3FBtq/AAGotAAA6AA0gAyABQRB2QQ9xQbavwABqLQAAOgAMIANBCGogAUEBcmdBAnYiAmoiBEH7ADoAACAEQX9qQfUAOgAAIANBCGogAkF+aiICakHcADoAACADQQhqQQhqIgQgAUEPcUG2r8AAai0AADoAACAAQQo6AAsgACACOgAKIAAgAykCCDcCACADQf0AOgARIABBCGogBC8BADsBAAwJCyAAQYAEOwEKIABCADcBAiAAQdzoATsBAAwICyAAQYAEOwEKIABCADcBAiAAQdzkATsBAAwHCyAAQYAEOwEKIABCADcBAiAAQdzcATsBAAwGCyAAQYAEOwEKIABCADcBAiAAQdy4ATsBAAwFCyAAQYAEOwEKIABCADcBAiAAQdzgADsBAAwECyACQYACcUUNASAAQYAEOwEKIABCADcBAiAAQdzOADsBAAwDCyACQYCABHENAQsCQCABEHUNACADQQA6ABYgA0EAOwEUIAMgAUEUdkG2r8AAai0AADoAFyADIAFBBHZBD3FBtq/AAGotAAA6ABsgAyABQQh2QQ9xQbavwABqLQAAOgAaIAMgAUEMdkEPcUG2r8AAai0AADoAGSADIAFBEHZBD3FBtq/AAGotAAA6ABggA0EUaiABQQFyZ0ECdiICaiIEQfsAOgAAIARBf2pB9QA6AAAgA0EUaiACQX5qIgJqQdwAOgAAIANBFGpBCGoiBCABQQ9xQbavwABqLQAAOgAAIABBCjoACyAAIAI6AAogACADKQIUNwIAIANB/QA6AB0gAEEIaiAELwEAOwEADAILIAAgATYCBCAAQYABOgAADAELIABBgAQ7AQogAEIANwECIABB3MQAOwEACyADQSBqJAALogYCAX8BfCMAQTBrIgIkAAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAAtAAAOEgABAgMEBQYHCAkKCwwNDg8QEQALIAIgAC0AAToACCACQQI2AhQgAkHMkMAANgIQIAJCATcCHCACQSatQiCGIAJBCGqthDcDKCACIAJBKGo2AhggASgCFCABKAIYIAJBEGoQRiEADBELIAIgACkDCDcDCCACQQI2AhQgAkHokMAANgIQIAJCATcCHCACQSetQiCGIAJBCGqthDcDKCACIAJBKGo2AhggASgCFCABKAIYIAJBEGoQRiEADBALIAIgACkDCDcDCCACQQI2AhQgAkHokMAANgIQIAJCATcCHCACQSitQiCGIAJBCGqthDcDKCACIAJBKGo2AhggASgCFCABKAIYIAJBEGoQRiEADA8LIAArAwghAyACQQI2AhQgAkGIkcAANgIQIAJCATcCHCACQSmtQiCGIAJBKGqthDcDCCACIAM5AyggAiACQQhqNgIYIAEoAhQgASgCGCACQRBqEEYhAAwOCyACIAAoAgQ2AgggAkECNgIUIAJBpJHAADYCECACQgE3AhwgAkEqrUIghiACQQhqrYQ3AyggAiACQShqNgIYIAEoAhQgASgCGCACQRBqEEYhAAwNCyACIAApAgQ3AgggAkEBNgIUIAJBvJHAADYCECACQgE3AhwgAkErrUIghiACQQhqrYQ3AyggAiACQShqNgIYIAEoAhQgASgCGCACQRBqEEYhAAwMCyABQbiQwABBChDWASEADAsLIAFBxJHAAEEKENYBIQAMCgsgAUHOkcAAQQwQ1gEhAAwJCyABQdqRwABBDhDWASEADAgLIAFB6JHAAEEIENYBIQAMBwsgAUHwkcAAQQMQ1gEhAAwGCyABQfORwABBBBDWASEADAULIAFB95HAAEEMENYBIQAMBAsgAUGDksAAQQ8Q1gEhAAwDCyABQZKSwABBDRDWASEADAILIAFBn5LAAEEOENYBIQAMAQsgASAAKAIEIAAoAggQ1gEhAAsgAkEwaiQAIAAL+gUBBX8gAEF4aiIBIABBfGooAgAiAkF4cSIAaiEDAkACQCACQQFxDQAgAkECcUUNASABKAIAIgIgAGohAAJAIAEgAmsiAUEAKALE00BHDQAgAygCBEEDcUEDRw0BQQAgADYCvNNAIAMgAygCBEF+cTYCBCABIABBAXI2AgQgAyAANgIADwsgASACEFoLAkACQAJAAkACQAJAIAMoAgQiAkECcQ0AIANBACgCyNNARg0CIANBACgCxNNARg0DIAMgAkF4cSICEFogASACIABqIgBBAXI2AgQg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IAVCNIhC/w+DIQggBFBFDQFCACEEAkAgA0IMhiIGQgBTDQBCACEEA0AgBEJ/fCEEIAZCAYYiBkJ/VQ0ACwsgA0IBIAR9hiEGDAILIABEAAAAAAAAAACiIAAgByAGURsPCyADQv////////8Hg0KAgICAgICACIQhBgtCACEHAkACQCAIQgBSDQACQCAFQgyGIghCAFMNAEIAIQcDQCAHQn98IQcgCEIBhiIIQn9VDQALCyAFQgEgB32GIQUMAQsgBUL/////////B4NCgICAgICAgAiEIQUgCCEHCwJAIAQgB1cNAANAAkAgBiAFfSIIQn9XDQAgCCEGIAhCAFINACAARAAAAAAAAAAAog8LIAZCAYYhBiAEQn98IgQgB1UNAAsgByEECwJAIAYgBX0iB0J/Vw0AIAchBiAHQgBSDQAgAEQAAAAAAAAAAKIPCwJAAkAgBkL/////////B1gNACAGIQcMAQsDQCAEQn98IQQgBkKAgICAgICABFQhAiAGQgGGIgchBiACDQALCyADQoCAgICAgICAgH+DIQYCQAJAIARCAFUNACAHQgEgBH2IIQQMAQsgB0KAgICAgICAeHwgBEI0hoQhBAsgBCAGhL8LkAQCB38BfiMAQdAAayIBJAAgAUEANgIoIAFCgICAgBA3AiAgAUEDOgBMIAFBIDYCPCABQQA2AkggAUHsi8AANgJEIAFBADYCNCABQQA2AiwgASABQSBqNgJAAkAgACABQSxqEGcNACABQRBqQQhqIAFBIGpBCGooAgAiADYCACABIAEpAiAiCDcDEAJAIAinIgIgAGtBCUsNACABQRBqIABBChB2IAEoAhAhAiABKAIYIQALIAEoAhQiAyAAaiIEQQApAISMQDcAACAEQQhqQQAvAIyMQDsAACABIABBCmoiBDYCGCABQQhqECMiBRAkIAEoAgghBgJAIAIgBGsgASgCDCIATw0AIAFBEGogBCAAEHYgASgCECECIAEoAhQhAyABKAIYIQQLIAMgBGogBiAAEF4aIAEgBCAAaiIENgIYAkAgAiAEa0EBSw0AIAFBEGogBEECEHYgASgCFCEDIAEoAhghBAsgAyAEakGKFDsAACABIARBAmoiBDYCGAJAAkACQCABKAIQIgcgBEsNACADIQIMAQsCQCAEDQBBASECIAMgB0EBEOoBDAELIAMgB0EB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A0GQisAANgIIIANCAjcCFCADQRCtQiCGIAOthDcDKCADQRGtQiCGIACthDcDICADIANBIGo2AhAgA0EIahBzIQIgA0EwaiQAIAILaQIBfwF+IwBBMGsiAyQAIAMgADYCACADIAE2AgQgA0ECNgIMIANBvLXAADYCCCADQgI3AhQgA0ExrUIghiIEIANBBGqthDcDKCADIAQgA62ENwMgIAMgA0EgajYCECADQQhqIAIQswEAC2kCAX8BfiMAQTBrIgMkACADIAE2AgQgAyAANgIAIANBAjYCDCADQdiwwAA2AgggA0ICNwIUIANBMa1CIIYiBCADrYQ3AyggAyAEIANBBGqthDcDICADIANBIGo2AhAgA0EIaiACELMBAAtpAgF/AX4jAEEwayIDJAAgAyAANgIAIAMgATYCBCADQQI2AgwgA0HctcAANgIIIANCAjcCFCADQTGtQiCGIgQgA0EEaq2ENwMoIAMgBCADrYQ3AyAgAyADQSBqNgIQIANBCGogAhCzAQALaQIBfwF+IwBBMGsiAyQAIAMgADYCACADIAE2AgQgA0ECNgIMIANBkLbAADYCCCADQgI3AhQgA0ExrUIghiIEIANBBGqthDcDKCADIAQgA62ENwMgIAMgA0EgajYCECADQQhqIAIQswEAC2oBAX8jAEEwayICJAACQEEALQDgz0BFDQAgAkECNgIMIAJByJTAADYCCCACQgE3AhQgAiABNgIsIAJBMa1CIIYgAkEsaq2ENwMgIAIgAkEgajYCECACQQhqQeiUwAAQswEACyACQTBqJAALYQEBfyMAQTBrIgIkACACIAE2AgwgAiAANgIIIAJBAjYCFCACQdiDwAA2AhAgAkIBNwIcIAJBAa1CIIYgAkEIaq2ENwMoIAIgAkEoajYCGCACQRBqEHIhASACQTBqJAAgAQthAQF/IwBBMGsiAiQAIAIgATYCDCACIAA2AgggAkECNgIUIAJB/IPAADYCECACQgE3AhwgAkEBrUIghiACQQhqrYQ3AyggAiACQShqNgIYIAJBEGoQciEBIAJBMGokACABC1sBAn8jAEEQayIJJAAgCUEIaiABIAIgAyAEIAUgBiAHIAgQKSAJKAIMIQUgACAJKAIIIgo2AgggAEEAIAUgCkEBcSIKGzYCACAAIAVBACAKGzYCBCAJQRBqJAALYgECfwJAAkAgAEF8aigCACIDQXhxIgRBBEEIIANBA3EiAxsgAWpJDQACQCADRQ0AIAQgAUEnaksNAgsgABBDDwtBmZPAAEEuQciTwAAQpgEAC0HYk8AAQS5BiJTAABCmAQALZAECfyABKAIAIQIgAUEANgIAAkACQCACRQ0AIAEoAgQhA0EALQDhz0AaQQhBBBDdASIBRQ0BIAEgAzYCBCABIAI2AgAgAEHAhMAANgIEIAAgATYCAA8LEJsCAAtBBEEIEIYCAAtbAQF/IwBBMGsiAyQAIAMgATYCDCADIAA2AgggA0EBNgIUIANB8K/AADYCECADQgE3AhwgA0HJAK1CIIYgA0EIaq2ENwMoIAMgA0EoajYCGCADQRBqIAIQswEAC1UBAn8jAEEQayIBJABBAC0A4c9AGiABQQA6AA8CQEEBQQEQ3QEiAg0AQQFBARCGAgALIAJBAUEBEOoBIAAgAq03AwggACABQQ9qrTcDACABQRBqJAALTQEBfyMAQTBrIgEkACABQQE2AgwgAUHor8AANgIIIAFCATcCFCABQccArUIghiABQS9qrYQ3AyAgASABQSBqNgIQIAFBCGogABCzAQALSgEDf0EAIQMCQCACRQ0AAkADQCAALQAAIgQgAS0AACIFRw0BIABBAWohACABQQFqIQEgAkF/aiICRQ0CDAALCyAEIAVrIQMLIAMLUAEBfyMAQSBrIgIkAAJAIAENACAAQQA2AgAgAkEgaiQADwsgAkEANgIYIAJBATYCDCACQdiWwAA2AgggAkIENwIQIAJBCGpBjJfAABCzAQALSAECfyMAQRBrIgIkACACQQhqIAAoAgAQCiACKAIIIgMgAigCDCIAIAEQhwIhAQJAIABFDQAgAyAAQQEQ6gELIAJBEGokACABC0cBAX8CQCAAKAIAIAAoAggiA2sgAk8NACAAIAMgAkEBQQEQbCAAKAIIIQMLIAAoAgQgA2ogASACEF4aIAAgAyACajYCCEEAC0kBAn8CQAJAIAEoAgQiAiABKAIISQ0AQQAhAwwBC0EBIQMgASACQQFqNgIEIAEoAgAoAgAgAhAPIQELIAAgATYCBCAAIAM2AgALQwEBfwJAIAAoAgAgACgCCCIDayACTw0AIAAgAyACEHYgACgCCCEDCyAAKAIEIANqIAEgAhBeGiAAIAMgAmo2AghBAAtSAQJ/QQAhAUEAQQAoApjQQCICQQFqNgKY0EACQCACQQBIDQBBASEBQQAtAOTTQA0AQQAgADoA5NNAQQBBACgC4NNAQQFqNgLg00BBAiEBCyABC08BAn9BAC0A4c9AGiABKAIEIQIgASgCACEDAkBBCEEEEN0BIgENAEEEQQgQhgIACyABIAI2AgQgASADNgIAIABB6JXAADYCBCAAIAE2AgALQwEBfwJAIAAoAgAgACgCCCIDayACTw0AIAAgAyACEHogACgCCCEDCyAAKAIEIANqIAEgAhBeGiAAIAMgAmo2AghBAAtEAQF/IwBBEGsiAiQAAkAgACgCAA0AEJsCAAsgAkEIaiAAQcCEwAAQiAEgASACKAIIIAIoAgwQ1gEhACACQRBqJAAgAAtCAQF/IwBBIGsiAyQAIANBADYCECADQQE2AgQgA0IENwIIIAMgATYCHCADIAA2AhggAyADQRhqNgIAIAMgAhCzAQALOQEBfyACQRB2QAAhAyAAQQA2AgggAEEAIAJBgIB8cSADQX9GIgIbNgIEIABBACADQRB0IAIbNgIACzwCAX8BfCABKAIcQQFxIQIgACsDACEDAkAgASgCCEEBRw0AIAEgAyACIAEoAgwQOw8LIAEgAyACQQAQRQs5AAJAIAJBgIDEAEYNACAAIAIgASgCEBEGAEUNAEEBDwsCQCADDQBBAA8LIAAgAyAEIAEoAgwRCAALOwEBfyMAQRBrIgMkACADIAE2AgwgAyAANgIIQQAgA0EIakHosMAAIANBDGpB6LDAACACQcyZwAAQVwALMgACQCAAIAEQugFFDQACQCAARQ0AQQAtAOHPQBogACABEN0BIgFFDQELIAEPCxCVAgALOgEBfyMAQSBrIgAkACAAQQA2AhggAEEBNgIMIABB0JfAADYCCCAAQgQ3AhAgAEEIakHsl8AAELMBAAs3AQF/IwBBIGsiASQAIAFBADYCGCABQQE2AgwgAUHkxcAANgIIIAFCBDcCECABQQhqIAAQswEACzkBAX9BASECAkAgACABEF8NACABKAIUQbSvwABBAiABKAIYKAIMEQgADQAgAEEEaiABEF8hAgsgAgsyAQF/IwBBEGsiACQAAkBBAC0A/M9AQQNGDQAgAEEBOgAPIABBD2oQhgELIABBEGokAAstAQF/IwBBEGsiASQAIAEgACkCADcCCCABQQhqQayDwAAgACgCCEEBQQAQfQALMQEBfyMAQRBrIgAkACAAQfyEwAA2AgwgAEErNgIIIABB0ITAADYCBCAAQQRqEIkCAAstAgF/AX4jAEEQayIBJAAgACkCACECIAEgADYCDCABIAI3AgQgAUEEahCPAgALKwEBfyMAQRBrIgIkACACQQE7AQwgAiABNgIIIAIgADYCBCACQQRqELIBAAslAAJAAkAgAEUNACAAKAIAQX9GDQEgACsDCA8LEP4BAAsQ/wEACyUAAkACQCAARQ0AIAAoAgBBf0YNASAAKwMQDwsQ/gEACxD/AQALJwACQAJAIAEgAxC6AUUNACAAIAEgAyACENMBIgMNAQsQlQIACyADCyQAAkACQCAARQ0AIAAoAgBFDQEQ/wEACxD+AQALIAAgATkDCAskAAJAAkAgAEUNACAAKAIARQ0BEP8BAAsQ/gEACyAAIAE5AxALJgACQCAADQBBtIvAAEEyEP0BAAsgACACIAMgBCAFIAEoAhARDQALIwEBf0EAIQICQCABaUEBRw0AQYCAgIB4IAFrIABPIQILIAILJAACQCAADQBBtIvAAEEyEP0BAAsgACACIAMgBCABKAIQERcACyQAAkAgAA0AQbSLwABBMhD9AQALIAAgAiADIAQgASgCEBEKAAskAAJAIAANAEG0i8AAQTIQ/QEACyAAIAIgAyAEIAEoAhARCwALJAACQCAADQBBtIvAAEEyEP0BAAsgACACIAMgBCABKAIQEQoACyQAAkAgAA0AQbSLwABBMhD9AQALIAAgAiADIAQgASgCEBEKAAskAAJAIAANAEG0i8AAQTIQ/QEACyAAIAIgAyAEIAEoAhARGAALJAACQCAADQBBtIvAAEEyEP0BAAsgACACIAMgBCABKAIQEQsACyQAAkAgAA0AQbSLwABBMhD9AQALIAAgAiADIAQgASgCEBEaAAsqAQF/AkAgACgCACIBQYCAgIB4ckGAgICAeEYNACAAKAIEIAFBARDqAQsLIAACQCABDQAgACADNgIEIAAgAjYCAA8LIAIgAxCGAgALIgACQCAADQBBtIvAAEEyEP0BAAsgACACIAMgASgCEBEHAAsjAAJAIAAtAAANACABQd20wABBBRA+DwsgAUHitMAAQQQQPgshAAJAIAEoAgANABCbAgALIABBwITAADYCBCAAIAE2AgAL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AG4AAACeAAAAMgAAAAAAAAAIAAAABAAAAAsAAAAMAAAADQAAAA4AAABtaXNzaW5nIGZpZWxkIGBgyAEQAA8AAADXARAAAQAAAGR1cGxpY2F0ZSBmaWVsZCBgAAAA6AEQABEAAADXARAAAQAAAGNhbGxlZCBgT3B0aW9uOjp1bndyYXBfdGhyb3coKWAgb24gYSBgTm9uZWAgdmFsdWUAAAAAAAAACAAAAAQAAAAPAAAAR3JhcGg6OmFkZF9lZGdlOiBub2RlIGluZGljZXMgb3V0IG9mIGJvdW5kcwAAABAAYwAAAD8CAAAbAAAAAAAAAP//////////kAIQAAAAAAAAAAAAAAAAAG5vIGVudHJ5IGZvdW5kIGZvciBrZXkvaG9tZS9waXgvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9wZXRncmFwaC0wLjYuNS9zcmMvYWxnby9hc3Rhci5ycwAAAL4CEABfAAAAYwAAACAAAAC+AhAAXwAAAF0AAAAeAAAAc3JjL2xpYi5ycwAAQAMQAAoAAADfAAAAIwAAAEADEAAKAAAA4AAAACIAAABAAxAACgAAAOMAAAArAAAAL2hvbWUvcGl4Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvY29uc29sZV9lcnJvcl9wYW5pY19ob29rLTAuMS43L3NyYy9saWIucnN8AxAAaAAAAJUAAAAOAAAAYXR0ZW1wdGVkIHRvIHRha2Ugb3duZXJzaGlwIG9mIFJ1c3QgdmFsdWUgd2hpbGUgaXQgd2FzIGJvcnJvd2VkY2VudGVyWGNlbnRlcllyYWRpdXMAMwQQAAcAAAA6BBAABwAAAEEEEAAGAAAAc3RydWN0IElucHV0Q2lyY2xlT3V0cHV0UGF0aFBvaW50eHlQYXRoUmVzdWx0Y29zdHBhdGhGYWlsZWQgdG8gZGVzZXJpYWxpemUgb2JzdGFjbGVzOiAAAJUEEAAhAAAAQAMQAAoAAAC+AQAAJgAAAEZhaWxlZCB0byBzZXJpYWxpemUgcmVzdWx0OiDQBBAAHAAAAGludmFsaWQgdHlwZTogLCBleHBlY3RlZCAAAAD0BBAADgAAAAIFEAALAAAA//////////8gBRAAAAAAAAAAAAAAAAAAAQAAAAAAAAAvaG9tZS9waXgvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zZXJkZS13YXNtLWJpbmRnZW4tMC42LjUvc3JjL2xpYi5ycwAAQAUQAGIAAAA1AAAADgAAAGNsb3N1cmUgaW52b2tlZCByZWN1cnNpdmVseSBvciBhZnRlciBiZWluZyBkcm9wcGVkRXJyb3IAHwAAAAwAAAAEAAAAIAAAACEAAAAiAAAACgpTdGFjazoKCgAAAAAAAAAAAAABAAAAIwAAAGEgRGlzcGxheSBpbXBsZW1lbnRhdGlvbiByZXR1cm5lZCBhbiBlcnJvciB1bmV4cGVjdGVkbHkvaG9tZS9waXgvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS14ODZfNjQtdW5rbm93bi1saW51eC1nbnUvbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9hbGxvYy9zcmMvc3RyaW5nLnJzVwYQAG0AAAB7CgAADgAAAExhenkgaW5zdGFuY2UgaGFzIHByZXZpb3VzbHkgYmVlbiBwb2lzb25lZAAA1AYQACoAAAAvaG9tZS9waXgvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9vbmNlX2NlbGwtMS4yMS4zL3NyYy9saWIucnMAAAgHEABaAAAACAMAABkAAAByZWVudHJhbnQgaW5pdAAAdAcQAA4AAAAIBxAAWgAAAHoCAAANAAAAbnVsbCBwb2ludGVyIHBhc3NlZCB0byBydXN0cmVjdXJzaXZlIHVzZSBvZiBhbiBvYmplY3QgZGV0ZWN0ZWQgd2hpY2ggd291bGQgbGVhZCB0byB1bnNhZmUgYWxpYXNpbmcgaW4gcnVzdEpzVmFsdWUoKQAGCBAACAAAAA4IEAABAAAAAAAAAAgAAAAEAAAALQAAAC4AAAAvAAAAYnl0ZSBhcnJheWJvb2xlYW4gYGBCCBAACQAAAEsIEAABAAAAaW50ZWdlciBgAAAAXAgQAAkAAABLCBAAAQAAAGZsb2F0aW5nIHBvaW50IGB4CBAAEAAAAEsIEAABAAAAY2hhcmFjdGVyIGAAmAgQAAsAAABLCBAAAQAAAHN0cmluZyAAtAgQAAcAAAB1bml0IHZhbHVlT3B0aW9uIHZhbHVlbmV3dHlwZSBzdHJ1Y3RzZXF1ZW5jZW1hcGVudW11bml0IHZhcmlhbnRuZXd0eXBlIHZhcmlhbnR0dXBsZSB2YXJpYW50c3RydWN0IHZhcmlhbnQAAAABAAAAAAAAAC4wZjY0OgAAAQAAAAAAAAA9CRAAAQAAAD0JEAABAAAAMwAAAAwAAAAEAAAANAAAADUAAAA2AAAAL3J1c3QvZGVwcy9kbG1hbGxvYy0wLjIuNi9zcmMvZGxtYWxsb2MucnNhc3NlcnRpb24gZmFpbGVkOiBwc2l6ZSA+PSBzaXplICsgbWluX292ZXJoZWFkAHAJEAApAAAAqAQAAAkAAABhc3NlcnRpb24gZmFpbGVkOiBwc2l6ZSA8PSBzaXplICsgbWF4X292ZXJoZWFkAABwCRAAKQAAAK4EAAANAAAAcGFuaWNrZWQgYXQgOgptZW1vcnkgYWxsb2NhdGlvbiBvZiAgYnl0ZXMgZmFpbGVkJgoQABUAAAA7ChAADQAAAHN0ZC9zcmMvYWxsb2MucnNYChAAEAAAAGMBAAAJAAAAY2Fubm90IG1vZGlmeSB0aGUgcGFuaWMgaG9vayBmcm9tIGEgcGFuaWNraW5nIHRocmVhZHgKEAA0AAAAc3RkL3NyYy9wYW5pY2tpbmcucnO0ChAAFAAAAIMAAAAJAAAAMwAAAAwAAAAEAAAANwAAAAAAAAAIAAAABAAAADgAAAAAAAAACAAAAAQAAAA5AAAAOgAAADsAAAA8AAAAPQAAABAAAAAEAAAAPgAAAD8AAABAAAAAQQAAAEJveDxkeW4gQW55Pkhhc2ggdGFibGUgY2FwYWNpdHkgb3ZlcmZsb3c8CxAAHAAAAC9ydXN0L2RlcHMvaGFzaGJyb3duLTAuMTUuMC9zcmMvcmF3L21vZC5ycwAAYAsQACoAAABUAAAAKAAAAEVycm9yAAAAQgAAAAwAAAAEAAAAQwAAAEQAAABFAAAAY2FwYWNpdHkgb3ZlcmZsb3cAAAC8CxAAEQAAAGFsbG9jL3NyYy9yYXdfdmVjLnJz2AsQABQAAAAYAAAABQAAAAAAAAAAAAAAAQAAAEYAAABhIGZvcm1hdHRpbmcgdHJhaXQgaW1wbGVtZW50YXRp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AOMCAABOAAAA2BQQACYAAADvAgAASgAAANgUEAAmAAAAzAIAAEoAAABjb3JlL3NyYy9udW0vZmx0MmRlYy9tb2QucnMA4BYQABsAAAC7AAAABQAAAGFzc2VydGlvbiBmYWlsZWQ6IGJ1ZlswXSA+IGInMCcA4BYQABsAAAC8AAAABQAAAGFzc2VydGlvbiBmYWlsZWQ6IHBhcnRzLmxlbigpID49IDQAAOAWEAAbAAAAvQAAAAUAAAAuMC4tK05hTmluZjBhc3NlcnRpb24gZmFpbGVkOiBidWYubGVuKCkgPj0gbWF4bGVuAAAA4BYQABsAAAB+AgAADQAAAC4uMDEyMzQ1Njc4OWFiY2RlZkJvcnJvd011dEVycm9yYWxyZWFkeSBib3Jyb3dlZDogAADUFxAAEgAAAAEAAAAAAAAAY2FsbGVkIGBPcHRpb246OnVud3JhcCgpYCBvbiBhIGBOb25lYCB2YWx1ZWluZGV4IG91dCBvZiBib3VuZHM6IHRoZSBsZW4gaXMgIGJ1dCB0aGUgaW5kZXggaXMgAAAAIxgQACAAAABDGBAAEgAAAAAAAAAEAAAABAAAAE0AAAA9PSE9bWF0Y2hlc2Fzc2VydGlvbiBgbGVmdCAgcmlnaHRgIGZhaWxlZAogIGxlZnQ6IAogcmlnaHQ6IACDGBAAEAAAAJMYEAAXAAAAqhgQAAkAAAAgcmlnaHRgIGZhaWxlZDogCiAgbGVmdDogAAAAgxgQABAAAADMGBAAEAAAANwYEAAJAAAAqhgQAAkAAAA6IAAAAQAAAAAAAAAIGRAAAgAAAGNvcmUvc3JjL2ZtdC9udW0ucnMAHBkQABMAAABmAAAAFwAAADB4MDAwMTAyMDMwNDA1MDYwNzA4MDkxMDExMTIxMzE0MTUxNjE3MTgxOTIwMjEyMjIzMjQyNTI2MjcyODI5MzAzMTMyMzMzNDM1MzYzNzM4Mzk0MDQxNDI0MzQ0NDU0NjQ3NDg0OTUwNTE1MjUzNTQ1NTU2NTc1ODU5NjA2MTYyNjM2NDY1NjY2NzY4Njk3MDcxNzI3Mzc0NzU3Njc3Nzg3OTgwODE4MjgzODQ4NTg2ODc4ODg5OTA5MTkyOTM5NDk1OTY5Nzk4OTkwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw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"; }, 2637: (A, e, t) => { "use strict"; t(6518)({ target: "Number", stat: !0 }, { isInteger: t(2087) }); }, 2652: (A, e, t) => { "use strict"; var i = t(6080), n = t(9565), r = t(8551), o = t(6823), a = t(4209), s = t(6198), g = t(1625), I = t(81), c = t(851), u = t(9539), C = TypeError, Result = function(A, e) { this.stopped = A, this.result = e; }, Q = Result.prototype; A.exports = function(A, e, t) { var B, E, l, h, f, d, y, w = t && t.that, v = !(!t || !t.AS_ENTRIES), p = !(!t || !t.IS_RECORD), D = !(!t || !t.IS_ITERATOR), b = !(!t || !t.INTERRUPTED), k = i(e, w), stop = function(A) { return B && u(B, "normal", A), new Result(!0, A); }, callFn = function(A) { return v ? (r(A), b ? k(A[0], A[1], stop) : k(A[0], A[1])) : b ? k(A, stop) : k(A); }; if (p) B = A.iterator; else if (D) B = A; else { if (!(E = c(A))) throw new C(o(A) + " is not iterable"); if (a(E)) { for (l = 0, h = s(A); h > l; l++) if ((f = callFn(A[l])) && g(Q, f)) return f; return new Result(!1); } B = I(A, E); } for (d = p ? A.next : B.next; !(y = n(d, B)).done; ) { try { f = callFn(y.value); } catch (A) { u(B, "throw", A); } if ("object" == typeof f && f && g(Q, f)) return f; } return new Result(!1); }; }, 2675: (A, e, t) => { "use strict"; t(6761), t(1510), t(7812), t(3110), t(9773); }, 2703: (A, e, t) => { "use strict"; var i = t(2195), n = t(9039), r = t(9504), o = t(655), a = t(3802).trim, s = t(7452), g = i.parseInt, I = i.Symbol, c = I && I.iterator, u = /^[+-]?0x/i, C = r(u.exec), Q = 8 !== g(s + "08") || 22 !== g(s + "0x16") || c && !n((function() { g(Object(c)); })); A.exports = Q ? function(A, e) { var t = a(o(A)); return g(t, e >>> 0 || (C(u, t) ? 16 : 10)); } : g; }, 2712: (A, e, t) => { "use strict"; var i = t(6518), n = t(926).left, r = t(4598), o = t(9519); i({ target: "Array", proto: !0, forced: !t(6193) && o > 79 && o < 83 || !r("reduce") }, { reduce: function(A) { var e = arguments.length; return n(this, A, e, e > 1 ? arguments[1] : void 0); } }); }, 2744: (A, e, t) => { "use strict"; var i = t(9039); A.exports = !i((function() { return Object.isExtensible(Object.preventExtensions({})); })); }, 2762: (A, e, t) => { "use strict"; var i = t(6518), n = t(3802).trim; i({ target: "String", proto: !0, forced: t(706)("trim") }, { trim: function() { return n(this); } }); }, 2777: (A, e, t) => { "use strict"; var i = t(9565), n = t(34), r = t(757), o = t(5966), a = t(4270), s = t(8227), g = TypeError, I = s("toPrimitive"); A.exports = function(A, e) { if (!n(A) || r(A)) return A; var t, s = o(A, I); if (s) { if (void 0 === e && (e = "default"), t = i(s, A, e), !n(t) || r(t)) return t; throw new g("Can't convert object to primitive value"); } return void 0 === e && (e = "number"), a(A, e); }; }, 2787: (A, e, t) => { "use strict"; var i = t(9297), n = t(4901), r = t(8981), o = t(6119), a = t(2211), s = o("IE_PROTO"), g = Object, I = g.prototype; A.exports = a ? g.getPrototypeOf : function(A) { var e = r(A); if (i(e, s)) return e[s]; var t = e.constructor; return n(t) && e instanceof t ? t.prototype : e instanceof g ? I : null; }; }, 2796: (A, e, t) => { "use strict"; var i = t(9039), n = t(4901), r = /#|\.prototype\./, isForced = function(A, e) { var t = a[o(A)]; return t === g || t !== s && (n(e) ? i(e) : !!e); }, o = isForced.normalize = function(A) { return String(A).replace(r, ".").toLowerCase(); }, a = isForced.data = {}, s = isForced.NATIVE = "N", g = isForced.POLYFILL = "P"; A.exports = isForced; }, 2805: (A, e, t) => { "use strict"; var i = t(2195), n = t(9039), r = t(4428), o = t(4644).NATIVE_ARRAY_BUFFER_VIEWS, a = i.ArrayBuffer, s = i.Int8Array; A.exports = !o || !n((function() { s(1); })) || !n((function() { new s(-1); })) || !r((function(A) { new s, new s(null), new s(1.5), new s(A); }), !0) || n((function() { return 1 !== new s(new a(2), 1, void 0).length; })); }, 2812: A => { "use strict"; var e = TypeError; A.exports = function(A, t) { if (A < t) throw new e("Not enough arguments"); return A; }; }, 2839: (A, e, t) => { "use strict"; var i = t(2195).navigator, n = i && i.userAgent; A.exports = n ? String(n) : ""; }, 2887: (A, e, t) => { "use strict"; var i = t(2195), n = t(9039), r = t(9504), o = t(4644), a = t(3792), s = t(8227)("iterator"), g = i.Uint8Array, I = r(a.values), c = r(a.keys), u = r(a.entries), C = o.aTypedArray, Q = o.exportTypedArrayMethod, B = g && g.prototype, E = !n((function() { B[s].call([ 1 ]); })), l = !!B && B.values && B[s] === B.values && "values" === B.values.name, typedArrayValues = function() { return I(C(this)); }; Q("entries", (function() { return u(C(this)); }), E), Q("keys", (function() { return c(C(this)); }), E), Q("values", typedArrayValues, E || !l, { name: "values" }), Q(s, typedArrayValues, E || !l, { name: "values" }); }, 2892: (A, e, t) => { "use strict"; var i = t(9167), n = t(9297), r = t(1951), o = t(4913).f; A.exports = function(A) { var e = i.Symbol || (i.Symbol = {}); n(e, A) || o(e, A, { value: r.f(A) }); }; }, 2901: (A, e, t) => { "use strict"; t.d(e, { A: () => _createClass }); var i = t(816); function _defineProperties(A, e) { for (var t = 0; t < e.length; t++) { var n = e[t]; n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(A, (0, i.A)(n.key), n); } } function _createClass(A, e, t) { return e && _defineProperties(A.prototype, e), t && _defineProperties(A, t), Object.defineProperty(A, "prototype", { writable: !1 }), A; } }, 2953: (A, e, t) => { "use strict"; var i = t(2195), n = t(7400), r = t(9296), o = t(3792), a = t(6699), s = t(687), g = t(8227)("iterator"), I = o.values, handlePrototype = function(A, e) { if (A) { if (A[g] !== I) try { a(A, g, I); } catch (e) { A[g] = I; } if (s(A, e, !0), n[e]) for (var t in o) if (A[t] !== o[t]) try { a(A, t, o[t]); } catch (e) { A[t] = o[t]; } } }; for (var c in n) handlePrototype(i[c] && i[c].prototype, c); handlePrototype(r, "DOMTokenList"); }, 2967: (A, e, t) => { "use strict"; var i = t(6706), n = t(34), r = t(7750), o = t(3506); A.exports = Object.setPrototypeOf || ("__proto__" in {} ? function() { var A, e = !1, t = {}; try { (A = i(Object.prototype, "__proto__", "set"))(t, []), e = t instanceof Array; } catch (A) {} return function(t, i) { return r(t), o(i), n(t) ? (e ? A(t, i) : t.__proto__ = i, t) : t; }; }() : void 0); }, 3029: (A, e, t) => { "use strict"; function _classCallCheck(A, e) { if (!(A instanceof e)) throw new TypeError("Cannot call a class as a function"); } t.d(e, { A: () => _classCallCheck }); }, 3063: (A, e, t) => { "use strict"; var i = t(2839); A.exports = /Version\/10(?:\.\d+){1,2}(?: [\w./]+)?(?: Mobile\/\w+)? Safari\//.test(i); }, 3110: (A, e, t) => { "use strict"; var i = t(6518), n = t(7751), r = t(8745), o = t(9565), a = t(9504), s = t(9039), g = t(4901), I = t(757), c = t(7680), u = t(6933), C = t(4495), Q = String, B = n("JSON", "stringify"), E = a(/./.exec), l = a("".charAt), h = a("".charCodeAt), f = a("".replace), d = a(1..toString), y = /[\uD800-\uDFFF]/g, w = /^[\uD800-\uDBFF]$/, v = /^[\uDC00-\uDFFF]$/, p = !C || s((function() { var A = n("Symbol")("stringify detection"); return "[null]" !== B([ A ]) || "{}" !== B({ a: A }) || "{}" !== B(Object(A)); })), D = s((function() { return '"\\udf06\\ud834"' !== B("\udf06\ud834") || '"\\udead"' !== B("\udead"); })), stringifyWithSymbolsFix = function(A, e) { var t = c(arguments), i = u(e); if (g(i) || void 0 !== A && !I(A)) return t[1] = function(A, e) { if (g(i) && (e = o(i, this, Q(A), e)), !I(e)) return e; }, r(B, null, t); }, fixIllFormed = function(A, e, t) { var i = l(t, e - 1), n = l(t, e + 1); return E(w, A) && !E(v, n) || E(v, A) && !E(w, i) ? "\\u" + d(h(A, 0), 16) : A; }; B && i({ target: "JSON", stat: !0, arity: 3, forced: p || D }, { stringify: function(A, e, t) { var i = c(arguments), n = r(p ? stringifyWithSymbolsFix : B, null, i); return D && "string" == typeof n ? f(n, y, fixIllFormed) : n; } }); }, 3138: A => { "use strict"; A.exports = function(A, e) { try { 1 === arguments.length ? console.error(A) : console.error(A, e); } catch (A) {} }; }, 3158: (A, e, t) => { "use strict"; A.exports = BufferReader; var i = t(6237); (BufferReader.prototype = Object.create(i.prototype)).constructor = BufferReader; var n = t(3610); function BufferReader(A) { i.call(this, A); } BufferReader._configure = function() { n.Buffer && (BufferReader.prototype._slice = n.Buffer.prototype.slice); }, BufferReader.prototype.string = function() { var A = this.uint32(); return this.buf.utf8Slice ? this.buf.utf8Slice(this.pos, this.pos = Math.min(this.pos + A, this.len)) : this.buf.toString("utf-8", this.pos, this.pos = Math.min(this.pos + A, this.len)); }, BufferReader._configure(); }, 3164: (A, e, t) => { "use strict"; var i = t(7782), n = t(3602), r = Math.abs; A.exports = function(A, e, t, o) { var a = +A, s = r(a), g = i(a); if (s < o) return g * n(s / o / e) * o * e; var I = (1 + e / 2220446049250313e-31) * s, c = I - (I - s); return c > t || c != c ? g * (1 / 0) : g * c; }; }, 3167: (A, e, t) => { "use strict"; var i = t(4901), n = t(34), r = t(2967); A.exports = function(A, e, t) { var o, a; return r && i(o = e.constructor) && o !== t && n(a = o.prototype) && a !== t.prototype && r(A, a), A; }; }, 3179: (A, e, t) => { "use strict"; var i = t(2140), n = t(6955); A.exports = i ? {}.toString : function() { return "[object " + n(this) + "]"; }; }, 3206: (A, e, t) => { "use strict"; var i = t(4644), n = t(9213).forEach, r = i.aTypedArray; (0, i.exportTypedArrayMethod)("forEach", (function(A) { n(r(this), A, arguments.length > 1 ? arguments[1] : void 0); })); }, 3251: (A, e, t) => { "use strict"; var i = t(6080), n = t(9565), r = t(5548), o = t(8981), a = t(6198), s = t(81), g = t(851), I = t(4209), c = t(1108), u = t(4644).aTypedArrayConstructor, C = t(5854); A.exports = function(A) { var e, t, Q, B, E, l, h, f, d = r(this), y = o(A), w = arguments.length, v = w > 1 ? arguments[1] : void 0, p = void 0 !== v, D = g(y); if (D && !I(D)) for (f = (h = s(y, D)).next, y = []; !(l = n(f, h)).done; ) y.push(l.value); for (p && w > 2 && (v = i(v, arguments[2])), t = a(y), Q = new (u(d))(t), B = c(Q), e = 0; t > e; e++) E = p ? v(y[e], e) : y[e], Q[e] = B ? C(E) : +E; return Q; }; }, 3262: (A, e, t) => { "use strict"; var i, n, r = A.exports = t(3610), o = t(4529); r.codegen = t(8561), r.fetch = t(5212), r.path = t(9207), r.fs = r.inquire("fs"), r.toArray = function(A) { if (A) { for (var e = Object.keys(A), t = new Array(e.length), i = 0; i < e.length; ) t[i] = A[e[i++]]; return t; } return []; }, r.toObject = function(A) { for (var e = {}, t = 0; t < A.length; ) { var i = A[t++], n = A[t++]; void 0 !== n && (e[i] = n); } return e; }; var a = /\\/g, s = /"/g; r.isReserved = function(A) { return /^(?:do|if|in|for|let|new|try|var|case|else|enum|eval|false|null|this|true|void|with|break|catch|class|const|super|throw|while|yield|delete|export|import|public|return|static|switch|typeof|default|extends|finally|package|private|continue|debugger|function|arguments|interface|protected|implements|instanceof)$/.test(A); }, r.safeProp = function(A) { return !/^[$\w_]+$/.test(A) || r.isReserved(A) ? '["' + A.replace(a, "\\\\").replace(s, '\\"') + '"]' : "." + A; }, r.ucFirst = function(A) { return A.charAt(0).toUpperCase() + A.substring(1); }; var g = /_([a-z])/g; r.camelCase = function(A) { return A.substring(0, 1) + A.substring(1).replace(g, (function(A, e) { return e.toUpperCase(); })); }, r.compareFieldsById = function(A, e) { return A.id - e.id; }, r.decorateType = function(A, e) { if (A.$type) return e && A.$type.name !== e && (r.decorateRoot.remove(A.$type), A.$type.name = e, r.decorateRoot.add(A.$type)), A.$type; i || (i = t(7882)); var n = new i(e || A.name); return r.decorateRoot.add(n), n.ctor = A, Object.defineProperty(A, "$type", { value: n, enumerable: !1 }), Object.defineProperty(A.prototype, "$type", { value: n, enumerable: !1 }), n; }; var I = 0; r.decorateEnum = function(A) { if (A.$type) return A.$type; n || (n = t(5643)); var e = new n("Enum" + I++, A); return r.decorateRoot.add(e), Object.defineProperty(A, "$type", { value: e, enumerable: !1 }), e; }, r.setProperty = function(A, e, t) { if ("object" != typeof A) throw TypeError("dst must be an object"); if (!e) throw TypeError("path must be specified"); return function setProp(A, e, t) { var i = e.shift(); if ("__proto__" === i || "prototype" === i) return A; if (e.length > 0) A[i] = setProp(A[i] || {}, e, t); else { var n = A[i]; n && (t = [].concat(n).concat(t)), A[i] = t; } return A; }(A, e = e.split("."), t); }, Object.defineProperty(r, "decorateRoot", { get: function() { return o.decorated || (o.decorated = new (t(5330))); } }); }, 3296: (A, e, t) => { "use strict"; t(5806); }, 3362: (A, e, t) => { "use strict"; t(436), t(6499), t(2003), t(7743), t(1481), t(280); }, 3389: (A, e, t) => { "use strict"; var i = t(2195), n = t(3724), r = Object.getOwnPropertyDescriptor; A.exports = function(A) { if (!n) return i[A]; var e = r(i, A); return e && e.value; }; }, 3392: (A, e, t) => { "use strict"; var i = t(9504), n = 0, r = Math.random(), o = i(1..toString); A.exports = function(A) { return "Symbol(" + (void 0 === A ? "" : A) + ")_" + o(++n + r, 36); }; }, 3418: (A, e, t) => { "use strict"; var i = t(6518), n = t(7916); i({ target: "Array", stat: !0, forced: !t(4428)((function(A) { Array.from(A); })) }, { from: n }); }, 3438: (A, e, t) => { "use strict"; var i = t(8551), n = t(34), r = t(6043); A.exports = function(A, e) { if (i(A), n(e) && e.constructor === A) return e; var t = r.f(A); return (0, t.resolve)(e), t.promise; }; }, 3449: (A, e, t) => { "use strict"; A.exports = Writer; var i, n = t(3610), r = n.LongBits, o = n.base64, a = n.utf8; function Op(A, e, t) { this.fn = A, this.len = e, this.next = void 0, this.val = t; } function noop() {} function State(A) { this.head = A.head, this.tail = A.tail, this.len = A.len, this.next = A.states; } function Writer() { this.len = 0, this.head = new Op(noop, 0, 0), this.tail = this.head, this.states = null; } var create = function() { return n.Buffer ? function() { return (Writer.create = function() { return new i; })(); } : function() { return new Writer; }; }; function writeByte(A, e, t) { e[t] = 255 & A; } function VarintOp(A, e) { this.len = A, this.next = void 0, this.val = e; } function writeVarint64(A, e, t) { for (;A.hi; ) e[t++] = 127 & A.lo | 128, A.lo = (A.lo >>> 7 | A.hi << 25) >>> 0, A.hi >>>= 7; for (;A.lo > 127; ) e[t++] = 127 & A.lo | 128, A.lo = A.lo >>> 7; e[t++] = A.lo; } function writeFixed32(A, e, t) { e[t] = 255 & A, e[t + 1] = A >>> 8 & 255, e[t + 2] = A >>> 16 & 255, e[t + 3] = A >>> 24; } Writer.create = create(), Writer.alloc = function(A) { return new n.Array(A); }, n.Array !== Array && (Writer.alloc = n.pool(Writer.alloc, n.Array.prototype.subarray)), Writer.prototype._push = function(A, e, t) { return this.tail = this.tail.next = new Op(A, e, t), this.len += e, this; }, VarintOp.prototype = Object.create(Op.prototype), VarintOp.prototype.fn = function(A, e, t) { for (;A > 127; ) e[t++] = 127 & A | 128, A >>>= 7; e[t] = A; }, Writer.prototype.uint32 = function(A) { return this.len += (this.tail = this.tail.next = new VarintOp((A >>>= 0) < 128 ? 1 : A < 16384 ? 2 : A < 2097152 ? 3 : A < 268435456 ? 4 : 5, A)).len, this; }, Writer.prototype.int32 = function(A) { return A < 0 ? this._push(writeVarint64, 10, r.fromNumber(A)) : this.uint32(A); }, Writer.prototype.sint32 = function(A) { return this.uint32((A << 1 ^ A >> 31) >>> 0); }, Writer.prototype.uint64 = function(A) { var e = r.from(A); return this._push(writeVarint64, e.length(), e); }, Writer.prototype.int64 = Writer.prototype.uint64, Writer.prototype.sint64 = function(A) { var e = r.from(A).zzEncode(); return this._push(writeVarint64, e.length(), e); }, Writer.prototype.bool = function(A) { return this._push(writeByte, 1, A ? 1 : 0); }, Writer.prototype.fixed32 = function(A) { return this._push(writeFixed32, 4, A >>> 0); }, Writer.prototype.sfixed32 = Writer.prototype.fixed32, Writer.prototype.fixed64 = function(A) { var e = r.from(A); return this._push(writeFixed32, 4, e.lo)._push(writeFixed32, 4, e.hi); }, Writer.prototype.sfixed64 = Writer.prototype.fixed64, Writer.prototype.float = function(A) { return this._push(n.float.writeFloatLE, 4, A); }, Writer.prototype.double = function(A) { return this._push(n.float.writeDoubleLE, 8, A); }; var s = n.Array.prototype.set ? function(A, e, t) { e.set(A, t); } : function(A, e, t) { for (var i = 0; i < A.length; ++i) e[t + i] = A[i]; }; Writer.prototype.bytes = function(A) { var e = A.length >>> 0; if (!e) return this._push(writeByte, 1, 0); if (n.isString(A)) { var t = Writer.alloc(e = o.length(A)); o.decode(A, t, 0), A = t; } return this.uint32(e)._push(s, e, A); }, Writer.prototype.string = function(A) { var e = a.length(A); return e ? this.uint32(e)._push(a.write, e, A) : this._push(writeByte, 1, 0); }, Writer.prototype.fork = function() { return this.states = new State(this), this.head = this.tail = new Op(noop, 0, 0), this.len = 0, this; }, Writer.prototype.reset = function() { return this.states ? (this.head = this.states.head, this.tail = this.states.tail, this.len = this.states.len, this.states = this.states.next) : (this.head = this.tail = new Op(noop, 0, 0), this.len = 0), this; }, Writer.prototype.ldelim = function() { var A = this.head, e = this.tail, t = this.len; return this.reset().uint32(t), t && (this.tail.next = A.next, this.tail = e, this.len += t), this; }, Writer.prototype.finish = function() { for (var A = this.head.next, e = this.constructor.alloc(this.len), t = 0; A; ) A.fn(A.val, e, t), t += A.len, A = A.next; return e; }, Writer._configure = function(A) { i = A, Writer.create = create(), i._configure(); }; }, 3451: (A, e, t) => { "use strict"; var i = t(6518), n = t(9504), r = t(421), o = t(34), a = t(9297), s = t(4913).f, g = t(8480), I = t(298), c = t(4124), u = t(3392), C = t(2744), Q = !1, B = u("meta"), E = 0, setMetadata = function(A) { s(A, B, { value: { objectID: "O" + E++, weakData: {} } }); }, l = A.exports = { enable: function() { l.enable = function() {}, Q = !0; var A = g.f, e = n([].splice), t = {}; t[B] = 1, A(t).length && (g.f = function(t) { for (var i = A(t), n = 0, r = i.length; n < r; n++) if (i[n] === B) { e(i, n, 1); break; } return i; }, i({ target: "Object", stat: !0, forced: !0 }, { getOwnPropertyNames: I.f })); }, fastKey: function(A, e) { if (!o(A)) return "symbol" == typeof A ? A : ("string" == typeof A ? "S" : "P") + A; if (!a(A, B)) { if (!c(A)) return "F"; if (!e) return "E"; setMetadata(A); } return A[B].objectID; }, getWeakData: function(A, e) { if (!a(A, B)) { if (!c(A)) return !0; if (!e) return !1; setMetadata(A); } return A[B].weakData; }, onFreeze: function(A) { return C && Q && c(A) && !a(A, B) && setMetadata(A), A; } }; r[B] = !0; }, 3500: (A, e, t) => { "use strict"; var i = t(2195), n = t(7400), r = t(9296), o = t(235), a = t(6699), handlePrototype = function(A) { if (A && A.forEach !== o) try { a(A, "forEach", o); } catch (e) { A.forEach = o; } }; for (var s in n) n[s] && handlePrototype(i[s] && i[s].prototype); handlePrototype(r); }, 3506: (A, e, t) => { "use strict"; var i = t(3925), n = String, r = TypeError; A.exports = function(A) { if (i(A)) return A; throw new r("Can't set " + n(A) + " as a prototype"); }; }, 3514: (A, e, t) => { "use strict"; t(6469)("flat"); }, 3517: (A, e, t) => { "use strict"; var i = t(9504), n = t(9039), r = t(4901), o = t(6955), a = t(7751), s = t(3706), noop = function() {}, g = a("Reflect", "construct"), I = /^\s*(?:class|function)\b/, c = i(I.exec), u = !I.test(noop), isConstructorModern = function(A) { if (!r(A)) return !1; try { return g(noop, [], A), !0; } catch (A) { return !1; } }, isConstructorLegacy = function(A) { if (!r(A)) return !1; switch (o(A)) { case "AsyncFunction": case "GeneratorFunction": case "AsyncGeneratorFunction": return !1; } try { return u || !!c(I, s(A)); } catch (A) { return !0; } }; isConstructorLegacy.sham = !0, A.exports = !g || n((function() { var A; return isConstructorModern(isConstructorModern.call) || !isConstructorModern(Object) || !isConstructorModern((function() { A = !0; })) || A; })) ? isConstructorLegacy : isConstructorModern; }, 3602: A => { "use strict"; var e = 4503599627370496; A.exports = function(A) { return A + e - e; }; }, 3607: (A, e, t) => { "use strict"; var i = t(2839).match(/AppleWebKit\/(\d+)\./); A.exports = !!i && +i[1]; }, 3610: function(A, e, t) { "use strict"; var i = e; function merge(A, e, t) { for (var i = Object.keys(e), n = 0; n < i.length; ++n) void 0 !== A[i[n]] && t || (A[i[n]] = e[i[n]]); return A; } function newError(A) { function CustomError(A, e) { if (!(this instanceof CustomError)) return new CustomError(A, e); Object.defineProperty(this, "message", { get: function() { return A; } }), Error.captureStackTrace ? Error.captureStackTrace(this, CustomError) : Object.defineProperty(this, "stack", { value: (new Error).stack || "" }), e && merge(this, e); } return CustomError.prototype = Object.create(Error.prototype, { constructor: { value: CustomError, writable: !0, enumerable: !1, configurable: !0 }, name: { get: function() { return A; }, set: void 0, enumerable: !1, configurable: !0 }, toString: { value: function() { return this.name + ": " + this.message; }, writable: !0, enumerable: !1, configurable: !0 } }), CustomError; } i.asPromise = t(8045), i.base64 = t(8839), i.EventEmitter = t(4358), i.float = t(9410), i.inquire = t(4153), i.utf8 = t(1447), i.pool = t(9390), i.LongBits = t(2239), i.isNode = Boolean(void 0 !== t.g && t.g && t.g.process && t.g.process.versions && t.g.process.versions.node), i.global = i.isNode && t.g || "undefined" != typeof window && window || "undefined" != typeof self && self || this, i.emptyArray = Object.freeze ? Object.freeze([]) : [], i.emptyObject = Object.freeze ? Object.freeze({}) : {}, i.isInteger = Number.isInteger || function(A) { return "number" == typeof A && isFinite(A) && Math.floor(A) === A; }, i.isString = function(A) { return "string" == typeof A || A instanceof String; }, i.isObject = function(A) { return A && "object" == typeof A; }, i.isset = i.isSet = function(A, e) { var t = A[e]; return !(null == t || !A.hasOwnProperty(e)) && ("object" != typeof t || (Array.isArray(t) ? t.length : Object.keys(t).length) > 0); }, i.Buffer = function() { try { var A = i.inquire("buffer").Buffer; return A.prototype.utf8Write ? A : null; } catch (A) { return null; } }(), i._Buffer_from = null, i._Buffer_allocUnsafe = null, i.newBuffer = function(A) { return "number" == typeof A ? i.Buffer ? i._Buffer_allocUnsafe(A) : new i.Array(A) : i.Buffer ? i._Buffer_from(A) : "undefined" == typeof Uint8Array ? A : new Uint8Array(A); }, i.Array = "undefined" != typeof Uint8Array ? Uint8Array : Array, i.Long = i.global.dcodeIO && i.global.dcodeIO.Long || i.global.Long || i.inquire("long"), i.key2Re = /^true|false|0|1$/, i.key32Re = /^-?(?:0|[1-9][0-9]*)$/, i.key64Re = /^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/, i.longToHash = function(A) { return A ? i.LongBits.from(A).toHash() : i.LongBits.zeroHash; }, i.longFromHash = function(A, e) { var t = i.LongBits.fromHash(A); return i.Long ? i.Long.fromBits(t.lo, t.hi, e) : t.toNumber(Boolean(e)); }, i.merge = merge, i.lcFirst = function(A) { return A.charAt(0).toLowerCase() + A.substring(1); }, i.newError = newError, i.ProtocolError = newError("ProtocolError"), i.oneOfGetter = function(A) { for (var e = {}, t = 0; t < A.length; ++t) e[A[t]] = 1; return function() { for (var A = Object.keys(this), t = A.length - 1; t > -1; --t) if (1 === e[A[t]] && void 0 !== this[A[t]] && null !== this[A[t]]) return A[t]; }; }, i.oneOfSetter = function(A) { return function(e) { for (var t = 0; t < A.length; ++t) A[t] !== e && delete this[A[t]]; }; }, i.toJSONOptions = { longs: String, enums: String, bytes: String, json: !0 }, i._configure = function() { var A = i.Buffer; A ? (i._Buffer_from = A.from !== Uint8Array.from && A.from || function(e, t) { return new A(e, t); }, i._Buffer_allocUnsafe = A.allocUnsafe || function(e) { return new A(e); }) : i._Buffer_from = i._Buffer_allocUnsafe = null; }; }, 3635: (A, e, t) => { "use strict"; var i = t(9039), n = t(2195).RegExp; A.exports = i((function() { var A = n(".", "s"); return !(A.dotAll && A.test("\n") && "s" === A.flags); })); }, 3684: (A, e, t) => { "use strict"; var i = t(4644).exportTypedArrayMethod, n = t(9039), r = t(2195), o = t(9504), a = r.Uint8Array, s = a && a.prototype || {}, g = [].toString, I = o([].join); n((function() { g.call({}); })) && (g = function() { return I(this); }); var c = s.toString !== g; i("toString", g, c); }, 3706: (A, e, t) => { "use strict"; var i = t(9504), n = t(4901), r = t(7629), o = i(Function.toString); n(r.inspectSource) || (r.inspectSource = function(A) { return o(A); }), A.exports = r.inspectSource; }, 3709: (A, e, t) => { "use strict"; var i = t(2839).match(/firefox\/(\d+)/i); A.exports = !!i && +i[1]; }, 3717: (A, e) => { "use strict"; e.f = Object.getOwnPropertySymbols; }, 3724: (A, e, t) => { "use strict"; var i = t(9039); A.exports = !i((function() { return 7 !== Object.defineProperty({}, 1, { get: function() { return 7; } })[1]; })); }, 3738: A => { function _typeof(e) { return A.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(A) { return typeof A; } : function(A) { return A && "function" == typeof Symbol && A.constructor === Symbol && A !== Symbol.prototype ? "symbol" : typeof A; }, A.exports.__esModule = !0, A.exports.default = A.exports, _typeof(e); } A.exports = _typeof, A.exports.__esModule = !0, A.exports.default = A.exports; }, 3763: (A, e, t) => { "use strict"; var i = t(2839); A.exports = /MSIE|Trident/.test(i); }, 3771: (A, e, t) => { "use strict"; var i = t(6518), n = t(4373), r = t(6469); i({ target: "Array", proto: !0 }, { fill: n }), r("fill"); }, 3792: (A, e, t) => { "use strict"; var i = t(5397), n = t(6469), r = t(6269), o = t(1181), a = t(4913).f, s = t(1088), g = t(2529), I = t(6395), c = t(3724), u = "Array Iterator", C = o.set, Q = o.getterFor(u); A.exports = s(Array, "Array", (function(A, e) { C(this, { type: u, target: i(A), index: 0, kind: e }); }), (function() { var A = Q(this), e = A.target, t = A.index++; if (!e || t >= e.length) return A.target = null, g(void 0, !0); switch (A.kind) { case "keys": return g(t, !1); case "values": return g(e[t], !1); } return g([ t, e[t] ], !1); }), "values"); var B = r.Arguments = r.Array; if (n("keys"), n("values"), n("entries"), !I && c && "values" !== B.name) try { a(B, "name", { value: "values" }); } catch (A) {} }, 3802: (A, e, t) => { "use strict"; var i = t(9504), n = t(7750), r = t(655), o = t(7452), a = i("".replace), s = RegExp("^[" + o + "]+"), g = RegExp("(^|[^" + o + "])[" + o + "]+$"), createMethod = function(A) { return function(e) { var t = r(n(e)); return 1 & A && (t = a(t, s, "")), 2 & A && (t = a(t, g, "$1")), t; }; }; A.exports = { start: createMethod(1), end: createMethod(2), trim: createMethod(3) }; }, 3851: (A, e, t) => { "use strict"; var i = t(6518), n = t(9039), r = t(5397), o = t(7347).f, a = t(3724); i({ target: "Object", stat: !0, forced: !a || n((function() { o(1); })), sham: !a }, { getOwnPropertyDescriptor: function(A, e) { return o(r(A), e); } }); }, 3904: (A, e, t) => { "use strict"; var i = t(2195), n = t(9039), r = t(9504), o = t(655), a = t(3802).trim, s = t(7452), g = r("".charAt), I = i.parseFloat, c = i.Symbol, u = c && c.iterator, C = 1 / I(s + "-0") != -1 / 0 || u && !n((function() { I(Object(u)); })); A.exports = C ? function(A) { var e = a(o(A)), t = I(e); return 0 === t && "-" === g(e, 0) ? -0 : t; } : I; }, 3925: (A, e, t) => { "use strict"; var i = t(34); A.exports = function(A) { return i(A) || null === A; }; }, 3994: (A, e, t) => { "use strict"; var i = t(7657).IteratorPrototype, n = t(2360), r = t(6980), o = t(687), a = t(6269), returnThis = function() { return this; }; A.exports = function(A, e, t, s) { var g = e + " Iterator"; return A.prototype = n(i, { next: r(+!s, t) }), o(A, g, !1, !0), a[g] = returnThis, A; }; }, 4055: (A, e, t) => { "use strict"; var i = t(2195), n = t(34), r = i.document, o = n(r) && n(r.createElement); A.exports = function(A) { return o ? r.createElement(A) : {}; }; }, 4117: A => { "use strict"; A.exports = function(A) { return null == A; }; }, 4124: (A, e, t) => { "use strict"; var i = t(9039), n = t(34), r = t(4576), o = t(5652), a = Object.isExtensible, s = i((function() { a(1); })); A.exports = s || o ? function(A) { return !!n(A) && (!o || "ArrayBuffer" !== r(A)) && (!a || a(A)); } : a; }, 4153: module => { "use strict"; function inquire(moduleName) { try { var mod = eval("quire".replace(/^/, "re"))(moduleName); if (mod && (mod.length || Object.keys(mod).length)) return mod; } catch (A) {} return null; } module.exports = inquire; }, 4209: (A, e, t) => { "use strict"; var i = t(8227), n = t(6269), r = i("iterator"), o = Array.prototype; A.exports = function(A) { return void 0 !== A && (n.Array === A || o[r] === A); }; }, 4213: (A, e, t) => { "use strict"; var i = t(3724), n = t(9504), r = t(9565), o = t(9039), a = t(1072), s = t(3717), g = t(8773), I = t(8981), c = t(7055), u = Object.assign, C = Object.defineProperty, Q = n([].concat); A.exports = !u || o((function() { if (i && 1 !== u({ b: 1 }, u(C({}, "a", { enumerable: !0, get: function() { C(this, "b", { value: 3, enumerable: !1 }); } }), { b: 2 })).b) return !0; var A = {}, e = {}, t = Symbol("assign detection"), n = "abcdefghijklmnopqrst"; return A[t] = 7, n.split("").forEach((function(A) { e[A] = A; })), 7 !== u({}, A)[t] || a(u({}, e)).join("") !== n; })) ? function(A, e) { for (var t = I(A), n = arguments.length, o = 1, u = s.f, C = g.f; n > o; ) for (var B, E = c(arguments[o++]), l = u ? Q(a(E), u(E)) : a(E), h = l.length, f = 0; h > f; ) B = l[f++], i && !r(C, E, B) || (t[B] = E[B]); return t; } : u; }, 4215: (A, e, t) => { "use strict"; var i = t(2195), n = t(2839), r = t(4576), userAgentStartsWith = function(A) { return n.slice(0, A.length) === A; }; A.exports = userAgentStartsWith("Bun/") ? "BUN" : userAgentStartsWith("Cloudflare-Workers") ? "CLOUDFLARE" : userAgentStartsWith("Deno/") ? "DENO" : userAgentStartsWith("Node.js/") ? "NODE" : i.Bun && "string" == typeof Bun.version ? "BUN" : i.Deno && "object" == typeof Deno.version ? "DENO" : "process" === r(i.process) ? "NODE" : i.window && i.document ? "BROWSER" : "REST"; }, 4265: (A, e, t) => { "use strict"; var i = t(2839); A.exports = /ipad|iphone|ipod/i.test(i) && "undefined" != typeof Pebble; }, 4270: (A, e, t) => { "use strict"; var i = t(9565), n = t(4901), r = t(34), o = TypeError; A.exports = function(A, e) { var t, a; if ("string" === e && n(t = A.toString) && !r(a = i(t, A))) return a; if (n(t = A.valueOf) && !r(a = i(t, A))) return a; if ("string" !== e && n(t = A.toString) && !r(a = i(t, A))) return a; throw new o("Can't convert object to primitive value"); }; }, 4358: A => { "use strict"; function EventEmitter() { this._listeners = {}; } A.exports = EventEmitter, EventEmitter.prototype.on = function(A, e, t) { return (this._listeners[A] || (this._listeners[A] = [])).push({ fn: e, ctx: t || this }), this; }, EventEmitter.prototype.off = function(A, e) { if (void 0 === A) this._listeners = {}; else if (void 0 === e) this._listeners[A] = []; else for (var t = this._listeners[A], i = 0; i < t.length; ) t[i].fn === e ? t.splice(i, 1) : ++i; return this; }, EventEmitter.prototype.emit = function(A) { var e = this._listeners[A]; if (e) { for (var t = [], i = 1; i < arguments.length; ) t.push(arguments[i++]); for (i = 0; i < e.length; ) e[i].fn.apply(e[i++].ctx, t); } return this; }; }, 4373: (A, e, t) => { "use strict"; var i = t(8981), n = t(5610), r = t(6198); A.exports = function(A) { for (var e = i(this), t = r(e), o = arguments.length, a = n(o > 1 ? arguments[1] : void 0, t), s = o > 2 ? arguments[2] : void 0, g = void 0 === s ? t : n(s, t); g > a; ) e[a++] = A; return e; }; }, 4376: (A, e, t) => { "use strict"; var i = t(4576); A.exports = Array.isArray || function(A) { return "Array" === i(A); }; }, 4394: (A, e, t) => { "use strict"; var i = e; function configure() { i.util._configure(), i.Writer._configure(i.BufferWriter), i.Reader._configure(i.BufferReader); } i.build = "minimal", i.Writer = t(3449), i.BufferWriter = t(818), i.Reader = t(6237), i.BufferReader = t(3158), i.util = t(3610), i.rpc = t(5047), i.roots = t(4529), i.configure = configure, configure(); }, 4423: (A, e, t) => { "use strict"; var i = t(6518), n = t(9617).includes, r = t(9039), o = t(6469); i({ target: "Array", proto: !0, forced: r((function() { return !Array(1).includes(); })) }, { includes: function(A) { return n(this, A, arguments.length > 1 ? arguments[1] : void 0); } }), o("includes"); }, 4428: (A, e, t) => { "use strict"; var i = t(8227)("iterator"), n = !1; try { var r = 0, o = { next: function() { return { done: !!r++ }; }, "return": function() { n = !0; } }; o[i] = function() { return this; }, Array.from(o, (function() { throw 2; })); } catch (A) {} A.exports = function(A, e) { try { if (!e && !n) return !1; } catch (A) { return !1; } var t = !1; try { var r = {}; r[i] = function() { return { next: function() { return { done: t = !0 }; } }; }, A(r); } catch (A) {} return t; }; }, 4488: (A, e, t) => { "use strict"; var i = t(7680), n = Math.floor, sort = function(A, e) { var t = A.length; if (t < 8) for (var r, o, a = 1; a < t; ) { for (o = a, r = A[a]; o && e(A[o - 1], r) > 0; ) A[o] = A[--o]; o !== a++ && (A[o] = r); } else for (var s = n(t / 2), g = sort(i(A, 0, s), e), I = sort(i(A, s), e), c = g.length, u = I.length, C = 0, Q = 0; C < c || Q < u; ) A[C + Q] = C < c && Q < u ? e(g[C], I[Q]) <= 0 ? g[C++] : I[Q++] : C < c ? g[C++] : I[Q++]; return A; }; A.exports = sort; }, 4495: (A, e, t) => { "use strict"; var i = t(9519), n = t(9039), r = t(2195).String; A.exports = !!Object.getOwnPropertySymbols && !n((function() { var A = Symbol("symbol detection"); return !r(A) || !(Object(A) instanceof Symbol) || !Symbol.sham && i && i < 41; })); }, 4496: (A, e, t) => { "use strict"; var i = t(4644), n = t(9617).includes, r = i.aTypedArray; (0, i.exportTypedArrayMethod)("includes", (function(A) { return n(r(this), A, arguments.length > 1 ? arguments[1] : void 0); })); }, 4527: (A, e, t) => { "use strict"; var i = t(3724), n = t(4376), r = TypeError, o = Object.getOwnPropertyDescriptor, a = i && !function() { if (void 0 !== this) return !0; try { Object.defineProperty([], "length", { writable: !1 }).length = 1; } catch (A) { return A instanceof TypeError; } }(); A.exports = a ? function(A, e) { if (n(A) && !o(A, "length").writable) throw new r("Cannot set read only .length"); return A.length = e; } : function(A, e) { return A.length = e; }; }, 4529: A => { "use strict"; A.exports = {}; }, 4554: (A, e, t) => { "use strict"; var i = t(6518), n = t(8981), r = t(5610), o = t(1291), a = t(6198), s = t(4527), g = t(6837), I = t(1469), c = t(4659), u = t(4606), C = t(597)("splice"), Q = Math.max, B = Math.min; i({ target: "Array", proto: !0, forced: !C }, { splice: function(A, e) { var t, i, C, E, l, h, f = n(this), d = a(f), y = r(A, d), w = arguments.length; for (0 === w ? t = i = 0 : 1 === w ? (t = 0, i = d - y) : (t = w - 2, i = B(Q(o(e), 0), d - y)), g(d + t - i), C = I(f, i), E = 0; E < i; E++) (l = y + E) in f && c(C, E, f[l]); if (C.length = i, t < i) { for (E = y; E < d - i; E++) h = E + t, (l = E + i) in f ? f[h] = f[l] : u(f, h); for (E = d; E > d - i + t; E--) u(f, E - 1); } else if (t > i) for (E = d - i; E > y; E--) h = E + t - 1, (l = E + i - 1) in f ? f[h] = f[l] : u(f, h); for (E = 0; E < t; E++) f[E + y] = arguments[E + 2]; return s(f, d - i + t), C; } }); }, 4576: (A, e, t) => { "use strict"; var i = t(9504), n = i({}.toString), r = i("".slice); A.exports = function(A) { return r(n(A), 8, -1); }; }, 4598: (A, e, t) => { "use strict"; var i = t(9039); A.exports = function(A, e) { var t = [][A]; return !!t && i((function() { t.call(null, e || function() { return 1; }, 1); })); }; }, 4606: (A, e, t) => { "use strict"; var i = t(6823), n = TypeError; A.exports = function(A, e) { if (!delete A[e]) throw new n("Cannot delete property " + i(e) + " of " + i(A)); }; }, 4633: (A, e, t) => { var i = t(3738).default; function _regeneratorRuntime() { "use strict"; A.exports = _regeneratorRuntime = function() { return t; }, A.exports.__esModule = !0, A.exports.default = A.exports; var e, t = {}, n = Object.prototype, r = n.hasOwnProperty, o = Object.defineProperty || function(A, e, t) { A[e] = t.value; }, a = "function" == typeof Symbol ? Symbol : {}, s = a.iterator || "@@iterator", g = a.asyncIterator || "@@asyncIterator", I = a.toStringTag || "@@toStringTag"; function define(A, e, t) { return Object.defineProperty(A, e, { value: t, enumerable: !0, configurable: !0, writable: !0 }), A[e]; } try { define({}, ""); } catch (e) { define = function(A, e, t) { return A[e] = t; }; } function wrap(A, e, t, i) { var n = e && e.prototype instanceof Generator ? e : Generator, r = Object.create(n.prototype), a = new Context(i || []); return o(r, "_invoke", { value: makeInvokeMethod(A, t, a) }), r; } function tryCatch(A, e, t) { try { return { type: "normal", arg: A.call(e, t) }; } catch (A) { return { type: "throw", arg: A }; } } t.wrap = wrap; var c = "suspendedStart", u = "suspendedYield", C = "executing", Q = "completed", B = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var E = {}; define(E, s, (function() { return this; })); var l = Object.getPrototypeOf, h = l && l(l(values([]))); h && h !== n && r.call(h, s) && (E = h); var f = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(E); function defineIteratorMethods(A) { [ "next", "throw", "return" ].forEach((function(e) { define(A, e, (function(A) { return this._invoke(e, A); })); })); } function AsyncIterator(A, e) { function invoke(t, n, o, a) { var s = tryCatch(A[t], A, n); if ("throw" !== s.type) { var g = s.arg, I = g.value; return I && "object" == i(I) && r.call(I, "__await") ? e.resolve(I.__await).then((function(A) { invoke("next", A, o, a); }), (function(A) { invoke("throw", A, o, a); })) : e.resolve(I).then((function(A) { g.value = A, o(g); }), (function(A) { return invoke("throw", A, o, a); })); } a(s.arg); } var t; o(this, "_invoke", { value: function(A, i) { function callInvokeWithMethodAndArg() { return new e((function(e, t) { invoke(A, i, e, t); })); } return t = t ? t.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(A, t, i) { var n = c; return function(r, o) { if (n === C) throw Error("Generator is already running"); if (n === Q) { if ("throw" === r) throw o; return { value: e, done: !0 }; } for (i.method = r, i.arg = o; ;) { var a = i.delegate; if (a) { var s = maybeInvokeDelegate(a, i); if (s) { if (s === B) continue; return s; } } if ("next" === i.method) i.sent = i._sent = i.arg; else if ("throw" === i.method) { if (n === c) throw n = Q, i.arg; i.dispatchException(i.arg); } else "return" === i.method && i.abrupt("return", i.arg); n = C; var g = tryCatch(A, t, i); if ("normal" === g.type) { if (n = i.done ? Q : u, g.arg === B) continue; return { value: g.arg, done: i.done }; } "throw" === g.type && (n = Q, i.method = "throw", i.arg = g.arg); } }; } function maybeInvokeDelegate(A, t) { var i = t.method, n = A.iterator[i]; if (n === e) return t.delegate = null, "throw" === i && A.iterator.return && (t.method = "return", t.arg = e, maybeInvokeDelegate(A, t), "throw" === t.method) || "return" !== i && (t.method = "throw", t.arg = new TypeError("The iterator does not provide a '" + i + "' method")), B; var r = tryCatch(n, A.iterator, t.arg); if ("throw" === r.type) return t.method = "throw", t.arg = r.arg, t.delegate = null, B; var o = r.arg; return o ? o.done ? (t[A.resultName] = o.value, t.next = A.nextLoc, "return" !== t.method && (t.method = "next", t.arg = e), t.delegate = null, B) : o : (t.method = "throw", t.arg = new TypeError("iterator result is not an object"), t.delegate = null, B); } function pushTryEntry(A) { var e = { tryLoc: A[0] }; 1 in A && (e.catchLoc = A[1]), 2 in A && (e.finallyLoc = A[2], e.afterLoc = A[3]), this.tryEntries.push(e); } function resetTryEntry(A) { var e = A.completion || {}; e.type = "normal", delete e.arg, A.completion = e; } function Context(A) { this.tryEntries = [ { tryLoc: "root" } ], A.forEach(pushTryEntry, this), this.reset(!0); } function values(A) { if (A || "" === A) { var t = A[s]; if (t) return t.call(A); if ("function" == typeof A.next) return A; if (!isNaN(A.length)) { var n = -1, o = function next() { for (;++n < A.length; ) if (r.call(A, n)) return next.value = A[n], next.done = !1, next; return next.value = e, next.done = !0, next; }; return o.next = o; } } throw new TypeError(i(A) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(f, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, I, "GeneratorFunction"), t.isGeneratorFunction = function(A) { var e = "function" == typeof A && A.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, t.mark = function(A) { return Object.setPrototypeOf ? Object.setPrototypeOf(A, GeneratorFunctionPrototype) : (A.__proto__ = GeneratorFunctionPrototype, define(A, I, "GeneratorFunction")), A.prototype = Object.create(f), A; }, t.awrap = function(A) { return { __await: A }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, g, (function() { return this; })), t.AsyncIterator = AsyncIterator, t.async = function(A, e, i, n, r) { void 0 === r && (r = Promise); var o = new AsyncIterator(wrap(A, e, i, n), r); return t.isGeneratorFunction(e) ? o : o.next().then((function(A) { return A.done ? A.value : o.next(); })); }, defineIteratorMethods(f), define(f, I, "Generator"), define(f, s, (function() { return this; })), define(f, "toString", (function() { return "[object Generator]"; })), t.keys = function(A) { var e = Object(A), t = []; for (var i in e) t.push(i); return t.reverse(), function next() { for (;t.length; ) { var A = t.pop(); if (A in e) return next.value = A, next.done = !1, next; } return next.done = !0, next; }; }, t.values = values, Context.prototype = { constructor: Context, reset: function(A) { if (this.prev = 0, this.next = 0, this.sent = this._sent = e, this.done = !1, this.delegate = null, this.method = "next", this.arg = e, this.tryEntries.forEach(resetTryEntry), !A) for (var t in this) "t" === t.charAt(0) && r.call(this, t) && !isNaN(+t.slice(1)) && (this[t] = e); }, stop: function() { this.done = !0; var A = this.tryEntries[0].completion; if ("throw" === A.type) throw A.arg; return this.rval; }, dispatchException: function(A) { if (this.done) throw A; var t = this; function handle(i, n) { return o.type = "throw", o.arg = A, t.next = i, n && (t.method = "next", t.arg = e), !!n; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var n = this.tryEntries[i], o = n.completion; if ("root" === n.tryLoc) return handle("end"); if (n.tryLoc <= this.prev) { var a = r.call(n, "catchLoc"), s = r.call(n, "finallyLoc"); if (a && s) { if (this.prev < n.catchLoc) return handle(n.catchLoc, !0); if (this.prev < n.finallyLoc) return handle(n.finallyLoc); } else if (a) { if (this.prev < n.catchLoc) return handle(n.catchLoc, !0); } else { if (!s) throw Error("try statement without catch or finally"); if (this.prev < n.finallyLoc) return handle(n.finallyLoc); } } } }, abrupt: function(A, e) { for (var t = this.tryEntries.length - 1; t >= 0; --t) { var i = this.tryEntries[t]; if (i.tryLoc <= this.prev && r.call(i, "finallyLoc") && this.prev < i.finallyLoc) { var n = i; break; } } n && ("break" === A || "continue" === A) && n.tryLoc <= e && e <= n.finallyLoc && (n = null); var o = n ? n.completion : {}; return o.type = A, o.arg = e, n ? (this.method = "next", this.next = n.finallyLoc, B) : this.complete(o); }, complete: function(A, e) { if ("throw" === A.type) throw A.arg; return "break" === A.type || "continue" === A.type ? this.next = A.arg : "return" === A.type ? (this.rval = this.arg = A.arg, this.method = "return", this.next = "end") : "normal" === A.type && e && (this.next = e), B; }, finish: function(A) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var t = this.tryEntries[e]; if (t.finallyLoc === A) return this.complete(t.completion, t.afterLoc), resetTryEntry(t), B; } }, "catch": function(A) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var t = this.tryEntries[e]; if (t.tryLoc === A) { var i = t.completion; if ("throw" === i.type) { var n = i.arg; resetTryEntry(t); } return n; } } throw Error("illegal catch attempt"); }, delegateYield: function(A, t, i) { return this.delegate = { iterator: values(A), resultName: t, nextLoc: i }, "next" === this.method && (this.arg = e), B; } }, t; } A.exports = _regeneratorRuntime, A.exports.__esModule = !0, A.exports.default = A.exports; }, 4644: (A, e, t) => { "use strict"; var i, n, r, o = t(7811), a = t(3724), s = t(2195), g = t(4901), I = t(34), c = t(9297), u = t(6955), C = t(6823), Q = t(6699), B = t(6840), E = t(2106), l = t(1625), h = t(2787), f = t(2967), d = t(8227), y = t(3392), w = t(1181), v = w.enforce, p = w.get, D = s.Int8Array, b = D && D.prototype, k = s.Uint8ClampedArray, S = k && k.prototype, m = D && h(D), N = b && h(b), G = Object.prototype, M = s.TypeError, J = d("toStringTag"), R = y("TYPED_ARRAY_TAG"), U = "TypedArrayConstructor", L = o && !!f && "Opera" !== u(s.opera), Y = !1, K = { Int8Array: 1, Uint8Array: 1, Uint8ClampedArray: 1, Int16Array: 2, Uint16Array: 2, Int32Array: 4, Uint32Array: 4, Float32Array: 4, Float64Array: 8 }, H = { BigInt64Array: 8, BigUint64Array: 8 }, getTypedArrayConstructor = function(A) { var e = h(A); if (I(e)) { var t = p(e); return t && c(t, U) ? t[U] : getTypedArrayConstructor(e); } }, isTypedArray = function(A) { if (!I(A)) return !1; var e = u(A); return c(K, e) || c(H, e); }; for (i in K) (r = (n = s[i]) && n.prototype) ? v(r)[U] = n : L = !1; for (i in H) (r = (n = s[i]) && n.prototype) && (v(r)[U] = n); if ((!L || !g(m) || m === Function.prototype) && (m = function() { throw new M("Incorrect invocation"); }, L)) for (i in K) s[i] && f(s[i], m); if ((!L || !N || N === G) && (N = m.prototype, L)) for (i in K) s[i] && f(s[i].prototype, N); if (L && h(S) !== N && f(S, N), a && !c(N, J)) for (i in Y = !0, E(N, J, { configurable: !0, get: function() { return I(this) ? this[R] : void 0; } }), K) s[i] && Q(s[i], R, i); A.exports = { NATIVE_ARRAY_BUFFER_VIEWS: L, TYPED_ARRAY_TAG: Y && R, aTypedArray: function(A) { if (isTypedArray(A)) return A; throw new M("Target is not a typed array"); }, aTypedArrayConstructor: function(A) { if (g(A) && (!f || l(m, A))) return A; throw new M(C(A) + " is not a typed array constructor"); }, exportTypedArrayMethod: function(A, e, t, i) { if (a) { if (t) for (var n in K) { var r = s[n]; if (r && c(r.prototype, A)) try { delete r.prototype[A]; } catch (t) { try { r.prototype[A] = e; } catch (A) {} } } N[A] && !t || B(N, A, t ? e : L && b[A] || e, i); } }, exportTypedArrayStaticMethod: function(A, e, t) { var i, n; if (a) { if (f) { if (t) for (i in K) if ((n = s[i]) && c(n, A)) try { delete n[A]; } catch (A) {} if (m[A] && !t) return; try { return B(m, A, t ? e : L && m[A] || e); } catch (A) {} } for (i in K) !(n = s[i]) || n[A] && !t || B(n, A, e); } }, getTypedArrayConstructor, isView: function(A) { if (!I(A)) return !1; var e = u(A); return "DataView" === e || c(K, e) || c(H, e); }, isTypedArray, TypedArray: m, TypedArrayPrototype: N }; }, 4659: (A, e, t) => { "use strict"; var i = t(3724), n = t(4913), r = t(6980); A.exports = function(A, e, t) { i ? n.f(A, e, r(0, t)) : A[e] = t; }; }, 4743: (A, e, t) => { "use strict"; var i = t(6518), n = t(2195), r = t(6346), o = t(7633), a = "ArrayBuffer", s = r[a]; i({ global: !0, constructor: !0, forced: n[a] !== s }, { ArrayBuffer: s }), o(a); }, 4756: (A, e, t) => { var i = t(4633)(); A.exports = i; try { regeneratorRuntime = i; } catch (A) { "object" == typeof globalThis ? globalThis.regeneratorRuntime = i : Function("r", "regeneratorRuntime = r")(i); } }, 4782: (A, e, t) => { "use strict"; var i = t(6518), n = t(4376), r = t(3517), o = t(34), a = t(5610), s = t(6198), g = t(5397), I = t(4659), c = t(8227), u = t(597), C = t(7680), Q = u("slice"), B = c("species"), E = Array, l = Math.max; i({ target: "Array", proto: !0, forced: !Q }, { slice: function(A, e) { var t, i, c, u = g(this), Q = s(u), h = a(A, Q), f = a(void 0 === e ? Q : e, Q); if (n(u) && (t = u.constructor, (r(t) && (t === E || n(t.prototype)) || o(t) && null === (t = t[B])) && (t = void 0), t === E || void 0 === t)) return C(u, h, f); for (i = new (void 0 === t ? E : t)(l(f - h, 0)), c = 0; h < f; h++, c++) h in u && I(i, c, u[h]); return i.length = c, i; } }); }, 4863: (A, e, t) => { "use strict"; A.exports = parse, parse.filename = null, parse.defaults = { keepCase: !1 }; var i = t(527), n = t(5330), r = t(7882), o = t(1344), a = t(8252), s = t(1457), g = t(5643), I = t(9687), c = t(8811), u = t(361), C = t(3262), Q = /^[1-9][0-9]*$/, B = /^-?[1-9][0-9]*$/, E = /^0[x][0-9a-fA-F]+$/, l = /^-?0[x][0-9a-fA-F]+$/, h = /^0[0-7]+$/, f = /^-?0[0-7]+$/, d = /^(?![eE])[0-9]*(?:\.[0-9]*)?(?:[eE][+-]?[0-9]+)?$/, y = /^[a-zA-Z_][a-zA-Z_0-9]*$/, w = /^(?:\.?[a-zA-Z_][a-zA-Z_0-9]*)(?:\.[a-zA-Z_][a-zA-Z_0-9]*)*$/, v = /^(?:\.[a-zA-Z_][a-zA-Z_0-9]*)+$/; function parse(A, e, t) { e instanceof n || (t = e, e = new n), t || (t = parse.defaults); var p, D, b, k, S, m = t.preferTrailingComment || !1, N = i(A, t.alternateCommentMode || !1), G = N.next, M = N.push, J = N.peek, R = N.skip, U = N.cmnt, L = !0, Y = !1, K = e, H = t.keepCase ? function(A) { return A; } : C.camelCase; function illegal(A, e, t) { var i = parse.filename; return t || (parse.filename = null), Error("illegal " + (e || "token") + " '" + A + "' (" + (i ? i + ", " : "") + "line " + N.line + ")"); } function readString() { var A, e = []; do { if ('"' !== (A = G()) && "'" !== A) throw illegal(A); e.push(G()), R(A), A = J(); } while ('"' === A || "'" === A); return e.join(""); } function readValue(A) { var e = G(); switch (e) { case "'": case '"': return M(e), readString(); case "true": case "TRUE": return !0; case "false": case "FALSE": return !1; } try { return function(A) { var e = 1; switch ("-" === A.charAt(0) && (e = -1, A = A.substring(1)), A) { case "inf": case "INF": case "Inf": return e * (1 / 0); case "nan": case "NAN": case "Nan": case "NaN": return NaN; case "0": return 0; } if (Q.test(A)) return e * parseInt(A, 10); if (E.test(A)) return e * parseInt(A, 16); if (h.test(A)) return e * parseInt(A, 8); if (d.test(A)) return e * parseFloat(A); throw illegal(A, "number", !0); }(e); } catch (t) { if (A && w.test(e)) return e; throw illegal(e, "value"); } } function readRanges(A, e) { var t, i; do { !e || '"' !== (t = J()) && "'" !== t ? A.push([ i = parseId(G()), R("to", !0) ? parseId(G()) : i ]) : A.push(readString()); } while (R(",", !0)); var n = { options: void 0, setOption: function(A, e) { void 0 === this.options && (this.options = {}), this.options[A] = e; } }; ifBlock(n, (function(A) { if ("option" !== A) throw illegal(A); parseOption(n, A), R(";"); }), (function() { parseInlineOptions(n); })); } function parseId(A, e) { switch (A) { case "max": case "MAX": case "Max": return 536870911; case "0": return 0; } if (!e && "-" === A.charAt(0)) throw illegal(A, "id"); if (B.test(A)) return parseInt(A, 10); if (l.test(A)) return parseInt(A, 16); if (f.test(A)) return parseInt(A, 8); throw illegal(A, "id"); } function parsePackage() { if (void 0 !== p) throw illegal("package"); if (p = G(), !w.test(p)) throw illegal(p, "name"); K = K.define(p), R(";"); } function parseImport() { var A, e = J(); switch (e) { case "weak": A = b || (b = []), G(); break; case "public": G(); default: A = D || (D = []); } e = readString(), R(";"), A.push(e); } function parseSyntax() { if (R("="), k = readString(), !(Y = "proto3" === k) && "proto2" !== k) throw illegal(k, "syntax"); e.setOption("syntax", k), R(";"); } function parseCommon(A, e) { switch (e) { case "option": return parseOption(A, e), R(";"), !0; case "message": return parseType(A, e), !0; case "enum": return parseEnum(A, e), !0; case "service": return function(A, e) { if (!y.test(e = G())) throw illegal(e, "service name"); var t = new I(e); ifBlock(t, (function(A) { if (!parseCommon(t, A)) { if ("rpc" !== A) throw illegal(A); !function(A, e) { var t = U(), i = e; if (!y.test(e = G())) throw illegal(e, "name"); var n, r, o, a, s = e; if (R("("), R("stream", !0) && (r = !0), !w.test(e = G())) throw illegal(e); if (n = e, R(")"), R("returns"), R("("), R("stream", !0) && (a = !0), !w.test(e = G())) throw illegal(e); o = e, R(")"); var g = new c(s, i, n, o, r, a); g.comment = t, ifBlock(g, (function(A) { if ("option" !== A) throw illegal(A); parseOption(g, A), R(";"); })), A.add(g); }(t, A); } })), A.add(t); }(A, e), !0; case "extend": return function(A, e) { if (!w.test(e = G())) throw illegal(e, "reference"); var t = e; ifBlock(null, (function(e) { switch (e) { case "required": case "repeated": parseField(A, e, t); break; case "optional": parseField(A, Y ? "proto3_optional" : "optional", t); break; default: if (!Y || !w.test(e)) throw illegal(e); M(e), parseField(A, "optional", t); } })); }(A, e), !0; } return !1; } function ifBlock(A, e, t) { var i = N.line; if (A && ("string" != typeof A.comment && (A.comment = U()), A.filename = parse.filename), R("{", !0)) { for (var n; "}" !== (n = G()); ) e(n); R(";", !0); } else t && t(), R(";"), A && ("string" != typeof A.comment || m) && (A.comment = U(i) || A.comment); } function parseType(A, e) { if (!y.test(e = G())) throw illegal(e, "type name"); var t = new r(e); ifBlock(t, (function(A) { if (!parseCommon(t, A)) switch (A) { case "map": !function(A) { R("<"); var e = G(); if (void 0 === u.mapKey[e]) throw illegal(e, "type"); R(","); var t = G(); if (!w.test(t)) throw illegal(t, "type"); R(">"); var i = G(); if (!y.test(i)) throw illegal(i, "name"); R("="); var n = new a(H(i), parseId(G()), e, t); ifBlock(n, (function(A) { if ("option" !== A) throw illegal(A); parseOption(n, A), R(";"); }), (function() { parseInlineOptions(n); })), A.add(n); }(t); break; case "required": case "repeated": parseField(t, A); break; case "optional": parseField(t, Y ? "proto3_optional" : "optional"); break; case "oneof": !function(A, e) { if (!y.test(e = G())) throw illegal(e, "name"); var t = new s(H(e)); ifBlock(t, (function(A) { "option" === A ? (parseOption(t, A), R(";")) : (M(A), parseField(t, "optional")); })), A.add(t); }(t, A); break; case "extensions": readRanges(t.extensions || (t.extensions = [])); break; case "reserved": readRanges(t.reserved || (t.reserved = []), !0); break; default: if (!Y || !w.test(A)) throw illegal(A); M(A), parseField(t, "optional"); } })), A.add(t); } function parseField(A, e, t) { var i = G(); if ("group" !== i) { for (;i.endsWith(".") || J().startsWith("."); ) i += G(); if (!w.test(i)) throw illegal(i, "type"); var n = G(); if (!y.test(n)) throw illegal(n, "name"); n = H(n), R("="); var a = new o(n, parseId(G()), i, e, t); if (ifBlock(a, (function(A) { if ("option" !== A) throw illegal(A); parseOption(a, A), R(";"); }), (function() { parseInlineOptions(a); })), "proto3_optional" === e) { var g = new s("_" + n); a.setOption("proto3_optional", !0), g.add(a), A.add(g); } else A.add(a); Y || !a.repeated || void 0 === u.packed[i] && void 0 !== u.basic[i] || a.setOption("packed", !1, !0); } else !function(A, e) { var t = G(); if (!y.test(t)) throw illegal(t, "name"); var i = C.lcFirst(t); t === i && (t = C.ucFirst(t)), R("="); var n = parseId(G()), a = new r(t); a.group = !0; var s = new o(i, n, t, e); s.filename = parse.filename, ifBlock(a, (function(A) { switch (A) { case "option": parseOption(a, A), R(";"); break; case "required": case "repeated": parseField(a, A); break; case "optional": parseField(a, Y ? "proto3_optional" : "optional"); break; case "message": parseType(a, A); break; case "enum": parseEnum(a, A); break; default: throw illegal(A); } })), A.add(a).add(s); }(A, e); } function parseEnum(A, e) { if (!y.test(e = G())) throw illegal(e, "name"); var t = new g(e); ifBlock(t, (function(A) { switch (A) { case "option": parseOption(t, A), R(";"); break; case "reserved": readRanges(t.reserved || (t.reserved = []), !0); break; default: !function(A, e) { if (!y.test(e)) throw illegal(e, "name"); R("="); var t = parseId(G(), !0), i = { options: void 0, setOption: function(A, e) { void 0 === this.options && (this.options = {}), this.options[A] = e; } }; ifBlock(i, (function(A) { if ("option" !== A) throw illegal(A); parseOption(i, A), R(";"); }), (function() { parseInlineOptions(i); })), A.add(e, t, i.comment, i.options); }(t, A); } })), A.add(t); } function parseOption(A, e) { var t = R("(", !0); if (!w.test(e = G())) throw illegal(e, "name"); var i, n = e, r = n; t && (R(")"), r = n = "(" + n + ")", e = J(), v.test(e) && (i = e.slice(1), n += e, G())), R("="), function(A, e, t, i) { A.setParsedOption && A.setParsedOption(e, t, i); }(A, r, parseOptionValue(A, n), i); } function parseOptionValue(A, e) { if (R("{", !0)) { for (var t = {}; !R("}", !0); ) { if (!y.test(S = G())) throw illegal(S, "name"); if (null === S) throw illegal(S, "end of input"); var i, n = S; if (R(":", !0), "{" === J()) i = parseOptionValue(A, e + "." + S); else if ("[" === J()) { var r; if (i = [], R("[", !0)) { do { r = readValue(!0), i.push(r); } while (R(",", !0)); R("]"), void 0 !== r && setOption(A, e + "." + S, r); } } else i = readValue(!0), setOption(A, e + "." + S, i); var o = t[n]; o && (i = [].concat(o).concat(i)), t[n] = i, R(",", !0), R(";", !0); } return t; } var a = readValue(!0); return setOption(A, e, a), a; } function setOption(A, e, t) { A.setOption && A.setOption(e, t); } function parseInlineOptions(A) { if (R("[", !0)) { do { parseOption(A, "option"); } while (R(",", !0)); R("]"); } return A; } for (;null !== (S = G()); ) switch (S) { case "package": if (!L) throw illegal(S); parsePackage(); break; case "import": if (!L) throw illegal(S); parseImport(); break; case "syntax": if (!L) throw illegal(S); parseSyntax(); break; case "option": parseOption(K, S), R(";"); break; default: if (parseCommon(K, S)) { L = !1; continue; } throw illegal(S); } return parse.filename = null, { "package": p, "imports": D, weakImports: b, syntax: k, root: e }; } }, 4901: A => { "use strict"; var e = "object" == typeof document && document.all; A.exports = void 0 === e && void 0 !== e ? function(A) { return "function" == typeof A || A === e; } : function(A) { return "function" == typeof A; }; }, 4913: (A, e, t) => { "use strict"; var i = t(3724), n = t(5917), r = t(8686), o = t(8551), a = t(6969), s = TypeError, g = Object.defineProperty, I = Object.getOwnPropertyDescriptor, c = "enumerable", u = "configurable", C = "writable"; e.f = i ? r ? function(A, e, t) { if (o(A), e = a(e), o(t), "function" == typeof A && "prototype" === e && "value" in t && C in t && !t[C]) { var i = I(A, e); i && i[C] && (A[e] = t.value, t = { configurable: u in t ? t[u] : i[u], enumerable: c in t ? t[c] : i[c], writable: !1 }); } return g(A, e, t); } : g : function(A, e, t) { if (o(A), e = a(e), o(t), n) try { return g(A, e, t); } catch (A) {} if ("get" in t || "set" in t) throw new s("Accessors not supported"); return "value" in t && (A[e] = t.value), A; }; }, 5031: (A, e, t) => { "use strict"; var i = t(7751), n = t(9504), r = t(8480), o = t(3717), a = t(8551), s = n([].concat); A.exports = i("Reflect", "ownKeys") || function(A) { var e = r.f(a(A)), t = o.f; return t ? s(e, t(A)) : e; }; }, 5044: (A, e, t) => { "use strict"; var i = t(4644), n = t(4373), r = t(5854), o = t(6955), a = t(9565), s = t(9504), g = t(9039), I = i.aTypedArray, c = i.exportTypedArrayMethod, u = s("".slice); c("fill", (function(A) { var e = arguments.length; I(this); var t = "Big" === u(o(this), 0, 3) ? r(A) : +A; return a(n, this, t, e > 1 ? arguments[1] : void 0, e > 2 ? arguments[2] : void 0); }), g((function() { var A = 0; return new Int8Array(2).fill({ valueOf: function() { return A++; } }), 1 !== A; }))); }, 5047: (A, e, t) => { "use strict"; e.Service = t(7595); }, 5095: A => { "use strict"; A.exports = common; var e, t = /\/|\./; function common(A, e) { t.test(A) || (A = "google/protobuf/" + A + ".proto", e = { nested: { google: { nested: { protobuf: { nested: e } } } } }), common[A] = e; } common("any", { Any: { fields: { type_url: { type: "string", id: 1 }, value: { type: "bytes", id: 2 } } } }), common("duration", { Duration: e = { fields: { seconds: { type: "int64", id: 1 }, nanos: { type: "int32", id: 2 } } } }), common("timestamp", { Timestamp: e }), common("empty", { Empty: { fields: {} } }), common("struct", { Struct: { fields: { fields: { keyType: "string", type: "Value", id: 1 } } }, Value: { oneofs: { kind: { oneof: [ "nullValue", "numberValue", "stringValue", "boolValue", "structValue", "listValue" ] } }, fields: { nullValue: { type: "NullValue", id: 1 }, numberValue: { type: "double", id: 2 }, stringValue: { type: "string", id: 3 }, boolValue: { type: "bool", id: 4 }, structValue: { type: "Struct", id: 5 }, listValue: { type: "ListValue", id: 6 } } }, NullValue: { values: { NULL_VALUE: 0 } }, ListValue: { fields: { values: { rule: "repeated", type: "Value", id: 1 } } } }), common("wrappers", { DoubleValue: { fields: { value: { type: "double", id: 1 } } }, FloatValue: { fields: { value: { type: "float", id: 1 } } }, Int64Value: { fields: { value: { type: "int64", id: 1 } } }, UInt64Value: { fields: { value: { type: "uint64", id: 1 } } }, Int32Value: { fields: { value: { type: "int32", id: 1 } } }, UInt32Value: { fields: { value: { type: "uint32", id: 1 } } }, BoolValue: { fields: { value: { type: "bool", id: 1 } } }, StringValue: { fields: { value: { type: "string", id: 1 } } }, BytesValue: { fields: { value: { type: "bytes", id: 1 } } } }), common("field_mask", { FieldMask: { fields: { paths: { rule: "repeated", type: "string", id: 1 } } } }), common.get = function(A) { return common[A] || null; }; }, 5212: (A, e, t) => { "use strict"; A.exports = fetch; var i = t(8045), n = t(4153)("fs"); function fetch(A, e, t) { return "function" == typeof e ? (t = e, e = {}) : e || (e = {}), t ? !e.xhr && n && n.readFile ? n.readFile(A, (function(i, n) { return i && "undefined" != typeof XMLHttpRequest ? fetch.xhr(A, e, t) : i ? t(i) : t(null, e.binary ? n : n.toString("utf8")); })) : fetch.xhr(A, e, t) : i(fetch, this, A, e); } fetch.xhr = function(A, e, t) { var i = new XMLHttpRequest; i.onreadystatechange = function() { if (4 === i.readyState) { if (0 !== i.status && 200 !== i.status) return t(Error("status " + i.status)); if (e.binary) { var A = i.response; if (!A) { A = []; for (var n = 0; n < i.responseText.length; ++n) A.push(255 & i.responseText.charCodeAt(n)); } return t(null, "undefined" != typeof Uint8Array ? new Uint8Array(A) : A); } return t(null, i.responseText); } }, e.binary && ("overrideMimeType" in i && i.overrideMimeType("text/plain; charset=x-user-defined"), i.responseType = "arraybuffer"), i.open("GET", A), i.send(); }; }, 5276: (A, e, t) => { "use strict"; var i = t(6518), n = t(7476), r = t(9617).indexOf, o = t(4598), a = n([].indexOf), s = !!a && 1 / a([ 1 ], 1, -0) < 0; i({ target: "Array", proto: !0, forced: s || !o("indexOf") }, { indexOf: function(A) { var e = arguments.length > 1 ? arguments[1] : void 0; return s ? a(this, A, e) || 0 : r(this, A, e); } }); }, 5325: (A, e, t) => { "use strict"; var i = A.exports = t(4394); i.build = "light", i.load = function(A, e, t) { return "function" == typeof e ? (t = e, e = new i.Root) : e || (e = new i.Root), e.load(A, t); }, i.loadSync = function(A, e) { return e || (e = new i.Root), e.loadSync(A); }, i.encoder = t(1080), i.decoder = t(7728), i.verifier = t(420), i.converter = t(744), i.ReflectionObject = t(7209), i.Namespace = t(8923), i.Root = t(5330), i.Enum = t(5643), i.Type = t(7882), i.Field = t(1344), i.OneOf = t(1457), i.MapField = t(8252), i.Service = t(9687), i.Method = t(8811), i.Message = t(2551), i.wrappers = t(6434), i.types = t(361), i.util = t(3262), i.ReflectionObject._configure(i.Root), i.Namespace._configure(i.Type, i.Service, i.Enum), i.Root._configure(i.Type), i.Field._configure(i.Type); }, 5330: (A, e, t) => { "use strict"; A.exports = Root; var i = t(8923); ((Root.prototype = Object.create(i.prototype)).constructor = Root).className = "Root"; var n, r, o, a = t(1344), s = t(5643), g = t(1457), I = t(3262); function Root(A) { i.call(this, "", A), this.deferred = [], this.files = []; } function SYNC() {} Root.fromJSON = function(A, e) { return e || (e = new Root), A.options && e.setOptions(A.options), e.addJSON(A.nested); }, Root.prototype.resolvePath = I.path.resolve, Root.prototype.fetch = I.fetch, Root.prototype.load = function load(A, e, t) { "function" == typeof e && (t = e, e = void 0); var i = this; if (!t) return I.asPromise(load, i, A, e); var n = t === SYNC; function finish(A, e) { if (t) { if (n) throw A; var i = t; t = null, i(A, e); } } function getBundledFileName(A) { var e = A.lastIndexOf("google/protobuf/"); if (e > -1) { var t = A.substring(e); if (t in o) return t; } return null; } function process(A, t) { try { if (I.isString(t) && "{" === t.charAt(0) && (t = JSON.parse(t)), I.isString(t)) { r.filename = A; var o, s = r(t, i, e), g = 0; if (s.imports) for (;g < s.imports.length; ++g) (o = getBundledFileName(s.imports[g]) || i.resolvePath(A, s.imports[g])) && fetch(o); if (s.weakImports) for (g = 0; g < s.weakImports.length; ++g) (o = getBundledFileName(s.weakImports[g]) || i.resolvePath(A, s.weakImports[g])) && fetch(o, !0); } else i.setOptions(t.options).addJSON(t.nested); } catch (A) { finish(A); } n || a || finish(null, i); } function fetch(A, e) { if (A = getBundledFileName(A) || A, !(i.files.indexOf(A) > -1)) if (i.files.push(A), A in o) n ? process(A, o[A]) : (++a, setTimeout((function() { --a, process(A, o[A]); }))); else if (n) { var r; try { r = I.fs.readFileSync(A).toString("utf8"); } catch (A) { return void (e || finish(A)); } process(A, r); } else ++a, i.fetch(A, (function(n, r) { --a, t && (n ? e ? a || finish(null, i) : finish(n) : process(A, r)); })); } var a = 0; I.isString(A) && (A = [ A ]); for (var s, g = 0; g < A.length; ++g) (s = i.resolvePath("", A[g])) && fetch(s); if (n) return i; a || finish(null, i); }, Root.prototype.loadSync = function(A, e) { if (!I.isNode) throw Error("not supported"); return this.load(A, e, SYNC); }, Root.prototype.resolveAll = function() { if (this.deferred.length) throw Error("unresolvable extensions: " + this.deferred.map((function(A) { return "'extend " + A.extend + "' in " + A.parent.fullName; })).join(", ")); return i.prototype.resolveAll.call(this); }; var c = /^[A-Z]/; function tryHandleExtension(A, e) { var t = e.parent.lookup(e.extend); if (t) { var i = new a(e.fullName, e.id, e.type, e.rule, void 0, e.options); return t.get(i.name) || (i.declaringField = e, e.extensionField = i, t.add(i)), !0; } return !1; } Root.prototype._handleAdd = function(A) { if (A instanceof a) void 0 === A.extend || A.extensionField || tryHandleExtension(0, A) || this.deferred.push(A); else if (A instanceof s) c.test(A.name) && (A.parent[A.name] = A.values); else if (!(A instanceof g)) { if (A instanceof n) for (var e = 0; e < this.deferred.length; ) tryHandleExtension(0, this.deferred[e]) ? this.deferred.splice(e, 1) : ++e; for (var t = 0; t < A.nestedArray.length; ++t) this._handleAdd(A._nestedArray[t]); c.test(A.name) && (A.parent[A.name] = A); } }, Root.prototype._handleRemove = function(A) { if (A instanceof a) { if (void 0 !== A.extend) if (A.extensionField) A.extensionField.parent.remove(A.extensionField), A.extensionField = null; else { var e = this.deferred.indexOf(A); e > -1 && this.deferred.splice(e, 1); } } else if (A instanceof s) c.test(A.name) && delete A.parent[A.name]; else if (A instanceof i) { for (var t = 0; t < A.nestedArray.length; ++t) this._handleRemove(A._nestedArray[t]); c.test(A.name) && delete A.parent[A.name]; } }, Root._configure = function(A, e, t) { n = A, r = e, o = t; }; }, 5370: (A, e, t) => { "use strict"; var i = t(6198); A.exports = function(A, e, t) { for (var n = 0, r = arguments.length > 2 ? t : i(e), o = new A(r); r > n; ) o[n] = e[n++]; return o; }; }, 5397: (A, e, t) => { "use strict"; var i = t(7055), n = t(7750); A.exports = function(A) { return i(n(A)); }; }, 5440: (A, e, t) => { "use strict"; var i = t(8745), n = t(9565), r = t(9504), o = t(9228), a = t(9039), s = t(8551), g = t(4901), I = t(4117), c = t(1291), u = t(8014), C = t(655), Q = t(7750), B = t(7829), E = t(5966), l = t(2478), h = t(6682), f = t(8227)("replace"), d = Math.max, y = Math.min, w = r([].concat), v = r([].push), p = r("".indexOf), D = r("".slice), b = "$0" === "a".replace(/./, "$0"), k = !!/./[f] && "" === /./[f]("a", "$0"); o("replace", (function(A, e, t) { var r = k ? "$" : "$0"; return [ function(A, t) { var i = Q(this), r = I(A) ? void 0 : E(A, f); return r ? n(r, A, i, t) : n(e, C(i), A, t); }, function(A, n) { var o = s(this), a = C(A); if ("string" == typeof n && -1 === p(n, r) && -1 === p(n, "$<")) { var I = t(e, o, a, n); if (I.done) return I.value; } var Q = g(n); Q || (n = C(n)); var E, f = o.global; f && (E = o.unicode, o.lastIndex = 0); for (var b, k = []; null !== (b = h(o, a)) && (v(k, b), f); ) "" === C(b[0]) && (o.lastIndex = B(a, u(o.lastIndex), E)); for (var S, m = "", N = 0, G = 0; G < k.length; G++) { for (var M, J = C((b = k[G])[0]), R = d(y(c(b.index), a.length), 0), U = [], L = 1; L < b.length; L++) v(U, void 0 === (S = b[L]) ? S : String(S)); var Y = b.groups; if (Q) { var K = w([ J ], U, R, a); void 0 !== Y && v(K, Y), M = C(i(n, void 0, K)); } else M = l(J, a, R, U, Y, n); R >= N && (m += D(a, N, R) + M, N = R + J.length); } return m + D(a, N); } ]; }), !!a((function() { var A = /./; return A.exec = function() { var A = []; return A.groups = { a: "7" }, A; }, "7" !== "".replace(A, "$<a>"); })) || !b || k); }, 5506: (A, e, t) => { "use strict"; var i = t(6518), n = t(2357).entries; i({ target: "Object", stat: !0 }, { entries: function(A) { return n(A); } }); }, 5548: (A, e, t) => { "use strict"; var i = t(3517), n = t(6823), r = TypeError; A.exports = function(A) { if (i(A)) return A; throw new r(n(A) + " is not a constructor"); }; }, 5610: (A, e, t) => { "use strict"; var i = t(1291), n = Math.max, r = Math.min; A.exports = function(A, e) { var t = i(A); return t < 0 ? n(t + e, 0) : r(t, e); }; }, 5617: (A, e, t) => { "use strict"; var i = t(3164); A.exports = Math.fround || function(A) { return i(A, 1.1920928955078125e-7, 34028234663852886e22, 11754943508222875e-54); }; }, 5643: (A, e, t) => { "use strict"; A.exports = Enum; var i = t(7209); ((Enum.prototype = Object.create(i.prototype)).constructor = Enum).className = "Enum"; var n = t(8923), r = t(3262); function Enum(A, e, t, n, r, o) { if (i.call(this, A, t), e && "object" != typeof e) throw TypeError("values must be an object"); if (this.valuesById = {}, this.values = Object.create(this.valuesById), this.comment = n, this.comments = r || {}, this.valuesOptions = o, this.reserved = void 0, e) for (var a = Object.keys(e), s = 0; s < a.length; ++s) "number" == typeof e[a[s]] && (this.valuesById[this.values[a[s]] = e[a[s]]] = a[s]); } Enum.fromJSON = function(A, e) { var t = new Enum(A, e.values, e.options, e.comment, e.comments); return t.reserved = e.reserved, t; }, Enum.prototype.toJSON = function(A) { var e = !!A && Boolean(A.keepComments); return r.toObject([ "options", this.options, "valuesOptions", this.valuesOptions, "values", this.values, "reserved", this.reserved && this.reserved.length ? this.reserved : void 0, "comment", e ? this.comment : void 0, "comments", e ? this.comments : void 0 ]); }, Enum.prototype.add = function(A, e, t, i) { if (!r.isString(A)) throw TypeError("name must be a string"); if (!r.isInteger(e)) throw TypeError("id must be an integer"); if (void 0 !== this.values[A]) throw Error("duplicate name '" + A + "' in " + this); if (this.isReservedId(e)) throw Error("id " + e + " is reserved in " + this); if (this.isReservedName(A)) throw Error("name '" + A + "' is reserved in " + this); if (void 0 !== this.valuesById[e]) { if (!this.options || !this.options.allow_alias) throw Error("duplicate id " + e + " in " + this); this.values[A] = e; } else this.valuesById[this.values[A] = e] = A; return i && (void 0 === this.valuesOptions && (this.valuesOptions = {}), this.valuesOptions[A] = i || null), this.comments[A] = t || null, this; }, Enum.prototype.remove = function(A) { if (!r.isString(A)) throw TypeError("name must be a string"); var e = this.values[A]; if (null == e) throw Error("name '" + A + "' does not exist in " + this); return delete this.valuesById[e], delete this.values[A], delete this.comments[A], this.valuesOptions && delete this.valuesOptions[A], this; }, Enum.prototype.isReservedId = function(A) { return n.isReservedId(this.reserved, A); }, Enum.prototype.isReservedName = function(A) { return n.isReservedName(this.reserved, A); }; }, 5652: (A, e, t) => { "use strict"; var i = t(9039); A.exports = i((function() { if ("function" == typeof ArrayBuffer) { var A = new ArrayBuffer(8); Object.isExtensible(A) && Object.defineProperty(A, "a", { value: 8 }); } })); }, 5745: (A, e, t) => { "use strict"; var i = t(7629); A.exports = function(A, e) { return i[A] || (i[A] = e || {}); }; }, 5806: (A, e, t) => { "use strict"; t(7764); var i, n = t(6518), r = t(3724), o = t(7416), a = t(2195), s = t(6080), g = t(9504), I = t(6840), c = t(2106), u = t(679), C = t(9297), Q = t(4213), B = t(7916), E = t(7680), l = t(8183).codeAt, h = t(6098), f = t(655), d = t(687), y = t(2812), w = t(8406), v = t(1181), p = v.set, D = v.getterFor("URL"), b = w.URLSearchParams, k = w.getState, S = a.URL, m = a.TypeError, N = a.parseInt, G = Math.floor, M = Math.pow, J = g("".charAt), R = g(/./.exec), U = g([].join), L = g(1..toString), Y = g([].pop), K = g([].push), H = g("".replace), x = g([].shift), O = g("".split), q = g("".slice), T = g("".toLowerCase), P = g([].unshift), _ = "Invalid scheme", j = "Invalid host", V = "Invalid port", Z = /[a-z]/i, W = /[\d+-.a-z]/i, X = /\d/, z = /^0x/i, $ = /^[0-7]+$/, AA = /^\d+$/, eA = /^[\da-f]+$/i, tA = /[\0\t\n\r #%/:<>?@[\\\]^|]/, iA = /[\0\t\n\r #/:<>?@[\\\]^|]/, nA = /^[\u0000-\u0020]+/, rA = /(^|[^\u0000-\u0020])[\u0000-\u0020]+$/, oA = /[\t\n\r]/g, serializeHost = function(A) { var e, t, i, n; if ("number" == typeof A) { for (e = [], t = 0; t < 4; t++) P(e, A % 256), A = G(A / 256); return U(e, "."); } if ("object" == typeof A) { for (e = "", i = function(A) { for (var e = null, t = 1, i = null, n = 0, r = 0; r < 8; r++) 0 !== A[r] ? (n > t && (e = i, t = n), i = null, n = 0) : (null === i && (i = r), ++n); return n > t ? i : e; }(A), t = 0; t < 8; t++) n && 0 === A[t] || (n && (n = !1), i === t ? (e += t ? ":" : "::", n = !0) : (e += L(A[t], 16), t < 7 && (e += ":"))); return "[" + e + "]"; } return A; }, aA = {}, sA = Q({}, aA, { " ": 1, '"': 1, "<": 1, ">": 1, "`": 1 }), gA = Q({}, sA, { "#": 1, "?": 1, "{": 1, "}": 1 }), IA = Q({}, gA, { "/": 1, ":": 1, ";": 1, "=": 1, "@": 1, "[": 1, "\\": 1, "]": 1, "^": 1, "|": 1 }), percentEncode = function(A, e) { var t = l(A, 0); return t > 32 && t < 127 && !C(e, A) ? A : encodeURIComponent(A); }, cA = { ftp: 21, file: null, http: 80, https: 443, ws: 80, wss: 443 }, isWindowsDriveLetter = function(A, e) { var t; return 2 === A.length && R(Z, J(A, 0)) && (":" === (t = J(A, 1)) || !e && "|" === t); }, startsWithWindowsDriveLetter = function(A) { var e; return A.length > 1 && isWindowsDriveLetter(q(A, 0, 2)) && (2 === A.length || "/" === (e = J(A, 2)) || "\\" === e || "?" === e || "#" === e); }, isSingleDot = function(A) { return "." === A || "%2e" === T(A); }, uA = {}, CA = {}, QA = {}, BA = {}, EA = {}, lA = {}, hA = {}, fA = {}, dA = {}, yA = {}, wA = {}, vA = {}, pA = {}, DA = {}, bA = {}, kA = {}, SA = {}, mA = {}, NA = {}, FA = {}, GA = {}, URLState = function(A, e, t) { var i, n, r, o = f(A); if (e) { if (n = this.parse(o)) throw new m(n); this.searchParams = null; } else { if (void 0 !== t && (i = new URLState(t, !0)), n = this.parse(o, null, i)) throw new m(n); (r = k(new b)).bindURL(this), this.searchParams = r; } }; URLState.prototype = { type: "URL", parse: function(A, e, t) { var n, r, o, a, s, g = this, I = e || uA, c = 0, u = "", Q = !1, l = !1, h = !1; for (A = f(A), e || (g.scheme = "", g.username = "", g.password = "", g.host = null, g.port = null, g.path = [], g.query = null, g.fragment = null, g.cannotBeABaseURL = !1, A = H(A, nA, ""), A = H(A, rA, "$1")), A = H(A, oA, ""), n = B(A); c <= n.length; ) { switch (r = n[c], I) { case uA: if (!r || !R(Z, r)) { if (e) return _; I = QA; continue; } u += T(r), I = CA; break; case CA: if (r && (R(W, r) || "+" === r || "-" === r || "." === r)) u += T(r); else { if (":" !== r) { if (e) return _; u = "", I = QA, c = 0; continue; } if (e && (g.isSpecial() !== C(cA, u) || "file" === u && (g.includesCredentials() || null !== g.port) || "file" === g.scheme && !g.host)) return; if (g.scheme = u, e) return void (g.isSpecial() && cA[g.scheme] === g.port && (g.port = null)); u = "", "file" === g.scheme ? I = DA : g.isSpecial() && t && t.scheme === g.scheme ? I = BA : g.isSpecial() ? I = fA : "/" === n[c + 1] ? (I = EA, c++) : (g.cannotBeABaseURL = !0, K(g.path, ""), I = NA); } break; case QA: if (!t || t.cannotBeABaseURL && "#" !== r) return _; if (t.cannotBeABaseURL && "#" === r) { g.scheme = t.scheme, g.path = E(t.path), g.query = t.query, g.fragment = "", g.cannotBeABaseURL = !0, I = GA; break; } I = "file" === t.scheme ? DA : lA; continue; case BA: if ("/" !== r || "/" !== n[c + 1]) { I = lA; continue; } I = dA, c++; break; case EA: if ("/" === r) { I = yA; break; } I = mA; continue; case lA: if (g.scheme = t.scheme, r === i) g.username = t.username, g.password = t.password, g.host = t.host, g.port = t.port, g.path = E(t.path), g.query = t.query; else if ("/" === r || "\\" === r && g.isSpecial()) I = hA; else if ("?" === r) g.username = t.username, g.password = t.password, g.host = t.host, g.port = t.port, g.path = E(t.path), g.query = "", I = FA; else { if ("#" !== r) { g.username = t.username, g.password = t.password, g.host = t.host, g.port = t.port, g.path = E(t.path), g.path.length--, I = mA; continue; } g.username = t.username, g.password = t.password, g.host = t.host, g.port = t.port, g.path = E(t.path), g.query = t.query, g.fragment = "", I = GA; } break; case hA: if (!g.isSpecial() || "/" !== r && "\\" !== r) { if ("/" !== r) { g.username = t.username, g.password = t.password, g.host = t.host, g.port = t.port, I = mA; continue; } I = yA; } else I = dA; break; case fA: if (I = dA, "/" !== r || "/" !== J(u, c + 1)) continue; c++; break; case dA: if ("/" !== r && "\\" !== r) { I = yA; continue; } break; case yA: if ("@" === r) { Q && (u = "%40" + u), Q = !0, o = B(u); for (var d = 0; d < o.length; d++) { var y = o[d]; if (":" !== y || h) { var w = percentEncode(y, IA); h ? g.password += w : g.username += w; } else h = !0; } u = ""; } else if (r === i || "/" === r || "?" === r || "#" === r || "\\" === r && g.isSpecial()) { if (Q && "" === u) return "Invalid authority"; c -= B(u).length + 1, u = "", I = wA; } else u += r; break; case wA: case vA: if (e && "file" === g.scheme) { I = kA; continue; } if (":" !== r || l) { if (r === i || "/" === r || "?" === r || "#" === r || "\\" === r && g.isSpecial()) { if (g.isSpecial() && "" === u) return j; if (e && "" === u && (g.includesCredentials() || null !== g.port)) return; if (a = g.parseHost(u)) return a; if (u = "", I = SA, e) return; continue; } "[" === r ? l = !0 : "]" === r && (l = !1), u += r; } else { if ("" === u) return j; if (a = g.parseHost(u)) return a; if (u = "", I = pA, e === vA) return; } break; case pA: if (!R(X, r)) { if (r === i || "/" === r || "?" === r || "#" === r || "\\" === r && g.isSpecial() || e) { if ("" !== u) { var v = N(u, 10); if (v > 65535) return V; g.port = g.isSpecial() && v === cA[g.scheme] ? null : v, u = ""; } if (e) return; I = SA; continue; } return V; } u += r; break; case DA: if (g.scheme = "file", "/" === r || "\\" === r) I = bA; else { if (!t || "file" !== t.scheme) { I = mA; continue; } switch (r) { case i: g.host = t.host, g.path = E(t.path), g.query = t.query; break; case "?": g.host = t.host, g.path = E(t.path), g.query = "", I = FA; break; case "#": g.host = t.host, g.path = E(t.path), g.query = t.query, g.fragment = "", I = GA; break; default: startsWithWindowsDriveLetter(U(E(n, c), "")) || (g.host = t.host, g.path = E(t.path), g.shortenPath()), I = mA; continue; } } break; case bA: if ("/" === r || "\\" === r) { I = kA; break; } t && "file" === t.scheme && !startsWithWindowsDriveLetter(U(E(n, c), "")) && (isWindowsDriveLetter(t.path[0], !0) ? K(g.path, t.path[0]) : g.host = t.host), I = mA; continue; case kA: if (r === i || "/" === r || "\\" === r || "?" === r || "#" === r) { if (!e && isWindowsDriveLetter(u)) I = mA; else if ("" === u) { if (g.host = "", e) return; I = SA; } else { if (a = g.parseHost(u)) return a; if ("localhost" === g.host && (g.host = ""), e) return; u = "", I = SA; } continue; } u += r; break; case SA: if (g.isSpecial()) { if (I = mA, "/" !== r && "\\" !== r) continue; } else if (e || "?" !== r) if (e || "#" !== r) { if (r !== i && (I = mA, "/" !== r)) continue; } else g.fragment = "", I = GA; else g.query = "", I = FA; break; case mA: if (r === i || "/" === r || "\\" === r && g.isSpecial() || !e && ("?" === r || "#" === r)) { if (".." === (s = T(s = u)) || "%2e." === s || ".%2e" === s || "%2e%2e" === s ? (g.shortenPath(), "/" === r || "\\" === r && g.isSpecial() || K(g.path, "")) : isSingleDot(u) ? "/" === r || "\\" === r && g.isSpecial() || K(g.path, "") : ("file" === g.scheme && !g.path.length && isWindowsDriveLetter(u) && (g.host && (g.host = ""), u = J(u, 0) + ":"), K(g.path, u)), u = "", "file" === g.scheme && (r === i || "?" === r || "#" === r)) for (;g.path.length > 1 && "" === g.path[0]; ) x(g.path); "?" === r ? (g.query = "", I = FA) : "#" === r && (g.fragment = "", I = GA); } else u += percentEncode(r, gA); break; case NA: "?" === r ? (g.query = "", I = FA) : "#" === r ? (g.fragment = "", I = GA) : r !== i && (g.path[0] += percentEncode(r, aA)); break; case FA: e || "#" !== r ? r !== i && ("'" === r && g.isSpecial() ? g.query += "%27" : g.query += "#" === r ? "%23" : percentEncode(r, aA)) : (g.fragment = "", I = GA); break; case GA: r !== i && (g.fragment += percentEncode(r, sA)); } c++; } }, parseHost: function(A) { var e, t, i; if ("[" === J(A, 0)) { if ("]" !== J(A, A.length - 1)) return j; if (e = function(A) { var e, t, i, n, r, o, a, s = [ 0, 0, 0, 0, 0, 0, 0, 0 ], g = 0, I = null, c = 0, chr = function() { return J(A, c); }; if (":" === chr()) { if (":" !== J(A, 1)) return; c += 2, I = ++g; } for (;chr(); ) { if (8 === g) return; if (":" !== chr()) { for (e = t = 0; t < 4 && R(eA, chr()); ) e = 16 * e + N(chr(), 16), c++, t++; if ("." === chr()) { if (0 === t) return; if (c -= t, g > 6) return; for (i = 0; chr(); ) { if (n = null, i > 0) { if (!("." === chr() && i < 4)) return; c++; } if (!R(X, chr())) return; for (;R(X, chr()); ) { if (r = N(chr(), 10), null === n) n = r; else { if (0 === n) return; n = 10 * n + r; } if (n > 255) return; c++; } s[g] = 256 * s[g] + n, 2 != ++i && 4 !== i || g++; } if (4 !== i) return; break; } if (":" === chr()) { if (c++, !chr()) return; } else if (chr()) return; s[g++] = e; } else { if (null !== I) return; c++, I = ++g; } } if (null !== I) for (o = g - I, g = 7; 0 !== g && o > 0; ) a = s[g], s[g--] = s[I + o - 1], s[I + --o] = a; else if (8 !== g) return; return s; }(q(A, 1, -1)), !e) return j; this.host = e; } else if (this.isSpecial()) { if (A = h(A), R(tA, A)) return j; if (e = function(A) { var e, t, i, n, r, o, a, s = O(A, "."); if (s.length && "" === s[s.length - 1] && s.length--, (e = s.length) > 4) return A; for (t = [], i = 0; i < e; i++) { if ("" === (n = s[i])) return A; if (r = 10, n.length > 1 && "0" === J(n, 0) && (r = R(z, n) ? 16 : 8, n = q(n, 8 === r ? 1 : 2)), "" === n) o = 0; else { if (!R(10 === r ? AA : 8 === r ? $ : eA, n)) return A; o = N(n, r); } K(t, o); } for (i = 0; i < e; i++) if (o = t[i], i === e - 1) { if (o >= M(256, 5 - e)) return null; } else if (o > 255) return null; for (a = Y(t), i = 0; i < t.length; i++) a += t[i] * M(256, 3 - i); return a; }(A), null === e) return j; this.host = e; } else { if (R(iA, A)) return j; for (e = "", t = B(A), i = 0; i < t.length; i++) e += percentEncode(t[i], aA); this.host = e; } }, cannotHaveUsernamePasswordPort: function() { return !this.host || this.cannotBeABaseURL || "file" === this.scheme; }, includesCredentials: function() { return "" !== this.username || "" !== this.password; }, isSpecial: function() { return C(cA, this.scheme); }, shortenPath: function() { var A = this.path, e = A.length; !e || "file" === this.scheme && 1 === e && isWindowsDriveLetter(A[0], !0) || A.length--; }, serialize: function() { var A = this, e = A.scheme, t = A.username, i = A.password, n = A.host, r = A.port, o = A.path, a = A.query, s = A.fragment, g = e + ":"; return null !== n ? (g += "//", A.includesCredentials() && (g += t + (i ? ":" + i : "") + "@"), g += serializeHost(n), null !== r && (g += ":" + r)) : "file" === e && (g += "//"), g += A.cannotBeABaseURL ? o[0] : o.length ? "/" + U(o, "/") : "", null !== a && (g += "?" + a), null !== s && (g += "#" + s), g; }, setHref: function(A) { var e = this.parse(A); if (e) throw new m(e); this.searchParams.update(); }, getOrigin: function() { var A = this.scheme, e = this.port; if ("blob" === A) try { return new URLConstructor(A.path[0]).origin; } catch (A) { return "null"; } return "file" !== A && this.isSpecial() ? A + "://" + serializeHost(this.host) + (null !== e ? ":" + e : "") : "null"; }, getProtocol: function() { return this.scheme + ":"; }, setProtocol: function(A) { this.parse(f(A) + ":", uA); }, getUsername: function() { return this.username; }, setUsername: function(A) { var e = B(f(A)); if (!this.cannotHaveUsernamePasswordPort()) { this.username = ""; for (var t = 0; t < e.length; t++) this.username += percentEncode(e[t], IA); } }, getPassword: function() { return this.password; }, setPassword: function(A) { var e = B(f(A)); if (!this.cannotHaveUsernamePasswordPort()) { this.password = ""; for (var t = 0; t < e.length; t++) this.password += percentEncode(e[t], IA); } }, getHost: function() { var A = this.host, e = this.port; return null === A ? "" : null === e ? serializeHost(A) : serializeHost(A) + ":" + e; }, setHost: function(A) { this.cannotBeABaseURL || this.parse(A, wA); }, getHostname: function() { var A = this.host; return null === A ? "" : serializeHost(A); }, setHostname: function(A) { this.cannotBeABaseURL || this.parse(A, vA); }, getPort: function() { var A = this.port; return null === A ? "" : f(A); }, setPort: function(A) { this.cannotHaveUsernamePasswordPort() || ("" === (A = f(A)) ? this.port = null : this.parse(A, pA)); }, getPathname: function() { var A = this.path; return this.cannotBeABaseURL ? A[0] : A.length ? "/" + U(A, "/") : ""; }, setPathname: function(A) { this.cannotBeABaseURL || (this.path = [], this.parse(A, SA)); }, getSearch: function() { var A = this.query; return A ? "?" + A : ""; }, setSearch: function(A) { "" === (A = f(A)) ? this.query = null : ("?" === J(A, 0) && (A = q(A, 1)), this.query = "", this.parse(A, FA)), this.searchParams.update(); }, getSearchParams: function() { return this.searchParams.facade; }, getHash: function() { var A = this.fragment; return A ? "#" + A : ""; }, setHash: function(A) { "" !== (A = f(A)) ? ("#" === J(A, 0) && (A = q(A, 1)), this.fragment = "", this.parse(A, GA)) : this.fragment = null; }, update: function() { this.query = this.searchParams.serialize() || null; } }; var URLConstructor = function(A) { var e = u(this, MA), t = y(arguments.length, 1) > 1 ? arguments[1] : void 0, i = p(e, new URLState(A, !1, t)); r || (e.href = i.serialize(), e.origin = i.getOrigin(), e.protocol = i.getProtocol(), e.username = i.getUsername(), e.password = i.getPassword(), e.host = i.getHost(), e.hostname = i.getHostname(), e.port = i.getPort(), e.pathname = i.getPathname(), e.search = i.getSearch(), e.searchParams = i.getSearchParams(), e.hash = i.getHash()); }, MA = URLConstructor.prototype, accessorDescriptor = function(A, e) { return { get: function() { return D(this)[A](); }, set: e && function(A) { return D(this)[e](A); }, configurable: !0, enumerable: !0 }; }; if (r && (c(MA, "href", accessorDescriptor("serialize", "setHref")), c(MA, "origin", accessorDescriptor("getOrigin")), c(MA, "protocol", accessorDescriptor("getProtocol", "setProtocol")), c(MA, "username", accessorDescriptor("getUsername", "setUsername")), c(MA, "password", accessorDescriptor("getPassword", "setPassword")), c(MA, "host", accessorDescriptor("getHost", "setHost")), c(MA, "hostname", accessorDescriptor("getHostname", "setHostname")), c(MA, "port", accessorDescriptor("getPort", "setPort")), c(MA, "pathname", accessorDescriptor("getPathname", "setPathname")), c(MA, "search", accessorDescriptor("getSearch", "setSearch")), c(MA, "searchParams", accessorDescriptor("getSearchParams")), c(MA, "hash", accessorDescriptor("getHash", "setHash"))), I(MA, "toJSON", (function() { return D(this).serialize(); }), { enumerable: !0 }), I(MA, "toString", (function() { return D(this).serialize(); }), { enumerable: !0 }), S) { var JA = S.createObjectURL, RA = S.revokeObjectURL; JA && I(URLConstructor, "createObjectURL", s(JA, S)), RA && I(URLConstructor, "revokeObjectURL", s(RA, S)); } d(URLConstructor, "URL"), n({ global: !0, constructor: !0, forced: !o, sham: !r }, { URL: URLConstructor }); }, 5823: (A, e, t) => { "use strict"; var i = t(6518), n = t(2195), r = t(9565), o = t(3724), a = t(2805), s = t(4644), g = t(6346), I = t(679), c = t(6980), u = t(6699), C = t(2087), Q = t(8014), B = t(7696), E = t(8229), l = t(8319), h = t(6969), f = t(9297), d = t(6955), y = t(34), w = t(757), v = t(2360), p = t(1625), D = t(2967), b = t(8480).f, k = t(3251), S = t(9213).forEach, m = t(7633), N = t(2106), G = t(4913), M = t(7347), J = t(5370), R = t(1181), U = t(3167), L = R.get, Y = R.set, K = R.enforce, H = G.f, x = M.f, O = n.RangeError, q = g.ArrayBuffer, T = q.prototype, P = g.DataView, _ = s.NATIVE_ARRAY_BUFFER_VIEWS, j = s.TYPED_ARRAY_TAG, V = s.TypedArray, Z = s.TypedArrayPrototype, W = s.isTypedArray, X = "BYTES_PER_ELEMENT", z = "Wrong length", addGetter = function(A, e) { N(A, e, { configurable: !0, get: function() { return L(this)[e]; } }); }, isArrayBuffer = function(A) { var e; return p(T, A) || "ArrayBuffer" === (e = d(A)) || "SharedArrayBuffer" === e; }, isTypedArrayIndex = function(A, e) { return W(A) && !w(e) && e in A && C(+e) && e >= 0; }, wrappedGetOwnPropertyDescriptor = function(A, e) { return e = h(e), isTypedArrayIndex(A, e) ? c(2, A[e]) : x(A, e); }, wrappedDefineProperty = function(A, e, t) { return e = h(e), !(isTypedArrayIndex(A, e) && y(t) && f(t, "value")) || f(t, "get") || f(t, "set") || t.configurable || f(t, "writable") && !t.writable || f(t, "enumerable") && !t.enumerable ? H(A, e, t) : (A[e] = t.value, A); }; o ? (_ || (M.f = wrappedGetOwnPropertyDescriptor, G.f = wrappedDefineProperty, addGetter(Z, "buffer"), addGetter(Z, "byteOffset"), addGetter(Z, "byteLength"), addGetter(Z, "length")), i({ target: "Object", stat: !0, forced: !_ }, { getOwnPropertyDescriptor: wrappedGetOwnPropertyDescriptor, defineProperty: wrappedDefineProperty }), A.exports = function(A, e, t) { var o = A.match(/\d+/)[0] / 8, s = A + (t ? "Clamped" : "") + "Array", g = "get" + A, c = "set" + A, C = n[s], h = C, f = h && h.prototype, d = {}, addElement = function(A, e) { H(A, e, { get: function() { return function(A, e) { var t = L(A); return t.view[g](e * o + t.byteOffset, !0); }(this, e); }, set: function(A) { return function(A, e, i) { var n = L(A); n.view[c](e * o + n.byteOffset, t ? l(i) : i, !0); }(this, e, A); }, enumerable: !0 }); }; _ ? a && (h = e((function(A, e, t, i) { return I(A, f), U(y(e) ? isArrayBuffer(e) ? void 0 !== i ? new C(e, E(t, o), i) : void 0 !== t ? new C(e, E(t, o)) : new C(e) : W(e) ? J(h, e) : r(k, h, e) : new C(B(e)), A, h); })), D && D(h, V), S(b(C), (function(A) { A in h || u(h, A, C[A]); })), h.prototype = f) : (h = e((function(A, e, t, i) { I(A, f); var n, a, s, g = 0, c = 0; if (y(e)) { if (!isArrayBuffer(e)) return W(e) ? J(h, e) : r(k, h, e); n = e, c = E(t, o); var u = e.byteLength; if (void 0 === i) { if (u % o) throw new O(z); if ((a = u - c) < 0) throw new O(z); } else if ((a = Q(i) * o) + c > u) throw new O(z); s = a / o; } else s = B(e), n = new q(a = s * o); for (Y(A, { buffer: n, byteOffset: c, byteLength: a, length: s, view: new P(n) }); g < s; ) addElement(A, g++); })), D && D(h, V), f = h.prototype = v(Z)), f.constructor !== h && u(f, "constructor", h), K(f).TypedArrayConstructor = h, j && u(f, j, s); var w = h !== C; d[s] = h, i({ global: !0, constructor: !0, forced: w, sham: !_ }, d), X in h || u(h, X, o), X in f || u(f, X, o), m(s); }) : A.exports = function() {}; }, 5854: (A, e, t) => { "use strict"; var i = t(2777), n = TypeError; A.exports = function(A) { var e = i(A, "number"); if ("number" == typeof e) throw new n("Can't convert number to bigint"); return BigInt(e); }; }, 5917: (A, e, t) => { "use strict"; var i = t(3724), n = t(9039), r = t(4055); A.exports = !i && !n((function() { return 7 !== Object.defineProperty(r("div"), "a", { get: function() { return 7; } }).a; })); }, 5966: (A, e, t) => { "use strict"; var i = t(9306), n = t(4117); A.exports = function(A, e) { var t = A[e]; return n(t) ? void 0 : i(t); }; }, 6033: (A, e, t) => { "use strict"; t(8523); }, 6034: (A, e, t) => { "use strict"; var i = t(6518), n = t(2357).values; i({ target: "Object", stat: !0 }, { values: function(A) { return n(A); } }); }, 6043: (A, e, t) => { "use strict"; var i = t(9306), n = TypeError, PromiseCapability = function(A) { var e, t; this.promise = new A((function(A, i) { if (void 0 !== e || void 0 !== t) throw new n("Bad Promise constructor"); e = A, t = i; })), this.resolve = i(e), this.reject = i(t); }; A.exports.f = function(A) { return new PromiseCapability(A); }; }, 6072: (A, e, t) => { "use strict"; var i = t(4644), n = t(926).right, r = i.aTypedArray; (0, i.exportTypedArrayMethod)("reduceRight", (function(A) { var e = arguments.length; return n(r(this), A, e, e > 1 ? arguments[1] : void 0); })); }, 6080: (A, e, t) => { "use strict"; var i = t(7476), n = t(9306), r = t(616), o = i(i.bind); A.exports = function(A, e) { return n(A), void 0 === e ? A : r ? o(A, e) : function() { return A.apply(e, arguments); }; }; }, 6098: (A, e, t) => { "use strict"; var i = t(9504), n = 2147483647, r = /[^\0-\u007E]/, o = /[.\u3002\uFF0E\uFF61]/g, a = "Overflow: input needs wider integers to process", s = RangeError, g = i(o.exec), I = Math.floor, c = String.fromCharCode, u = i("".charCodeAt), C = i([].join), Q = i([].push), B = i("".replace), E = i("".split), l = i("".toLowerCase), digitToBasic = function(A) { return A + 22 + 75 * (A < 26); }, adapt = function(A, e, t) { var i = 0; for (A = t ? I(A / 700) : A >> 1, A += I(A / e); A > 455; ) A = I(A / 35), i += 36; return I(i + 36 * A / (A + 38)); }, encode = function(A) { var e = []; A = function(A) { for (var e = [], t = 0, i = A.length; t < i; ) { var n = u(A, t++); if (n >= 55296 && n <= 56319 && t < i) { var r = u(A, t++); 56320 == (64512 & r) ? Q(e, ((1023 & n) << 10) + (1023 & r) + 65536) : (Q(e, n), t--); } else Q(e, n); } return e; }(A); var t, i, r = A.length, o = 128, g = 0, B = 72; for (t = 0; t < A.length; t++) (i = A[t]) < 128 && Q(e, c(i)); var E = e.length, l = E; for (E && Q(e, "-"); l < r; ) { var h = n; for (t = 0; t < A.length; t++) (i = A[t]) >= o && i < h && (h = i); var f = l + 1; if (h - o > I((n - g) / f)) throw new s(a); for (g += (h - o) * f, o = h, t = 0; t < A.length; t++) { if ((i = A[t]) < o && ++g > n) throw new s(a); if (i === o) { for (var d = g, y = 36; ;) { var w = y <= B ? 1 : y >= B + 26 ? 26 : y - B; if (d < w) break; var v = d - w, p = 36 - w; Q(e, c(digitToBasic(w + v % p))), d = I(v / p), y += 36; } Q(e, c(digitToBasic(d))), B = adapt(g, f, l === E), g = 0, l++; } } g++, o++; } return C(e, ""); }; A.exports = function(A) { var e, t, i = [], n = E(B(l(A), o, "."), "."); for (e = 0; e < n.length; e++) t = n[e], Q(i, g(r, t) ? "xn--" + encode(t) : t); return C(i, "."); }; }, 6099: (A, e, t) => { "use strict"; var i = t(2140), n = t(6840), r = t(3179); i || n(Object.prototype, "toString", r, { unsafe: !0 }); }, 6119: (A, e, t) => { "use strict"; var i = t(5745), n = t(3392), r = i("keys"); A.exports = function(A) { return r[A] || (r[A] = n(A)); }; }, 6193: (A, e, t) => { "use strict"; var i = t(4215); A.exports = "NODE" === i; }, 6198: (A, e, t) => { "use strict"; var i = t(8014); A.exports = function(A) { return i(A.length); }; }, 6237: (A, e, t) => { "use strict"; A.exports = Reader; var i, n = t(3610), r = n.LongBits, o = n.utf8; function indexOutOfRange(A, e) { return RangeError("index out of range: " + A.pos + " + " + (e || 1) + " > " + A.len); } function Reader(A) { this.buf = A, this.pos = 0, this.len = A.length; } var a, s = "undefined" != typeof Uint8Array ? function(A) { if (A instanceof Uint8Array || Array.isArray(A)) return new Reader(A); throw Error("illegal buffer"); } : function(A) { if (Array.isArray(A)) return new Reader(A); throw Error("illegal buffer"); }, create = function() { return n.Buffer ? function(A) { return (Reader.create = function(A) { return n.Buffer.isBuffer(A) ? new i(A) : s(A); })(A); } : s; }; function readLongVarint() { var A = new r(0, 0), e = 0; if (!(this.len - this.pos > 4)) { for (;e < 3; ++e) { if (this.pos >= this.len) throw indexOutOfRange(this); if (A.lo = (A.lo | (127 & this.buf[this.pos]) << 7 * e) >>> 0, this.buf[this.pos++] < 128) return A; } return A.lo = (A.lo | (127 & this.buf[this.pos++]) << 7 * e) >>> 0, A; } for (;e < 4; ++e) if (A.lo = (A.lo | (127 & this.buf[this.pos]) << 7 * e) >>> 0, this.buf[this.pos++] < 128) return A; if (A.lo = (A.lo | (127 & this.buf[this.pos]) << 28) >>> 0, A.hi = (A.hi | (127 & this.buf[this.pos]) >> 4) >>> 0, this.buf[this.pos++] < 128) return A; if (e = 0, this.len - this.pos > 4) { for (;e < 5; ++e) if (A.hi = (A.hi | (127 & this.buf[this.pos]) << 7 * e + 3) >>> 0, this.buf[this.pos++] < 128) return A; } else for (;e < 5; ++e) { if (this.pos >= this.len) throw indexOutOfRange(this); if (A.hi = (A.hi | (127 & this.buf[this.pos]) << 7 * e + 3) >>> 0, this.buf[this.pos++] < 128) return A; } throw Error("invalid varint encoding"); } function readFixed32_end(A, e) { return (A[e - 4] | A[e - 3] << 8 | A[e - 2] << 16 | A[e - 1] << 24) >>> 0; } function readFixed64() { if (this.pos + 8 > this.len) throw indexOutOfRange(this, 8); return new r(readFixed32_end(this.buf, this.pos += 4), readFixed32_end(this.buf, this.pos += 4)); } Reader.create = create(), Reader.prototype._slice = n.Array.prototype.subarray || n.Array.prototype.slice, Reader.prototype.uint32 = (a = 4294967295, function() { if (a = (127 & this.buf[this.pos]) >>> 0, this.buf[this.pos++] < 128) return a; if (a = (a | (127 & this.buf[this.pos]) << 7) >>> 0, this.buf[this.pos++] < 128) return a; if (a = (a | (127 & this.buf[this.pos]) << 14) >>> 0, this.buf[this.pos++] < 128) return a; if (a = (a | (127 & this.buf[this.pos]) << 21) >>> 0, this.buf[this.pos++] < 128) return a; if (a = (a | (15 & this.buf[this.pos]) << 28) >>> 0, this.buf[this.pos++] < 128) return a; if ((this.pos += 5) > this.len) throw this.pos = this.len, indexOutOfRange(this, 10); return a; }), Reader.prototype.int32 = function() { return 0 | this.uint32(); }, Reader.prototype.sint32 = function() { var A = this.uint32(); return A >>> 1 ^ -(1 & A); }, Reader.prototype.bool = function() { return 0 !== this.uint32(); }, Reader.prototype.fixed32 = function() { if (this.pos + 4 > this.len) throw indexOutOfRange(this, 4); return readFixed32_end(this.buf, this.pos += 4); }, Reader.prototype.sfixed32 = function() { if (this.pos + 4 > this.len) throw indexOutOfRange(this, 4); return 0 | readFixed32_end(this.buf, this.pos += 4); }, Reader.prototype.float = function() { if (this.pos + 4 > this.len) throw indexOutOfRange(this, 4); var A = n.float.readFloatLE(this.buf, this.pos); return this.pos += 4, A; }, Reader.prototype.double = function() { if (this.pos + 8 > this.len) throw indexOutOfRange(this, 4); var A = n.float.readDoubleLE(this.buf, this.pos); return this.pos += 8, A; }, Reader.prototype.bytes = function() { var A = this.uint32(), e = this.pos, t = this.pos + A; if (t > this.len) throw indexOutOfRange(this, A); if (this.pos += A, Array.isArray(this.buf)) return this.buf.slice(e, t); if (e === t) { var i = n.Buffer; return i ? i.alloc(0) : new this.buf.constructor(0); } return this._slice.call(this.buf, e, t); }, Reader.prototype.string = function() { var A = this.bytes(); return o.read(A, 0, A.length); }, Reader.prototype.skip = function(A) { if ("number" == typeof A) { if (this.pos + A > this.len) throw indexOutOfRange(this, A); this.pos += A; } else do { if (this.pos >= this.len) throw indexOutOfRange(this); } while (128 & this.buf[this.pos++]); return this; }, Reader.prototype.skipType = function(A) { switch (A) { case 0: this.skip(); break; case 1: this.skip(8); break; case 2: this.skip(this.uint32()); break; case 3: for (;4 != (A = 7 & this.uint32()); ) this.skipType(A); break; case 5: this.skip(4); break; default: throw Error("invalid wire type " + A + " at offset " + this.pos); } return this; }, Reader._configure = function(A) { i = A, Reader.create = create(), i._configure(); var e = n.Long ? "toLong" : "toNumber"; n.merge(Reader.prototype, { int64: function() { return readLongVarint.call(this)[e](!1); }, uint64: function() { return readLongVarint.call(this)[e](!0); }, sint64: function() { return readLongVarint.call(this).zzDecode()[e](!1); }, fixed64: function() { return readFixed64.call(this)[e](!0); }, sfixed64: function() { return readFixed64.call(this)[e](!1); } }); }; }, 6269: A => { "use strict"; A.exports = {}; }, 6279: (A, e, t) => { "use strict"; var i = t(6840); A.exports = function(A, e, t) { for (var n in e) i(A, n, e[n], t); return A; }; }, 6319: (A, e, t) => { "use strict"; var i = t(8551), n = t(9539); A.exports = function(A, e, t, r) { try { return r ? e(i(t)[0], t[1]) : e(t); } catch (e) { n(A, "throw", e); } }; }, 6346: (A, e, t) => { "use strict"; var i = t(2195), n = t(9504), r = t(3724), o = t(7811), a = t(350), s = t(6699), g = t(2106), I = t(6279), c = t(9039), u = t(679), C = t(1291), Q = t(8014), B = t(7696), E = t(5617), l = t(8490), h = t(2787), f = t(2967), d = t(4373), y = t(7680), w = t(3167), v = t(7740), p = t(687), D = t(1181), b = a.PROPER, k = a.CONFIGURABLE, S = "ArrayBuffer", m = "DataView", N = "prototype", G = "Wrong index", M = D.getterFor(S), J = D.getterFor(m), R = D.set, U = i[S], L = U, Y = L && L[N], K = i[m], H = K && K[N], x = Object.prototype, O = i.Array, q = i.RangeError, T = n(d), P = n([].reverse), _ = l.pack, j = l.unpack, packInt8 = function(A) { return [ 255 & A ]; }, packInt16 = function(A) { return [ 255 & A, A >> 8 & 255 ]; }, packInt32 = function(A) { return [ 255 & A, A >> 8 & 255, A >> 16 & 255, A >> 24 & 255 ]; }, unpackInt32 = function(A) { return A[3] << 24 | A[2] << 16 | A[1] << 8 | A[0]; }, packFloat32 = function(A) { return _(E(A), 23, 4); }, packFloat64 = function(A) { return _(A, 52, 8); }, addGetter = function(A, e, t) { g(A[N], e, { configurable: !0, get: function() { return t(this)[e]; } }); }, get = function(A, e, t, i) { var n = J(A), r = B(t), o = !!i; if (r + e > n.byteLength) throw new q(G); var a = n.bytes, s = r + n.byteOffset, g = y(a, s, s + e); return o ? g : P(g); }, set = function(A, e, t, i, n, r) { var o = J(A), a = B(t), s = i(+n), g = !!r; if (a + e > o.byteLength) throw new q(G); for (var I = o.bytes, c = a + o.byteOffset, u = 0; u < e; u++) I[c + u] = s[g ? u : e - u - 1]; }; if (o) { var V = b && U.name !== S; c((function() { U(1); })) && c((function() { new U(-1); })) && !c((function() { return new U, new U(1.5), new U(NaN), 1 !== U.length || V && !k; })) ? V && k && s(U, "name", S) : ((L = function(A) { return u(this, Y), w(new U(B(A)), this, L); })[N] = Y, Y.constructor = L, v(L, U)), f && h(H) !== x && f(H, x); var Z = new K(new L(2)), W = n(H.setInt8); Z.setInt8(0, 2147483648), Z.setInt8(1, 2147483649), !Z.getInt8(0) && Z.getInt8(1) || I(H, { setInt8: function(A, e) { W(this, A, e << 24 >> 24); }, setUint8: function(A, e) { W(this, A, e << 24 >> 24); } }, { unsafe: !0 }); } else Y = (L = function(A) { u(this, Y); var e = B(A); R(this, { type: S, bytes: T(O(e), 0), byteLength: e }), r || (this.byteLength = e, this.detached = !1); })[N], H = (K = function(A, e, t) { u(this, H), u(A, Y); var i = M(A), n = i.byteLength, o = C(e); if (o < 0 || o > n) throw new q("Wrong offset"); if (o + (t = void 0 === t ? n - o : Q(t)) > n) throw new q("Wrong length"); R(this, { type: m, buffer: A, byteLength: t, byteOffset: o, bytes: i.bytes }), r || (this.buffer = A, this.byteLength = t, this.byteOffset = o); })[N], r && (addGetter(L, "byteLength", M), addGetter(K, "buffer", J), addGetter(K, "byteLength", J), addGetter(K, "byteOffset", J)), I(H, { getInt8: function(A) { return get(this, 1, A)[0] << 24 >> 24; }, getUint8: function(A) { return get(this, 1, A)[0]; }, getInt16: function(A) { var e = get(this, 2, A, arguments.length > 1 && arguments[1]); return (e[1] << 8 | e[0]) << 16 >> 16; }, getUint16: function(A) { var e = get(this, 2, A, arguments.length > 1 && arguments[1]); return e[1] << 8 | e[0]; }, getInt32: function(A) { return unpackInt32(get(this, 4, A, arguments.length > 1 && arguments[1])); }, getUint32: function(A) { return unpackInt32(get(this, 4, A, arguments.length > 1 && arguments[1])) >>> 0; }, getFloat32: function(A) { return j(get(this, 4, A, arguments.length > 1 && arguments[1]), 23); }, getFloat64: function(A) { return j(get(this, 8, A, arguments.length > 1 && arguments[1]), 52); }, setInt8: function(A, e) { set(this, 1, A, packInt8, e); }, setUint8: function(A, e) { set(this, 1, A, packInt8, e); }, setInt16: function(A, e) { set(this, 2, A, packInt16, e, arguments.length > 2 && arguments[2]); }, setUint16: function(A, e) { set(this, 2, A, packInt16, e, arguments.length > 2 && arguments[2]); }, setInt32: function(A, e) { set(this, 4, A, packInt32, e, arguments.length > 2 && arguments[2]); }, setUint32: function(A, e) { set(this, 4, A, packInt32, e, arguments.length > 2 && arguments[2]); }, setFloat32: function(A, e) { set(this, 4, A, packFloat32, e, arguments.length > 2 && arguments[2]); }, setFloat64: function(A, e) { set(this, 8, A, packFloat64, e, arguments.length > 2 && arguments[2]); } }); p(L, S), p(K, m), A.exports = { ArrayBuffer: L, DataView: K }; }, 6395: A => { "use strict"; A.exports = !1; }, 6434: (A, e, t) => { "use strict"; var i = e, n = t(2551); i[".google.protobuf.Any"] = { fromObject: function(A) { if (A && A["@type"]) { var e = A["@type"].substring(A["@type"].lastIndexOf("/") + 1), t = this.lookup(e); if (t) { var i = "." === A["@type"].charAt(0) ? A["@type"].slice(1) : A["@type"]; return -1 === i.indexOf("/") && (i = "/" + i), this.create({ type_url: i, value: t.encode(t.fromObject(A)).finish() }); } } return this.fromObject(A); }, toObject: function(A, e) { var t = "", i = ""; if (e && e.json && A.type_url && A.value) { i = A.type_url.substring(A.type_url.lastIndexOf("/") + 1), t = A.type_url.substring(0, A.type_url.lastIndexOf("/") + 1); var r = this.lookup(i); r && (A = r.decode(A.value)); } if (!(A instanceof this.ctor) && A instanceof n) { var o = A.$type.toObject(A, e); return "" === t && (t = "type.googleapis.com/"), i = t + ("." === A.$type.fullName[0] ? A.$type.fullName.slice(1) : A.$type.fullName), o["@type"] = i, o; } return this.toObject(A, e); } }; }, 6449: (A, e, t) => { "use strict"; var i = t(6518), n = t(259), r = t(8981), o = t(6198), a = t(1291), s = t(1469); i({ target: "Array", proto: !0 }, { flat: function() { var A = arguments.length ? arguments[0] : void 0, e = r(this), t = o(e), i = s(e, 0); return i.length = n(i, e, e, t, 0, void 0 === A ? 1 : a(A)), i; } }); }, 6468: (A, e, t) => { "use strict"; var i = t(6518), n = t(2195), r = t(9504), o = t(2796), a = t(6840), s = t(3451), g = t(2652), I = t(679), c = t(4901), u = t(4117), C = t(34), Q = t(9039), B = t(4428), E = t(687), l = t(3167); A.exports = function(A, e, t) { var h = -1 !== A.indexOf("Map"), f = -1 !== A.indexOf("Weak"), d = h ? "set" : "add", y = n[A], w = y && y.prototype, v = y, p = {}, fixMethod = function(A) { var e = r(w[A]); a(w, A, "add" === A ? function(A) { return e(this, 0 === A ? 0 : A), this; } : "delete" === A ? function(A) { return !(f && !C(A)) && e(this, 0 === A ? 0 : A); } : "get" === A ? function(A) { return f && !C(A) ? void 0 : e(this, 0 === A ? 0 : A); } : "has" === A ? function(A) { return !(f && !C(A)) && e(this, 0 === A ? 0 : A); } : function(A, t) { return e(this, 0 === A ? 0 : A, t), this; }); }; if (o(A, !c(y) || !(f || w.forEach && !Q((function() { (new y).entries().next(); }))))) v = t.getConstructor(e, A, h, d), s.enable(); else if (o(A, !0)) { var D = new v, b = D[d](f ? {} : -0, 1) !== D, k = Q((function() { D.has(1); })), S = B((function(A) { new y(A); })), m = !f && Q((function() { for (var A = new y, e = 5; e--; ) A[d](e, e); return !A.has(-0); })); S || ((v = e((function(A, e) { I(A, w); var t = l(new y, A, v); return u(e) || g(e, t[d], { that: t, AS_ENTRIES: h }), t; }))).prototype = w, w.constructor = v), (k || m) && (fixMethod("delete"), fixMethod("has"), h && fixMethod("get")), (m || b) && fixMethod(d), f && w.clear && delete w.clear; } return p[A] = v, i({ global: !0, constructor: !0, forced: v !== y }, p), E(v, A), f || t.setStrong(v, A, h), v; }; }, 6469: (A, e, t) => { "use strict"; var i = t(8227), n = t(2360), r = t(4913).f, o = i("unscopables"), a = Array.prototype; void 0 === a[o] && r(a, o, { configurable: !0, value: n(null) }), A.exports = function(A) { a[o][A] = !0; }; }, 6499: (A, e, t) => { "use strict"; var i = t(6518), n = t(9565), r = t(9306), o = t(6043), a = t(1103), s = t(2652); i({ target: "Promise", stat: !0, forced: t(537) }, { all: function(A) { var e = this, t = o.f(e), i = t.resolve, g = t.reject, I = a((function() { var t = r(e.resolve), o = [], a = 0, I = 1; s(A, (function(A) { var r = a++, s = !1; I++, n(t, e, A).then((function(A) { s || (s = !0, o[r] = A, --I || i(o)); }), g); })), --I || i(o); })); return I.error && g(I.value), t.promise; } }); }, 6518: (A, e, t) => { "use strict"; var i = t(2195), n = t(7347).f, r = t(6699), o = t(6840), a = t(9433), s = t(7740), g = t(2796); A.exports = function(A, e) { var t, I, c, u, C, Q = A.target, B = A.global, E = A.stat; if (t = B ? i : E ? i[Q] || a(Q, {}) : i[Q] && i[Q].prototype) for (I in e) { if (u = e[I], c = A.dontCallGetSet ? (C = n(t, I)) && C.value : t[I], !g(B ? I : Q + (E ? "." : "#") + I, A.forced) && void 0 !== c) { if (typeof u == typeof c) continue; s(u, c); } (A.sham || c && c.sham) && r(u, "sham", !0), o(t, I, u, A); } }; }, 6575: (A, e, t) => { "use strict"; var i = t(9297); A.exports = function(A) { return void 0 !== A && (i(A, "value") || i(A, "writable")); }; }, 6614: (A, e, t) => { "use strict"; var i = t(4644), n = t(8014), r = t(5610), o = i.aTypedArray, a = i.getTypedArrayConstructor; (0, i.exportTypedArrayMethod)("subarray", (function(A, e) { var t = o(this), i = t.length, s = r(A, i); return new (a(t))(t.buffer, t.byteOffset + s * t.BYTES_PER_ELEMENT, n((void 0 === e ? i : r(e, i)) - s)); })); }, 6651: (A, e, t) => { "use strict"; var i = t(4644), n = t(9617).indexOf, r = i.aTypedArray; (0, i.exportTypedArrayMethod)("indexOf", (function(A) { return n(r(this), A, arguments.length > 1 ? arguments[1] : void 0); })); }, 6682: (A, e, t) => { "use strict"; var i = t(9565), n = t(8551), r = t(4901), o = t(4576), a = t(7323), s = TypeError; A.exports = function(A, e) { var t = A.exec; if (r(t)) { var g = i(t, A, e); return null !== g && n(g), g; } if ("RegExp" === o(A)) return i(a, A, e); throw new s("RegExp#exec called on incompatible receiver"); }; }, 6699: (A, e, t) => { "use strict"; var i = t(3724), n = t(4913), r = t(6980); A.exports = i ? function(A, e, t) { return n.f(A, e, r(1, t)); } : function(A, e, t) { return A[e] = t, A; }; }, 6706: (A, e, t) => { "use strict"; var i = t(9504), n = t(9306); A.exports = function(A, e, t) { try { return i(n(Object.getOwnPropertyDescriptor(A, e)[t])); } catch (A) {} }; }, 6761: (A, e, t) => { "use strict"; var i = t(6518), n = t(2195), r = t(9565), o = t(9504), a = t(6395), s = t(3724), g = t(4495), I = t(9039), c = t(9297), u = t(1625), C = t(8551), Q = t(5397), B = t(6969), E = t(655), l = t(6980), h = t(2360), f = t(1072), d = t(8480), y = t(298), w = t(3717), v = t(7347), p = t(4913), D = t(6801), b = t(8773), k = t(6840), S = t(2106), m = t(5745), N = t(6119), G = t(421), M = t(3392), J = t(8227), R = t(1951), U = t(2892), L = t(8242), Y = t(687), K = t(1181), H = t(9213).forEach, x = N("hidden"), O = "Symbol", q = "prototype", T = K.set, P = K.getterFor(O), _ = Object[q], j = n.Symbol, V = j && j[q], Z = n.RangeError, W = n.TypeError, X = n.QObject, z = v.f, $ = p.f, AA = y.f, eA = b.f, tA = o([].push), iA = m("symbols"), nA = m("op-symbols"), rA = m("wks"), oA = !X || !X[q] || !X[q].findChild, fallbackDefineProperty = function(A, e, t) { var i = z(_, e); i && delete _[e], $(A, e, t), i && A !== _ && $(_, e, i); }, aA = s && I((function() { return 7 !== h($({}, "a", { get: function() { return $(this, "a", { value: 7 }).a; } })).a; })) ? fallbackDefineProperty : $, wrap = function(A, e) { var t = iA[A] = h(V); return T(t, { type: O, tag: A, description: e }), s || (t.description = e), t; }, $defineProperty = function(A, e, t) { A === _ && $defineProperty(nA, e, t), C(A); var i = B(e); return C(t), c(iA, i) ? (t.enumerable ? (c(A, x) && A[x][i] && (A[x][i] = !1), t = h(t, { enumerable: l(0, !1) })) : (c(A, x) || $(A, x, l(1, h(null))), A[x][i] = !0), aA(A, i, t)) : $(A, i, t); }, $defineProperties = function(A, e) { C(A); var t = Q(e), i = f(t).concat($getOwnPropertySymbols(t)); return H(i, (function(e) { s && !r($propertyIsEnumerable, t, e) || $defineProperty(A, e, t[e]); })), A; }, $propertyIsEnumerable = function(A) { var e = B(A), t = r(eA, this, e); return !(this === _ && c(iA, e) && !c(nA, e)) && (!(t || !c(this, e) || !c(iA, e) || c(this, x) && this[x][e]) || t); }, $getOwnPropertyDescriptor = function(A, e) { var t = Q(A), i = B(e); if (t !== _ || !c(iA, i) || c(nA, i)) { var n = z(t, i); return !n || !c(iA, i) || c(t, x) && t[x][i] || (n.enumerable = !0), n; } }, $getOwnPropertyNames = function(A) { var e = AA(Q(A)), t = []; return H(e, (function(A) { c(iA, A) || c(G, A) || tA(t, A); })), t; }, $getOwnPropertySymbols = function(A) { var e = A === _, t = AA(e ? nA : Q(A)), i = []; return H(t, (function(A) { !c(iA, A) || e && !c(_, A) || tA(i, iA[A]); })), i; }; g || (k(V = (j = function() { if (u(V, this)) throw new W("Symbol is not a constructor"); var A = arguments.length && void 0 !== arguments[0] ? E(arguments[0]) : void 0, e = M(A), setter = function(A) { var t = void 0 === this ? n : this; t === _ && r(setter, nA, A), c(t, x) && c(t[x], e) && (t[x][e] = !1); var i = l(1, A); try { aA(t, e, i); } catch (A) { if (!(A instanceof Z)) throw A; fallbackDefineProperty(t, e, i); } }; return s && oA && aA(_, e, { configurable: !0, set: setter }), wrap(e, A); })[q], "toString", (function() { return P(this).tag; })), k(j, "withoutSetter", (function(A) { return wrap(M(A), A); })), b.f = $propertyIsEnumerable, p.f = $defineProperty, D.f = $defineProperties, v.f = $getOwnPropertyDescriptor, d.f = y.f = $getOwnPropertyNames, w.f = $getOwnPropertySymbols, R.f = function(A) { return wrap(J(A), A); }, s && (S(V, "description", { configurable: !0, get: function() { return P(this).description; } }), a || k(_, "propertyIsEnumerable", $propertyIsEnumerable, { unsafe: !0 }))), i({ global: !0, constructor: !0, wrap: !0, forced: !g, sham: !g }, { Symbol: j }), H(f(rA), (function(A) { U(A); })), i({ target: O, stat: !0, forced: !g }, { useSetter: function() { oA = !0; }, useSimple: function() { oA = !1; } }), i({ target: "Object", stat: !0, forced: !g, sham: !s }, { create: function(A, e) { return void 0 === e ? h(A) : $defineProperties(h(A), e); }, defineProperty: $defineProperty, defineProperties: $defineProperties, getOwnPropertyDescriptor: $getOwnPropertyDescriptor }), i({ target: "Object", stat: !0, forced: !g }, { getOwnPropertyNames: $getOwnPropertyNames }), L(), Y(j, O), G[x] = !0; }, 6801: (A, e, t) => { "use strict"; var i = t(3724), n = t(8686), r = t(4913), o = t(8551), a = t(5397), s = t(1072); e.f = i && !n ? Object.defineProperties : function(A, e) { o(A); for (var t, i = a(e), n = s(e), g = n.length, I = 0; g > I; ) r.f(A, t = n[I++], i[t]); return A; }; }, 6812: (A, e, t) => { "use strict"; var i = t(4644), n = t(8745), r = t(8379), o = i.aTypedArray; (0, i.exportTypedArrayMethod)("lastIndexOf", (function(A) { var e = arguments.length; return n(r, o(this), e > 1 ? [ A, arguments[1] ] : [ A ]); })); }, 6823: A => { "use strict"; var e = String; A.exports = function(A) { try { return e(A); } catch (A) { return "Object"; } }; }, 6837: A => { "use strict"; var e = TypeError; A.exports = function(A) { if (A > 9007199254740991) throw e("Maximum allowed index exceeded"); return A; }; }, 6840: (A, e, t) => { "use strict"; var i = t(4901), n = t(4913), r = t(283), o = t(9433); A.exports = function(A, e, t, a) { a || (a = {}); var s = a.enumerable, g = void 0 !== a.name ? a.name : e; if (i(t) && r(t, g, a), a.global) s ? A[e] = t : o(e, t); else { try { a.unsafe ? A[e] && (s = !0) : delete A[e]; } catch (A) {} s ? A[e] = t : n.f(A, e, { value: t, enumerable: !1, configurable: !a.nonConfigurable, writable: !a.nonWritable }); } return A; }; }, 6910: (A, e, t) => { "use strict"; var i = t(6518), n = t(9504), r = t(9306), o = t(8981), a = t(6198), s = t(4606), g = t(655), I = t(9039), c = t(4488), u = t(4598), C = t(3709), Q = t(3763), B = t(9519), E = t(3607), l = [], h = n(l.sort), f = n(l.push), d = I((function() { l.sort(void 0); })), y = I((function() { l.sort(null); })), w = u("sort"), v = !I((function() { if (B) return B < 70; if (!(C && C > 3)) { if (Q) return !0; if (E) return E < 603; var A, e, t, i, n = ""; for (A = 65; A < 76; A++) { switch (e = String.fromCharCode(A), A) { case 66: case 69: case 70: case 72: t = 3; break; case 68: case 71: t = 4; break; default: t = 2; } for (i = 0; i < 47; i++) l.push({ k: e + i, v: t }); } for (l.sort((function(A, e) { return e.v - A.v; })), i = 0; i < l.length; i++) e = l[i].k.charAt(0), n.charAt(n.length - 1) !== e && (n += e); return "DGBEFHACIJK" !== n; } })); i({ target: "Array", proto: !0, forced: d || !y || !w || !v }, { sort: function(A) { void 0 !== A && r(A); var e = o(this); if (v) return void 0 === A ? h(e) : h(e, A); var t, i, n = [], I = a(e); for (i = 0; i < I; i++) i in e && f(n, e[i]); for (c(n, function(A) { return function(e, t) { return void 0 === t ? -1 : void 0 === e ? 1 : void 0 !== A ? +A(e, t) || 0 : g(e) > g(t) ? 1 : -1; }; }(A)), t = a(n), i = 0; i < t; ) e[i] = n[i++]; for (;i < I; ) s(e, i++); return e; } }); }, 6933: (A, e, t) => { "use strict"; var i = t(9504), n = t(4376), r = t(4901), o = t(4576), a = t(655), s = i([].push); A.exports = function(A) { if (r(A)) return A; if (n(A)) { for (var e = A.length, t = [], i = 0; i < e; i++) { var g = A[i]; "string" == typeof g ? s(t, g) : "number" != typeof g && "Number" !== o(g) && "String" !== o(g) || s(t, a(g)); } var I = t.length, c = !0; return function(A, e) { if (c) return c = !1, e; if (n(this)) return e; for (var i = 0; i < I; i++) if (t[i] === A) return e; }; } }; }, 6938: (A, e, t) => { "use strict"; var i = t(2360), n = t(2106), r = t(6279), o = t(6080), a = t(679), s = t(4117), g = t(2652), I = t(1088), c = t(2529), u = t(7633), C = t(3724), Q = t(3451).fastKey, B = t(1181), E = B.set, l = B.getterFor; A.exports = { getConstructor: function(A, e, t, I) { var c = A((function(A, n) { a(A, u), E(A, { type: e, index: i(null), first: null, last: null, size: 0 }), C || (A.size = 0), s(n) || g(n, A[I], { that: A, AS_ENTRIES: t }); })), u = c.prototype, B = l(e), define = function(A, e, t) { var i, n, r = B(A), o = getEntry(A, e); return o ? o.value = t : (r.last = o = { index: n = Q(e, !0), key: e, value: t, previous: i = r.last, next: null, removed: !1 }, r.first || (r.first = o), i && (i.next = o), C ? r.size++ : A.size++, "F" !== n && (r.index[n] = o)), A; }, getEntry = function(A, e) { var t, i = B(A), n = Q(e); if ("F" !== n) return i.index[n]; for (t = i.first; t; t = t.next) if (t.key === e) return t; }; return r(u, { clear: function() { for (var A = B(this), e = A.first; e; ) e.removed = !0, e.previous && (e.previous = e.previous.next = null), e = e.next; A.first = A.last = null, A.index = i(null), C ? A.size = 0 : this.size = 0; }, "delete": function(A) { var e = this, t = B(e), i = getEntry(e, A); if (i) { var n = i.next, r = i.previous; delete t.index[i.index], i.removed = !0, r && (r.next = n), n && (n.previous = r), t.first === i && (t.first = n), t.last === i && (t.last = r), C ? t.size-- : e.size--; } return !!i; }, forEach: function(A) { for (var e, t = B(this), i = o(A, arguments.length > 1 ? arguments[1] : void 0); e = e ? e.next : t.first; ) for (i(e.value, e.key, this); e && e.removed; ) e = e.previous; }, has: function(A) { return !!getEntry(this, A); } }), r(u, t ? { get: function(A) { var e = getEntry(this, A); return e && e.value; }, set: function(A, e) { return define(this, 0 === A ? 0 : A, e); } } : { add: function(A) { return define(this, A = 0 === A ? 0 : A, A); } }), C && n(u, "size", { configurable: !0, get: function() { return B(this).size; } }), c; }, setStrong: function(A, e, t) { var i = e + " Iterator", n = l(e), r = l(i); I(A, e, (function(A, e) { E(this, { type: i, target: A, state: n(A), kind: e, last: null }); }), (function() { for (var A = r(this), e = A.kind, t = A.last; t && t.removed; ) t = t.previous; return A.target && (A.last = t = t ? t.next : A.state.first) ? c("keys" === e ? t.key : "values" === e ? t.value : [ t.key, t.value ], !1) : (A.target = null, c(void 0, !0)); }), t ? "entries" : "values", !t, !0), u(e); } }; }, 6955: (A, e, t) => { "use strict"; var i = t(2140), n = t(4901), r = t(4576), o = t(8227)("toStringTag"), a = Object, s = "Arguments" === r(function() { return arguments; }()); A.exports = i ? r : function(A) { var e, t, i; return void 0 === A ? "Undefined" : null === A ? "Null" : "string" == typeof (t = function(A, e) { try { return A[e]; } catch (A) {} }(e = a(A), o)) ? t : s ? r(e) : "Object" === (i = r(e)) && n(e.callee) ? "Arguments" : i; }; }, 6969: (A, e, t) => { "use strict"; var i = t(2777), n = t(757); A.exports = function(A) { var e = i(A, "string"); return n(e) ? e : e + ""; }; }, 6980: A => { "use strict"; A.exports = function(A, e) { return { enumerable: !(1 & A), configurable: !(2 & A), writable: !(4 & A), value: e }; }; }, 7029: (A, e, t) => { "use strict"; var i = t(8981), n = t(5610), r = t(6198), o = t(4606), a = Math.min; A.exports = [].copyWithin || function(A, e) { var t = i(this), s = r(t), g = n(A, s), I = n(e, s), c = arguments.length > 2 ? arguments[2] : void 0, u = a((void 0 === c ? s : n(c, s)) - I, s - g), C = 1; for (I < g && g < I + u && (C = -1, I += u - 1, g += u - 1); u-- > 0; ) I in t ? t[g] = t[I] : o(t, g), g += C, I += C; return t; }; }, 7040: (A, e, t) => { "use strict"; var i = t(4495); A.exports = i && !Symbol.sham && "symbol" == typeof Symbol.iterator; }, 7055: (A, e, t) => { "use strict"; var i = t(9504), n = t(9039), r = t(4576), o = Object, a = i("".split); A.exports = n((function() { return !o("z").propertyIsEnumerable(0); })) ? function(A) { return "String" === r(A) ? a(A, "") : o(A); } : o; }, 7208: (A, e, t) => { "use strict"; var i = t(6518), n = t(9565); i({ target: "URL", proto: !0, enumerable: !0 }, { toJSON: function() { return n(URL.prototype.toString, this); } }); }, 7209: (A, e, t) => { "use strict"; A.exports = ReflectionObject, ReflectionObject.className = "ReflectionObject"; var i, n = t(3262); function ReflectionObject(A, e) { if (!n.isString(A)) throw TypeError("name must be a string"); if (e && !n.isObject(e)) throw TypeError("options must be an object"); this.options = e, this.parsedOptions = null, this.name = A, this.parent = null, this.resolved = !1, this.comment = null, this.filename = null; } Object.defineProperties(ReflectionObject.prototype, { root: { get: function() { for (var A = this; null !== A.parent; ) A = A.parent; return A; } }, fullName: { get: function() { for (var A = [ this.name ], e = this.parent; e; ) A.unshift(e.name), e = e.parent; return A.join("."); } } }), ReflectionObject.prototype.toJSON = function() { throw Error(); }, ReflectionObject.prototype.onAdd = function(A) { this.parent && this.parent !== A && this.parent.remove(this), this.parent = A, this.resolved = !1; var e = A.root; e instanceof i && e._handleAdd(this); }, ReflectionObject.prototype.onRemove = function(A) { var e = A.root; e instanceof i && e._handleRemove(this), this.parent = null, this.resolved = !1; }, ReflectionObject.prototype.resolve = function() { return this.resolved || this.root instanceof i && (this.resolved = !0), this; }, ReflectionObject.prototype.getOption = function(A) { if (this.options) return this.options[A]; }, ReflectionObject.prototype.setOption = function(A, e, t) { return t && this.options && void 0 !== this.options[A] || ((this.options || (this.options = {}))[A] = e), this; }, ReflectionObject.prototype.setParsedOption = function(A, e, t) { this.parsedOptions || (this.parsedOptions = []); var i = this.parsedOptions; if (t) { var r = i.find((function(e) { return Object.prototype.hasOwnProperty.call(e, A); })); if (r) { var o = r[A]; n.setProperty(o, t, e); } else (r = {})[A] = n.setProperty({}, t, e), i.push(r); } else { var a = {}; a[A] = e, i.push(a); } return this; }, ReflectionObject.prototype.setOptions = function(A, e) { if (A) for (var t = Object.keys(A), i = 0; i < t.length; ++i) this.setOption(t[i], A[t[i]], e); return this; }, ReflectionObject.prototype.toString = function() { var A = this.constructor.className, e = this.fullName; return e.length ? A + " " + e : A; }, ReflectionObject._configure = function(A) { i = A; }; }, 7301: (A, e, t) => { "use strict"; var i = t(4644), n = t(9213).some, r = i.aTypedArray; (0, i.exportTypedArrayMethod)("some", (function(A) { return n(r(this), A, arguments.length > 1 ? arguments[1] : void 0); })); }, 7323: (A, e, t) => { "use strict"; var i, n, r = t(9565), o = t(9504), a = t(655), s = t(7979), g = t(8429), I = t(5745), c = t(2360), u = t(1181).get, C = t(3635), Q = t(8814), B = I("native-string-replace", String.prototype.replace), E = RegExp.prototype.exec, l = E, h = o("".charAt), f = o("".indexOf), d = o("".replace), y = o("".slice), w = (n = /b*/g, r(E, i = /a/, "a"), r(E, n, "a"), 0 !== i.lastIndex || 0 !== n.lastIndex), v = g.BROKEN_CARET, p = void 0 !== /()??/.exec("")[1]; (w || p || v || C || Q) && (l = function(A) { var e, t, i, n, o, g, I, C = this, Q = u(C), D = a(A), b = Q.raw; if (b) return b.lastIndex = C.lastIndex, e = r(l, b, D), C.lastIndex = b.lastIndex, e; var k = Q.groups, S = v && C.sticky, m = r(s, C), N = C.source, G = 0, M = D; if (S && (m = d(m, "y", ""), -1 === f(m, "g") && (m += "g"), M = y(D, C.lastIndex), C.lastIndex > 0 && (!C.multiline || C.multiline && "\n" !== h(D, C.lastIndex - 1)) && (N = "(?: " + N + ")", M = " " + M, G++), t = new RegExp("^(?:" + N + ")", m)), p && (t = new RegExp("^" + N + "$(?!\\s)", m)), w && (i = C.lastIndex), n = r(E, S ? t : C, M), S ? n ? (n.input = y(n.input, G), n[0] = y(n[0], G), n.index = C.lastIndex, C.lastIndex += n[0].length) : C.lastIndex = 0 : w && n && (C.lastIndex = C.global ? n.index + n[0].length : i), p && n && n.length > 1 && r(B, n[0], t, (function() { for (o = 1; o < arguments.length - 2; o++) void 0 === arguments[o] && (n[o] = void 0); })), n && k) for (n.groups = g = c(null), o = 0; o < k.length; o++) g[(I = k[o])[0]] = n[I[1]]; return n; }), A.exports = l; }, 7337: (A, e, t) => { "use strict"; var i = t(6518), n = t(9504), r = t(5610), o = RangeError, a = String.fromCharCode, s = String.fromCodePoint, g = n([].join); i({ target: "String", stat: !0, arity: 1, forced: !!s && 1 !== s.length }, { fromCodePoint: function(A) { for (var e, t = [], i = arguments.length, n = 0; i > n; ) { if (e = +arguments[n++], r(e, 1114111) !== e) throw new o(e + " is not a valid code point"); t[n] = e < 65536 ? a(e) : a(55296 + ((e -= 65536) >> 10), e % 1024 + 56320); } return g(t, ""); } }); }, 7347: (A, e, t) => { "use strict"; var i = t(3724), n = t(9565), r = t(8773), o = t(6980), a = t(5397), s = t(6969), g = t(9297), I = t(5917), c = Object.getOwnPropertyDescriptor; e.f = i ? c : function(A, e) { if (A = a(A), e = s(e), I) try { return c(A, e); } catch (A) {} if (g(A, e)) return o(!n(r.f, A, e), A[e]); }; }, 7400: A => { "use strict"; A.exports = { CSSRuleList: 0, CSSStyleDeclaration: 0, CSSValueList: 0, ClientRectList: 0, DOMRectList: 0, DOMStringList: 0, DOMTokenList: 1, DataTransferItemList: 0, FileList: 0, HTMLAllCollection: 0, HTMLCollection: 0, HTMLFormElement: 0, HTMLSelectElement: 0, MediaList: 0, MimeTypeArray: 0, NamedNodeMap: 0, NodeList: 1, PaintRequestList: 0, Plugin: 0, PluginArray: 0, SVGLengthList: 0, SVGNumberList: 0, SVGPathSegList: 0, SVGPointList: 0, SVGStringList: 0, SVGTransformList: 0, SourceBufferList: 0, StyleSheetList: 0, TextTrackCueList: 0, TextTrackList: 0, TouchList: 0 }; }, 7416: (A, e, t) => { "use strict"; var i = t(9039), n = t(8227), r = t(3724), o = t(6395), a = n("iterator"); A.exports = !i((function() { var A = new URL("b?a=1&b=2&c=3", "https://a"), e = A.searchParams, t = new URLSearchParams("a=1&a=2&b=3"), i = ""; return A.pathname = "c%20d", e.forEach((function(A, t) { e.delete("b"), i += t + A; })), t.delete("a", 2), t.delete("b", void 0), o && (!A.toJSON || !t.has("a", 1) || t.has("a", 2) || !t.has("a", void 0) || t.has("b")) || !e.size && (o || !r) || !e.sort || "https://a/c%20d?a=1&c=3" !== A.href || "3" !== e.get("c") || "a=1" !== String(new URLSearchParams("?a=1")) || !e[a] || "a" !== new URL("https://a@b").username || "b" !== new URLSearchParams(new URLSearchParams("a=b")).get("a") || "xn--e1aybc" !== new URL("https://тест").host || "#%D0%B1" !== new URL("https://a#б").hash || "a1c3" !== i || "x" !== new URL("https://x", void 0).host; })); }, 7433: (A, e, t) => { "use strict"; var i = t(4376), n = t(3517), r = t(34), o = t(8227)("species"), a = Array; A.exports = function(A) { var e; return i(A) && (e = A.constructor, (n(e) && (e === a || i(e.prototype)) || r(e) && null === (e = e[o])) && (e = void 0)), void 0 === e ? a : e; }; }, 7452: A => { "use strict"; A.exports = "\t\n\v\f\r \u2028\u2029\ufeff"; }, 7476: (A, e, t) => { "use strict"; var i = t(4576), n = t(9504); A.exports = function(A) { if ("Function" === i(A)) return n(A); }; }, 7495: (A, e, t) => { "use strict"; var i = t(6518), n = t(7323); i({ target: "RegExp", proto: !0, forced: /./.exec !== n }, { exec: n }); }, 7595: (A, e, t) => { "use strict"; A.exports = Service; var i = t(3610); function Service(A, e, t) { if ("function" != typeof A) throw TypeError("rpcImpl must be a function"); i.EventEmitter.call(this), this.rpcImpl = A, this.requestDelimited = Boolean(e), this.responseDelimited = Boolean(t); } (Service.prototype = Object.create(i.EventEmitter.prototype)).constructor = Service, Service.prototype.rpcCall = function rpcCall(A, e, t, n, r) { if (!n) throw TypeError("request must be specified"); var o = this; if (!r) return i.asPromise(rpcCall, o, A, e, t, n); if (o.rpcImpl) try { return o.rpcImpl(A, e[o.requestDelimited ? "encodeDelimited" : "encode"](n).finish(), (function(e, i) { if (e) return o.emit("error", e, A), r(e); if (null !== i) { if (!(i instanceof t)) try { i = t[o.responseDelimited ? "decodeDelimited" : "decode"](i); } catch (e) { return o.emit("error", e, A), r(e); } return o.emit("data", i, A), r(null, i); } o.end(!0); })); } catch (e) { return o.emit("error", e, A), void setTimeout((function() { r(e); }), 0); } else setTimeout((function() { r(Error("already ended")); }), 0); }, Service.prototype.end = function(A) { return this.rpcImpl && (A || this.rpcImpl(null, null, null), this.rpcImpl = null, this.emit("end").off()), this; }; }, 7629: (A, e, t) => { "use strict"; var i = t(6395), n = t(2195), r = t(9433), o = "__core-js_shared__", a = A.exports = n[o] || r(o, {}); (a.versions || (a.versions = [])).push({ version: "3.41.0", mode: i ? "pure" : "global", copyright: "© 2014-2025 Denis Pushkarev (zloirock.ru)", license: "https://github.com/zloirock/core-js/blob/v3.41.0/LICENSE", source: "https://github.com/zloirock/core-js" }); }, 7633: (A, e, t) => { "use strict"; var i = t(7751), n = t(2106), r = t(8227), o = t(3724), a = r("species"); A.exports = function(A) { var e = i(A); o && e && !e[a] && n(e, a, { configurable: !0, get: function() { return this; } }); }; }, 7657: (A, e, t) => { "use strict"; var i, n, r, o = t(9039), a = t(4901), s = t(34), g = t(2360), I = t(2787), c = t(6840), u = t(8227), C = t(6395), Q = u("iterator"), B = !1; [].keys && ("next" in (r = [].keys()) ? (n = I(I(r))) !== Object.prototype && (i = n) : B = !0), !s(i) || o((function() { var A = {}; return i[Q].call(A) !== A; })) ? i = {} : C && (i = g(i)), a(i[Q]) || c(i, Q, (function() { return this; })), A.exports = { IteratorPrototype: i, BUGGY_SAFARI_ITERATORS: B }; }, 7680: (A, e, t) => { "use strict"; var i = t(9504); A.exports = i([].slice); }, 7696: (A, e, t) => { "use strict"; var i = t(1291), n = t(8014), r = RangeError; A.exports = function(A) { if (void 0 === A) return 0; var e = i(A), t = n(e); if (e !== t) throw new r("Wrong length or index"); return t; }; }, 7728: (A, e, t) => { "use strict"; A.exports = function(A) { var e = r.codegen([ "r", "l" ], A.name + "$decode")("if(!(r instanceof Reader))")("r=Reader.create(r)")("var c=l===undefined?r.len:r.pos+l,m=new this.ctor" + (A.fieldsArray.filter((function(A) { return A.map; })).length ? ",k,value" : ""))("while(r.pos<c){")("var t=r.uint32()"); A.group && e("if((t&7)===4)")("break"), e("switch(t>>>3){"); for (var t = 0; t < A.fieldsArray.length; ++t) { var o = A._fieldsArray[t].resolve(), a = o.resolvedType instanceof i ? "int32" : o.type, s = "m" + r.safeProp(o.name); e("case %i: {", o.id), o.map ? (e("if(%s===util.emptyObject)", s)("%s={}", s)("var c2 = r.uint32()+r.pos"), void 0 !== n.defaults[o.keyType] ? e("k=%j", n.defaults[o.keyType]) : e("k=null"), void 0 !== n.defaults[a] ? e("value=%j", n.defaults[a]) : e("value=null"), e("while(r.pos<c2){")("var tag2=r.uint32()")("switch(tag2>>>3){")("case 1: k=r.%s(); break", o.keyType)("case 2:"), void 0 === n.basic[a] ? e("value=types[%i].decode(r,r.uint32())", t) : e("value=r.%s()", a), e("break")("default:")("r.skipType(tag2&7)")("break")("}")("}"), void 0 !== n.long[o.keyType] ? e('%s[typeof k==="object"?util.longToHash(k):k]=value', s) : e("%s[k]=value", s)) : o.repeated ? (e("if(!(%s&&%s.length))", s, s)("%s=[]", s), void 0 !== n.packed[a] && e("if((t&7)===2){")("var c2=r.uint32()+r.pos")("while(r.pos<c2)")("%s.push(r.%s())", s, a)("}else"), void 0 === n.basic[a] ? e(o.resolvedType.group ? "%s.push(types[%i].decode(r))" : "%s.push(types[%i].decode(r,r.uint32()))", s, t) : e("%s.push(r.%s())", s, a)) : void 0 === n.basic[a] ? e(o.resolvedType.group ? "%s=types[%i].decode(r)" : "%s=types[%i].decode(r,r.uint32())", s, t) : e("%s=r.%s()", s, a), e("break")("}"); } for (e("default:")("r.skipType(t&7)")("break")("}")("}"), t = 0; t < A._fieldsArray.length; ++t) { var g = A._fieldsArray[t]; g.required && e("if(!m.hasOwnProperty(%j))", g.name)("throw util.ProtocolError(%j,{instance:m})", missing(g)); } return e("return m"); }; var i = t(5643), n = t(361), r = t(3262); function missing(A) { return "missing required '" + A.name + "'"; } }, 7740: (A, e, t) => { "use strict"; var i = t(9297), n = t(5031), r = t(7347), o = t(4913); A.exports = function(A, e, t) { for (var a = n(e), s = o.f, g = r.f, I = 0; I < a.length; I++) { var c = a[I]; i(A, c) || t && i(t, c) || s(A, c, g(e, c)); } }; }, 7743: (A, e, t) => { "use strict"; var i = t(6518), n = t(9565), r = t(9306), o = t(6043), a = t(1103), s = t(2652); i({ target: "Promise", stat: !0, forced: t(537) }, { race: function(A) { var e = this, t = o.f(e), i = t.reject, g = a((function() { var o = r(e.resolve); s(A, (function(A) { n(o, e, A).then(t.resolve, i); })); })); return g.error && i(g.value), t.promise; } }); }, 7750: (A, e, t) => { "use strict"; var i = t(4117), n = TypeError; A.exports = function(A) { if (i(A)) throw new n("Can't call method on " + A); return A; }; }, 7751: (A, e, t) => { "use strict"; var i = t(2195), n = t(4901); A.exports = function(A, e) { return arguments.length < 2 ? (t = i[A], n(t) ? t : void 0) : i[A] && i[A][e]; var t; }; }, 7764: (A, e, t) => { "use strict"; var i = t(8183).charAt, n = t(655), r = t(1181), o = t(1088), a = t(2529), s = "String Iterator", g = r.set, I = r.getterFor(s); o(String, "String", (function(A) { g(this, { type: s, string: n(A), index: 0 }); }), (function() { var A, e = I(this), t = e.string, n = e.index; return n >= t.length ? a(void 0, !0) : (A = i(t, n), e.index += A.length, a(A, !1)); })); }, 7782: A => { "use strict"; A.exports = Math.sign || function(A) { var e = +A; return 0 === e || e != e ? e : e < 0 ? -1 : 1; }; }, 7811: A => { "use strict"; A.exports = "undefined" != typeof ArrayBuffer && "undefined" != typeof DataView; }, 7812: (A, e, t) => { "use strict"; var i = t(6518), n = t(9297), r = t(757), o = t(6823), a = t(5745), s = t(1296), g = a("symbol-to-string-registry"); i({ target: "Symbol", stat: !0, forced: !s }, { keyFor: function(A) { if (!r(A)) throw new TypeError(o(A) + " is not a symbol"); if (n(g, A)) return g[A]; } }); }, 7829: (A, e, t) => { "use strict"; var i = t(8183).charAt; A.exports = function(A, e, t) { return e + (t ? i(A, e).length : 1); }; }, 7860: (A, e, t) => { "use strict"; var i = t(2839); A.exports = /web0s(?!.*chrome)/i.test(i); }, 7882: (A, e, t) => { "use strict"; A.exports = Type; var i = t(8923); ((Type.prototype = Object.create(i.prototype)).constructor = Type).className = "Type"; var n = t(5643), r = t(1457), o = t(1344), a = t(8252), s = t(9687), g = t(2551), I = t(6237), c = t(3449), u = t(3262), C = t(1080), Q = t(7728), B = t(420), E = t(744), l = t(6434); function Type(A, e) { i.call(this, A, e), this.fields = {}, this.oneofs = void 0, this.extensions = void 0, this.reserved = void 0, this.group = void 0, this._fieldsById = null, this._fieldsArray = null, this._oneofsArray = null, this._ctor = null; } function clearCache(A) { return A._fieldsById = A._fieldsArray = A._oneofsArray = null, delete A.encode, delete A.decode, delete A.verify, A; } Object.defineProperties(Type.prototype, { fieldsById: { get: function() { if (this._fieldsById) return this._fieldsById; this._fieldsById = {}; for (var A = Object.keys(this.fields), e = 0; e < A.length; ++e) { var t = this.fields[A[e]], i = t.id; if (this._fieldsById[i]) throw Error("duplicate id " + i + " in " + this); this._fieldsById[i] = t; } return this._fieldsById; } }, fieldsArray: { get: function() { return this._fieldsArray || (this._fieldsArray = u.toArray(this.fields)); } }, oneofsArray: { get: function() { return this._oneofsArray || (this._oneofsArray = u.toArray(this.oneofs)); } }, ctor: { get: function() { return this._ctor || (this.ctor = Type.generateConstructor(this)()); }, set: function(A) { var e = A.prototype; e instanceof g || ((A.prototype = new g).constructor = A, u.merge(A.prototype, e)), A.$type = A.prototype.$type = this, u.merge(A, g, !0), this._ctor = A; for (var t = 0; t < this.fieldsArray.length; ++t) this._fieldsArray[t].resolve(); var i = {}; for (t = 0; t < this.oneofsArray.length; ++t) i[this._oneofsArray[t].resolve().name] = { get: u.oneOfGetter(this._oneofsArray[t].oneof), set: u.oneOfSetter(this._oneofsArray[t].oneof) }; t && Object.defineProperties(A.prototype, i); } } }), Type.generateConstructor = function(A) { for (var e, t = u.codegen([ "p" ], A.name), i = 0; i < A.fieldsArray.length; ++i) (e = A._fieldsArray[i]).map ? t("this%s={}", u.safeProp(e.name)) : e.repeated && t("this%s=[]", u.safeProp(e.name)); return t("if(p)for(var ks=Object.keys(p),i=0;i<ks.length;++i)if(p[ks[i]]!=null)")("this[ks[i]]=p[ks[i]]"); }, Type.fromJSON = function(A, e) { var t = new Type(A, e.options); t.extensions = e.extensions, t.reserved = e.reserved; for (var g = Object.keys(e.fields), I = 0; I < g.length; ++I) t.add((void 0 !== e.fields[g[I]].keyType ? a.fromJSON : o.fromJSON)(g[I], e.fields[g[I]])); if (e.oneofs) for (g = Object.keys(e.oneofs), I = 0; I < g.length; ++I) t.add(r.fromJSON(g[I], e.oneofs[g[I]])); if (e.nested) for (g = Object.keys(e.nested), I = 0; I < g.length; ++I) { var c = e.nested[g[I]]; t.add((void 0 !== c.id ? o.fromJSON : void 0 !== c.fields ? Type.fromJSON : void 0 !== c.values ? n.fromJSON : void 0 !== c.methods ? s.fromJSON : i.fromJSON)(g[I], c)); } return e.extensions && e.extensions.length && (t.extensions = e.extensions), e.reserved && e.reserved.length && (t.reserved = e.reserved), e.group && (t.group = !0), e.comment && (t.comment = e.comment), t; }, Type.prototype.toJSON = function(A) { var e = i.prototype.toJSON.call(this, A), t = !!A && Boolean(A.keepComments); return u.toObject([ "options", e && e.options || void 0, "oneofs", i.arrayToJSON(this.oneofsArray, A), "fields", i.arrayToJSON(this.fieldsArray.filter((function(A) { return !A.declaringField; })), A) || {}, "extensions", this.extensions && this.extensions.length ? this.extensions : void 0, "reserved", this.reserved && this.reserved.length ? this.reserved : void 0, "group", this.group || void 0, "nested", e && e.nested || void 0, "comment", t ? this.comment : void 0 ]); }, Type.prototype.resolveAll = function() { for (var A = this.fieldsArray, e = 0; e < A.length; ) A[e++].resolve(); var t = this.oneofsArray; for (e = 0; e < t.length; ) t[e++].resolve(); return i.prototype.resolveAll.call(this); }, Type.prototype.get = function(A) { return this.fields[A] || this.oneofs && this.oneofs[A] || this.nested && this.nested[A] || null; }, Type.prototype.add = function(A) { if (this.get(A.name)) throw Error("duplicate name '" + A.name + "' in " + this); if (A instanceof o && void 0 === A.extend) { if (this._fieldsById ? this._fieldsById[A.id] : this.fieldsById[A.id]) throw Error("duplicate id " + A.id + " in " + this); if (this.isReservedId(A.id)) throw Error("id " + A.id + " is reserved in " + this); if (this.isReservedName(A.name)) throw Error("name '" + A.name + "' is reserved in " + this); return A.parent && A.parent.remove(A), this.fields[A.name] = A, A.message = this, A.onAdd(this), clearCache(this); } return A instanceof r ? (this.oneofs || (this.oneofs = {}), this.oneofs[A.name] = A, A.onAdd(this), clearCache(this)) : i.prototype.add.call(this, A); }, Type.prototype.remove = function(A) { if (A instanceof o && void 0 === A.extend) { if (!this.fields || this.fields[A.name] !== A) throw Error(A + " is not a member of " + this); return delete this.fields[A.name], A.parent = null, A.onRemove(this), clearCache(this); } if (A instanceof r) { if (!this.oneofs || this.oneofs[A.name] !== A) throw Error(A + " is not a member of " + this); return delete this.oneofs[A.name], A.parent = null, A.onRemove(this), clearCache(this); } return i.prototype.remove.call(this, A); }, Type.prototype.isReservedId = function(A) { return i.isReservedId(this.reserved, A); }, Type.prototype.isReservedName = function(A) { return i.isReservedName(this.reserved, A); }, Type.prototype.create = function(A) { return new this.ctor(A); }, Type.prototype.setup = function() { for (var A = this.fullName, e = [], t = 0; t < this.fieldsArray.length; ++t) e.push(this._fieldsArray[t].resolve().resolvedType); this.encode = C(this)({ Writer: c, types: e, util: u }), this.decode = Q(this)({ Reader: I, types: e, util: u }), this.verify = B(this)({ types: e, util: u }), this.fromObject = E.fromObject(this)({ types: e, util: u }), this.toObject = E.toObject(this)({ types: e, util: u }); var i = l[A]; if (i) { var n = Object.create(this); n.fromObject = this.fromObject, this.fromObject = i.fromObject.bind(n), n.toObject = this.toObject, this.toObject = i.toObject.bind(n); } return this; }, Type.prototype.encode = function(A, e) { return this.setup().encode(A, e); }, Type.prototype.encodeDelimited = function(A, e) { return this.encode(A, e && e.len ? e.fork() : e).ldelim(); }, Type.prototype.decode = function(A, e) { return this.setup().decode(A, e); }, Type.prototype.decodeDelimited = function(A) { return A instanceof I || (A = I.create(A)), this.decode(A, A.uint32()); }, Type.prototype.verify = function(A) { return this.setup().verify(A); }, Type.prototype.fromObject = function(A) { return this.setup().fromObject(A); }, Type.prototype.toObject = function(A, e) { return this.setup().toObject(A, e); }, Type.d = function(A) { return function(e) { u.decorateType(e, A); }; }; }, 7916: (A, e, t) => { "use strict"; var i = t(6080), n = t(9565), r = t(8981), o = t(6319), a = t(4209), s = t(3517), g = t(6198), I = t(4659), c = t(81), u = t(851), C = Array; A.exports = function(A) { var e = r(A), t = s(this), Q = arguments.length, B = Q > 1 ? arguments[1] : void 0, E = void 0 !== B; E && (B = i(B, Q > 2 ? arguments[2] : void 0)); var l, h, f, d, y, w, v = u(e), p = 0; if (!v || this === C && a(v)) for (l = g(e), h = t ? new this(l) : C(l); l > p; p++) w = E ? B(e[p], p) : e[p], I(h, p, w); else for (h = t ? new this : [], y = (d = c(e, v)).next; !(f = n(y, d)).done; p++) w = E ? o(d, B, [ f.value, p ], !0) : f.value, I(h, p, w); return h.length = p, h; }; }, 7979: (A, e, t) => { "use strict"; var i = t(8551); A.exports = function() { var A = i(this), e = ""; return A.hasIndices && (e += "d"), A.global && (e += "g"), A.ignoreCase && (e += "i"), A.multiline && (e += "m"), A.dotAll && (e += "s"), A.unicode && (e += "u"), A.unicodeSets && (e += "v"), A.sticky && (e += "y"), e; }; }, 8014: (A, e, t) => { "use strict"; var i = t(1291), n = Math.min; A.exports = function(A) { var e = i(A); return e > 0 ? n(e, 9007199254740991) : 0; }; }, 8045: A => { "use strict"; A.exports = function(A, e) { for (var t = new Array(arguments.length - 1), i = 0, n = 2, r = !0; n < arguments.length; ) t[i++] = arguments[n++]; return new Promise((function(n, o) { t[i] = function(A) { if (r) if (r = !1, A) o(A); else { for (var e = new Array(arguments.length - 1), t = 0; t < e.length; ) e[t++] = arguments[t]; n.apply(null, e); } }; try { A.apply(e || null, t); } catch (A) { r && (r = !1, o(A)); } })); }; }, 8130: (A, e, t) => { "use strict"; var i = t(6518), n = t(6395), r = t(3724), o = t(2195), a = t(9167), s = t(9504), g = t(2796), I = t(9297), c = t(3167), u = t(1625), C = t(757), Q = t(2777), B = t(9039), E = t(8480).f, l = t(7347).f, h = t(4913).f, f = t(1240), d = t(3802).trim, y = "Number", w = o[y], v = a[y], p = w.prototype, D = o.TypeError, b = s("".slice), k = s("".charCodeAt), S = g(y, !w(" 0o1") || !w("0b1") || w("+0x1")), NumberWrapper = function(A) { var e, t = arguments.length < 1 ? 0 : w(function(A) { var e = Q(A, "number"); return "bigint" == typeof e ? e : function(A) { var e, t, i, n, r, o, a, s, g = Q(A, "number"); if (C(g)) throw new D("Cannot convert a Symbol value to a number"); if ("string" == typeof g && g.length > 2) if (g = d(g), 43 === (e = k(g, 0)) || 45 === e) { if (88 === (t = k(g, 2)) || 120 === t) return NaN; } else if (48 === e) { switch (k(g, 1)) { case 66: case 98: i = 2, n = 49; break; case 79: case 111: i = 8, n = 55; break; default: return +g; } for (o = (r = b(g, 2)).length, a = 0; a < o; a++) if ((s = k(r, a)) < 48 || s > n) return NaN; return parseInt(r, i); } return +g; }(e); }(A)); return u(p, e = this) && B((function() { f(e); })) ? c(Object(t), this, NumberWrapper) : t; }; NumberWrapper.prototype = p, S && !n && (p.constructor = NumberWrapper), i({ global: !0, constructor: !0, wrap: !0, forced: S }, { Number: NumberWrapper }); var copyConstructorProperties = function(A, e) { for (var t, i = r ? E(e) : "MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,isFinite,isInteger,isNaN,isSafeInteger,parseFloat,parseInt,fromString,range".split(","), n = 0; i.length > n; n++) I(e, t = i[n]) && !I(A, t) && h(A, t, l(e, t)); }; n && v && copyConstructorProperties(a[y], v), (S || n) && copyConstructorProperties(a[y], w); }, 8156: (A, e, t) => { "use strict"; var i = t(6518), n = t(533).start; i({ target: "String", proto: !0, forced: t(3063) }, { padStart: function(A) { return n(this, A, arguments.length > 1 ? arguments[1] : void 0); } }); }, 8183: (A, e, t) => { "use strict"; var i = t(9504), n = t(1291), r = t(655), o = t(7750), a = i("".charAt), s = i("".charCodeAt), g = i("".slice), createMethod = function(A) { return function(e, t) { var i, I, c = r(o(e)), u = n(t), C = c.length; return u < 0 || u >= C ? A ? "" : void 0 : (i = s(c, u)) < 55296 || i > 56319 || u + 1 === C || (I = s(c, u + 1)) < 56320 || I > 57343 ? A ? a(c, u) : i : A ? g(c, u, u + 2) : I - 56320 + (i - 55296 << 10) + 65536; }; }; A.exports = { codeAt: createMethod(!1), charAt: createMethod(!0) }; }, 8227: (A, e, t) => { "use strict"; var i = t(2195), n = t(5745), r = t(9297), o = t(3392), a = t(4495), s = t(7040), g = i.Symbol, I = n("wks"), c = s ? g.for || g : g && g.withoutSetter || o; A.exports = function(A) { return r(I, A) || (I[A] = a && r(g, A) ? g[A] : c("Symbol." + A)), I[A]; }; }, 8229: (A, e, t) => { "use strict"; var i = t(9590), n = RangeError; A.exports = function(A, e) { var t = i(A); if (t % e) throw new n("Wrong offset"); return t; }; }, 8242: (A, e, t) => { "use strict"; var i = t(9565), n = t(7751), r = t(8227), o = t(6840); A.exports = function() { var A = n("Symbol"), e = A && A.prototype, t = e && e.valueOf, a = r("toPrimitive"); e && !e[a] && o(e, a, (function(A) { return i(t, this); }), { arity: 1 }); }; }, 8252: (A, e, t) => { "use strict"; A.exports = MapField; var i = t(1344); ((MapField.prototype = Object.create(i.prototype)).constructor = MapField).className = "MapField"; var n = t(361), r = t(3262); function MapField(A, e, t, n, o, a) { if (i.call(this, A, e, n, void 0, void 0, o, a), !r.isString(t)) throw TypeError("keyType must be a string"); this.keyType = t, this.resolvedKeyType = null, this.map = !0; } MapField.fromJSON = function(A, e) { return new MapField(A, e.id, e.keyType, e.type, e.options, e.comment); }, MapField.prototype.toJSON = function(A) { var e = !!A && Boolean(A.keepComments); return r.toObject([ "keyType", this.keyType, "type", this.type, "id", this.id, "extend", this.extend, "options", this.options, "comment", e ? this.comment : void 0 ]); }, MapField.prototype.resolve = function() { if (this.resolved) return this; if (void 0 === n.mapKey[this.keyType]) throw Error("invalid key type: " + this.keyType); return i.prototype.resolve.call(this); }, MapField.d = function(A, e, t) { return "function" == typeof t ? t = r.decorateType(t).name : t && "object" == typeof t && (t = r.decorateEnum(t).name), function(i, n) { r.decorateType(i.constructor).add(new MapField(n, A, e, t)); }; }; }, 8265: A => { "use strict"; var Queue = function() { this.head = null, this.tail = null; }; Queue.prototype = { add: function(A) { var e = { item: A, next: null }, t = this.tail; t ? t.next = e : this.head = e, this.tail = e; }, get: function() { var A = this.head; if (A) return null === (this.head = A.next) && (this.tail = null), A.item; } }, A.exports = Queue; }, 8319: A => { "use strict"; var e = Math.round; A.exports = function(A) { var t = e(A); return t < 0 ? 0 : t > 255 ? 255 : 255 & t; }; }, 8363: (A, e, t) => { "use strict"; var i = t(9565), n = t(9504), r = t(9228), o = t(8551), a = t(4117), s = t(7750), g = t(2293), I = t(7829), c = t(8014), u = t(655), C = t(5966), Q = t(6682), B = t(8429), E = t(9039), l = B.UNSUPPORTED_Y, h = Math.min, f = n([].push), d = n("".slice), y = !E((function() { var A = /(?:)/, e = A.exec; A.exec = function() { return e.apply(this, arguments); }; var t = "ab".split(A); return 2 !== t.length || "a" !== t[0] || "b" !== t[1]; })), w = "c" === "abbc".split(/(b)*/)[1] || 4 !== "test".split(/(?:)/, -1).length || 2 !== "ab".split(/(?:ab)*/).length || 4 !== ".".split(/(.?)(.?)/).length || ".".split(/()()/).length > 1 || "".split(/.?/).length; r("split", (function(A, e, t) { var n = "0".split(void 0, 0).length ? function(A, t) { return void 0 === A && 0 === t ? [] : i(e, this, A, t); } : e; return [ function(e, t) { var r = s(this), o = a(e) ? void 0 : C(e, A); return o ? i(o, e, r, t) : i(n, u(r), e, t); }, function(A, i) { var r = o(this), a = u(A); if (!w) { var s = t(n, r, a, i, n !== e); if (s.done) return s.value; } var C = g(r, RegExp), B = r.unicode, E = (r.ignoreCase ? "i" : "") + (r.multiline ? "m" : "") + (r.unicode ? "u" : "") + (l ? "g" : "y"), y = new C(l ? "^(?:" + r.source + ")" : r, E), v = void 0 === i ? 4294967295 : i >>> 0; if (0 === v) return []; if (0 === a.length) return null === Q(y, a) ? [ a ] : []; for (var p = 0, D = 0, b = []; D < a.length; ) { y.lastIndex = l ? 0 : D; var k, S = Q(y, l ? d(a, D) : a); if (null === S || (k = h(c(y.lastIndex + (l ? D : 0)), a.length)) === p) D = I(a, D, B); else { if (f(b, d(a, p, D)), b.length === v) return b; for (var m = 1; m <= S.length - 1; m++) if (f(b, S[m]), b.length === v) return b; D = p = k; } } return f(b, d(a, p)), b; } ]; }), w || !y, l); }, 8379: (A, e, t) => { "use strict"; var i = t(8745), n = t(5397), r = t(1291), o = t(6198), a = t(4598), s = Math.min, g = [].lastIndexOf, I = !!g && 1 / [ 1 ].lastIndexOf(1, -0) < 0, c = a("lastIndexOf"), u = I || !c; A.exports = u ? function(A) { if (I) return i(g, this, arguments) || 0; var e = n(this), t = o(e); if (0 === t) return -1; var a = t - 1; for (arguments.length > 1 && (a = s(a, r(arguments[1]))), a < 0 && (a = t + a); a >= 0; a--) if (a in e && e[a] === A) return a || 0; return -1; } : g; }, 8406: (A, e, t) => { "use strict"; t(3792), t(7337); var i = t(6518), n = t(2195), r = t(3389), o = t(7751), a = t(9565), s = t(9504), g = t(3724), I = t(7416), c = t(6840), u = t(2106), C = t(6279), Q = t(687), B = t(3994), E = t(1181), l = t(679), h = t(4901), f = t(9297), d = t(6080), y = t(6955), w = t(8551), v = t(34), p = t(655), D = t(2360), b = t(6980), k = t(81), S = t(851), m = t(2529), N = t(2812), G = t(8227), M = t(4488), J = G("iterator"), R = "URLSearchParams", U = R + "Iterator", L = E.set, Y = E.getterFor(R), K = E.getterFor(U), H = r("fetch"), x = r("Request"), O = r("Headers"), q = x && x.prototype, T = O && O.prototype, P = n.TypeError, _ = n.encodeURIComponent, j = String.fromCharCode, V = o("String", "fromCodePoint"), Z = parseInt, W = s("".charAt), X = s([].join), z = s([].push), $ = s("".replace), AA = s([].shift), eA = s([].splice), tA = s("".split), iA = s("".slice), nA = s(/./.exec), rA = /\+/g, oA = /^[0-9a-f]+$/i, parseHexOctet = function(A, e) { var t = iA(A, e, e + 2); return nA(oA, t) ? Z(t, 16) : NaN; }, getLeadingOnes = function(A) { for (var e = 0, t = 128; t > 0 && A & t; t >>= 1) e++; return e; }, utf8Decode = function(A) { var e = null; switch (A.length) { case 1: e = A[0]; break; case 2: e = (31 & A[0]) << 6 | 63 & A[1]; break; case 3: e = (15 & A[0]) << 12 | (63 & A[1]) << 6 | 63 & A[2]; break; case 4: e = (7 & A[0]) << 18 | (63 & A[1]) << 12 | (63 & A[2]) << 6 | 63 & A[3]; } return e > 1114111 ? null : e; }, decode = function(A) { for (var e = (A = $(A, rA, " ")).length, t = "", i = 0; i < e; ) { var n = W(A, i); if ("%" === n) { if ("%" === W(A, i + 1) || i + 3 > e) { t += "%", i++; continue; } var r = parseHexOctet(A, i + 1); if (r != r) { t += n, i++; continue; } i += 2; var o = getLeadingOnes(r); if (0 === o) n = j(r); else { if (1 === o || o > 4) { t += "�", i++; continue; } for (var a = [ r ], s = 1; s < o && !(3 + ++i > e || "%" !== W(A, i)); ) { var g = parseHexOctet(A, i + 1); if (g != g) { i += 3; break; } if (g > 191 || g < 128) break; z(a, g), i += 2, s++; } if (a.length !== o) { t += "�"; continue; } var I = utf8Decode(a); null === I ? t += "�" : n = V(I); } } t += n, i++; } return t; }, aA = /[!'()~]|%20/g, sA = { "!": "%21", "'": "%27", "(": "%28", ")": "%29", "~": "%7E", "%20": "+" }, replacer = function(A) { return sA[A]; }, serialize = function(A) { return $(_(A), aA, replacer); }, gA = B((function(A, e) { L(this, { type: U, target: Y(A).entries, index: 0, kind: e }); }), R, (function() { var A = K(this), e = A.target, t = A.index++; if (!e || t >= e.length) return A.target = null, m(void 0, !0); var i = e[t]; switch (A.kind) { case "keys": return m(i.key, !1); case "values": return m(i.value, !1); } return m([ i.key, i.value ], !1); }), !0), URLSearchParamsState = function(A) { this.entries = [], this.url = null, void 0 !== A && (v(A) ? this.parseObject(A) : this.parseQuery("string" == typeof A ? "?" === W(A, 0) ? iA(A, 1) : A : p(A))); }; URLSearchParamsState.prototype = { type: R, bindURL: function(A) { this.url = A, this.update(); }, parseObject: function(A) { var e, t, i, n, r, o, s, g = this.entries, I = S(A); if (I) for (t = (e = k(A, I)).next; !(i = a(t, e)).done; ) { if (r = (n = k(w(i.value))).next, (o = a(r, n)).done || (s = a(r, n)).done || !a(r, n).done) throw new P("Expected sequence with length 2"); z(g, { key: p(o.value), value: p(s.value) }); } else for (var c in A) f(A, c) && z(g, { key: c, value: p(A[c]) }); }, parseQuery: function(A) { if (A) for (var e, t, i = this.entries, n = tA(A, "&"), r = 0; r < n.length; ) (e = n[r++]).length && (t = tA(e, "="), z(i, { key: decode(AA(t)), value: decode(X(t, "=")) })); }, serialize: function() { for (var A, e = this.entries, t = [], i = 0; i < e.length; ) A = e[i++], z(t, serialize(A.key) + "=" + serialize(A.value)); return X(t, "&"); }, update: function() { this.entries.length = 0, this.parseQuery(this.url.query); }, updateURL: function() { this.url && this.url.update(); } }; var URLSearchParamsConstructor = function() { l(this, IA); var A = L(this, new URLSearchParamsState(arguments.length > 0 ? arguments[0] : void 0)); g || (this.size = A.entries.length); }, IA = URLSearchParamsConstructor.prototype; if (C(IA, { append: function(A, e) { var t = Y(this); N(arguments.length, 2), z(t.entries, { key: p(A), value: p(e) }), g || this.length++, t.updateURL(); }, "delete": function(A) { for (var e = Y(this), t = N(arguments.length, 1), i = e.entries, n = p(A), r = t < 2 ? void 0 : arguments[1], o = void 0 === r ? r : p(r), a = 0; a < i.length; ) { var s = i[a]; if (s.key !== n || void 0 !== o && s.value !== o) a++; else if (eA(i, a, 1), void 0 !== o) break; } g || (this.size = i.length), e.updateURL(); }, get: function(A) { var e = Y(this).entries; N(arguments.length, 1); for (var t = p(A), i = 0; i < e.length; i++) if (e[i].key === t) return e[i].value; return null; }, getAll: function(A) { var e = Y(this).entries; N(arguments.length, 1); for (var t = p(A), i = [], n = 0; n < e.length; n++) e[n].key === t && z(i, e[n].value); return i; }, has: function(A) { for (var e = Y(this).entries, t = N(arguments.length, 1), i = p(A), n = t < 2 ? void 0 : arguments[1], r = void 0 === n ? n : p(n), o = 0; o < e.length; ) { var a = e[o++]; if (a.key === i && (void 0 === r || a.value === r)) return !0; } return !1; }, set: function(A, e) { var t = Y(this); N(arguments.length, 1); for (var i, n = t.entries, r = !1, o = p(A), a = p(e), s = 0; s < n.length; s++) (i = n[s]).key === o && (r ? eA(n, s--, 1) : (r = !0, i.value = a)); r || z(n, { key: o, value: a }), g || (this.size = n.length), t.updateURL(); }, sort: function() { var A = Y(this); M(A.entries, (function(A, e) { return A.key > e.key ? 1 : -1; })), A.updateURL(); }, forEach: function(A) { for (var e, t = Y(this).entries, i = d(A, arguments.length > 1 ? arguments[1] : void 0), n = 0; n < t.length; ) i((e = t[n++]).value, e.key, this); }, keys: function() { return new gA(this, "keys"); }, values: function() { return new gA(this, "values"); }, entries: function() { return new gA(this, "entries"); } }, { enumerable: !0 }), c(IA, J, IA.entries, { name: "entries" }), c(IA, "toString", (function() { return Y(this).serialize(); }), { enumerable: !0 }), g && u(IA, "size", { get: function() { return Y(this).entries.length; }, configurable: !0, enumerable: !0 }), Q(URLSearchParamsConstructor, R), i({ global: !0, constructor: !0, forced: !I }, { URLSearchParams: URLSearchParamsConstructor }), !I && h(O)) { var cA = s(T.has), uA = s(T.set), wrapRequestOptions = function(A) { if (v(A)) { var e, t = A.body; if (y(t) === R) return e = A.headers ? new O(A.headers) : new O, cA(e, "content-type") || uA(e, "content-type", "application/x-www-form-urlencoded;charset=UTF-8"), D(A, { body: b(0, p(t)), headers: b(0, e) }); } return A; }; if (h(H) && i({ global: !0, enumerable: !0, dontCallGetSet: !0, forced: !0 }, { fetch: function(A) { return H(A, arguments.length > 1 ? wrapRequestOptions(arguments[1]) : {}); } }), h(x)) { var RequestConstructor = function(A) { return l(this, q), new x(A, arguments.length > 1 ? wrapRequestOptions(arguments[1]) : {}); }; q.constructor = RequestConstructor, RequestConstructor.prototype = q, i({ global: !0, constructor: !0, dontCallGetSet: !0, forced: !0 }, { Request: RequestConstructor }); } } A.exports = { URLSearchParams: URLSearchParamsConstructor, getState: Y }; }, 8408: (A, e, t) => { "use strict"; t(8406); }, 8429: (A, e, t) => { "use strict"; var i = t(9039), n = t(2195).RegExp, r = i((function() { var A = n("a", "y"); return A.lastIndex = 2, null !== A.exec("abcd"); })), o = r || i((function() { return !n("a", "y").sticky; })), a = r || i((function() { var A = n("^r", "gy"); return A.lastIndex = 2, null !== A.exec("str"); })); A.exports = { BROKEN_CARET: a, MISSED_STICKY: o, UNSUPPORTED_Y: r }; }, 8459: (A, e, t) => { "use strict"; var i = t(6518), n = t(3904); i({ global: !0, forced: parseFloat !== n }, { parseFloat: n }); }, 8480: (A, e, t) => { "use strict"; var i = t(1828), n = t(8727).concat("length", "prototype"); e.f = Object.getOwnPropertyNames || function(A) { return i(A, n); }; }, 8490: A => { "use strict"; var e = Array, t = Math.abs, i = Math.pow, n = Math.floor, r = Math.log, o = Math.LN2; A.exports = { pack: function(A, a, s) { var g, I, c, u = e(s), C = 8 * s - a - 1, Q = (1 << C) - 1, B = Q >> 1, E = 23 === a ? i(2, -24) - i(2, -77) : 0, l = A < 0 || 0 === A && 1 / A < 0 ? 1 : 0, h = 0; for ((A = t(A)) != A || A === 1 / 0 ? (I = A != A ? 1 : 0, g = Q) : (g = n(r(A) / o), A * (c = i(2, -g)) < 1 && (g--, c *= 2), (A += g + B >= 1 ? E / c : E * i(2, 1 - B)) * c >= 2 && (g++, c /= 2), g + B >= Q ? (I = 0, g = Q) : g + B >= 1 ? (I = (A * c - 1) * i(2, a), g += B) : (I = A * i(2, B - 1) * i(2, a), g = 0)); a >= 8; ) u[h++] = 255 & I, I /= 256, a -= 8; for (g = g << a | I, C += a; C > 0; ) u[h++] = 255 & g, g /= 256, C -= 8; return u[h - 1] |= 128 * l, u; }, unpack: function(A, e) { var t, n = A.length, r = 8 * n - e - 1, o = (1 << r) - 1, a = o >> 1, s = r - 7, g = n - 1, I = A[g--], c = 127 & I; for (I >>= 7; s > 0; ) c = 256 * c + A[g--], s -= 8; for (t = c & (1 << -s) - 1, c >>= -s, s += e; s > 0; ) t = 256 * t + A[g--], s -= 8; if (0 === c) c = 1 - a; else { if (c === o) return t ? NaN : I ? -1 / 0 : 1 / 0; t += i(2, e), c -= a; } return (I ? -1 : 1) * t * i(2, c - e); } }; }, 8523: (A, e, t) => { "use strict"; t(6468)("Map", (function(A) { return function() { return A(this, arguments.length ? arguments[0] : void 0); }; }), t(6938)); }, 8551: (A, e, t) => { "use strict"; var i = t(34), n = String, r = TypeError; A.exports = function(A) { if (i(A)) return A; throw new r(n(A) + " is not an object"); }; }, 8561: A => { "use strict"; function codegen(A, e) { "string" == typeof A && (e = A, A = void 0); var t = []; function Codegen(A) { if ("string" != typeof A) { var e = toString(); if (codegen.verbose && console.log("codegen: " + e), e = "return " + e, A) { for (var i = Object.keys(A), n = new Array(i.length + 1), r = new Array(i.length), o = 0; o < i.length; ) n[o] = i[o], r[o] = A[i[o++]]; return n[o] = e, Function.apply(null, n).apply(null, r); } return Function(e)(); } for (var a = new Array(arguments.length - 1), s = 0; s < a.length; ) a[s] = arguments[++s]; if (s = 0, A = A.replace(/%([%dfijs])/g, (function(A, e) { var t = a[s++]; switch (e) { case "d": case "f": return String(Number(t)); case "i": return String(Math.floor(t)); case "j": return JSON.stringify(t); case "s": return String(t); } return "%"; })), s !== a.length) throw Error("parameter count mismatch"); return t.push(A), Codegen; } function toString(i) { return "function " + (i || e || "") + "(" + (A && A.join(",") || "") + "){\n " + t.join("\n ") + "\n}"; } return Codegen.toString = toString, Codegen; } A.exports = codegen, codegen.verbose = !1; }, 8598: (A, e, t) => { "use strict"; var i = t(6518), n = t(9504), r = t(7055), o = t(5397), a = t(4598), s = n([].join); i({ target: "Array", proto: !0, forced: r !== Object || !a("join", ",") }, { join: function(A) { return s(o(this), void 0 === A ? "," : A); } }); }, 8622: (A, e, t) => { "use strict"; var i = t(2195), n = t(4901), r = i.WeakMap; A.exports = n(r) && /native code/.test(String(r)); }, 8686: (A, e, t) => { "use strict"; var i = t(3724), n = t(9039); A.exports = i && n((function() { return 42 !== Object.defineProperty((function() {}), "prototype", { value: 42, writable: !1 }).prototype; })); }, 8706: (A, e, t) => { "use strict"; var i = t(6518), n = t(9039), r = t(4376), o = t(34), a = t(8981), s = t(6198), g = t(6837), I = t(4659), c = t(1469), u = t(597), C = t(8227), Q = t(9519), B = C("isConcatSpreadable"), E = Q >= 51 || !n((function() { var A = []; return A[B] = !1, A.concat()[0] !== A; })), isConcatSpreadable = function(A) { if (!o(A)) return !1; var e = A[B]; return void 0 !== e ? !!e : r(A); }; i({ target: "Array", proto: !0, arity: 1, forced: !E || !u("concat") }, { concat: function(A) { var e, t, i, n, r, o = a(this), u = c(o, 0), C = 0; for (e = -1, i = arguments.length; e < i; e++) if (isConcatSpreadable(r = -1 === e ? o : arguments[e])) for (n = s(r), g(C + n), t = 0; t < n; t++, C++) t in r && I(u, C, r[t]); else g(C + 1), I(u, C++, r); return u.length = C, u; } }); }, 8727: A => { "use strict"; A.exports = [ "constructor", "hasOwnProperty", "isPrototypeOf", "propertyIsEnumerable", "toLocaleString", "toString", "valueOf" ]; }, 8745: (A, e, t) => { "use strict"; var i = t(616), n = Function.prototype, r = n.apply, o = n.call; A.exports = "object" == typeof Reflect && Reflect.apply || (i ? o.bind(r) : function() { return o.apply(r, arguments); }); }, 8747: (A, e, t) => { "use strict"; var i = t(4644), n = i.aTypedArray, r = i.exportTypedArrayMethod, o = Math.floor; r("reverse", (function() { for (var A, e = this, t = n(e).length, i = o(t / 2), r = 0; r < i; ) A = e[r], e[r++] = e[--t], e[t] = A; return e; })); }, 8773: (A, e) => { "use strict"; var t = {}.propertyIsEnumerable, i = Object.getOwnPropertyDescriptor, n = i && !t.call({ 1: 2 }, 1); e.f = n ? function(A) { var e = i(this, A); return !!e && e.enumerable; } : t; }, 8781: (A, e, t) => { "use strict"; var i = t(350).PROPER, n = t(6840), r = t(8551), o = t(655), a = t(9039), s = t(1034), g = "toString", I = RegExp.prototype, c = I[g], u = a((function() { return "/a/b" !== c.call({ source: "a", flags: "b" }); })), C = i && c.name !== g; (u || C) && n(I, g, (function() { var A = r(this); return "/" + o(A.source) + "/" + o(s(A)); }), { unsafe: !0 }); }, 8811: (A, e, t) => { "use strict"; A.exports = Method; var i = t(7209); ((Method.prototype = Object.create(i.prototype)).constructor = Method).className = "Method"; var n = t(3262); function Method(A, e, t, r, o, a, s, g, I) { if (n.isObject(o) ? (s = o, o = a = void 0) : n.isObject(a) && (s = a, a = void 0), void 0 !== e && !n.isString(e)) throw TypeError("type must be a string"); if (!n.isString(t)) throw TypeError("requestType must be a string"); if (!n.isString(r)) throw TypeError("responseType must be a string"); i.call(this, A, s), this.type = e || "rpc", this.requestType = t, this.requestStream = !!o || void 0, this.responseType = r, this.responseStream = !!a || void 0, this.resolvedRequestType = null, this.resolvedResponseType = null, this.comment = g, this.parsedOptions = I; } Method.fromJSON = function(A, e) { return new Method(A, e.type, e.requestType, e.responseType, e.requestStream, e.responseStream, e.options, e.comment, e.parsedOptions); }, Method.prototype.toJSON = function(A) { var e = !!A && Boolean(A.keepComments); return n.toObject([ "type", "rpc" !== this.type && this.type || void 0, "requestType", this.requestType, "requestStream", this.requestStream, "responseType", this.responseType, "responseStream", this.responseStream, "options", this.options, "comment", e ? this.comment : void 0, "parsedOptions", this.parsedOptions ]); }, Method.prototype.resolve = function() { return this.resolved ? this : (this.resolvedRequestType = this.parent.lookupType(this.requestType), this.resolvedResponseType = this.parent.lookupType(this.responseType), i.prototype.resolve.call(this)); }; }, 8814: (A, e, t) => { "use strict"; var i = t(9039), n = t(2195).RegExp; A.exports = i((function() { var A = n("(?<a>b)", "g"); return "b" !== A.exec("b").groups.a || "bc" !== "b".replace(A, "$<a>c"); })); }, 8839: (A, e) => { "use strict"; var t = e; t.length = function(A) { var e = A.length; if (!e) return 0; for (var t = 0; --e % 4 > 1 && "=" === A.charAt(e); ) ++t; return Math.ceil(3 * A.length) / 4 - t; }; for (var i = new Array(64), n = new Array(123), r = 0; r < 64; ) n[i[r] = r < 26 ? r + 65 : r < 52 ? r + 71 : r < 62 ? r - 4 : r - 59 | 43] = r++; t.encode = function(A, e, t) { for (var n, r = null, o = [], a = 0, s = 0; e < t; ) { var g = A[e++]; switch (s) { case 0: o[a++] = i[g >> 2], n = (3 & g) << 4, s = 1; break; case 1: o[a++] = i[n | g >> 4], n = (15 & g) << 2, s = 2; break; case 2: o[a++] = i[n | g >> 6], o[a++] = i[63 & g], s = 0; } a > 8191 && ((r || (r = [])).push(String.fromCharCode.apply(String, o)), a = 0); } return s && (o[a++] = i[n], o[a++] = 61, 1 === s && (o[a++] = 61)), r ? (a && r.push(String.fromCharCode.apply(String, o.slice(0, a))), r.join("")) : String.fromCharCode.apply(String, o.slice(0, a)); }; var o = "invalid encoding"; t.decode = function(A, e, t) { for (var i, r = t, a = 0, s = 0; s < A.length; ) { var g = A.charCodeAt(s++); if (61 === g && a > 1) break; if (void 0 === (g = n[g])) throw Error(o); switch (a) { case 0: i = g, a = 1; break; case 1: e[t++] = i << 2 | (48 & g) >> 4, i = g, a = 2; break; case 2: e[t++] = (15 & i) << 4 | (60 & g) >> 2, i = g, a = 3; break; case 3: e[t++] = (3 & i) << 6 | g, a = 0; } } if (1 === a) throw Error(o); return t - r; }, t.test = function(A) { return /^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(A); }; }, 8845: (A, e, t) => { "use strict"; var i = t(2195), n = t(9565), r = t(4644), o = t(6198), a = t(8229), s = t(8981), g = t(9039), I = i.RangeError, c = i.Int8Array, u = c && c.prototype, C = u && u.set, Q = r.aTypedArray, B = r.exportTypedArrayMethod, E = !g((function() { var A = new Uint8ClampedArray(2); return n(C, A, { length: 1, 0: 3 }, 1), 3 !== A[1]; })), l = E && r.NATIVE_ARRAY_BUFFER_VIEWS && g((function() { var A = new c(2); return A.set(1), A.set("2", 1), 0 !== A[0] || 2 !== A[1]; })); B("set", (function(A) { Q(this); var e = a(arguments.length > 1 ? arguments[1] : void 0, 1), t = s(A); if (E) return n(C, this, t, e); var i = this.length, r = o(t), g = 0; if (r + e > i) throw new I("Wrong length"); for (;g < r; ) this[e + g] = t[g++]; }), !E || l); }, 8921: (A, e, t) => { "use strict"; var i = t(6518), n = t(8379); i({ target: "Array", proto: !0, forced: n !== [].lastIndexOf }, { lastIndexOf: n }); }, 8923: (A, e, t) => { "use strict"; A.exports = Namespace; var i = t(7209); ((Namespace.prototype = Object.create(i.prototype)).constructor = Namespace).className = "Namespace"; var n, r, o, a = t(1344), s = t(3262), g = t(1457); function arrayToJSON(A, e) { if (A && A.length) { for (var t = {}, i = 0; i < A.length; ++i) t[A[i].name] = A[i].toJSON(e); return t; } } function Namespace(A, e) { i.call(this, A, e), this.nested = void 0, this._nestedArray = null; } function clearCache(A) { return A._nestedArray = null, A; } Namespace.fromJSON = function(A, e) { return new Namespace(A, e.options).addJSON(e.nested); }, Namespace.arrayToJSON = arrayToJSON, Namespace.isReservedId = function(A, e) { if (A) for (var t = 0; t < A.length; ++t) if ("string" != typeof A[t] && A[t][0] <= e && A[t][1] > e) return !0; return !1; }, Namespace.isReservedName = function(A, e) { if (A) for (var t = 0; t < A.length; ++t) if (A[t] === e) return !0; return !1; }, Object.defineProperty(Namespace.prototype, "nestedArray", { get: function() { return this._nestedArray || (this._nestedArray = s.toArray(this.nested)); } }), Namespace.prototype.toJSON = function(A) { return s.toObject([ "options", this.options, "nested", arrayToJSON(this.nestedArray, A) ]); }, Namespace.prototype.addJSON = function(A) { if (A) for (var e, t = Object.keys(A), i = 0; i < t.length; ++i) e = A[t[i]], this.add((void 0 !== e.fields ? n.fromJSON : void 0 !== e.values ? o.fromJSON : void 0 !== e.methods ? r.fromJSON : void 0 !== e.id ? a.fromJSON : Namespace.fromJSON)(t[i], e)); return this; }, Namespace.prototype.get = function(A) { return this.nested && this.nested[A] || null; }, Namespace.prototype.getEnum = function(A) { if (this.nested && this.nested[A] instanceof o) return this.nested[A].values; throw Error("no such enum: " + A); }, Namespace.prototype.add = function(A) { if (!(A instanceof a && void 0 !== A.extend || A instanceof n || A instanceof g || A instanceof o || A instanceof r || A instanceof Namespace)) throw TypeError("object must be a valid nested object"); if (this.nested) { var e = this.get(A.name); if (e) { if (!(e instanceof Namespace && A instanceof Namespace) || e instanceof n || e instanceof r) throw Error("duplicate name '" + A.name + "' in " + this); for (var t = e.nestedArray, i = 0; i < t.length; ++i) A.add(t[i]); this.remove(e), this.nested || (this.nested = {}), A.setOptions(e.options, !0); } } else this.nested = {}; return this.nested[A.name] = A, A.onAdd(this), clearCache(this); }, Namespace.prototype.remove = function(A) { if (!(A instanceof i)) throw TypeError("object must be a ReflectionObject"); if (A.parent !== this) throw Error(A + " is not a member of " + this); return delete this.nested[A.name], Object.keys(this.nested).length || (this.nested = void 0), A.onRemove(this), clearCache(this); }, Namespace.prototype.define = function(A, e) { if (s.isString(A)) A = A.split("."); else if (!Array.isArray(A)) throw TypeError("illegal path"); if (A && A.length && "" === A[0]) throw Error("path must be relative"); for (var t = this; A.length > 0; ) { var i = A.shift(); if (t.nested && t.nested[i]) { if (!((t = t.nested[i]) instanceof Namespace)) throw Error("path conflicts with non-namespace objects"); } else t.add(t = new Namespace(i)); } return e && t.addJSON(e), t; }, Namespace.prototype.resolveAll = function() { for (var A = this.nestedArray, e = 0; e < A.length; ) A[e] instanceof Namespace ? A[e++].resolveAll() : A[e++].resolve(); return this.resolve(); }, Namespace.prototype.lookup = function(A, e, t) { if ("boolean" == typeof e ? (t = e, e = void 0) : e && !Array.isArray(e) && (e = [ e ]), s.isString(A) && A.length) { if ("." === A) return this.root; A = A.split("."); } else if (!A.length) return this; if ("" === A[0]) return this.root.lookup(A.slice(1), e); var i = this.get(A[0]); if (i) { if (1 === A.length) { if (!e || e.indexOf(i.constructor) > -1) return i; } else if (i instanceof Namespace && (i = i.lookup(A.slice(1), e, !0))) return i; } else for (var n = 0; n < this.nestedArray.length; ++n) if (this._nestedArray[n] instanceof Namespace && (i = this._nestedArray[n].lookup(A, e, !0))) return i; return null === this.parent || t ? null : this.parent.lookup(A, e); }, Namespace.prototype.lookupType = function(A) { var e = this.lookup(A, [ n ]); if (!e) throw Error("no such type: " + A); return e; }, Namespace.prototype.lookupEnum = function(A) { var e = this.lookup(A, [ o ]); if (!e) throw Error("no such Enum '" + A + "' in " + this); return e; }, Namespace.prototype.lookupTypeOrEnum = function(A) { var e = this.lookup(A, [ n, o ]); if (!e) throw Error("no such Type or Enum '" + A + "' in " + this); return e; }, Namespace.prototype.lookupService = function(A) { var e = this.lookup(A, [ r ]); if (!e) throw Error("no such Service '" + A + "' in " + this); return e; }, Namespace._configure = function(A, e, t) { n = A, r = e, o = t; }; }, 8940: (A, e, t) => { "use strict"; var i = t(6518), n = t(2703); i({ global: !0, forced: parseInt !== n }, { parseInt: n }); }, 8980: (A, e, t) => { "use strict"; var i = t(6518), n = t(9213).findIndex, r = t(6469), o = "findIndex", a = !0; o in [] && Array(1)[o]((function() { a = !1; })), i({ target: "Array", proto: !0, forced: a }, { findIndex: function(A) { return n(this, A, arguments.length > 1 ? arguments[1] : void 0); } }), r(o); }, 8981: (A, e, t) => { "use strict"; var i = t(7750), n = Object; A.exports = function(A) { return n(i(A)); }; }, 8995: (A, e, t) => { "use strict"; var i = t(4644), n = t(9213).map, r = i.aTypedArray, o = i.getTypedArrayConstructor; (0, i.exportTypedArrayMethod)("map", (function(A) { return n(r(this), A, arguments.length > 1 ? arguments[1] : void 0, (function(A, e) { return new (o(A))(e); })); })); }, 9039: A => { "use strict"; A.exports = function(A) { try { return !!A(); } catch (A) { return !0; } }; }, 9085: (A, e, t) => { "use strict"; var i = t(6518), n = t(4213); i({ target: "Object", stat: !0, arity: 2, forced: Object.assign !== n }, { assign: n }); }, 9100: (A, e, t) => { "use strict"; var i = A.exports = t(5325); i.build = "full", i.tokenize = t(527), i.parse = t(4863), i.common = t(5095), i.Root._configure(i.Type, i.parse, i.common); }, 9167: (A, e, t) => { "use strict"; var i = t(2195); A.exports = i; }, 9207: (A, e) => { "use strict"; var t = e, i = t.isAbsolute = function(A) { return /^(?:\/|\w+:)/.test(A); }, n = t.normalize = function(A) { var e = (A = A.replace(/\\/g, "/").replace(/\/{2,}/g, "/")).split("/"), t = i(A), n = ""; t && (n = e.shift() + "/"); for (var r = 0; r < e.length; ) ".." === e[r] ? r > 0 && ".." !== e[r - 1] ? e.splice(--r, 2) : t ? e.splice(r, 1) : ++r : "." === e[r] ? e.splice(r, 1) : ++r; return n + e.join("/"); }; t.resolve = function(A, e, t) { return t || (e = n(e)), i(e) ? e : (t || (A = n(A)), (A = A.replace(/(?:\/|^)[^/]+$/, "")).length ? n(A + "/" + e) : e); }; }, 9213: (A, e, t) => { "use strict"; var i = t(6080), n = t(9504), r = t(7055), o = t(8981), a = t(6198), s = t(1469), g = n([].push), createMethod = function(A) { var e = 1 === A, t = 2 === A, n = 3 === A, I = 4 === A, c = 6 === A, u = 7 === A, C = 5 === A || c; return function(Q, B, E, l) { for (var h, f, d = o(Q), y = r(d), w = a(y), v = i(B, E), p = 0, D = l || s, b = e ? D(Q, w) : t || u ? D(Q, 0) : void 0; w > p; p++) if ((C || p in y) && (f = v(h = y[p], p, d), A)) if (e) b[p] = f; else if (f) switch (A) { case 3: return !0; case 5: return h; case 6: return p; case 2: g(b, h); } else switch (A) { case 4: return !1; case 7: g(b, h); } return c ? -1 : n || I ? I : b; }; }; A.exports = { forEach: createMethod(0), map: createMethod(1), filter: createMethod(2), some: createMethod(3), every: createMethod(4), find: createMethod(5), findIndex: createMethod(6), filterReject: createMethod(7) }; }, 9225: (A, e, t) => { "use strict"; var i, n, r, o, a = t(2195), s = t(8745), g = t(6080), I = t(4901), c = t(9297), u = t(9039), C = t(397), Q = t(7680), B = t(4055), E = t(2812), l = t(9544), h = t(6193), f = a.setImmediate, d = a.clearImmediate, y = a.process, w = a.Dispatch, v = a.Function, p = a.MessageChannel, D = a.String, b = 0, k = {}, S = "onreadystatechange"; u((function() { i = a.location; })); var run = function(A) { if (c(k, A)) { var e = k[A]; delete k[A], e(); } }, runner = function(A) { return function() { run(A); }; }, eventListener = function(A) { run(A.data); }, globalPostMessageDefer = function(A) { a.postMessage(D(A), i.protocol + "//" + i.host); }; f && d || (f = function(A) { E(arguments.length, 1); var e = I(A) ? A : v(A), t = Q(arguments, 1); return k[++b] = function() { s(e, void 0, t); }, n(b), b; }, d = function(A) { delete k[A]; }, h ? n = function(A) { y.nextTick(runner(A)); } : w && w.now ? n = function(A) { w.now(runner(A)); } : p && !l ? (o = (r = new p).port2, r.port1.onmessage = eventListener, n = g(o.postMessage, o)) : a.addEventListener && I(a.postMessage) && !a.importScripts && i && "file:" !== i.protocol && !u(globalPostMessageDefer) ? (n = globalPostMessageDefer, a.addEventListener("message", eventListener, !1)) : n = S in B("script") ? function(A) { C.appendChild(B("script"))[S] = function() { C.removeChild(this), run(A); }; } : function(A) { setTimeout(runner(A), 0); }), A.exports = { set: f, clear: d }; }, 9228: (A, e, t) => { "use strict"; t(7495); var i = t(9565), n = t(6840), r = t(7323), o = t(9039), a = t(8227), s = t(6699), g = a("species"), I = RegExp.prototype; A.exports = function(A, e, t, c) { var u = a(A), C = !o((function() { var e = {}; return e[u] = function() { return 7; }, 7 !== ""[A](e); })), Q = C && !o((function() { var e = !1, t = /a/; return "split" === A && ((t = {}).constructor = {}, t.constructor[g] = function() { return t; }, t.flags = "", t[u] = /./[u]), t.exec = function() { return e = !0, null; }, t[u](""), !e; })); if (!C || !Q || t) { var B = /./[u], E = e(u, ""[A], (function(A, e, t, n, o) { var a = e.exec; return a === r || a === I.exec ? C && !o ? { done: !0, value: i(B, e, t, n) } : { done: !0, value: i(A, t, e, n) } : { done: !1 }; })); n(String.prototype, A, E[0]), n(I, u, E[1]); } c && s(I[u], "sham", !0); }; }, 9296: (A, e, t) => { "use strict"; var i = t(4055)("span").classList, n = i && i.constructor && i.constructor.prototype; A.exports = n === Object.prototype ? void 0 : n; }, 9297: (A, e, t) => { "use strict"; var i = t(9504), n = t(8981), r = i({}.hasOwnProperty); A.exports = Object.hasOwn || function(A, e) { return r(n(A), e); }; }, 9306: (A, e, t) => { "use strict"; var i = t(4901), n = t(6823), r = TypeError; A.exports = function(A) { if (i(A)) return A; throw new r(n(A) + " is not a function"); }; }, 9369: (A, e, t) => { "use strict"; var i = t(4644), n = t(9504), r = i.aTypedArray, o = i.exportTypedArrayMethod, a = n([].join); o("join", (function(A) { return a(r(this), A); })); }, 9390: A => { "use strict"; A.exports = function(A, e, t) { var i = t || 8192, n = i >>> 1, r = null, o = i; return function(t) { if (t < 1 || t > n) return A(t); o + t > i && (r = A(i), o = 0); var a = e.call(r, o, o += t); return 7 & o && (o = 1 + (7 | o)), a; }; }; }, 9410: A => { "use strict"; function factory(A) { return "undefined" != typeof Float32Array ? function() { var e = new Float32Array([ -0 ]), t = new Uint8Array(e.buffer), i = 128 === t[3]; function writeFloat_f32_cpy(A, i, n) { e[0] = A, i[n] = t[0], i[n + 1] = t[1], i[n + 2] = t[2], i[n + 3] = t[3]; } function writeFloat_f32_rev(A, i, n) { e[0] = A, i[n] = t[3], i[n + 1] = t[2], i[n + 2] = t[1], i[n + 3] = t[0]; } function readFloat_f32_cpy(A, i) { return t[0] = A[i], t[1] = A[i + 1], t[2] = A[i + 2], t[3] = A[i + 3], e[0]; } function readFloat_f32_rev(A, i) { return t[3] = A[i], t[2] = A[i + 1], t[1] = A[i + 2], t[0] = A[i + 3], e[0]; } A.writeFloatLE = i ? writeFloat_f32_cpy : writeFloat_f32_rev, A.writeFloatBE = i ? writeFloat_f32_rev : writeFloat_f32_cpy, A.readFloatLE = i ? readFloat_f32_cpy : readFloat_f32_rev, A.readFloatBE = i ? readFloat_f32_rev : readFloat_f32_cpy; }() : function() { function writeFloat_ieee754(A, e, t, i) { var n = e < 0 ? 1 : 0; if (n && (e = -e), 0 === e) A(1 / e > 0 ? 0 : 2147483648, t, i); else if (isNaN(e)) A(2143289344, t, i); else if (e > 34028234663852886e22) A((n << 31 | 2139095040) >>> 0, t, i); else if (e < 11754943508222875e-54) A((n << 31 | Math.round(e / 1401298464324817e-60)) >>> 0, t, i); else { var r = Math.floor(Math.log(e) / Math.LN2); A((n << 31 | r + 127 << 23 | 8388607 & Math.round(e * Math.pow(2, -r) * 8388608)) >>> 0, t, i); } } function readFloat_ieee754(A, e, t) { var i = A(e, t), n = 2 * (i >> 31) + 1, r = i >>> 23 & 255, o = 8388607 & i; return 255 === r ? o ? NaN : n * (1 / 0) : 0 === r ? 1401298464324817e-60 * n * o : n * Math.pow(2, r - 150) * (o + 8388608); } A.writeFloatLE = writeFloat_ieee754.bind(null, writeUintLE), A.writeFloatBE = writeFloat_ieee754.bind(null, writeUintBE), A.readFloatLE = readFloat_ieee754.bind(null, readUintLE), A.readFloatBE = readFloat_ieee754.bind(null, readUintBE); }(), "undefined" != typeof Float64Array ? function() { var e = new Float64Array([ -0 ]), t = new Uint8Array(e.buffer), i = 128 === t[7]; function writeDouble_f64_cpy(A, i, n) { e[0] = A, i[n] = t[0], i[n + 1] = t[1], i[n + 2] = t[2], i[n + 3] = t[3], i[n + 4] = t[4], i[n + 5] = t[5], i[n + 6] = t[6], i[n + 7] = t[7]; } function writeDouble_f64_rev(A, i, n) { e[0] = A, i[n] = t[7], i[n + 1] = t[6], i[n + 2] = t[5], i[n + 3] = t[4], i[n + 4] = t[3], i[n + 5] = t[2], i[n + 6] = t[1], i[n + 7] = t[0]; } function readDouble_f64_cpy(A, i) { return t[0] = A[i], t[1] = A[i + 1], t[2] = A[i + 2], t[3] = A[i + 3], t[4] = A[i + 4], t[5] = A[i + 5], t[6] = A[i + 6], t[7] = A[i + 7], e[0]; } function readDouble_f64_rev(A, i) { return t[7] = A[i], t[6] = A[i + 1], t[5] = A[i + 2], t[4] = A[i + 3], t[3] = A[i + 4], t[2] = A[i + 5], t[1] = A[i + 6], t[0] = A[i + 7], e[0]; } A.writeDoubleLE = i ? writeDouble_f64_cpy : writeDouble_f64_rev, A.writeDoubleBE = i ? writeDouble_f64_rev : writeDouble_f64_cpy, A.readDoubleLE = i ? readDouble_f64_cpy : readDouble_f64_rev, A.readDoubleBE = i ? readDouble_f64_rev : readDouble_f64_cpy; }() : function() { function writeDouble_ieee754(A, e, t, i, n, r) { var o = i < 0 ? 1 : 0; if (o && (i = -i), 0 === i) A(0, n, r + e), A(1 / i > 0 ? 0 : 2147483648, n, r + t); else if (isNaN(i)) A(0, n, r + e), A(2146959360, n, r + t); else if (i > 17976931348623157e292) A(0, n, r + e), A((o << 31 | 2146435072) >>> 0, n, r + t); else { var a; if (i < 22250738585072014e-324) A((a = i / 5e-324) >>> 0, n, r + e), A((o << 31 | a / 4294967296) >>> 0, n, r + t); else { var s = Math.floor(Math.log(i) / Math.LN2); 1024 === s && (s = 1023), A(4503599627370496 * (a = i * Math.pow(2, -s)) >>> 0, n, r + e), A((o << 31 | s + 1023 << 20 | 1048576 * a & 1048575) >>> 0, n, r + t); } } } function readDouble_ieee754(A, e, t, i, n) { var r = A(i, n + e), o = A(i, n + t), a = 2 * (o >> 31) + 1, s = o >>> 20 & 2047, g = 4294967296 * (1048575 & o) + r; return 2047 === s ? g ? NaN : a * (1 / 0) : 0 === s ? 5e-324 * a * g : a * Math.pow(2, s - 1075) * (g + 4503599627370496); } A.writeDoubleLE = writeDouble_ieee754.bind(null, writeUintLE, 0, 4), A.writeDoubleBE = writeDouble_ieee754.bind(null, writeUintBE, 4, 0), A.readDoubleLE = readDouble_ieee754.bind(null, readUintLE, 0, 4), A.readDoubleBE = readDouble_ieee754.bind(null, readUintBE, 4, 0); }(), A; } function writeUintLE(A, e, t) { e[t] = 255 & A, e[t + 1] = A >>> 8 & 255, e[t + 2] = A >>> 16 & 255, e[t + 3] = A >>> 24; } function writeUintBE(A, e, t) { e[t] = A >>> 24, e[t + 1] = A >>> 16 & 255, e[t + 2] = A >>> 8 & 255, e[t + 3] = 255 & A; } function readUintLE(A, e) { return (A[e] | A[e + 1] << 8 | A[e + 2] << 16 | A[e + 3] << 24) >>> 0; } function readUintBE(A, e) { return (A[e] << 24 | A[e + 1] << 16 | A[e + 2] << 8 | A[e + 3]) >>> 0; } A.exports = factory(factory); }, 9423: (A, e, t) => { "use strict"; var i = t(4644), n = t(9039), r = t(7680), o = i.aTypedArray, a = i.getTypedArrayConstructor; (0, i.exportTypedArrayMethod)("slice", (function(A, e) { for (var t = r(o(this), A, e), i = a(this), n = 0, s = t.length, g = new i(s); s > n; ) g[n] = t[n++]; return g; }), n((function() { new Int8Array(1).slice(); }))); }, 9432: (A, e, t) => { "use strict"; var i = t(6518), n = t(8981), r = t(1072); i({ target: "Object", stat: !0, forced: t(9039)((function() { r(1); })) }, { keys: function(A) { return r(n(A)); } }); }, 9433: (A, e, t) => { "use strict"; var i = t(2195), n = Object.defineProperty; A.exports = function(A, e) { try { n(i, A, { value: e, configurable: !0, writable: !0 }); } catch (t) { i[A] = e; } return e; }; }, 9463: (A, e, t) => { "use strict"; var i = t(6518), n = t(3724), r = t(2195), o = t(9504), a = t(9297), s = t(4901), g = t(1625), I = t(655), c = t(2106), u = t(7740), C = r.Symbol, Q = C && C.prototype; if (n && s(C) && (!("description" in Q) || void 0 !== C().description)) { var B = {}, SymbolWrapper = function() { var A = arguments.length < 1 || void 0 === arguments[0] ? void 0 : I(arguments[0]), e = g(Q, this) ? new C(A) : void 0 === A ? C() : C(A); return "" === A && (B[e] = !0), e; }; u(SymbolWrapper, C), SymbolWrapper.prototype = Q, Q.constructor = SymbolWrapper; var E = "Symbol(description detection)" === String(C("description detection")), l = o(Q.valueOf), h = o(Q.toString), f = /^Symbol\((.*)\)[^)]+$/, d = o("".replace), y = o("".slice); c(Q, "description", { configurable: !0, get: function() { var A = l(this); if (a(B, A)) return ""; var e = h(A), t = E ? y(e, 7, -1) : d(e, f, "$1"); return "" === t ? void 0 : t; } }), i({ global: !0, constructor: !0, forced: !0 }, { Symbol: SymbolWrapper }); } }, 9469: (A, e, t) => { "use strict"; var i = t(6518), n = Math.hypot, r = Math.abs, o = Math.sqrt; i({ target: "Math", stat: !0, arity: 2, forced: !!n && n(1 / 0, NaN) !== 1 / 0 }, { hypot: function(A, e) { for (var t, i, n = 0, a = 0, s = arguments.length, g = 0; a < s; ) g < (t = r(arguments[a++])) ? (n = n * (i = g / t) * i + 1, g = t) : n += t > 0 ? (i = t / g) * i : t; return g === 1 / 0 ? 1 / 0 : g * o(n); } }); }, 9504: (A, e, t) => { "use strict"; var i = t(616), n = Function.prototype, r = n.call, o = i && n.bind.bind(r, r); A.exports = i ? o : function(A) { return function() { return r.apply(A, arguments); }; }; }, 9519: (A, e, t) => { "use strict"; var i, n, r = t(2195), o = t(2839), a = r.process, s = r.Deno, g = a && a.versions || s && s.version, I = g && g.v8; I && (n = (i = I.split("."))[0] > 0 && i[0] < 4 ? 1 : +(i[0] + i[1])), !n && o && (!(i = o.match(/Edge\/(\d+)/)) || i[1] >= 74) && (i = o.match(/Chrome\/(\d+)/)) && (n = +i[1]), A.exports = n; }, 9539: (A, e, t) => { "use strict"; var i = t(9565), n = t(8551), r = t(5966); A.exports = function(A, e, t) { var o, a; n(A); try { if (!(o = r(A, "return"))) { if ("throw" === e) throw t; return t; } o = i(o, A); } catch (A) { a = !0, o = A; } if ("throw" === e) throw t; if (a) throw o; return n(o), t; }; }, 9544: (A, e, t) => { "use strict"; var i = t(2839); A.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(i); }, 9565: (A, e, t) => { "use strict"; var i = t(616), n = Function.prototype.call; A.exports = i ? n.bind(n) : function() { return n.apply(n, arguments); }; }, 9590: (A, e, t) => { "use strict"; var i = t(1291), n = RangeError; A.exports = function(A) { var e = i(A); if (e < 0) throw new n("The argument can't be less than 0"); return e; }; }, 9617: (A, e, t) => { "use strict"; var i = t(5397), n = t(5610), r = t(6198), createMethod = function(A) { return function(e, t, o) { var a = i(e), s = r(a); if (0 === s) return !A && -1; var g, I = n(o, s); if (A && t != t) { for (;s > I; ) if ((g = a[I++]) != g) return !0; } else for (;s > I; I++) if ((A || I in a) && a[I] === t) return A || I || 0; return !A && -1; }; }; A.exports = { includes: createMethod(!0), indexOf: createMethod(!1) }; }, 9687: (A, e, t) => { "use strict"; A.exports = Service; var i = t(8923); ((Service.prototype = Object.create(i.prototype)).constructor = Service).className = "Service"; var n = t(8811), r = t(3262), o = t(5047); function Service(A, e) { i.call(this, A, e), this.methods = {}, this._methodsArray = null; } function clearCache(A) { return A._methodsArray = null, A; } Service.fromJSON = function(A, e) { var t = new Service(A, e.options); if (e.methods) for (var i = Object.keys(e.methods), r = 0; r < i.length; ++r) t.add(n.fromJSON(i[r], e.methods[i[r]])); return e.nested && t.addJSON(e.nested), t.comment = e.comment, t; }, Service.prototype.toJSON = function(A) { var e = i.prototype.toJSON.call(this, A), t = !!A && Boolean(A.keepComments); return r.toObject([ "options", e && e.options || void 0, "methods", i.arrayToJSON(this.methodsArray, A) || {}, "nested", e && e.nested || void 0, "comment", t ? this.comment : void 0 ]); }, Object.defineProperty(Service.prototype, "methodsArray", { get: function() { return this._methodsArray || (this._methodsArray = r.toArray(this.methods)); } }), Service.prototype.get = function(A) { return this.methods[A] || i.prototype.get.call(this, A); }, Service.prototype.resolveAll = function() { for (var A = this.methodsArray, e = 0; e < A.length; ++e) A[e].resolve(); return i.prototype.resolve.call(this); }, Service.prototype.add = function(A) { if (this.get(A.name)) throw Error("duplicate name '" + A.name + "' in " + this); return A instanceof n ? (this.methods[A.name] = A, A.parent = this, clearCache(this)) : i.prototype.add.call(this, A); }, Service.prototype.remove = function(A) { if (A instanceof n) { if (this.methods[A.name] !== A) throw Error(A + " is not a member of " + this); return delete this.methods[A.name], A.parent = null, clearCache(this); } return i.prototype.remove.call(this, A); }, Service.prototype.create = function(A, e, t) { for (var i, n = new o.Service(A, e, t), a = 0; a < this.methodsArray.length; ++a) { var s = r.lcFirst((i = this._methodsArray[a]).resolve().name).replace(/[^$\w_]/g, ""); n[s] = r.codegen([ "r", "c" ], r.isReserved(s) ? s + "_" : s)("return this.rpcCall(m,q,s,r,c)")({ m: i, q: i.resolvedRequestType.ctor, s: i.resolvedResponseType.ctor }); } return n; }; }, 9773: (A, e, t) => { "use strict"; var i = t(6518), n = t(4495), r = t(9039), o = t(3717), a = t(8981); i({ target: "Object", stat: !0, forced: !n || r((function() { o.f(1); })) }, { getOwnPropertySymbols: function(A) { var e = o.f; return e ? e(a(A)) : []; } }); }, 9868: (A, e, t) => { "use strict"; var i = t(6518), n = t(9504), r = t(1291), o = t(1240), a = t(2333), s = t(9039), g = RangeError, I = String, c = Math.floor, u = n(a), C = n("".slice), Q = n(1..toFixed), pow = function(A, e, t) { return 0 === e ? t : e % 2 == 1 ? pow(A, e - 1, t * A) : pow(A * A, e / 2, t); }, multiply = function(A, e, t) { for (var i = -1, n = t; ++i < 6; ) n += e * A[i], A[i] = n % 1e7, n = c(n / 1e7); }, divide = function(A, e) { for (var t = 6, i = 0; --t >= 0; ) i += A[t], A[t] = c(i / e), i = i % e * 1e7; }, dataToString = function(A) { for (var e = 6, t = ""; --e >= 0; ) if ("" !== t || 0 === e || 0 !== A[e]) { var i = I(A[e]); t = "" === t ? i : t + u("0", 7 - i.length) + i; } return t; }; i({ target: "Number", proto: !0, forced: s((function() { return "0.000" !== Q(8e-5, 3) || "1" !== Q(.9, 0) || "1.25" !== Q(1.255, 2) || "1000000000000000128" !== Q(0xde0b6b3a7640080, 0); })) || !s((function() { Q({}); })) }, { toFixed: function(A) { var e, t, i, n, a = o(this), s = r(A), c = [ 0, 0, 0, 0, 0, 0 ], Q = "", B = "0"; if (s < 0 || s > 20) throw new g("Incorrect fraction digits"); if (a != a) return "NaN"; if (a <= -1e21 || a >= 1e21) return I(a); if (a < 0 && (Q = "-", a = -a), a > 1e-21) if (t = (e = function(A) { for (var e = 0, t = A; t >= 4096; ) e += 12, t /= 4096; for (;t >= 2; ) e += 1, t /= 2; return e; }(a * pow(2, 69, 1)) - 69) < 0 ? a * pow(2, -e, 1) : a / pow(2, e, 1), t *= 4503599627370496, (e = 52 - e) > 0) { for (multiply(c, 0, t), i = s; i >= 7; ) multiply(c, 1e7, 0), i -= 7; for (multiply(c, pow(10, i, 1), 0), i = e - 1; i >= 23; ) divide(c, 1 << 23), i -= 23; divide(c, 1 << i), multiply(c, 1, 1), divide(c, 2), B = dataToString(c); } else multiply(c, 0, t), multiply(c, 1 << -e, 0), B = dataToString(c) + u("0", s); return s > 0 ? Q + ((n = B.length) <= s ? "0." + u("0", s - n) + B : C(B, 0, n - s) + "." + C(B, n - s)) : Q + B; } }); }, 9948: (A, e, t) => { "use strict"; var i = t(5370), n = t(4644).getTypedArrayConstructor; A.exports = function(A, e) { return i(n(A), e); }; }, 9955: (A, e, t) => { "use strict"; var i = t(4644), n = t(9213).findIndex, r = i.aTypedArray; (0, i.exportTypedArrayMethod)("findIndex", (function(A) { return n(r(this), A, arguments.length > 1 ? arguments[1] : void 0); })); } }, __webpack_module_cache__ = {}; function __webpack_require__(A) { var e = __webpack_module_cache__[A]; if (void 0 !== e) return e.exports; var t = __webpack_module_cache__[A] = { exports: {} }; return __webpack_modules__[A].call(t.exports, t, t.exports, __webpack_require__), t.exports; } __webpack_require__.m = __webpack_modules__, __webpack_require__.n = A => { var e = A && A.__esModule ? () => A.default : () => A; return __webpack_require__.d(e, { a: e }), e; }, __webpack_require__.d = (A, e) => { for (var t in e) __webpack_require__.o(e, t) && !__webpack_require__.o(A, t) && Object.defineProperty(A, t, { enumerable: !0, get: e[t] }); }, __webpack_require__.g = function() { if ("object" == typeof globalThis) return globalThis; try { return this || new Function("return this")(); } catch (A) { if ("object" == typeof window) return window; } }(), __webpack_require__.o = (A, e) => Object.prototype.hasOwnProperty.call(A, e), __webpack_require__.r = A => { "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(A, Symbol.toStringTag, { value: "Module" }), Object.defineProperty(A, "__esModule", { value: !0 }); }, __webpack_require__.b = document.baseURI || self.location.href; var __webpack_exports__ = {}; return (() => { "use strict"; function _arrayLikeToArray(A, e) { (null == e || e > A.length) && (e = A.length); for (var t = 0, i = Array(e); t < e; t++) i[t] = A[t]; return i; } function _unsupportedIterableToArray(A, e) { if (A) { if ("string" == typeof A) return _arrayLikeToArray(A, e); var t = {}.toString.call(A).slice(8, -1); return "Object" === t && A.constructor && (t = A.constructor.name), "Map" === t || "Set" === t ? Array.from(A) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(A, e) : void 0; } } function _slicedToArray(A, e) { return function(A) { if (Array.isArray(A)) return A; }(A) || function(A, e) { var t = null == A ? null : "undefined" != typeof Symbol && A[Symbol.iterator] || A["@@iterator"]; if (null != t) { var i, n, r, o, a = [], s = !0, g = !1; try { if (r = (t = t.call(A)).next, 0 === e) { if (Object(t) !== t) return; s = !1; } else for (;!(s = (i = r.call(t)).done) && (a.push(i.value), a.length !== e); s = !0) ; } catch (A) { g = !0, n = A; } finally { try { if (!s && null != t.return && (o = t.return(), Object(o) !== o)) return; } finally { if (g) throw n; } } return a; } }(A, e) || _unsupportedIterableToArray(A, e) || function() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }(); } __webpack_require__.d(__webpack_exports__, { "default": () => je }); var A = __webpack_require__(467), e = __webpack_require__(4756), t = __webpack_require__.n(e); function _isNativeReflectConstruct() { try { var A = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], (function() {}))); } catch (A) {} return (_isNativeReflectConstruct = function() { return !!A; })(); } function _setPrototypeOf(A, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(A, e) { return A.__proto__ = e, A; }, _setPrototypeOf(A, e); } __webpack_require__(3792), __webpack_require__(8598), __webpack_require__(6033), __webpack_require__(5506), __webpack_require__(6099), __webpack_require__(7764), __webpack_require__(1392), __webpack_require__(2953); var i = __webpack_require__(3029), n = __webpack_require__(2901); function _toConsumableArray(A) { return function(A) { if (Array.isArray(A)) return _arrayLikeToArray(A); }(A) || function(A) { if ("undefined" != typeof Symbol && null != A[Symbol.iterator] || null != A["@@iterator"]) return Array.from(A); }(A) || _unsupportedIterableToArray(A) || function() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }(); } __webpack_require__(8706), __webpack_require__(2008), __webpack_require__(113), __webpack_require__(2675), __webpack_require__(9463), __webpack_require__(2259), __webpack_require__(6449), __webpack_require__(4782), __webpack_require__(6910), __webpack_require__(3418), __webpack_require__(3514), __webpack_require__(2010), __webpack_require__(7495), __webpack_require__(4743), __webpack_require__(1745), __webpack_require__(2637), __webpack_require__(8781), __webpack_require__(1489), __webpack_require__(1630), __webpack_require__(2170), __webpack_require__(5044), __webpack_require__(1920), __webpack_require__(1694), __webpack_require__(9955), __webpack_require__(3206), __webpack_require__(4496), __webpack_require__(6651), __webpack_require__(2887), __webpack_require__(9369), __webpack_require__(6812), __webpack_require__(8995), __webpack_require__(1575), __webpack_require__(6072), __webpack_require__(8747), __webpack_require__(8845), __webpack_require__(9423), __webpack_require__(7301), __webpack_require__(373), __webpack_require__(6614), __webpack_require__(1405), __webpack_require__(3684), __webpack_require__(3500), __webpack_require__(3296), __webpack_require__(7208), __webpack_require__(8408), __webpack_require__(9085), __webpack_require__(9432), __webpack_require__(6034), __webpack_require__(3362), __webpack_require__(1415), __webpack_require__(1761), __webpack_require__(2762), __webpack_require__(2062); var r = null, o = null, a = null; function initPathfinder() { return _initPathfinder.apply(this, arguments); } function _initPathfinder() { return (_initPathfinder = (0, A.A)(t().mark((function _callee() { var A; return t().wrap((function(e) { for (;;) switch (e.prev = e.next) { case 0: if (!r) { e.next = 2; break; } return e.abrupt("return", !0); case 2: return e.prev = 2, console.log("[E-Push Pathfinder] Initializing WASM module..."), e.next = 6, Promise.resolve().then(__webpack_require__.bind(__webpack_require__, 2376)); case 6: return A = e.sent, e.next = 9, A.default(); case 9: return r = A, o = A.compute_path, console.log("[E-Push Pathfinder] WASM module initialized successfully."), e.abrupt("return", !0); case 15: return e.prev = 15, e.t0 = e.catch(2), console.error("[E-Push Pathfinder] Failed to initialize WASM module:", e.t0), r = null, o = null, e.abrupt("return", !1); case 21: case "end": return e.stop(); } }), _callee, null, [ [ 2, 15 ] ]); })))).apply(this, arguments); } function getCurrentPath() { return a; } function calculatePathAsync(A, e, t, i, n, r) { return _calculatePathAsync.apply(this, arguments); } function _calculatePathAsync() { return (_calculatePathAsync = (0, A.A)(t().mark((function _callee2(A, e, i, n, r, a) { var s, g; return t().wrap((function(t) { for (;;) switch (t.prev = t.next) { case 0: if (o) { t.next = 3; break; } return console.error("[E-Push Pathfinder] WASM module not initialized. Call initPathfinder() first."), t.abrupt("return", null); case 3: if (s = i.map((function(A) { return { centerX: A.x, centerY: A.y, radius: A.radius }; })), t.prev = 4, null !== (g = o(A.x, A.y, e.x, e.y, s, n, r, a))) { t.next = 8; break; } return t.abrupt("return", null); case 8: return t.abrupt("return", g); case 11: return t.prev = 11, t.t0 = t.catch(4), console.error("[E-Push Pathfinder] Error calling compute_path:", t.t0), t.abrupt("return", null); case 15: case "end": return t.stop(); } }), _callee2, null, [ [ 4, 11 ] ]); })))).apply(this, arguments); } var s = __webpack_require__(2284), g = (__webpack_require__(5276), __webpack_require__(2549)), I = __webpack_require__.n(g); const c = new Set([ "PLAYER", "PELLET", "SWEET_TOOTH_ITEM", "ROBO_SCANNER_RESIDUE", "ROBO_SCANNER_SOUR_CANDY_ITEM", "EXPLODIORB_ITEM", "FACTORB_EXPLOSION", "WALL", "BARRIER_DOME", "STREAM_PATH", "FLASHLIGHT_ITEM", "TORCH", "IMAGE_BACKGROUND", "LIGHT_REGION", "PARTICLE_GENERATOR", "RADIOACTIVE_GLOOP", "RADIOACTIVE_GLOOP_PROJECTILE", "ECHELON_PROJECTILE", "IGNITION_SPARK_PROJECTILE", "INCINERATE_PROJECTILE", "SHADOW_PROJECTILE", "LIGHTNING_PROJECTILE", "ENERGIZE_PROJECTILE", "SPARK_PROJECTILE", "LATCH_PROJECTILE", "VENGEANCE_PROJECTILE", "BLACK_HOLE_PROJECTILE", "REANIMATE_PROJECTILE", "MINIMIZE_PROJECTILE", "REVERSE_PROJECTILE", "ORBIT_PROJECTILE", "CRUMBLE_PROJECTILE", "BARRIER_ENEMY", "BLOOM_PROJECTILE", "ROBO_SCANNER_SNIPER_PROJECTILE", "ROBO_SCANNER_ICE_SNIPER_PROJECTILE", "ROBO_SCANNER_SPEED_SNIPER_PROJECTILE", "ROBO_SCANNER_REGEN_SNIPER_PROJECTILE", "ROBO_SCANNER_RADIATING_BULLETS_PROJECTILE", "ROBO_SCANNER_LEAF_PROJECTILE", "ROBO_SCANNER_CORROSIVE_SNIPER_PROJECTILE", "ROBO_SCANNER_POISON_SNIPER_PROJECTILE", "ROBO_SCANNER_POSITIVE_SNIPER_PROJECTILE", "ROBO_SCANNER_NEGATIVE_SNIPER_PROJECTILE", "ROBO_SCANNER_WIND_SNIPER_PROJECTILE", "ROBO_SCANNER_RADAR_PROJECTILE", "ROBO_SCANNER_PREDICTION_SNIPER_PROJECTILE", "ROBO_SCANNER_LEAD_SNIPER_PROJECTILE", "ROBO_SCANNER_FORCE_A_PROJECTILE", "ROBO_SCANNER_FORCE_B_PROJECTILE", "ROBO_SCANNER_FLOWER_PROJECTILE", "ROBO_SCANNER_FROST_GIANT_ICE_PROJECTILE", "ROBO_SCANNER_NINJA_STAR_SNIPER_PROJECTILE", "ROBO_SCANNER_FIRE_TRAIL_PROJECTILE", "ROBO_SCANNER_RESIDUE", "ROBO_SCANNER_STALACTITE_PROJECTILE", "ROBO_SCANNER_SOUR_CANDY_ITEM", "ROBO_SCANNER_SUMMONER_BLIND_ENEMY", "GRAVE_PROJECTILE", "POLLINATE_PROJECTILE", "PETRIFY_PROJECTILE" ]), u = { enemyRadiusMap: {}, previousPositions: {}, velocities: {}, init: function() { var A = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}; return A.enemyRadiusMap && (this.enemyRadiusMap = A.enemyRadiusMap), console.log("[E-Push] EntityManager initialized"), this; }, setEnemyRadiusMap: function(A) { return this.enemyRadiusMap = A, this; }, getEntityRadius: function(A, e) { if (!A || void 0 === A.entityType) return 15; if (A.radius) return A.radius; var t = A.entityType, i = e ? e(t).toLowerCase() : "type_".concat(t); return void 0 !== this.enemyRadiusMap[i] ? this.enemyRadiusMap[i] : 15; }, updateVelocities: function() { var A = this, e = B.entities, t = new Set(Object.keys(e)); Object.values(e).forEach((function(e) { if (e.id !== B.selfId) { var t = String(e.id); if (A.previousPositions[t]) { var i = A.previousPositions[t], n = e.x - i.x, r = e.y - i.y; A.velocities[t] = { x: n, y: r }, A.previousPositions[t] = { x: e.x, y: e.y }; } else A.previousPositions[t] = { x: e.x, y: e.y }, A.velocities[t] = { x: 0, y: 0 }; } })), Object.keys(this.previousPositions).forEach((function(e) { t.has(e) || (delete A.previousPositions[e], delete A.velocities[e]); })); }, getVelocity: function(A) { return this.velocities[String(A)] || { x: 0, y: 0 }; }, getTrackedEntities: function(A) { var e = this, t = [], i = B.entities; return A ? (Object.values(i).forEach((function(i) { if (i.id !== B.selfId && !i.isHarmless && void 0 !== i.entityType) { var n = A(i.entityType); if (!c.has(n) && !n.startsWith("Unknown (")) { var r = String(i.id), o = e.getEntityRadius(i, A), a = e.velocities[r] || { x: 0, y: 0 }; t.push({ id: i.id, x: i.x, y: i.y, radius: o, velocity: a, entityType: i.entityType }); } } })), t) : (console.error("[E-Push EntityManager] getTrackedEntities requires getEntityTypeName function!"), []); } }; var C = { rawCoder: null, coder: null, enemyDefaults: null, enemyRadiusMap: {}, _fetchMainJS: function() { return (0, A.A)(t().mark((function _callee2() { var e, i, n, r; return t().wrap((function(o) { for (;;) switch (o.prev = o.next) { case 0: return e = function() { var e = (0, A.A)(t().mark((function _callee(A) { return t().wrap((function(e) { for (;;) switch (e.prev = e.next) { case 0: return e.next = 2, fetch(A).then((function(A) { return A.text(); })); case 2: return e.abrupt("return", e.sent); case 3: case "end": return e.stop(); } }), _callee); }))); return function(A) { return e.apply(this, arguments); }; }(), o.prev = 1, o.next = 4, e(location.href); case 4: if (i = o.sent, n = i.match(/(?:index|app)\.[a-z0-9]+\.js/)) { o.next = 9; break; } return console.error("[E-Push:Protobuf] No main JS file found in HTML."), o.abrupt("return", null); case 9: return r = n[0], o.next = 12, e(location.origin + "/" + r); case 12: return o.abrupt("return", o.sent); case 15: return o.prev = 15, o.t0 = o.catch(1), console.error("[E-Push:Protobuf] Error fetching main JS:", o.t0), o.abrupt("return", null); case 19: case "end": return o.stop(); } }), _callee2, null, [ [ 1, 15 ] ]); })))(); }, _getProtobufScheme: function(A) { try { var e = A.match(/\.addJSON\(\s*\{/); if (!e) return console.error("[E-Push:Protobuf] Start of protobuf scheme (.addJSON({ ) not found in main JS."), null; for (var t = e.index + e[0].length - 1, i = 0, n = -1, r = t; r < A.length; r++) { if ("{" === A[r]) i++; else if ("}" === A[r] && 0 == --i) { n = r; break; } if (r === A.length - 1 && 0 !== i) return console.error("[E-Push:Protobuf] Could not find matching closing brace for protobuf scheme JSON."), null; } if (-1 === n) return console.error("[E-Push:Protobuf] Failed to determine end index for protobuf scheme JSON."), null; var o = A.substring(t, n + 1), a = new Function('"use strict"; return ('.concat(o, ")"))(); return a ? (console.log("[E-Push:Protobuf] Successfully extracted and parsed protobuf scheme."), a) : (console.error("[E-Push:Protobuf] Failed to parse extracted protobuf scheme JSON."), null); } catch (A) { return console.error("[E-Push:Protobuf] Error processing protobuf scheme:", A), null; } }, _extractEnemyDefaults: function(A) { try { var e = A.match(/"defaults":\s*(\{[\s\S]*?"radius":[\s\S]*?\})/); if (e && e[1]) { var t = 0, i = "", n = A.indexOf(e[1]); if (-1 === n) throw new Error("StartIndex not found"); for (var r = n; r < A.length && (i += A[r], "{" === A[r] ? t++ : "}" === A[r] && t--, 0 !== t); r++) ; if (0 !== t) throw new Error("Could not find matching closing brace for defaults."); this.enemyDefaults = JSON.parse(i), this._processEnemyDefaults(); } } catch (A) { console.error("[E-Push:Protobuf] Failed to parse enemy defaults:", A), this.enemyDefaults = null; } }, _processEnemyDefaults: function() { if (this.enemyDefaults) { for (var A = {}, e = 0, t = Object.entries(this.enemyDefaults); e < t.length; e++) { var i = _slicedToArray(t[e], 2), n = i[0], r = i[1]; r && "object" === (0, s.A)(r) && void 0 !== r.radius && (A[n] = r.radius); } this.enemyRadiusMap = A, u.setEnemyRadiusMap(A); } }, initialize: function() { var e = this; return (0, A.A)(t().mark((function _callee3() { var A, i; return t().wrap((function(t) { for (;;) switch (t.prev = t.next) { case 0: return t.prev = 0, t.next = 3, e._fetchMainJS(); case 3: if (A = t.sent) { t.next = 6; break; } return t.abrupt("return", !1); case 6: if (i = e._getProtobufScheme(A)) { t.next = 9; break; } return t.abrupt("return", !1); case 9: return e.rawCoder = new (I().Root), e.rawCoder.addJSON(i), e._extractEnemyDefaults(A), e.coder = { decodeServer: function(A) { try { var t = A instanceof Uint8Array ? A : new Uint8Array(A); return e.rawCoder.FramePayload.toObject(e.rawCoder.FramePayload.decode(t)); } catch (A) { return null; } }, encodeServer: function(A) { try { var t = e.rawCoder.FramePayload.create(A); return e.rawCoder.FramePayload.encode(t).finish(); } catch (e) { return console.error("[E-Push:Protobuf] Server encode error:", e.message, A), null; } }, encodeClient: function(A) { try { var t = e.rawCoder.ClientPayload.create(A); return e.rawCoder.ClientPayload.encode(t).finish(); } catch (e) { return console.error("[E-Push:Protobuf] Client encode error:", e.message, A), null; } }, decodeClient: function(A) { try { var t = A instanceof Uint8Array ? A : new Uint8Array(A); return e.rawCoder.ClientPayload.toObject(e.rawCoder.ClientPayload.decode(t)); } catch (A) { return null; } } }, t.abrupt("return", !0); case 16: return t.prev = 16, t.t0 = t.catch(0), console.error("[E-Push:Protobuf] Critical error initializing protobuf handler:", t.t0), e.rawCoder = null, e.coder = null, t.abrupt("return", !1); case 22: case "end": return t.stop(); } }), _callee3, null, [ [ 0, 16 ] ]); })))(); }, isReady: function() { return !!this.coder && !!this.rawCoder; }, encodeClient: function(A) { return this.isReady() ? this.coder.encodeClient(A) : (console.error("[E-Push:Protobuf] Cannot encode: Coder not ready."), null); }, decodeServer: function(A) { return this.isReady() ? this.coder.decodeServer(A) : null; }, encodeServer: function(A) { return this.isReady() ? this.coder.encodeServer(A) : (console.error("[E-Push:Protobuf] Cannot encode server: Coder not ready."), null); }, decodeClient: function(A) { return this.isReady() ? this.coder.decodeClient(A) : null; }, getEntityTypeName: function(A) { var e = String(A); if (!this.isReady()) return Math.random() < .01 && console.warn("[E-Push:Protobuf] getEntityTypeName(".concat(e, ") called before handler was ready.")), "Unknown (Not Ready: ".concat(e, ")"); try { var t = this.rawCoder.lookupEnum("EntityType"); return t ? t.valuesById[e] ? t.valuesById[e] : (Math.random() < .05 && console.warn("[E-Push:Protobuf] Unknown EntityType ID: ".concat(e, ". Schema might be outdated or ID is unexpected.")), "Unknown (ID ".concat(e, ")")) : (console.error("[E-Push:Protobuf] 'EntityType' enum not found in loaded schema! Cannot resolve type ID ".concat(e, ".")), "Unknown (Schema Error: ".concat(e, ")")); } catch (A) { return console.error("[E-Push:Protobuf] Error looking up EntityType for ID ".concat(e, ":"), A), "Unknown (Lookup Error: ".concat(e, ")"); } }, getHeroNameById: function(A) { if (!this.isReady()) return "Unknown (".concat(A, ")"); try { var e = this.rawCoder.lookupEnum("HeroType"); if (e && e.valuesById[A]) return e.valuesById[A]; } catch (e) { console.warn("[E-Push:Protobuf] Error getting hero name for ID ".concat(A, ":"), e); } return "Unknown (".concat(A, ")"); }, getEnemyRadiusMap: function() { return this.enemyRadiusMap; } }; const Q = C, B = { selfId: null, accountData: null, currentServerName: null, area: null, entities: {}, globalEntities: {}, settings: {}, mouseScreenX: 0, mouseScreenY: 0, mouseGameX: 0, mouseGameY: 0, safeMoveX: 0, safeMoveY: 0, currentRegionName: null, initialize: function() { var e = this; return (0, A.A)(t().mark((function _callee() { return t().wrap((function(A) { for (;;) switch (A.prev = A.next) { case 0: return A.next = 2, e.fetchAccountData(); case 2: e.readServerNameFromLeaderboard(); case 3: case "end": return A.stop(); } }), _callee); })))(); }, reset: function() { this.entities = {}, this.globalEntities = {}, console.log("[E-Push] Game state reset"); }, update: function(A) { var e = this, t = Date.now(), i = new Set, n = new Set; A.complete ? (A.selfId && (this.selfId = A.selfId), A.area && (this.area = A.area, this.setCurrentRegionName(A.area.regionName)), A.settings && (this.settings = A.settings), this.fetchAccountData(), A.entities && (this.entities = {}, A.entities.forEach((function(A) { A._lastUpdated = t, e.entities[A.id] = A, i.add(A.id); }))), A.globalEntities && (this.globalEntities = {}, A.globalEntities.forEach((function(A) { A._lastUpdated = t, e.globalEntities[A.id] = A, n.add(A.id); }))), console.log("[E-Push] Initial state loaded"), console.log("[E-Push:GameState] selfId after initial load: ".concat(this.selfId))) : (A.entities || A.globalEntities) && (A.entities && A.entities.forEach((function(n) { if (i.add(n.id), !0 === n.removed) { var r; n.id === e.selfId ? (console.log("[E-Push GameState] Player ".concat(n.id, " removed, clearing area state and path.")), e.area = null, a = null) : console.log("[E-Push] Entity ".concat(n.id, " marked as removed.")); var o = (null === (r = A.globalEntities) || void 0 === r ? void 0 : r.find((function(A) { return A.id === n.id; }))) || e.globalEntities[n.id]; return o && o.areaNumber, void delete e.entities[n.id]; } if (e.entities[n.id]) { if (Object.assign(e.entities[n.id], n), !0 === n.abilityRemoved) { var s = e.entities[n.id]; !("abilityOne" in n) && s.abilityOne && delete s.abilityOne, !("abilityTwo" in n) && s.abilityTwo && delete s.abilityTwo, !("abilityThree" in n) && s.abilityThree && delete s.abilityThree, delete s.abilityRemoved; } e.entities[n.id]._lastUpdated = t; } else n._lastUpdated = t, e.entities[n.id] = n; })), A.globalEntities && A.globalEntities.forEach((function(A) { n.add(A.id), e.globalEntities[A.id] ? (Object.assign(e.globalEntities[A.id], A), e.globalEntities[A.id]._lastUpdated = t) : (A._lastUpdated = t, e.globalEntities[A.id] = A); })), this.cleanupMissingEntities(i, this.entities), this.cleanupMissingEntities(n, this.globalEntities)); }, cleanupMissingEntities: function(A, e) {}, cleanupExpiredEntities: function() { var A = this, e = Date.now(); Object.keys(this.entities).forEach((function(t) { var i = A.entities[t]; void 0 !== i.duration && e - i._lastUpdated >= i.duration && (delete A.entities[t], console.log("[E-Push] Entity ".concat(t, " removed due to expired duration"))); })), Object.keys(this.globalEntities).forEach((function(t) { var i = A.globalEntities[t]; void 0 !== i.duration && e - i._lastUpdated >= i.duration && (delete A.globalEntities[t], console.log("[E-Push] Global entity ".concat(t, " removed due to expired duration"))); })); }, getPlayer: function() { return this.selfId ? this.entities[this.selfId] : null; }, getNearbyEntities: function() { var A = this, e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 1e3, t = this.getPlayer(); return t ? Object.values(this.entities).filter((function(i) { if (i.id === A.selfId) return !1; var n = i.x - t.x, r = i.y - t.y; return Math.sqrt(n * n + r * r) <= e; })) : []; }, checkExpiredEntities: function() { this.cleanupExpiredEntities(); }, updateMouseScreenCoords: function(A, e) { this.mouseScreenX = A, this.mouseScreenY = e; }, updateCalculatedMouseGameCoords: function(A, e) { this.mouseGameX = A, this.mouseGameY = e; }, updateSafeMoveCoords: function(A, e) { this.safeMoveX = A, this.safeMoveY = e; }, setCurrentRegionName: function(A) { "string" == typeof A && A ? this.currentRegionName !== A && (this.currentRegionName = A, console.log("[E-Push:GameState] Current region updated to: ".concat(A))) : null !== this.currentRegionName && (console.log("[E-Push:GameState] Current region reset."), this.currentRegionName = null); }, getCurrentRegionName: function() { return this.currentRegionName; }, fetchAccountData: function() { var e = this; return (0, A.A)(t().mark((function _callee2() { var A, i; return t().wrap((function(t) { for (;;) switch (t.prev = t.next) { case 0: return console.log("[E-Push:GameState] Fetching account data..."), t.prev = 1, t.next = 4, fetch("https://evades.io/api/account", { headers: { accept: "*/*", "accept-language": "en-US,en;q=0.9", "cache-control": "no-cache", pragma: "no-cache", priority: "u=1, i", "sec-ch-ua": '"Chromium";v="134", "Not:A-Brand";v="24", "Brave";v="134"', "sec-ch-ua-mobile": "?0", "sec-ch-ua-platform": '"Linux"', "sec-fetch-dest": "empty", "sec-fetch-mode": "cors", "sec-fetch-site": "same-origin", "sec-gpc": "1", Referer: "https://evades.io/account" }, referrerPolicy: "strict-origin-when-cross-origin", method: "GET", mode: "cors", credentials: "include" }); case 4: if ((A = t.sent).ok) { t.next = 7; break; } throw new Error("HTTP error! status: ".concat(A.status)); case 7: return t.next = 9, A.json(); case 9: i = t.sent, e.accountData = i, console.log("[E-Push:GameState] Account data fetched successfully:", e.accountData), t.next = 18; break; case 14: t.prev = 14, t.t0 = t.catch(1), console.error("[E-Push:GameState] Failed to fetch account data:", t.t0), e.accountData = null; case 18: case "end": return t.stop(); } }), _callee2, null, [ [ 1, 14 ] ]); })))(); }, getAccountData: function() { return this.accountData; }, readServerNameFromLeaderboard: function() { var A = this; setTimeout((function() { try { var e = document.querySelector("#leaderboard > span"); if (e && e.textContent) { var t = e.textContent.trim(), i = t.match(/Leaderboard:\s*([A-Z]+)\s*(\d+)/i); if (i && i[1] && i[2]) { var n = "".concat(i[1].toUpperCase(), " ").concat(i[2]); A.currentServerName !== n && (A.currentServerName = n, console.log("[E-Push:GameState] Current server updated from leaderboard: ".concat(A.currentServerName))); } else console.warn("[E-Push:GameState] Could not parse server name from leaderboard title:", t); } else console.warn("[E-Push:GameState] Leaderboard title element not found or empty."); } catch (e) { console.error("[E-Push:GameState] Error reading server name from leaderboard:", e), A.currentServerName = null; } }), 500); }, getCurrentServerName: function() { return this.currentServerName; }, setCurrentServerName: function(A) { "string" == typeof A ? this.currentServerName !== A && (this.currentServerName = A, console.log("[E-Push:GameState] Current server explicitly set to: ".concat(A))) : console.warn("[E-Push:GameState] Attempted to set invalid server name: ".concat(A)); } }; function _createForOfIteratorHelper(A, e) { var t = "undefined" != typeof Symbol && A[Symbol.iterator] || A["@@iterator"]; if (!t) { if (Array.isArray(A) || (t = function(A, e) { if (A) { if ("string" == typeof A) return CWSS_arrayLikeToArray(A, e); var t = {}.toString.call(A).slice(8, -1); return "Object" === t && A.constructor && (t = A.constructor.name), "Map" === t || "Set" === t ? Array.from(A) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? CWSS_arrayLikeToArray(A, e) : void 0; } }(A)) || e && A && "number" == typeof A.length) { t && (A = t); var i = 0, F = function() {}; return { s: F, n: function() { return i >= A.length ? { done: !0 } : { done: !1, value: A[i++] }; }, e: function(A) { throw A; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var n, r = !0, o = !1; return { s: function() { t = t.call(A); }, n: function() { var A = t.next(); return r = A.done, A; }, e: function(A) { o = !0, n = A; }, f: function() { try { r || null == t.return || t.return(); } finally { if (o) throw n; } } }; } function CWSS_arrayLikeToArray(A, e) { (null == e || e > A.length) && (e = A.length); for (var t = 0, i = Array(e); t < e; t++) i[t] = A[t]; return i; } var E = window.CWSS || {}; window.CWSS = E, E.OriginalWebSocket = window.WebSocket; var l = E.OriginalWebSocket, h = l.prototype, f = h.send, d = h.addEventListener, y = h.removeEventListener; E.hooks = E.hooks || [], E.sockets = E.sockets || [], E.setHook = function(A) { return E.hooks.push(A), E.hooks.sort((function(A, e) { return (e.priority || 0) - (A.priority || 0); })), E; }, E.setHooks = function() { for (var A, e = arguments.length, t = new Array(e), i = 0; i < e; i++) t[i] = arguments[i]; return (A = E.hooks).push.apply(A, _toConsumableArray(t.flat())), E.hooks.sort((function(A, e) { return (e.priority || 0) - (A.priority || 0); })), E; }; var executeSyncHooks = function(A, e) { var t, i = e, n = _createForOfIteratorHelper(E.hooks); try { for (n.s(); !(t = n.n()).done; ) { var r = t.value; if (r[A]) { if (null == i) break; try { i = r[A].apply(this, Array.isArray(i) ? i : [ i ]); } catch (e) { console.error("CWSS Hook Error (".concat(A, "):"), e, r); } } } } catch (A) { n.e(A); } finally { n.f(); } return i; }, w = function() { var e = (0, A.A)(t().mark((function _callee(A, e) { var i, n, r, o, a; return t().wrap((function(t) { for (;;) switch (t.prev = t.next) { case 0: i = e, n = _createForOfIteratorHelper(E.hooks), t.prev = 2, n.s(); case 4: if ((r = n.n()).done) { t.next = 22; break; } if ((o = r.value)[A]) { t.next = 8; break; } return t.abrupt("continue", 20); case 8: if (null != i) { t.next = 10; break; } return t.abrupt("break", 22); case 10: return t.prev = 10, t.next = 13, o[A].apply(this, Array.isArray(i) ? i : [ i ]); case 13: a = t.sent, i = a, t.next = 20; break; case 17: t.prev = 17, t.t0 = t.catch(10), console.error("CWSS Hook Error (".concat(A, "):"), t.t0, o); case 20: t.next = 4; break; case 22: t.next = 27; break; case 24: t.prev = 24, t.t1 = t.catch(2), n.e(t.t1); case 27: return t.prev = 27, n.f(), t.finish(27); case 30: return t.abrupt("return", i); case 31: case "end": return t.stop(); } }), _callee, this, [ [ 2, 24, 27, 30 ], [ 10, 17 ] ]); }))); return function(A, t) { return e.apply(this, arguments); }; }(), makeNative = function(A, e) { try { Object.defineProperty(A, "toString", { value: function() { var A; return (A = Function.toString).call.apply(A, [ e ].concat(Array.prototype.slice.call(arguments))); }, writable: !1, configurable: !0, enumerable: !1 }); } catch (e) { console.warn("Failed to spoof toString for:", A, e); } }, v = function() { return (0, n.A)((function WebSocketProxy(A, e) { (0, i.A)(this, WebSocketProxy), this._url = A, this._protocols = e, this._realWebSocket = null, this._listeners = {}, this._onEventListeners = {}, this._initialMessageSent = !1, this._swapCallback = null, this._targetServerName = null, this.binaryType = "blob", this.readyState = l.CONNECTING, this.url = this._url, this.send = this.send.bind(this), this.close = this.close.bind(this), this.addEventListener = this.addEventListener.bind(this), this.removeEventListener = this.removeEventListener.bind(this), this.dispatchEvent = this.dispatchEvent.bind(this), this.swapToServer = this.swapToServer.bind(this), E.sockets.push(this), w.call(this, "init", []), this._establishConnection(this._url, this._protocols); }), [ { key: "_establishConnection", value: function(e, i) { var n = this; this._url = e, this.url = e, this._protocols = i, this._initialMessageSent = !1, this.readyState = l.CONNECTING, this._realWebSocket && (console.warn("WebSocket Proxy: _establishConnection cleaning up existing socket."), this._removeRealSocketListeners(), this._realWebSocket = null); try { this._realWebSocket = i ? new l(e, i) : new l(e), this._realWebSocket.binaryType = this.binaryType, this._realWebSocket.onopen = function(A) { return n._handleEventAsync("open", A); }, this._realWebSocket.onmessage = function(A) { return n._handleEventAsync("message", A); }, this._realWebSocket.onerror = function(A) { return n._handleEventAsync("error", A); }, this._realWebSocket.onclose = function(A) { return n._handleEventAsync("close", A); }; } catch (e) { console.error("WebSocket Proxy: Error creating real WebSocket:", e), this.readyState = l.CLOSED, this._realWebSocket = null, setTimeout((0, A.A)(t().mark((function _callee2() { return t().wrap((function(A) { for (;;) switch (A.prev = A.next) { case 0: return A.next = 2, n._handleEventAsync("error", new Event("error")); case 2: return A.next = 4, n._handleEventAsync("close", new CloseEvent("close", { code: 1006, reason: "Proxy connection failed", wasClean: !1 })); case 4: case "end": return A.stop(); } }), _callee2); }))), 0); } } }, { key: "_removeRealSocketListeners", value: function() { this._realWebSocket && (this._realWebSocket.onopen = null, this._realWebSocket.onmessage = null, this._realWebSocket.onerror = null, this._realWebSocket.onclose = null); } }, { key: "_handleEventAsync", value: (r = (0, A.A)(t().mark((function _callee3(A, e) { var i, n, r, o, a, s = this; return t().wrap((function(t) { for (;;) switch (t.prev = t.next) { case 0: if (!e.target || e.target === this._realWebSocket) { t.next = 2; break; } return t.abrupt("return"); case 2: return i = this._swapCallback, n = !1, t.next = 6, w.call(this, A, e); case 6: if (null != (r = t.sent)) { t.next = 10; break; } return "close" === A && this._realWebSocket && (this.readyState = this._realWebSocket.readyState), t.abrupt("return"); case 10: if (o = r, i) if ("open" === A) { this._swapCallback = null; try { i(null, this); } catch (A) { console.error("Error in swap success callback:", A); } n = !0; } else if (("error" === A || "close" === A) && this.readyState === l.CONNECTING) { this._swapCallback = null; try { i(o || new Error("Connection failed: ".concat(A)), this); } catch (A) { console.error("Error in swap failure callback:", A); } n = !0; } if (this._realWebSocket ? this.readyState = this._realWebSocket.readyState : "close" !== A && (this.readyState = l.CLOSED), "message" === A && !this._initialMessageSent) if (this.readyState === l.OPEN && this._realWebSocket) try { this.sendServer(new Uint8Array([ 16, 0 ]).buffer), this._initialMessageSent = !0; } catch (A) { console.error("WebSocket Proxy: Error sending internal handshake:", A); } else console.warn("WebSocket Proxy: State not OPEN post-hooks. Handshake skipped."); if ("function" == typeof (a = this._onEventListeners[A])) try { a.call(this, o); } catch (e) { console.error("WebSocket Proxy: Error in 'on".concat(A, "' handler:"), e); } _toConsumableArray(this._listeners[A] || []).forEach((function(e) { var t; try { var i; "function" == typeof e.listener ? e.listener.call(s, o) : "function" == typeof (null === (i = e.listener) || void 0 === i ? void 0 : i.handleEvent) && e.listener.handleEvent.call(e.listener, o); } catch (e) { console.error("WebSocket Proxy: Error in addEventListener '".concat(A, "' handler:"), e); } null !== (t = e.options) && void 0 !== t && t.once && s.removeEventListener(A, e.listener, e.options); })), !i || n || "close" !== A && "error" !== A || (this._swapCallback = null); case 21: case "end": return t.stop(); } }), _callee3, this); }))), function(A, e) { return r.apply(this, arguments); }) }, { key: "swapToServer", value: function(A, e, t, i) { var n = this; if (console.log(arguments), this._swapCallback = "function" == typeof t ? t : null, this._targetServerName = i || null, B.setCurrentServerName(this._targetServerName), this.readyState !== l.CLOSING) { if (this._realWebSocket) { this._removeRealSocketListeners(); try { this._realWebSocket.close(1e3, "Proxy Initiated Server Swap"); } catch (A) { console.error("WS Proxy: Error closing old socket during swap:", A); } this._realWebSocket = null; } this.readyState = l.CONNECTING, setTimeout((function() { n._swapCallback, n._establishConnection(A, e || n._protocols); }), 500); } else console.warn("WS Proxy: swapToServer called while closing."); } }, { key: "sendServer", value: function(A) { if (!this._realWebSocket || this.readyState !== l.OPEN) throw console.warn("WS Proxy: sendServer failed - not OPEN.", { state: this.readyState }), new DOMException("sendServer Failed: State is ".concat(this.readyState), "InvalidStateError"); try { f.call(this._realWebSocket, A); } catch (A) { throw console.error("WS Proxy: Error during sendServer():", A), A; } } }, { key: "sendClient", value: function(A) { var e = this._realWebSocket ? new URL(this._realWebSocket.url).origin : window.location.origin, t = new MessageEvent("message", { data: A, origin: e }); t._isEPushInjected = !0, this._handleEventAsync("message", t); } }, { key: "send", value: (e = (0, A.A)(t().mark((function _callee4(A) { var e, i; return t().wrap((function(t) { for (;;) switch (t.prev = t.next) { case 0: return t.next = 2, w.call(this, "send", A); case 2: if (null != (e = t.sent)) { t.next = 5; break; } return t.abrupt("return"); case 5: if (i = e, this._realWebSocket && this.readyState === l.OPEN) { t.next = 9; break; } throw console.warn("WS Proxy: Game tried to send when not OPEN (post-hooks).", { state: this.readyState }), new DOMException("Failed to execute 'send' on 'WebSocket': State is ".concat(this.readyState), "InvalidStateError"); case 9: try { this.sendServer(i); } catch (A) { console.error("WS Proxy: Error during game's send() after hooks:", A), this._handleEventAsync("error", new ErrorEvent("error", { error: A, message: "Send failed post-hooks" })); } case 10: case "end": return t.stop(); } }), _callee4, this); }))), function(A) { return e.apply(this, arguments); }) }, { key: "close", value: function(e, i) { var n = this; if (this.readyState !== l.CLOSING && this.readyState !== l.CLOSED && this._realWebSocket) { this.readyState = l.CLOSING; try { var r = void 0 === e ? 1e3 : e; if (!(1e3 === r || r >= 3e3 && r <= 4999)) throw new DOMException; var o = i || ""; this._realWebSocket.close(r, o); } catch (e) { console.error("WS Proxy: Error calling _realWebSocket.close() from proxy close():", e), this.readyState = l.CLOSED, this._removeRealSocketListeners(), this._realWebSocket = null, setTimeout((0, A.A)(t().mark((function _callee5() { return t().wrap((function(A) { for (;;) switch (A.prev = A.next) { case 0: return A.next = 2, n._handleEventAsync("error", new ErrorEvent("error", { error: e, message: "Close failed" })); case 2: return A.next = 4, n._handleEventAsync("close", new CloseEvent("close", { code: 1006, reason: e.message, wasClean: !1 })); case 4: case "end": return A.stop(); } }), _callee5); }))), 0); } } } }, { key: "addEventListener", value: function(A, e, t) { this._listeners[A] || (this._listeners[A] = []), this._listeners[A].find((function(A) { return A.listener === e && A.options === t; })) || this._listeners[A].push({ listener: e, options: t }); } }, { key: "removeEventListener", value: function(A, e, t) { this._listeners[A] && (this._listeners[A] = this._listeners[A].filter((function(A) { return !(A.listener === e && A.options === t); }))); } }, { key: "dispatchEvent", value: function(A) { return console.warn("WS Proxy: dispatchEvent called, basic hook integration needed if complex events used.", A), this._handleEventAsync(A.type, A), !A.defaultPrevented; } }, { key: "onopen", get: function() { return this._onEventListeners.open; }, set: function(A) { this._onEventListeners.open = A; } }, { key: "onmessage", get: function() { return this._onEventListeners.message; }, set: function(A) { this._onEventListeners.message = A; } }, { key: "onerror", get: function() { return this._onEventListeners.error; }, set: function(A) { this._onEventListeners.error = A; } }, { key: "onclose", get: function() { return this._onEventListeners.close; }, set: function(A) { this._onEventListeners.close = A; } }, { key: "binaryType", get: function() { return this._binaryType; }, set: function(A) { var e = A; if ("blob" !== A && "arraybuffer" !== A && (e = "blob"), this._binaryType = e, this._realWebSocket) try { this._realWebSocket.binaryType = e; } catch (A) {} } }, { key: "bufferedAmount", get: function() { var A; return (null === (A = this._realWebSocket) || void 0 === A ? void 0 : A.bufferedAmount) || 0; } }, { key: "extensions", get: function() { var A; return (null === (A = this._realWebSocket) || void 0 === A ? void 0 : A.extensions) || ""; } }, { key: "protocol", get: function() { var A; return (null === (A = this._realWebSocket) || void 0 === A ? void 0 : A.protocol) || ""; } } ]); var e, r; }(); for (var p in window.WebSocket = function() { for (var A = arguments.length, e = new Array(A), t = 0; t < A; t++) e[t] = arguments[t]; var i = executeSyncHooks.call(this, "args", e); if (null == i) throw new Error("WebSocket creation blocked by CWSS hook."); return function(A, e, t) { if (_isNativeReflectConstruct()) return Reflect.construct.apply(null, arguments); var i = [ null ]; i.push.apply(i, e); var n = new (A.bind.apply(A, i)); return t && _setPrototypeOf(n, t.prototype), n; }(v, _toConsumableArray(i)); }, h) if ("constructor" !== p && !(p in v.prototype)) try { window.WebSocket.prototype[p] = h[p]; } catch (A) { console.warn("Could not copy property ".concat(p, " to WebSocket prototype")); } for (var D = 0, b = [ "CONNECTING", "OPEN", "CLOSING", "CLOSED" ]; D < b.length; D++) { var k = b[D]; window.WebSocket[k] = l[k], v[k] = l[k]; } makeNative(window.WebSocket, E.OriginalWebSocket), makeNative(v.prototype.send, f), makeNative(v.prototype.addEventListener, d), makeNative(v.prototype.removeEventListener, y), window.serverSwap = function(A, e, t) { var i = A ? A.toUpperCase() : ""; if ("EU" === i || "NA" === i) if ("number" != typeof e || e < 1 || !Number.isInteger(e)) console.error("serverSwap: Invalid server index '".concat(e, "'. Must be integer >= 1.")); else { var n = e - 1, r = "wss://".concat("EU" === i ? "eu.evades.io" : "evades.io", "/api/game/connect?backend=").concat(n, "&game=0"), o = "".concat(i, " ").concat(e), a = null; if (E.sockets.length > 0 && (a = E.sockets.find((function(A) { return A.readyState === v.OPEN; })) || E.sockets[E.sockets.length - 1]), a instanceof v) a.swapToServer(r, void 0, t, o); else if (console.error("serverSwap: No active WebSocket proxy instance found."), "function" == typeof t) try { t(new Error("No active WebSocket proxy instance found for swap."), null); } catch (A) { console.error("Error in immediate swap failure callback:", A); } } else console.error("serverSwap: Invalid region. Use 'EU' or 'NA'."); }, window.WebSocketProxy = v; const S = E; __webpack_require__(3851), __webpack_require__(1278); var m = __webpack_require__(816); function _defineProperty(A, e, t) { return (e = (0, m.A)(e)) in A ? Object.defineProperty(A, e, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : A[e] = t, A; } function ownKeys(A, e) { var t = Object.keys(A); if (Object.getOwnPropertySymbols) { var i = Object.getOwnPropertySymbols(A); e && (i = i.filter((function(e) { return Object.getOwnPropertyDescriptor(A, e).enumerable; }))), t.push.apply(t, i); } return t; } function _objectSpread(A) { for (var e = 1; e < arguments.length; e++) { var t = null != arguments[e] ? arguments[e] : {}; e % 2 ? ownKeys(Object(t), !0).forEach((function(e) { _defineProperty(A, e, t[e]); })) : Object.getOwnPropertyDescriptors ? Object.defineProperties(A, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach((function(e) { Object.defineProperty(A, e, Object.getOwnPropertyDescriptor(t, e)); })); } return A; } const N = { settings: { enabled: !0, timeoutMs: 5e3 }, lastActionTime: 0, timerId: null, init: function(A) { console.log("[E-Push] Initializing Anti-AFK..."), this.updateSettings(A), this.lastActionTime = Date.now(), this.stop(), this.settings.enabled && this.start(); }, start: function() { this.timerId || (this.timerId = setInterval(this.checkAfk.bind(this), 250), console.log("[E-Push] Anti-AFK started (Timeout: ".concat(this.settings.timeoutMs, "ms)."))); }, stop: function() { this.timerId && (clearInterval(this.timerId), this.timerId = null, console.log("[E-Push] Anti-AFK stopped.")); }, updateSettings: function(A) { if (A) { var e = this.settings.enabled; this.settings = _objectSpread(_objectSpread({}, this.settings), A), this.settings.enabled && !e ? this.start() : !this.settings.enabled && e && this.stop(); } }, updateLastActionTime: function() { this.lastActionTime = Date.now(); }, checkAfk: function() { if (this.settings.enabled) { if (nA.coder && nA.rawCoder && B.getPlayer()) { var A = Date.now() - this.lastActionTime; A < this.settings.timeoutMs || (console.log("[E-Push] Anti-AFK triggered after ".concat(A, "ms idle.")), this.simulateKeyPress(), this.updateLastActionTime()); } } else this.stop(); }, simulateKeyPress: function() { var A = S.sockets.length > 0 ? S.sockets[S.sockets.length - 1] : null; if (nA.coder && nA.rawCoder && A && A.readyState === WebSocket.OPEN) try { var e, t = nA.rawCoder.lookupEnum("KeyType"), i = null == t || null === (e = t.values) || void 0 === e ? void 0 : e.UPGRADE_ABILITY_THREE_KEY; if (null == i) return void console.log("[E-Push] Anti-AFK: KeyType UPGRADE_ABILITY_THREE_KEY not found in protobuf schema."); var n = { sequence: nA.sequenceCounter++, keys: [ { keyEvent: 1, keyType: i } ] }, r = nA.coder.encode.client(n); if (!r) return void console.log("[E-Push] Anti-AFK: Failed to encode key press data."); A.send(r); } catch (A) { console.log("[E-Push] Anti-AFK: Error simulating key press:", A); } else console.warn("[E-Push] Anti-AFK: Cannot simulate key press - network components or active WebSocket not ready."); } }; __webpack_require__(739); var G = { defaultState: { id: null, heroType: null, heroName: "Unknown", level: 1, energy: 30, totalSpeed: 5, totalEnergyRegen: 1, abilityOne: { level: 0 }, abilityTwo: { level: 0 }, abilityThree: { level: 0 }, x: 0, y: 0 }, currentState: null, initialize: function() { this.currentState = JSON.parse(JSON.stringify(this.defaultState)), console.log("[E-Push:PlayerState] Initialized player state."); }, getState: function() { return this.currentState; }, getPlayerId: function() { var A; return null === (A = this.currentState) || void 0 === A ? void 0 : A.id; }, getPlayerPosition: function() { return this.currentState ? { x: this.currentState.x, y: this.currentState.y } : { x: 0, y: 0 }; }, updateFromPacket: function(A) { var e = this; if (A && this.currentState && (void 0 !== A.selfId && null !== A.selfId && 0 !== A.selfId && this.currentState.id !== A.selfId && (this.currentState.id = A.selfId, console.log("[E-Push:PlayerState] Player ID set to: ".concat(this.currentState.id))), null !== this.currentState.id)) { if (A.complete && Array.isArray(A.globalEntities)) { var t = A.globalEntities.find((function(A) { return A.id === e.currentState.id; })); if (t && void 0 !== t.heroType && this.currentState.heroType !== t.heroType) { this.currentState.heroType = t.heroType; var i = Q.getHeroNameById(t.heroType); this.currentState.heroName = i, console.log("[E-Push:PlayerState] Player HeroType updated to: ".concat(t.heroType, " (").concat(i, ")")); } } if (Array.isArray(A.entities)) { var n = A.entities.find((function(A) { return A.id === e.currentState.id; })); if (n) { var r = {}; for (var o in n) "abilityOne" === o || "abilityTwo" === o || "abilityThree" === o ? n[o] && JSON.stringify(this.currentState[o]) !== JSON.stringify(n[o]) && (this.currentState[o] = JSON.parse(JSON.stringify(n[o])), r[o] = this.currentState[o]) : this.currentState[o] !== n[o] && (this.currentState[o] = n[o], r[o] = n[o]); } } } }, getProperty: function(A) { return this.currentState ? this.currentState[A] : void 0; } }; G.initialize(); const M = G; __webpack_require__(8980), __webpack_require__(4554), __webpack_require__(9868); var J = { playerRadius: 15, safetyMargin: 10, enabled: !0, fieldStrengthBase: 5e3, fieldExponent: 1.3, speedInfluence: 1.6, directionBias: 1, touchingDistance: 2, deadzoneDistance: 0, fieldDataEnabled: !0, fieldData: {}, lastCalculatedForce: { x: 0, y: 0 }, lastForceMagnitude: 0, autoForceKey11: !1, autoForceKey10: !1, key11Threshold: 1e3, key10Threshold: 1e3, init: function() { var A = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}; return void 0 !== A.playerRadius && (this.playerRadius = A.playerRadius), void 0 !== A.safetyMargin && (this.safetyMargin = A.safetyMargin), void 0 !== A.enabled && (this.enabled = A.enabled), void 0 !== A.fieldStrengthBase && (this.fieldStrengthBase = A.fieldStrengthBase), void 0 !== A.fieldExponent && (this.fieldExponent = A.fieldExponent), void 0 !== A.speedInfluence && (this.speedInfluence = A.speedInfluence), void 0 !== A.directionBias && (this.directionBias = A.directionBias), void 0 !== A.touchingDistance && (this.touchingDistance = A.touchingDistance), void 0 !== A.fieldDataEnabled && (this.fieldDataEnabled = A.fieldDataEnabled), console.log("[E-Push] Potential field obstacle avoidance initialized"), this; }, _calculateEntityField: function(A, e, t) { var i = A.id, n = A.x, r = A.y, o = A.radius, a = A.velocity, s = n - e, g = r - t, I = s * s + g * g, c = Math.sqrt(I); if (c > 300) return { x: 0, y: 0, magnitude: 0 }; var u = c <= this.playerRadius + o + this.touchingDistance; if (this.deadzoneDistance > 0 && c <= o + this.deadzoneDistance) return this.fieldDataEnabled && (this.fieldData[i] = { position: { x: n, y: r }, velocity: { x: a.x, y: a.y }, fieldStrength: 0, forceVector: { x: 0, y: 0 }, isTouching: u, inDeadzone: !0 }), { x: 0, y: 0, magnitude: 0, isTouching: u }; var C, Q = this.playerRadius + o + this.safetyMargin, B = Math.max(c - Q, .1); C = u ? 10 * this.fieldStrengthBase : this.fieldStrengthBase / Math.pow(B, this.fieldExponent); var E = Math.sqrt(a.x * a.x + a.y * a.y); C *= 1 + this.speedInfluence * E; var l = 1; if (E > .1) { var h = (a.x / E * s + a.y / E * g) / c; h > 0 && (l = 1 + h * this.directionBias); } C *= l; var f = 0, d = 0; if (c > 0) f = -s / c * C, d = -g / c * C; else { var y = 2 * Math.random() * Math.PI; f = Math.cos(y) * C, d = Math.sin(y) * C; } return this.fieldDataEnabled && (this.fieldData[i] = { position: { x: n, y: r }, velocity: { x: a.x, y: a.y }, fieldStrength: C, forceVector: { x: f, y: d }, isTouching: u }), { x: f, y: d, magnitude: C, isTouching: u }; }, calculateFieldStrengthAtPoint: function(A, e, t) { var i = A.x, n = A.y, r = A.radius, o = A.velocity, a = i - e, s = n - t, g = a * a + s * s, I = Math.sqrt(g); if (I > 300) return 0; var c, u = this.playerRadius + r + this.safetyMargin, C = Math.max(I - u, .1); c = I <= u + this.touchingDistance ? 10 * this.fieldStrengthBase : this.fieldStrengthBase / Math.pow(C, this.fieldExponent); var Q = Math.sqrt(o.x * o.x + o.y * o.y); if (c *= 1 + this.speedInfluence * Q, Q > .1) { var B = o.x / Q, E = o.y / Q, l = Math.sqrt(a * a + s * s); if (l > .1) { var h = B * (a / l) + E * (s / l); if (h < 0) { var f = 1 + .5 * Q; c *= 1 + Math.abs(h) * this.directionBias * f; } } } return c; }, getForceMagnitude: function() { return this.lastForceMagnitude; }, calculateSafeMovement: function(A, e, t) { var i = this, n = B.getPlayer(); if (n && n.isInvulnerable) return B.updateSafeMoveCoords(A, e), { x: A, y: e, collision: !1 }; if (!this.enabled) return B.updateSafeMoveCoords(A, e), { x: A, y: e, collision: !1 }; if (!n || 0 === A && 0 === e) return B.updateSafeMoveCoords(A, e), { x: A, y: e, collision: !1 }; u.updateVelocities(); var r = n.x, o = n.y; this.fieldDataEnabled && (this.fieldData = {}); var a = 0, s = 0, g = !1; u.getTrackedEntities(t).forEach((function(A) { var e = i._calculateEntityField(A, r, o); a += e.x, s += e.y; var t = Math.sqrt(a * a + s * s); i.lastForceMagnitude = t, e.isTouching && (g = !0); })), this.lastCalculatedForce = { x: a, y: s }; var I = Math.sqrt(A * A + e * e); if (0 === I) return { x: A, y: e, collision: !1 }; var c, C, Q = A / I, E = e / I; if (g) { var l = Math.sqrt(a * a + s * s); l > 0 ? (c = a / l * I, C = s / l * I) : (c = A, C = e); } else { var h = Math.sqrt(a * a + s * s); if (h > 0) { var f = I / Math.max(h, I), d = a * f, y = s * f, w = Math.min(h / 2e3, 1); c = Q * I * (1 - w) + d * w, C = E * I * (1 - w) + y * w; } else c = A, C = e; } var v = Math.abs(c - A) > .01 || Math.abs(C - e) > .01; return B.updateSafeMoveCoords(c, C), { x: c, y: C, collision: v, fieldData: this.fieldDataEnabled ? this.fieldData : null }; }, getFieldData: function() { return this.fieldDataEnabled ? this.fieldData : null; } }; const R = J; __webpack_require__(4423), __webpack_require__(9469), __webpack_require__(1699); var U = { enabled: !0, radius: 1, constant: 75, sharpness: 3, maxStrength: 1, headOn: .5, dodgeExclude: [ 0, 1, 126 ], init: function() { var A = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}; return void 0 !== A.exoEnabled && (this.enabled = A.exoEnabled), void 0 !== A.exoRadius && (this.radius = A.exoRadius), void 0 !== A.exoConstant && (this.constant = A.exoConstant), void 0 !== A.exoSharpness && (this.sharpness = A.exoSharpness), void 0 !== A.exoMaxStrength && (this.maxStrength = A.exoMaxStrength), void 0 !== A.exoHeadOn && (this.headOn = A.exoHeadOn), void 0 !== A.exoDodgeExclude && (this.dodgeExclude = A.exoDodgeExclude), console.log("[E-Push] ExoAvoidance module initialized."), this; }, updateSettings: function(A) { void 0 !== A.exoEnabled && (this.enabled = A.exoEnabled), void 0 !== A.exoRadius && (this.radius = A.exoRadius), void 0 !== A.exoConstant && (this.constant = A.exoConstant), void 0 !== A.exoSharpness && (this.sharpness = A.exoSharpness), void 0 !== A.exoMaxStrength && (this.maxStrength = A.exoMaxStrength), void 0 !== A.exoHeadOn && (this.headOn = A.exoHeadOn), console.log("[E-Push] ExoAvoidance settings updated:", { enabled: this.enabled, radius: this.radius, constant: this.constant, sharpness: this.sharpness, maxStrength: this.maxStrength, headOn: this.headOn }); }, _calculateStrength: function(A) { var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 1, t = this.sharpness * e; if (t <= 0) return 0; var i = Math.exp(-t), n = 1 - i; if (n <= 0) return 0; var r = Math.exp(-t * A); return r -= i, r *= 1 / n, r *= this.maxStrength, Math.max(0, r); }, _angleDiffTurnDir: function(A, e) { return (A - e + 3 * Math.PI) % (2 * Math.PI) > Math.PI; }, calculateSafeMovement: function(A, e) { var t = M.currentState, i = B.entities, n = B.area; !this.enabled || !t || !i || !n || t.radius, u.updateVelocities(); var r = [], o = t.x, a = t.y; for (var s in i) { var g, I, c, C, Q = i[s]; if (Q && Q !== t && !(Q.radius <= 0) && nA.isEntityTypeDangerous(Q.entityType) && !this.dodgeExclude.includes(Q.entityType)) { var E = null !== (g = null === (I = Q.velocity) || void 0 === I ? void 0 : I.x) && void 0 !== g ? g : 0, l = null !== (c = null === (C = Q.velocity) || void 0 === C ? void 0 : C.y) && void 0 !== c ? c : 0, h = Q.x, f = Q.y, d = o - h, y = a - f, w = d * d + y * y, v = Q.radius * this.radius, p = this.constant + v, D = t.radius + v, b = D + p; if (w <= b * b && w > .001) { Math.sqrt(w); var k, S = Math.atan2(y, d); k = w <= D * D ? 0 : 1; var m = Math.cos(S), N = Math.sin(S), G = { x: h + m * D, y: f + N * D }, J = { x: h + E, y: f + l }, R = { x: o, y: a }, U = Math.sqrt(A * A + e * e); if (U > .1) { var L = A / U, Y = e / U; R.x += 5 * L, R.y += 5 * Y; } var K = R.x - J.x, H = R.y - J.y, x = K * K + H * H, O = Math.atan2(l, E), q = x > .001 && w > .001 ? (.8 * Math.abs(Math.cos(S - O)) + .2) * (w / x) : 1, T = k * Math.hypot(o - G.x, a - G.y), P = p > 0 ? T / p : 0, _ = this._calculateStrength(P, 1 / q); if (_ > 0 && (r.push({ x: m * _, y: N * _ }), Math.cos(S - O) >= .8)) { var j = this._angleDiffTurnDir(S, O) ? -1 : 1, V = this.headOn; r.push({ x: N * _ * j * V, y: m * _ * -j * V }); } } } } if (0 === r.length) return console.log("[ExoAvoidance] No forces applied, returning desired movement."), { x: A, y: e, collision: !1 }; for (var Z = { x: 0, y: 0 }, W = 0, X = r; W < X.length; W++) { var z = X[W]; Z.x += z.x, Z.y += z.y; } if (n && n.width > 0 && n.height > 0) { var $ = Math.abs(o - t.radius - n.x) <= 1, AA = Math.abs(o + t.radius - (n.x + n.width)) <= 1, eA = Math.abs(a - t.radius - n.y) <= 1, tA = Math.abs(a + t.radius - (n.y + n.height)) <= 1; (eA && Z.y < 0 || tA && Z.y > 0) && (Z.x *= 2), ($ && Z.x < 0 || AA && Z.x > 0) && (Z.y *= 2); } var iA = Math.sqrt(Z.x * Z.x + Z.y * Z.y), rA = A, oA = e, aA = !1; if (iA > .1) { var sA = Z.x / iA, gA = Z.y / iA, IA = Math.sqrt(A * A + e * e); if (IA > .01) rA = sA * IA, oA = gA * IA; else { var cA = Math.min(150 * iA, 150); rA = sA * cA, oA = gA * cA; } !(aA = Math.abs(rA - A) > .01 || Math.abs(oA - e) > .01) && Math.sqrt(rA * rA + oA * oA) > .01 && (aA = !0); } return { x: rA, y: oA, collision: aA }; } }; const L = U; function necroResurrectionBlocker_arrayLikeToArray(A, e) { (null == e || e > A.length) && (e = A.length); for (var t = 0, i = Array(e); t < e; t++) i[t] = A[t]; return i; } var Y = { enabled: !0, init: function() { console.log("[E-Push] Necromancer Resurrection Blocker initialized"); }, shouldBlockResurrection: function() { if (!this.enabled) return !1; var A = M.getState(); if ("NECRO" !== (null == A ? void 0 : A.heroName)) return !1; var e = B.getPlayer(); if (!e) return !1; var t, i = u.getTrackedEntities(Q.getEntityTypeName.bind(Q)), n = R.playerRadius || 15, r = R.touchingDistance || 2, o = function(A, e) { var t = "undefined" != typeof Symbol && A[Symbol.iterator] || A["@@iterator"]; if (!t) { if (Array.isArray(A) || (t = function(A, e) { if (A) { if ("string" == typeof A) return necroResurrectionBlocker_arrayLikeToArray(A, e); var t = {}.toString.call(A).slice(8, -1); return "Object" === t && A.constructor && (t = A.constructor.name), "Map" === t || "Set" === t ? Array.from(A) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? necroResurrectionBlocker_arrayLikeToArray(A, e) : void 0; } }(A)) || e && A && "number" == typeof A.length) { t && (A = t); var i = 0, F = function() {}; return { s: F, n: function() { return i >= A.length ? { done: !0 } : { done: !1, value: A[i++] }; }, e: function(A) { throw A; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var n, r = !0, o = !1; return { s: function() { t = t.call(A); }, n: function() { var A = t.next(); return r = A.done, A; }, e: function(A) { o = !0, n = A; }, f: function() { try { r || null == t.return || t.return(); } finally { if (o) throw n; } } }; }(i); try { for (o.s(); !(t = o.n()).done; ) { var a = t.value, s = a.x - e.x, g = a.y - e.y, I = s * s + g * g, c = n + a.radius + r; if (I <= c * c) return !0; } } catch (A) { o.e(A); } finally { o.f(); } return !1; } }; const K = Y; function timeTravelIndicator_arrayLikeToArray(A, e) { (null == e || e > A.length) && (e = A.length); for (var t = 0, i = Array(e); t < e; t++) i[t] = A[t]; return i; } __webpack_require__(3771); var H = { enabled: !0, playerHistory: [], lastIndicatorColor: "rgba(0, 255, 0, 0.7)", _isActive: !1, isActive: function() { if (!this.enabled) return !1; var A = M.getState(); return "CHRONO" === (A ? A.heroName : null); }, init: function() { this.playerHistory = [], console.log("[E-Push] Time Travel Indicator initialized"); }, update: function() { if (this.isActive()) { var A = B.getPlayer(); if (A) { var e = Date.now(); (0 === this.playerHistory.length || this.playerHistory[this.playerHistory.length - 1].timestamp < e) && this.playerHistory.push({ timestamp: e, x: A.x, y: A.y }); for (var t = e - 3660, i = -1, n = 0; n < this.playerHistory.length; n++) if (this.playerHistory[n].timestamp >= t) { i = n; break; } i > 0 && this.playerHistory.splice(0, i), this.playerHistory.length > 500 && this.playerHistory.splice(0, this.playerHistory.length - 500); } else this.playerHistory.length > 0 && (this.playerHistory = [], console.log("[E-Push] Player not found, resetting time travel history.")); } else this.playerHistory.length > 0 && (this.playerHistory = []); }, getPastPosition: function(A) { if (this.playerHistory.length < 2) return null; var e = Date.now() - A, t = this.playerHistory; if (e < t[0].timestamp) return null; if (e >= t[t.length - 1].timestamp) return { x: t[t.length - 1].x, y: t[t.length - 1].y }; for (var i = -1, n = t.length - 2; n >= 0; n--) if (t[n].timestamp <= e) { i = n; break; } if (-1 === i) return console.warn("[E-Push] Could not find bracketing history point for time travel."), null; var r = i + 1, o = t[i], a = t[r], s = a.timestamp - o.timestamp; if (s <= 0) return { x: o.x, y: o.y }; var g = (e - o.timestamp) / s; return { x: o.x + (a.x - o.x) * g, y: o.y + (a.y - o.y) * g }; }, isPastPositionSafe: function() { var A = this.getPastPosition(2660); if (!A) return !0; var e, t = R.playerRadius || network.playerRadius || 15, i = function(A, e) { var t = "undefined" != typeof Symbol && A[Symbol.iterator] || A["@@iterator"]; if (!t) { if (Array.isArray(A) || (t = function(A, e) { if (A) { if ("string" == typeof A) return timeTravelIndicator_arrayLikeToArray(A, e); var t = {}.toString.call(A).slice(8, -1); return "Object" === t && A.constructor && (t = A.constructor.name), "Map" === t || "Set" === t ? Array.from(A) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? timeTravelIndicator_arrayLikeToArray(A, e) : void 0; } }(A)) || e && A && "number" == typeof A.length) { t && (A = t); var i = 0, F = function() {}; return { s: F, n: function() { return i >= A.length ? { done: !0 } : { done: !1, value: A[i++] }; }, e: function(A) { throw A; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var n, r = !0, o = !1; return { s: function() { t = t.call(A); }, n: function() { var A = t.next(); return r = A.done, A; }, e: function(A) { o = !0, n = A; }, f: function() { try { r || null == t.return || t.return(); } finally { if (o) throw n; } } }; }(u.getTrackedEntities(Q.getEntityTypeName.bind(Q))); try { for (i.s(); !(e = i.n()).done; ) { var n = e.value, r = t + u.getEntityRadius(n, Q.getEntityTypeName.bind(Q)) + 5, o = A.x - n.x, a = A.y - n.y; if (o * o + a * a < r * r) return !1; } } catch (A) { i.e(A); } finally { i.f(); } return !0; }, draw: function(A, e, t, i) { if (this.isActive()) { var n = this.getPastPosition(2660); if (n && e) { var r, o, a, s = t + (n.x - e.x), g = i + (n.y - e.y), I = R.playerRadius || network.playerRadius || 15; this.isPastPositionSafe() ? (r = 0, o = 155 + (Math.sin(Date.now() / 300) + 1) / 2 * 100, a = 0) : (r = 155 + (Math.sin(Date.now() / 200) + 1) / 2 * 100, o = 0, a = 0), this.lastIndicatorColor = "rgba(".concat(Math.floor(r), ", ").concat(Math.floor(o), ", ").concat(Math.floor(a), ", ").concat(.7, ")"), A.fillStyle = this.lastIndicatorColor, A.beginPath(), A.arc(s, g, I, 0, 2 * Math.PI), A.fill(), A.strokeStyle = "rgba(255, 255, 255, 0.3)", A.lineWidth = 1, A.stroke(); } } } }; void 0 === R.playerRadius && (console.warn("[E-Push] obstacleAvoidance.playerRadius not set, using default 15 for time travel indicator."), R.playerRadius = 15); const x = H; function teleportIndicator_arrayLikeToArray(A, e) { (null == e || e > A.length) && (e = A.length); for (var t = 0, i = Array(e); t < e; t++) i[t] = A[t]; return i; } const O = { enabled: !0, isActive: function() { if (!this.enabled) return !1; var A = M.getState(); return "RIME" === (A ? A.heroName : null); }, init: function() { console.log("[E-Push] Rime Teleport Indicator initialized"); }, getTargetPosition: function() { var A = B.getPlayer(); if (!A) return null; var e = B.safeMoveX, t = B.safeMoveY; Math.abs(e) < .01 && Math.abs(t) < .01 && (e = B.mouseGameX - A.x, t = B.mouseGameY - A.y); var i = Math.sqrt(e * e + t * t); if (i < .1) return { x: A.x + 160, y: A.y }; var n = e / i, r = t / i; return { x: A.x + 160 * n, y: A.y + 160 * r }; }, isTargetPositionSafe: function() { if (!Q || "function" != typeof Q.getEntityTypeName) return console.error("[E-Push TeleportIndicator] Protobuf handler or getEntityTypeName not ready!"), !0; var A = this.getTargetPosition(); if (!A) return !0; var e, t = R.playerRadius || 15, i = R.safetyMargin || 5, n = function(A, e) { var t = "undefined" != typeof Symbol && A[Symbol.iterator] || A["@@iterator"]; if (!t) { if (Array.isArray(A) || (t = function(A, e) { if (A) { if ("string" == typeof A) return teleportIndicator_arrayLikeToArray(A, e); var t = {}.toString.call(A).slice(8, -1); return "Object" === t && A.constructor && (t = A.constructor.name), "Map" === t || "Set" === t ? Array.from(A) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? teleportIndicator_arrayLikeToArray(A, e) : void 0; } }(A)) || e && A && "number" == typeof A.length) { t && (A = t); var i = 0, F = function() {}; return { s: F, n: function() { return i >= A.length ? { done: !0 } : { done: !1, value: A[i++] }; }, e: function(A) { throw A; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var n, r = !0, o = !1; return { s: function() { t = t.call(A); }, n: function() { var A = t.next(); return r = A.done, A; }, e: function(A) { o = !0, n = A; }, f: function() { try { r || null == t.return || t.return(); } finally { if (o) throw n; } } }; }(u.getTrackedEntities(Q.getEntityTypeName.bind(Q), !0)); try { for (n.s(); !(e = n.n()).done; ) { var r = e.value, o = t + u.getEntityRadius(r, Q.getEntityTypeName.bind(Q)) + i, a = A.x - r.x, s = A.y - r.y; if (a * a + s * s < o * o) return !1; } } catch (A) { n.e(A); } finally { n.f(); } return !0; }, draw: function(A, e, t, i) { if (this.isActive()) { var n = this.getTargetPosition(); if (n && e) { var r, o, a, s = t + (n.x - e.x), g = i + (n.y - e.y), I = R.playerRadius || 15; if (this.isTargetPositionSafe()) { var c = (Math.sin(Date.now() / 250) + 1) / 2; r = 0, o = 100 + 100 * c, a = 155 + 100 * c; } else r = 155 + (Math.sin(Date.now() / 200) + 1) / 2 * 100, o = 0, a = 0; var u = "rgba(".concat(Math.floor(r), ", ").concat(Math.floor(o), ", ").concat(Math.floor(a), ", ").concat(.7, ")"); A.fillStyle = u, A.beginPath(), A.arc(s, g, I, 0, 2 * Math.PI), A.fill(), A.strokeStyle = "rgba(255, 255, 255, 0.4)", A.lineWidth = 1, A.stroke(); } } } }, src_outgoingPacketProcessor_process = function(A) { var e = !1; if (!A) return { modified: e, payload: A }; var t = null, i = "none", n = 0; if (A.mouseDown && A.mouseDown.updated && Q.isReady()) { var r = A.mouseDown.x, o = A.mouseDown.y; if (L.enabled ? (t = L.calculateSafeMovement(r, o), console.log("[E-Push:Outgoing] Exo avoidance:", t), i = "exo") : R.enabled && (t = R.calculateSafeMovement(r, o, Q.getEntityTypeName.bind(Q)), n = R.getForceMagnitude(), i = "potential"), t && t.collision && (e = !0, console.log("originalX: ".concat(r, ", originalY: ").concat(o)), console.log("safeMovement: ".concat(t.x, ", ").concat(t.y)), A.mouseDown.x = Math.round(t.x), A.mouseDown.y = Math.round(t.y), console.log("[E-Push:Outgoing ".concat(i, "] Course correction: (").concat(r, ",").concat(o, ") → (").concat(A.mouseDown.x, ",").concat(A.mouseDown.y, ")"))), "potential" === i) { var a = R.autoForceKey11 && n > R.key11Threshold, s = R.autoForceKey10 && n > R.key10Threshold; (a || s) && (e = !0, A.keys || (A.keys = []), a && !A.keys.some((function(A) { return 11 === A.keyType; })) && (A.keys.push({ keyEvent: 1, keyType: 11 }), console.log("[E-Push:Outgoing] Key 11 (Ability 1) forced: Avoidance Force ".concat(n.toFixed(0), " > ").concat(R.key11Threshold))), s && !A.keys.some((function(A) { return 10 === A.keyType; })) && (A.keys.push({ keyEvent: 1, keyType: 10 }), console.log("[E-Push:Outgoing] Key 10 (Ability 2) forced: Avoidance Force ".concat(n.toFixed(0), " > ").concat(R.key10Threshold)))); } } if (A.keys) try { if (-1 !== A.keys.findIndex((function(A) { return 10 === A.keyType; }))) { var g = null; if (K.shouldBlockResurrection() ? g = "Necro Res unsafe (enemy nearby)" : x.isActive() && !x.isPastPositionSafe() ? g = "Time Travel unsafe (target obstructed)" : O.isActive() && !O.isTargetPositionSafe() && (g = "Teleport unsafe (target obstructed)"), g) { var I = A.keys.findIndex((function(A) { return 10 === A.keyType; })); -1 !== I && (A.keys.splice(I, 1), console.log("[E-Push:Outgoing] Blocked Key 10 press: ".concat(g)), e = !0); } } } catch (A) { console.error("[E-Push:Outgoing] Error processing key 10 interception:", A); } return { modified: e, payload: A }; }; function boundaryVisualizer_createForOfIteratorHelper(A, e) { var t = "undefined" != typeof Symbol && A[Symbol.iterator] || A["@@iterator"]; if (!t) { if (Array.isArray(A) || (t = function(A, e) { if (A) { if ("string" == typeof A) return boundaryVisualizer_arrayLikeToArray(A, e); var t = {}.toString.call(A).slice(8, -1); return "Object" === t && A.constructor && (t = A.constructor.name), "Map" === t || "Set" === t ? Array.from(A) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? boundaryVisualizer_arrayLikeToArray(A, e) : void 0; } }(A)) || e && A && "number" == typeof A.length) { t && (A = t); var i = 0, F = function() {}; return { s: F, n: function() { return i >= A.length ? { done: !0 } : { done: !1, value: A[i++] }; }, e: function(A) { throw A; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var n, r = !0, o = !1; return { s: function() { t = t.call(A); }, n: function() { var A = t.next(); return r = A.done, A; }, e: function(A) { o = !0, n = A; }, f: function() { try { r || null == t.return || t.return(); } finally { if (o) throw n; } } }; } function boundaryVisualizer_arrayLikeToArray(A, e) { (null == e || e > A.length) && (e = A.length); for (var t = 0, i = Array(e); t < e; t++) i[t] = A[t]; return i; } const q = { areaBounds: null, dangerZones: [], safeZones: [], areaTeleportZones: [], zoneTeleportZones: [], updateBoundaries: function(A) { var e = this; if (!A || !Array.isArray(A.zones)) return console.warn("[BoundaryVisualizer] Invalid or missing area data."), this.areaBounds = null, this.dangerZones = [], this.safeZones = [], this.areaTeleportZones = [], void (this.zoneTeleportZones = []); this.areaBounds = { x: A.x, y: A.y, width: A.width, height: A.height }, this.dangerZones = [], this.safeZones = [], this.areaTeleportZones = [], this.zoneTeleportZones = [], A.zones.forEach((function(A) { var t = { x: A.x, y: A.y, width: A.width, height: A.height, type: A.type }; 0 === A.type ? e.dangerZones.push(t) : 1 === A.type ? e.safeZones.push(t) : 2 === A.type ? e.areaTeleportZones.push(t) : 3 === A.type && e.zoneTeleportZones.push(t); })); }, getAreaBounds: function() { return this.areaBounds; }, getDangerZones: function() { return this.dangerZones; }, getSafeZones: function() { return this.safeZones; }, getAreaTeleportZones: function() { return this.areaTeleportZones; }, getZoneTeleportZones: function() { return this.zoneTeleportZones; }, getZoneTypeAt: function(A, e) { if (!this.areaBounds) return "Outside"; if (A < this.areaBounds.x || A >= this.areaBounds.x + this.areaBounds.width || e < this.areaBounds.y || e >= this.areaBounds.y + this.areaBounds.height) { var t, i = boundaryVisualizer_createForOfIteratorHelper(this.zoneTeleportZones); try { for (i.s(); !(t = i.n()).done; ) { var n = t.value; if (A >= n.x && A < n.x + n.width && e >= n.y && e < n.y + n.height) return "Zone Teleporter"; } } catch (A) { i.e(A); } finally { i.f(); } var r, o = boundaryVisualizer_createForOfIteratorHelper(this.areaTeleportZones); try { for (o.s(); !(r = o.n()).done; ) { var a = r.value; if (A >= a.x && A < a.x + a.width && e >= a.y && e < a.y + a.height) return "Area Teleporter"; } } catch (A) { o.e(A); } finally { o.f(); } var s, g = boundaryVisualizer_createForOfIteratorHelper(this.safeZones); try { for (g.s(); !(s = g.n()).done; ) { var I = s.value; if (A >= I.x && A < I.x + I.width && e >= I.y && e < I.y + I.height) return "Safe"; } } catch (A) { g.e(A); } finally { g.f(); } var c, u = boundaryVisualizer_createForOfIteratorHelper(this.dangerZones); try { for (u.s(); !(c = u.n()).done; ) { var C = c.value; if (A >= C.x && A < C.x + C.width && e >= C.y && e < C.y + C.height) return "Danger"; } } catch (A) { u.e(A); } finally { u.f(); } return "Outside"; } var Q, B = boundaryVisualizer_createForOfIteratorHelper(this.zoneTeleportZones); try { for (B.s(); !(Q = B.n()).done; ) { var E = Q.value; if (A >= E.x && A < E.x + E.width && e >= E.y && e < E.y + E.height) return "Zone Teleporter"; } } catch (A) { B.e(A); } finally { B.f(); } var l, h = boundaryVisualizer_createForOfIteratorHelper(this.areaTeleportZones); try { for (h.s(); !(l = h.n()).done; ) { var f = l.value; if (A >= f.x && A < f.x + f.width && e >= f.y && e < f.y + f.height) return "Area Teleporter"; } } catch (A) { h.e(A); } finally { h.f(); } var d, y = boundaryVisualizer_createForOfIteratorHelper(this.safeZones); try { for (y.s(); !(d = y.n()).done; ) { var w = d.value; if (A >= w.x && A < w.x + w.width && e >= w.y && e < w.y + w.height) return "Safe"; } } catch (A) { y.e(A); } finally { y.f(); } var v, p = boundaryVisualizer_createForOfIteratorHelper(this.dangerZones); try { for (p.s(); !(v = p.n()).done; ) { var D = v.value; if (A >= D.x && A < D.x + D.width && e >= D.y && e < D.y + D.height) return "Danger"; } } catch (A) { p.e(A); } finally { p.f(); } return "Danger"; } }; __webpack_require__(8156); var T = { name: "ChatTimestamps", enabled: !1, timeFormat: "12h", updateSettings: function(A) { void 0 !== A.enabled && (this.enabled = Boolean(A.enabled), console.log("[ChatTimestamp] Enabled set to: ".concat(this.enabled))), "12h" !== A.timeFormat && "24h" !== A.timeFormat || (this.timeFormat = A.timeFormat, console.log("[ChatTimestamp] Time format set to: ".concat(this.timeFormat))); }, processMessage: function(A) { if (!this.enabled || !A) return A; var e, t = new Date, i = String(t.getMinutes()).padStart(2, "0"), n = (String(t.getSeconds()).padStart(2, "0"), t.getHours()); if ("12h" === this.timeFormat) { var r = n >= 12 ? "PM" : "AM"; e = "[".concat(n = (n %= 12) || 12, ":").concat(i, ": ").concat(r, "]"); } else e = "[".concat(n, ":").concat(i, "]"); return "string" == typeof A.content && (A.content = "".concat(e, " ").concat(A.content)), A; } }; const P = T; __webpack_require__(8130); var _ = { name: "OverheadChat", enabled: !0, displayDuration: 2e3, fadeDuration: 500, moveUpSpeed: 15, maxMessagesPerPlayer: 3, fontSize: 12, fontColor: "white", fontStrokeColor: "black", fontStrokeWidth: 2, activeMessages: {}, initialize: function() { console.log("[E-Push:".concat(this.name, "] Initialized.")); }, updateSettings: function(A) { void 0 !== A.enabled && (this.enabled = Boolean(A.enabled)), void 0 !== A.displayDuration && (this.displayDuration = Number(A.displayDuration)), void 0 !== A.fadeDuration && (this.fadeDuration = Number(A.fadeDuration)), console.log("[E-Push:".concat(this.name, "] Settings updated.")); }, processMessage: function(A) { if (!this.enabled || !A) return A; if ("player" === A.type && A.senderName) { for (var e = A.senderName, t = null, i = 0, n = Object.values(B.entities); i < n.length; i++) { var r = n[i]; if (r.name === e) { t = r.id; break; } } if (null !== t) { var o = "".concat(e, ": ").concat(A.content); this.activeMessages[t] || (this.activeMessages[t] = []), this.activeMessages[t].push({ content: o, timestamp: Date.now() }), this.activeMessages[t].length > this.maxMessagesPerPlayer && this.activeMessages[t].shift(); } } return A; }, render: function(A, e, t, i) { if (this.enabled) { var n = Date.now(); A.save(), A.font = "".concat(this.fontSize, "px Arial"), A.textAlign = "center", A.textBaseline = "bottom", A.strokeStyle = this.fontStrokeColor, A.lineWidth = this.fontStrokeWidth; var r = B.getPlayer(); if (r) { for (var o in this.activeMessages) { var a = this.activeMessages[o], s = B.entities[o]; if (s) { var g = s.x - r.x, I = s.y - r.y; if (!(g * g + I * I > 4e6)) { for (var c = t + (s.x - r.x), u = i + (s.y - r.y), C = 0, Q = a.length - 1; Q >= 0; Q--) { var E = a[Q], l = n - E.timestamp; if (l > this.displayDuration) a.splice(Q, 1); else { var h = C + l / 1e3 * this.moveUpSpeed, f = c, d = u - (s.radius || 10) - 10 - h, y = 1, w = this.displayDuration - this.fadeDuration; l > w && (y = 1 - (l - w) / this.fadeDuration, y = Math.max(0, Math.min(1, y))), A.globalAlpha = y, A.fillStyle = this.fontColor, A.strokeText(E.content, f, d), A.fillText(E.content, f, d), C += this.fontSize + 2; } } 0 === a.length && delete this.activeMessages[o]; } } } A.restore(); } } } }; const j = _; function chatHandler_arrayLikeToArray(A, e) { (null == e || e > A.length) && (e = A.length); for (var t = 0, i = Array(e); t < e; t++) i[t] = A[t]; return i; } function chatHandler_ownKeys(A, e) { var t = Object.keys(A); if (Object.getOwnPropertySymbols) { var i = Object.getOwnPropertySymbols(A); e && (i = i.filter((function(e) { return Object.getOwnPropertyDescriptor(A, e).enumerable; }))), t.push.apply(t, i); } return t; } const V = { modules: [], mutedRegions: new Set, muteAllExceptCurrentRegion: !1, initialize: function() { console.log("[E-Push:ChatHandler] Initialized."), this.registerModule(P), this.registerModule(j); }, registerModule: function(A) { A && "function" == typeof A.processMessage ? (this.modules.push(A), console.log("[E-Push:ChatHandler] Registered module: ".concat(A.name || "Unnamed Module"))) : console.error("[E-Push:ChatHandler] Invalid module registration attempt."); }, processIncomingMessage: function(A) { if (A._processed) return delete A._processed, A; if (console.log("[E-Push:ChatHandler] Processing message:", A), !A || !A.type || !A.content) return console.warn("[E-Push:ChatHandler] Received incomplete message data."), null; var e = B.getCurrentRegionName(); if (this.muteAllExceptCurrentRegion && A.region && e && A.region !== e) return null; if (A.region && this.mutedRegions.has(A.region)) return null; var t, i = function(A) { for (var e = 1; e < arguments.length; e++) { var t = null != arguments[e] ? arguments[e] : {}; e % 2 ? chatHandler_ownKeys(Object(t), !0).forEach((function(e) { _defineProperty(A, e, t[e]); })) : Object.getOwnPropertyDescriptors ? Object.defineProperties(A, Object.getOwnPropertyDescriptors(t)) : chatHandler_ownKeys(Object(t)).forEach((function(e) { Object.defineProperty(A, e, Object.getOwnPropertyDescriptor(t, e)); })); } return A; }({}, A), n = function(A, e) { var t = "undefined" != typeof Symbol && A[Symbol.iterator] || A["@@iterator"]; if (!t) { if (Array.isArray(A) || (t = function(A, e) { if (A) { if ("string" == typeof A) return chatHandler_arrayLikeToArray(A, e); var t = {}.toString.call(A).slice(8, -1); return "Object" === t && A.constructor && (t = A.constructor.name), "Map" === t || "Set" === t ? Array.from(A) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? chatHandler_arrayLikeToArray(A, e) : void 0; } }(A)) || e && A && "number" == typeof A.length) { t && (A = t); var i = 0, F = function() {}; return { s: F, n: function() { return i >= A.length ? { done: !0 } : { done: !1, value: A[i++] }; }, e: function(A) { throw A; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var n, r = !0, o = !1; return { s: function() { t = t.call(A); }, n: function() { var A = t.next(); return r = A.done, A; }, e: function(A) { o = !0, n = A; }, f: function() { try { r || null == t.return || t.return(); } finally { if (o) throw n; } } }; }(this.modules); try { for (n.s(); !(t = n.n()).done; ) { var r = t.value; try { if (null === (i = r.processMessage(i))) return null; } catch (A) { console.error("[E-Push:ChatHandler] Error in chat module ".concat(r.name || "Unnamed Module", ":"), A); } } } catch (A) { n.e(A); } finally { n.f(); } return i.type, i._processed = !0, i; } }; function incomingPacketProcessor_arrayLikeToArray(A, e) { (null == e || e > A.length) && (e = A.length); for (var t = 0, i = Array(e); t < e; t++) i[t] = A[t]; return i; } const Z = { modules: {}, init: function(A) { this.modules = A, console.log("[E-Push:Incoming] Initialized with modules:", Object.keys(this.modules)); }, process: function(A) { if (A) try { if (M.updateFromPacket(A), B.update(A), A.chat && Array.isArray(A.chat.messages)) { var e, t = function(A, e) { var t = "undefined" != typeof Symbol && A[Symbol.iterator] || A["@@iterator"]; if (!t) { if (Array.isArray(A) || (t = function(A, e) { if (A) { if ("string" == typeof A) return incomingPacketProcessor_arrayLikeToArray(A, e); var t = {}.toString.call(A).slice(8, -1); return "Object" === t && A.constructor && (t = A.constructor.name), "Map" === t || "Set" === t ? Array.from(A) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? incomingPacketProcessor_arrayLikeToArray(A, e) : void 0; } }(A)) || e && A && "number" == typeof A.length) { t && (A = t); var i = 0, F = function() {}; return { s: F, n: function() { return i >= A.length ? { done: !0 } : { done: !1, value: A[i++] }; }, e: function(A) { throw A; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var n, r = !0, o = !1; return { s: function() { t = t.call(A); }, n: function() { var A = t.next(); return r = A.done, A; }, e: function(A) { o = !0, n = A; }, f: function() { try { r || null == t.return || t.return(); } finally { if (o) throw n; } } }; }(A.chat.messages); try { for (t.s(); !(e = t.n()).done; ) { var i, n = e.value, r = { id: n.id, type: 8 === (null === (i = n.style) || void 0 === i ? void 0 : i[0]) ? "system" : "player", senderName: n.sender, content: n.text, style: n.style }; V.processIncomingMessage(r); } } catch (A) { t.e(A); } finally { t.f(); } } A.area && (q.updateBoundaries(A.area), B.setCurrentRegionName(A.area.regionName)), x.update(), this.modules.exoDodge && (this.modules.exoDodge.update(), this.modules.exoDodge.cleanupCache(Object.keys(B.entities))); } catch (e) { console.error("[E-Push:Incoming] Error processing incoming packet:", e, A); } } }; __webpack_require__(8363); var W = window.WebSocketProxy || null; W || console.error("[E-Push:ClientMessaging] CRITICAL: WebSocketProxy class not found globally. Ensure the merged CWSS+Proxy script runs before clientMessaging.js."); var X = null, z = !1, $ = 0, AA = Date.now(); function sendClientChat(A) { var e, t; if (t = Date.now(), z && X && Q.isReady() || !(!(!z || X && Q.isReady()) && t < $ + 3e3 || (z = !0, $ = t, X = null, W && window.CWSS && window.CWSS.sockets && ((X = window.CWSS.sockets.find((function(A) { return A instanceof W && A.readyState === W.OPEN; }))) || (X = window.CWSS.sockets.find((function(A) { return A instanceof W && A.readyState === W.CONNECTING; })))), X ? !Q.isReady() && (console.error("[E-Push:ClientMessaging] Protobuf handler not ready."), X = null, 1) : (console.error("[E-Push:ClientMessaging] Failed to find an active WebSocketProxy instance.", "Available sockets:", (null === (e = window.CWSS) || void 0 === e ? void 0 : e.sockets) || "CWSS.sockets not found"), 1)))) if ("string" == typeof A) { var i = A.split("\n").filter((function(A) { return "" !== A.trim(); })); if (0 !== i.length) { var n = { chat: { messages: i.map((function(A) { return { id: ++AA, sender: "[E-Push]", style: [ 9 ], text: A }; })) } }; try { var r = Q.encodeServer(n); if (null === r) return void console.error("[E-Push:ClientMessaging] Encoding failed: protobufHandler.encodeServer returned null."); 0 === r.byteLength && console.warn("[E-Push:ClientMessaging] WARNING: Encoded data length is 0. Double-check types (id, style) in the `msg` object against the ChatMessage definition in the .proto file."), X && "function" == typeof X.sendClient ? X.sendClient(r) : console.error("[E-Push:ClientMessaging] Critical Error: Active proxy instance or sendClient method missing after check."); } catch (A) { console.error("[E-Push:ClientMessaging] Unexpected error during sendClientChat process:", A); } } } else console.error("[E-Push:ClientMessaging] Cannot send chat message: Text must be a string."); else console.error("[E-Push:ClientMessaging] Cannot send chat message: Dependencies not available."); } function commandHandler_arrayLikeToArray(A, e) { (null == e || e > A.length) && (e = A.length); for (var t = 0, i = Array(e); t < e; t++) i[t] = A[t]; return i; } var eA = { commands: new Map, aliasMap: new Map, registerCommand: function(A, e) { var t = this, i = e.handler, n = e.description, r = e.usage, o = e.aliases, a = void 0 === o ? [] : o, s = A.toLowerCase(); if ("string" == typeof A && A) if ("function" == typeof i) if ("string" == typeof n && n) if (this.commands.has(s) || this.aliasMap.has(s)) console.error('[E-Push:CommandHandler] Command name conflict: "'.concat(s, '" is already registered as a command or alias.')); else { var g = []; if (Array.isArray(a)) { var I, c = function(A, e) { var t = "undefined" != typeof Symbol && A[Symbol.iterator] || A["@@iterator"]; if (!t) { if (Array.isArray(A) || (t = function(A, e) { if (A) { if ("string" == typeof A) return commandHandler_arrayLikeToArray(A, e); var t = {}.toString.call(A).slice(8, -1); return "Object" === t && A.constructor && (t = A.constructor.name), "Map" === t || "Set" === t ? Array.from(A) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? commandHandler_arrayLikeToArray(A, e) : void 0; } }(A)) || e && A && "number" == typeof A.length) { t && (A = t); var i = 0, F = function() {}; return { s: F, n: function() { return i >= A.length ? { done: !0 } : { done: !1, value: A[i++] }; }, e: function(A) { throw A; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var n, r = !0, o = !1; return { s: function() { t = t.call(A); }, n: function() { var A = t.next(); return r = A.done, A; }, e: function(A) { o = !0, n = A; }, f: function() { try { r || null == t.return || t.return(); } finally { if (o) throw n; } } }; }(a); try { for (c.s(); !(I = c.n()).done; ) { var u = I.value, C = u.toLowerCase(); "string" == typeof C && C ? this.commands.has(C) ? console.warn('[E-Push:CommandHandler] Alias "'.concat(C, '" conflicts with existing command name. Skipping alias for command "').concat(A, '".')) : this.aliasMap.has(C) ? console.warn('[E-Push:CommandHandler] Alias "'.concat(C, '" is already registered for another command ("').concat(this.aliasMap.get(C), '"). Skipping alias for command "').concat(A, '".')) : C !== s ? g.push(C) : console.warn('[E-Push:CommandHandler] Alias "'.concat(C, '" is the same as the main command name "').concat(A, '". Skipping alias.')) : console.warn('[E-Push:CommandHandler] Invalid alias "'.concat(u, '" for command "').concat(A, '". Skipping.')); } } catch (A) { c.e(A); } finally { c.f(); } } else a && console.warn('[E-Push:CommandHandler] Aliases parameter for command "'.concat(A, '" should be an array. Ignoring.')); this.commands.set(s, { handler: i, description: n, usage: r || "/".concat(s), aliases: g }), console.log("[E-Push:CommandHandler] Registered command: /".concat(s)), g.forEach((function(A) { t.aliasMap.set(A, s), console.log("[E-Push:CommandHandler] Registered alias: /".concat(A, " -> /").concat(s)); })); } else console.error("[E-Push:CommandHandler] Description is required for command: ".concat(A)); else console.error("[E-Push:CommandHandler] Invalid handler function provided for command: ".concat(A)); else console.error("[E-Push:CommandHandler] Invalid command name provided."); }, processChatMessage: function(A) { if ("string" != typeof A || !A.startsWith("/")) return !1; var e, t = A.substring(1).trim().split(/\s+/), i = t[0].toLowerCase(), n = t.slice(1), r = i; if (this.commands.has(i) ? e = this.commands.get(i) : this.aliasMap.has(i) && (r = this.aliasMap.get(i), e = this.commands.get(r), console.log("[E-Push:CommandHandler] Alias /".concat(i, " resolved to /").concat(r))), e) { var o = !0; try { console.log("[E-Push:CommandHandler] Executing command: /".concat(r), n), !1 === e.handler(n) && (o = !1); } catch (A) { console.error("[E-Push:CommandHandler] Error executing command /".concat(r, ":"), A), sendClientChat("Error executing command /".concat(r, ". Check console.")), o = !0; } return o; } return !1; } }; eA.registerCommand("help", { handler: function(A) { var e = "--- E-Push Commands ---\n"; if (0 === A.length) 0 === eA.commands.size ? e += "No commands registered." : (eA.commands.forEach((function(A, t) { e += "/".concat(t, ": ").concat(A.description, "\n"); })), e += "Type '/help <commandName>' for more details."); else { var t = A[0].toLowerCase(); if (eA.commands.has(t)) { var i = eA.commands.get(t); e = "--- Help: /".concat(t, " ---\n"), e += "Description: ".concat(i.description, "\n"), e += "Usage: ".concat(i.usage); } else e = "Command not found: /".concat(t); } return sendClientChat(e.trim()), !0; }, description: "Lists available commands or shows details for a specific command.", usage: "/help [commandName]" }); const tA = eA; var iA = window.WebSocketProxy || null; iA || console.error("[E-Push:Network] CRITICAL: WebSocketProxy class not found globally. Ensure the merged CWSS+Proxy script runs before network.js."); const nA = { gameWS: null, sequenceCounter: 1, CWSS: null, netlog: !1, getPlayerState: function() { return M.getState(); }, nonDangerousEntityTypeNames: c, isEntityTypeDangerous: function(A) { if (!Q.isReady()) return console.warn("[E-Push:Network] Cannot check entity danger: Protobuf handler not ready."), !0; var e = Q.getEntityTypeName(A); return !!e.startsWith("Unknown (") || !this.nonDangerousEntityTypeNames.has(e); }, toggleLogging: function(A) { this.netlog = A, console.log("[E-Push:Network] Network logging ".concat(A ? "enabled" : "disabled")); }, init: function(e) { var i = this; return (0, A.A)(t().mark((function _callee() { return t().wrap((function(A) { for (;;) switch (A.prev = A.next) { case 0: return i.CWSS = e, A.next = 3, Q.initialize(); case 3: return A.sent || console.error("[E-Push:Network] Failed to initialize Protobuf Handler. Network features may be limited."), A.abrupt("return", i); case 6: case "end": return A.stop(); } }), _callee); })))(); }, createWSHook: function() { if (!this.CWSS) return console.error("[E-Push:Network] Cannot create WS hook: CWSS not initialized."), null; var A = this; return { priority: 200, init: function() { A.gameWS = this; }, send: function(e) { var t = e; try { if (N.updateLastActionTime(), !Q.isReady()) return t; var i = Q.decodeClient(e); if (i) { if ("string" == typeof i.message && tA.processChatMessage(i.message, A)) return A.netlog && console.log("[E-Push:Network Send] Command handled, blocking original message."), null; var n = src_outgoingPacketProcessor_process(i), r = n.modified, o = n.payload; if (r && o) { var a = Q.encodeClient(o); a ? (t = a, A.netlog && console.log("[E-Push:Network Send] Sending modified payload:", o)) : (console.error("[E-Push:Network Send] Failed to re-encode modified payload. Sending original."), A.netlog && console.log("[E-Push:Network Send] Re-encode failed, sending original (raw):", e)); } else A.netlog && console.log("[E-Push:Network Send] Sending original payload:", i); } else A.netlog && console.log("[E-Push:Network Send] Sent (raw/undecoded):", e); } catch (A) { console.error("[E-Push:Network Send] Error in send hook:", A), t = e; } return t; }, message: function(e) { try { var t = e.data; if (!Q.isReady()) return e; var i = Q.decodeServer(t); if (i) { var n, r = null == i || null === (n = i.ack) || void 0 === n ? void 0 : n.sequence; return null != r ? A.sequenceCounter = r + 1 : void 0 !== i.sequence && (A.sequenceCounter = i.sequence + 1), A.netlog && console.log("[E-Push:Network] Received:", i), Z.process(i), e; } return A.netlog && console.log("[E-Push:Network Recv] Received (raw/undecoded):", t), e; } catch (A) { return console.error("[E-Push:Network Recv] Error in message hook:", A), e; } } }; }, _sendPayload: function(A) { var e, t, i; if (!Q.isReady()) return console.error("[E-Push:Network] Cannot send payload: Protobuf handler not ready."), !1; if (!((!this.gameWS || this.gameWS.readyState !== WebSocket.OPEN) && (null === (e = this.CWSS) || void 0 === e || null === (e = e.sockets) || void 0 === e ? void 0 : e.length) > 0 && (this.gameWS = this.CWSS.sockets.find((function(A) { return A instanceof iA && A.readyState === WebSocket.OPEN; })) || null), this.gameWS && this.gameWS instanceof iA && this.gameWS.readyState === WebSocket.OPEN || (console.warn("[E-Push:Network] No active WebSocketProxy connection to send payload.", "Current gameWS state:", null === (t = this.gameWS) || void 0 === t ? void 0 : t.readyState), this.gameWS = (null === (i = this.CWSS) || void 0 === i || null === (i = i.sockets) || void 0 === i ? void 0 : i.find((function(A) { return A instanceof iA && A.readyState === WebSocket.OPEN; }))) || null, this.gameWS && this.gameWS.readyState === WebSocket.OPEN))) return console.error("[E-Push:Network] Still no active WebSocketProxy after re-check."), !1; void 0 !== A.sequence && null !== A.sequence || (A.sequence = this.sequenceCounter++); var n = Q.encodeClient(A); if (!n) return console.error("[E-Push:Network] Failed to encode payload:", A), !1; try { return this.gameWS.sendServer(n), !0; } catch (A) { return console.error("[E-Push:Network] Error sending payload via gameWS.sendServer():", A), "InvalidStateError" === A.name && (this.gameWS = null), !1; } }, sendMovement: function(A, e) { var t = { sequence: this.sequenceCounter++, mouseDown: { updated: !0, x: Math.round(A), y: Math.round(e) } }; return this._sendPayload(t); }, movePlayer: function(A, e) { A = (A % 360 + 360) % 360, e = Math.max(0, Math.min(100, e)); var t = A * Math.PI / 180, i = 5 * e, n = Math.cos(t) * i, r = -Math.sin(t) * i; return this.sendMovement(n, r); }, sendChatMessage: function(A) { if ("string" != typeof A || 0 === A.trim().length) return console.warn("[E-Push:Network] Attempted to send empty or invalid chat message."), !1; var e = { sequence: this.sequenceCounter++, message: A }; return this._sendPayload(e); }, displayLocalSystemMessage: function(A) { var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : [ 8 ], t = { chat: { messages: [ { id: "local_".concat(Date.now(), "_").concat(Math.random().toString(16).slice(2)), sender: "", style: e, text: A } ] } }; try { if (Z.process(t), !Q.isReady()) return void console.warn("[E-Push:Network] Protobuf not ready, cannot display local message via simulation."); var i = Q.encodeServer(t); i && this.gameWS && this.gameWS instanceof iA && this.gameWS.readyState === WebSocket.OPEN ? this.gameWS.sendClient(i) : i ? console.warn("[E-Push:Network] Cannot inject local system message, gameWS not available/open or not a proxy.") : console.error("[E-Push:Network] Failed to encode fake payload for local system message."); } catch (A) { console.error("[E-Push:Network] Error processing or injecting local system message:", A); } } }; function settings_createForOfIteratorHelper(A, e) { var t = "undefined" != typeof Symbol && A[Symbol.iterator] || A["@@iterator"]; if (!t) { if (Array.isArray(A) || (t = function(A, e) { if (A) { if ("string" == typeof A) return settings_arrayLikeToArray(A, e); var t = {}.toString.call(A).slice(8, -1); return "Object" === t && A.constructor && (t = A.constructor.name), "Map" === t || "Set" === t ? Array.from(A) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? settings_arrayLikeToArray(A, e) : void 0; } }(A)) || e && A && "number" == typeof A.length) { t && (A = t); var i = 0, F = function() {}; return { s: F, n: function() { return i >= A.length ? { done: !0 } : { done: !1, value: A[i++] }; }, e: function(A) { throw A; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var n, r = !0, o = !1; return { s: function() { t = t.call(A); }, n: function() { var A = t.next(); return r = A.done, A; }, e: function(A) { o = !0, n = A; }, f: function() { try { r || null == t.return || t.return(); } finally { if (o) throw n; } } }; } function settings_arrayLikeToArray(A, e) { (null == e || e > A.length) && (e = A.length); for (var t = 0, i = Array(e); t < e; t++) i[t] = A[t]; return i; } function settings_ownKeys(A, e) { var t = Object.keys(A); if (Object.getOwnPropertySymbols) { var i = Object.getOwnPropertySymbols(A); e && (i = i.filter((function(e) { return Object.getOwnPropertyDescriptor(A, e).enumerable; }))), t.push.apply(t, i); } return t; } function settings_objectSpread(A) { for (var e = 1; e < arguments.length; e++) { var t = null != arguments[e] ? arguments[e] : {}; e % 2 ? settings_ownKeys(Object(t), !0).forEach((function(e) { _defineProperty(A, e, t[e]); })) : Object.getOwnPropertyDescriptors ? Object.defineProperties(A, Object.getOwnPropertyDescriptors(t)) : settings_ownKeys(Object(t)).forEach((function(e) { Object.defineProperty(A, e, Object.getOwnPropertyDescriptor(t, e)); })); } return A; } __webpack_require__(2712), __webpack_require__(8940); var rA = "ePushSettings", oA = [ { id: "collisionAvoidance", label: "Collision Avoidance", type: "boolean", defaultValue: !0, tooltip: "Enable/disable automatic collision avoidance system", category: "Avoidance", applyChange: function(A, e) { e.obstacleAvoidance.enabled = A, console.log("[E-Push] Obstacle avoidance ".concat(A ? "enabled" : "disabled")); } }, { id: "necroResBlockerEnabled", label: "Necro Res Blocker", type: "boolean", defaultValue: !0, tooltip: "Block Necromancer resurrection (Z) if enemies are too close. Shows red indicator.", category: "Hero", applyChange: function(A, e) { e.necroResurrectionBlocker ? (e.necroResurrectionBlocker.enabled = A, console.log("[E-Push] Necro Res Blocker ".concat(A ? "enabled" : "disabled"))) : console.error("[E-Push] necroResurrectionBlocker module not found in settings applyChange."); } }, { id: "networkLoggingEnabled", label: "Network Logging", type: "boolean", defaultValue: !1, tooltip: "Enable/disable detailed network message logging to the console", category: "Debugging", applyChange: function(A, e) { e.network.toggleLogging(A); } }, { id: "resetAllSettingsBtn", label: "Reset Defaults", type: "button", buttonText: "Reset All Settings", tooltip: "Resets all E-Push settings to their original defaults.", category: "Debugging", onClick: function(A, e, t) { confirm("Are you sure you want to reset all settings to their defaults?") && function(A, e, t) { console.log("[E-Push] Resetting all settings to defaults..."); var i, n = oA.reduce((function(A, e) { return A[e.id] = e.defaultValue, A; }), {}), r = settings_createForOfIteratorHelper(oA); try { for (r.s(); !(i = r.n()).done; ) { var o = i.value, a = n[o.id]; void 0 !== a && (A[o.id] = a, t.updateSetting(o.id, a)); } } catch (A) { r.e(A); } finally { r.f(); } saveSettings(A), applyAllSettings(A, e, t), t.updateThemeColors(A), e.keybinder && "function" == typeof e.keybinder.resetBindings && (console.log("[E-Push] Resetting keybindings..."), e.keybinder.resetBindings()), console.log("[E-Push] Settings reset to defaults."); }(A, e, t); } }, { id: "autoKey11", label: "Auto Key (X)", type: "boolean", defaultValue: !1, tooltip: "Automatically send key (X) when close to enemies", category: "Avoidance", applyChange: function(A, e) { e.obstacleAvoidance.autoForceKey11 = A, console.log("[E-Push] Auto force key ".concat(A ? "enabled" : "disabled")); } }, { id: "key11Threshold", label: "Key X Threshold", type: "slider", defaultValue: R.key11Threshold, min: 0, max: 5e3, step: 50, tooltip: "Force magnitude threshold to trigger key X", category: "Avoidance", applyChange: function(A, e) { e.obstacleAvoidance.key11Threshold = A, console.log("[E-Push] Key 11 threshold set to ".concat(A)); } }, { id: "autoKey10", label: "Auto Key (Z)", type: "boolean", defaultValue: !1, tooltip: "Automatically send key (Z) when close to enemies", category: "Avoidance", applyChange: function(A, e) { e.obstacleAvoidance.autoForceKey10 = A, console.log("[E-Push] Auto avoid key ".concat(A ? "enabled" : "disabled")); } }, { id: "key10Threshold", label: "Key Z Threshold", type: "slider", defaultValue: R.key10Threshold, min: 0, max: 5e3, step: 50, tooltip: "Force magnitude threshold to trigger key Z", category: "Avoidance", applyChange: function(A, e) { e.obstacleAvoidance.key10Threshold = A, console.log("[E-Push] Key 10 threshold set to ".concat(A)); } }, { id: "speedInfluence", label: "Speed Influence", type: "slider", defaultValue: R.speedInfluence, min: 0, max: 10, step: .1, tooltip: "How much entity speed affects the avoidance field strength", category: "Avoidance", applyChange: function(A, e) { e.obstacleAvoidance.speedInfluence = A, console.log("[E-Push] Speed influence set to ".concat(A)); } }, { id: "directionBias", label: "Direction Bias", type: "slider", defaultValue: R.directionBias, min: 0, max: 10, step: .1, tooltip: "How much the field spikes in the direction of enemy movement", category: "Avoidance", applyChange: function(A, e) { e.obstacleAvoidance.directionBias = A, console.log("[E-Push] Direction bias set to ".concat(A)); } }, { id: "fieldExponent", label: "Field Exponent", type: "slider", defaultValue: R.fieldExponent, min: 0, max: 4, step: .1, tooltip: "Exponent for the field strength calculation", category: "Avoidance", applyChange: function(A, e) { e.obstacleAvoidance.fieldExponent = A, console.log("[E-Push] Field exponent set to ".concat(A)); } }, { id: "safetyMargin", label: "Safety Margin", type: "slider", defaultValue: R.safetyMargin, min: 0, max: 50, step: 1, tooltip: "Additional distance to maintain from obstacles", category: "Avoidance", applyChange: function(A, e) { e.obstacleAvoidance.safetyMargin = A, console.log("[E-Push] Safety margin set to ".concat(A)); } }, { id: "deadzone", label: "Deadzone", type: "slider", defaultValue: R.deadzoneDistance, min: 0, max: 100, step: 1, tooltip: "Distance from enemy hitbox where repulsion field is disabled. Set to 0 to disable.", category: "Avoidance", applyChange: function(A, e) { e.obstacleAvoidance.deadzoneDistance = A, console.log("[E-Push] Deadzone distance set to ".concat(A)); } }, { id: "showLabels", label: "Show Labels", type: "boolean", defaultValue: !1, tooltip: "Show entity labels on the map", category: "Visuals", applyChange: function(A, e) { e.renderer.showLabels = A, console.log("[E-Push] Entity labels ".concat(A ? "enabled" : "disabled")); } }, { id: "showEnemyHitbox", label: "Show Enemy Hitboxes", type: "boolean", defaultValue: !0, tooltip: "Visualize collision radius", category: "Visuals", applyChange: function(A, e) { e.renderer.showEnemyHitbox = A, console.log("[E-Push] Collision prediction ".concat(A ? "enabled" : "disabled")); } }, { id: "showFieldDots", label: "Show Field Dots", type: "boolean", defaultValue: !1, tooltip: "Visualize repulsion field strength as dots around enemies", category: "Visuals", applyChange: function(A, e) { e.renderer.showFields = A, console.log("[E-Push] Field dots visualization ".concat(A ? "enabled" : "disabled")); } }, { id: "showStrengthLine", label: "Show Force Line", type: "boolean", defaultValue: !1, tooltip: "Visualize the total avoidance force vector", category: "Visuals", applyChange: function(A, e) { e.renderer.showStrengthLine = A, console.log("[E-Push] Strength line visualization ".concat(A ? "enabled" : "disabled")); } }, { id: "chronoShadow", label: "Chrono Shadow", type: "boolean", defaultValue: !0, tooltip: "Show time travel indicator (only works for Chrono hero)", category: "Hero", applyChange: function(A, e) { e.timeTravelIndicator.enabled = A, console.log("[E-Push] Chrono Shadow setting ".concat(A ? "enabled" : "disabled")); } }, { id: "rimeTeleportIndicator", label: "Rime Teleport Indicator", type: "boolean", defaultValue: !0, tooltip: "Show teleport target indicator (only works for Rime hero)", category: "Hero", applyChange: function(A, e) { e.teleportIndicator.enabled = A, console.log("[E-Push] Rime Teleport Indicator setting ".concat(A ? "enabled" : "disabled")); } }, { id: "jotunnIndicatorEnabled", label: "Jotunn Indicator", type: "boolean", defaultValue: !0, tooltip: "Show a radius indicator around Jotunn players.", category: "Hero", applyChange: function(A, e) { e.jotunnIndicator ? (e.jotunnIndicator.enabled = A, console.log("[E-Push] Jotunn Indicator ".concat(A ? "enabled" : "disabled"))) : console.error("[E-Push] jotunnIndicator module not found in settings applyChange."); } }, { id: "departIndicatorEnabled", label: "Reaper Depart Indicator", type: "boolean", defaultValue: !0, tooltip: "Show depart timer indicator for Reapers", category: "Hero", applyChange: function(A, e) { e.departIndicator ? (e.departIndicator.enabled = A, console.log("[E-Push] Depart Indicator ".concat(A ? "enabled" : "disabled"))) : console.error("[E-Push] departIndicator module not found in settings applyChange."); } }, { id: "starPredictor", label: "Star Predictor", type: "boolean", defaultValue: !0, tooltip: "Show predicted previous location for Star enemies", category: "Visuals", applyChange: function(A, e) { e.starPredictor.isEnabled = A, console.log("[E-Push] Star Predictor ".concat(A ? "enabled" : "disabled")); } }, { id: "teleportingEnemyPredictor", label: "Teleporting Enemy Predictor", type: "boolean", defaultValue: !0, tooltip: "Show predicted next location and timer for Teleporting enemies", category: "Visuals", applyChange: function(A, e) { e.teleportingEnemyPredictor ? (e.teleportingEnemyPredictor.isEnabled = A, console.log("[E-Push] Teleporting Enemy Predictor ".concat(A ? "enabled" : "disabled"))) : console.error("[E-Push Settings] teleportingEnemyPredictor module not found in applyChange."); } }, { id: "showAreaBorders", label: "Show Area Borders", type: "boolean", defaultValue: !0, tooltip: "Show outlines for different map areas/zones (safe, danger, teleport).", category: "Visuals", applyChange: function(A, e) { e.renderer && (e.renderer.showAreaBorders = A, console.log("[E-Push] Area Borders ".concat(A ? "enabled" : "disabled"))); } }, { id: "showServerListUI", label: "Show Server List", type: "boolean", defaultValue: !0, tooltip: "Show/hide the server list panel (only visible outside of games).", category: "Visuals", applyChange: function(A, e) { e.serverListUI ? (e.serverListUI.setVisibility(!A), console.log("[E-Push] Server List UI ".concat(A ? "shown" : "hidden"))) : console.error("[E-Push] serverListUI module not found in settings applyChange."); } }, { id: "showZoneIndicator", label: "Show Zone Indicator", type: "boolean", defaultValue: !0, tooltip: "Show text indicating the type of zone the player is currently in.", category: "Visuals", applyChange: function(A, e) { e.renderer && (e.renderer.showZoneIndicator = A, console.log("[E-Push] Zone Indicator ".concat(A ? "enabled" : "disabled"))); } }, { id: "fullbrightEnabled", label: "Fullbright", type: "boolean", defaultValue: !1, tooltip: "Forces maximum brightness in all areas by modifying incoming packets.", category: "Visuals", applyChange: function(A, e) { e.fullbright && "function" == typeof e.fullbright.updateSettings ? e.fullbright.updateSettings({ enabled: A }) : console.error("[E-Push Settings] Fullbright module not found in applyChange."); } }, { id: "gravestoneTrackerEnabled", label: "Gravestone Tracker", type: "boolean", defaultValue: !0, tooltip: "Log when a player uses another player's gravestone.", category: "Hero", applyChange: function(A, e) { e.gravestoneTracker && "function" == typeof e.gravestoneTracker.updateSettings ? e.gravestoneTracker.updateSettings({ gravestoneTrackerEnabled: A }) : console.error("[E-Push Settings] gravestoneTracker module or updateSettings method not found."); } }, { id: "hideUiInDangerZone", label: "Hide UI in Danger Zones", type: "boolean", defaultValue: !0, tooltip: "Automatically hide leaderboard and chat in danger zones.", category: "Visuals", applyChange: function(A, e) { e.zoneUIHider ? e.zoneUIHider.setEnabled(A) : console.error("[E-Push] zoneUIHider module not found in settings applyChange."); } }, { id: "antiAfkEnabled", label: "Enable Anti-AFK", type: "boolean", defaultValue: !0, tooltip: "Automatically send key press to prevent AFK kick", category: "Automation", applyChange: function(A, e) { e.antiAfk.updateSettings({ enabled: A }); } }, { id: "followPlayerControl", label: "Follow Player", type: "dropdown", defaultValue: "none", options: [ { value: "none", label: "None" } ], tooltip: "Select a player to follow automatically.", category: "Automation" }, { id: "pelletCollectorEnabled", label: "Pellet Collector", type: "boolean", defaultValue: !1, tooltip: "Automatically pathfind to and collect nearby pellets", category: "Automation", applyChange: function(A, e) { e.pelletCollector ? (e.pelletCollector.enabled = A, console.log("[E-Push] Pellet Collector ".concat(A ? "enabled" : "disabled"))) : console.error("[E-Push] pelletCollector module not found in settings applyChange."); } }, { id: "fastUpgradeEnabled", label: "Fast Upgrade", type: "boolean", defaultValue: !1, tooltip: "Hold a number key (1-9) for 3 seconds to spam it for upgrades.", category: "Automation", applyChange: function(A, e) { e.fastUpgrade ? e.fastUpgrade.updateSettings({ enabled: A }) : console.error("[E-Push Settings] fastUpgrade module not found in applyChange."); } }, { id: "idleAnimationsEnabled", label: "Enable Idle Animations", type: "boolean", defaultValue: !1, tooltip: "Enable preset movements when player is idle in a safe zone.", category: "Automation", applyChange: function(A, e) { e.idleAnimations && e.idleAnimations.updateSettings({ enabled: A }); } }, { id: "idleAnimationTimeoutMs", label: "Idle Timeout (ms)", type: "slider", defaultValue: 3e4, min: 5e3, max: 3e5, step: 1e3, tooltip: "Time in milliseconds of inactivity before idle animation starts.", category: "Automation", applyChange: function(A, e) { e.idleAnimations && e.idleAnimations.updateSettings({ timeoutMs: A }); } }, { id: "idleAnimationType", label: "Idle Animation", type: "dropdown", defaultValue: "slowHover", options: [ { value: "slowHover", label: "Slow Hover Up/Down" } ], tooltip: "Select the type of idle animation to perform.", category: "Automation", applyChange: function(A, e) { console.log("[Settings DEBUG] applyChange for idleAnimationType called. Value: ".concat(A, ", modules.idleAnimations exists: ").concat(!!e.idleAnimations)), e.idleAnimations && e.idleAnimations.updateSettings({ animationType: A }); } }, { id: "keepFocusEnabled", label: "Keep Focus (reload reqired)", type: "boolean", defaultValue: !1, tooltip: "Attempts to prevent the game from detecting window focus loss or tab switching. This may help keep sticky keys and other actions running but can have unintended side effects on website behavior.", category: "Machine", applyChange: function(A, e) { e.keepFocus ? e.keepFocus.updateSettings({ enabled: A }) : console.error("[E-Push Settings] KeepFocus module not found in applyChange."); } }, { id: "stickyKeysEnabled", label: "Sticky Keys", type: "boolean", defaultValue: !1, tooltip: "Hold WASD/Arrow keys after a single press. Press again to release.", category: "Machine", applyChange: function(A, e) { e.keybinder ? (e.keybinder.setStickyKeysEnabled(A), console.log("[E-Push] Sticky Keys ".concat(A ? "enabled" : "disabled", "."))) : console.error("[E-Push Settings] Keybinder module not found for Sticky Keys setting."); } }, { id: "spamAbilityZEnabled", label: "Spam Ability Z", type: "boolean", defaultValue: !1, tooltip: "Automatically press the Z ability key repeatedly.", category: "Machine", applyChange: function(A, e, t, i) { e.abilitySpammer ? e.abilitySpammer.updateSettings({ spamAbilityZEnabled: A, spamAbilityXEnabled: i.spamAbilityXEnabled, spamAbilityCEnabled: i.spamAbilityCEnabled, spamAbilityFrequencyZ: i.spamAbilityFrequencyZ, spamAbilityFrequencyX: i.spamAbilityFrequencyX, spamAbilityFrequencyC: i.spamAbilityFrequencyC }) : console.error("[E-Push Settings] AbilitySpammer module not found."); } }, { id: "spamAbilityXEnabled", label: "Spam Ability X", type: "boolean", defaultValue: !1, tooltip: "Automatically press the X ability key repeatedly.", category: "Machine", applyChange: function(A, e, t, i) { e.abilitySpammer ? e.abilitySpammer.updateSettings({ spamAbilityZEnabled: i.spamAbilityZEnabled, spamAbilityXEnabled: A, spamAbilityCEnabled: i.spamAbilityCEnabled, spamAbilityFrequencyZ: i.spamAbilityFrequencyZ, spamAbilityFrequencyX: i.spamAbilityFrequencyX, spamAbilityFrequencyC: i.spamAbilityFrequencyC }) : console.error("[E-Push Settings] AbilitySpammer module not found."); } }, { id: "spamAbilityCEnabled", label: "Spam Ability C", type: "boolean", defaultValue: !1, tooltip: "Automatically press the C ability key repeatedly.", category: "Machine", applyChange: function(A, e, t, i) { e.abilitySpammer ? e.abilitySpammer.updateSettings({ spamAbilityZEnabled: i.spamAbilityZEnabled, spamAbilityXEnabled: i.spamAbilityXEnabled, spamAbilityCEnabled: A, spamAbilityFrequencyZ: i.spamAbilityFrequencyZ, spamAbilityFrequencyX: i.spamAbilityFrequencyX, spamAbilityFrequencyC: i.spamAbilityFrequencyC }) : console.error("[E-Push Settings] AbilitySpammer module not found."); } }, { id: "spamAbilityFrequencyZ", label: "Ability Z Spam Freq (s)", type: "slider", defaultValue: 2, min: .1, max: 10, step: .1, tooltip: "How often (in seconds) to press the Z ability key.", category: "Machine", applyChange: function(A, e) { e.abilitySpammer ? e.abilitySpammer.updateSettings({ spamAbilityFrequencyZ: A }) : console.error("[E-Push Settings] AbilitySpammer module not found."); } }, { id: "spamAbilityFrequencyX", label: "Ability X Spam Freq (s)", type: "slider", defaultValue: 2, min: .1, max: 10, step: .1, tooltip: "How often (in seconds) to press the X ability key.", category: "Machine", applyChange: function(A, e) { e.abilitySpammer ? e.abilitySpammer.updateSettings({ spamAbilityFrequencyX: A }) : console.error("[E-Push Settings] AbilitySpammer module not found."); } }, { id: "spamAbilityFrequencyC", label: "Ability C Spam Freq (s)", type: "slider", defaultValue: 2, min: .1, max: 10, step: .1, tooltip: "How often (in seconds) to press the C ability key.", category: "Machine", applyChange: function(A, e) { e.abilitySpammer ? e.abilitySpammer.updateSettings({ spamAbilityFrequencyC: A }) : console.error("[E-Push Settings] AbilitySpammer module not found."); } }, { id: "serverSwitcher", label: "Switch Server", type: "dropdown", defaultValue: "none", options: [ { value: "none", label: "Loading Servers..." } ], tooltip: "Select a game server to connect to.", category: "Connection", onChange: function(A) { if ("none" !== A && window.serverSwap) { var e = A.split("-"); if (2 === e.length) { var t = e[0], i = parseInt(e[1], 10); if (isNaN(i)) console.error("[E-Push Settings] Invalid server index in value: ".concat(A)); else { var n = i + 1; console.log("[E-Push Settings] Server switch requested: Region=".concat(t, ", Index=").concat(n)); try { window.serverSwap(t, n); } catch (A) { console.error("[E-Push Settings] Error calling serverSwap:", A); } } } else console.error("[E-Push Settings] Invalid server value format: ".concat(A)); } } }, { id: "uiWindowBg", label: "Window Background", type: "color", defaultValue: "rgba(49, 50, 68, 0.9)", tooltip: "Background color of the settings window", category: "UI Theme" }, { id: "uiHeaderBg", label: "Header Background", type: "color", defaultValue: "rgba(69, 71, 90, 0.9)", tooltip: "Background color of the window header", category: "UI Theme" }, { id: "uiTabBarBg", label: "Tab Bar Background", type: "color", defaultValue: "rgba(49, 50, 68, 0.8)", tooltip: "Background color of the tab bar", category: "UI Theme" }, { id: "uiTabBg", label: "Tab Background", type: "color", defaultValue: "rgba(69, 71, 90, 0.7)", tooltip: "Background color of inactive tabs", category: "UI Theme" }, { id: "uiTabActiveBg", label: "Active Tab Background", type: "color", defaultValue: "rgba(30, 30, 46, 0.9)", tooltip: "Background color of the active tab", category: "UI Theme" }, { id: "uiSettingBg", label: "Setting Background", type: "color", defaultValue: "rgba(69, 71, 90, 0.5)", tooltip: "Background color for individual setting containers", category: "UI Theme" }, { id: "uiTextColor", label: "Text Color", type: "color", defaultValue: "#cdd6f4", tooltip: "Default text color", category: "UI Theme" }, { id: "uiBorderColor", label: "Border Color", type: "color", defaultValue: "rgba(88, 91, 112, 0.7)", tooltip: "Color for borders within the UI", category: "UI Theme" }, { id: "uiInputBg", label: "Input Background", type: "color", defaultValue: "#1e1e2e", tooltip: "Background color for text/number inputs", category: "UI Theme" }, { id: "uiInputColor", label: "Input Text Color", type: "color", defaultValue: "#cdd6f4", tooltip: "Text color for text/number inputs", category: "UI Theme" }, { id: "speedrunTimerDisplayEnabled", label: "Show Timer", type: "boolean", defaultValue: !0, tooltip: "Show/hide the speedrun timer display on screen.", category: "Speedrun", applyChange: function(A, e) { e.speedrunTimer ? (e.speedrunTimer.setDisplayEnabled(A), console.log("[E-Push] Speedrun Timer display ".concat(A ? "enabled" : "disabled"))) : console.error("[E-Push] speedrunTimer module not found in settings applyChange."); } }, { id: "speedrunTimerStopBtn", label: "Stop Timer", type: "button", buttonText: "Stop", tooltip: "Manually stops the current speedrun timer.", category: "Speedrun", onClick: function(A, e, t) { e.speedrunTimer ? e.speedrunTimer.stopTimer() : console.error("[E-Push] speedrunTimer module not found for Stop button."); } }, { id: "speedrunTimerResetBtn", label: "Reset Timer", type: "button", buttonText: "Reset", tooltip: "Resets the speedrun timer. It will restart automatically if you are outside the safe zone.", category: "Speedrun", onClick: function(A, e, t) { e.speedrunTimer ? e.speedrunTimer.resetTimer() : console.error("[E-Push] speedrunTimer module not found for Reset button."); } }, { id: "keybinderEnabled", label: "Enable Keybinder", type: "boolean", defaultValue: !0, tooltip: "Enable/disable the custom keybinding system.", category: "Keybindings", applyChange: function(A, e) { e.keybinder ? (A ? e.keybinder.start() : e.keybinder.stop(), console.log("[E-Push] Keybinder module ".concat(A ? "enabled" : "disabled", "."))) : console.error("[E-Push Settings] Keybinder module not found in applyChange."); } }, { id: "keybindingEditor", label: "Configure Bindings", type: "keybindingEditor", tooltip: "Manage custom key and mouse button rebindings.", category: "Keybindings" } ]; function loadSettings() { var A = oA.reduce((function(A, e) { return A[e.id] = e.defaultValue, A; }), {}); try { var e = localStorage.getItem(rA); if (e) { var t = JSON.parse(e); return settings_objectSpread(settings_objectSpread({}, A), t); } } catch (A) { console.error("[E-Push] Error loading settings from localStorage:", A); } return A; } function saveSettings(A) { try { localStorage.setItem(rA, JSON.stringify(A)); } catch (A) { console.error("[E-Push] Error saving settings to localStorage:", A); } } function applyAllSettings(A, e, t) { if (console.log("[E-Push] Applying all loaded settings..."), e.keybinder) { var i = A.keybinderEnabled; if (!0 === i) e.keybinder.start(); else if (!1 === i) e.keybinder.stop(); else if (void 0 === i && !1 === e.keybinder.isEnabled) { var n = oA.find((function(A) { return "keybinderEnabled" === A.id; })); !0 === (null == n ? void 0 : n.defaultValue) && e.keybinder.start(); } } var r, o = settings_createForOfIteratorHelper(oA); try { for (o.s(); !(r = o.n()).done; ) { var a = r.value; if ("keybinderEnabled" !== a.id) { var s = A[a.id]; if (void 0 !== s && "function" == typeof a.applyChange) try { a.applyChange(s, e, t, A); } catch (A) { console.error("[E-Push] Error applying setting '".concat(a.id, "' with value '").concat(s, "':"), A); } } } } catch (A) { o.e(A); } finally { o.f(); } console.log("[E-Push] Finished applying settings."); } function registerSettingsUI(e, i, n) { console.log("[E-Push] Registering settings UI..."); var r = function() { var e = (0, A.A)(t().mark((function _callee() { var A, e, i, r, o, a, s, g, I; return t().wrap((function(t) { for (;;) switch (t.prev = t.next) { case 0: return t.prev = 0, t.next = 3, fetch("https://evades.io/api/game/list"); case 3: if ((A = t.sent).ok) { t.next = 6; break; } throw new Error("HTTP error! status: ".concat(A.status)); case 6: return t.next = 8, A.json(); case 8: for (o in e = t.sent, i = e.servers, r = [ { value: "none", label: "Select Server..." } ], i) for (a in i[o]) s = i[o][a], g = "".concat(o, "-").concat(a), I = "".concat(o, " - S").concat(parseInt(a, 10) + 1, " - ").concat(s.connected, "/").concat(s.capacity), r.push({ value: g, label: I }); r.sort((function(A, e) { if ("none" === A.value) return -1; if ("none" === e.value) return 1; var t, i = _slicedToArray(A.value.split("-"), 2), n = i[0], r = i[1], o = _slicedToArray(e.value.split("-"), 2), a = o[0], s = o[1]; return 0 !== (t = "NA" === n && "NA" !== a ? -1 : "NA" !== n && "NA" === a ? 1 : n.localeCompare(a)) ? t : parseInt(r, 10) - parseInt(s, 10); })), setTimeout((function() { n.updateDropdownOptions("serverSwitcher", r), console.log("[E-Push] Server list dropdown populated."); }), 100), t.next = 20; break; case 16: t.prev = 16, t.t0 = t.catch(0), console.error("[E-Push] Failed to fetch or process server list:", t.t0), setTimeout((function() { return n.updateDropdownOptions("serverSwitcher", [ { value: "none", label: "Error Loading Servers" } ]); }), 100); case 20: case "end": return t.stop(); } }), _callee, null, [ [ 0, 16 ] ]); }))); return function() { return e.apply(this, arguments); }; }(); r(); var o = _toConsumableArray(new Set(oA.map((function(A) { return A.category; })))); if (!o.includes("Keybindings")) { var a = o.indexOf("Automation"); -1 !== a ? o.splice(a + 1, 0, "Keybindings") : o.push("Keybindings"); } if (!o.includes("Machine")) { var s = o.indexOf("Keybindings"); -1 !== s ? o.splice(s + 1, 0, "Machine") : o.push("Machine"); } n.createTabs(o), n.updateThemeColors(e); var g, I = settings_createForOfIteratorHelper(oA); try { var _loop = function() { var A = g.value, t = e[A.id], onChange = function(t) { if (e[A.id] = t, saveSettings(e), "function" == typeof A.applyChange) try { A.applyChange(t, i, n, e); } catch (e) { console.error("[E-Push] Error applying setting change for '".concat(A.id, "' with value '").concat(t, "':"), e); } "color" === A.type && "UI Theme" === A.category && n.updateThemeColors(); }; switch (A.type) { case "boolean": n.addBooleanSetting(A.id, A.label, t, A.tooltip, onChange, A.category); break; case "slider": n.addSliderSetting(A.id, A.label, t, A.min, A.max, A.step, A.tooltip, onChange, A.category); break; case "number": n.addNumberSetting(A.id, A.label, t, A.tooltip, onChange, A.category); break; case "text": n.addTextSetting(A.id, A.label, t, A.tooltip, onChange, A.category); break; case "color": n.addColorSetting(A.id, A.label, t, A.tooltip, onChange, A.category); break; case "button": n.addButtonSetting(A.id, A.label, A.buttonText, A.tooltip, (function() { return A.onClick(e, i, n); }), A.category); break; case "dropdown": n.addDropdownSetting(A.id, A.label, t, A.options, A.tooltip, "followPlayerControl" === A.id ? function(A) { console.log("[Settings onChange] followPlayerControl changed to:", A), i && i.followPlayer ? (console.log("[Settings onChange] followPlayer module found:", i.followPlayer), "none" === A ? i.followPlayer.disable() : i.followPlayer.enable(A)) : console.error("[E-Push Settings] followPlayer module not found in onChange handler!", "Modules object:", i); } : A.onChange ? A.onChange : onChange, A.category), "followPlayerControl" === A.id && i && i.followPlayer && setTimeout((function() { return i.followPlayer.updateFollowDropdownOptions(); }), 100); break; case "keybindingEditor": if (i.keybinder) n.addKeybindingEditor(A.id, A.label, A.tooltip, A.category, i.keybinder); else { console.error("[E-Push Settings] Keybinder module not found for UI registration."), n.addCustomHtmlSetting(A.id, A.label, A.tooltip, A.category, "".concat(A.id, "-content")); var r = document.getElementById("".concat(A.id, "-content")); r && (r.innerHTML = '<p style="color: red;">Error: Keybinder module failed to load.</p>'); } break; default: console.warn("[E-Push] Unknown setting type for UI registration: ".concat(A.type)); } }; for (I.s(); !(g = I.n()).done; ) _loop(); } catch (A) { I.e(A); } finally { I.f(); } console.log("[E-Push] Settings UI registered."); } const aA = { isEnabled: !0, draw: function(A, e, t, i) { if (this.isEnabled && e) { var n = e.x, r = e.y; Object.values(B.entities).forEach((function(e) { if ("STAR_ENEMY" === Q.getEntityTypeName(e.entityType)) { e.pos || (e.pos = []); var o = JSON.stringify({ x: e.x, y: e.y }); if (0 === e.pos.length || e.pos[e.pos.length - 1] !== o) { e.pos.push(o); var a = Date.now(); if (e.lastSwapTime) { var s = a - e.lastSwapTime; e.swapInterval = s, e.lastSwapTime = a; } else e.lastSwapTime = a, e.swapInterval = null; } if (e.pos.length > 2 && e.pos.shift(), e.pos.length >= 2) { var g = e.pos.indexOf(o), I = 1 === g ? 0 : 0 === g && 2 === e.pos.length ? 1 : 0; try { var c = JSON.parse(e.pos[I]), C = c.x, B = c.y, E = t + (C - n), l = i + (B - r), h = u.getEntityRadius(e, Q.getEntityTypeName.bind(Q)); A.save(), A.beginPath(), A.arc(E, l, h, 0, 2 * Math.PI), A.strokeStyle = "rgba(255, 255, 0, 0.8)", A.lineWidth = 6, A.stroke(); var f = Date.now(); if (e.lastSwapTime && e.swapInterval && e.swapInterval > 0) { var d = f - e.lastSwapTime, y = Math.min(1, Math.max(0, d / e.swapInterval)); if (y > 0) { var w = h * y; A.beginPath(), A.arc(E, l, w, 0, 2 * Math.PI), A.fillStyle = "rgba(255, 255, 0, 0.4)", A.fill(); } } A.restore(); } catch (A) { console.error("[StarPredictor] Error parsing position:", e.pos[I], A); } } } })); } } }, sA = { isEnabled: !0, draw: function(A, e, t, i) { if (this.isEnabled && e) { var n = e.x, r = e.y; Object.values(B.entities).forEach((function(e) { if ("TELEPORTING_ENEMY" === Q.getEntityTypeName(e.entityType)) { e.teleportPos || (e.teleportPos = [], e.lastJumpTime = null, e.jumpInterval = null, e.predictedNextPos = null); var o = { x: e.x, y: e.y }, a = JSON.stringify(o); if (0 === e.teleportPos.length || e.teleportPos[e.teleportPos.length - 1] !== a) { e.teleportPos.push(a); var s = Date.now(); if (e.teleportPos.length >= 2) { if (e.lastJumpTime) { var g = s - e.lastJumpTime; e.jumpInterval = g; } e.lastJumpTime = s; try { var I = e.teleportPos[e.teleportPos.length - 2], c = JSON.parse(I), C = o.x - c.x, B = o.y - c.y; e.predictedNextPos = { x: o.x + C, y: o.y + B }; } catch (A) { console.error("[TeleportPredictor] Error parsing position:", A), e.predictedNextPos = null; } } else e.predictedNextPos = null, e.lastJumpTime = s; e.teleportPos.length > 2 && e.teleportPos.shift(); } if (e.predictedNextPos) { var E = e.predictedNextPos.x, l = e.predictedNextPos.y, h = t + (E - n), f = i + (l - r), d = u.getEntityRadius(e, Q.getEntityTypeName.bind(Q)); A.save(), A.beginPath(), A.arc(h, f, d, 0, 2 * Math.PI), A.strokeStyle = "rgba(255, 0, 255, 0.8)", A.lineWidth = 4, A.stroke(); var y = Date.now(); if (e.lastJumpTime && e.jumpInterval && e.jumpInterval > 0) { var w = y - e.lastJumpTime, v = Math.min(1, Math.max(0, w / e.jumpInterval)); if (v > 0) { var p = d * v; A.beginPath(), A.arc(h, f, p, 0, 2 * Math.PI), A.fillStyle = "rgba(255, 0, 255, 0.4)", A.fill(); } } A.restore(); } } })); } } }; function uiLibrary_ownKeys(A, e) { var t = Object.keys(A); if (Object.getOwnPropertySymbols) { var i = Object.getOwnPropertySymbols(A); e && (i = i.filter((function(e) { return Object.getOwnPropertyDescriptor(A, e).enumerable; }))), t.push.apply(t, i); } return t; } function uiLibrary_objectSpread(A) { for (var e = 1; e < arguments.length; e++) { var t = null != arguments[e] ? arguments[e] : {}; e % 2 ? uiLibrary_ownKeys(Object(t), !0).forEach((function(e) { _defineProperty(A, e, t[e]); })) : Object.getOwnPropertyDescriptors ? Object.defineProperties(A, Object.getOwnPropertyDescriptors(t)) : uiLibrary_ownKeys(Object(t)).forEach((function(e) { Object.defineProperty(A, e, Object.getOwnPropertyDescriptor(t, e)); })); } return A; } __webpack_require__(8921), __webpack_require__(8459), __webpack_require__(5440); var gA, IA, cA, uA, CA, QA, BA, EA, lA, hA, fA, dA, yA, wA, vA, pA, DA, bA, kA, SA, mA, NA, FA, GA, MA, JA, RA, UA, LA, YA, KA = (CA = {}, QA = null, BA = null, EA = null, lA = null, fA = !1, dA = null, yA = null, wA = null, vA = !1, pA = "ePushWindowPosition", DA = function(A, e) { try { localStorage.setItem(pA, JSON.stringify({ x: A, y: e })); } catch (A) { console.error("[E-Push UI] Failed to save window position:", A); } }, bA = function(A) { if (0 === A.button && EA.contains(A.target)) { vA = !0, gA = A.clientX, IA = A.clientY; var e = BA.getBoundingClientRect(); cA = e.left, uA = e.top, BA.style.cursor = "grabbing", document.body.style.userSelect = "none", document.addEventListener("mousemove", kA), document.addEventListener("mouseup", SA, { once: !0 }); } }, kA = function(A) { if (vA) { A.preventDefault(); var e = A.clientX - gA, t = A.clientY - IA, i = cA + e, n = uA + t; i = Math.max(0, Math.min(i, window.innerWidth - BA.offsetWidth)), n = Math.max(0, Math.min(n, window.innerHeight - BA.offsetHeight)), BA.style.left = "".concat(i, "px"), BA.style.top = "".concat(n, "px"); } }, SA = function() { vA && (vA = !1, BA.style.cursor = "grab", document.body.style.userSelect = "", document.removeEventListener("mousemove", kA), DA(parseFloat(BA.style.left), parseFloat(BA.style.top))); }, mA = function(A) { var e, t; if (A) { var i = null === (e = yA) || void 0 === e ? void 0 : e.querySelector(".epush-info-content"); if (i) { var n, r, o, a = '\n\t <h4 style="margin: 0 0 5px 0; font-size: 14px;">Credits</h4>\n\t\t <div style="margin-bottom: 10px;">\n\t\t <strong style="font-size: 12px;">Developers:</strong>\n\t\t <ul style="margin: 2px 0 0 0; padding-left: 20px; font-size: 12px; list-style: none;">\n\t\t '.concat((null === (n = A.credits) || void 0 === n || null === (n = n.developers) || void 0 === n ? void 0 : n.map((function(A) { return "<li><strong>".concat(A.name, ":</strong> ").concat(A.description || "N/A", "</li>"); })).join("")) || "<li>N/A</li>", '\n\t\t </ul>\n\t\t </div>\n\t\t <div>\n\t\t <strong style="font-size: 12px;">Contributors:</strong>\n\t\t <ul style="margin: 2px 0 15px 0; padding-left: 20px; font-size: 12px; list-style: none;">\n\t\t ').concat((null === (r = A.credits) || void 0 === r || null === (r = r.contributors) || void 0 === r ? void 0 : r.map((function(A) { return "<li><strong>".concat(A.name, ":</strong> ").concat(A.description || "N/A", "</li>"); })).join("")) || "<li>N/A</li>", '\n\t\t\t\t\t </ul>\n\t\t\t\t\t </div>\n\t\t\t\t\t <div>\n\t\t\t\t\t <strong style="font-size: 12px;">Community Members:</strong>\n\t\t\t\t\t <ul style="margin: 2px 0 15px 0; padding-left: 20px; font-size: 12px; list-style: none;">\n\t\t\t\t\t ').concat((null === (o = A.credits) || void 0 === o || null === (o = o.communityMembers) || void 0 === o ? void 0 : o.map((function(A) { return "<li><strong>".concat(A.name, "</strong>").concat(A.description ? ": ".concat(A.description) : "", "</li>"); })).join("")) || "<li>N/A</li>", "\n\t\t\t\t\t </ul>\n\t\t\t\t\t </div>\n\t\t\t\t\t "); i.innerHTML = a; } else console.warn("[E-Push UI] Credits content element not found."); var s = null === (t = dA) || void 0 === t ? void 0 : t.querySelector(".epush-info-content"); if (s) { var g, I = '<h4 style="margin: 0 0 5px 0; font-size: 14px;">Changelog</h4>'; null === (g = A.changelog) || void 0 === g || g.forEach((function(A) { var e; I += '\n\t\t\t\t\t <div style="margin-bottom: 10px;">\n\t\t\t\t\t <p style="margin: 0; font-size: 12px; font-weight: bold;">v'.concat(A.version, " - ").concat(A.date, '</p>\n\t\t\t\t\t <ul style="margin: 2px 0 0 0; padding-left: 20px; font-size: 12px;">\n\t\t\t\t\t ').concat((null === (e = A.changes) || void 0 === e ? void 0 : e.map((function(A) { return "<li>".concat(A, "</li>"); })).join("")) || "", "\n\t\t\t\t\t </ul>\n\t\t\t\t\t </div>\n\t\t\t\t\t "); })), s.innerHTML = I; } else console.warn("[E-Push UI] Changelog content element not found."); } }, NA = function() { var A = nA.gameWS && nA.gameWS.readyState === WebSocket.OPEN ? "none" : "block"; dA && (dA.style.display = A), yA && (yA.style.display = A); }, FA = function(A) { var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "", t = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}, i = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : "", n = document.createElement(A); e && (n.className = e); for (var r = 0, o = Object.entries(t); r < o.length; r++) { var a = _slicedToArray(o[r], 2), s = a[0], g = a[1]; n.setAttribute(s, g); } return i && (n.textContent = i), n; }, GA = function(A) { if (!A || !A.toLowerCase().startsWith("rgba")) return A; try { var e = A.substring(A.indexOf("(") + 1, A.lastIndexOf(")")).split(/,\s*/); if (e.length < 3) return A; var t = parseInt(e[0], 10), i = parseInt(e[1], 10), n = parseInt(e[2], 10), toHex = function(A) { return (e = A, Math.max(0, Math.min(255, e))).toString(16).padStart(2, "0"); var e; }; return "#".concat(toHex(t)).concat(toHex(i)).concat(toHex(n)); } catch (e) { return console.error("[E-Push UI] Error converting rgba to hex:", e, "Input:", A), A; } }, JA = function(A) { if (lA) { lA.querySelectorAll(".epush-tab-button").forEach((function(A) { return A.classList.remove("active"); })), Object.values(hA).forEach((function(A) { return A.classList.remove("active"); })); var e = lA.querySelector('.epush-tab-button[data-category="'.concat(A, '"]')), t = hA[A]; if (e && e.classList.add("active"), t && t.classList.add("active"), "Keybindings" === A) { var i = Object.values(CA).find((function(A) { return "keybindingEditor" === A.type; })); i && i.keybinder && "function" == typeof YA ? (console.log("[UI Library] Refreshing keybindings list on tab switch."), YA(i.keybinder)) : i && !i.keybinder && console.warn("[UI Library] Keybinding editor found, but keybinder instance is missing."); } } }, RA = function(A, e, t) { var i = FA("div", "epush-ui-setting"), n = FA("label", "epush-ui-label", { for: "epush-setting-".concat(A) }); return n.textContent = e, i.appendChild(n), i; }, UA = function(A, e) { var t = hA[A]; t ? t.appendChild(e) : console.warn('[E-Push UI] Category panel "'.concat(A, '" not found.')); }, { init: function() { QA = FA("div", "epush-top-bar"), Object.assign(QA.style, { position: "fixed", top: "0", left: "50%", transform: "translateX(-50%)", fontFamily: "Arial, sans-serif", borderBottomLeftRadius: "5px", borderBottomRightRadius: "5px", zIndex: "10000", userSelect: "none", padding: "6px 15px", cursor: "pointer", fontWeight: "bold", display: "flex", justifyContent: "space-between", alignItems: "center" }), QA.innerHTML = '<span>E-Push Settings</span><span class="epush-ui-toggle">▼</span>', QA.addEventListener("click", MA), document.body.appendChild(QA), BA = FA("div", "epush-settings-window"); var A = function() { try { var A = localStorage.getItem(pA); if (A) { var e = JSON.parse(A); if ("number" == typeof e.x && "number" == typeof e.y) return e.x = Math.max(0, Math.min(e.x, window.innerWidth - 50)), e.y = Math.max(0, Math.min(e.y, window.innerHeight - 50)), e; } } catch (A) { console.error("[E-Push UI] Failed to load window position:", A); } return { x: window.innerWidth / 2 - 225, y: 50 }; }(); Object.assign(BA.style, { position: "fixed", top: "".concat(A.y, "px"), left: "".concat(A.x, "px"), width: "450px", background: "var(--epush-window-bg, rgba(30, 30, 30, 0.9))", color: "var(--epush-text-color, white)", fontFamily: "Arial, sans-serif", borderRadius: "8px", zIndex: "10001", userSelect: "none", display: "none", flexDirection: "column", boxShadow: "0 5px 15px rgba(0,0,0,0.5)", border: "1px solid var(--epush-border-color, rgba(100, 100, 100, 0.7))", backdropFilter: "blur(5px)", maxHeight: "70vh" }), EA = FA("div", "epush-window-header"), Object.assign(EA.style, { padding: "8px 12px", cursor: "grab", fontWeight: "bold", background: "var(--epush-header-bg, rgba(50, 50, 50, 0.9))", borderTopLeftRadius: "inherit", borderTopRightRadius: "inherit", borderBottom: "1px solid var(--epush-border-color, rgba(100, 100, 100, 0.7))", display: "flex", justifyContent: "center", alignItems: "center", position: "relative", color: "inherit" }); var e = FA("span", "", {}, "E-Push Settings"); EA.appendChild(e); var t = FA("span", "epush-close-button", {}, "✕"); Object.assign(t.style, { position: "absolute", right: "10px", top: "50%", transform: "translateY(-50%)", cursor: "pointer", fontSize: "16px", fontWeight: "bold", padding: "0 5px", lineHeight: "1", color: "inherit" }), t.addEventListener("click", (function(A) { A.stopPropagation(), MA(); })), EA.appendChild(t), EA.addEventListener("mousedown", bA), BA.appendChild(EA), lA = FA("div", "epush-tab-bar"), Object.assign(lA.style, { display: "flex", background: "var(--epush-tabbar-bg, rgba(40, 40, 40, 0.8))", padding: "5px 5px 0 5px", borderBottom: "1px solid var(--epush-border-color, rgba(100, 100, 100, 0.7))", flexWrap: "wrap" }), BA.appendChild(lA); var i = FA("div", "epush-panels-container"); Object.assign(i.style, { padding: "10px", overflowY: "auto", overflowX: "hidden", flexGrow: "1", color: "inherit" }), BA.appendChild(i), document.body.appendChild(BA); var n = document.createElement("style"); n.textContent = "\n\t\t\t.server-browser-box {\n\t\t\t\theight: 340px;\n\t\t\t\toverflow-y: hidden;\n\t\t\t}\n .epush-settings-window { /* Ensure window itself uses text color */\n color: var(--epush-text-color, white);\n }\n .epush-tab-button {\n padding: 6px 12px;\n cursor: pointer;\n border: 1px solid transparent;\n border-bottom: none;\n margin-right: 3px;\n margin-bottom: -1px;\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n background: var(--epush-tab-bg, rgba(60, 60, 60, 0.7));\n color: inherit; /* Inherit text color */\n font-size: 13px;\n transition: background 0.2s ease;\n }\n .epush-tab-button:hover {\n background: var(--epush-header-bg, rgba(75, 75, 75, 0.8)); /* Use header bg for hover? */\n }\n .epush-tab-button.active {\n background: var(--epush-tab-active-bg, rgba(30, 30, 30, 0.9));\n border-color: var(--epush-border-color, rgba(100, 100, 100, 0.7));\n font-weight: bold;\n z-index: 1; /* Ensure active tab border overlaps others */\n }\n .epush-tab-panel {\n display: none;\n grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); /* Responsive columns */\n gap: 8px;\n }\n .epush-tab-panel.active {\n display: grid;\n }\n .epush-ui-setting {\n padding: 8px;\n background: var(--epush-setting-bg, rgba(60, 60, 60, 0.5));\n border-radius: 4px;\n position: relative;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n min-height: 50px;\n color: inherit;\n }\n .epush-ui-setting:hover {\n /* Consider a slightly lighter version of setting-bg for hover */\n background: color-mix(in srgb, var(--epush-setting-bg, rgba(60, 60, 60, 0.5)) 85%, white 15%);\n }\n .epush-ui-label {\n margin-bottom: 5px;\n display: block;\n font-size: 13px;\n font-weight: normal;\n cursor: default;\n color: inherit;\n }\n /* Tooltip CSS rules removed */\n .epush-ui-input, .epush-ui-slider, .epush-ui-color {\n width: 100%; box-sizing: border-box;\n }\n .epush-ui-input {\n padding: 5px; border-radius: 3px;\n border: 1px solid var(--epush-border-color, #444);\n background: var(--epush-input-bg, #222);\n color: var(--epush-input-color, white);\n margin-top: auto;\n }\n /* Specific styling for dropdowns to ensure theme application */\n .epush-ui-dropdown {\n background-color: var(--epush-input-bg, #222);\n color: var(--epush-input-color, white);\n border: 1px solid var(--epush-border-color, #444);\n /* Consider adding appearance: none; if default arrow is problematic */\n }\n .epush-ui-checkbox-container {\n display: flex; align-items: center; margin-top: auto;\n }\n .epush-ui-checkbox {\n margin-left: 10px; vertical-align: middle;\n height: 16px; width: 16px; cursor: pointer;\n accent-color: var(--epush-header-bg); /* Theme checkbox color */\n }\n .epush-ui-color {\n height: 30px; padding: 0; cursor: pointer; margin-top: auto;\n border: 1px solid var(--epush-border-color, #555);\n }\n /* Remove default browser border for color input */\n .epush-ui-color::-webkit-color-swatch-wrapper { padding: 0; }\n .epush-ui-color::-webkit-color-swatch { border: none; border-radius: 3px; }\n .epush-ui-color::-moz-color-swatch { border: none; border-radius: 3px; }\n\n .epush-ui-slider-container {\n display: flex; align-items: center; gap: 10px; margin-top: auto;\n }\n .epush-ui-slider {\n flex-grow: 1; cursor: pointer; height: 8px;\n appearance: none; border-radius: 4px;\n background: var(--epush-input-bg, #222); /* Use input bg for track */\n }\n .epush-ui-slider::-webkit-slider-thumb {\n appearance: none; width: 16px; height: 16px;\n background: var(--epush-text-color, #ddd); /* Use text color for thumb */\n border-radius: 50%; cursor: pointer;\n }\n .epush-ui-slider::-moz-range-thumb {\n width: 16px; height: 16px; border: none;\n background: var(--epush-text-color, #ddd);\n border-radius: 50%; cursor: pointer;\n }\n .epush-ui-slider-value {\n min-width: 35px; text-align: right; font-size: 12px;\n color: color-mix(in srgb, var(--epush-text-color, #ccc) 70%, transparent); /* Dimmed text color */\n }\n /* Scrollbar for panels container */\n .epush-panels-container { scrollbar-width: thin; scrollbar-color: rgba(255, 255, 255, 0.3) transparent; }\n .epush-panels-container::-webkit-scrollbar { width: 6px; }\n .epush-panels-container::-webkit-scrollbar-track { background: transparent; }\n .epush-panels-container::-webkit-scrollbar-thumb { background-color: rgba(255, 255, 255, 0.3); border-radius: 3px; }\n .epush-panels-container::-webkit-scrollbar-thumb:hover { background-color: rgba(255, 255, 255, 0.5); }\n\n /* Keybinding Editor Styles */\n .epush-keybinding-editor {\n display: flex;\n flex-direction: column;\n gap: 15px; /* Space between list and add section */\n padding: 10px;\n /* Use setting background for the overall editor container */\n background: var(--epush-setting-bg);\n border-radius: 4px;\n color: inherit; /* Ensure text color is inherited */\n /* Make it span full width if needed, depends on panel layout */\n grid-column: 1 / -1; /* Span all columns if parent is grid */\n }\n .epush-keybinding-list {\n max-height: 200px; /* Limit height and make scrollable */\n overflow-y: auto;\n padding-right: 5px; /* Space for scrollbar */\n border: 1px solid var(--epush-border-color); /* Use theme border color */\n border-radius: 3px;\n padding: 5px;\n background: var(--epush-input-bg); /* Use theme input background */\n color: inherit; /* Inherit text color */\n scrollbar-width: thin;\n scrollbar-color: rgba(255, 255, 255, 0.3) transparent; /* Keep scrollbar style */\n }\n .epush-keybinding-list::-webkit-scrollbar { width: 6px; }\n .epush-keybinding-list::-webkit-scrollbar-track { background: transparent; }\n .epush-keybinding-list::-webkit-scrollbar-thumb { background-color: rgba(255, 255, 255, 0.3); border-radius: 3px; }\n .epush-keybinding-list::-webkit-scrollbar-thumb:hover { background-color: rgba(255, 255, 255, 0.5); }\n\n .epush-keybinding-item {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 4px 6px;\n margin-bottom: 4px;\n background: var(--epush-tab-bg); /* Use theme tab background */\n border-radius: 3px;\n font-size: 13px;\n color: inherit; /* Inherit text color */\n }\n .epush-keybinding-item:last-child {\n margin-bottom: 0;\n }\n .epush-keybinding-keys {\n display: flex;\n align-items: center;\n gap: 5px;\n color: inherit; /* Inherit text color */\n }\n .epush-keybinding-key {\n background: var(--epush-input-bg); /* Use theme input background */\n padding: 2px 6px;\n border-radius: 3px;\n border: 1px solid var(--epush-border-color); /* Use theme border color */\n min-width: 30px; /* Ensure minimum width */\n text-align: center;\n font-weight: bold;\n color: inherit; /* Inherit text color */\n }\n .epush-keybinding-remove-btn {\n background: #f44336; /* Red */\n color: white;\n border: none;\n border-radius: 50%;\n width: 18px;\n height: 18px;\n line-height: 16px; /* Adjust for vertical centering */\n text-align: center;\n cursor: pointer;\n font-weight: bold;\n font-size: 12px;\n margin-left: 10px;\n padding: 0;\n transition: background 0.2s ease;\n }\n .epush-keybinding-remove-btn:hover {\n background: #d32f2f; /* Darker red */\n }\n .epush-keybinding-add-section {\n display: flex;\n align-items: center;\n gap: 5px; /* Reduced gap */\n margin-top: 10px; /* Space above add section */\n padding-top: 10px; /* Space within add section */\n border-top: 1px solid var(--epush-border-color); /* Use theme border color */\n flex-wrap: wrap; /* Allow wrapping */\n color: inherit; /* Inherit text color */\n }\n .epush-keybinding-add-btn, .epush-keybinding-capture-btn {\n /* Base button styles - similar to .epush-ui-button */\n padding: 6px 12px;\n cursor: pointer;\n border: 1px solid var(--epush-border-color);\n color: var(--epush-text-color);\n border-radius: 4px;\n font-weight: bold;\n transition: background 0.2s ease, border-color 0.2s ease;\n text-align: center;\n font-size: 13px; /* Match other elements */\n /* Apply consistent background */\n background-color: var(--epush-header-bg);\n }\n /* Remove specific background for add-btn as it's now in the base rule */\n /* .epush-keybinding-add-btn { } */\n\n /* Apply consistent hover effect */\n .epush-keybinding-add-btn:hover, .epush-keybinding-capture-btn:hover {\n background: color-mix(in srgb, var(--epush-header-bg, rgba(50, 50, 50, 0.9)) 85%, white 15%);\n /* Keep border hover consistent if needed, or remove if base border is sufficient */\n /* border-color: color-mix(in srgb, var(--epush-border-color, #555) 70%, white 30%); */\n }\n\n .epush-keybinding-capture-btn {\n /* Specifics for Capture buttons */\n /* min-width: 80px; /* Removed min-width for consistency */\n /* Ensure font-weight matches add button (already in base rule) */\n /* font-weight: bold; */\n }\n /* Remove specific hover for capture-btn as it's now combined */\n /* .epush-keybinding-capture-btn:hover { } */\n\n /* Styles for compact boolean settings */\n .epush-ui-setting-boolean {\n flex-direction: row; /* Arrange label and checkbox horizontally */\n align-items: center; /* Vertically center items */\n justify-content: space-between; /* Push checkbox to the right */\n min-height: auto; /* Override default min-height */\n padding-top: 5px; /* Adjust padding */\n padding-bottom: 5px;\n }\n .epush-ui-setting-boolean .epush-ui-label {\n margin-bottom: 0; /* Remove bottom margin */\n flex-grow: 1; /* Allow label to take available space */\n margin-right: 10px; /* Add space between label and checkbox */\n }\n .epush-ui-setting-boolean .epush-ui-checkbox-container {\n margin-top: 0; /* Remove auto margin */\n flex-shrink: 0; /* Prevent checkbox container from shrinking */\n }\n .epush-ui-setting-boolean .epush-ui-checkbox {\n margin-left: 0; /* Reset margin from default checkbox style */\n }\n ", document.head.appendChild(n), wA && clearInterval(wA), wA = setInterval(NA, 2e3), NA(); }, createTabs: function(A) { var e = BA.querySelector(".epush-panels-container"); lA && e && (lA.innerHTML = "", e.innerHTML = "", hA = {}, A.forEach((function(A, t) { var i = FA("button", "epush-tab-button", {}, A); i.dataset.category = A, lA.appendChild(i); var n = FA("div", "epush-tab-panel"); n.id = "epush-panel-".concat(A.replace(/\s+/g, "-")), n.dataset.category = A, e.appendChild(n), hA[A] = n, 0 === t && (i.classList.add("active"), n.classList.add("active")), i.addEventListener("click", (function() { return JA(A); })); }))); }, addBooleanSetting: function(A, e, t, i, n, r) { var o = RA(A, e); o.classList.add("epush-ui-setting-boolean"); var a = FA("div", "epush-ui-checkbox-container"), s = FA("input", "epush-ui-checkbox", { type: "checkbox", id: "epush-setting-".concat(A) }); return s.checked = t, s.addEventListener("change", (function() { var e = s.checked; CA[A].value = e, n && n(e); })), a.appendChild(s), o.appendChild(a), UA(r, o), CA[A] = { type: "boolean", element: s, value: t, onChange: n, category: r }, CA[A]; }, addTextSetting: function(A, e, t, i, n, r) { var o = RA(A, e), a = FA("input", "epush-ui-input", { type: "text", id: "epush-setting-".concat(A), value: t }); return a.addEventListener("input", (function() { var e = a.value; CA[A].value = e, n && n(e); })), o.appendChild(a), UA(r, o), CA[A] = { type: "text", element: a, value: t, onChange: n, category: r }, CA[A]; }, addNumberSetting: function(A, e, t, i, n, r) { var o = RA(A, e), a = FA("input", "epush-ui-input", { type: "number", id: "epush-setting-".concat(A), value: t }); return a.addEventListener("change", (function() { var e = parseFloat(a.value); CA[A].value = e, n && n(e); })), o.appendChild(a), UA(r, o), CA[A] = { type: "number", element: a, value: t, onChange: n, category: r }, CA[A]; }, addSliderSetting: function(A, e, t, i, n, r, o, a, s) { var g = RA(A, e), I = FA("div", "epush-ui-slider-container"), c = FA("input", "epush-ui-slider", { type: "range", id: "epush-setting-".concat(A), min: i, max: n, step: r, value: t }), u = FA("span", "epush-ui-slider-value", {}, t); return c.addEventListener("input", (function() { var e = parseFloat(c.value); u.textContent = e, CA[A].value = e, a && a(e); })), I.appendChild(c), I.appendChild(u), g.appendChild(I), UA(s, g), CA[A] = { type: "slider", element: c, valueDisplay: u, value: t, onChange: a, category: s }, CA[A]; }, addColorSetting: function(A, e, t, i, n, r) { var o = RA(A, e), a = FA("input", "epush-ui-color", { type: "color", id: "epush-setting-".concat(A), value: GA(t) }); return a.addEventListener("input", (function() { var e = a.value; CA[A].value = e, n && n(e); })), o.appendChild(a), UA(r, o), CA[A] = { type: "color", element: a, value: t, onChange: n, category: r }, CA[A]; }, addButtonSetting: function(A, e, t, i, n, r) { var o = RA(A, e), a = FA("button", "epush-ui-input epush-ui-button", { id: "epush-setting-".concat(A) }, t); return Object.assign(a.style, { cursor: "pointer", marginTop: "auto", width: "auto", padding: "6px 12px", backgroundColor: "var(--epush-header-bg)", borderColor: "var(--epush-border-color)", color: "var(--epush-text-color)", fontWeight: "bold" }), a.addEventListener("click", n), o.appendChild(a), UA(r, o), CA[A] = { type: "button", element: a, onClick: n, category: r }, CA[A]; }, addCustomHtmlSetting: LA = function(A, e, t, i, n) { var r = RA(A, e), o = FA("div", "epush-ui-custom-content", { id: n }); return Object.assign(o.style, { marginTop: "5px", padding: "5px", border: "1px dashed var(--epush-border-color, #555)", borderRadius: "3px", minHeight: "40px" }), r.appendChild(o), UA(i, r), CA[A] = { type: "customHtml", element: r, contentElement: o, category: i }, CA[A]; }, addDropdownSetting: function(A, e, t, i, n, r, o) { var a = RA(A, e), s = FA("select", "epush-ui-input epush-ui-dropdown", { id: "epush-setting-".concat(A) }); return Object.assign(s.style, { marginTop: "auto", cursor: "pointer" }), i.forEach((function(A) { var e = FA("option", "", { value: A.value }, A.label || A.value); s.appendChild(e); })), s.value = t, s.addEventListener("change", (function() { var e = s.value; CA[A].value = e, r && r(e); })), a.appendChild(s), UA(o, a), CA[A] = { type: "dropdown", element: s, value: t, onChange: r, category: o }, CA[A]; }, addKeybindingEditor: function(A, e, t, i, n) { if (n) { var r = LA(A, e, 0, i, "".concat(A, "-content")), o = r.contentElement; o.classList.add("epush-keybinding-editor"), o.style.border = "none", o.style.padding = "0"; var a = FA("div", "epush-keybinding-list"); a.id = "".concat(A, "-list"), o.appendChild(a); var s = FA("div", "epush-keybinding-add-section"), g = FA("button", "epush-keybinding-capture-btn", { id: "".concat(A, "-source-btn"), "data-identifier": "" }, "Click to set Source"), I = FA("button", "epush-keybinding-capture-btn", { id: "".concat(A, "-target-btn"), "data-identifier": "" }, "Click to set Target"), c = FA("button", "epush-keybinding-add-btn", {}, "Add Binding"); g.addEventListener("click", (function() { n.listenForBindingKey("source", g); })), I.addEventListener("click", (function() { n.listenForBindingKey("target", I); })), c.addEventListener("click", (function() { var A = g.dataset.identifier, e = I.dataset.identifier; A && e && (n.addBinding(A, e), g.textContent = "Click to set Source", g.dataset.identifier = "", I.textContent = "Click to set Target", I.dataset.identifier = ""); })), s.appendChild(FA("span", "", {}, "Bind:")), s.appendChild(g), s.appendChild(I), s.appendChild(c), o.appendChild(s), YA(n), CA[A] = uiLibrary_objectSpread(uiLibrary_objectSpread({}, r), {}, { type: "keybindingEditor", listContainer: a, keybinder: n }); } else console.error("[UI Library] Keybinder instance not provided for addKeybindingEditor."); }, rebuildKeybindingsUI: YA = function(A) { var e = Object.values(CA).find((function(A) { return "keybindingEditor" === A.type; })); if (e && A) { var t = e.listContainer; if (t) { t.innerHTML = ""; var i = A.bindings, n = Object.keys(i).sort(); 0 !== n.length ? n.forEach((function(e) { var n = i[e], r = FA("div", "epush-keybinding-item"), o = FA("div", "epush-keybinding-keys"), a = FA("span", "epush-keybinding-key", {}, A.formatIdentifierForDisplay(e)), s = FA("span", "epush-keybinding-arrow", {}, "->"), g = FA("span", "epush-keybinding-key", {}, A.formatIdentifierForDisplay(n)); o.appendChild(a), o.appendChild(s), o.appendChild(g); var I = FA("button", "epush-keybinding-remove-btn", {}, "✕"); I.title = "Remove binding for ".concat(e), I.addEventListener("click", (function() { A.removeBinding(e); })), r.appendChild(o), r.appendChild(I), t.appendChild(r); })) : t.innerHTML = '<p style="text-align: center; opacity: 0.7; font-size: 12px;">No bindings configured.</p>'; } } }, updateSetting: function(A, e) { if (CA[A]) { var t = CA[A]; switch (t.value = e, t.type) { case "boolean": t.element.checked = e; break; case "slider": t.element.value = e, t.valueDisplay && (t.valueDisplay.textContent = e); break; case "color": t.element.value = GA(e); break; default: t.element.value = e; } } }, updateDropdownOptions: function(A, e) { if (CA[A] && "dropdown" === CA[A].type) { var t = CA[A].element, i = t.value; t.innerHTML = "", e.forEach((function(A) { var e = FA("option", "", { value: A.value }, A.label || A.value); t.appendChild(e); })), e.some((function(A) { return A.value === i; })) ? t.value = i : e.length > 0 && (t.value = e[0].value), CA[A].value !== t.value && (CA[A].value = t.value); } }, getSettingValue: function(A) { var e; return null === (e = CA[A]) || void 0 === e ? void 0 : e.value; }, toggleWindow: MA = function() { if (fA = !fA, BA.style.display = fA ? "flex" : "none", QA.querySelector(".epush-ui-toggle").textContent = fA ? "▲" : "▼", fA) { var A = BA.getBoundingClientRect(), e = A.left, t = A.top, i = !1; (e < 0 || e > window.innerWidth - BA.offsetWidth) && (e = Math.max(0, Math.min(e, window.innerWidth - BA.offsetWidth)), i = !0), (t < 0 || t > window.innerHeight - BA.offsetHeight) && (t = Math.max(0, Math.min(t, window.innerHeight - BA.offsetHeight)), i = !0), i && (BA.style.left = "".concat(e, "px"), BA.style.top = "".concat(t, "px"), DA(e, t)); } }, updateThemeColors: function() { var A = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : null, getColor = function(e, t) { var i, n; return A && void 0 !== A[e] ? A[e] : null !== (i = null === (n = CA[e]) || void 0 === n ? void 0 : n.value) && void 0 !== i ? i : t; }, e = { windowBg: getColor("uiWindowBg", "rgba(49, 50, 68, 0.9)"), headerBg: getColor("uiHeaderBg", "rgba(69, 71, 90, 0.9)"), tabBarBg: getColor("uiTabBarBg", "rgba(49, 50, 68, 0.8)"), tabBg: getColor("uiTabBg", "rgba(69, 71, 90, 0.7)"), tabActiveBg: getColor("uiTabActiveBg", "rgba(30, 30, 46, 0.9)"), settingBg: getColor("uiSettingBg", "rgba(69, 71, 90, 0.5)"), textColor: getColor("uiTextColor", "#cdd6f4"), borderColor: getColor("uiBorderColor", "rgba(88, 91, 112, 0.7)"), inputBg: getColor("uiInputBg", "#1e1e2e"), inputColor: getColor("uiInputColor", "#cdd6f4") }, t = BA; t && (t.style.setProperty("--epush-window-bg", e.windowBg), t.style.setProperty("--epush-header-bg", e.headerBg), t.style.setProperty("--epush-tabbar-bg", e.tabBarBg), t.style.setProperty("--epush-tab-bg", e.tabBg), t.style.setProperty("--epush-tab-active-bg", e.tabActiveBg), t.style.setProperty("--epush-setting-bg", e.settingBg), t.style.setProperty("--epush-text-color", e.textColor), t.style.setProperty("--epush-border-color", e.borderColor), t.style.setProperty("--epush-input-bg", e.inputBg), t.style.setProperty("--epush-input-color", e.inputColor), QA && (QA.style.backgroundColor = e.headerBg, QA.style.color = e.textColor)); }, createInfoElements: function(A) { if (!dA) { (dA = document.createElement("div")).id = "epush-changelog-container"; var e = document.createElement("div"); e.className = "epush-info-content", dA.appendChild(e), Object.assign(dA.style, { position: "fixed", bottom: "10px", left: "10px", padding: "10px", color: "white", zIndex: "9998", borderRadius: "4px", display: "none", backgroundColor: "rgba(0, 0, 0, 0.7)", backdropFilter: "blur(3px)", maxWidth: "350px", maxHeight: "25vh", overflowY: "auto", boxShadow: "0 2px 8px rgba(0, 0, 0, 0.3)", scrollbarWidth: "thin", scrollbarColor: "rgba(255, 255, 255, 0.3) transparent", fontFamily: "Arial, sans-serif", lineHeight: "1.4", textAlign: "left" }), document.body.appendChild(dA); } if (!yA) { (yA = document.createElement("div")).id = "epush-credits-container"; var t = document.createElement("div"); t.className = "epush-info-content", yA.appendChild(t), Object.assign(yA.style, { position: "fixed", top: "10px", left: "10px", padding: "10px", color: "white", zIndex: "9999", borderRadius: "4px", display: "none", backgroundColor: "rgba(0, 0, 0, 0.7)", backdropFilter: "blur(3px)", maxWidth: "350px", maxHeight: "30vh", overflowY: "auto", boxShadow: "0 2px 8px rgba(0, 0, 0, 0.3)", scrollbarWidth: "thin", scrollbarColor: "rgba(255, 255, 255, 0.3) transparent", fontFamily: "Arial, sans-serif", lineHeight: "1.4", textAlign: "left" }), document.body.appendChild(yA); } var i = "epush-info-scrollbar-style"; if (!document.getElementById(i)) { var n = document.createElement("style"); n.id = i, n.textContent = "\n\t #epush-changelog-container::-webkit-scrollbar,\n\t #epush-credits-container::-webkit-scrollbar { width: 6px; }\n\t #epush-changelog-container::-webkit-scrollbar-track,\n\t #epush-credits-container::-webkit-scrollbar-track { background: transparent; }\n\t #epush-changelog-container::-webkit-scrollbar-thumb,\n\t #epush-credits-container::-webkit-scrollbar-thumb { background-color: rgba(255, 255, 255, 0.3); border-radius: 3px; }\n\t #epush-changelog-container::-webkit-scrollbar-thumb:hover,\n\t #epush-credits-container::-webkit-scrollbar-thumb:hover { background-color: rgba(255, 255, 255, 0.5); }\n\t ", document.head.appendChild(n); } mA(A); }, updateInfoContents: mA, createElement: FA, categoryPanels: hA = {} }); const HA = KA; var xA = { isEnabled: !1, targetPlayerName: null, easeDistance: 20, stopDistance: 5, maxSpeedScale: 1e3, updateInterval: 10, lastUpdateTime: 0, lastKnownTargetPosition: null, isCurrentlyMoving: !1, dropdownUpdateInterval: null, init: function() { return console.log("[E-Push] FollowPlayer module initialized"), this.startDropdownUpdates(), this; }, startDropdownUpdates: function() { var A = this; this.dropdownUpdateInterval && clearInterval(this.dropdownUpdateInterval), this.dropdownUpdateInterval = setInterval((function() { var e = document.querySelector(".epush-settings-window"); e && "none" !== e.style.display && A.updateFollowDropdownOptions(); }), 3e3); }, stopDropdownUpdates: function() { this.dropdownUpdateInterval && clearInterval(this.dropdownUpdateInterval), this.dropdownUpdateInterval = null; }, updateFollowDropdownOptions: function() { var A = Object.values(B.globalEntities).filter((function(A) { return A.id !== B.selfId && A.name; })).sort((function(A, e) { return A.name.localeCompare(e.name); })), e = [ { value: "none", label: "None" } ]; A.forEach((function(A) { e.push({ value: A.name, label: "".concat(A.name, " (L").concat(A.level || "?", ")") }); })), HA.updateDropdownOptions("followPlayerControl", e); }, enable: function() { var A = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : null; A && this.targetPlayerName !== A && (this.targetPlayerName = A, console.log("[E-Push FollowPlayer] Started following ".concat(A, ".")), this.isEnabled = !0, this.lastUpdateTime = 0, this.isCurrentlyMoving = !1, HA.updateSetting("followPlayerControl", this.targetPlayerName), this.updateFollowDropdownOptions()); }, disable: function() { if (this.isEnabled) { var A = this.targetPlayerName; this.targetPlayerName = null, this.isEnabled = !1, this.isCurrentlyMoving = !1, this.lastKnownTargetPosition = null, console.log("[E-Push FollowPlayer] Stopped following ".concat(A, ".")), HA.updateSetting("followPlayerControl", "none"), this.updateFollowDropdownOptions(); } }, update: function() { var e = this; return (0, A.A)(t().mark((function _callee() { var A, i, n, r, o, a, s, g, I, c, u, C, E, l, h, f, d, y, w, v, p; return t().wrap((function(t) { for (;;) switch (t.prev = t.next) { case 0: if (e.isEnabled) { t.next = 2; break; } return t.abrupt("return"); case 2: if (!((A = Date.now()) - e.lastUpdateTime < e.updateInterval)) { t.next = 5; break; } return t.abrupt("return"); case 5: if (e.lastUpdateTime = A, i = B.getPlayer()) { t.next = 10; break; } return e.disable(), t.abrupt("return"); case 10: if (e.targetPlayerName) { t.next = 13; break; } return e.disable(), t.abrupt("return"); case 13: if (o = Object.values(B.globalEntities).find((function(A) { return A.name === e.targetPlayerName; }))) { t.next = 18; break; } return console.log('[FP] Target "'.concat(e.targetPlayerName, '" not found. Disabling.')), e.disable(), t.abrupt("return"); case 18: if (!(a = B.entities[o.id])) { t.next = 25; break; } n = a.x, r = a.y, e.lastKnownTargetPosition = { x: n, y: r }, t.next = 33; break; case 25: if (!e.lastKnownTargetPosition) { t.next = 30; break; } n = e.lastKnownTargetPosition.x, r = e.lastKnownTargetPosition.y, t.next = 33; break; case 30: return e.isCurrentlyMoving && nA.sendMovement(0, 0), e.isCurrentlyMoving = !1, t.abrupt("return"); case 33: s = 0, g = 0, I = !1, c = !1, u = n - i.x, C = r - i.y, (E = Math.sqrt(u * u + C * C)) > e.stopDistance ? E > .01 && (l = u / E, h = C / E, f = e.maxSpeedScale, E < e.easeDistance && (f *= (E - e.stopDistance) / (e.easeDistance - e.stopDistance), f = Math.max(0, f)), s = l * f, g = h * f, I = !0) : e.isCurrentlyMoving && (c = !0), d = s, y = g, w = I, I && R.enabled && (v = R.calculateSafeMovement(s, g, Q.getEntityTypeName.bind(Q)), d = v.x, y = v.y, w = Math.abs(d) > .01 || Math.abs(y) > .01), c ? (nA.sendMovement(0, 0), e.isCurrentlyMoving = !1) : w ? (p = nA.sendMovement(d, y), e.isCurrentlyMoving = p) : e.isCurrentlyMoving && (nA.sendMovement(0, 0), e.isCurrentlyMoving = !1); case 46: case "end": return t.stop(); } }), _callee); })))(); }, _gameToScreenCoords: function(A, e) { var t = B.getPlayer(), i = ge.getCanvas(); if (!t || !i) return null; var n = t.x, r = t.y; return { x: i.width / 2 + (A - n), y: i.height / 2 + (e - r) }; }, _gameUnitsToScreen: function(A) { return A; }, draw: function(A) { this.isEnabled; } }; const OA = xA, qA = { enabled: !0, activeDeparts: new Map, previousDepartState: new Map, init: function() { this.activeDeparts.clear(), this.previousDepartState.clear(), console.log("[E-Push] Depart Indicator initialized"); }, isActive: function() { if (!this.enabled) return !1; var A = M.getState(); return "REAPER" === (A ? A.heroName : null); }, isSelfDeparted: function() { return this.activeDeparts.has(B.selfId); }, update: function() { var A = this, e = Date.now(), t = new Set(Object.keys(B.entities).map(Number)); for (var i in B.entities) { var n = parseInt(i, 10), r = B.entities[n]; if (this.isActive()) this.activeDeparts.has(n) && this.activeDeparts.delete(n), this.previousDepartState.has(n) && this.previousDepartState.delete(n); else { var o = !!r.isDeparted, a = this.previousDepartState.get(n) || !1; if (o && !a) { var s = r.departTimeLeft; (null == s || s < 2601) && (console.log("[E-Push] Initial departTimeLeft (".concat(s, ") is < 2000ms for ").concat(n, ". Using fallback ").concat(2600, "ms.")), s = 2600), this.activeDeparts.set(n, { startTime: e, totalDuration: s }), console.log("[E-Push] Reaper ".concat(n, " departed. Initial Duration: ").concat(s, "ms")); } else !o && a && this.activeDeparts.has(n) && (this.activeDeparts.delete(n), console.log("[E-Push] Reaper ".concat(n, " returned."))); if (this.previousDepartState.set(n, o), o && this.activeDeparts.has(n)) { var g = this.activeDeparts.get(n); e > g.startTime + g.totalDuration && (this.activeDeparts.delete(n), this.previousDepartState.set(n, !1), console.log("[E-Push] Reaper ".concat(n, " depart timer expired (client-side)."))); } } } this.activeDeparts.forEach((function(e, i) { t.has(i) || A.activeDeparts.delete(i); })), this.previousDepartState.forEach((function(e, i) { t.has(i) || A.previousDepartState.delete(i); })); }, draw: function(A, e, t, i) { var n = this; if (e && 0 !== this.activeDeparts.size) { var r = Date.now(); this.activeDeparts.forEach((function(o, a) { var s = B.entities[a]; if (!s) return n.activeDeparts.delete(a), void n.previousDepartState.delete(a); var g = r - o.startTime, I = Math.max(0, 1 - g / o.totalDuration); if (I <= 0) return n.activeDeparts.delete(a), void n.previousDepartState.set(a, !1); var c = t + (s.x - e.x), u = i + (s.y - e.y), C = s.radius || 15, Q = -Math.PI / 2, E = Q + I * Math.PI * 2, l = Q + 2 * Math.PI; A.save(), A.fillStyle = "rgba(0, 0, 0, 0.4)", A.beginPath(), A.moveTo(c, u), A.arc(c, u, C, Q, l), A.closePath(), A.fill(), A.fillStyle = "rgba(255, 255, 255, 0.8)", A.beginPath(), A.moveTo(c, u), A.arc(c, u, C, Q, E), A.closePath(), A.fill(), A.restore(); })); } } }; function pelletCollector_createForOfIteratorHelper(A, e) { var t = "undefined" != typeof Symbol && A[Symbol.iterator] || A["@@iterator"]; if (!t) { if (Array.isArray(A) || (t = function(A, e) { if (A) { if ("string" == typeof A) return pelletCollector_arrayLikeToArray(A, e); var t = {}.toString.call(A).slice(8, -1); return "Object" === t && A.constructor && (t = A.constructor.name), "Map" === t || "Set" === t ? Array.from(A) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? pelletCollector_arrayLikeToArray(A, e) : void 0; } }(A)) || e && A && "number" == typeof A.length) { t && (A = t); var i = 0, F = function() {}; return { s: F, n: function() { return i >= A.length ? { done: !0 } : { done: !1, value: A[i++] }; }, e: function(A) { throw A; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var n, r = !0, o = !1; return { s: function() { t = t.call(A); }, n: function() { var A = t.next(); return r = A.done, A; }, e: function(A) { o = !0, n = A; }, f: function() { try { r || null == t.return || t.return(); } finally { if (o) throw n; } } }; } function pelletCollector_arrayLikeToArray(A, e) { (null == e || e > A.length) && (e = A.length); for (var t = 0, i = Array(e); t < e; t++) i[t] = A[t]; return i; } var TA = 1e3; const PA = { enabled: !1, currentTargetPelletId: null, currentPath: null, pathIndex: 0, isCurrentlyMoving: !1, lastPathRecalcTime: 0, obstacleRadiusBuffer: 50, _logCounter: 0, init: function() { this.currentTargetPelletId = null, this.lastPathRecalcTime = 0, this.currentPath = null, this.pathIndex = 0, this.isCurrentlyMoving = !1, console.log("[E-Push] Pellet Collector initialized"); }, isActive: function() { return this.enabled; }, update: function() { var e = this; return (0, A.A)(t().mark((function _callee() { var A, i, n, r, o, a, s, g, I, c, C, E, l, h, f, d, y, w, v, p, D, b, k, S, m, N, G, J, U, L, Y, K, H, x, O, q, T, P, _, j, V, Z, W, X, z, $, AA, eA, tA, iA, rA, oA, aA, sA, gA, IA, cA, uA, CA; return t().wrap((function(t) { for (;;) switch (t.prev = t.next) { case 0: if (e._logCounter = (e._logCounter || 0) + 1, A = e._logCounter % 60 == 0, e.isActive()) { t.next = 7; break; } return A && e.currentTargetPelletId && console.log("[Pellet Collector] Disabled, clearing target."), e.isCurrentlyMoving && (nA.sendMovement(0, 0), e.isCurrentlyMoving = !1), e.currentTargetPelletId && (e.currentTargetPelletId = null, e.currentPath = null, e.pathIndex = 0), t.abrupt("return"); case 7: if (i = M.getState(), n = B.area, r = B.entities, i && n && void 0 !== n.width && void 0 !== n.height && r) { t.next = 13; break; } return e.isCurrentlyMoving && (nA.sendMovement(0, 0), e.isCurrentlyMoving = !1), t.abrupt("return"); case 13: for (a in o = [], r) (s = r[a]) && "PELLET" === Q.getEntityTypeName(s.entityType) && o.push(s); if (0 !== o.length) { t.next = 22; break; } return A && e.currentTargetPelletId && console.log("[Pellet Collector] No pellets found, clearing target."), e.currentTargetPelletId = null, e.currentPath = null, e.pathIndex = 0, e.isCurrentlyMoving && (nA.sendMovement(0, 0), e.isCurrentlyMoving = !1), t.abrupt("return"); case 22: if (g = u.getTrackedEntities(Q.getEntityTypeName.bind(Q)), I = o.filter((function(A) { var e, t = pelletCollector_createForOfIteratorHelper(g); try { for (t.s(); !(e = t.n()).done; ) { var i = e.value, n = A.x - i.x, r = A.y - i.y; if (n * n + r * r < 2500) return !1; } } catch (A) { t.e(A); } finally { t.f(); } return !0; })), 0 !== I.length) { t.next = 29; break; } return A && console.log("[Pellet Collector] No UNGUARDED pellets found."), e.currentTargetPelletId && (e.currentTargetPelletId = null, e.currentPath = null, e.pathIndex = 0, e.isCurrentlyMoving && (nA.sendMovement(0, 0), e.isCurrentlyMoving = !1)), t.abrupt("return"); case 29: if (A && console.log("[Pellet Collector] Found ".concat(o.length, " total pellets, ").concat(I.length, " unguarded.")), c = null, e.currentTargetPelletId && (C = r[e.currentTargetPelletId], E = I.some((function(A) { return A.id === e.currentTargetPelletId; })), C && "PELLET" === Q.getEntityTypeName(C.entityType) && E ? c = C : (e.currentTargetPelletId = null, A && console.log("[Pellet Collector] Current target invalid or guarded, clearing."), c = null, e.currentPath = null, e.pathIndex = 0)), c) { t.next = 49; break; } l = 1 / 0, h = pelletCollector_createForOfIteratorHelper(I); try { for (h.s(); !(f = h.n()).done; ) d = f.value, y = d.x - i.x, w = d.y - i.y, (v = y * y + w * w) < l && v < 25e4 && (l = v, c = d); } catch (A) { h.e(A); } finally { h.f(); } if (!c) { t.next = 43; break; } p = e.currentTargetPelletId, e.currentTargetPelletId = c.id, e.currentTargetPelletId !== p && (A && console.log("[Pellet Collector] New target: Pellet ".concat(e.currentTargetPelletId)), e.lastPathRecalcTime = 0, e.currentPath = null, e.pathIndex = 0), t.next = 47; break; case 43: return A && console.log("[Pellet Collector] No suitable target pellet found (unguarded and within range)."), e.isCurrentlyMoving && (nA.sendMovement(0, 0), e.isCurrentlyMoving = !1), e.currentTargetPelletId && (e.currentTargetPelletId = null, e.currentPath = null, e.pathIndex = 0), t.abrupt("return"); case 47: t.next = 54; break; case 49: D = c.x - i.x, b = c.y - i.y, D * D + b * b >= 25e4 && (A && console.log("[Pellet Collector] Current target ".concat(e.currentTargetPelletId, " moved out of range.")), e.currentTargetPelletId = null, c = null, e.currentPath = null, e.pathIndex = 0, e.isCurrentlyMoving && (nA.sendMovement(0, 0), e.isCurrentlyMoving = !1)); case 54: if (k = Date.now(), !(c && k - e.lastPathRecalcTime >= 5)) { t.next = 88; break; } return A && console.log("[Pellet Collector] Recalculating path..."), e.lastPathRecalcTime = k, S = n.width, m = n.height, N = n.x, G = n.y, J = Math.max(N, Math.min(i.x, N + S - 1e-9)), U = Math.max(G, Math.min(i.y, G + m - 1e-9)), L = { x: J - N, y: U - G }, Y = Math.max(N, Math.min(c.x, N + S - 1e-9)), K = Math.max(G, Math.min(c.y, G + m - 1e-9)), H = { x: Y - N, y: K - G }, x = u.getTrackedEntities(Q.getEntityTypeName.bind(Q)), O = x.map((function(A) { return { x: A.x - N, y: A.y - G, radius: A.radius + e.obstacleRadiusBuffer }; })), q = Math.max(S, m), t.prev = 75, t.next = 78, calculatePathAsync(L, H, O, S, m, q); case 78: (T = t.sent) && T.path && T.path.length > 0 ? (e.currentPath = T.path.map((function(A) { return { x: A.x + N, y: A.y + G }; })), e.pathIndex = 0, A && console.log("[Pellet Collector] Path calculated to ".concat(e.currentTargetPelletId, ", points: ").concat(e.currentPath.length))) : (A && console.log("[Pellet Collector] No path found to ".concat(e.currentTargetPelletId)), e.currentPath = null, e.pathIndex = 0), t.next = 88; break; case 82: t.prev = 82, t.t0 = t.catch(75), A && console.error("[Pellet Collector] Pathfinding error:", t.t0), console.error("[Pellet Collector] Pathfinding error:", t.t0), e.currentPath = null, e.pathIndex = 0; case 88: P = 0, _ = 0, j = !1, V = !1, e.currentPath && e.currentPath.length > 1 ? (Z = e.pathIndex + 1) < e.currentPath.length ? (W = e.currentPath[Z], X = W.x - i.x, z = W.y - i.y, X * X + z * z < 400 && Z < e.currentPath.length - 1 && (e.pathIndex++, A && console.log("[PC] Advanced path index to ".concat(e.pathIndex))), $ = Math.min(e.pathIndex + 1, e.currentPath.length - 1), AA = e.currentPath[$], eA = AA.x - i.x, tA = AA.y - i.y, (iA = Math.sqrt(eA * eA + tA * tA)) > 5 ? iA > .01 && (P = eA / iA * TA, _ = tA / iA * TA, j = !0) : $ >= e.currentPath.length - 1 ? (e.isCurrentlyMoving && (V = !0), e.currentPath = null, e.pathIndex = 0, A && console.log("[PC] Reached end of path."), e.currentTargetPelletId = null) : (rA = e.currentPath[$ + 1], oA = rA.x - i.x, aA = rA.y - i.y, (sA = Math.sqrt(oA * oA + aA * aA)) > .01 && (P = oA / sA * TA, _ = aA / sA * TA, j = !0))) : (e.isCurrentlyMoving && (V = !0), e.currentPath = null, e.pathIndex = 0) : (A && e.currentTargetPelletId && console.log("[PC] No valid path available for movement."), e.isCurrentlyMoving && (V = !0), e.currentPath = null, e.pathIndex = 0), gA = P, IA = _, cA = j, j && R.enabled && (uA = R.calculateSafeMovement(P, _, Q.getEntityTypeName.bind(Q)), gA = uA.x, IA = uA.y, cA = Math.abs(gA) > .01 || Math.abs(IA) > .01, uA.collision && A && console.log("[PC] Avoidance modified path movement.")), V ? (nA.sendMovement(0, 0), e.isCurrentlyMoving = !1, A && console.log("[PC] Sending STOP command.")) : cA ? (CA = nA.sendMovement(gA, IA), e.isCurrentlyMoving = CA, CA && A && console.log("[PC] Sending MOVE: (".concat(gA.toFixed(1), ", ").concat(IA.toFixed(1), ")"))) : e.isCurrentlyMoving && (nA.sendMovement(0, 0), e.isCurrentlyMoving = !1, A && console.log("[PC] Sending STOP command (movement became zero).")); case 98: case "end": return t.stop(); } }), _callee, null, [ [ 75, 82 ] ]); })))(); }, draw: function(A, e, t, i) { if (this.isActive() && this.currentPath && e) { if (A.save(), A.beginPath(), A.strokeStyle = "rgba(0, 255, 255, 0.5)", A.lineWidth = 1, this.pathIndex + 1 < this.currentPath.length) { var n = this.currentPath[this.pathIndex + 1], r = t + (n.x - e.x), o = i + (n.y - e.y); if (A.beginPath(), A.moveTo(t, i), A.lineTo(r, o), A.stroke(), this.pathIndex + 2 < this.currentPath.length) { A.beginPath(), A.moveTo(r, o); for (var a = this.pathIndex + 2; a < this.currentPath.length; a++) { var s = this.currentPath[a], g = t + (s.x - e.x), I = i + (s.y - e.y); A.lineTo(g, I); } A.stroke(); } } var c = Math.min(this.pathIndex + 1, this.currentPath.length - 1); if (c >= 0 && c < this.currentPath.length) { var u = this.currentPath[c], C = t + (u.x - e.x), Q = i + (u.y - e.y); A.fillStyle = "rgba(0, 255, 255, 0.8)", A.beginPath(), A.arc(C, Q, 4, 0, 2 * Math.PI), A.fill(); } if (A.restore(), this.currentTargetPelletId) { var E = B.entities[this.currentTargetPelletId]; if (E) { var l = t + (E.x - e.x), h = i + (E.y - e.y); A.beginPath(), A.strokeStyle = "rgba(255, 255, 0, 0.8)", A.lineWidth = 3, A.arc(l, h, 15, 0, 2 * Math.PI), A.stroke(); } } } } }, _A = { leaderboardElement: null, chatElement: null, previousZoneType: null, enabled: !0, elementsFound: !1, init: function() { var A = B.getPlayer(); return this.previousZoneType = A ? q.getZoneTypeAt(A.x, A.y) : "Outside", console.log("[ZoneUIHider] Initialized."), this; }, update: function() { if (this.enabled) { if (!this.elementsFound) { if (this.leaderboardElement = document.getElementById("leaderboard"), this.chatElement = document.getElementById("chat"), !this.leaderboardElement || !this.chatElement) return; this.elementsFound = !0, console.log("[ZoneUIHider] Found #leaderboard and #chat elements."); } var A = B.getPlayer(); if (A) { var e = q.getZoneTypeAt(A.x, A.y); if (e !== this.previousZoneType) { var t = "Danger" === e, i = "Danger" === this.previousZoneType && "Danger" !== e; t ? (this.leaderboardElement && (this.leaderboardElement.style.display = "none"), this.chatElement && (this.chatElement.style.display = "none")) : i && (this.leaderboardElement && (this.leaderboardElement.style.display = "block"), this.chatElement && (this.chatElement.style.display = "block")), this.previousZoneType = e; } } } }, setEnabled: function(A) { this.enabled = A, console.log("[ZoneUIHider] Feature ".concat(A ? "enabled" : "disabled")), A || "Danger" !== this.previousZoneType || (this.leaderboardElement && (this.leaderboardElement.style.display = "block"), this.chatElement && (this.chatElement.style.display = "block"), console.log("[ZoneUIHider] Feature disabled - Restoring UI visibility")); } }; var jA, VA, ZA, WA, XA, zA, $A, Ae, ee, te; const ie = (jA = null, VA = null, ZA = !1, WA = !1, XA = !0, zA = null, $A = "Safe", { init: function() { var A = B.getPlayer(); zA = A ? q.getZoneTypeAt(A.x, A.y) : null, console.log("[SpeedrunTimer] Initialized. Initial zone: ".concat(zA)); }, update: function() { XA && function() { var A = B.getPlayer(); if (A) { var e = q.getZoneTypeAt(A.x, A.y); null === zA && (zA = e, console.log("[SpeedrunTimer] Initial zone type detected: ".concat(e))), WA || zA !== $A || e === $A || (WA = !0, Ae(), console.log("[SpeedrunTimer] Left initial safe zone type ('".concat($A, "'), timer started. New zone: ").concat(e))), e !== zA && (zA = e); } else ZA && !WA && te(); }(); }, startTimer: Ae = function() { ZA || (jA = Date.now(), VA = null, ZA = !0, console.log("[SpeedrunTimer] Timer started.")); }, stopTimer: ee = function() { ZA && (VA = Date.now(), ZA = !1, console.log("[SpeedrunTimer] Timer stopped.")); }, resetTimer: te = function() { jA = null, VA = null, ZA = !1, WA = !1; var A = B.getPlayer(); zA = A ? q.getZoneTypeAt(A.x, A.y) : null, console.log("[SpeedrunTimer] Timer reset. Waiting for player to leave safe zone."); }, getFormattedTime: function() { return function(A) { if (null === A || A < 0) return "00:00.000"; var e = Math.floor(A / 1e3), t = Math.floor(e / 60), i = e % 60, n = Math.floor(A % 1e3); return "".concat(String(t).padStart(2, "0"), ":").concat(String(i).padStart(2, "0"), ".").concat(String(n).padStart(3, "0")); }(null === jA ? 0 : ZA ? Date.now() - jA : null !== VA ? VA - jA : 0); }, isDisplayEnabled: function() { return XA; }, setDisplayEnabled: function(A) { var e = !!A; XA !== e && (XA = e, console.log("[SpeedrunTimer] Display ".concat(XA ? "enabled" : "disabled", ".")), !XA && ZA && (ee(), console.log("[SpeedrunTimer] Timer stopped due to display being disabled."))); }, _isRunning: function() { return ZA; }, _hasLeftInitialSafeZone: function() { return WA; } }), ne = { enabled: !0, init: function() { console.log("[E-Push] Jotunn Indicator initialized"); }, update: function() {}, draw: function(A, e, t, i) { if (this.enabled && e) { var n = B.entities; for (var r in n) { var o = n[r]; if (15 == o.heroType) { var a = t + (o.x - e.x), s = i + (o.y - e.y); A.beginPath(), A.arc(a, s, 170, 0, 2 * Math.PI), A.fillStyle = "rgba(147, 205, 225, 0.17)", A.fill(); } } } } }; var re = !1, oe = { activeGraves: {}, playerGraveLinks: {}, previousPlayerStates: {} }; function logDebug() { if (re) { for (var A, e = arguments.length, t = new Array(e), i = 0; i < e; i++) t[i] = arguments[i]; (A = console).log.apply(A, [ "[Gravestone DEBUG]" ].concat(t)); } } function isPlayer(A) { return !(!A || void 0 === A.entityType) && "PLAYER" === Q.getEntityTypeName(A.entityType); } function isMortuus(A) { return isPlayer(A) && 24 === A.heroType; } function distanceSq(A, e, t, i) { var n = A - t, r = e - i; return n * n + r * r; } function getGraveRadius(A) { if (A && A.effects && Array.isArray(A.effects)) { var e = A.effects.find((function(A) { return A && 20 === A.effectType; })); if (e && "number" == typeof e.radius) return e.radius; } return 400; } function findNearestMortuus(A, e) { for (var t = null, i = 1 / 0, n = 0, r = Object.values(B.entities); n < r.length; n++) { var o = r[n]; if (isMortuus(o)) { var a = distanceSq(o.x, o.y, A, e); a < i && a < 1e4 && (i = a, t = o); } } return t; } function findNearestGrave(A, e) { for (var t = null, i = 1 / 0, n = 0, r = Object.values(oe.activeGraves); n < r.length; n++) { var o = r[n], a = distanceSq(o.x, o.y, A, e); a < i && (i = a, t = o.entityId); } return t ? { graveId: t, distSq: i } : null; } function getPlayerName(A) { var e = B.entities[A]; if (e && e.name) return e.name; var t = B.globalEntities[A]; return t && t.name ? t.name : "Player ".concat(A); } function getAbilitiesHash(A) { var e, t, i, n = ""; return null !== (e = A.abilityOne) && void 0 !== e && e.abilityType && (n += "1:".concat(A.abilityOne.abilityType, ";")), null !== (t = A.abilityTwo) && void 0 !== t && t.abilityType && (n += "2:".concat(A.abilityTwo.abilityType, ";")), null !== (i = A.abilityThree) && void 0 !== i && i.abilityType && (n += "3:".concat(A.abilityThree.abilityType, ";")), n; } const ae = { enabled: !0, name: "Gravestone Tracker", updateSettings: function(A) { if ("boolean" == typeof A.gravestoneTrackerEnabled) { var e = this.enabled; this.enabled = A.gravestoneTrackerEnabled, console.log("[E-Push] Gravestone Tracker ".concat(this.enabled ? "Enabled" : "Disabled", " via settings.")), e && !this.enabled && (oe.activeGraves = {}, oe.playerGraveLinks = {}, oe.previousPlayerStates = {}, console.log("[Gravestone] State cleared.")); } "boolean" == typeof A.gravestoneTrackerDebug && (re = A.gravestoneTrackerDebug, console.log("[E-Push] Gravestone Tracker Debug Logs ".concat(re ? "Enabled" : "Disabled"))); }, update: function() { if (this.enabled && Q.isReady()) { for (var A = B.entities, e = {}, t = new Set(Object.keys(A).map(Number)), i = 0, n = Object.values(A); i < n.length; i++) { var r = n[i], o = r.id; if (161 === r.entityType && !oe.activeGraves[o]) { var a = findNearestMortuus(r.x, r.y); if (a) { var s = getGraveRadius(r), g = getPlayerName(a.id), I = { ownerId: a.id, ownerName: g, x: r.x, y: r.y, radius: s, entityId: o }; oe.activeGraves[o] = I, console.log("[Gravestone] Grave ".concat(o, " created by ").concat(g, " at (").concat(r.x.toFixed(0), ", ").concat(r.y.toFixed(0), ")")), logDebug("Added to activeGraves:", o, I); for (var c = 0, u = Object.values(A); c < u.length; c++) { var C = u[c]; isPlayer(C) && C.deathTimer > 0 && !oe.playerGraveLinks[C.id] && distanceSq(C.x, C.y, r.x, r.y) <= s * s && (oe.playerGraveLinks[C.id] = o, console.log("[Gravestone] Dead player ".concat(getPlayerName(C.id), " linked to new grave ").concat(o)), logDebug("Linked dead player:", C.id, "to grave:", o)); } } } if (isPlayer(r)) { var E, l = r.id, h = getAbilitiesHash(r), f = oe.previousPlayerStates[l] || {}, d = 109 === (null === (E = r.abilityThree) || void 0 === E ? void 0 : E.abilityType), y = !0 === r.shadowedInvulnerability && !0 === r.abilityRemoved && !0 === r.isInvulnerable; if (r.deathTimer > 0 && logDebug("Player ".concat(l, " is dead/dying. Pos: (").concat(r.x.toFixed(0), ", ").concat(r.y.toFixed(0), "). Ability3:"), r.abilityThree), d && !f.hadReviveAbility && !oe.playerGraveLinks[l]) { logDebug("Player ".concat(l, " LINKING CONDITION MET (Gained Ability). HasRevive=").concat(d, ", PrevHadRevive=").concat(f.hadReviveAbility, ", NotLinked=").concat(!oe.playerGraveLinks[l])), logDebug("Player Pos at link attempt: (".concat(r.x.toFixed(0), ", ").concat(r.y.toFixed(0), ")")); var w = findNearestGrave(r.x, r.y); if (logDebug("Nearest grave search result:", w), w && oe.activeGraves[w.graveId]) { var v = oe.activeGraves[w.graveId]; logDebug("Nearest active grave details: ID=".concat(w.graveId, ", Pos=(").concat(v.x.toFixed(0), ", ").concat(v.y.toFixed(0), "), Radius=").concat(v.radius)); var p = w.distSq, D = v.radius * v.radius; logDebug("Checking link distance: DistSq=".concat(p.toFixed(0), ", RadiusSq=").concat(D.toFixed(0))), p <= D ? (oe.playerGraveLinks[l] = w.graveId, console.log("[Gravestone] Player ".concat(getPlayerName(l), " linked to grave ").concat(w.graveId, " (Owner: ").concat(v.ownerName, ")")), logDebug("Linked player:", l, "to grave:", w.graveId)) : logDebug("Player ".concat(getPlayerName(l), " got revive ability but nearest grave ").concat(w.graveId, " is too far.")); } else logDebug("Player ".concat(getPlayerName(l), " got revive ability but no nearby active grave found.")); } if (oe.playerGraveLinks[l] && f.hadReviveAbility && !d) { var b = oe.playerGraveLinks[l]; if (logDebug("Player ".concat(l, " lost revive ability. Checking if it was a revive at grave ").concat(b, ".")), oe.activeGraves[b]) { var k = oe.activeGraves[b], S = distanceSq(r.x, r.y, k.x, k.y), m = !0 === r.isInvulnerable; logDebug("Revive check conditions for ".concat(l, ": DistSq=").concat(S.toFixed(0), " (Threshold=").concat(5625, "), IsInvulnerable=").concat(m)), S <= 5625 && m ? (console.log("[Gravestone] ".concat(getPlayerName(l), " used ").concat(k.ownerName, "'s gravestone (").concat(b, ")")), sendClientChat("".concat(getPlayerName(l), " used ").concat(k.ownerName, "'s gravestone!")), logDebug("Revive confirmed for player:", l, "at grave:", b, ". Unlinking player."), delete oe.playerGraveLinks[l], e[l] = { abilitiesHash: h, wasReviving: !0, hadReviveAbility: !1 }, logDebug("Post-revive state prepared for player:", l, e[l])) : (console.log("[Gravestone] Player ".concat(getPlayerName(l), " lost revive ability (not via revive), unlinking from grave ").concat(b, ".")), logDebug("Unlinking player ".concat(l, " due to ability loss without meeting revive criteria (DistSq: ").concat(S.toFixed(0), ", Invuln: ").concat(m, ").")), delete oe.playerGraveLinks[l], e[l] ? (e[l].hadReviveAbility = !1, e[l].wasReviving = y) : e[l] = { abilitiesHash: h, wasReviving: y, hadReviveAbility: !1 }); } else logDebug("Player ".concat(getPlayerName(l), " lost ability for non-existent grave ").concat(b, ". Unlinking.")), delete oe.playerGraveLinks[l], e[l] ? (e[l].hadReviveAbility = !1, e[l].wasReviving = y) : e[l] = { abilitiesHash: h, wasReviving: y, hadReviveAbility: !1 }; } e[l] || (e[l] = { abilitiesHash: h, wasReviving: y, hadReviveAbility: d }); } } for (var N in oe.activeGraves) { var G = parseInt(N, 10); if (!t.has(G)) { logDebug("Grave ".concat(G, " is in our state but not in current entities. Removing.")); var M = oe.activeGraves[G]; for (var J in console.log("[Gravestone] Grave ".concat(G, " (Owner: ").concat((null == M ? void 0 : M.ownerName) || "Unknown", ") disappeared. Assuming removed.")), delete oe.activeGraves[G], logDebug("Deleted grave ".concat(G, " from activeGraves. Remaining:"), Object.keys(oe.activeGraves)), oe.playerGraveLinks) if (oe.playerGraveLinks[J] === G) { var R = parseInt(J, 10); delete oe.playerGraveLinks[J], delete oe.previousPlayerStates[R], console.log("[Gravestone] Player ".concat(getPlayerName(R), " unlinked from removed grave ").concat(G)), logDebug("Unlinked player:", R, "from removed grave:", G); } } } for (var U in oe.previousPlayerStates = e, oe.playerGraveLinks) { var L = parseInt(U, 10); t.has(L) || (logDebug("Cleaning up stale link for non-existent player ".concat(L)), delete oe.playerGraveLinks[U], delete oe.previousPlayerStates[L]); } } }, draw: function(A, e, t, i) { if (this.enabled && e) { var n = e.id, r = B.entities[n]; if (r) { if (A.save(), isMortuus(r)) { var o = Object.values(oe.activeGraves).some((function(A) { return A.ownerId === n; })) ? "rgba(144, 238, 144, 0.6)" : "rgba(255, 99, 71, 0.6)", a = (R.playerRadius || 15) + 8; A.fillStyle = o, A.beginPath(), A.arc(t, i + a, 5, 0, 2 * Math.PI), A.fill(); } A.strokeStyle = "rgba(0, 100, 0, 0.7)", A.lineWidth = 2, A.fillStyle = "rgba(0, 100, 0, 0.5)"; for (var s = 0, g = Object.values(B.entities); s < g.length; s++) { var I = g[s]; if (isPlayer(I)) { var c = oe.playerGraveLinks[I.id]; if (c && oe.activeGraves[c]) { var u = oe.activeGraves[c], C = t + (I.x - r.x), Q = i + (I.y - r.y), E = t + (u.x - r.x), l = i + (u.y - r.y); A.beginPath(), A.moveTo(C, Q), A.lineTo(E, l), A.stroke(), A.beginPath(), A.arc(E, l, 5, 0, 2 * Math.PI), A.fill(); } } } A.restore(); } } } }; function renderer_arrayLikeToArray(A, e) { (null == e || e > A.length) && (e = A.length); for (var t = 0, i = Array(e); t < e; t++) i[t] = A[t]; return i; } var se = { canvas: null, ctx: null, isDrawing: !1, showLabels: !1, showEnemyHitbox: !0, showFields: !1, showVelocities: !1, showStrengthLine: !1, showAreaBorders: !0, showZoneIndicator: !0, init: function(A) { return this.canvas = A, A && (this.ctx = A.getContext("2d"), console.log("[E-Push] Renderer initialized")), this; }, getCanvas: function() { return this.canvas; }, startDrawing: function() { this.isDrawing || (this.isDrawing = !0, this.drawFrame(), console.log("[E-Push] Started drawing entities")); }, stopDrawing: function() { this.isDrawing = !1, console.log("[E-Push] Stopped drawing entities"); }, toggleLabels: function() { this.showLabels = !this.showLabels, console.log("[E-Push] Entity labels ".concat(this.showLabels ? "enabled" : "disabled")); }, toggleEnemyHitbox: function() { this.showEnemyHitbox = !this.showEnemyHitbox, console.log("[E-Push] Collision prediction ".concat(this.showEnemyHitbox ? "enabled" : "disabled")); }, toggleFieldDots: function() { return this.showFields = !this.showFields, console.log("[E-Push] Field dots visualization ".concat(this.showFields ? "enabled" : "disabled")), this.showFields; }, toggleStrengthLine: function() { return this.showStrengthLine = !this.showStrengthLine, console.log("[E-Push] Strength line visualization ".concat(this.showStrengthLine ? "enabled" : "disabled")), this.showStrengthLine; }, toggleVelocityVectors: function() { this.showVelocities = !this.showVelocities, console.log("[E-Push] Velocity vectors ".concat(this.showVelocities ? "enabled" : "disabled")); }, drawEllipse: function(A, e, t, i, n) { this.ctx.save(), this.ctx.translate(A, e), this.ctx.rotate(n), this.ctx.scale(1, i / t), this.ctx.beginPath(), this.ctx.arc(0, 0, t, 0, 2 * Math.PI), this.ctx.restore(); }, drawArrowhead: function(A, e, t, i) { this.ctx.save(), this.ctx.translate(A, e), this.ctx.rotate(t), this.ctx.beginPath(), this.ctx.moveTo(-i, -i / 2), this.ctx.lineTo(0, 0), this.ctx.lineTo(-i, i / 2), this.ctx.strokeStyle = "rgba(255, 255, 0, 0.8)", this.ctx.stroke(), this.ctx.restore(); }, drawFrame: function() { var A = this; if (this.isDrawing && (this.ctx.clearRect(0, 0, this.canvas.width, this.canvas.height), requestAnimationFrame((function() { return A.drawFrame(); })), OA.update(), qA.update(), PA.update(), _A.update(), ie.update(), ae.update(), this.canvas && this.ctx && B.selfId && B.entities[B.selfId])) { var e = B.getPlayer(), t = e.x, i = e.y, n = this.canvas.width, r = this.canvas.height, o = n / 2, a = r / 2; if (this.ctx.save(), this.showAreaBorders) { var s = q.getAreaBounds(), g = q.getDangerZones(), I = q.getSafeZones(), c = q.getAreaTeleportZones(), C = q.getZoneTeleportZones(); if (s) { this.ctx.save(), this.ctx.lineWidth = 2; var E = o + (s.x - t), l = a + (s.y - i); this.ctx.strokeStyle = "rgba(255, 0, 0, 0.3)", this.ctx.strokeRect(E, l, s.width, s.height), this.ctx.strokeStyle = "rgba(255, 0, 0, 0.8)", g.forEach((function(e) { var n = o + (e.x - t), r = a + (e.y - i); A.ctx.strokeRect(n, r, e.width, e.height); })), this.ctx.strokeStyle = "rgba(0, 255, 0, 0.8)", I.forEach((function(e) { var n = o + (e.x - t), r = a + (e.y - i); A.ctx.strokeRect(n, r, e.width, e.height); })), this.ctx.strokeStyle = "rgba(255, 255, 0, 0.8)", c.forEach((function(e) { var n = o + (e.x - t), r = a + (e.y - i); A.ctx.strokeRect(n, r, e.width, e.height); })), this.ctx.strokeStyle = "rgba(0, 0, 255, 0.8)", C.forEach((function(e) { var n = o + (e.x - t), r = a + (e.y - i); A.ctx.strokeRect(n, r, e.width, e.height); })), this.ctx.restore(); } } var h = q.getZoneTypeAt(t, i); if (this.showZoneIndicator && (this.ctx.save(), this.ctx.fillStyle = "white", this.ctx.font = "14px Arial", this.ctx.textAlign = "left", this.ctx.textBaseline = "top", this.ctx.fillText("Current Zone: ".concat(h), 10, 10), this.ctx.restore()), this.showFields) { var f = 150; u.getTrackedEntities(Q.getEntityTypeName.bind(Q)).forEach((function(e) { var s = e.x - t, g = e.y - i, I = o + s, c = a + g; if (Math.abs(s) < n / 2 + f && Math.abs(g) < r / 2 + f) for (var u = I - f; u <= I + f; u += 20) for (var C = c - f; C <= c + f; C += 20) { var Q = t + (u - o), B = i + (C - a), E = R.calculateFieldStrengthAtPoint(e, Q, B); if (E > 1) { var l = Math.min(E / 15e3, 1), h = Math.floor(255 * l), d = Math.floor(255 * (1 - l) * .5), y = .3 + .5 * l; A.ctx.fillStyle = "rgba(".concat(h, ", ").concat(d, ", ").concat(0, ", ").concat(y, ")"), A.ctx.beginPath(), A.ctx.arc(u, C, 3, 0, 2 * Math.PI), A.ctx.fill(); } } })); } var d = B.mouseScreenX, y = B.mouseScreenY, w = t + (d - o), v = i + (y - a); if (B.updateCalculatedMouseGameCoords(w, v), this.showEnemyHitbox && Object.values(B.entities).forEach((function(e) { if (0 !== e.entityType && !e.isHarmless && 0 != nA.isEntityTypeDangerous(e.entityType)) { var n = e.x - t, r = e.y - i; if (Math.sqrt(n * n + r * r) <= 300) { var s = o + n, g = a + r, I = u.getEntityRadius(e, Q.getEntityTypeName.bind(Q)), c = R.playerRadius + I + R.safetyMargin; A.ctx.beginPath(), A.ctx.fillStyle = "rgba(255, 0, 0, 0.1)", A.ctx.strokeStyle = "rgba(255, 0, 0, 0.5)", A.ctx.arc(s, g, c, 0, 2 * Math.PI), A.ctx.fill(), A.ctx.stroke(), A.ctx.beginPath(), A.ctx.strokeStyle = "rgba(255, 0, 0, 0.8)", A.ctx.arc(s, g, I, 0, 2 * Math.PI), A.ctx.stroke(); var C = R.deadzoneDistance; if (C > 0) { var B = I + C; A.ctx.beginPath(), A.ctx.fillStyle = "rgba(0, 0, 255, 0.1)", A.ctx.strokeStyle = "rgba(0, 0, 255, 0.4)", A.ctx.arc(s, g, B, 0, 2 * Math.PI), A.ctx.fill(), A.ctx.stroke(); } } } })), Object.values(B.entities).forEach((function(e) { if (0 != nA.isEntityTypeDangerous(e.entityType)) { var n = e.x - t, r = e.y - i; if (Math.sqrt(n * n + r * r) <= 1e3) { var s = o + n, g = a + r; if (A.ctx.beginPath(), A.ctx.fillStyle = e.isHarmless ? "rgba(0, 255, 0, 0.8)" : "rgba(255, 0, 0, 0.8)", A.ctx.arc(s, g, 5, 0, 2 * Math.PI), A.ctx.fill(), A.showVelocities && R.velocities && R.velocities[e.id]) { var I = R.velocities[e.id]; if (Math.sqrt(I.x * I.x + I.y * I.y) > .1) { A.ctx.beginPath(), A.ctx.strokeStyle = "rgba(255, 255, 0, 0.8)", A.ctx.lineWidth = 2, A.ctx.moveTo(s, g), A.ctx.lineTo(s + 5 * I.x, g + 5 * I.y), A.ctx.stroke(); var c = Math.atan2(I.y, I.x); A.drawArrowhead(s + 5 * I.x, g + 5 * I.y, c, 8); } } if (A.showLabels) { var C = u.getEntityRadius(e, Q.getEntityTypeName.bind(Q)), B = C ? " (r: ".concat(C.toFixed(0), ")") : "", E = Q.getEntityTypeName(e.entityType), l = "".concat(E).concat(B); A.ctx.fillStyle = "white", A.ctx.strokeStyle = "black", A.ctx.lineWidth = 2, A.ctx.font = "10px Arial", A.ctx.textAlign = "center", A.ctx.strokeText(l, s, g - 10), A.ctx.fillText(l, s, g - 10); } } } })), this.showStrengthLine && R.lastCalculatedForce) { var p = R.lastCalculatedForce, D = Math.sqrt(p.x * p.x + p.y * p.y); if (D > .1) { this.ctx.beginPath(), this.ctx.strokeStyle = "rgba(0, 200, 255, 0.8)", this.ctx.lineWidth = 3, this.ctx.moveTo(o, a); var b = 50 / Math.max(D, 1); this.ctx.lineTo(o + p.x * b, a + p.y * b), this.ctx.stroke(), this.ctx.fillStyle = "white", this.ctx.font = "12px Arial", this.ctx.textAlign = "center", this.ctx.fillText("Force: ".concat(D.toFixed(0)), o + p.x * b / 2, a + p.y * b / 2 - 5); } } x.draw(this.ctx, e, o, a), O.draw(this.ctx, e, o, a), aA.draw(this.ctx, e, o, a), sA.draw(this.ctx, e, o, a), OA.draw(this.ctx), qA.draw(this.ctx, e, o, a), ne.draw(this.ctx, e, o, a), ae.draw(this.ctx, e, o, a), PA.draw(this.ctx, e, o, a); var k = getCurrentPath(); if (k && k.length >= 1) { this.ctx.beginPath(), this.ctx.strokeStyle = "rgba(0, 255, 255, 0.7)", this.ctx.lineWidth = 2, this.ctx.moveTo(o, a); var S, m = function(A, e) { var t = "undefined" != typeof Symbol && A[Symbol.iterator] || A["@@iterator"]; if (!t) { if (Array.isArray(A) || (t = function(A, e) { if (A) { if ("string" == typeof A) return renderer_arrayLikeToArray(A, e); var t = {}.toString.call(A).slice(8, -1); return "Object" === t && A.constructor && (t = A.constructor.name), "Map" === t || "Set" === t ? Array.from(A) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? renderer_arrayLikeToArray(A, e) : void 0; } }(A)) || e && A && "number" == typeof A.length) { t && (A = t); var i = 0, F = function() {}; return { s: F, n: function() { return i >= A.length ? { done: !0 } : { done: !1, value: A[i++] }; }, e: function(A) { throw A; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var n, r = !0, o = !1; return { s: function() { t = t.call(A); }, n: function() { var A = t.next(); return r = A.done, A; }, e: function(A) { o = !0, n = A; }, f: function() { try { r || null == t.return || t.return(); } finally { if (o) throw n; } } }; }(k); try { for (m.s(); !(S = m.n()).done; ) { var N = S.value, G = o + (N.x - t), M = a + (N.y - i); this.ctx.lineTo(G, M); } } catch (A) { m.e(A); } finally { m.f(); } this.ctx.stroke(); } if (K.enabled && K.shouldBlockResurrection()) { var J = R.playerRadius || 15; this.ctx.fillStyle = "rgba(255, 0, 0, 1)", this.ctx.beginPath(), this.ctx.arc(o, a, J, 0, 2 * Math.PI), this.ctx.fill(); } if (ie.isDisplayEnabled()) { var U = ie.getFormattedTime(); this.ctx.save(), this.ctx.fillStyle = "white", this.ctx.font = "bold 18px Arial", this.ctx.textAlign = "right", this.ctx.textBaseline = "top", this.ctx.shadowColor = "black", this.ctx.shadowBlur = 3, this.ctx.shadowOffsetX = 1, this.ctx.shadowOffsetY = 1, this.ctx.fillText(U, n - 10, 10), this.ctx.restore(); } j.render(this.ctx, this, o, a), this.ctx.restore(); } } }; const ge = se; var cleanupOverlayListeners = function(A) { A._resizeObserver && (A._resizeObserver.disconnect(), delete A._resizeObserver, console.log("[E-Push] Disconnected ResizeObserver for #".concat(A.id))), A._windowResizeListener && (window.removeEventListener("resize", A._windowResizeListener), delete A._windowResizeListener, console.log("[E-Push] Removed window resize listener for #".concat(A.id))), A._windowScrollListener && (window.removeEventListener("scroll", A._windowScrollListener), delete A._windowScrollListener, console.log("[E-Push] Removed window scroll listener for #".concat(A.id))); }; function keybinder_createForOfIteratorHelper(A, e) { var t = "undefined" != typeof Symbol && A[Symbol.iterator] || A["@@iterator"]; if (!t) { if (Array.isArray(A) || (t = function(A, e) { if (A) { if ("string" == typeof A) return keybinder_arrayLikeToArray(A, e); var t = {}.toString.call(A).slice(8, -1); return "Object" === t && A.constructor && (t = A.constructor.name), "Map" === t || "Set" === t ? Array.from(A) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? keybinder_arrayLikeToArray(A, e) : void 0; } }(A)) || e && A && "number" == typeof A.length) { t && (A = t); var i = 0, F = function() {}; return { s: F, n: function() { return i >= A.length ? { done: !0 } : { done: !1, value: A[i++] }; }, e: function(A) { throw A; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var n, r = !0, o = !1; return { s: function() { t = t.call(A); }, n: function() { var A = t.next(); return r = A.done, A; }, e: function(A) { o = !0, n = A; }, f: function() { try { r || null == t.return || t.return(); } finally { if (o) throw n; } } }; } function keybinder_arrayLikeToArray(A, e) { (null == e || e > A.length) && (e = A.length); for (var t = 0, i = Array(e); t < e; t++) i[t] = A[t]; return i; } function keybinder_ownKeys(A, e) { var t = Object.keys(A); if (Object.getOwnPropertySymbols) { var i = Object.getOwnPropertySymbols(A); e && (i = i.filter((function(e) { return Object.getOwnPropertyDescriptor(A, e).enumerable; }))), t.push.apply(t, i); } return t; } function keybinder_objectSpread(A) { for (var e = 1; e < arguments.length; e++) { var t = null != arguments[e] ? arguments[e] : {}; e % 2 ? keybinder_ownKeys(Object(t), !0).forEach((function(e) { _defineProperty(A, e, t[e]); })) : Object.getOwnPropertyDescriptors ? Object.defineProperties(A, Object.getOwnPropertyDescriptors(t)) : keybinder_ownKeys(Object(t)).forEach((function(e) { Object.defineProperty(A, e, Object.getOwnPropertyDescriptor(t, e)); })); } return A; } var Ie = function() { return (0, n.A)((function Keybinder(A) { (0, i.A)(this, Keybinder), this.uiLibrary = A, this.bindings = {}, this.reverseBindings = {}, this.isListeningForKey = null, this.currentBindingElement = null, this.localStorageKey = "ePushKeybindings", this.isEnabled = !1, this.fastUpgradeModule = null, this.lastKeyboardActivityTime = 0, this.idleAnimationsModule = null, this.lastActivityTime = Date.now(), this.isStickyKeysEnabled = !1, this.stickyKeysSet = new Set([ "KeyA", "KeyD", "ArrowLeft", "ArrowRight" ]), this.stickyKeysState = {}, this.handleEventCapture = this.handleEventCapture.bind(this), this.handleKeyDown = this.handleKeyDown.bind(this), this.handleKeyUp = this.handleKeyUp.bind(this), this.handleMouseDown = this.handleMouseDown.bind(this), this.handleMouseUp = this.handleMouseUp.bind(this), this.handleContextMenu = this.handleContextMenu.bind(this), this.loadBindings(), this.initializeStickyKeysState(); }), [ { key: "start", value: function() { this.isEnabled || (console.log("[E-Push Keybinder] Starting..."), window.addEventListener("keydown", this.handleEventCapture, { capture: !0 }), window.addEventListener("keyup", this.handleEventCapture, { capture: !0 }), window.addEventListener("mousedown", this.handleEventCapture, { capture: !0 }), window.addEventListener("mouseup", this.handleEventCapture, { capture: !0 }), window.addEventListener("contextmenu", this.handleEventCapture, { capture: !0 }), this.isEnabled = !0, console.log("[E-Push Keybinder] Started.")); } }, { key: "stop", value: function() { this.isEnabled && (console.log("[E-Push Keybinder] Stopping..."), window.removeEventListener("keydown", this.handleEventCapture, { capture: !0 }), window.removeEventListener("keyup", this.handleEventCapture, { capture: !0 }), window.removeEventListener("mousedown", this.handleEventCapture, { capture: !0 }), window.removeEventListener("mouseup", this.handleEventCapture, { capture: !0 }), window.removeEventListener("contextmenu", this.handleEventCapture, { capture: !0 }), this.isEnabled = !1, console.log("[E-Push Keybinder] Stopped.")); } }, { key: "handleEventCapture", value: function(A) { if (this.lastActivityTime = Date.now(), this.isEnabled && !A._isSynthesized) { var e = A.target; if ("INPUT" !== e.tagName && "TEXTAREA" !== e.tagName && !e.isContentEditable) if (this.isListeningForKey && this.currentBindingElement) this.captureBindingKey(A); else switch (A.type) { case "keydown": this.handleKeyDown(A); break; case "keyup": this.handleKeyUp(A); break; case "mousedown": this.handleMouseDown(A); break; case "mouseup": this.handleMouseUp(A); break; case "contextmenu": this.handleContextMenu(A); } } } }, { key: "getEventIdentifier", value: function(A) { return A instanceof KeyboardEvent ? A.code : A instanceof MouseEvent ? "contextmenu" === A.type ? "MouseButton2" : "MouseButton".concat(A.button) : null; } }, { key: "handleKeyDown", value: function(A) { var e, t = this.getEventIdentifier(A); if (t) if (this.lastKeyboardActivityTime = Date.now(), this.idleAnimationsModule && this.idleAnimationsModule.resetIdleTimer(), null !== (e = this.fastUpgradeModule) && void 0 !== e && e.enabled && this.fastUpgradeModule.handleKeyDown(A, t), this.isStickyKeysEnabled && this.stickyKeysSet.has(t)) { A.preventDefault(), A.stopPropagation(); var i = this.bindings[t] || t, n = this.stickyKeysState[t] || !1; if (this.stickyKeysState[t] = !n, this.stickyKeysState[t]) { console.log("[Keybinder Sticky] Activating ".concat(t, " -> ").concat(i)); var r = i.startsWith("MouseButton") ? "mousedown" : "keydown"; this.synthesizeEvent(i, r, A); } else { console.log("[Keybinder Sticky] Deactivating ".concat(t, " -> ").concat(i)); var o = i.startsWith("MouseButton") ? "mouseup" : "keyup"; this.synthesizeEvent(i, o, A); } } else { var a = this.bindings[t]; if (a) { console.log("[Keybinder] Rebinding KeyDown: ".concat(t, " -> ").concat(a)), A.preventDefault(), A.stopPropagation(); var s = a.startsWith("MouseButton") ? "mousedown" : "keydown"; this.synthesizeEvent(a, s, A); } } } }, { key: "handleKeyUp", value: function(A) { var e, t = this.getEventIdentifier(A); if (t) { if (this.lastKeyboardActivityTime = Date.now(), this.idleAnimationsModule && this.idleAnimationsModule.resetIdleTimer(), null !== (e = this.fastUpgradeModule) && void 0 !== e && e.enabled && this.fastUpgradeModule.handleKeyUp(A, t), this.isStickyKeysEnabled && this.stickyKeysSet.has(t)) return A.preventDefault(), void A.stopPropagation(); var i = this.bindings[t]; if (i) { console.log("[Keybinder] Rebinding KeyUp: ".concat(t, " -> ").concat(i)), A.preventDefault(), A.stopPropagation(); var n = i.startsWith("MouseButton") ? "mouseup" : "keyup"; this.synthesizeEvent(i, n, A); } } } }, { key: "handleMouseDown", value: function(A) { var e = this.getEventIdentifier(A); if (e) { this.lastKeyboardActivityTime = Date.now(), this.idleAnimationsModule && this.idleAnimationsModule.resetIdleTimer(); var t = this.bindings[e]; if (t) { console.log("[Keybinder] Rebinding MouseDown: ".concat(e, " -> ").concat(t)), "MouseButton0" !== e ? (A.preventDefault(), A.stopPropagation()) : console.log("[Keybinder] Allowing LMB passthrough for UI."); var i = t.startsWith("MouseButton") ? "mousedown" : "keydown"; this.synthesizeEvent(t, i, A); } } } }, { key: "handleMouseUp", value: function(A) { var e = this.getEventIdentifier(A); if (e) { this.lastKeyboardActivityTime = Date.now(), this.idleAnimationsModule && this.idleAnimationsModule.resetIdleTimer(); var t = this.bindings[e]; if (t) { console.log("[Keybinder] Rebinding MouseUp: ".concat(e, " -> ").concat(t)), "MouseButton0" !== e && (A.preventDefault(), A.stopPropagation()); var i = t.startsWith("MouseButton") ? "mouseup" : "keyup"; this.synthesizeEvent(t, i, A); } } } }, { key: "handleContextMenu", value: function(A) { var e = "MouseButton2", t = this.bindings[e]; if (t) { console.log("[Keybinder] Rebinding ContextMenu: ".concat(e, " -> ").concat(t)), A.preventDefault(), A.stopPropagation(); var i = t.startsWith("MouseButton") ? "mousedown" : "keydown"; this.synthesizeEvent(t, i, A); } } }, { key: "synthesizeEvent", value: function(A, e, t) { var i, n = { bubbles: !0, cancelable: !0, altKey: t.altKey, ctrlKey: t.ctrlKey, metaKey: t.metaKey, shiftKey: t.shiftKey }; if (A.startsWith("MouseButton")) { var r = parseInt(A.replace("MouseButton", ""), 10); i = new MouseEvent(e, keybinder_objectSpread(keybinder_objectSpread({}, n), {}, _defineProperty(_defineProperty(_defineProperty(_defineProperty({ button: r, buttons: 1 << r, clientX: t.clientX, clientY: t.clientY, screenX: t.screenX }, "screenX", t.screenX), "screenY", t.screenY), "view", window), "which", r + 1))); } else { var o = this.codeToKey(A), a = this.codeToKeyCode(A); i = new KeyboardEvent(e, keybinder_objectSpread(keybinder_objectSpread({}, n), {}, { code: A, key: o, keyCode: a, which: a, charCode: 0, view: window })); } i._isSynthesized = !0, document.dispatchEvent(i); } }, { key: "codeToKey", value: function(A) { if (A.startsWith("Key")) return A.substring(3); if (A.startsWith("Digit")) return A.substring(5); if (A.startsWith("Arrow")) return A; switch (A) { case "Space": return " "; case "Enter": return "Enter"; case "Escape": return "Escape"; case "ShiftLeft": case "ShiftRight": return "Shift"; case "ControlLeft": case "ControlRight": return "Control"; case "AltLeft": case "AltRight": return "Alt"; default: return A; } } }, { key: "codeToKeyCode", value: function(A) { if (A.startsWith("Key")) return A.charCodeAt(3); if (A.startsWith("Digit")) return A.charCodeAt(5); switch (A) { case "Space": return 32; case "Enter": return 13; case "Escape": return 27; case "Tab": return 9; case "Backspace": return 8; case "ShiftLeft": case "ShiftRight": return 16; case "ControlLeft": case "ControlRight": return 17; case "AltLeft": case "AltRight": return 18; case "MetaLeft": case "MetaRight": return 91; case "ArrowUp": return 38; case "ArrowDown": return 40; case "ArrowLeft": return 37; case "ArrowRight": return 39; case "Delete": return 46; case "Home": return 36; case "End": return 35; case "PageUp": return 33; case "PageDown": return 34; case "Insert": return 45; case "F1": return 112; case "F2": return 113; case "F3": return 114; case "F4": return 115; case "F5": return 116; case "F6": return 117; case "F7": return 118; case "F8": return 119; case "F9": return 120; case "F10": return 121; case "F11": return 122; case "F12": return 123; case "Numpad0": return 96; case "Numpad1": return 97; case "Numpad2": return 98; case "Numpad3": return 99; case "Numpad4": return 100; case "Numpad5": return 101; case "Numpad6": return 102; case "Numpad7": return 103; case "Numpad8": return 104; case "Numpad9": return 105; case "NumpadMultiply": return 106; case "NumpadAdd": return 107; case "NumpadSubtract": return 109; case "NumpadDecimal": return 110; case "NumpadDivide": return 111; case "Backquote": return 192; case "Minus": return 189; case "Equal": return 187; case "BracketLeft": return 219; case "BracketRight": return 221; case "Backslash": return 220; case "Semicolon": return 186; case "Quote": return 222; case "Comma": return 188; case "Period": return 190; case "Slash": return 191; default: return 0; } } }, { key: "addBinding", value: function(A, e) { A && e ? (console.log("[Keybinder] Adding binding: ".concat(A, " -> ").concat(e)), this.bindings[A] = e, this.updateReverseBindings(), this.saveBindings(), this.updateUI()) : console.error("[Keybinder] Invalid identifiers for addBinding:", A, e); } }, { key: "removeBinding", value: function(A) { this.bindings[A] && (console.log("[Keybinder] Removing binding for: ".concat(A)), delete this.bindings[A], this.updateReverseBindings(), this.saveBindings(), this.updateUI()); } }, { key: "updateReverseBindings", value: function() { for (var A in this.reverseBindings = {}, this.bindings) { var e = this.bindings[A]; this.reverseBindings[e] || (this.reverseBindings[e] = []), this.reverseBindings[e].push(A); } } }, { key: "saveBindings", value: function() { try { localStorage.setItem(this.localStorageKey, JSON.stringify(this.bindings)), console.log("[Keybinder] Bindings saved."); } catch (A) { console.error("[Keybinder] Error saving bindings to localStorage:", A); } } }, { key: "loadBindings", value: function() { try { var A = localStorage.getItem(this.localStorageKey); A ? (this.bindings = JSON.parse(A), this.updateReverseBindings(), console.log("[Keybinder] Bindings loaded:", this.bindings)) : (this.bindings = {}, this.reverseBindings = {}); } catch (A) { console.error("[Keybinder] Error loading bindings from localStorage:", A), this.bindings = {}, this.reverseBindings = {}; } } }, { key: "initializeStickyKeysState", value: function() { this.stickyKeysState = {}; var A, e = keybinder_createForOfIteratorHelper(this.stickyKeysSet); try { for (e.s(); !(A = e.n()).done; ) { var t = A.value; this.stickyKeysState[t] = !1; } } catch (A) { e.e(A); } finally { e.f(); } } }, { key: "setStickyKeysEnabled", value: function(A) { this.isStickyKeysEnabled = !!A, this.isStickyKeysEnabled || this.resetHeldStickyKeys(), console.log("[Keybinder] Sticky Keys feature set to: ".concat(this.isStickyKeysEnabled)); } }, { key: "resetHeldStickyKeys", value: function() { console.log("[Keybinder Sticky] Resetting held sticky keys..."); var A, e = keybinder_createForOfIteratorHelper(this.stickyKeysSet); try { for (e.s(); !(A = e.n()).done; ) { var t = A.value; if (this.stickyKeysState[t]) { console.log("[Keybinder Sticky] Releasing held key: ".concat(t)); var i = this.bindings[t] || t, n = i.startsWith("MouseButton") ? "mouseup" : "keyup"; this.synthesizeEvent(i, n, { altKey: !1, ctrlKey: !1, metaKey: !1, shiftKey: !1 }), this.stickyKeysState[t] = !1; } } } catch (A) { e.e(A); } finally { e.f(); } } }, { key: "listenForBindingKey", value: function(A, e) { console.log("[Keybinder] Listening for ".concat(A, " binding key...")), this.isListeningForKey = A, this.currentBindingElement = e, this.currentBindingElement && (this.currentBindingElement.textContent = "Press key/button...", this.currentBindingElement.style.borderColor = "yellow"); } }, { key: "captureBindingKey", value: function(A) { A.preventDefault(), A.stopPropagation(); var e = this.getEventIdentifier(A); e && (console.log("[Keybinder] Captured ".concat(this.isListeningForKey, " key: ").concat(e)), this.currentBindingElement && (this.currentBindingElement.textContent = this.formatIdentifierForDisplay(e), this.currentBindingElement.dataset.identifier = e, this.currentBindingElement.style.borderColor = ""), this.isListeningForKey = null, this.currentBindingElement = null); } }, { key: "formatIdentifierForDisplay", value: function(A) { if (!A) return "None"; if (A.startsWith("Key")) return A.substring(3); if (A.startsWith("Digit")) return A.substring(5); if (A.startsWith("Numpad")) return "Num ".concat(A.substring(6)); switch (A) { case "MouseButton0": return "LMB"; case "MouseButton1": return "MMB"; case "MouseButton2": return "RMB"; case "ArrowUp": return "Up"; case "ArrowDown": return "Down"; case "ArrowLeft": return "Left"; case "ArrowRight": return "Right"; case "ShiftLeft": case "ShiftRight": return "Shift"; case "ControlLeft": case "ControlRight": return "Ctrl"; case "AltLeft": case "AltRight": return "Alt"; case "MetaLeft": case "MetaRight": return "Meta"; case "Escape": return "Esc"; case "Backquote": return "`"; case "Minus": return "-"; case "Equal": return "="; case "BracketLeft": return "["; case "BracketRight": return "]"; case "Backslash": return "\\"; case "Semicolon": return ";"; case "Quote": return "'"; case "Comma": return ","; case "Period": return "."; case "Slash": return "/"; default: return A; } } }, { key: "resetBindings", value: function() { console.log("[Keybinder] Resetting all bindings."), this.bindings = {}, this.reverseBindings = {}, this.saveBindings(), this.updateUI(); } }, { key: "updateUI", value: function() { this.uiLibrary && "function" == typeof this.uiLibrary.rebuildKeybindingsUI ? this.uiLibrary.rebuildKeybindingsUI(this) : console.warn("[Keybinder] uiLibrary or rebuildKeybindingsUI not available for UI update."); } }, { key: "getLastKeyboardActivityTime", value: function() { return this.lastKeyboardActivityTime; } }, { key: "getLastActivityTime", value: function() { return this.lastActivityTime; } }, { key: "registerIdleAnimationsModule", value: function(A) { this.idleAnimationsModule = A, console.log("[Keybinder] Registered IdleAnimations module."); } }, { key: "registerFastUpgradeModule", value: function(A) { this.fastUpgradeModule = A, console.log("[Keybinder] Registered FastUpgrade module."); } } ]); }(); const ce = Ie; var ue = function() { return (0, n.A)((function AbilitySpammer() { (0, i.A)(this, AbilitySpammer), this.keybinder = null, this.abilityKeys = [ "KeyZ", "KeyX", "KeyC" ], this.isEnabled = { z: !1, x: !1, c: !1 }, this.frequencyMs = { z: 2e3, x: 2e3, c: 2e3 }, this.timers = { z: null, x: null, c: null }, this.keyPressDurationMs = 100, this._spamAbility = this._spamAbility.bind(this); }), [ { key: "init", value: function(A) { A && "function" == typeof A.synthesizeEvent ? (this.keybinder = A, console.log("[AbilitySpammer] Initialized.")) : console.error("[AbilitySpammer] Invalid Keybinder instance provided."); } }, { key: "updateSettings", value: function(A) { var e = this; this.keybinder ? (console.log("[AbilitySpammer] Received settings update:", A), [ "z", "x", "c" ].forEach((function(t, i) { var n = !1, r = e.abilityKeys[i], o = "spamAbilityFrequency".concat(t.toUpperCase()); if (A.hasOwnProperty(o)) { var a = A[o], s = Math.max(50, 1e3 * a); s !== e.frequencyMs[t] && (console.log("[AbilitySpammer] Frequency for ".concat(r, " changing from ").concat(e.frequencyMs[t], "ms to ").concat(s, "ms")), e.frequencyMs[t] = s, e.isEnabled[t] && (n = !0)); } var g = "spamAbility".concat(t.toUpperCase(), "Enabled"); if (A.hasOwnProperty(g)) { var I = !!A[g]; I !== e.isEnabled[t] && (console.log("[AbilitySpammer] Ability ".concat(r, " spam changing from ").concat(e.isEnabled[t] ? "enabled" : "disabled", " to ").concat(I ? "enabled" : "disabled")), e.isEnabled[t] = I, I ? n = !0 : (e._stopSpamming(i), n = !1)); } n && (console.log("[AbilitySpammer] Restarting spammer for ".concat(r, " due to setting change.")), e._startSpamming(i)); }))) : console.error("[AbilitySpammer] Cannot update settings, Keybinder not initialized."); } }, { key: "_startSpamming", value: function(A) { var e = this; if (this.keybinder) { var t = [ "z", "x", "c" ][A]; this._stopSpamming(A), this.frequencyMs[t] < 50 && (console.warn("[AbilitySpammer] Frequency for ".concat(t.toUpperCase(), " too low, defaulting to 50ms.")), this.frequencyMs[t] = 50), console.log("[AbilitySpammer] Starting spam for ".concat(this.abilityKeys[A], " every ").concat(this.frequencyMs[t], "ms")), this.timers[t] = setTimeout((function() { return e._spamAbility(A); }), 0); } } }, { key: "_stopSpamming", value: function(A) { var e = [ "z", "x", "c" ][A]; this.timers[e] && (clearTimeout(this.timers[e]), this.timers[e] = null, console.log("[AbilitySpammer] Stopping spam for ".concat(this.abilityKeys[A]))); } }, { key: "_stopAllSpamming", value: function() { this._stopSpamming(0), this._stopSpamming(1), this._stopSpamming(2); } }, { key: "_spamAbility", value: function(A) { var e = this; if (this.keybinder && this.isEnabled[[ "z", "x", "c" ][A]]) { var t = [ "z", "x", "c" ][A], i = this.abilityKeys[A], n = this.keybinder.bindings[i] || i, r = n.startsWith("MouseButton"), o = r ? "mousedown" : "keydown", a = r ? "mouseup" : "keyup", s = { altKey: !1, ctrlKey: !1, metaKey: !1, shiftKey: !1, clientX: 0, clientY: 0, screenX: 0, screenY: 0 }; this.keybinder.synthesizeEvent(n, o, s), setTimeout((function() { if (e.keybinder && (e.keybinder.synthesizeEvent(n, a, s), e.isEnabled[t] && null !== e.timers[t])) { var i = e.frequencyMs[t]; i < 50 && (console.warn("[AbilitySpammer] Frequency for ".concat(t.toUpperCase(), " too low (").concat(i, "ms), clamping to 50ms for next interval.")), i = 50), e.timers[t] = setTimeout((function() { return e._spamAbility(A); }), i); } }), this.keyPressDurationMs); } else this._stopSpamming(A); } } ]); }(); const Ce = new ue; var Qe = function() { return (0, n.A)((function FastUpgrade(A) { (0, i.A)(this, FastUpgrade), this.keybinder = A, this.enabled = !1, this.holdDelay = 200, this.spamInterval = 10, this.activeTimers = {}, this.pressedKeys = new Set, this.handleKeyDown = this.handleKeyDown.bind(this), this.handleKeyUp = this.handleKeyUp.bind(this), this.startSpamming = this.startSpamming.bind(this), this.stopSpamming = this.stopSpamming.bind(this); }), [ { key: "isNumberKey", value: function(A) { return /^Digit[0-9]$/.test(A) || /^Numpad[0-9]$/.test(A); } }, { key: "handleKeyDown", value: function(A, e) { var t = this; if (!this.enabled || !this.isNumberKey(e) || this.pressedKeys.has(e)) return !1; console.log("[FastUpgrade] KeyDown detected: ".concat(e, ". Setting hold timer.")), this.pressedKeys.add(e), this.clearTimers(e); var i = setTimeout((function() { console.log("[FastUpgrade] Hold threshold met for ".concat(e, ". Starting spam.")), t.startSpamming(e, A); }), this.holdDelay); return this.activeTimers[e] = { holdTimeout: i, spamInterval: null }, !1; } }, { key: "handleKeyUp", value: function(A, e) { return !(!this.isNumberKey(e) || !this.pressedKeys.has(e) || (console.log("[FastUpgrade] KeyUp detected: ".concat(e, ". Stopping timers and spam.")), this.pressedKeys.delete(e), this.stopSpamming(e), 1)); } }, { key: "startSpamming", value: function(A, e) { var t = this; if (this.activeTimers[A] && !this.activeTimers[A].spamInterval) { this.synthesizeKeyPress(A, e); var i = setInterval((function() { t.pressedKeys.has(A) ? t.synthesizeKeyPress(A, e) : (console.warn("[FastUpgrade] Spam interval running for released key ".concat(A, ". Stopping.")), t.stopSpamming(A)); }), this.spamInterval); this.activeTimers[A].spamInterval = i; } } }, { key: "stopSpamming", value: function(A) { this.clearTimers(A); } }, { key: "clearTimers", value: function(A) { this.activeTimers[A] && (clearTimeout(this.activeTimers[A].holdTimeout), clearInterval(this.activeTimers[A].spamInterval), delete this.activeTimers[A]); } }, { key: "synthesizeKeyPress", value: function(A, e) { this.keybinder ? (this.keybinder.synthesizeEvent(A, "keydown", e), this.keybinder.synthesizeEvent(A, "keyup", e)) : console.error("[FastUpgrade] Keybinder reference not available for synthesizing event."); } }, { key: "updateSettings", value: function(A) { var e = this; if (void 0 !== A.enabled) { var t = this.enabled !== A.enabled; this.enabled = A.enabled, console.log("[FastUpgrade] Feature ".concat(this.enabled ? "enabled" : "disabled", ".")), t && !this.enabled && (console.log("[FastUpgrade] Disabling: Clearing all active timers."), Object.keys(this.activeTimers).forEach((function(A) { return e.stopSpamming(A); })), this.pressedKeys.clear()); } } } ]); }(); const Be = Qe; var Ee = function() { return (0, n.A)((function FullbrightModule() { (0, i.A)(this, FullbrightModule), this.isEnabled = !1, this.protobufHandler = null, this.messageHook = this.messageHook.bind(this), console.log("[E-Push:Fullbright] Module instance created."); }), [ { key: "init", value: function(A) { A.protobufHandler ? (this.protobufHandler = A.protobufHandler, console.log("[E-Push:Fullbright] Initialized with Protobuf Handler.")) : console.error("[E-Push:Fullbright] Initialization failed: Missing protobufHandler dependency."); } }, { key: "updateSettings", value: function(A) { "boolean" == typeof A.enabled && (this.isEnabled = A.enabled, console.log("[E-Push:Fullbright] Setting updated: enabled = ".concat(this.isEnabled))); } }, { key: "messageHook", value: (e = (0, A.A)(t().mark((function _callee(A) { var e, i, n, r, o; return t().wrap((function(t) { for (;;) switch (t.prev = t.next) { case 0: if (this.isEnabled && this.protobufHandler && this.protobufHandler.isReady()) { t.next = 2; break; } return t.abrupt("return", A); case 2: if (!((e = A.data) instanceof Blob)) { t.next = 14; break; } return t.prev = 4, t.next = 7, e.arrayBuffer(); case 7: e = t.sent, t.next = 14; break; case 10: return t.prev = 10, t.t0 = t.catch(4), console.error("[E-Push:Fullbright] Error converting Blob to ArrayBuffer:", t.t0), t.abrupt("return", A); case 14: if (e instanceof ArrayBuffer) { t.next = 16; break; } return t.abrupt("return", A); case 16: if (t.prev = 16, i = this.protobufHandler.decodeServer(e)) { t.next = 20; break; } return t.abrupt("return", A); case 20: t.next = 26; break; case 22: return t.prev = 22, t.t1 = t.catch(16), console.error("[E-Push:Fullbright] Error decoding server message:", t.t1), t.abrupt("return", A); case 26: if (n = !1, i.area && void 0 !== i.area.lighting && 1 !== i.area.lighting && (i.area.lighting = 1, n = !0), !n) { t.next = 42; break; } if (t.prev = 29, r = this.protobufHandler.encodeServer(i)) { t.next = 34; break; } return console.error("[E-Push:Fullbright] Failed to re-encode modified payload."), t.abrupt("return", A); case 34: return o = new MessageEvent("message", { data: r, origin: A.origin, lastEventId: A.lastEventId, source: A.source, ports: A.ports }), t.abrupt("return", o); case 38: return t.prev = 38, t.t2 = t.catch(29), console.error("[E-Push:Fullbright] Error re-encoding or creating new event:", t.t2), t.abrupt("return", A); case 42: return t.abrupt("return", A); case 43: case "end": return t.stop(); } }), _callee, this, [ [ 4, 10 ], [ 16, 22 ], [ 29, 38 ] ]); }))), function(A) { return e.apply(this, arguments); }) } ]); var e; }(); const le = Ee, he = function() { return (0, n.A)((function KeepFocus() { (0, i.A)(this, KeepFocus), this.enabled = !1, this.originalDescriptors = {}, this.originalEventHandlers = {}, this.addedEventListeners = [], this.spoofedProperties = [ "hidden", "mozHidden", "msHidden", "webkitHidden" ], this.visibilityStateProperties = [ "visibilityState", "webkitVisibilityState" ], this.interceptedEvents = [ "visibilitychange", "webkitvisibilitychange", "blur", "mouseleave", "mouseout", "mozvisibilitychange", "msvisibilitychange" ], this.blurWhitelist = [ HTMLInputElement, HTMLAnchorElement, HTMLSpanElement, HTMLParagraphElement ], this.hoverBlacklist = [ HTMLIFrameElement, HTMLHtmlElement, HTMLBodyElement, HTMLHeadElement, HTMLFrameSetElement, HTMLFrameElement ], this.masterEventHandler = this.masterEventHandler.bind(this), this.updateSettings = this.updateSettings.bind(this); }), [ { key: "_storeOriginal", value: function(A, e) { var t = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : "descriptor"; if (this.originalDescriptors[A.constructor.name] || (this.originalDescriptors[A.constructor.name] = {}), this.originalEventHandlers[A.constructor.name] || (this.originalEventHandlers[A.constructor.name] = {}), "descriptor" === t) { var i = Object.getOwnPropertyDescriptor(A, e); i && (this.originalDescriptors[A.constructor.name][e] = i); } else "handler" === t ? void 0 !== A[e] && (this.originalEventHandlers[A.constructor.name][e] = A[e]) : "direct_property" === t && A.hasOwnProperty(e) && (this.originalDescriptors[A.constructor.name][e] = A[e]); } }, { key: "_restoreOriginal", value: function(A, e) { var t = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : "descriptor", i = A.constructor.name; if ("descriptor" === t) if (this.originalDescriptors[i] && this.originalDescriptors[i][e]) Object.defineProperty(A, e, this.originalDescriptors[i][e]), delete this.originalDescriptors[i][e]; else { var n = Object.getOwnPropertyDescriptor(A, e); n && n.configurable && delete A[e]; } else "handler" === t ? this.originalEventHandlers[i] && void 0 !== this.originalEventHandlers[i][e] ? (A[e] = this.originalEventHandlers[i][e], delete this.originalEventHandlers[i][e]) : A[e] = void 0 : "direct_property" === t && (this.originalDescriptors[i] && this.originalDescriptors[i].hasOwnProperty(e) ? (A[e] = this.originalDescriptors[i][e], delete this.originalDescriptors[i][e]) : delete A[e]); } }, { key: "enable", value: function() { var A = this; this.enabled || (console.log("[E-Push KeepFocus] Enabling..."), this._storeOriginal(window, "onblur", "handler"), window.onblur = null, this._storeOriginal(window, "blurred", "direct_property"), window.blurred = !1, this._storeOriginal(window.document, "hasFocus", "handler"), window.document.hasFocus = function() { return !0; }, void 0 !== window.window.onFocus && (this._storeOriginal(window.window, "onFocus", "handler"), window.window.onFocus = function() { return !0; }), this.spoofedProperties.forEach((function(e) { A._storeOriginal(window.document, e, "descriptor"), Object.defineProperty(window.document, e, { value: !1, writable: !0, configurable: !0 }); })), this.visibilityStateProperties.forEach((function(e) { A._storeOriginal(window.document, e, "descriptor"), Object.defineProperty(window.document, e, { get: function() { return "visible"; }, configurable: !0 }); })), this._storeOriginal(window.document, "onvisibilitychange", "handler"), window.document.onvisibilitychange = void 0, this.interceptedEvents.forEach((function(e) { window.addEventListener(e, A.masterEventHandler, !0), A.addedEventListeners.push({ target: window, type: e, handler: A.masterEventHandler, capture: !0 }), window.document.addEventListener(e, A.masterEventHandler, !0), A.addedEventListeners.push({ target: window.document, type: e, handler: A.masterEventHandler, capture: !0 }); })), this.enabled = !0, console.log("[E-Push KeepFocus] Enabled.")); } }, { key: "disable", value: function() { var A = this; this.enabled && (console.log("[E-Push KeepFocus] Disabling..."), this._restoreOriginal(window, "onblur", "handler"), this._restoreOriginal(window, "blurred", "direct_property"), this._restoreOriginal(window.document, "hasFocus", "handler"), void 0 !== window.window.onFocus && this._restoreOriginal(window.window, "onFocus", "handler"), this.spoofedProperties.forEach((function(e) { A._restoreOriginal(window.document, e, "descriptor"); })), this.visibilityStateProperties.forEach((function(e) { A._restoreOriginal(window.document, e, "descriptor"); })), this._restoreOriginal(window.document, "onvisibilitychange", "handler"), this.addedEventListeners.forEach((function(A) { A.target.removeEventListener(A.type, A.handler, A.capture); })), this.addedEventListeners = [], this.enabled = !1, console.log("[E-Push KeepFocus] Disabled.")); } }, { key: "masterEventHandler", value: function(A) { if (this.enabled) { if ("blur" === A.type) { var e, t = this.blurWhitelist.some((function(e) { return A.target instanceof e; })), i = null === (e = A.target.classList) || void 0 === e ? void 0 : e.contains("ql-editor"); if (t || i) return; } if ([ "mouseleave", "mouseout" ].includes(A.type) && !this.hoverBlacklist.some((function(e) { return A.target instanceof e; }))) return; A.preventDefault(), A.stopPropagation(), A.stopImmediatePropagation(); } } }, { key: "updateSettings", value: function(A) { var e = A.enabled; "boolean" == typeof e && (e ? this.enable() : this.disable()); } } ]); }(); function idleAnimations_ownKeys(A, e) { var t = Object.keys(A); if (Object.getOwnPropertySymbols) { var i = Object.getOwnPropertySymbols(A); e && (i = i.filter((function(e) { return Object.getOwnPropertyDescriptor(A, e).enumerable; }))), t.push.apply(t, i); } return t; } function idleAnimations_objectSpread(A) { for (var e = 1; e < arguments.length; e++) { var t = null != arguments[e] ? arguments[e] : {}; e % 2 ? idleAnimations_ownKeys(Object(t), !0).forEach((function(e) { _defineProperty(A, e, t[e]); })) : Object.getOwnPropertyDescriptors ? Object.defineProperties(A, Object.getOwnPropertyDescriptors(t)) : idleAnimations_ownKeys(Object(t)).forEach((function(e) { Object.defineProperty(A, e, Object.getOwnPropertyDescriptor(t, e)); })); } return A; } const fe = { settings: { enabled: !1, timeoutMs: 0, animationType: "slowHover" }, keybinderModule: null, boundaryVisualizerModule: null, lastMouseActivityTime: Date.now(), lastKeyboardActivityTime: 0, idleCheckTimerId: null, animationTimerId: null, isAnimating: !1, hoverState: { currentStep: 0, maxSteps: 60, peakHoverSpeed: 7 }, _boundHandleMouseMove: null, init: function(A, e, t) { console.log("[IdleAnimations] Initializing..."), this._boundHandleMouseMove = this.handleMouseMove.bind(this), this.keybinderModule = e, this.boundaryVisualizerModule = t, this.keybinderModule || (console.error("[IdleAnimations] Keybinder instance not provided during init. Module will not function correctly."), A ? A.enabled = !1 : A = { enabled: !1 }), this.updateSettings(A), this.resetIdleTimer(), document.addEventListener("mousemove", this._boundHandleMouseMove, !0), console.log("[IdleAnimations] Global mousemove listener added by init."), this.settings.enabled && null === this.idleCheckTimerId && this.startIdleCheck(), console.log("[IdleAnimations] Initialized with settings:", this.settings); }, handleMouseMove: function() { this.lastMouseActivityTime = Date.now(), this.resetIdleTimer(); }, updateSettings: function(A) { if (console.log("[IdleAnimations DEBUG] updateSettings called. newSettings:", JSON.stringify(A)), A) { var e = this.settings.enabled, t = this.settings.animationType; this.settings = idleAnimations_objectSpread(idleAnimations_objectSpread({}, this.settings), A), console.log("[IdleAnimations] Settings updated:", this.settings), A.animationType && A.animationType !== t && console.log("[IdleAnimations DEBUG] animationType changed. Old: ".concat(t, ", New: ").concat(A.animationType, ", Is Animating: ").concat(this.isAnimating)), this.settings.enabled && !e ? this.startIdleCheck() : !this.settings.enabled && e && (this.stopIdleCheck(), this.stopCurrentAnimation()); } }, resetIdleTimer: function() { this.keybinderModule && "function" == typeof this.keybinderModule.getLastActivityTime ? this.lastKeyboardActivityTime = this.keybinderModule.getLastActivityTime() : this.lastKeyboardActivityTime = Date.now(), this.isAnimating && this.stopCurrentAnimation(); }, startIdleCheck: function() { null === this.idleCheckTimerId && (this.resetIdleTimer(), this.idleCheckTimerId = setInterval(this.checkIdleStatus.bind(this), 1e3), console.log("[IdleAnimations] Idle check started.")); }, stopIdleCheck: function() { null !== this.idleCheckTimerId && (clearInterval(this.idleCheckTimerId), this.idleCheckTimerId = null, console.log("[IdleAnimations] Idle check stopped.")), this._boundHandleMouseMove && (document.removeEventListener("mousemove", this._boundHandleMouseMove, !0), console.log("[IdleAnimations] Global mousemove listener removed by stopIdleCheck.")); }, checkIdleStatus: function() { if (this.settings.enabled) if (this.isAnimating) console.log("[E-Push IdleAnimations] Animation not starting: Another animation is already in progress."); else { var A = B.getPlayer(); if (A) if (this.boundaryVisualizerModule && "function" == typeof this.boundaryVisualizerModule.getZoneTypeAt) { var e = this.boundaryVisualizerModule.getZoneTypeAt(A.x, A.y); if ("Safe" === e) if (this.keybinderModule && "function" == typeof this.keybinderModule.getLastActivityTime) { var t = this.keybinderModule.getLastActivityTime(), i = Math.max(this.lastMouseActivityTime, t), n = Date.now() - i; n >= this.settings.timeoutMs ? (console.log("[E-Push IdleAnimations] Idle threshold reached (".concat(n, "ms). Starting animation in zone type: ").concat(e, ".")), this.startAnimation(this.settings.animationType)) : console.log("[E-Push IdleAnimations] Animation not starting: User not idle long enough. Idle time: ".concat(n, "ms / Required: ").concat(this.settings.timeoutMs, "ms. (MouseLast: ").concat(this.lastMouseActivityTime, ", KeyboardLast: ").concat(t, ")")); } else console.warn("[E-Push IdleAnimations] Animation not starting: Keybinder module not available for activity check."); else console.log("[E-Push IdleAnimations] Animation not starting: Not in 'Safe' zone. Current zone type: '".concat(e, "'.")); } else console.warn("[E-Push IdleAnimations] Animation not starting: BoundaryVisualizer module or getZoneTypeAt method not available."); else console.warn("[E-Push IdleAnimations] Animation not starting: Player object not found."); } else console.log("[E-Push IdleAnimations] Animation not starting: Module is disabled."); }, startAnimation: function(A) { if (!this.isAnimating) { if (!B.getPlayer()) return console.log("[IdleAnimations] Player not available, cannot start animation."), void (this.isAnimating = !1); this.isAnimating = !0, console.log("[IdleAnimations] Starting animation type: ".concat(A)), "slowHover" === A ? this.performSlowHover() : (console.warn("[IdleAnimations] Unknown animation type: ".concat(A, ". Animation not started.")), this.isAnimating = !1); } }, stopCurrentAnimation: function() { nA && "function" == typeof nA.movePlayer && (nA.movePlayer(0, 0), console.log("[E-Push IdleAnimations] Sent zero movement to stop residual motion.")), null !== this.animationTimerId && (clearInterval(this.animationTimerId), this.animationTimerId = null), this.isAnimating = !1, this.hoverState.currentStep = 0, console.log("[IdleAnimations] Animation stopped."); }, performSlowHover: function() { var A = this; this.hoverState.currentStep = 0; var e = 3e3 / this.hoverState.maxSteps; this.animationTimerId = setInterval((function() { if (A.isAnimating && B.getPlayer()) { var e, t = A.hoverState.currentStep / A.hoverState.maxSteps * 2 * Math.PI, i = Math.cos(t), n = A.hoverState.peakHoverSpeed * Math.abs(i); if (e = i >= 0 ? 90 : 270, !nA || "function" != typeof nA.movePlayer) return console.warn("[IdleAnimations] network.movePlayer is not available. Cannot perform hover."), void A.stopCurrentAnimation(); nA.movePlayer(e, n), A.hoverState.currentStep++, A.hoverState.currentStep >= A.hoverState.maxSteps && (A.hoverState.currentStep = 0); } else A.stopCurrentAnimation(); }), e), console.log("[IdleAnimations] Slow hover animation started with interval ".concat(e, "ms using network.movePlayer.")); } }; var de = null, ye = window.fetch; window.fetch = (0, A.A)(t().mark((function _callee() { var A, e, i, n, r, o, a, s, g, I, c = arguments; return t().wrap((function(t) { for (;;) switch (t.prev = t.next) { case 0: for (e = c.length, i = new Array(e), n = 0; n < e; n++) i[n] = c[n]; return r = i[0], o = i[1], t.next = 4, ye.apply(this, i); case 4: if (a = t.sent, s = (null == o || null === (A = o.method) || void 0 === A ? void 0 : A.toUpperCase()) || "GET", "string" != typeof r || "/api/game/list" !== r || "GET" !== s) { t.next = 20; break; } return t.prev = 8, g = a.clone(), t.next = 12, g.json(); case 12: I = t.sent, de = I, window.dispatchEvent(new CustomEvent("serverListDataUpdated", { detail: de })), t.next = 20; break; case 17: t.prev = 17, t.t0 = t.catch(8), console.error("[E-Push] Error processing server list response:", t.t0); case 20: return t.abrupt("return", a); case 21: case "end": return t.stop(); } }), _callee, this, [ [ 8, 17 ] ]); }))), console.log("[E-Push] Fetch interceptor initialized."); var we = function() { var A = null, e = null, t = null, i = "", n = {}, r = new Set, o = new Set, a = !1, updateVisibility = function() { if (A) if (a) A.style.display = "none"; else { var e = nA.gameWS && nA.gameWS.readyState === WebSocket.OPEN; A.style.display = e ? "none" : "flex"; } }, getServerColor = function(A, e) { if (0 === e) return "#aaa"; var t = A / e; return t < .5 ? "#4CAF50" : t < .85 ? "#FFC107" : "#F44336"; }, togglePlayerList = function(A) { var t = A.currentTarget.dataset.serverId, i = e.querySelector('.player-list[data-server-id="'.concat(t, '"]')); if (i) { var a = !("none" !== i.style.display); i.style.display = a ? "block" : "none", n[t] = !a, a ? r.add(t) : r.delete(t), o.delete(t); var s = A.currentTarget.querySelector(".toggle-indicator"); s && (s.textContent = a ? " ▼" : " ►"); } }, handleSearchInput = function(A) { var e = A.target.value.trim().toLowerCase(), t = i && !e, a = e && e !== i; if (i = e, t) o.forEach((function(A) { r.has(A) || (n[A] = !0); })), o.clear(); else if (a && (o.forEach((function(A) { r.has(A) || (n[A] = !0); })), o.clear(), de && de.servers)) for (var s in de.servers) for (var g in de.servers[s]) { var I = de.servers[s][g], c = "".concat(s, "-").concat(g); I.online && I.online.some((function(A) { return A.toLowerCase().includes(i); })) && !1 !== n[c] && (n[c] = !1, r.has(c) || o.add(c)); } renderServerList(); }, renderServerList = function() { if (e) { if (!de || !de.servers) return e.innerHTML = "<p>Waiting for server data...</p>", void (e.innerHTML = "<p>Waiting for server data...</p>"); var A = "", t = 0, r = 0; for (var o in de.servers) { A += '<h4 style="margin: 10px 0 5px 0; font-size: 13px; border-bottom: 1px solid #555;">'.concat(o, "</h4>"); var a = de.servers[o], s = 0, g = 0; for (var I in a) { var c = I, u = a[I], C = getServerColor(u.connected, u.capacity), Q = "".concat(o, "-").concat(c), B = !1 !== n[Q]; A += '<div class="server-header" data-server-id="'.concat(Q, '" style="cursor: pointer; margin-bottom: 2px; padding: 3px; background-color: rgba(255, 255, 255, 0.1); border-radius: 2px;">'), A += '<span style="color: '.concat(C, '; font-weight: bold;">Server ').concat(c, "</span>: ").concat(u.connected, " / ").concat(u.capacity), A += '<span class="toggle-indicator" style="float: right;">'.concat(B ? " ►" : " ▼", "</span>"), A += "</div>"; var E = B ? "none" : "block"; A += '<div class="player-list" data-server-id="'.concat(Q, '" style="display: ').concat(E, '; padding-left: 15px; margin-bottom: 5px; font-size: 11px;">'), u.online && u.online.length > 0 ? A += u.online.map((function(A) { var e = A.toLowerCase(), t = A; return i && e.includes(i) && (t = '<span style="background-color: yellow; color: black;">'.concat(A, "</span>")), t; })).join("<br>") : A += "<i>No players online</i>", A += "</div>", s += u.connected, g += u.capacity; } A += '<div style="margin-top: 5px; font-style: italic;">Region Total: '.concat(s, " / ").concat(g, "</div>"), t += s, r += g; } A += '<h4 style="margin: 15px 0 5px 0; font-size: 13px; border-top: 1px solid #555; padding-top: 5px;">Global</h4>', A += "<div>Total Players: ".concat(t, " / ").concat(r, "</div>"), e.innerHTML = A, e.querySelectorAll(".server-header").forEach((function(A) { A.removeEventListener("click", togglePlayerList), A.addEventListener("click", togglePlayerList); })); } }; return { init: function() { A || function() { if (!A) { (A = document.createElement("div")).id = "epush-server-list-ui", A.style.position = "fixed", A.style.top = "50%", A.style.right = "10px", A.style.transform = "translateY(-50%)", A.style.width = "200px", A.style.maxHeight = "60vh", A.style.backgroundColor = "rgba(0, 0, 0, 0.7)", A.style.backdropFilter = "blur(3px)", A.style.color = "white", A.style.borderRadius = "4px", A.style.zIndex = "99998", A.style.overflow = "hidden", A.style.display = "flex", A.style.flexDirection = "column", A.style.fontFamily = "Arial, sans-serif", A.style.fontSize = "12px", A.style.boxShadow = "0 2px 8px rgba(0, 0, 0, 0.3)", A.style.display = "none"; var i = document.createElement("div"); i.textContent = "Server List", i.style.padding = "8px", i.style.fontWeight = "bold", i.style.backgroundColor = "rgba(40, 40, 40, 0.9)", i.style.textAlign = "center", A.appendChild(i); var n = document.createElement("div"); n.style.padding = "5px 8px", n.style.borderBottom = "1px solid rgba(255, 255, 255, 0.2)", (t = document.createElement("input")).type = "text", t.placeholder = "Search Players...", t.style.width = "100%", t.style.padding = "4px", t.style.boxSizing = "border-box", t.style.backgroundColor = "rgba(0, 0, 0, 0.5)", t.style.color = "white", t.style.border = "1px solid #555", t.style.borderRadius = "3px", t.addEventListener("input", handleSearchInput), n.appendChild(t), A.appendChild(n), (e = document.createElement("div")).className = "server-list-content", e.style.padding = "8px", e.style.overflowY = "auto", e.style.flexGrow = "1", e.style.scrollbarWidth = "thin", e.style.scrollbarColor = "rgba(255, 255, 255, 0.3) transparent", A.appendChild(e), document.body.appendChild(A); var r = document.createElement("style"); r.textContent = "\n #epush-server-list-ui .server-list-content::-webkit-scrollbar {\n width: 6px;\n }\n #epush-server-list-ui .server-list-content::-webkit-scrollbar-track {\n background: transparent;\n }\n #epush-server-list-ui .server-list-content::-webkit-scrollbar-thumb {\n background-color: rgba(255, 255, 255, 0.3);\n border-radius: 3px;\n }\n #epush-server-list-ui .server-list-content::-webkit-scrollbar-thumb:hover {\n background-color: rgba(255, 255, 255, 0.5);\n }\n ", document.head.appendChild(r), console.log("[E-Push] Server List UI created."), renderServerList(), window.addEventListener("serverListDataUpdated", renderServerList), setInterval(updateVisibility, 500), updateVisibility(); } }(); }, setVisibility: function(A) { a = A, updateVisibility(); } }; }(); const ve = we; function favoriteHeroes_arrayLikeToArray(A, e) { (null == e || e > A.length) && (e = A.length); for (var t = 0, i = Array(e); t < e; t++) i[t] = A[t]; return i; } var pe = "evades_favorite_heroes", De = [], be = null, ke = null, Se = null, me = [], Ne = !1, Fe = null, Ge = [], Me = -1, Je = "epush-hero-card-focused", Re = "\n.".concat(Je, " .hero-select-rectangle {\n outline: 3px solid #00ffff !important; /* Bright cyan outline */\n box-shadow: 0 0 10px #00ffff; /* Glow effect */\n}\n"), Ue = null; function getHeroIdFromCard(A) { var e = A.querySelector('a[id^="hero-select-rectangle"]'); return e ? e.id.replace("hero-select-rectangle", "").toLowerCase() : null; } function isFavorited(A) { return De.includes(A); } function addStarToHeroCard(A) { var e = getHeroIdFromCard(A); if (e && !A.querySelector(".favorite-star")) { var t = document.createElement("span"); t.classList.add("favorite-star"), t.style.position = "absolute", t.style.top = "5px", t.style.right = "8px", t.style.fontSize = "20px", t.style.cursor = "pointer", isFavorited(e) ? (t.classList.add("favorited"), t.textContent = "⭐", t.style.color = "yellow", ke && ke.appendChild(A)) : (t.textContent = "☆", t.style.color = "white"), t.addEventListener("click", (function(i) { i.preventDefault(), i.stopPropagation(), function(A, e, t) { if (isFavorited(A)) { if (De = De.filter((function(e) { return e !== A; })), t.classList.remove("favorited"), t.textContent = "☆", be) { for (var i = null, n = me.indexOf(A) + 1; n < me.length; n++) { var r, o = me[n], a = null === (r = be.querySelector("a#hero-select-rectangle".concat(o))) || void 0 === r ? void 0 : r.closest(".hero-select-container"); if (a && a.parentNode === be) { i = a; break; } } be.insertBefore(e, i); } } else De.push(A), t.classList.add("favorited"), t.textContent = "⭐", ke && ke.appendChild(e); localStorage.setItem(pe, JSON.stringify(De)), checkFavoritesContainerVisibility(), updateAvailableHeroCards(), -1 !== Me && Ge[Me] === e ? updateFocus(Math.max(0, Me - 1)) : -1 !== Me && Ge[Me] && Ge.forEach((function(A, e) { e === Me ? A.classList.add(Je) : A.classList.remove(Je); })); }(e, A, t); })), t.addEventListener("mouseenter", (function() { t.style.transform = "scale(1.2)"; })), t.addEventListener("mouseleave", (function() { t.style.transform = "scale(1)"; })); var i = A.querySelector(".hero-select-rectangle"); i && "static" === getComputedStyle(i).position && (i.style.position = "relative"), null == i || i.appendChild(t); } } function checkFavoritesContainerVisibility() { var A = document.getElementById("favorite-heroes-container"); A && (A.style.display = De.length > 0 ? "block" : "none"); } function updateAvailableHeroCards() { if (be && ke) { var A = Array.from(ke.querySelectorAll(".hero-select-container")), e = Array.from(be.querySelectorAll(".hero-select-container")); Ge = [].concat(A, e), Me >= Ge.length ? Me = Math.max(0, Ge.length - 1) : Me < 0 && Ge.length > 0 && (Me = 0); } else Ge = []; } function updateFocus(A) { var e = !(arguments.length > 1 && void 0 !== arguments[1]) || arguments[1]; A !== Me && Ge.length && (-1 !== Me && Ge[Me] && Ge[Me].classList.remove(Je), Me = Math.max(0, Math.min(A, Ge.length - 1)), Ge[Me] ? (Ge[Me].classList.add(Je), e && -1 !== Me && Ge[Me] && Ge[Me].scrollIntoView({ behavior: "smooth", block: "nearest", inline: "nearest" })) : Me = -1); } function handleKeyDown(A) { if (Ne && Ge.length) { var e = Ge.length; if (0 !== e) { var t = Me, i = !1, n = ke.children.length > 0 ? ke : be, r = getComputedStyle(n).gridTemplateColumns, o = r ? r.split(" ").length : 4; switch (A.key) { case "ArrowUp": case "w": t = Math.max(0, Me - o), i = !0; break; case "ArrowDown": case "s": t = Math.min(e - 1, Me + o), i = !0; break; case "ArrowLeft": case "a": t = Math.max(0, Me - 1), i = !0; break; case "ArrowRight": case "d": t = Math.min(e - 1, Me + 1), i = !0; break; case "Tab": t = A.shiftKey ? (Me - 1 + e) % e : (Me + 1) % e, i = !0; break; case "+": case "=": t = (Me + 1) % e, i = !0; break; case "-": t = (Me - 1 + e) % e, i = !0; break; case "Enter": if (-1 !== Me && Ge[Me]) { var a = Ge[Me].querySelector("a"); null == a || a.click(), i = !0; } } i && (A.preventDefault(), A.stopPropagation(), updateFocus(t)); } } } function setupFavoritesUI() { Ue || ((Ue = document.createElement("style")).textContent = Re, document.head.appendChild(Ue)); var A = document.querySelector("#app > div > div > div.hero-select"); if (be = null == A ? void 0 : A.querySelector(".hero-select-heroes-container"), A && be) if (document.getElementById("favorite-heroes-container")) console.log("[E-Push FavoriteHeroes] Favorites UI already initialized."); else { var e; console.log("[E-Push FavoriteHeroes] Setting up Favorites UI."), e = localStorage.getItem(pe), De = e ? JSON.parse(e) : []; var t = document.createElement("div"); t.id = "favorite-heroes-container", t.style.marginBottom = "20px", t.style.borderBottom = "1px solid #555", t.style.paddingBottom = "10px"; var i = document.createElement("h3"); i.textContent = "Favorites", i.style.textAlign = "center", i.style.color = "white", i.style.marginBottom = "5px", t.appendChild(i); var n = document.createElement("hr"); n.style.border = "none", n.style.borderTop = "1px solid #555", n.style.margin = "0 0 10px 0", t.appendChild(n), (ke = document.createElement("div")).id = "favorite-heroes-list", ke.style.display = "grid", ke.style.gridTemplateColumns = "repeat(3, auto)", ke.style.justifyItems = "center", ke.style.gap = "10px", t.appendChild(ke), be.parentNode.insertBefore(t, be); var r = be.querySelectorAll(".hero-select-container"); me = Array.from(r).map(getHeroIdFromCard).filter((function(A) { return A; })), r.forEach(addStarToHeroCard), checkFavoritesContainerVisibility(), Se && Se.disconnect(), (Se = new MutationObserver((function(A) { var e, t = function(A, e) { var t = "undefined" != typeof Symbol && A[Symbol.iterator] || A["@@iterator"]; if (!t) { if (Array.isArray(A) || (t = function(A, e) { if (A) { if ("string" == typeof A) return favoriteHeroes_arrayLikeToArray(A, e); var t = {}.toString.call(A).slice(8, -1); return "Object" === t && A.constructor && (t = A.constructor.name), "Map" === t || "Set" === t ? Array.from(A) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? favoriteHeroes_arrayLikeToArray(A, e) : void 0; } }(A)) || e && A && "number" == typeof A.length) { t && (A = t); var i = 0, F = function() {}; return { s: F, n: function() { return i >= A.length ? { done: !0 } : { done: !1, value: A[i++] }; }, e: function(A) { throw A; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var n, r = !0, o = !1; return { s: function() { t = t.call(A); }, n: function() { var A = t.next(); return r = A.done, A; }, e: function(A) { o = !0, n = A; }, f: function() { try { r || null == t.return || t.return(); } finally { if (o) throw n; } } }; }(A); try { for (t.s(); !(e = t.n()).done; ) { var i = e.value; "childList" === i.type && (i.addedNodes.forEach((function(A) { if (A.nodeType === Node.ELEMENT_NODE) if (A.classList.contains("hero-select-container")) addStarToHeroCard(A); else { var e = A.querySelector(".hero-select-container"); e && addStarToHeroCard(e); } })), checkFavoritesContainerVisibility()); } } catch (A) { t.e(A); } finally { t.f(); } }))).observe(be, { childList: !0, subtree: !0 }), console.log("[E-Push FavoriteHeroes] Hero list observer started."), updateAvailableHeroCards(), Ge.length > 0 ? updateFocus(0, !1) : Me = -1, document.addEventListener("keydown", handleKeyDown), console.log("[E-Push FavoriteHeroes] Keyboard navigation listener added."); } else console.log("[E-Push FavoriteHeroes] Hero select elements not found for UI setup."); } function checkAndRunPageSpecificModules() { var A = !!document.querySelector("#app > div > div > div.hero-select > div.choose-your-hero-image"); A && !Ne ? (console.log("[E-Push FavoriteHeroes] Hero select page detected. Setting up Favorites UI."), setupFavoritesUI(), Ne = !0) : !A && Ne && (console.log("[E-Push FavoriteHeroes] Left hero select page. Cleaning up Favorites UI."), function() { document.removeEventListener("keydown", handleKeyDown), -1 !== Me && Ge[Me] && Ge[Me].classList.remove(Je), Me = -1, Ge = [], console.log("[E-Push FavoriteHeroes] Keyboard navigation listener removed."), Se && (Se.disconnect(), Se = null, console.log("[E-Push FavoriteHeroes] Hero list observer stopped.")); var A = document.getElementById("favorite-heroes-container"); A && A.remove(), document.querySelectorAll(".favorite-star").forEach((function(A) { return A.remove(); })), be = null, ke = null, me = [], console.log("[E-Push FavoriteHeroes] Favorites UI cleaned up."); }(), Ne = !1); } function setupPageChangeObserver() { if (Fe) console.log("[E-Push FavoriteHeroes] Page change observer already running."); else { var A = document.getElementById("app") || document.body; if (!A) return console.warn("[E-Push FavoriteHeroes] Could not find target node (#app or body) for page observer. Retrying..."), void setTimeout(setupPageChangeObserver, 1e3); (Fe = new MutationObserver((function(A, e) { checkAndRunPageSpecificModules(); }))).observe(A, { childList: !0, subtree: !0 }), console.log("[E-Push FavoriteHeroes] Page change observer started."); } } const favoriteHeroes_init = function() { console.log("[E-Push FavoriteHeroes] Initializing..."), checkAndRunPageSpecificModules(), setupPageChangeObserver(); }; var Le, Ye, Ke, He, xe, Oe; const qe = (Le = "epush-hof-player-rank", Ye = null, Ke = 0, He = function(A, e, t) { var i = function(A) { var e = A.querySelector("#".concat(Le)); if (!e) { (e = document.createElement("div")).id = Le, e.style.padding = "5px 8px", e.style.marginBottom = "20px", e.style.borderTop = "3px solid rgba(255, 255, 255, 0.2)", e.style.borderBottom = "3px solid rgba(255, 255, 255, 0.2)", e.style.textAlign = "center", e.style.fontSize = "17px", e.style.fontWeight = "bold", e.style.color = "rgb(255 255 255)", e.style.display = "block"; var t = A.querySelector(".hall-of-fame-header"); t ? t.parentNode.insertBefore(e, t.nextSibling) : A.prepend(e); } return e; }(A); i && (null !== e && null !== t ? (i.textContent = "Your Rank: ".concat(e, " (VP: ").concat(t, ")"), i.style.display = "block") : (i.textContent = "Your Rank: Not Found", i.style.display = "block")); }, xe = function() { var A = document.querySelector("#".concat(Le)); A && (A.style.display = "none"); }, Oe = function() { var A = Date.now(), e = document.querySelector(".hall-of-fame"); if (!(A - Ke < (e ? 1e3 : 2e3))) { Ke = A; var t = B.getAccountData(); if (Ye = null == t ? void 0 : t.username) if (e) { var i = e.querySelectorAll(".hall-of-fame-player a"), n = null, r = null; i.forEach((function(A) { var e = A.textContent.trim().match(/^(\d+)\.\s*(.+?):\s*(\d+)$/); if (e) { var t = e[1], i = e[2], o = e[3]; i.toLowerCase() === Ye.toLowerCase() && (n = t, r = o); } })), He(e, n, r); } else xe(); else xe(); } }, { init: function() { setInterval(Oe, 500), console.log("[E-Push] Hall of Fame Finder initialized (Integrated Mode)."); } }); var Te = { "Central Core": "CC", "Central Core Hard": "CCH", "Catastrophic Core": "CC3", "Haunted Halls": "HH2", "Peculiar Pyramid": "PP", "Peculiar Pyramid Hard": "PPH", "Wacky Wonderland": "WW", "Wacky Wonderland Hard": "WWH", "Glacial Gorge": "GG", "Glacial Gorge Hard": "GGH", "Vicious Valley": "VV", "Vicious Valley Hard": "VVH", "Humongous Hollow": "HH", "Humongous Hollow Hard": "HHH", "Elite Expanse": "EE", "Elite Expanse Hard": "EEH", "Endless Echo": "EE2", "Endless Echo Hard": "EE2H", "Dangerous District": "DD", "Dangerous District Hard": "DDH", "Quiet Quarry": "QQ", "Quiet Quarry Hard": "QQH", "Monumental Migration": "MM", "Ominous Occult": "OO", "Ominous Occult Hard": "OOH", "Frozen Fjord": "FF", "Frozen Fjord Hard": "FFH", "Restless Ridge": "RR", "Restless Ridge Hard": "RRH", "Toxic Territory": "TT", "Toxic Territory Hard": "TTH", "Magnetic Monopole": "MM2", "Magnetic Monopole Hard": "MM2H", "Burning Bunker": "BB", "Burning Bunker Hard": "BBH", "Grand Garden": "GG2", "Grand Garden Hard": "GG2H", "Cyber Castle": "CC2", "Cyber Castle Hard": "CC2H", "Infinite Inferno": "II", "Withering Wasteland": "WW2", "Terrifying Temple": "TT2" }; function accessoryCommand_ownKeys(A, e) { var t = Object.keys(A); if (Object.getOwnPropertySymbols) { var i = Object.getOwnPropertySymbols(A); e && (i = i.filter((function(e) { return Object.getOwnPropertyDescriptor(A, e).enumerable; }))), t.push.apply(t, i); } return t; } function accessoryCommand_objectSpread(A) { for (var e = 1; e < arguments.length; e++) { var t = null != arguments[e] ? arguments[e] : {}; e % 2 ? accessoryCommand_ownKeys(Object(t), !0).forEach((function(e) { _defineProperty(A, e, t[e]); })) : Object.getOwnPropertyDescriptors ? Object.defineProperties(A, Object.getOwnPropertyDescriptors(t)) : accessoryCommand_ownKeys(Object(t)).forEach((function(e) { Object.defineProperty(A, e, Object.getOwnPropertyDescriptor(t, e)); })); } return A; } function _handleAccessoryCommand() { return _handleAccessoryCommand = (0, A.A)(t().mark((function _callee(A) { var e, i, n, r, o, a, s, g, I, c, u, C, Q, E, l, h, f, d, y, w, v, p, D, b, k, S, m; return t().wrap((function(t) { for (;;) switch (t.prev = t.next) { case 0: if (1 === A.length) { t.next = 4; break; } return sendClientChat("Invalid arguments. Usage: ".concat("/accessory <accessory_name | list | none>")), t.abrupt("return"); case 4: if (i = A[0].toLowerCase(), n = B.getAccountData(), r = B.getCurrentServerName(), n) { t.next = 10; break; } return sendClientChat("Account data not loaded yet. Please wait a moment or try rejoining."), t.abrupt("return"); case 10: if (r) { t.next = 13; break; } return sendClientChat("Current server name not detected. Cannot reconnect after changing accessory."), t.abrupt("return"); case 13: if (o = null == n || null === (e = n.extra) || void 0 === e || null === (e = e.accessories) || void 0 === e ? void 0 : e.collection, "list" !== i) { t.next = 21; break; } if (o) { t.next = 18; break; } return sendClientChat("Could not find accessory collection in account data."), t.abrupt("return"); case 18: return 0 === (a = Object.entries(o).filter((function(A) { var e = _slicedToArray(A, 2); return e[0], !0 === e[1]; })).map((function(A) { return _slicedToArray(A, 1)[0]; }))).length ? sendClientChat("You do not own any accessories.") : (s = "Your Accessories:\n- ".concat(a.join("\n- "))).length > 200 ? (sendClientChat("Your Accessories:"), g = "", a.forEach((function(A) { g.length + A.length + 3 > 200 ? (sendClientChat(g), g = "- ".concat(A)) : g += (g ? ", " : "- ") + A; })), g && sendClientChat(g)) : sendClientChat(s), t.abrupt("return"); case 21: if (I = null, c = !1, "none" !== i) { t.next = 27; break; } c = !0, t.next = 38; break; case 27: if (o) { t.next = 30; break; } return sendClientChat("Could not find accessory collection in account data."), t.abrupt("return"); case 30: if (u = Object.keys(o).find((function(A) { return A.toLowerCase() === i; })), u) { t.next = 34; break; } return sendClientChat("Accessory '".concat(A[0], "' not found in your collection.")), t.abrupt("return"); case 34: if (!0 === o[u]) { t.next = 37; break; } return sendClientChat("You do not own the accessory '".concat(u, "'.")), t.abrupt("return"); case 37: I = u; case 38: if (sendClientChat(c ? "Removing accessories..." : "Setting accessory to '".concat(I, "'...")), t.prev = 40, C = { headers: { accept: "*/*", "accept-language": "en-US,en;q=0.9", "cache-control": "no-cache", "content-type": "application/json", pragma: "no-cache", priority: "u=1, i", "sec-ch-ua": '"Chromium";v="134", "Not:A-Brand";v="24", "Brave";v="134"', "sec-ch-ua-mobile": "?0", "sec-ch-ua-platform": '"Linux"', "sec-fetch-dest": "empty", "sec-fetch-mode": "cors", "sec-fetch-site": "same-origin", "sec-gpc": "1", Referer: "https://evades.io/account" }, referrerPolicy: "strict-origin-when-cross-origin", method: "POST", mode: "cors", credentials: "include" }, !c) { t.next = 68; break; } Q = 0, E = [ "hat", "body" ]; case 45: if (!(Q < E.length)) { t.next = 66; break; } return l = E[Q], h = JSON.stringify({ collection: l, selected: null }), t.next = 50, fetch("https://evades.io/api/account/update_accessories", accessoryCommand_objectSpread(accessoryCommand_objectSpread({}, C), {}, { body: h })); case 50: if ((f = t.sent).ok) { t.next = 63; break; } return d = "HTTP error! status: ".concat(f.status, " while removing ").concat(l), t.prev = 53, t.next = 56, f.json(); case 56: y = t.sent, d += " - ".concat(y.message || JSON.stringify(y)), t.next = 62; break; case 60: t.prev = 60, t.t0 = t.catch(53); case 62: throw new Error(d); case 63: Q++, t.next = 45; break; case 66: t.next = 84; break; case 68: return w = JSON.stringify({ collection: "hat", selected: I }), t.next = 71, fetch("https://evades.io/api/account/update_accessories", accessoryCommand_objectSpread(accessoryCommand_objectSpread({}, C), {}, { body: w })); case 71: if ((v = t.sent).ok) { t.next = 84; break; } return p = "HTTP error! status: ".concat(v.status), t.prev = 74, t.next = 77, v.json(); case 77: D = t.sent, p += " - ".concat(D.message || JSON.stringify(D)), t.next = 83; break; case 81: t.prev = 81, t.t1 = t.catch(74); case 83: throw new Error(p); case 84: if (sendClientChat(c ? "Accessories removed successfully. Reconnecting..." : "Accessory '".concat(I, "' set successfully. Reconnecting...")), (b = r.match(/([A-Z]+)\s*(\d+)/i)) && !(b.length < 3)) { t.next = 91; break; } return sendClientChat("Error: Could not parse current server name '".concat(r, "' for reconnection.")), console.error("[E-Push:AccessoryCommand] Failed to parse server name:", r), t.abrupt("return"); case 91: if (k = b[1].toUpperCase(), S = parseInt(b[2], 10), !isNaN(S)) { t.next = 97; break; } return sendClientChat("Error: Invalid server index parsed from '".concat(r, "'.")), console.error("[E-Push:AccessoryCommand] Invalid server index parsed:", b[2]), t.abrupt("return"); case 97: if (m = function(A, e) { if (A) { console.error("[E-Push:AccessoryCommand] Reconnect failed:", A); var t = "Failed to reconnect."; A instanceof Event && "error" === A.type ? t = "Failed to reconnect (Connection Error)." : A instanceof CloseEvent ? t = "Failed to reconnect (Connection Closed: Code ".concat(A.code, ").") : A.message && (t = "Failed to reconnect: ".concat(A.message)), sendClientChat("".concat(t)); } else { var i = "".concat(k, "-").concat(S); console.log("[E-Push:AccessoryCommand] Successfully reconnected to ".concat(i)), sendClientChat("Reconnected to ".concat(i, ".")); } }, "function" == typeof window.serverSwap) { sendClientChat("Reconnecting to ".concat(k, "-").concat(S, "...")); try { window.serverSwap(k, S, m); } catch (A) { console.error("[E-Push:AccessoryCommand] Error calling window.serverSwap:", A), sendClientChat("Error initiating reconnect. Check console."); } } else console.error("[E-Push:AccessoryCommand] window.serverSwap function not found!"), sendClientChat("Error: Server swap functionality is not available."); t.next = 105; break; case 101: t.prev = 101, t.t2 = t.catch(40), console.error("[E-Push:AccessoryCommand] Failed to update accessory:", t.t2), sendClientChat("Error setting accessory: ".concat(t.t2.message)); case 105: case "end": return t.stop(); } }), _callee, null, [ [ 40, 101 ], [ 53, 60 ], [ 74, 81 ] ]); }))), _handleAccessoryCommand.apply(this, arguments); } tA.registerCommand("reset", { handler: function(A) { return sendClientChat("Executing reset sequence..."), function(A) { var e = B.getCurrentRegionName(); if (!e) { var t = "Cannot execute reset: Current region name not available."; return console.warn(t), void sendClientChat(t); } var i = Te[e]; if (i) { console.log("[E-Push:ResetCommand] Executing reset sequence for region: ".concat(e, " (").concat(i, ")")); var n = "/reset ".concat(A.join(" ")).trim(); nA.sendChatMessage(n), console.log("[E-Push:ResetCommand] Sent: ".concat(n)), setTimeout((function() { var A = "/warp ".concat(i); nA.sendChatMessage(A), console.log("[E-Push:ResetCommand] Sent: ".concat(A)), sendClientChat("Warping back to ".concat(e, "...")); }), 15); } else nA.sendChatMessage("/reset ".concat(A.join(" "))); }(A), !0; }, description: "Resets the player and warps back to the start of the current map.", usage: "/reset [args...]" }), console.log("[E-Push] Reset command module loaded."), tA.registerCommand("server", { handler: function(A) { return function(A) { var e = "/server <U|E> <1-8> (U=NA, E=EU)"; if (2 === A.length) { var t, i = A[0].toUpperCase(); if ("U" === i) t = "NA"; else { if ("E" !== i) return void sendClientChat("Invalid region '".concat(A[0], "'. Use 'U' for NA or 'E' for EU. Usage: ").concat(e)); t = "EU"; } var n = A[1], r = parseInt(n, 10); if (isNaN(r) || r < 1 || r > 8) sendClientChat("Invalid server number '".concat(n, "'. Must be between 1 and 8. Usage: ").concat(e)); else if ("function" == typeof window.serverSwap) { sendClientChat("[E-Push] Connecting to ".concat(t, "-").concat(r, "...")); try { window.serverSwap(t, r, (function(A, e) { if (A) { console.error("[E-Push:ServerCommand] Server swap failed:", A); var i = "Failed to connect."; A instanceof Event && "error" === A.type ? i = "Failed to connect (Connection Error)." : A instanceof CloseEvent ? i = "Failed to connect (Connection Closed: Code ".concat(A.code, ").") : A.message && (i = "Failed to connect: ".concat(A.message)), sendClientChat("[E-Push] ".concat(i)); } else { var n = "".concat(t, "-").concat(r); console.log("[E-Push:ServerCommand] Successfully connected to ".concat(n)), sendClientChat("[E-Push] Connected to ".concat(n, ".")); } })); } catch (A) { console.error("[E-Push:ServerCommand] Error calling window.serverSwap:", A), sendClientChat("[E-Push] Error initiating server swap. Check console."); } } else console.error("[E-Push:ServerCommand] window.serverSwap function not found!"), sendClientChat("Error: Server swap functionality is not available."); } else sendClientChat("Invalid arguments. Usage: ".concat(e)); }(A), !0; }, description: "Connects to a specific game server region and number.", usage: "/server <U|E> <1-8> (U=NA, E=EU)", aliases: [ "s" ] }), console.log("[E-Push] Server command module loaded."), tA.registerCommand("clear", { handler: function(A) { var e = document.getElementById("chat-window"); if (e) { for (;e.firstChild; ) e.removeChild(e.firstChild); console.log("[E-Push:ClearCommand] Chat window cleared."); } else console.error("[E-Push:ClearCommand] Could not find #chat-window element."), sendClientChat("Error: Could not find chat window element."); return !0; }, description: "Clears all messages from the chat window.", usage: "/clear", aliases: [ "c" ] }), console.log("[E-Push] Loaded clear command."), tA.registerCommand("accessory", { handler: function(A) { return function(A) { _handleAccessoryCommand.apply(this, arguments); }(A), !0; }, description: "Sets your accessory, removes accessories (none), or lists owned accessories.", usage: "/accessory <accessory_name | list | none>", aliases: [ "acc" ] }), console.log("Accessory command module loaded."); var Pe = "canvas", _e = { credits: { developers: [ { name: "Pixelmelt", description: "Lead Developer, Most Features" }, { name: "Exobyte", description: "Mascot, Auto Dodge Implementation" }, { name: "Gemini 2.5", description: "Most coding, Machine God" } ], contributors: [ { name: "Exnonull", description: "Networking Functionality, E-Rush Developer" }, { name: "Zirolio", description: "Various Feature Implementaions, E-Zond Developer" } ], communityMembers: [ { name: "JonathanSchmidt", description: "Keybinder suggestion" } ] }, changelog: [ { version: "1.7.0", date: "2025-05-13", changes: [ "Added fast upgrade (hold down upgade key)", "Fixed some abilities being treated as dangerous", "Added idle movements", "Added fullbright", "Added sticky keys (A and D stay held down when pressed)", "Added keep focus (use with sticky keys to alt tab during machines)", "Added ability spammer", "Hid exoavoidance till it works" ] }, { version: "1.6.0", date: "2025-04-21", changes: [ "Added /accessory <hat>", "Added teleporting enemy predictor", "Improved star predictor", "Added Hall of fame leaderboard display", "Added Jotunn decay aura indicator", "Added chat above players heads", "Added Exobytes auto dodge (NONFUNCTIONAL)", "Added added Mortuus gravestone tracker" ] }, { version: "1.5.0", date: "2025-04-16", changes: [ "Added a keybindings menu" ] }, { version: "1.4.0", date: "2025-04-10", changes: [ "Hero selection menu can be navigated with tab, arrow keys, wasd and enter", "Updated hero selection menu style", "Added necro res blocker so you cant instakill yourself", "Added live server switcher", "Added /server <region> <number> command", "Made /reset command send you to the start of whatever level you were on", "Added /clear command for the chat", "Added smart speedrun timer" ] }, { version: "1.3.0", date: "2025-04-07", changes: [ "Avoidance disables when you are invulnerable", "Reaper depart indicator added", 'Somewhat working "follow player" option added (buggy when going between areas)', "Added ability to favorite heros", "Added auto pellet collect with kinda broken pathfinding", "Added theming", "Updated UI", "Added setting reset button" ] }, { version: "1.2.0", date: "2025-03-29", changes: [ "Settings save", "barrier_enemy is no longer considered dangerous", "Fixed hero detection" ] }, { version: "1.1.0", date: "2025-03-28", changes: [ "Added changelog", "Added deadzone to minimize crazy movements that look suspect, you will just die instead of becoming neo", "Made force line toggleable", "Added server list ui player search thingy", "Added (all I think?) items not considered dangerous", "Added chrono shadow", "Added rime shadow", "Added star guide", "Added anti afk" ] } ] }, _initializeRenderer = function() { var A = function(A, e) { var t = document.getElementById(A); if (!t) return null; var i = document.getElementById(e), n = !1; i || ((i = document.createElement("canvas")).id = e, console.log('[E-Push] Created overlay canvas "#'.concat(e, '".')), document.body.appendChild(i), n = !0), i.style.position = "absolute", i.style.pointerEvents = "none", i.style.zIndex = "10", i.style.display = "block"; var syncOverlay = function() { i._isSyncing || (i._isSyncing = !0, requestAnimationFrame((function() { try { if (!document.body.contains(t)) return console.warn("[E-Push] Game canvas removed from DOM. Cleaning up overlay listeners."), cleanupOverlayListeners(i), void (document.body.contains(i) && (i.style.display = "none")); if (!document.body.contains(i)) return console.warn("[E-Push] Overlay canvas removed from DOM. Cleaning up listeners."), void cleanupOverlayListeners(i); var A = t.getBoundingClientRect(); i.width === t.width && i.height === t.height || (i.width = t.width, i.height = t.height); var e = A.width + "px", n = A.height + "px", r = A.top + window.scrollY + "px", o = A.left + window.scrollX + "px"; i.style.width !== e && (i.style.width = e), i.style.height !== n && (i.style.height = n), i.style.top !== r && (i.style.top = r), i.style.left !== o && (i.style.left = o), "none" === i.style.display && (i.style.display = "block"); } catch (A) { console.error("[E-Push] Error during overlay sync:", A), cleanupOverlayListeners(i); } finally { i._isSyncing = !1; } }))); }; n || cleanupOverlayListeners(i); var r = new ResizeObserver(syncOverlay); r.observe(t), i._resizeObserver = r; var windowResizeHandler = function() { return syncOverlay(); }; window.addEventListener("resize", windowResizeHandler), i._windowResizeListener = windowResizeHandler; var windowScrollHandler = function() { return syncOverlay(); }; return window.addEventListener("scroll", windowScrollHandler, { passive: !0 }), i._windowScrollListener = windowScrollHandler, syncOverlay(), console.log('[E-Push] Overlay canvas "#'.concat(e, '" syncing with "#').concat(A, '".')), i; }(Pe, "ePushOverlayCanvas"); A ? (ge.init(A).startDrawing(), console.log("[E-Push] Renderer initialized with overlay canvas.")) : (console.warn('[E-Push] Game canvas "#'.concat(Pe, '" not found. Retrying renderer initialization in 1 second...')), setTimeout(_initializeRenderer, 1e3)); }, _setupMouseListener = function() { var A = document.getElementById(Pe); if (!A) return console.warn('[E-Push] Game canvas "#'.concat(Pe, '" not found for mouse listener. Retrying...')), void setTimeout(_setupMouseListener, 1e3); A.addEventListener("mousemove", (function(e) { if (B.getPlayer()) { var t = A.getBoundingClientRect(), i = A.width, n = A.height, r = i / t.width, o = n / t.height, a = (e.clientX - t.left) * r, s = (e.clientY - t.top) * o; B.updateMouseScreenCoords(a, s); } })), console.log("[E-Push] Mouse listener added to game canvas."); }; function initTracker() { return _initTracker.apply(this, arguments); } function _initTracker() { return _initTracker = (0, A.A)(t().mark((function _callee() { var A, e, i, n, r, o, a, s, g, I, c, C, E, l, h, f, d, y, w, v, p, D, b, k, m, G, M, J; return t().wrap((function(U) { for (;;) switch (U.prev = U.next) { case 0: return console.log("[E-Push] Initializing..."), U.next = 3, nA.init(S); case 3: return console.log("[E-Push] Network module initialized"), U.next = 6, B.initialize(); case 6: if (console.log("[E-Push] GameState initialized (fetching account data/server name)"), V.initialize(), console.log("[E-Push] ChatHandler initialized"), (A = nA.createWSHook()) ? (S.setHook(A), console.log("[E-Push] Network WebSocket hook registered.")) : console.error("[E-Push] Failed to create Network WebSocket hook."), e = { id: "E_PUSH_COMMAND_HOOK", priority: 5, send: function(A) { if ("string" == typeof A && A.startsWith("/")) { if (tA.processChatMessage(A)) return console.log("[E-Push] Command handled locally, preventing send."), null; console.log("[E-Push] Unknown command, allowing send."); } return A; } }, S.setHook(e), console.log("[E-Push] Command/Messaging WebSocket hook registered."), _initializeRenderer(), _setupMouseListener(), i = loadSettings(), console.log("[E-Push] Loaded settings:", i), u.init({ getEnemyRadiusMap: Q.getEnemyRadiusMap }), R.init(), x.init(), O.init(), OA.init(), qA.init(), PA.init(), q && "function" == typeof q.init ? (q.init(), console.log("[E-Push] BoundaryVisualizer module initialized.")) : q ? console.log("[E-Push] BoundaryVisualizer module loaded (no init method found or needed).") : console.error("[E-Push] BoundaryVisualizer module not found for initialization."), K.init(), _A.init(), ie.init(), L.init(), U.prev = 30, n = 10, r = Q.getEnemyRadiusMap ? Q.getEnemyRadiusMap() : {}, o = new Map, !Q.isReady() || !Q.rawCoder) { U.next = 73; break; } if (U.prev = 35, !(a = Q.rawCoder.lookupEnum("EntityType")) || !a.values) { U.next = 65; break; } for (s = {}, g = 0, I = Object.entries(a.values); g < I.length; g++) c = _slicedToArray(I[g], 2), C = c[0], E = c[1], s[C] = E; U.t0 = t().keys(r); case 41: if ((U.t1 = U.t0()).done) { U.next = 63; break; } if (l = U.t1.value, !Object.hasOwnProperty.call(r, l)) { U.next = 61; break; } if (h = r[l], f = void 0, void 0 === s[l]) { U.next = 50; break; } f = s[l], U.next = 61; break; case 50: d = l.toLowerCase(), y = 0, w = Object.entries(s); case 52: if (!(y < w.length)) { U.next = 60; break; } if (v = _slicedToArray(w[y], 2), p = v[0], D = v[1], p.toLowerCase() !== d) { U.next = 57; break; } return f = D, U.abrupt("break", 60); case 57: y++, U.next = 52; break; case 60: void 0 !== f ? o.set(f, h) : console.warn("[E-Push] Could not find matching ID for entity name: ".concat(l)); case 61: U.next = 41; break; case 63: U.next = 66; break; case 65: console.error("[E-Push] Could not find EntityType enum in protobuf schema."); case 66: U.next = 71; break; case 68: U.prev = 68, U.t2 = U.catch(35), console.error("[E-Push] Error accessing EntityType enum:", U.t2); case 71: U.next = 74; break; case 73: console.error("[E-Push] Protobuf handler not ready, cannot create ID-based radius map."); case 74: return U.next = 76, initPathfinder(n, o); case 76: console.log("[E-Push] Pathfinder (and ECORE) initialized."), U.next = 82; break; case 79: U.prev = 79, U.t3 = U.catch(30), console.error("[E-Push] Failed to initialize Pathfinder/ECORE:", U.t3); case 82: HA.createInfoElements(_e), HA.init(), ve.init(), qe.init(), b = new ce(HA), Ce.init(b), k = new Be(b), (m = new le).init({ protobufHandler: Q }), G = new he, S.setHook({ id: "FULLBRIGHT_HOOK", priority: 0, message: m.messageHook }), console.log("[E-Push] Fullbright WebSocket hook registered."), b.registerFastUpgradeModule(k), b.registerIdleAnimationsModule(fe), M = { network: nA, renderer: ge, obstacleAvoidance: R, timeTravelIndicator: x, teleportIndicator: O, starPredictor: aA, boundaryVisualizer: q, antiAfk: N, departIndicator: qA, pelletCollector: PA, followPlayer: OA, serverListUI: ve, teleportingEnemyPredictor: sA, necroResurrectionBlocker: K, jotunnIndicator: ne, zoneUIHider: _A, speedrunTimer: ie, keybinder: b, exoAvoidance: L, gravestoneTracker: ae, abilitySpammer: Ce, fastUpgrade: k, fullbright: m, keepFocus: G, idleAnimations: fe }, b && i && fe && M.boundaryVisualizer ? (fe.init({ enabled: i.idleAnimationsEnabled, timeoutMs: i.idleAnimationTimeoutMs, animationType: i.idleAnimationType }, b, M.boundaryVisualizer), console.log("[E-Push] IdleAnimations module initialized with BoundaryVisualizer.")) : (J = [], b || J.push("keybinder"), i || J.push("loadedSettings"), fe || J.push("idleAnimations"), M.boundaryVisualizer || J.push("modules.boundaryVisualizer"), console.error("[E-Push] Failed to initialize IdleAnimations: Missing ".concat(J.join(", "), "."))), applyAllSettings(i, M, HA), registerSettingsUI(i, M, HA), Z.init(M), N.init(i.antiAfkEnabled ? { enabled: !0 } : { enabled: !1 }), favoriteHeroes_init(), console.log("[E-Push] Initialization complete."); case 104: case "end": return U.stop(); } }), _callee, null, [ [ 30, 79 ], [ 35, 68 ] ]); }))), _initTracker.apply(this, arguments); } const je = initTracker; "undefined" != typeof window && initTracker().catch((function(A) { console.error("[E-Push] Critical error during initialization:", A); })); })(), __webpack_exports__ = __webpack_exports__.default, __webpack_exports__; })())); })();