From 27f6f1ab4409fd786076076fad5bee31849a2d3a Mon Sep 17 00:00:00 2001 From: peshomir Date: Thu, 25 Apr 2024 14:48:29 +0000 Subject: [PATCH] deploy: ce2e2468fde2980a7bcf58780a321ec7145a78d6 --- fx_core.js | 2 +- game.js | 8356 ++++++++++++++++++++++++++-------------------------- index.html | 8 +- 3 files changed, 4211 insertions(+), 4155 deletions(-) diff --git a/fx_core.js b/fx_core.js index 0a5e8fb..d072925 100644 --- a/fx_core.js +++ b/fx_core.js @@ -1,4 +1,4 @@ -const dictionary = {"gIsTeamGame":"hL","playerId":"eU","playerNames":"jk","playerBalances":"eV","playerTerritories":"ez","gHumans":"h0","playerStates":"h2","gLobbyMaxJoin":"pl","gIsSingleplayer":"il","uiSizes":"b0","gap":"gap"}; +const dictionary = {"gIsTeamGame":"hL","playerId":"eU","playerNames":"jk","playerBalances":"eV","playerTerritories":"ez","gHumans":"h0","playerStates":"h2","gLobbyMaxJoin":"pt","gIsSingleplayer":"il","uiSizes":"b0","gap":"gap"}; const fx_version = '0.6.3.3'; // FX Client Version const fx_update = 'Apr 11'; // FX Client Last Updated diff --git a/game.js b/game.js index 92e57f5..a0077c4 100644 --- a/game.js +++ b/game.js @@ -9,15 +9,15 @@ function bD() { new cA, aQ = new cB, aR = new cC, aS = new cD, aT = new cE, aU = new cF, aW = new cG, aX = new cH, aa = new cI, ab = new cJ, ae = new cK, af = new cL, ag = new cM, aj = new cN, ak = new cO, al = new cP, am = new cQ, an = new cR, ao = new cS, ap = new cT, aq = new cU, ar = new cV, at = new cW, aV = new cX, b7 = new cY, a = new cZ, b8 = new ca, b9 = new cb, b4 = new cc, b5 = new cd, aw = new ce, ax = new cf, ay = new cg, az = new ch, b1 = new ci, b2 = new cj, b3 = new ck, bA = new cl, b0 = new cm, bB = new cn, bC = new co, a.cq(), b7.cq(), aK.cr(), b9.cq(), aV.cq(), bC.cq(), aY.cq(), a3.cq(), aN.cq(), ac.cq(), ad.cq(), ap.cq(), cs(), (ct = document.getElementById("usernameField")) && document.body - .removeChild(ct), au = new cu, aK.cq(), b7.cv.cw(), b3.cq(), b0.cq(), aw.cq(), (b6 = new cx).cq(), av = new cy, (a8 = new cz).cq(), aL.cq(), a5.d0(), at.cq(), a9.cq(), x.cq(), aT.cq(), aN.cq(), q.cq(), a7.cq(), ag.cq(), a1.cq(), b3.d1 = ! - 0, setTimeout(function() { + .removeChild(ct), au = new cu, aK.cq(), b7.cv.cw(), b3.cq(), b0.cq(), aw.cq(), (b6 = new cx).cq(), av = new cy, (a8 = new cz).cq(), aL.cq(), a5.d0(), at.cq(), a9.cq(), x.cq(), aT.cq(), q.cq(), a7.cq(), ag.cq(), a1.cq(), b3.d1 = !0, + setTimeout(function() { ap.d2(2, 14071) }, 0), af.d3(), b7.cv.d4(), a.d5 = 1) } function cZ() { - this.dC = 1035, this.cq = function() { - d6 = 2, d8 = 18, d7 = "3 Apr 2024 (1.93.9)", d9 = 0 <= window.location.hostname.toLowerCase().indexOf("territorial.io"), dB = function() { + this.dC = 1036, this.cq = function() { + d6 = 2, d8 = 18, d7 = "25 Apr 2024 (1.94.1)", d9 = 0 <= window.location.hostname.toLowerCase().indexOf("territorial.io"), dB = function() { try { return window.self !== window.top } catch (dE) { @@ -48,9 +48,7 @@ function cW() { function dJ() { var dO = 0; - function dQ(dX) { - console.log("Video Ad Completed: " + dX) - } + function dQ(dX) {} function dP() { return 0 === b7.id && d9 @@ -513,7 +511,7 @@ function iC(player, hS) { self.aiCommand746 = function(db) { 0 === db ? bD() : 1 !== db || 1 !== b7.id || b7.dc < 14 || x.dd() }; -var h0, rJ, ie, rI, iS = [60, 74, 112, 200, 256, 512]; +var h0, rR, ie, rQ, iS = [60, 74, 112, 200, 256, 512]; function bN() { var iT, iU, iV, iW, iX, iY; @@ -932,10 +930,11 @@ function ni(n5, nj, h4) { for (var eZ = nj.length, eD = 0; eD < eZ; eD++) 0 < eD && aY.fy.nJ(nl[eD], 8) }, nk = document.createElement("div"), n5.style.overflowX = "hidden", n5.style.overflowY = "auto", ! function() { var eD, ei, eZ = nj.length; - for (eD = 0; eD < eZ; eD++) - for (nl[eD] = document.createElement("div"), nl[eD].style.display = "flex", nl[eD].style.width = "100%", nl[eD].style.height = "2.5em", nl[eD].style.backgroundColor = eD % 2 == 0 ? aZ.kj : aZ.ka, n6[eD] = new Array(nj[0].length), hY = - 0; hY < nj[0].length; hY++) n6[eD][hY] = ei = document.createElement("div"), ei.style.display = "flex", ei.style.width = "100%", ei.style.height = "100%", ei.style.justifyContent = "center", ei.style.alignItems = "center", ei - .innerHTML = nj[eD][hY], 0 < hY && aY.fy.nJ(ei, 4), nl[eD].appendChild(ei) + for (eD = 0; eD < eZ; eD++) { + nl[eD] = document.createElement("div"), nl[eD].style.display = "flex", nl[eD].style.width = "100%", nl[eD].style.height = "2.5em", nl[eD].style.backgroundColor = eD % 2 == 0 ? aZ.kj : aZ.ka, n6[eD] = new Array(nj[0].length); + for (let hY = 0; hY < nj[0].length; hY++) n6[eD][hY] = ei = document.createElement("div"), ei.style.display = "flex", ei.style.width = "100%", ei.style.height = "100%", ei.style.justifyContent = "center", ei.style.alignItems = + "center", ei.innerHTML = nj[eD][hY], 0 < hY && aY.fy.nJ(ei, 4), nl[eD].appendChild(ei) + } }(), eD = 0; eD < nj.length; eD++) nk.appendChild(nl[eD]); n5.appendChild(nk) } @@ -1006,43 +1005,44 @@ function o4() { } function cb() { - this.nN = new oE, this.dG = new oF, this.na = new oG, this.cq = function() { - this.dG.cq(), (new oH).cq() + this.nN = new oE, this.dG = new oF, this.na = new oG, this.iv = new oH, this.cq = function() { + this.dG.cq(), (new oI).cq() } } function oF() { - function oI(eD, title, type, nq = null, oO = 0, dc = 0) { + function oJ(eD, title, type, nq = null, oP = 0, dc = 0) { b9.dG.data.push({ fx: eD, title: title, type: type, nq: nq, - value: oO, - oO: oO, + value: oP, + oP: oP, dc: dc }) } - function oJ(eD, title, type, nq = null, oO = "", dc = 0) { + function oK(eD, title, type, nq = null, oP = "", dc = 0) { b9.dG.data.push({ fx: eD, title: title, type: type, nq: nq, - value: oO, - oO: oO, + value: oP, + oP: oP, dc: dc }) } - function oK(kK) { + function oL(kK) { for (var eD = b9.dG.data.length; eD < kK; eD++) b9.dG.data.push(null) } this.data = [], this.cq = function() { - oI(0, "", 1, ["English", "Русский", "Türkçe", "Española", "Deutsch"], 0, 4), oI(1, "", 1, null, 1), oI(2, "", 0, [0, 1]), oJ(3, "Username", 2), oI(4, "Font5", 1, ["Default", "Custom"]), oJ(5, "", 2, null, "Trebuchet MS", 1), oI(6, "", 0, - [0, 1]), oI(7, "", 0, [0, 1], 1), oI(8, "", 0, [0, 1]), oI(9, "", 1, null, 1), oI(10, "", 1, null), oI(11, "", 1, null, 1), oK(100), oJ(100, "Username", 2), oJ(101, "Password", 2), oJ(102, "Emojis", 2), oJ(103, "Colors", 2), oJ( - 104, "Clan", 2), oJ(105, "AccountName", 2), oJ(106, "Password", 2), oI(107, null, 0), oI(108, null, 0), oI(109, null, 0), oJ(110, null, 2), oI(111, null, 0), oI(112, null, 0), oK(180), oI(180, "R0", 0), oI(181, "R1", 0) + oJ(0, "", 1, ["English", "Русский", "Türkçe", "Española", "Deutsch"], 0, 4), oJ(1, "", 1, null, 1), oJ(2, "", 0, [0, 1]), oK(3, "Username", 2), oJ(4, "Font5", 1, ["Default", "Custom"]), oK(5, "", 2, null, "Trebuchet MS", 1), oJ(6, "", 0, + [0, 1]), oJ(7, "", 0, [0, 1], 1), oJ(8, "", 0, [0, 1]), oJ(9, "", 1, null, 1), oJ(10, "", 1, null), oJ(11, "", 1, null, 1), oL(100), oK(100, "Username", 2), oK(101, "Password", 2), oK(102, "Emojis", 2), oK(103, "Colors", 2), oK( + 104, "Clan", 2), oK(105, "AccountName", 2), oK(106, "Password", 2), oJ(107, null, 0), oJ(108, null, 0), oJ(109, null, 0), oK(110, null, 2), oJ(111, null, 0), oJ(112, null, 0), oJ(113, null, 0), oK(114, null, 2), oJ(115, null, 0), + oK(116, null, 2), oJ(117, null, 1), oL(180), oJ(180, "R0", 0), oJ(181, "R1", 0) }, this.translate = function() { this.data[0].title = "🌐 " + aV.nZ[101], this.data[1].title = aV.nZ[102], this.data[2].title = aV.nZ[103], this.data[5].title = aV.nZ[104], this.data[6].title = aV.nZ[105], this.data[7].title = aV.nZ[106], this.data[8].title = aV.nZ[107], this.data[9].title = aV.nZ[108], this.data[10].title = aV.nZ[109], this.data[11].title = aV.nZ[110], this.data[1].nq = [aV.nZ[111], aV.nZ[112], aV.nZ[113], aV.nZ[114]], this.data[9].nq = [aV.nZ[112], aV.nZ[115], aV.nZ[116]], this @@ -1051,739 +1051,782 @@ function oF() { this.data[fx].value = value }, this.dH = function(fx, value) { this.nb(fx, value), b9.nN.save(fx, String(value)), b9.nN.save(fx, String(this.data[fx].dc), !0) - }, this.oL = function() { + }, this.oM = function() { for (var eD = 0; eD < this.data.length; eD++) this.data[eD] && (b9.nN.save(eD, String(this.data[eD].value)), b9.nN.save(eD, String(this.data[eD].dc), !0)) - }, this.oM = function(fx) { - return Number(this.data[fx].value) }, this.oN = function(fx) { + return Number(this.data[fx].value) + }, this.oO = function(fx) { return String(this.data[fx].value) } } function oE() { - this.oP = function(fx, dc = !1) { - return Number(this.oQ(fx, dc)) - }, this.oQ = function(fx, dc = !1) { + this.oQ = function(fx, dc = !1) { + return Number(this.oR(fx, dc)) + }, this.oR = function(fx, dc = !1) { var db = null; - return 0 === b7.id ? b7.oR && (db = b7.oR.getItem((dc ? "v" : "d") + fx)) : 1 === b7.id ? db = b7.oS.loadString((dc ? 1e3 : 2e3) + fx) : 2 === b7.id && (db = b7.oT[(dc ? "v" : "d") + fx]), db && 0 !== db.length ? db : null + return 0 === b7.id ? b7.oS && (db = b7.oS.getItem((dc ? "v" : "d") + fx)) : 1 === b7.id ? db = b7.oT.loadString((dc ? 1e3 : 2e3) + fx) : 2 === b7.id && (db = b7.oU[(dc ? "v" : "d") + fx]), db && 0 !== db.length ? db : null }, this.save = function(fx, value, dc = !1) { - 0 === b7.id ? b7.oR && b7.oR.setItem((dc ? "v" : "d") + fx, value) : 1 === b7.id ? b7.oS.saveString((dc ? 1e3 : 2e3) + fx, value) : 2 === b7.id && (b7.oT["d" + fx] = value, b7.oU.postMessage((dc ? "v" : "d") + fx + " " + value)) + 0 === b7.id ? b7.oS && b7.oS.setItem((dc ? "v" : "d") + fx, value) : 1 === b7.id ? b7.oT.saveString((dc ? 1e3 : 2e3) + fx, value) : 2 === b7.id && (b7.oU["d" + fx] = value, b7.oV.postMessage((dc ? "v" : "d") + fx + " " + value)) + } +} + +function oI() { + this.cq = function() { + ! function() { + var data = b9.dG.data; + 0 === data[2].dc && (aK.g9 > aK.g3 || 0 !== b7.id) && (data[2].value = data[2].oP = 1); + 0 === data[100].dc && (data[100].value = data[100].oP = (0 === b7.id ? "Player " : 1 === b7.id ? "Android User " : "iOS User ") + Math.floor(1e3 * Math.random())); + data[0].value = data[0].oP = aV.oY() + }(); + var eD, db, data = b9.dG.data, + eZ = data.length; + for (eD = 0; eD < eZ; eD++) data[eD] && data[eD].dc === b9.nN.oQ(eD, !0) && (db = b9.nN.oR(eD), data[eD].value = null === db ? data[eD].oP : 2 === data[eD].type ? db : Number(db)); + b9.dG.data[10].value = b9.dG.data[10].oP } } function oH() { - this.cq = function() { - ! function() { - var data = b9.dG.data; - 0 === data[2].dc && (aK.g9 > aK.g3 || 0 !== b7.id) && (data[2].value = data[2].oO = 1); - 0 === data[100].dc && (data[100].value = data[100].oO = (0 === b7.id ? "Player " : 1 === b7.id ? "Android User " : "iOS User ") + Math.floor(1e3 * Math.random())); - data[0].value = data[0].oO = aV.oX() - }(); - var eD, db, data = b9.dG.data, - eZ = data.length; - for (eD = 0; eD < eZ; eD++) data[eD] && data[eD].dc === b9.nN.oP(eD, !0) && (db = b9.nN.oQ(eD), data[eD].value = null === db ? data[eD].oO : 2 === data[eD].type ? db : Number(db)); - b9.dG.data[10].value = b9.dG.data[10].oO + function ob(dl) { + let og = dl[0]; + for (let eD = 1; eD < dl.length; eD++) og += ";" + dl[eD]; + b9.na.nb(116, og) + } + this.oZ = function() { + var dl = b9.dG.data[116].value.split(";"); + dl.length % 2 == 1 && dl.pop(), dl.unshift(b9.dG.data[106].value), dl.unshift(b9.dG.data[105].value); + for (let eD = 2; eD < dl.length; eD += 2) + if (dl[eD] === dl[0]) { + dl.splice(eD, 2); + break + } var oa = []; + for (let eD = 0; eD < dl.length; eD += 2) oa.push(dl[eD]); + ob(dl), b9.dG.data[117].value = 0, b9.dG.data[117].nq = oa + }, this.oc = function(fx) { + b9.dG.data[117].nq.splice(fx, 1), b9.dG.data[117].value = Math.min(fx, b9.dG.data[117].nq.length - 1); + var dl = b9.dG.data[116].value.split(";"); + dl.splice(2 * fx, 2), ob(dl) + }, this.od = function(fx) { + var dl = b9.dG.data[116].value.split(";"); + return { + oe: dl[2 * fx], + password: dl[2 * fx + 1] + } } } function oG() { this.nb = function(fx, value) { - console.log("update " + fx + " " + value), b9.dG.data[fx].value !== value && (b9.dG.dH(fx, value), 0 === fx ? (ar.oY(0), aV.cq(), ar.oY(2)) : 1 === fx ? aK.oZ(1) : 2 === fx ? aK.oZ(0) : 5 === fx && (aY.fy.oa(), aK.oZ(0))) - }, this.ob = function() { - for (var data = b9.dG.data, eD = 0; eD < 180; eD++) data[eD] && b9.dG.dH(eD, data[eD].oO); - aY.fy.oa(), aK.oZ(1), aV.cq() + b9.dG.data[fx].value !== value && (b9.dG.dH(fx, value), 0 === fx ? (ar.oh(0), aV.cq(), ar.oh(2)) : 1 === fx ? aK.oi(1) : 2 === fx ? aK.oi(0) : 5 === fx && (aY.fy.oj(), aK.oi(0))) + }, this.ok = function() { + for (var data = b9.dG.data, eD = 0; eD < 180; eD++) data[eD] && b9.dG.dH(eD, data[eD].oP); + aY.fy.oj(), aK.oi(1), aV.cq() } } function bM() { - this.oc = new od, this.oe = new og, this.cq = function() { - this.oc.cq() + this.ol = new om, this.on = new oo, this.cq = function() { + this.ol.cq() } } -function og() { - this.oh = function(size) { - for (var oi = ae, dl = [], eD = 0; eD < size; eD++) dl.push(String.fromCharCode(oi.mI(16))); +function oo() { + this.op = function(size) { + for (var oq = ae, dl = [], eD = 0; eD < size; eD++) dl.push(String.fromCharCode(oq.mI(16))); return dl.join("") - }, this.oj = function(fw) { + }, this.or = function(fw) { return 20 < (fw = fw.trim()).length ? fw.substring(0, 20) : fw } } -function od() { - var ok = new Uint8Array(78); +function om() { + var os = new Uint8Array(78); this.cq = function() { var eD; - for (ok[50] = 37, eD = 0; eD < 10; eD++) ok[eD + 3] = eD + 1; - for (eD = 0; eD < 26; eD++) ok[eD + 20] = eD + 11, ok[eD + 52] = eD + 38 - }, this.ol = function(fw) { + for (os[50] = 37, eD = 0; eD < 10; eD++) os[eD + 3] = eD + 1; + for (eD = 0; eD < 26; eD++) os[eD + 20] = eD + 11, os[eD + 52] = eD + 38 + }, this.ot = function(fw) { return fw.trim().replace(new RegExp("[^a-zA-Z0-9_\\-]", "g"), "_") - }, this.om = function(fw, size) { - if ((fw = this.ol(fw)).length > size) return fw.substring(0, size); + }, this.ou = function(fw, size) { + if ((fw = this.ot(fw)).length > size) return fw.substring(0, size); for (; fw.length < size;) fw += "_"; return fw - }, this.on = function(fw) { - for (var oo = ok, eZ = fw.length, dl = new Uint8Array(eZ), eD = 0; eD < eZ; eD++) dl[eD] = oo[fw.charCodeAt(eD) - 45]; + }, this.ov = function(fw) { + for (var ow = os, eZ = fw.length, dl = new Uint8Array(eZ), eD = 0; eD < eZ; eD++) dl[eD] = ow[fw.charCodeAt(eD) - 45]; return dl - }, this.op = function(oq) { - ab.d2(6 * oq.length), this.or(oq), ae.cq(ab.mH) - }, this.or = function(oq) { - var eZ = oq.length, + }, this.ox = function(oy) { + ab.d2(6 * oy.length), this.oz(oy), ae.cq(ab.mH) + }, this.oz = function(oy) { + var eZ = oy.length, g3 = ab; - for (let eD = 0; eD < eZ; eD++) g3.os(6, oq[eD]) - }, this.ot = function(fw) { - this.or(this.on(fw)) - }, this.ou = function(fw, size) { - this.or(this.on(this.om(fw, size))) + for (let eD = 0; eD < eZ; eD++) g3.p0(6, oy[eD]) + }, this.p1 = function(fw) { + this.oz(this.ov(fw)) + }, this.p2 = function(fw, size) { + this.oz(this.ov(this.ou(fw, size))) } } -function ov() { - var g3, g9, ow; +function p3() { + var g3, g9, p4; - function pM(pN, ei, pK, p2, pF) { - ei = pL(pN, ei + 1 + 2 * p2 & 3); - ! function(pN, pO) { - return 1 < Math.abs(pN % g3 - pO % g3) || 1 < Math.abs(pR(pN) - pR(pO)) - }(pN, ei) && 0 === pF[ei << 2] && (pF[ei << 2] = pK) + function pU(pV, ei, pS, pA, pN) { + ei = pT(pV, ei + 1 + 2 * pA & 3); + ! function(pV, pW) { + return 1 < Math.abs(pV % g3 - pW % g3) || 1 < Math.abs(pZ(pV) - pZ(pW)) + }(pV, ei) && 0 === pN[ei << 2] && (pN[ei << 2] = pS) } - function pR(eg) { + function pZ(eg) { return Math.floor((eg + .5) / g3) % g9 } - function pL(eg, ei) { - return eg + ow[ei] + function pT(eg, ei) { + return eg + p4[ei] } - this.ox = function(fw) { - var eD, oy, eZ, p0, oi = ae; - for (ad.oc.op(ad.oc.on(fw)), ap.e8 = g3 = oi.mI(12), ap.e9 = g9 = oi.mI(12), ow = [-g3, -1, g3, 1], ap.pB = document.createElement("canvas"), ap.pB.width = ap.e8, ap.pB.height = ap.e9, ap.p7 = ap.pB.getContext("2d", { + this.p5 = function(fw) { + var eD, p6, eZ, p8, oq = ae; + for (ad.ol.ox(ad.ol.ov(fw)), ap.e8 = g3 = oq.mI(12), ap.e9 = g9 = oq.mI(12), p4 = [-g3, -1, g3, 1], ap.pJ = document.createElement("canvas"), ap.pJ.width = ap.e8, ap.pJ.height = ap.e9, ap.pF = ap.pJ.getContext("2d", { alpha: !1 - }), ap.p8 = ap.p7.getImageData(0, 0, ap.e8, ap.e9), ap.pC = ap.p8.data, aY.pD.pE(ap.pC), eZ = oi.mI(12), oy = oi.mI(5), p0 = p4(g3 * g9 - 1), eD = 0; eD < eZ; eD++) ! function(oz, eg, p1, p2) { - var eD, ei, oi = ae, - pF = ap.pC, - pG = eg, - pH = eg, - pI = 0, - pJ = 1 + p1, - pK = 2 - p1; - for (pF[eg << 2] = pJ, eD = 0; eD < oz; eD++) ei = oi.mI(2), eg = pL(eg, ei), pF[eg << 2] === pJ ? pI % 2 == 1 && pM(pH, pI + 2 * p2 + 3, pK, p2, pF) : pF[eg << 2] = pJ, pM(eg, ei, pK, p2, pF), pM(pH, ei, pK, p2, pF), pH = eg, - pI = ei; - pL(eg, 0) === pG ? (pM(eg, 0, pK, p2, pF), pM(pG, 0, pK, p2, pF)) : pL(eg, 1) === pG && (pM(eg, 0, pK, p2, pF), pM(pG, 2, pK, p2, pF)); - 0 === oz && (pM(pG, 0, pK, p2, pF), pM(pG, 2, pK, p2, pF)) - }(oi.mI(oy), oi.mI(p0), 1 === oi.mI(1), 1 === oi.mI(1)); - var fI, fJ, pS, pT, pU, pV, pF = ap.pC, - pW = !0, - pX = ap.ih.pY[ap.pZ].pX, - pa = ap.ih.pY[ap.pZ].pa; + }), ap.pG = ap.pF.getImageData(0, 0, ap.e8, ap.e9), ap.pK = ap.pG.data, aY.pL.pM(ap.pK), eZ = oq.mI(12), p6 = oq.mI(5), p8 = pC(g3 * g9 - 1), eD = 0; eD < eZ; eD++) ! function(p7, eg, p9, pA) { + var eD, ei, oq = ae, + pN = ap.pK, + pO = eg, + pP = eg, + pQ = 0, + pR = 1 + p9, + pS = 2 - p9; + for (pN[eg << 2] = pR, eD = 0; eD < p7; eD++) ei = oq.mI(2), eg = pT(eg, ei), pN[eg << 2] === pR ? pQ % 2 == 1 && pU(pP, pQ + 2 * pA + 3, pS, pA, pN) : pN[eg << 2] = pR, pU(eg, ei, pS, pA, pN), pU(pP, ei, pS, pA, pN), pP = eg, + pQ = ei; + pT(eg, 0) === pO ? (pU(eg, 0, pS, pA, pN), pU(pO, 0, pS, pA, pN)) : pT(eg, 1) === pO && (pU(eg, 0, pS, pA, pN), pU(pO, 2, pS, pA, pN)); + 0 === p7 && (pU(pO, 0, pS, pA, pN), pU(pO, 2, pS, pA, pN)) + }(oq.mI(p6), oq.mI(p8), 1 === oq.mI(1), 1 === oq.mI(1)); + var fI, fJ, pa, pb, pc, pd, pN = ap.pK, + pe = !0, + pf = ap.ih.pg[ap.ph].pf, + pi = ap.ih.pg[ap.ph].pi; for (fJ = 0; fJ < g9; fJ++) - for (pT = !0, pU = pW, fI = pV = 0; fI < g3; fI++) pS = 4 * fJ * g3 + 4 * fI, pV <= fI && 0 < pF[pS] && (pU = 2 === pF[pS], pT) && (pT = !1, pU !== pW) ? (pW = pU, pV = fI + 1, fI = -1) : (pU ? (pF[pS] = pa[0], pF[1 + pS] = pa[1], pF[ - 2 + pS] = pa[2]) : (pF[pS] = pX[0], pF[1 + pS] = pX[1], pF[2 + pS] = pX[2]), pF[3 + pS] = 255); - ap.p7.putImageData(ap.p8, 0, 0), ap.p9 = !0, ap.pA.cq(), b3.d1 = !0 + for (pb = !0, pc = pe, fI = pd = 0; fI < g3; fI++) pa = 4 * fJ * g3 + 4 * fI, pd <= fI && 0 < pN[pa] && (pc = 2 === pN[pa], pb) && (pb = !1, pc !== pe) ? (pe = pc, pd = fI + 1, fI = -1) : (pc ? (pN[pa] = pi[0], pN[1 + pa] = pi[1], pN[ + 2 + pa] = pi[2]) : (pN[pa] = pf[0], pN[1 + pa] = pf[1], pN[2 + pa] = pf[2]), pN[3 + pa] = 255); + ap.pF.putImageData(ap.pG, 0, 0), ap.pH = !0, ap.pI.cq(), b3.d1 = !0 } } function bS() { - var fI, fJ, g3, g9, pb, pc, pd, pe, player, dl; + var fI, fJ, g3, g9, pj, pk, pl, pm, player, dl; - function pm() { + function pu() { return function() { var eD; for (eD = 0; eD < 8; eD++) - if (fI = eR(g3 * aL.random(), aL.value(100)), fJ = eR(g9 * aL.random(), aL.value(100)), pu()) return 1; + if (fI = eR(g3 * aL.random(), aL.value(100)), fJ = eR(g9 * aL.random(), aL.value(100)), q2()) return 1; return }() || function() { - var gs, gv, hY, pk, hh, pj; + var gs, gv, hY, ps, hh, pr; for (gs = eR(g3 * aL.random(), aL.value(100)), gv = eR(g9 * aL.random(), aL.value(100)), hY = 40; 1 <= hY; hY--) - for (pk = g9 - hY; 0 <= pk; pk -= 40) - for (fJ = (pk + gv) % g9, hh = 40; 1 <= hh; hh--) - for (pj = g3 - hh; 0 <= pj; pj -= 40) - if (fI = (pj + gs) % g3, pu()) return 1; + for (ps = g9 - hY; 0 <= ps; ps -= 40) + for (fJ = (ps + gv) % g9, hh = 40; 1 <= hh; hh--) + for (pr = g3 - hh; 0 <= pr; pr -= 40) + if (fI = (pr + gs) % g3, q2()) return 1; return }() } - function pu() { - for (var eg, pw, gap = eR(pb - pe, 2), px = pd + fJ * pb + gap, py = pc + fI * pb + gap, pv = px + pe - 1; px <= pv; pv--) - for (pw = py + pe - 1; py <= pw; pw--) - if (eg = a2.ps(pw, pv), !a2.eb(eg) || a2.hU(eg)) return; + function q2() { + for (var eg, q4, gap = eR(pj - pm, 2), q5 = pl + fJ * pj + gap, q6 = pk + fI * pj + gap, q3 = q5 + pm - 1; q5 <= q3; q3--) + for (q4 = q6 + pm - 1; q6 <= q4; q4--) + if (eg = a2.q0(q4, q3), !a2.eb(eg) || a2.hU(eg)) return; return 1 } - function pn(pj, pk) { - pf(), pz(pj - 2, pk - 2) + function pv(pr, ps) { + pn(), q7(pr - 2, ps - 2) } - function pf() { - h1[player] = 0, eV[player] = 0, ez[player] = q0[player] = 0, ea[player] = [], er[player] = [], es[player] = [], ev[player] = [], ht[player] = hw[player] = hs[player] = hv[player] = 0 + function pn() { + h1[player] = 0, eV[player] = 0, ez[player] = q8[player] = 0, ea[player] = [], er[player] = [], es[player] = [], ev[player] = [], ht[player] = hw[player] = hs[player] = hv[player] = 0 } - function pz(pj, pk) { - var eg, eD, q2, q3; - for (h1[player] = 1, eV[player] = player < h0 ? q1 : iS[b.hS[player - h0]], ht[player] = pj + 10, hw[player] = pk + 10, hv[player] = hs[player] = 0, q2 = pj; q2 < pj + 4; q2++) - for (q3 = pk; q3 < pk + 4; q3++)(pj < q2 && q2 < pj + 3 || pk < q3 && q3 < pk + 3) && (eg = a2.ps(q2, q3), a2.eb(eg)) && (ht[player] = q2 < ht[player] ? q2 : ht[player], hs[player] = q2 > hs[player] ? q2 : hs[player], hw[player] = q3 < - hw[player] ? q3 : hw[player], hv[player] = q3 > hv[player] ? q3 : hv[player], dl[ez[player]] = eg, ez[player]++, a2.q4(eg, player)); - for (q0[player] = ez[player], eD = ez[player] - 1; 0 <= eD; eD--) a2.q5(dl[eD], player) ? (a2.ec(dl[eD], player), er[player].push(dl[eD])) : a2.q6(dl[eD]) ? (a2.ec(dl[eD], player), es[player].push(dl[eD])) : a2.q7(dl[eD]) && (a2.ec(dl[eD], + function q7(pr, ps) { + var eg, eD, qA, qB; + for (h1[player] = 1, eV[player] = player < h0 ? q9 : iS[b.hS[player - h0]], ht[player] = pr + 10, hw[player] = ps + 10, hv[player] = hs[player] = 0, qA = pr; qA < pr + 4; qA++) + for (qB = ps; qB < ps + 4; qB++)(pr < qA && qA < pr + 3 || ps < qB && qB < ps + 3) && (eg = a2.q0(qA, qB), a2.eb(eg)) && (ht[player] = qA < ht[player] ? qA : ht[player], hs[player] = qA > hs[player] ? qA : hs[player], hw[player] = qB < + hw[player] ? qB : hw[player], hv[player] = qB > hv[player] ? qB : hv[player], dl[ez[player]] = eg, ez[player]++, a2.qC(eg, player)); + for (q8[player] = ez[player], eD = ez[player] - 1; 0 <= eD; eD--) a2.qD(dl[eD], player) ? (a2.ec(dl[eD], player), er[player].push(dl[eD])) : a2.qE(dl[eD]) ? (a2.ec(dl[eD], player), es[player].push(dl[eD])) : a2.qF(dl[eD]) && (a2.ec(dl[eD], player), ev[player].push(dl[eD])) } - function pt(pj, pk) { - for (var eg, pw, pv = pk; pk - 6 < pv; pv--) - for (pw = pj; pj - 6 < pw; pw--) - if (eg = a2.ps(pw, pv), a2.hU(eg)) return; + function q1(pr, ps) { + for (var eg, q4, q3 = ps; ps - 6 < q3; q3--) + for (q4 = pr; pr - 6 < q4; q4--) + if (eg = a2.q0(q4, q3), a2.hU(eg)) return; return 1 } this.cq = function() { - var eD, pj, pk; - if (dl = new Array(12), pe = 6, pb = 10, g3 = eR(ap.e8, pb), g9 = eR(ap.e9, pb), pc = eR(ap.e8 - pb * g3, 2), pd = eR(ap.e9 - pb * g9, 2), fa) - for (eD = 0; eD < h0; eD++) player = eD, pf(), h1[player] = 1; - if (aU.ig && aU.ih.pg) { + var eD, pr, ps; + if (dl = new Array(12), pm = 6, pj = 10, g3 = eR(ap.e8, pj), g9 = eR(ap.e9, pj), pk = eR(ap.e8 - pj * g3, 2), pl = eR(ap.e9 - pj * g9, 2), fa) + for (eD = 0; eD < h0; eD++) player = eD, pn(), h1[player] = 1; + if (aU.ig && aU.ih.po) { for (player = 0; player < ed; player++) if (1 !== h1[player]) { - if (player < pl) { + if (player < pt) { if (function() { - var pj = aU.ih.pg[player] + 1, - pk = aU.ih.pr[player] + 1; - if (3 < pj && pj < ap.e8 - 5 && 3 < pk && pk < ap.e9 - 5 && a2.eb(a2.ps(pj, pk)) && pt(pj + 3, pk + 3)) return pn(pj + 1, pk + 1), 1; + var pr = aU.ih.po[player] + 1, + ps = aU.ih.pz[player] + 1; + if (3 < pr && pr < ap.e8 - 5 && 3 < ps && ps < ap.e9 - 5 && a2.eb(a2.q0(pr, ps)) && q1(pr + 3, ps + 3)) return pv(pr + 1, ps + 1), 1; return }()) continue; - if (pm()) { - pj = pc + fI * pb + eR(pb, 2), pk = pd + fJ * pb + eR(pb, 2), pn(pj, pk); + if (pu()) { + pr = pk + fI * pj + eR(pj, 2), ps = pl + fJ * pj + eR(pj, 2), pv(pr, ps); continue } } - pf() + pn() } } else ! function() { - var pj, pk; - for (player = 0; player < ed; player++) 1 !== h1[player] && (player < pl && pm() ? (pj = pc + fI * pb + eR(pb, 2), pk = pd + fJ * pb + eR(pb, 2), pn(pj, pk)) : pf()) + var pr, ps; + for (player = 0; player < ed; player++) 1 !== h1[player] && (player < pt && pu() ? (pr = pk + fI * pj + eR(pj, 2), ps = pl + fJ * pj + eR(pj, 2), pv(pr, ps)) : pn()) }(); b1.eX[7] = ez[eU], b1.eX[8] = eV[eU] - }, this.q8 = function(hR, q9, qA) { - var eD, pj, pk, eg, fI, fJ; + }, this.qG = function(hR, qH, qI) { + var eD, pr, ps, eg, fI, fJ; for (player = hR, eD = 0; eD < 20; eD++) - for (pj = q9 + eD; q9 - eD <= pj; pj--) - for (pk = qA + eD; qA - eD <= pk; pk--) - if ((pj === q9 + eD || pj === q9 - eD || pk === qA + eD || pk === qA - eD) && 3 < pj && pj < ap.e8 - 5 && 3 < pk && pk < ap.e9 - 5 && a2.eb(a2.ps(pj, pk)) && pt(pj + 3, pk + 3)) { + for (pr = qH + eD; qH - eD <= pr; pr--) + for (ps = qI + eD; qI - eD <= ps; ps--) + if ((pr === qH + eD || pr === qH - eD || ps === qI + eD || ps === qI - eD) && 3 < pr && pr < ap.e8 - 5 && 3 < ps && ps < ap.e9 - 5 && a2.eb(a2.q0(pr, ps)) && q1(pr + 3, ps + 3)) { if (0 < ez[player]) { for (fJ = fI = eg = void 0, fI = hs[player]; fI >= ht[player]; fI--) - for (fJ = hv[player]; fJ >= hw[player]; fJ--) eg = 4 * (fJ * ap.e8 + fI), a2.qC(player, eg) && (a2.qD(eg), ez[player]--); - pf() + for (fJ = hv[player]; fJ >= hw[player]; fJ--) eg = 4 * (fJ * ap.e8 + fI), a2.qK(player, eg) && (a2.qL(eg), ez[player]--); + pn() } - return pz(pj - 1, pk - 1), !0 + return q7(pr - 1, ps - 1), !0 } return !1 - }, this.qE = function(hR) { - player = hR, pm() ? pn(pc + fI * pb + eR(pb, 2), pd + fJ * pb + eR(pb, 2)) : pf() + }, this.qM = function(hR) { + player = hR, pu() ? pv(pk + fI * pj + eR(pj, 2), pl + fJ * pj + eR(pj, 2)) : pn() } } -function qF() { - aD.qG(), gD.setTransform(h6, 0, 0, h6, 0, 0), gD.imageSmoothingEnabled = h6 < 3, gD.drawImage(ap.pB, p.je(), p.gB()), am.qH.gC(), gD.drawImage(qI, p.je(), p.gB()), aD.gC(), gD.imageSmoothingEnabled = !1, gD.setTransform(1, 0, 0, 1, 0, 0), ak.qH +function qN() { + aD.qO(), gD.setTransform(h6, 0, 0, h6, 0, 0), gD.imageSmoothingEnabled = h6 < 3, gD.drawImage(ap.pJ, p.je(), p.gB()), am.qP.gC(), gD.drawImage(qQ, p.je(), p.gB()), aD.gC(), gD.imageSmoothingEnabled = !1, gD.setTransform(1, 0, 0, 1, 0, 0), ak.qP .gC(), a6.gC(), e.gC(), (k7 ? (b5.gC(), aa) : (k.gC(), s.gC(), o.gC(), aa.gC(), aI.gC(), t.gC(), p.gC(), n.gC(), b5.gC(), r.gC(), m.gC(), j.gC(), i.gC(), u.gC(), b2.gC(), aF)).gC() } -function qJ(qK, g3, g9) { - qK.clearRect(0, 0, g3, g9), qK.fillStyle = aZ.kY, qK.fillRect(0, 0, g3, g9) +function qR(qS, g3, g9) { + qS.clearRect(0, 0, g3, g9), qS.fillStyle = aZ.kY, qS.fillRect(0, 0, g3, g9) } -function qL(qK, g3, g9, qM) { - qK.fillStyle = aZ.gE, qK.fillRect(0, 0, g3, qM), qK.fillRect(0, 0, qM, g9), qK.fillRect(g3 - qM, 0, qM, g9), qK.fillRect(0, g9 - qM, g3, qM) +function qT(qS, g3, g9, qU) { + qS.fillStyle = aZ.gE, qS.fillRect(0, 0, g3, qU), qS.fillRect(0, 0, qU, g9), qS.fillRect(g3 - qU, 0, qU, g9), qS.fillRect(0, g9 - qU, g3, qU) } -function qN(qK, fI, fJ, gG, qM, eg, qO) { - qK.fillStyle = aZ.gE; +function qV(qS, fI, fJ, gG, qU, eg, qW) { + qS.fillStyle = aZ.gE; var eg = Math.floor(gG * eg), - qQ = (eg += (eg - qM) % 2, Math.floor((eg - qM) / 2)), + qY = (eg += (eg - qU) % 2, Math.floor((eg - qU) / 2)), gG = Math.floor((gG - eg) / 2); - qK.fillRect(fI + gG, fJ + gG + qQ, eg, qM), qO && qK.fillRect(fI + gG + qQ, fJ + gG, qM, eg) + qS.fillRect(fI + gG, fJ + gG + qY, eg, qU), qW && qS.fillRect(fI + gG + qY, fJ + gG, qU, eg) } -function qS() { - this.qT = null, this.cq = function(qT) { - this.qT = qT, k.qU(this.qT) - }, this.qV = function(qW) { - var ge = (this.qT[qW].qX - this.qT[1 - qW].qX) / 10, +function qa() { + this.qb = null, this.cq = function(qb) { + this.qb = qb, k.qc(this.qb) + }, this.qd = function(qe) { + var ge = (this.qb[qe].qf - this.qb[1 - qe].qf) / 10, ge = 8 / (1 + Math.pow(2, ge / 32)), ge = Math.floor(10 * ge + .5), - qZ = this.qa(this.qT[qW].qX + ge + 1), - ge = this.qa(this.qT[1 - qW].qX - ge); - 0 === qW ? k.qc(this.qT, qZ, ge, ["rgba(10,140,10,0.75)", "rgba(140,10,10,0.75)"]) : k.qc(this.qT, ge, qZ, ["rgba(140,10,10,0.75)", "rgba(10,140,10,0.75)"]) - }, this.qa = function(qX) { - return 16e3 <= (qX = qX < 0 ? 0 : 16e3 < qX ? 16e3 : qX) ? "Unknown" : (qX / 10).toFixed(1) + qh = this.qi(this.qb[qe].qf + ge + 1), + ge = this.qi(this.qb[1 - qe].qf - ge); + 0 === qe ? k.qk(this.qb, qh, ge, ["rgba(10,140,10,0.75)", "rgba(140,10,10,0.75)"]) : k.qk(this.qb, ge, qh, ["rgba(140,10,10,0.75)", "rgba(10,140,10,0.75)"]) + }, this.qi = function(qf) { + return 16e3 <= (qf = qf < 0 ? 0 : 16e3 < qf ? 16e3 : qf) ? "Unknown" : (qf / 10).toFixed(1) } } function bL() { - this.oc = new qd, this.oe = new qe, this.cq = function() { - this.oc.cq() + this.ol = new ql, this.on = new qm, this.cq = function() { + this.ol.cq() } } -function qe() { - this.ot = function(fw) { - for (var eZ = fw.length, g3 = ab, eD = 0; eD < eZ; eD++) g3.os(16, fw.charCodeAt(eD)) +function qm() { + this.p1 = function(fw) { + for (var eZ = fw.length, g3 = ab, eD = 0; eD < eZ; eD++) g3.p0(16, fw.charCodeAt(eD)) } } -function qd() { - var qf = new Uint8Array(64); +function ql() { + var qn = new Uint8Array(64); this.cq = function() { var eD; - for (qf[0] = 45, qf[37] = 95, eD = 0; eD < 10; eD++) qf[eD + 1] = 48 + eD; - for (eD = 0; eD < 26; eD++) qf[eD + 11] = 65 + eD, qf[eD + 38] = 97 + eD - }, this.qg = function(qh) { - for (var oi = ae, oq = new Uint8Array(qh), eD = 0; eD < qh; eD++) oq[eD] = oi.mI(6); - return oq - }, this.qi = function(oq) { - for (var eZ = oq.length, qj = qf, dl = [], eD = 0; eD < eZ; eD++) dl.push(String.fromCharCode(qj[oq[eD]])); + for (qn[0] = 45, qn[37] = 95, eD = 0; eD < 10; eD++) qn[eD + 1] = 48 + eD; + for (eD = 0; eD < 26; eD++) qn[eD + 11] = 65 + eD, qn[eD + 38] = 97 + eD + }, this.qo = function(qp) { + for (var oq = ae, oy = new Uint8Array(qp), eD = 0; eD < qp; eD++) oy[eD] = oq.mI(6); + return oy + }, this.qq = function(oy) { + for (var eZ = oy.length, qr = qn, dl = [], eD = 0; eD < eZ; eD++) dl.push(String.fromCharCode(qr[oy[eD]])); return dl.join("") } } function bT() { - var qk, ql, qm; - qk = [32, 65, 191, 913, 931], ql = [64, 127, 688, 930, 1155], qm = new Array(qk.length + 1); - for (var eD = 0; eD < qm.length; eD++) { - qm[eD] = 0; - for (var hY = eD - 1; 0 <= hY; hY--) qm[eD] += ql[hY] - qk[hY] + var qs, qt, qu; + qs = [32, 65, 191, 913, 931], qt = [64, 127, 688, 930, 1155], qu = new Array(qs.length + 1); + for (var eD = 0; eD < qu.length; eD++) { + qu[eD] = 0; + for (var hY = eD - 1; 0 <= hY; hY--) qu[eD] += qt[hY] - qs[hY] } - function qs(iK) { - for (var eD = qk.length - 1; 0 <= eD; eD--) - if (iK >= qk[eD] && iK < ql[eD]) return eD; + function r0(iK) { + for (var eD = qs.length - 1; 0 <= eD; eD--) + if (iK >= qs[eD] && iK < qt[eD]) return eD; return -1 } - this.oj = function(fw) { - return 0 !== (fw = fw.trim()).indexOf("Bot ") && 0 !== fw.indexOf("[Bot] ") && function(fw, qp, qq) { + this.or = function(fw) { + return 0 !== (fw = fw.trim()).indexOf("Bot ") && 0 !== fw.indexOf("[Bot] ") && function(fw, qx, qy) { var eZ = (fw = fw.trim()).length; - if (eZ < qp || qq < eZ) return !1; - for (var iK, qr = 0, eD = 0; eD < eZ; eD++) - if (iK = fw.charCodeAt(eD), qr += 65 <= iK && iK <= 90 || 1040 <= iK && iK <= 1071 ? 1 : 0, -1 === qs(iK)) return !1; - if (3 < qr && qr > Math.floor(eZ / 2)) return !1; + if (eZ < qx || qy < eZ) return !1; + for (var iK, qz = 0, eD = 0; eD < eZ; eD++) + if (iK = fw.charCodeAt(eD), qz += 65 <= iK && iK <= 90 || 1040 <= iK && iK <= 1071 ? 1 : 0, -1 === r0(iK)) return !1; + if (3 < qz && qz > Math.floor(eZ / 2)) return !1; return !0 }(fw, 3, 20) - }, this.qt = function(fw) { + }, this.r1 = function(fw) { for (var eZ = (fw = fw.trim()).length, dl = [], eD = 0; eD < eZ; eD++) { - var iK, eg = qs(iK = fw.charCodeAt(eD)); - dl.push(qm[eg] + iK - qk[eg]) + var iK, eg = r0(iK = fw.charCodeAt(eD)); + dl.push(qu[eg] + iK - qs[eg]) } return dl - }, this.ox = function(dl) { + }, this.p5 = function(dl) { for (var iK, hh, fw = "", eZ = dl.length, eD = 0; eD < eZ; eD++) - for (hh = 1; hh < qm.length; hh++) - if (dl[eD] < qm[hh]) { - iK = qk[hh - 1] + dl[eD] - qm[hh - 1], fw += String.fromCharCode(iK); + for (hh = 1; hh < qu.length; hh++) + if (dl[eD] < qu[hh]) { + iK = qs[hh - 1] + dl[eD] - qu[hh - 1], fw += String.fromCharCode(iK); break } return fw - }, this.qu = function(fw) { - for (var dl = this.qt(fw), result = "", eD = 0; eD < dl.length; eD++) result = (result += dl[eD] < 10 ? "00" : dl[eD] < 100 ? "0" : "") + dl[eD].toString(10); + }, this.r2 = function(fw) { + for (var dl = this.r1(fw), result = "", eD = 0; eD < dl.length; eD++) result = (result += dl[eD] < 10 ? "00" : dl[eD] < 100 ? "0" : "") + dl[eD].toString(10); return result - }, this.qv = function(fw) { + }, this.r3 = function(fw) { for (var dl = new Array(Math.floor(fw.length / 3)), eD = 0; eD < fw.length; eD += 3) dl[Math.floor(eD / 3)] = parseInt(fw.substring(eD, eD + 3)); - return this.ox(dl) - }, this.qw = function(fw) { + return this.p5(dl) + }, this.r4 = function(fw) { for (var db, dl = [fw.length], eD = 0; eD < fw.length; eD++) dl[eD] = fw.charCodeAt(eD) - 48; var result = ""; for (eD = 0; eD < fw.length; eD++) eD === fw.length - 1 || 51 < 10 * dl[eD] + dl[eD + 1] ? result += dl[eD].toString() : (db = 10 * dl[eD] + dl[eD + 1], result += String.fromCharCode(db + (db < 26 ? 65 : 71)), eD++); return result - }, this.qx = function(fw) { + }, this.r5 = function(fw) { for (var iK, result = "", eD = 0; eD < fw.length; eD++) 48 <= (iK = fw.charCodeAt(eD)) && iK < 58 ? result += String.fromCharCode(iK) : 65 <= iK && iK < 75 ? result += "0" + (iK - 65).toString() : 75 <= iK && iK < 91 ? result += (iK - 65) .toString() : 97 <= iK && iK < 123 && (result += (iK - 71).toString()); return result - }, this.qy = function(fw) { + }, this.r6 = function(fw) { for (var eZ = fw.length, dl = [], eD = 0; eD < eZ; eD++)(iK = fw.charCodeAt(eD)) < 58 ? dl.push(fw[eD]) : (iK -= iK < 91 ? 65 : 71, dl.push(String(eR(iK, 10))), dl.push(String(iK - 10 * eR(iK, 10)))); var eZ = dl.length - 2, iK = 0, - oq = []; - for (eD = 0; eD < eZ; eD += 3) oq[iK++] = parseInt(dl[eD] + dl[eD + 1] + dl[eD + 2]); - return oq - }, this.qz = function() { - for (var gP, r0 = "", eD = 0; eD < 6; eD++) gP = 48 + aL.random() % 36, gP += 58 <= gP ? 39 : 0, r0 += String.fromCharCode(gP); - return r0 + oy = []; + for (eD = 0; eD < eZ; eD += 3) oy[iK++] = parseInt(dl[eD] + dl[eD + 1] + dl[eD + 2]); + return oy + }, this.r7 = function() { + for (var gP, r8 = "", eD = 0; eD < 6; eD++) gP = 48 + aL.random() % 36, gP += 58 <= gP ? 39 : 0, r8 += String.fromCharCode(gP); + return r8 } } function cS() { - this.r1 = new r2, this.iw = new r3, this.cq = function() { + this.r9 = new rA, this.iw = new rB, this.cq = function() { this.iw.cq() } } -function r2() { - function r5() { - if (2 === rG) return 1; - aI.rH(), rG = 2, rI = rJ +function rA() { + function rD() { + if (2 === rO) return 1; + aI.rP(), rO = 2, rQ = rR } - function r8() { - k.rK(!0), s.j4(!0), t.j4(!0), aI.j4(), aa.rL(), fL && b3.rM.rN(), b3.d1 = !0, ay.rO(), b7.cv.setState(0) + function rG() { + k.rS(!0), s.j4(!0), t.j4(!0), aI.j4(), aa.rT(), fL && b3.rU.rV(), b3.d1 = !0, ay.rW(), b7.cv.setState(0) } - this.r4 = function() { - r5() || (aW.fN.mD(), k.r6(247, 0), k.r7(0, 59), f.kC(2700), u.show(!1, !1, !0), r8()) - }, this.r9 = function(rA) { + this.rC = function() { + rD() || (aW.fN.mD(), k.rE(247, 0), k.rF(0, 59), f.kC(2700), u.show(!1, !1, !0), rG()) + }, this.rH = function(rI) { var mA = 0, - rB = !1; - r5() || (8 === ij ? ((rB = (mA = rA < 0 ? ez[0] >= ez[1] ? 0 : 1 : rA) === eU) ? k.r7(mA, 2) : k.r7(1 - eU, 3), rC.qV(mA), aW.fN.m9(mA)) : hL ? (rB = b4.iL[eU] === b5.rD(), 9 === ij ? (aW.fN.m9(rB ? jE[0] : 512), k.rE(rB)) : ao.iw.i5( - rB)) : (rB = (mA = jE[0]) === eU, k.rF(mA), aW.fN.m9(mA)), u.show(rB, !1), r8()) + rJ = !1; + rD() || (8 === ij ? ((rJ = (mA = rI < 0 ? ez[0] >= ez[1] ? 0 : 1 : rI) === eU) ? k.rF(mA, 2) : k.rF(1 - eU, 3), rK.qd(mA), aW.fN.m9(mA)) : hL ? (rJ = b4.iL[eU] === b5.rL(), 9 === ij ? (aW.fN.m9(rJ ? jE[0] : 512), k.rM(rJ)) : ao.iw.i5( + rJ)) : (rJ = (mA = jE[0]) === eU, k.rN(mA), aW.fN.m9(mA)), u.show(rJ, !1), rG()) } } -function r3() { - var rP; +function rB() { + var rX; - function rj(rR, eh) { - for (var fw = "", eD = eh; eD < rR.length && eD < eh + 4; eD++) fw += (eD === eh ? "" : " ") + "[" + b4.rb[rR[eD].id] + "]: " + rR[eD].rg.toFixed(Math.max(Math.floor(3 - Math.log10(rR[eD].rg)), 0)); - fw.length && k.ri(0, fw, 45, 0, aY.fy.kT(225, 240, 255), aZ.kY, -1, !1) + function rr(rZ, eh) { + for (var fw = "", eD = eh; eD < rZ.length && eD < eh + 4; eD++) fw += (eD === eh ? "" : " ") + "[" + b4.rj[rZ[eD].id] + "]: " + rZ[eD].ro.toFixed(Math.max(Math.floor(3 - Math.log10(rZ[eD].ro)), 0)); + fw.length && k.rq(0, fw, 45, 0, aY.fy.kT(225, 240, 255), aZ.kY, -1, !1) } - this.rQ = 0, this.rR = null, this.cq = function() { - rP = 0, this.rQ = 0, this.rR = null - }, this.i5 = function(rB) { - var rS = b4.rT[b5.rU()]; - this.rQ = b5.rV(), this.rR = function(rS, rQ) { + this.rY = 0, this.rZ = null, this.cq = function() { + rX = 0, this.rY = 0, this.rZ = null + }, this.i5 = function(rJ) { + var ra = b4.rb[b5.rc()]; + this.rY = b5.rd(), this.rZ = function(ra, rY) { var eD, hh, eZ, iL = b4.iL, - rT = b4.rT, rb = b4.rb, - rc = b4.rc, - rd = ez, - re = h0, - rf = [], + rj = b4.rj, + rk = b4.rk, + rl = ez, + rm = h0, + rn = [], fx = 0; - for (hh = rb.length - 1; 0 <= hh; hh--) - if (rT[iL[rc[hh][0]]] === rS) { - for (rf.push({ + for (hh = rj.length - 1; 0 <= hh; hh--) + if (rb[iL[rk[hh][0]]] === ra) { + for (rn.push({ id: hh, - rd: 0, - player: rc[hh][0], - rg: 0 - }), eZ = rc[hh].length, eD = 0; eD < eZ; eD++) rf[fx].rd += rd[rc[hh][eD]]; - for (rf[fx].rg = (1 + rh) * re * rf[fx].rd / rQ, eD = 0; eD < fx; eD++) - if (rf[fx].rd > rf[eD].rd) { - rf.splice(eD, 0, rf[fx]), rf.pop(); + rl: 0, + player: rk[hh][0], + ro: 0 + }), eZ = rk[hh].length, eD = 0; eD < eZ; eD++) rn[fx].rl += rl[rk[hh][eD]]; + for (rn[fx].ro = (1 + rp) * rm * rn[fx].rl / rY, eD = 0; eD < fx; eD++) + if (rn[fx].rl > rn[eD].rl) { + rn.splice(eD, 0, rn[fx]), rn.pop(); break } fx++ - } 8 < rf.length && (rf.length = 8); - for (; 0 < rf.length && 0 === rf[rf.length - 1].rd;) rf.pop(); - return rf - }(rS, this.rQ), n.rX("Team " + b4.fs[rS], 2, 1, 12), - function(rB, rS) { + } 8 < rn.length && (rn.length = 8); + for (; 0 < rn.length && 0 === rn[rn.length - 1].rl;) rn.pop(); + return rn + }(ra, this.rY), n.rf("Team " + b4.fs[ra], 2, 1, 12), + function(rJ, ra) { var color; - rB = rB ? (color = aY.fy.kT(10, 220, 10), "Congratulations! Team " + b4.fs[rS] + " won the game!") : (color = aY.fy.kT(200, 80, 80), "Our alliance was defeated! Team " + b4.fs[rS] + " won the game."); - k.ri(0, rB, 40, 0, color, aZ.kY, -1, !1) - }(rB, rS), 0 !== (rB = this.rR).length && (k.ri(0, "The allied clans of the winning team have earned these glorious points:", 40, 0, aZ.gE, aZ.kY, -1, !1), rj(rB, 0), rj(rB, 4)), aW.fN.mF(), f.kC(2700) + rJ = rJ ? (color = aY.fy.kT(10, 220, 10), "Congratulations! Team " + b4.fs[ra] + " won the game!") : (color = aY.fy.kT(200, 80, 80), "Our alliance was defeated! Team " + b4.fs[ra] + " won the game."); + k.rq(0, rJ, 40, 0, color, aZ.kY, -1, !1) + }(rJ, ra), 0 !== (rJ = this.rZ).length && (k.rq(0, "The allied clans of the winning team have earned these glorious points:", 40, 0, aZ.gE, aZ.kY, -1, !1), rr(rJ, 0), rr(rJ, 4)), aW.fN.mF(), f.kC(2700) }, this.ix = function() { - 2 === rG && -1 !== rP && (0 === rP ? rP = this.rR && 0 !== this.rR.length ? b3.dY + 8e3 : -1 : b3.dY < rP || (rP = -1, k.ri(255, "Clan rankings and results can also be accessed under:", 735, 0, aZ.gE, aZ.kY, -1, !1), k.ri(255, - "territorial.io/clans", 736, 0, aZ.gE, aZ.kY, -1, !1), k.ri(255, "territorial.io/clan-results", 736, 0, aZ.gE, aZ.kY, -1, !1))) + 2 === rO && -1 !== rX && (0 === rX ? rX = this.rZ && 0 !== this.rZ.length ? b3.dY + 8e3 : -1 : b3.dY < rX || (rX = -1, k.rq(255, "Clan rankings and results can also be accessed under:", 735, 0, aZ.gE, aZ.kY, -1, !1), k.rq(255, + "territorial.io/clans", 736, 0, aZ.gE, aZ.kY, -1, !1), k.rq(255, "territorial.io/clan-results", 736, 0, aZ.gE, aZ.kY, -1, !1))) } } function cY() { - this.id = 0, this.dc = 0, this.oR = null, this.oS = null, this.oT = null, this.oU = null, this.cv = new rk, this.cq = function() { + this.id = 0, this.dc = 0, this.oS = null, this.oT = null, this.oU = null, this.oV = null, this.cv = new rs, this.cq = function() { var self, dc; - self = this, "undefined" == typeof Android || (dc = Android.getVersion()) < 12 || (self.dc = dc, self.id = 1, self.oS = Android), + self = this, "undefined" == typeof Android || (dc = Android.getVersion()) < 12 || (self.dc = dc, self.id = 1, self.oT = Android), function(self) { var dc; - "undefined" != typeof mwIOSdataX && window.webkit && window.webkit.messageHandlers && window.webkit.messageHandlers.iosCommandA && (self.id = 2, self.oT = mwIOSdataX, self.oU = window.webkit.messageHandlers.iosCommandA, dc = self - .oT.version, self.dc = dc ? Number(dc) : 0) + "undefined" != typeof mwIOSdataX && window.webkit && window.webkit.messageHandlers && window.webkit.messageHandlers.iosCommandA && (self.id = 2, self.oU = mwIOSdataX, self.oV = window.webkit.messageHandlers.iosCommandA, dc = self + .oU.version, self.dc = dc ? Number(dc) : 0) }(this), function(self) { - var oR; + var oS; if (0 === self.id) { try { - if (!(oR = window.localStorage)) return; - oR.setItem("tls7", "1"), oR.removeItem("tls7") + if (!(oS = window.localStorage)) return; + oS.setItem("tls7", "1"), oS.removeItem("tls7") } catch (error) { return } - self.oR = oR + self.oS = oS } }(this) } } -function rk() { - this.ro = function() { - b9.na.ob(), 0 === x.rp() && (y.get().value = b9.dG.data[100].value), 0 === b7.id ? b7.oR && b7.oR.clear() : 1 === b7.id ? b7.oS.saveString(199, "") : 2 === b7.id && b7.oU.postMessage("clear") - }, this.rq = function() { - 2 === b7.id ? b7.oU.postMessage("showConsentForm") : 1 === b7.id ? b7.oS.setState(7) : at.dI.showCMPScreen() - }, this.rr = function() { - this.setState(14) - }, this.rs = function() { - var rt; - return 2 === b7.id && 0 === b7.dc && "string" == typeof(rt = b7.oT.username) ? rt : b9.dG.data[100].value - }, this.ru = function() { - var fw = b9.dG.oN(101), - max = ("string" != typeof(fw = "" === fw ? function() { - { - if (2 === b7.id) return b7.oT.password; - if (1 === b7.id) return 12 <= b7.dc ? b7.oS.loadString(22) : "" - } - return a3.rx(9) - }() : fw) && (fw = ""), Math.floor(Math.pow(2, 48))), - rw = Math.floor(parseInt(h.qx(fw))); - return 0 < rw && rw < max ? b9.dG.dH(101, fw) : (rw = Math.floor(1 + (max - 1) * Math.random()), b9.dG.dH(101, fw)), rw - }, this.ft = function() { - return 1 === b9.dG.oM(2) +function rs() { + this.rw = function() { + b9.na.ok(), 0 === x.rx() && (y.get().value = b9.dG.data[100].value), 0 === b7.id ? b7.oS && b7.oS.clear() : 1 === b7.id ? b7.oT.saveString(199, "") : 2 === b7.id && b7.oV.postMessage("clear") }, this.ry = function() { - for (var fw = "", eD = 0; eD < az.mo; eD += 2) fw += az.rz[eD] || az.rz[eD + 1] ? az.rz[eD] && !az.rz[eD + 1] ? "1" : !az.rz[eD] && az.rz[eD + 1] ? "2" : "3" : "0"; - b9.dG.dH(102, fw) - }, this.setState = function(dX) { - 1 === b7.id && 5 <= b7.dc && b7.oS.setState(dX) + 2 === b7.id ? b7.oV.postMessage("showConsentForm") : 1 === b7.id ? b7.oT.setState(7) : at.dI.showCMPScreen() + }, this.rz = function() { + this.setState(14) }, this.s0 = function() { var s1; - 1 === b7.id && 7 <= b7.dc ? b7.oS.setState(5) : ((s1 = new URL(window.location)).searchParams.set("v", "" + Math.floor(1e3 * Math.random())), window.location.href = s1.toString()) + return 2 === b7.id && 0 === b7.dc && "string" == typeof(s1 = b7.oU.username) ? s1 : b9.dG.data[100].value + }, this.s2 = function() { + var fw = b9.dG.oO(101), + max = ("string" != typeof(fw = "" === fw ? function() { + { + if (2 === b7.id) return b7.oU.password; + if (1 === b7.id) return 12 <= b7.dc ? b7.oT.loadString(22) : "" + } + return a3.s5(9) + }() : fw) && (fw = ""), Math.floor(Math.pow(2, 48))), + s4 = Math.floor(parseInt(h.r5(fw))); + return 0 < s4 && s4 < max ? b9.dG.dH(101, fw) : (s4 = Math.floor(1 + (max - 1) * Math.random()), b9.dG.dH(101, fw)), s4 + }, this.ft = function() { + return 1 === b9.dG.oN(2) + }, this.s6 = function() { + for (var fw = "", eD = 0; eD < az.mo; eD += 2) fw += az.s7[eD] || az.s7[eD + 1] ? az.s7[eD] && !az.s7[eD + 1] ? "1" : !az.s7[eD] && az.s7[eD + 1] ? "2" : "3" : "0"; + b9.dG.dH(102, fw) + }, this.setState = function(dX) { + 1 === b7.id && 5 <= b7.dc && b7.oT.setState(dX) + }, this.s8 = function() { + var s9; + 1 === b7.id && 7 <= b7.dc ? b7.oT.setState(5) : ((s9 = new URL(window.location)).searchParams.set("v", "" + Math.floor(1e3 * Math.random())), window.location.href = s9.toString()) }, this.cw = function() { - 1 !== b7.id || b7.dc < 17 || b7.oS.saveString(23, document.documentElement.outerHTML) + 1 !== b7.id || b7.dc < 17 || b7.oT.saveString(23, document.documentElement.outerHTML) }, this.dM = function() { - 0 === b7.id ? at.dI.cq() : 1 === b7.id ? b7.oS.prepareAd("1688441405") : 2 === b7.id && (0 === b7.dc ? b7.oU.postMessage("prepare ad 4500876070") : b7.oU.postMessage("loadAds 4500876070")) + 0 === b7.id ? at.dI.cq() : 1 === b7.id ? b7.oT.prepareAd("1688441405") : 2 === b7.id && (0 === b7.dc ? b7.oV.postMessage("prepare ad 4500876070") : b7.oV.postMessage("loadAds 4500876070")) }, this.da = function(dZ) { - return 0 === b7.id ? !!at.dI.dV() : 1 === b7.id ? 12 <= b7.dc && (b7.oS.presentAd(dZ), !0) : 2 === b7.id && (0 === b7.dc ? b7.oU.postMessage("show ad " + dZ) : b7.oU.postMessage("showAd"), !0) + return 0 === b7.id ? !!at.dI.dV() : 1 === b7.id ? 12 <= b7.dc && (b7.oT.presentAd(dZ), !0) : 2 === b7.id && (0 === b7.dc ? b7.oV.postMessage("show ad " + dZ) : b7.oV.postMessage("showAd"), !0) }, this.d4 = function() { - 2 === b7.id && b7.dc < 23 && ar.oY(4, 1, new s2("App Update Required", "A new iOS app version with bug fixes has been published.
Please download the new Territorial.io app version for iOS:
" + - ah.s3 + "", !0, [new nK("❌ " + aV.nZ[92], function() { - ar.oY(0) + 2 === b7.id && b7.dc < 23 && ar.oh(4, 1, new sA("App Update Required", "A new iOS app version with bug fixes has been published.
Please download the new Territorial.io app version for iOS:
" + + ah.sB + "", !0, [new nK("❌ " + aV.nZ[92], function() { + ar.oh(0) }, aZ.l6)])) } } function cn() { - function sG(title, sI, dE) { - sB(dE), ar.oY(4, 0, new s2("⚠️ " + title, sI, !0)) + function sO(title, sQ, dE) { + sJ(dE), ar.oh(4, 0, new sA("⚠️ " + title, sQ, !0)) } - function sB(dE) { + function sJ(dE) { ! function(dE) { - var dX = x.rp(); - 0 === dX ? a0.sK() : 6 === dX ? aN.iv.sL(dE) : 7 === dX ? (aG.sK(), aN.iv.close(aN.iv.sD, 3240)) : 8 === dX && (sM(!0), a0.sK()) + var dX = x.rx(); + 0 === dX ? a0.sS() : 6 === dX ? aN.iv.sT(dE) : 7 === dX ? (aG.sS(), aN.iv.close(aN.iv.sL, 3240)) : 8 === dX && (sU(!0), a0.sS()) }(dE), a0.cq(), b3.d1 = !0 } - this.s4 = function(s5, dE) { - if (8 === ar.s6) return ar.s7().s8(dE) ? void 0 : void ar.oY(4, 5, new s2("⚠️ " + aV.s9(64), aV.sA(dE), !0)); - var dX = x.rp(); + this.sC = function(sD, dE) { + if (8 === ar.sE) return ar.sF().sG(dE) ? void 0 : void ar.oh(4, 0, new sA("⚠️ " + aV.sH(64), aV.sI(dE), !0)); + var dX = x.rx(); if (6 === dX) { - if (4211 === dE) return sB(dE), void ar.oY(4, 0, new s2("🚀 " + aV.nZ[122], aV.nZ[123], !0, [new nK("❌ " + aV.nZ[92], function() { - ar.oY(0) + if (4211 === dE) return sJ(dE), void ar.oh(4, 0, new sA("🚀 " + aV.nZ[122], aV.nZ[123], !0, [new nK("❌ " + aV.nZ[92], function() { + ar.oh(0) }, aZ.l6), new nK("🔄 " + aV.nZ[124], function() { - b7.cv.s0() + b7.cv.s8() }, aZ.ks)])); - if (4214 !== dE) return void w.sC(s5) + if (4214 !== dE) return void w.sK(sD) } else { - if (7 !== dX) return 8 === dX ? void(s5 !== aN.iv.sE || il || k.sF(aV.sA(dE))) : void 0; - if (s5 !== aN.iv.sD) return + if (7 !== dX) return 8 === dX ? void(sD !== aN.iv.sM || il || k.sN(aV.sI(dE))) : void 0; + if (sD !== aN.iv.sL) return } - sG(aV.s9(64), aV.sA(dE), dE) - }, this.sH = function(dE) { - 8 === x.rp() ? k.sF(aV.sA(dE)) : sG(aV.s9(64), aV.sA(dE)) + sO(aV.sH(64), aV.sI(dE), dE) + }, this.sP = function(dE) { + 8 === x.rx() ? k.sN(aV.sI(dE)) : sO(aV.sH(64), aV.sI(dE), dE) } } function bF() { - var sN, sO; + var sV, sW; - function sP() { + function sX() { var g3 = new cJ; - g3.d2(1612), g3.os(1, 0), g3.os(6, 7), g3.os(2, 2 === b7.id ? 2 : 12 <= b7.dc ? 1 : 0 < b7.dc ? 3 : 0), g3.os(1, d9 ? 1 : 0), g3.os(1, dB ? 1 : 0), g3.os(1, a.d5); - for (let eD = 0; eD < sO.length && eD < 100; eD++) g3.os(16, sO.charCodeAt(eD)); - sN.send(g3.mH), sN.onopen = null + g3.d2(1612), g3.p0(1, 0), g3.p0(6, 7), g3.p0(2, b7 ? b7.id : 3), g3.p0(1, d9 ? 1 : 0), g3.p0(1, dB ? 1 : 0), g3.p0(1, a ? a.d5 : 0); + for (let eD = 0; eD < sW.length && eD < 100; eD++) g3.p0(16, sW.charCodeAt(eD)); + sV.send(g3.mH), sY() + } + + function sY() { + sV && (sV.onclose = null, sV.onopen = null, sV = null) } window.addEventListener("error", function error(dE) { window.removeEventListener("error", error); return alert("Error:\n" + dE.filename + " " + dE.lineno + " " + dE.colno + " " + dE.message); - window.removeEventListener("error", error), sO = dE.lineno + " " + dE.colno + " " + dE.message, (sN = new WebSocket("wss://territorial.io/s52/")).onopen = sP, 0 === dE.lineno && 0 === dE.colno || (b7.oS ? b7.oS.showToast(sO) : alert( - sO)) + window.removeEventListener("error", error), sW = dE.lineno + " " + dE.colno + " " + dE.message, (sV = new WebSocket("wss://territorial.io/s52/")).onopen = sX, sV.onclose = function() { + sY() + }, 0 === dE.lineno && 0 === dE.colno || (b7 && 1 === b7.id ? b7.oT.showToast(sW) : alert(sW)) }) } function cM() { - var sQ, sR, sS = -15e3, - sT = !1; + var sZ, sa, sb = -15e3, + sc = !1; function g6(dE) { - sm() || (sT = !0, sn(dE, 1), aN.iv.so(aN.iv.sE), sp(Math.floor(aK.nE * dE.clientX), Math.floor(aK.nE * dE.clientY))) - } - - function sb(dE) { - sS = b3.dY, sn(dE, 1), aN.iv.so(aN.iv.sE), 0 < dE.touches.length && (sQ = Math.floor(aK.nE * dE.touches[0].clientX), sR = Math.floor(aK.nE * dE.touches[0].clientY), aE.sb(dE) || sp(sQ, sR)) - } - - function sp(fI, fJ) { - 0 === rG ? x.g6(fI, fJ) : aa.sq(fI, fJ) || b2.g6(fI, fJ) || u.g6(fI, fJ) || i.sr(fI, fJ) || m.g6(fI, fJ) || j.g6(fI, fJ) || ag.ss(fI, fJ) || aI.g6(fI, fJ) || i.st(fI, fJ) - } - - function sX(dE) { - sm() || (sT = !0, sn(dE, 1), su(Math.floor(aK.nE * dE.clientX), Math.floor(aK.nE * dE.clientY))) - } - - function sc(dE) { - sS = b3.dY, sn(dE, 1), 0 < dE.touches.length && (sQ = Math.floor(aK.nE * dE.touches[0].clientX), sR = Math.floor(aK.nE * dE.touches[0].clientY), aE.sc(dE) || su(sQ, sR)) - } - - function su(fI, fJ) { - 0 === rG ? x.sX(fI, fJ) : (aq.fH(fI, fJ), b2.sX(fI, fJ) || (j.sX(fI, fJ), i.sv() ? i.sX(fI, fJ) : o.sw ? o.sX(fI, fJ) && (b3.d1 = !0) : (s.sX(fI, fJ), p.k8 && p.sX(fI, fJ) && (b3.d1 = !0)))) - } - - function sZ(dE) { - sm() || (sn(dE, 1), 0 === rG ? (x.click(-1024, -1024), q.sx()) : (s.sy(-1024, -1024), j.sX(-1024, -1024), o.sz(), p.k8 && (p.k8 = !1))) - } - - function sY(dE) { - sm() || (sn(dE, 1), t0(Math.floor(aK.nE * dE.clientX), Math.floor(aK.nE * dE.clientY), 2 === dE.button)) - } - - function click(dE) { - sm() || sn(dE, 1) - } - - function sd(dE) { - sS = b3.dY, sn(dE, 1), dE && dE.touches && 0 < dE.touches.length && 0 !== rG ? p.k8 = !1 : aE.t1() || t0(sQ, sR, !1) - } - - function se(dE) { - sS = b3.dY, sn(dE, 1), t0(sQ, sR, !1) - } - - function sf(dE) { - aT.sf(dE) - } - - function sg(dE) { - aT.sg(dE) - } - - function sh(dE) { - sm() || sn(dE, 0) - } - - function t0(fI, fJ, t2) { - 0 === rG ? x.click(fI, fJ) : (s.sy(fI, fJ), b2.sy(), o.sz(), p.k8 = !1, i.click(fI, fJ, t2) && (b3.d1 = !0)) - } - - function sa(dE) { - var fI, fJ, deltaY; - sm() || (sn(dE, 1), aN.iv.so(aN.iv.sE), fI = Math.floor(aK.nE * dE.clientX), fJ = Math.floor(aK.nE * dE.clientY), deltaY = dE.deltaY, 1 === dE.deltaMode && (deltaY *= 16), 0 === rG ? x.sa(fI, fJ, deltaY) : s.sa(fI, fJ, deltaY) || (o.t3(fI, - fJ) ? o.sa(deltaY) && (b3.d1 = !0) : p.sa(fI, fJ, +deltaY))) - } - - function si(dE) { - sn(dE, 0) - } - - function sn(dE, id) { - 0 === id && (av.sv || y.sv || ar.sv()) || 1 === id && y.t4 || (id = window.innerWidth / document.documentElement.clientWidth) < .999 || 1.001 < id || 0 !== x.rp() && dE.preventDefault() + sv() || (sc = !0, sw(dE, 1), aN.iv.sx(aN.iv.sM), sy(Math.floor(aK.nE * dE.clientX), Math.floor(aK.nE * dE.clientY))) } function sk(dE) { - if (keybindHandler(dE.key)) return; - sm() || ("ArrowLeft" === dE.key ? aB.t6(3) : "ArrowUp" === dE.key ? aB.t6(0) : "ArrowRight" === dE.key ? aB.t6(1) : "ArrowDown" === dE.key ? aB.t6(2) : "a" === dE.key ? o.t7(.9375) : "d" === dE.key ? o.t7(16 / 15) : "s" === dE.key ? o.t7(7 / - 8) : "w" === dE.key ? o.t7(8 / 7) : "1" === dE.key ? o.t7(.75) : "2" === dE.key ? o.t7(7 / 8) : "3" === dE.key ? o.t7(.9375) : "4" === dE.key ? o.t7(31 / 32) : "5" === dE.key ? o.t7(32 / 31) : "6" === dE.key ? o.t7(16 / 15) : - "7" === dE.key ? o.t7(8 / 7) : "8" === dE.key ? o.t7(4 / 3) : "+" === dE.key ? 0 !== rG && p.sa(Math.floor(aK.g3 / 2), Math.floor(aK.g9 / 2), -200) : "-" === dE.key ? 0 !== rG && p.sa(Math.floor(aK.g3 / 2), Math.floor(aK.g9 / 2), - 200) : "c" === dE.key ? 0 !== rG && b2.t8() : " " === dE.key && rG && aq.fK()) + sb = b3.dY, sw(dE, 1), aN.iv.sx(aN.iv.sM), 0 < dE.touches.length && (sZ = Math.floor(aK.nE * dE.touches[0].clientX), sa = Math.floor(aK.nE * dE.touches[0].clientY), aE.sk(dE) || sy(sZ, sa)) + } + + function sy(fI, fJ) { + 0 === rO ? x.g6(fI, fJ) : aa.sz(fI, fJ) || b2.g6(fI, fJ) || u.g6(fI, fJ) || i.t0(fI, fJ) || m.g6(fI, fJ) || j.g6(fI, fJ) || ag.t1(fI, fJ) || aI.g6(fI, fJ) || i.t2(fI, fJ) + } + + function sg(dE) { + sv() || (sc = !0, sw(dE, 1), t3(Math.floor(aK.nE * dE.clientX), Math.floor(aK.nE * dE.clientY))) + } + + function sl(dE) { + sb = b3.dY, sw(dE, 1), 0 < dE.touches.length && (sZ = Math.floor(aK.nE * dE.touches[0].clientX), sa = Math.floor(aK.nE * dE.touches[0].clientY), aE.sl(dE) || t3(sZ, sa)) + } + + function t3(fI, fJ) { + 0 === rO ? x.sg(fI, fJ) : (aq.fH(fI, fJ), b2.sg(fI, fJ) || (j.sg(fI, fJ), i.t4() ? i.sg(fI, fJ) : o.t5 ? o.sg(fI) && (b3.d1 = !0) : (s.sg(fI, fJ), p.k8 && p.sg(fI, fJ) && (b3.d1 = !0)))) + } + + function si(dE) { + sv() || (sw(dE, 1), 0 === rO ? (x.click(-1024, -1024), q.t6()) : (s.t7(-1024, -1024), j.sg(-1024, -1024), o.t8(), p.k8 && (p.k8 = !1))) + } + + function sh(dE) { + sv() || (sw(dE, 1), t9(Math.floor(aK.nE * dE.clientX), Math.floor(aK.nE * dE.clientY), 2 === dE.button)) + } + + function click(dE) { + sv() || sw(dE, 1) + } + + function sm(dE) { + sb = b3.dY, sw(dE, 1), dE && dE.touches && 0 < dE.touches.length && 0 !== rO ? p.k8 = !1 : aE.tA() || t9(sZ, sa, !1) + } + + function sn(dE) { + sb = b3.dY, sw(dE, 1), t9(sZ, sa, !1) + } + + function so(dE) { + aT.so(dE) + } + + function sp(dE) { + aT.sp(dE) + } + + function sq(dE) { + sv() || sw(dE, 0) + } + + function t9(fI, fJ, tB) { + 0 === rO ? x.click(fI, fJ) : (s.t7(fI, fJ), b2.t7(), o.t8(), p.k8 = !1, i.click(fI, fJ, tB) && (b3.d1 = !0)) } function sj(dE) { - sm() || b3.dY < 400 || ar.t9(dE) || (8 !== x.rp() && x.t9(dE) ? b3.d1 = !0 : "Escape" === dE.key ? x.dd() : "ArrowLeft" === dE.key || "a" === dE.key ? aB.tA(3) : "ArrowUp" === dE.key || "w" === dE.key ? aB.tA(0) : "ArrowRight" === dE.key || - "d" === dE.key ? aB.tA(1) : "ArrowDown" === dE.key || "s" === dE.key ? aB.tA(2) : "h" === dE.key ? 1 <= rG && aa.tB(!k7) : " " === dE.key && rG && (j.fM && j.tC(), fL) && aa.tD(!1)) + var fI, fJ, deltaY; + sv() || (sw(dE, 1), aN.iv.sx(aN.iv.sM), fI = Math.floor(aK.nE * dE.clientX), fJ = Math.floor(aK.nE * dE.clientY), deltaY = dE.deltaY, 1 === dE.deltaMode && (deltaY *= 16), 0 === rO ? x.sj(fI, fJ, deltaY) : s.sj(fI, fJ, deltaY) || (o.tC(fI, + fJ) ? o.sj(deltaY) && (b3.d1 = !0) : p.sj(fI, fJ, +deltaY))) } - function sl() { - "hidden" === document.visibilityState ? 1 === rG && (fL ? aa.tD(!1) : !il || j.fM || fa || j.tC()) : b3.d1 = !0 + function sr(dE) { + sw(dE, 0) } - function sm() { - return sS + 15e3 > b3.dY + function sw(dE, id) { + 0 === id && (av.t4 || y.t4 || ar.t4()) || 1 === id && y.tD || (id = window.innerWidth / document.documentElement.clientWidth) < .999 || 1.001 < id || 0 !== x.rx() && dE.preventDefault() + } + + function st(dE) { + if (keybindHandler(dE.key)) return; + sv() || ("ArrowLeft" === dE.key ? aB.tF(3) : "ArrowUp" === dE.key ? aB.tF(0) : "ArrowRight" === dE.key ? aB.tF(1) : "ArrowDown" === dE.key ? aB.tF(2) : "a" === dE.key ? o.tG(.9375) : "d" === dE.key ? o.tG(16 / 15) : "s" === dE.key ? o.tG(7 / + 8) : "w" === dE.key ? o.tG(8 / 7) : "1" === dE.key ? o.tG(.75) : "2" === dE.key ? o.tG(7 / 8) : "3" === dE.key ? o.tG(.9375) : "4" === dE.key ? o.tG(31 / 32) : "5" === dE.key ? o.tG(32 / 31) : "6" === dE.key ? o.tG(16 / 15) : + "7" === dE.key ? o.tG(8 / 7) : "8" === dE.key ? o.tG(4 / 3) : "+" === dE.key ? 0 !== rO && p.sj(Math.floor(aK.g3 / 2), Math.floor(aK.g9 / 2), -200) : "-" === dE.key ? 0 !== rO && p.sj(Math.floor(aK.g3 / 2), Math.floor(aK.g9 / 2), + 200) : "c" === dE.key ? 0 !== rO && b2.tH() : " " === dE.key && rO && aq.fK()) + } + + function ss(dE) { + sv() || b3.dY < 400 || ar.tI(dE) || (8 !== x.rx() && x.tI(dE) ? b3.d1 = !0 : "Escape" === dE.key ? x.dd() : "ArrowLeft" === dE.key || "a" === dE.key ? aB.tJ(3) : "ArrowUp" === dE.key || "w" === dE.key ? aB.tJ(0) : "ArrowRight" === dE.key || + "d" === dE.key ? aB.tJ(1) : "ArrowDown" === dE.key || "s" === dE.key ? aB.tJ(2) : "h" === dE.key ? 1 <= rO && aa.tK(!k7) : " " === dE.key && rO && (j.fM && j.tL(), fL) && aa.tM(!1)) + } + + function su() { + "hidden" === document.visibilityState ? 1 === rO && (fL ? aa.tM(!1) : !il || j.fM || fa || j.tL()) : b3.d1 = !0 + } + + function sv() { + return sb + 15e3 > b3.dY } function resize() { - aK.tG() + aK.tP() } - this.sU = 0, this.sV = "", this.cq = function() { - sW.addEventListener("mousedown", g6, { + this.sd = 0, this.se = "", this.cq = function() { + sf.addEventListener("mousedown", g6, { passive: !1 - }), sW.addEventListener("mousemove", sX, { + }), sf.addEventListener("mousemove", sg, { passive: !1 - }), sW.addEventListener("mouseup", sY, { + }), sf.addEventListener("mouseup", sh, { passive: !1 - }), sW.addEventListener("click", click, { + }), sf.addEventListener("click", click, { passive: !1 - }), sW.addEventListener("mouseleave", sZ, { + }), sf.addEventListener("mouseleave", si, { passive: !1 - }), sW.addEventListener("wheel", sa, { + }), sf.addEventListener("wheel", sj, { passive: !1 - }), sW.addEventListener("touchstart", sb, { + }), sf.addEventListener("touchstart", sk, { passive: !1 - }), sW.addEventListener("touchmove", sc, { + }), sf.addEventListener("touchmove", sl, { passive: !1 - }), sW.addEventListener("touchend", sd, { + }), sf.addEventListener("touchend", sm, { passive: !1 - }), sW.addEventListener("touchcancel", se, { + }), sf.addEventListener("touchcancel", sn, { passive: !1 - }), sW.addEventListener("dragover", sf), sW.addEventListener("drop", sg), sW.addEventListener("dblclick", sh), document.addEventListener("contextmenu", si), document.addEventListener("keyup", sj), document.addEventListener("keydown", - sk), document.addEventListener("visibilitychange", sl), window.addEventListener("resize", resize) - }, this.ss = function(fI, fJ) { + }), sf.addEventListener("dragover", so), sf.addEventListener("drop", sp), sf.addEventListener("dblclick", sq), document.addEventListener("contextmenu", sr), document.addEventListener("keyup", ss), document.addEventListener("keydown", + st), document.addEventListener("visibilitychange", su), window.addEventListener("resize", resize) + }, this.t1 = function(fI, fJ) { return !!aa.g6(fI, fJ) || !!(s.g6(fI, fJ) || p.g6(fI, fJ) || o.g6(fI, fJ) || k.g6(fI, fJ)) - }, this.tE = sm, this.tF = function() { - return !sT || 0 < sS + }, this.tN = sv, this.tO = function() { + return !sc || 0 < sb } } function bJ() { - this.fy = new tH, this.pD = new tI, this.fN = new tJ, this.ji = new tK, this.cq = function() { - this.fy.oa() + this.fy = new tQ, this.pL = new tR, this.fN = new tS, this.ji = new tT, this.qS = new tU, this.cq = function() { + this.fy.oj() } } -function tI() { - this.pE = function(dl) { +function tR() { + this.pM = function(dl) { dl.fill(0) - }, this.tL = function(dl) { + }, this.tV = function(dl) { for (var eZ = dl.length, eD = 0; eD < eZ; eD++) dl[eD] = [] - }, this.tM = function(gZ, fr) { + }, this.tW = function(gZ, fr) { for (var ga = al.dh, eD = 0; eD < 3; eD++) ga[eD] = fr * gZ[eD]; return ga - }, this.tN = function(gZ, ga, tO) { + }, this.tX = function(gZ, ga, tY) { for (var ge = 0, eD = 0; eD < 3; eD++) ge += Math.abs(gZ[eD] - ga[eD]); - return tO <= ge - }, this.tP = function(gZ, tQ) { - for (var eD = 0; eD < 3; eD++) gZ[eD] = ai.lP(gZ[eD] + tQ, 0, 255); + return tY <= ge + }, this.tZ = function(gZ, ta) { + for (var eD = 0; eD < 3; eD++) gZ[eD] = ai.lP(gZ[eD] + ta, 0, 255); return gZ - }, this.tR = function(dl, tS = 0, tT = dl.length - 1) { - for (var tU = 0, eD = tS; eD <= tT; eD++) tU += dl[eD]; - return tU - }, this.tV = function(dl, tW) { - for (var eD, tX, eZ = dl.length, tY = [], hY = eZ - 1; 0 <= hY; hY--) { - for (eD = tX = 0; eD < eZ; eD++) tW(dl[eD]) < tW(dl[tX]) && (tX = eD); - eZ--, tY.push(dl[tX]), dl[tX] = dl[eZ], dl.pop() + }, this.tb = function(dl, tc = 0, td = dl.length - 1) { + for (var te = 0, eD = tc; eD <= td; eD++) te += dl[eD]; + return te + }, this.tf = function(dl, tg) { + for (var eD, th, eZ = dl.length, ti = [], hY = eZ - 1; 0 <= hY; hY--) { + for (eD = th = 0; eD < eZ; eD++) tg(dl[eD]) < tg(dl[th]) && (th = eD); + eZ--, ti.push(dl[th]), dl[th] = dl[eZ], dl.pop() } - return tY + return ti } } -function tH() { - var tZ = null; - this.ta = 0, this.oa = function() { +function tU() { + this.tj = function(fw, font, maxWidth) { + if (gD.font = font, gD.measureText(fw).width <= maxWidth) return fw; + for (let eD = fw.length - 1; 1 <= eD; eD--) + if (fw = fw.substring(0, eD), gD.measureText(fw + "...").width <= maxWidth) return fw + "..."; + return "..." + } +} + +function tQ() { + var tk = null; + this.tl = 0, this.oj = function() { var db = b9.dG.data[5].value; - tZ = "px " + db, "Trebuchet MS" !== db && (tZ += ", Trebuchet MS"), this.ta = gF(32, 32, ["a", "b", "m"], 200, tZ) - }, this.p3 = function(g3, g9) { + tk = "px " + db, "Trebuchet MS" !== db && (tk += ", Trebuchet MS"), this.tl = gF(32, 32, ["a", "b", "m"], 200, tk) + }, this.pB = function(g3, g9) { var iK = document.createElement("canvas"); return iK.width = g3, iK.height = g9, iK }, this.getContext = function(gM, alpha) { return gM.getContext("2d", { alpha: alpha }) - }, this.getImageData = function(qK, g3, g9) { - return qK.getImageData(0, 0, g3, g9) - }, this.kT = function(gP, tb, hh) { - return "rgb(" + gP + "," + tb + "," + hh + ")" - }, this.kV = function(gP, tb, hh, hY) { - return "rgba(" + gP + "," + tb + "," + hh + "," + hY.toFixed(3) + ")" + }, this.getImageData = function(qS, g3, g9) { + return qS.getImageData(0, 0, g3, g9) + }, this.kT = function(gP, tm, hh) { + return "rgb(" + gP + "," + tm + "," + hh + ")" + }, this.kV = function(gP, tm, hh, hY) { + return "rgba(" + gP + "," + tm + "," + hh + "," + hY.toFixed(3) + ")" }, this.fz = function(type, size) { - return size = size.toFixed(2), 0 === type ? size + tZ : 1 === type ? "bold " + size + tZ : 2 === type ? "lighter " + size + tZ : 3 === type ? "italic " + size + tZ : 4 === type ? "oblique " + size + tZ : 5 === type ? "small-caps " + - size + tZ : "small-caps bold " + size + tZ + return size = size.toFixed(2), 0 === type ? size + tk : 1 === type ? "bold " + size + tk : 2 === type ? "lighter " + size + tk : 3 === type ? "italic " + size + tk : 4 === type ? "oblique " + size + tk : 5 === type ? "small-caps " + + size + tk : "small-caps bold " + size + tk }, this.textAlign = function(gN, id) { gN.textAlign = 0 === id ? "left" : 1 === id ? "center" : "right" }, this.textBaseline = function(gN, id) { gN.textBaseline = 1 === id ? "middle" : "bottom" }, this.nJ = function(dE, code = 5, color = aZ.gE) { - color = this.nI(b0.tc) + " solid " + color; + color = this.nI(b0.tn) + " solid " + color; 5 === code ? dE.style.border = color : 4 === code ? dE.style.borderLeft = color : 2 === code ? dE.style.borderBottom = color : 6 === code ? dE.style.borderRight = color : dE.style.borderTop = color }, this.nA = function(db) { return 1 + db * b7.cv.ft() @@ -1791,49 +1834,49 @@ function tH() { return kF * this.nA(eh) * aK.fu / aK.nE }, this.nI = function(db) { return db.toFixed(1) + "px" - }, this.td = function(te, tf) { - for (var fw = "