FXclient-mirror/game.js

8601 lines
682 KiB
JavaScript
Raw Normal View History

var a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE, aF, aG, aH, aI, aJ, aK, aL, aM, aN, aO, aP, aQ, aR, aS, aT, aU, aV, aW, aX, aY, aZ, aa, ab, ac, ad, ae, af,
ag, ah, ai, aj, ak, al, am, an, ao, ap, aq, ar, at, au, av, aw, ax, ay, az, b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, bA, bB, bC, bD, dA, dB, dC, dD, dE, dF, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, eA, eB, eC, hm, hk, hl, hU;
function bE() {
var cw;
a || (bG(), bH(), aj = new bI, ai = new bJ, aZ = new bK, aa = new bL, b = new bM, ad = new bN, ae = new bO, c = new bP, d = new bQ, e = new bR, f = new bS, g = new bT, h = new bU, i = new bV, j = new bW, k = new bX, l = new bY, m = new bZ, n =
new ba, o = new bb, p = new bc, q = new bd, r = new be, s = new bf, t = new bg, u = new bh, v = new bi, w = new bj, x = new bk, y = new bl, z = new bm, a0 = new bn, a1 = new bo, a2 = new bp, a3 = new bq, a4 = new br, a7 = new bs, a5 =
new bt, a6 = new bu, a8 = new bv, aN = new bw, a9 = new bx, aA = new by, aB = new bz, aC = new c0, aO = new c1, aM = new c2, aD = new c3, aE = new c4, aF = new c5, aG = new c6, aL = new c7, aH = new c8, aI = new c9, aJ = new cA, aK =
new cB, aP = new cC, aQ = new cD, aR = new cE, aS = new cF, aT = new cG, aU = new cH, aV = new cI, aX = new cJ, aY = new cK, ab = new cL, ac = new cM, af = new cN, ag = new cO, ah = new cP, ak = new cQ, al = new cR, am = new cS, an =
new cT, ao = new cU, ap = new cV, aq = new cW, ar = new cX, at = new cY, au = new cZ, aW = new ca, b8 = new cb, a = new cc, b9 = new cd, bA = new ce, b5 = new cf, b6 = new cg, ay = new ch, az = new ci, b0 = new cj, av = new ck, b2 =
new cl, b3 = new cm, b4 = new cn, bB = new co, b1 = new cp, bC = new cq, bD = new cr, a.ct(), b8.ct(), aL.cu(), bA.ct(), aW.ct(), bD.ct(), aZ.ct(), a2.ct(), av.ct(), aO.ct(), ad.ct(), ae.ct(), aq.ct(), cv(), (cw = document.getElementById(
"usernameField")) && document.body.removeChild(cw), aw = new cx, aL.ct(), b8.cy.cz(), b4.ct(), b1.ct(), ay.ct(), (b7 = new d0).ct(), ax = new d1, aM.ct(), a4.d2(), au.ct(), aA.ct(), y.ct(), aU.ct(), r.ct(), a8.ct(), ah.ct(), a0.ct(),
b4.d3 = !0, setTimeout(function() {
aq.d4(2, 14071)
}, 0), at.d5(5, 5), ag.d6(), b8.cy.d7(), aL.d8(), a.d9 = 1)
}
function cc() {
this.dG = 1044, this.ct = function() {
dA = 2, dC = 23, dB = "22 Jun 2024 [1.95.9]", dD = 0 <= window.location.hostname.toLowerCase().indexOf("territorial.io"), dF = function() {
try {
return window.self !== window.top
} catch (dI) {
return !0
}
}(), dE = (new Date).getTime() % 1024
}, this.d9 = 0
}
function cr() {
this.id = new dJ, this.ct = function() {
this.id.ct()
}
}
function dJ() {
this.ct = function() {
0 === bA.dK.data[181].value && (bA.dK.dL(180, Math.floor(Math.random() * aj.pow(30))), bA.dK.dL(181, Math.floor((new Date).getTime() / 36e5)))
}
}
function cZ() {
this.dM = new dN, this.dO = new dP, this.ct = function() {
b8.cy.dQ()
}
}
function dN() {
function da() {}
this.ct = function() {}, this.dZ = function() {
return !!da() && (aiptag.cmd.player.push(function() {
aiptag.adplayer.startVideoAd()
}), !0)
}, this.hideCMPButton = function() {
"undefined" != typeof aipAPItag && aipAPItag.hideCMPButton && aipAPItag.hideCMPButton()
}, this.showCMPButton = function() {
"undefined" != typeof aipAPItag && aipAPItag.showCMPButton && aipAPItag.showCMPButton()
}, this.showCMPScreen = function() {
da() && aipAPItag.showCMPScreen()
}
}
function dP() {
var dc = 2e4;
this.show = function() {
if (b4.dc < dc) return !1;
dc = b4.dc + 135e4, b8.cy.de(Math.floor(135e4))
}
}
function cS() {
this.di = new Uint16Array(2), this.dj = new Uint32Array(2), this.dk = new Uint32Array(2), this.dl = new Uint8Array(4), this.dm = new Uint8Array(4), this.dn = new Uint32Array(5), this.dp = new Uint32Array(8), this.dq = new Uint16Array(512), this
.dr = function(ds, dt) {
return ds[0] = dt, ds
}, this.du = function(ds, dt, dv) {
return ds[0] = dt, ds[1] = dv, ds
}, this.dw = function(ds, dt, dv, dx) {
return ds[0] = dt, ds[1] = dv, ds[2] = dx, ds
}, this.dy = function(ds, dt, dv, dx, dz) {
return ds[0] = dt, ds[1] = dv, ds[2] = dx, ds[3] = dz, ds
}
}
function eD() {
e5 = 0, e6 = 2048, e7 = new Uint32Array(4 * e6), e8 = 0, e9 = new Uint32Array(e6), (eA = new Int32Array(4))[0] = -4 * aq.eE, eA[1] = 4, eA[2] = -eA[0], eA[3] = -eA[1], eB = new Uint8Array(aq.eE * aq.eF)
}
function eG(player) {
e1 = player, eC = !1, eH(), eI();
for (var eJ = a3.eK(e1) - 1; 0 <= eJ; eJ--) 0 === a3.eL(e1, eJ) && (e0 = eJ, eM());
eC && eN()
}
function eN() {
eO(), eP()
}
function eM() {
e4 = a3.eQ(e1, e0), e2 = a3.eR(e1, e0), eS(), (0 !== e5 && (eU(), eV()) ? eW : eT)()
}
function eV() {
return (e3 = eX(e2, e5)) > b.eY
}
function eU() {
for (var eJ = e5 - 1; 0 <= eJ; eJ--) eB[eX(e7[eJ], 4)] = 0
}
function eT() {
var dd;
1 === a3.eK(e1) && d.eZ(e1), e1 !== b.ea ? (a6.eb[e1] += e2, a4.ec(e1)) : (dd = a6.eb[e1], a6.eb[e1] += e2, a4.ec(e1), b2.ed[13] -= a6.eb[e1] - dd), a3.ee(e1, e0)
}
function eH() {
var eJ, ef = a6.eg[e1].length;
for (e8 = 0, eJ = (e6 < ef ? e6 : ef) - 1; 0 <= eJ; eJ--) e9[e8++] = a6.eg[e1][eJ]
}
function eI() {
for (var eJ = a6.eg[e1].length - 1; 0 <= eJ; eJ--) a1.eh(a6.eg[e1][eJ]) && a1.ei(a6.eg[e1][eJ], e1);
a6.eg[e1] = []
}
function eS() {
e5 = 0, (e4 === b.ej ? ek : el)()
}
function el() {
for (var em, en, eJ, eo = 3; 0 <= eo; eo--)
for (eJ = e8 - 1; 0 <= eJ; eJ--) en = eX(em = e9[eJ] + eA[eo], 4), 0 === eB[en] && a1.ep(em) && a1.eq(em) === e4 && (eB[en] = 1, e7[e5++] = em)
}
function ek() {
for (var em, en, eJ, eo = 3; 0 <= eo; eo--)
for (eJ = e8 - 1; 0 <= eJ; eJ--) en = eX(em = e9[eJ] + eA[eo], 4), 0 === eB[en] && a1.er(em) && (eB[en] = 1, e7[e5++] = em)
}
function eW() {
es() ? (et(), e4 !== b.ej && eu()) : eT()
}
function eu() {
ev(), ew(a6.ex[e4]), ew(a6.ey[e4]), ez(a6.eg[e4]), f0(a6.ey[e4]), f0(a6.f1[e4]), f2(), f3()
}
function et() {
eC = !0, a3.f4(e1, e0, e2), a6.f5[e1] += e5, f6(), f7()
}
function es() {
return (e4 === b.ej ? f8 : f9)()
}
function f9() {
var fA = e5 * b.eY,
fB = fC(),
fD = fE(),
fB = fA + 2 * fB + fD,
fG = e3 * e5;
return fB < fG ? (e2 -= fB, fH(fB - fA, fD), !0) : (e2 -= fG, fH(fG - fA, fD), !1)
}
function fH(fG, fD) {
if (0 < fD) {
if (!(fD <= fG)) return a3.fI(e4, e1, fD - fG), void(fG = 0);
a3.fI(e4, e1, 0), fG -= fD
}
fG = eX(fG, 2), a6.eb[e4] >= fG ? a6.eb[e4] -= fG : a6.eb[e4] = 0
}
function fE() {
return a3.fJ(e4, e1)
}
function fC() {
return aj.fK(e5 * a6.eb[e4], 1 + aj.fK(10 * a6.f5[e4], 16))
}
function f8() {
return e2 -= e5 * b.eY, !0
}
function f7() {
for (var eJ = e5 - 1; 0 <= eJ; eJ--) a6.eg[e1].push(e7[eJ]), a6.ex[e1].push(e7[eJ]), a1.ei(e7[eJ], e1)
}
function cX() {
var fL = 0,
fM = 0;
this.fN = function(fO, fP) {
fL = fO, fM = fP
}, this.fQ = function(fR) {
b.fS || k.fT || (aZ.fU.fV(0) || aZ.fU.fV(1)) && aZ.fU.fW(b.ea) && (p.fX(fL, fM) ? p.fY = !1 : function(fR) {
var fa = ak.fb(fL),
fc = ak.fd(fM),
fe = ak.ff(fa, fc),
fg = ak.fh(fe);
ak.fi(fa, fc) && (b.fj ? a1.eh(fg) && aX.fk.fl(fe) : a1.fm(fg) || (a1.fn(fg) || fR ? al.fo.fp(b.ea, fe) && aX.fk.fq(p.fr(), fe) : a1.er(fg) ? fs(b.ea) ? aX.fk.ft(p.fr(), b.ej) : fu(b.ea, b.ej) ? aP.fv(b.ej, p.fr()) : al.fo.fp(
b.ea, fe) && aX.fk.fq(p.fr(), fe) : (fa = a1.eq(fg)) !== b.ea && (fw(fa, b.ea) ? fx(b.ea, fa) ? aX.fk.ft(p.fr(), fa) : fu(b.ea, fa) ? aP.fv(fa, p.fr()) : al.fo.fp(b.ea, fe) && aX.fk.fq(p.fr(), fe) : al.fo.fp(b
.ea, fe) && aX.fk.fq(p.fr(), fe))))
}(fR))
}
}
function ch() {
var fy = 1,
fz = [null, null];
this.ct = function() {
fy = .72 * (b8.cy.g0() ? .0011 : .001) * aL.g1;
for (var eJ = 1; 0 <= eJ; eJ--) fz[eJ] && this.g2(eJ, fz[eJ].g3)
}, this.g2 = function(g4, g3) {
fz[g4] = {
g3: g3,
font: aZ.g5.g6(1, 10)
}, this.g7(g4)
}, this.g7 = function(g4) {
var g3, fontSize, g9, gA, gB;
a0.g8() && fz[g4] && (g3 = fz[g4].g3, fontSize = Math.floor(.15 * fy * a0.get(13).height), g9 = aZ.g5.g6(1, fontSize), gA = o.measureText(g3, g9), (gB = .8 * fy * a0.get(13).width) < gA && (fontSize = Math.floor(fontSize * gB / gA), g9 =
aZ.g5.g6(1, fontSize)), fz[g4] = {
g3: g3,
font: g9
}, b4.d3 = !0)
}, this.gC = function() {
return Math.floor(fy * a0.get(13).height)
}, this.fX = function(gD, gE) {
return !!a0.g8() && !(gD < b1.gap || gE < aL.gF - fy * a0.get(13).height - 2 * b1.gap || gE > aL.gF - 2 * b1.gap || (gD < b1.gap + fy * a0.get(13).width ? (at.d5(8, 0, new gG("⏳ Connecting...", 21, {
gH: 0,
gI: 0,
gJ: 9
})), 0) : gD < 2 * b1.gap + fy * a0.get(13).width || !(gD < 2 * b1.gap + 2 * fy * a0.get(13).width) || (at.d5(8, 0, new gG("⏳ Connecting...", 21, {
gH: 1,
gI: 0,
gJ: 9
})), 0)))
}, this.gK = function() {
return Math.floor(aL.gF - fy * a0.get(13).height - b1.gap)
}, this.gL = function() {
if (a0.g8()) {
gM.imageSmoothingEnabled = !0, gM.setTransform(fy, 0, 0, fy, b1.gap, this.gK()), gM.drawImage(a0.get(14), 0, 0), gM.setTransform(fy, 0, 0, fy, 2 * b1.gap + fy * a0.get(13).width, this.gK()), gM.drawImage(a0.get(13), 0, 0);
for (var eJ = 1; 0 <= eJ; eJ--) fz[eJ] && (gM.setTransform(1, 0, 0, 1, (1 + eJ) * b1.gap + eJ * fy * a0.get(13).width, this.gK()), gM.font = fz[eJ].font, aZ.g5.textBaseline(gM, 1), aZ.g5.textAlign(gM, 1), gM.fillStyle = aa.gN, gM
.fillText(fz[eJ].g3, .5 * fy * a0.get(13).width, .86 * fy * a0.get(13).height));
gM.setTransform(1, 0, 0, 1, 0, 0)
}
}
}
function gO(gP, size, gQ, gR, font) {
var eJ, gU = .2,
gV = document.createElement("canvas"),
gW = gV.getContext("2d", {
alpha: !1
});
for (gV.width = gP, gV.height = gP, gW.font = size + font, gW.textAlign = "center", gW.textBaseline = "middle", gW.fillStyle = "red", eJ = 0; eJ < gQ.length; eJ++) gW.fillText(gQ[eJ], .5 * gP, .5 * gP);
return -1 < (gV = function(gS) {
var eJ, gY;
for (eJ = gS.data.length - 4; 0 <= eJ; eJ -= 4)
if (gY = gS.data[eJ], gR <= gY) return Math.floor(eJ / (4 * gP));
return -1
}(gW.getImageData(0, 0, gP, gP))) && (gU = (gV - .5 * gP + .1 * size) / size), Math.max(gU, 0)
}
function cQ() {
this.gZ = new Int16Array(4), this.ga = new Int16Array(4), this.ct = function() {
var eJ;
for (this.gZ[0] = -aq.eE, this.gZ[1] = 1, this.gZ[2] = aq.eE, this.gZ[3] = -1, eJ = 0; eJ < 4; eJ++) this.ga[eJ] = 4 * this.gZ[eJ]
}, this.gb = function(gc, gd) {
var ge = this.gf(gd) - this.gf(gc),
gd = this.gh(gd) - this.gh(gc),
gc = ge >>> 31 << 1;
return 5 + gc + (1 - gc) * (1 - (gd >>> 31 << 1)) * (Math.abs(ge) - Math.abs(gd) >>> 31) & 3
}, this.gl = function(gc, gd, gm) {
return gm % 2 == 0 ? gm + (1 - gm) * (1 - (this.gf(gd) - this.gf(gc) >>> 31 << 1)) + 4 & 3 : gm + (2 - gm) * (1 - (this.gh(gd) - this.gh(gc) >>> 31 << 1)) + 4 & 3
}, this.go = function(em, fe) {
for (var gd, gp, gr = a6.ey[em], ef = gr.length, gA = aq.eE, gs = this.gf(fe), gt = this.gh(fe), gu = gr[0] >> 2, min = this.gv(gs, gt, gu), eJ = 1; eJ < ef; eJ++)(gp = (gp = gs - (gd = gr[eJ] >> 2) % gA) * gp + (gp = gt - ~~((.5 + gd) /
gA)) * gp) < min && (min = gp, gu = gd);
return gu
}, this.gw = function(player, fg) {
return !a1.er(fg) && player === a1.eq(fg)
}, this.gv = function(fa, fc, fe) {
return (fa -= this.gf(fe)) * fa + (fc -= this.gh(fe)) * fc
}, this.gx = function(gy, gz, h0) {
gy = this.h2(gy) - this.h3(h0), gz = this.h5(gz) - this.h6(h0);
return Math.sqrt(gy * gy + gz * gz)
}, this.h7 = function(gc, gd) {
var h1 = this.gf(gc) - this.gf(gd),
gc = this.gh(gc) - this.gh(gd);
return Math.sqrt(h1 * h1 + gc * gc)
}, this.h8 = function(em, h9) {
return aj.fK(h9 * a6.eb[em], 1e3)
}, this.h2 = function(gy) {
return 16 * (gy + hA) / hB
}, this.h5 = function(gz) {
return 16 * (gz + hC) / hB
}, this.fb = function(gy) {
return Math.floor((gy + hA) / hB)
}, this.fd = function(gz) {
return Math.floor((gz + hC) / hB)
}, this.fi = function(fa, fc) {
return 1 <= fa && 1 <= fc && fa < aq.eE - 1 && fc < aq.eF - 1
}, this.gf = function(fe) {
return fe % aq.eE
}, this.gh = function(fe) {
return aj.fK(fe, aq.eE)
}, this.ff = function(fa, fc) {
return fc * aq.eE + fa
}, this.hD = function(fe) {
var fa = this.gf(fe),
fe = this.gh(fe);
return 0 < fa && fa < aq.eE - 1 && 0 < fe && fe < aq.eF - 1
}, this.fh = function(fe) {
return fe << 2
}, this.hE = function(fe) {
return aq.eE * this.gh(fe) * 256 + (this.gf(fe) << 4)
}, this.hF = function(fe) {
return this.hE(fe) + 8 + (aq.eE << 7)
}, this.hG = function(h0) {
return aq.eE * (this.h6(h0) >> 4) + (this.h3(h0) >> 4)
}, this.hH = function(h0) {
h0 = this.hG(h0);
return (this.gf(h0) >> 5) + al.hI.hJ * (this.gh(h0) >> 5)
}, this.h3 = function(h0) {
return h0 % (aq.eE << 4)
}, this.h6 = function(h0) {
return aj.fK(h0, aq.eE << 4)
}, this.hK = function(fe, gm) {
return fe + this.gZ[gm]
}, this.hL = function(fg, gm) {
return fg + this.ga[gm]
}
}
function hM(player, hN) {
return am.dp[1] = a6.eg[player].length, am.dp[0] === b.ej ? hO(player) : hP(player, am.dp[0]), (0 !== am.dp[1] || 0 !== a6.eg[player].length) && !(!hN && am.dp[1] === a6.eg[player].length || (am.dp[0] === b.ej ? a6.hQ[player]++ : a6.hR[player]++,
0))
}
function hS(player) {
b.hT && (hU[player] = 1), hV(am.dp[1], player), a3.hW(player, am.dj[0], am.dp[0]), d.hX(player, !1)
}
function hY(player, hZ, ef, ha) {
var hb = eX(3 * a6.eb[player], 256);
ha -= ha >= eX(a6.eb[player], 2) ? hb : 0, hV(ef, player), a3.hW(player, ha, hZ), a6.eb[player] -= ha + hb, d.hX(player, !1)
}
function hP(player, hZ) {
for (var gm, eJ = a6.ex[player].length - 1; 0 <= eJ; eJ--)
if (a1.hc(a6.ex[player][eJ]))
for (gm = 3; 0 <= gm; gm--)
if (a1.ep(a6.ex[player][eJ] + eA[gm]) && a1.eq(a6.ex[player][eJ] + eA[gm]) === hZ) {
a6.eg[player].push(a6.ex[player][eJ]);
break
}
}
function hV(size, player) {
for (var eJ = a6.eg[player].length - 1; size <= eJ; eJ--) a1.hd(a6.eg[player][eJ], player)
}
function hO(player) {
for (let eJ = a6.ex[player].length - 1; 0 <= eJ; eJ--)
if (a1.hc(a6.ex[player][eJ]))
for (let gm = 3; 0 <= gm; gm--)
if (a1.er(a6.ex[player][eJ] + eA[gm])) {
a6.eg[player].push(a6.ex[player][eJ]);
break
}
}
function he(player, hf) {
var eJ, hg, gm, hh, ef = a6.ex[player].length,
gn = 256 <= ef ? 12 : 32 <= ef ? 6 : 1,
hi = ef - 1 - aM.hj(gn);
hk = 0;
loop: for (eJ = hi; 0 <= eJ; eJ -= gn)
for (gm = 3; 0 <= gm; gm--)
if ((hh = a1.er(a6.ex[player][eJ] + eA[gm]) ? b.ej : a1.eq(a6.ex[player][eJ] + eA[gm])) === b.ej || a1.ep(a6.ex[player][eJ] + eA[gm]) && hh !== player && (hf || fw(player, hh))) {
for (hg = hk - 1; 0 <= hg; hg--)
if (hl[hg] === hh) continue loop;
if (hl[hk] = hh, ++hk >= hm) return !0
}
return 0 < hk
}
function hn(player, hf) {
var eJ, gm, hh;
for (hk = 0, eJ = a6.ex[player].length - 1; 0 <= eJ; eJ--)
for (gm = 3; 0 <= gm; gm--)
if ((hh = a1.er(a6.ex[player][eJ] + eA[gm]) ? b.ej : a1.eq(a6.ex[player][eJ] + eA[gm])) === b.ej || a1.ep(a6.ex[player][eJ] + eA[gm]) && hh !== player && (hf || fw(player, hh))) return hl[hk++] = hh, !0;
return !1
}
function ho() {
for (var hp, eJ = hk - 1; 0 <= eJ; eJ--)
if (hl[eJ] === b.ej) {
for (hk--, hp = eJ; hp < hk; hp++) hl[hp] = hl[hp + 1];
return !0
} return !1
}
function hq(player) {
for (var hp, eJ = hk - 1; 0 <= eJ; eJ--)
if (a3.hr(player, hl[eJ]))
for (hk--, hp = eJ; hp < hk; hp++) hl[hp] = hl[hp + 1];
return 0 === hk
}
function hs() {
for (var eJ = hk - 1; 0 <= eJ; eJ--)
if (hl[eJ] >= b.ht) return !0;
return !1
}
function hu() {
for (var eJ = hk - 1; 0 <= eJ; eJ--) hl[eJ] < b.ht && (hl[eJ] = hl[--hk]);
return 0 < hk
}
function hv(player) {
for (var hp, hw = hl[0], hx = a6.eb[hw] + a3.fJ(hw, player), eJ = hk - 1; 1 <= eJ; eJ--)(hp = a6.eb[hl[eJ]] + a3.fJ(hl[eJ], player)) < hx && (hw = hl[eJ], hx = hp);
return hw
}
function hy(player) {
var gF, hz = hl[0];
if (1 !== hk)
for (var i0 = eX(a6.i1[player] + a6.i2[player], 2), i3 = eX(a6.i4[player] + a6.i5[player], 2), i6 = i7(i0 - eX(a6.i1[hz] + a6.i2[hz], 2)) + i7(i3 - eX(a6.i4[hz] + a6.i5[hz], 2)), eJ = hk - 1; 1 <= eJ; eJ--)(gF = i7(i0 - eX(a6.i1[hl[eJ]] + a6
.i2[hl[eJ]], 2)) + i7(i3 - eX(a6.i4[hl[eJ]] + a6.i5[hl[eJ]], 2))) < i6 && (i6 = gF, hz = hl[eJ]);
return hz
}
function i8() {
return hl[aM.hj(hk)]
}
function cv() {
hm = 8, hk = 0, hl = new Uint16Array(hm)
}
function i9() {
hU = b.hT ? new Uint8Array(b.ej) : null
}
function iA(player, ha) {
var iB;
b.hT && (hU[player] = 0), !a3.iC(player) || ha < 60 || (0 === a6.ex[player].length ? al.iD.iE(player) || (c.iF(player - b.ht, 200), iG(player, ha, c.ha[player - b.ht], a4.iH(player))) : 0 < a6.ey[player].length && aM.random() < aM.value(a6.ey[
player].length > a6.ex[player].length ? 7 : 3) && al.iD.iE(player) || (iB = a4.iH(player), a6.eb[player] > iB && ha < a6.eb[player] - iB && (ha = a6.eb[player] - iB), b.hT ? iI(player, ha, c.ha[player - b.ht], iB) : iJ(player, ha, c
.ha[player - b.ht])))
}
function iI(player, ha, iK, iB) {
var hZ;
he(player, !1) || hn(player, !1) ? (hU[player] = 1, hq(player) || (ho() ? (iL(player, ha), iM(player, b.ej, iK)) : (aM.iN(c.iO[iK]) ? iP(player, ha, hZ = hv(player)) : (hs() && aM.iN(c.iQ[iK]) && hu(), iP(player, ha, hZ = hy(player))), iM(player,
hZ, iK)))) : 0 < a6.ey[player].length && aM.random() < aM.value(60) && al.iD.iE(player) || (c.iF(player - b.ht, 200), iG(player, ha, iK, iB))
}
function iR(player, ha) {
he(player, !1) || hn(player, !1) ? (hU[player] = 1, ho() ? iL(player, ha) : iP(player, ha, i8())) : iG(player, ha, 0, 0)
}
function iM(player, hZ, iK) {
3 <= iK && 2142 < b4.iS() && (hZ === b.ej || a6.eb[hZ] < eX(a6.eb[player], 20)) && c.iF(player - b.ht, 25)
}
function iG(player, ha, iK, iB) {
var eJ, hp, iT;
if (0 !== b5.iU[player] && !(5 === iK && a6.eb[player] < iB || 4 === iK && a6.eb[player] < eX(iB, 2)))
for (eJ = aM.hj(iV), hp = 0; hp < iV; hp++)
if (iT = iW[(hp + eJ) % iV], b5.iU[iT] === b5.iU[player] && 1 === hU[iT]) return void aX.iX.iY(player, iT, ha)
}
function iJ(player, ha, iK) {
!he(player, !0) && !hn(player, !0) || hq(player) || (ho() ? iL(player, ha) : aM.iN(c.iO[iK]) ? iP(player, ha, hv(player)) : (hs() && aM.iN(c.iQ[iK]) && hu(), iP(player, ha, hy(player))))
}
function iZ(player, ha) {
(he(player, !0) || hn(player, !0)) && (ho() ? iL(player, ha) : iP(player, ha, i8()))
}
function iP(player, ha, hZ) {
eX(a6.eb[player], 8) > a6.eb[hZ] && (ha = (ia = eX(11 * a6.eb[hZ], 5)) < ha ? ha : ia);
var ia = a6.eg[player].length;
hP(player, hZ), hY(player, hZ, ia, ha)
}
function iL(player, ha) {
var hZ = b.ej,
ef = a6.eg[player].length;
return hO(player), a6.eg[player].length !== ef && (hY(player, hZ, ef, ha), !0)
}
self.aiCommand746 = function(df) {
0 === df ? bE() : 1 !== df || 1 !== b8.id || b8.dg < 14 || y.dh()
};
var hB, hA, hC, zT, jM, a1K, iW, iV, u8, gM, qp, a2t, wb, wc, ib = [60, 74, 112, 200, 256, 512];
function bP() {
var ic, ie, ig, ih, ii, ij;
function ix(eJ) {
ic[eJ] = 1 + eX(ii[eJ] * aM.random(), 10 * aM.value(100))
}
this.ik = ["Very Easy", "Easy", "Normal", "Hard", "Harder", "Very Hard"], this.il = [97, 95, 93, 90, 87, 84], this.iQ = [98, 95, 70, 40, 20, 0], this.im = [85, 70, 50, 30, 7, 3], this.iO = [0, 0, 5, 25, 50, 90], this.ha = null, this.ct =
function() {
var eJ, io;
if (ic = new Uint8Array(b.ip), ie = new Uint16Array(b.ip), ig = new Uint16Array(b.ip), ih = new Uint8Array(b.ip), this.ha = new Uint8Array(b.ip), ii = new Uint16Array(b.ip), ij = new Uint16Array(b.ip), aV.iq) {
if (aV.ir.is)
for (eJ = b.ip - 1; 0 <= eJ; eJ--) this.ha[eJ] = aV.ir.is[eJ + 1]
} else if (9 === b.it) this.iu();
else if (b.iv)
if (b.hT)
for (eJ = b.ip - 1; 0 <= eJ; eJ--) this.ha[eJ] = z.iw[b5.iU[eJ + b.ht] - 1].eo;
else
for (eJ = b.ip - 1; 0 <= eJ; eJ--) this.ha[eJ] = z.iw[0].eo;
else
for (io = 8 === b.it ? 1 : 0, eJ = b.ip - 1; 0 <= eJ; eJ--) this.ha[eJ] = io;
for (eJ = b.ip - 1; 0 <= eJ; eJ--) this.ha[eJ] <= 2 ? (ih[eJ] = 5, ii[eJ] = ij[eJ] = 1040, 0 === this.ha[eJ] ? (ie[eJ] = 1e3, ig[eJ] = 1e3) : 1 === this.ha[eJ] ? (ie[eJ] = 1e3, ig[eJ] = 920, ii[eJ] = ij[eJ] = 1100) : (ie[eJ] = 825, ig[
eJ] = 750)) : this.ha[eJ] <= 4 ? (ih[eJ] = 1 + aM.hj(20), 3 === this.ha[eJ] ? (ie[eJ] = ig[eJ] = 500, ii[eJ] = ij[eJ] = 1e3) : (ij[eJ] = 250 + aM.hj(1501), ii[eJ] = 500 + aM.hj(501), ie[eJ] = 300 + aM.hj(201), ig[eJ] = 100 + aM
.hj(201))) : (ii[eJ] = 1e3, ij[eJ] = 1e3, ih[eJ] = 35 + aM.hj(16), ie[eJ] = 300 + aM.hj(201), ig[eJ] = 50 + aM.hj(101)), ix(eJ)
}, this.iu = function() {
for (var eJ, fg = 0, hp = 0; hp < 6; hp++) {
for (eJ = fg + aN.iy[hp] - 1; fg <= eJ; eJ--) this.ha[eJ] = hp;
fg += aN.iy[hp]
}
}, this.iF = function(iz, value) {
0 <= iz && (ic[iz] = value)
}, this.iE = function(iz) {
0 == --ic[iz] && ! function(iz) {
! function(iz) {
ii[iz] !== ij[iz] && (ii[iz] += ii[iz] < ij[iz] ? 3 : -3);
ie[iz] !== ig[iz] && (ie[iz] += ie[iz] < ig[iz] ? ih[iz] : -ih[iz], ie[iz] = (Math.abs(ie[iz] - ig[iz]) <= ih[iz] ? ig : ie)[iz]);
ic[iz] = eX(ii[iz], 10)
}(iz);
var player = iz + b.ht;
iA(player, eX(ie[iz] * a6.eb[player], 1e3))
}(iz)
}
}
function j2() {
l.iE(), a5.iE(), u.j3(), aO.j4.iE()
}
function j5() {
aP.iE(), e.iE(), a4.iE(), aS.iE(), aR.iE(), d.iE(), f.iE(), al.j4.iE(), j6(), t.iE(), aN.iE(), a5.iE(), a5.j7(), u.iE(), an.iE(), s.iE(), n.iE(), l.iE(), aT.iE(), p.iE(), aJ.iE(), b2.iE(), b6.iE(), ao.iE(), aO.j4.iE(), aO.j8.iE(), at.iE(), aY
.iE(), b4.iE()
}
function j9() {
g.iE(), v.iE(), o.iE(), aG.iE(), ab.iE(), aK.jA()
}
function jB() {
t.jC(!1), n.jC(), u.jC(!1), s.jC(), p.jC(), aJ.jC(), a5.jC(!1), b6.g7()
}
function jD() {
a5.jC(!1) && (b4.d3 = !0), aO.j4.iE()
}
function bQ() {
var jE, jF, jG, jH, jI, jJ;
function jN(jP) {
for (var eJ = jF - 1; 0 <= eJ; eJ--) 0 === jH[jG[eJ]] && a6.f5[jG[eJ]] >= jP && eG(jG[eJ])
}
function jL(player) {
10 === jH[player] ? jH[player] = jE : a6.f5[player] < 1e3 ? jH[player] = 3 : a6.f5[player] < 1e4 ? jH[player] = 2 : a6.f5[player] < 6e4 ? jH[player] = 1 : jH[player] = 0
}
this.ct = function() {
jI = jJ = 0, jE = 6, jF = 0, jG = new Uint16Array(b.ej), jH = new Uint8Array(b.ej)
}, this.iE = function() {
var eJ;
for (jI = b2.ed[13], jJ = a6.eb[b.ea], eJ = jF - 1; 0 <= eJ; eJ--) 10 === jH[jG[eJ]] ? jL(jG[eJ]) : 0 == jH[jG[eJ]]-- && (jL(jG[eJ]), eG(jG[eJ]));
16e4 <= a6.f5[jM[0]] && (jN(16e4), 3e5 <= a6.f5[jM[0]]) && jN(3e5), a6.f5[b.ea] > b2.ed[7] && (b2.ed[7] = a6.f5[b.ea]), b2.ed[14] += jJ - a6.eb[b.ea] + jI - b2.ed[13]
}, this.eZ = function(player) {
for (var hg, eJ = jF - 1; 0 <= eJ; eJ--)
if (player === jG[eJ]) {
for (jF--, hg = eJ; hg < jF; hg++) jG[hg] = jG[hg + 1];
return
}
}, this.hX = function(player, jQ) {
for (var eJ = jF - 1; 0 <= eJ; eJ--)
if (player === jG[eJ]) return;
jG[jF++] = player, jH[player] = jQ ? 2 : 10
}
}
function bR() {
var size, iD;
this.ct = function() {
size = b.ip, iD = new Uint16Array(b.ip);
for (var eJ = b.ip - 1; 0 <= eJ; eJ--) iD[eJ] = eJ
}, this.iE = function() {
for (var eJ = size - 1; 0 <= eJ; eJ--) 0 === a6.jS[iD[eJ] + b.ht] ? function(hg) {
size--;
for (var eJ = hg; eJ < size; eJ++) iD[eJ] = iD[eJ + 1]
}(eJ) : c.iE(iD[eJ])
}
}
function bS() {
var jU, jV, jF, jG, jH, jW, jX, jY;
function ja(eJ) {
var hg;
for (jF--, hg = eJ; hg < jF; hg++) jG[hg] = jG[hg + 1], jH[hg] = jH[hg + 1], jW[hg] = jW[hg + 1], jX[hg] = jX[hg + 1], jY[hg] = jY[hg + 1]
}
this.ct = function() {
jU = 1, jF = 0, jV = 2 * b.ej, jG = new Uint16Array(jV), jH = new Uint8Array(jV), jW = new Uint16Array(jV), jX = new Uint32Array(jV), jY = new Uint32Array(jV)
}, this.jZ = function(g4, position) {
jX[g4] = position
}, this.iE = function() {
for (var eJ = jF - 1; 0 <= eJ; eJ--) 0 == jH[eJ]-- && (jH[eJ] = 2, aD.iE(eJ, jW[eJ], jG[eJ], jX[eJ], jY[eJ]))
}, this.eZ = function(player, id) {
for (var eJ = jF - 1; 0 <= eJ; eJ--)
if (player === jG[eJ] && id === jW[eJ]) return void ja(eJ)
}, this.jb = function(player) {
for (var eJ = jF - 1; 0 <= eJ; eJ--) player === jG[eJ] && (aD.jc(player, jX[eJ]), ja(eJ))
}, this.hX = function(player, hi, jd) {
if (jV <= jF) return 0;
jG[jF] = player, jH[jF] = 0, jW[jF] = jU, jX[jF] = hi, jY[jF] = jd;
player = jU;
return jF++, jU = 2 * jV < ++jU ? 1 : jU, player
}, this.gL = function() {
if (!(hB < 40 || 0 === jF)) {
var hg, fO, fP, eJ, fontSize, ji, ha, jj = hA / hB,
jk = hC / hB,
jl = (aL.gA + hA) / hB,
jm = (aL.gF + hC) / hB;
for (aZ.g5.textAlign(gM, 1), aZ.g5.textBaseline(gM, 1), hg = jF - 1; 0 <= hg; hg--) fO = a1.jn(jX[hg]), fP = a1.gK(jX[hg]), eJ = jG[hg], jj - 1 < fO && fO < jl && jk - 1 < fP && fP < jm && 0 !== a6.jS[eJ] && ((fontSize = Math.floor(
.94 * hB * a5.jo(eJ))) < 6 || (fO = Math.floor(aL.gA * (fO + .5 - jj) / (jl - jj)), fP = Math.floor(aL.gF * (fP + .48 - jk) / (jm - jk)), gM.font = aZ.g5.g6(1, fontSize), gM.fillStyle = aa.jp, ha = a3.eR(eJ, a3.jq(eJ, jW[
hg])), gM.fillText(bA.dK.data[7].value ? aZ.jr.js(ha) : a6.jt[eJ], fO, fP), (ji = Math.floor(.5 * fontSize)) < 6) || (gM.font = aZ.g5.g6(1, ji), gM.fillText(bA.dK.data[7].value ? a6.jt[eJ] : aZ.jr.js(ha), fO, fP + Math
.floor(.82 * fontSize))))
}
}
}
function bT() {
var ju, jv, jw, jx, jy, jz, k0, k1, k2, k3, k4, k5, k6, k7 = !1,
k8 = !1;
function k9(kA) {
k5 = b4.dc, jw = jx = jv = 0, jy = (k6 = 33) / kA, ju = 1 / (kA / k6 / 4), jz = (aL.gA / 2 + hA) / hB, k0 = (aL.gF / 2 + hC) / hB, k1 = hB
}
function kN(kP) {
Math.abs(Math.log(k4 / k1)) < .125 && (k4 = kP * k1)
}
function kM(jj, jk, jl, jm) {
k2 = (jj + jl + 1) / 2, k3 = (jk + jm + 1) / 2;
jl = aL.gA / (jl - jj + 1), jj = aL.gF / (jm - jk + 1);
k4 = .9 * (jl < jj ? jl : jj)
}
this.kB = function() {
return k7
}, this.kC = function() {
k9(1), this.kD(0, 0, aq.eE - 1, aq.eF - 1), b.fj || b.fS || this.kE(b.ea, 3e3, !0, .3)
}, this.kE = function(player, kA, kF, zoom) {
b.kG || k7 && !kF && k8 || 0 === a6.f5[player] || (q.kH = !1, k8 = kF, k9(kA), function(player) {
k2 = (a6.i2[player] + a6.i1[player] + 1) / 2, k3 = (a6.i5[player] + a6.i4[player] + 1) / 2
}(player), function(zoom, player) {
var h1 = a6.i1[player] - a6.i2[player] + 1,
player = a6.i4[player] - a6.i5[player] + 1,
hg = aL.gA / h1,
hp = aL.gF / player,
hg = (k4 = hg < hp ? hg : hp, 0 !== zoom ? zoom : h1 < 20 && player < 20 ? .5 : .9);
k4 *= hg, kN(7 / 8)
}(zoom, player), k7 = !0, aC.kK())
}, this.kL = function(kA) {
b.fS || b.kG || (q.kH = !1, k8 = !1, k9(kA), kM(0, 0, aq.eE - 1, aq.eF - 1), kN(7 / 8), k7 = !0, aC.kK())
}, this.kD = function(jj, jk, jl, jm) {
kM(jj, jk, jl, jm), hB = k4, q.kQ(k2, aL.gA / 2), q.kR(k3, aL.gF / 2), az.kS()
}, this.kT = function() {
return !(k7 && k8 || (k7 = !1))
}, this.iE = function() {
var kW, kX, eo, ka;
k7 && (jv < .5 ? jx < jy && (jx += jy * ju, jw = jv) : 1 - jw < jv && (jx = (jx -= jy * ju) < jy * ju ? jy * ju : jx), k5 = k5 >= b4.dc ? b4.dc - 1 : k5, eo = b4.dc - k5, jv = 1e3 < eo || 1 < (jv += jx * eo / k6) ? 1 : jv, k5 = b4.dc,
eo = hB, kW = hA, kX = hC, eo = (hB = k1 * Math.pow(k4 / k1, jv)) / eo, ka = 1 - (k1 * Math.pow(k4 / k1, 1 - jv) - k1) / (k4 - k1), q.kQ(jz + ka * (k2 - jz), aL.gA / 2), q.kR(k0 + ka * (k3 - k0), aL.gF / 2), a5.zoom(eo, (kW * eo -
hA) / (1 - eo), (kX * eo - hC) / (1 - eo)), az.kS(), 1 <= jv && (k7 = !1, b0.kb = !0), b4.d3 = !0)
}
}
function bL() {
let iT = aZ.color;
this.jp = iT.kc(0, 0, 0), this.kd = iT.ke(0, 0, 0, .7), this.kf = iT.ke(0, 0, 0, .5), this.kg = iT.ke(0, 0, 0, .85), this.kh = iT.ke(0, 0, 0, .75), this.ki = iT.ke(0, 0, 0, .6), this.kj = iT.ke(0, 0, 0, .35), this.gN = iT.kc(255, 255, 255), this
.kk = iT.ke(255, 255, 255, .3), this.kl = iT.ke(255, 255, 255, .6), this.km = iT.ke(255, 255, 255, .4), this.kn = iT.ke(255, 255, 255, .25), this.ko = iT.ke(255, 255, 255, .85), this.kp = iT.ke(255, 255, 255, .75), this.kq = iT.ke(255, 255,
255, .15), this.kr = iT.kc(128, 128, 128), this.ks = iT.ke(64, 64, 64, .75), this.kt = iT.ke(88, 88, 88, .83), this.ku = iT.ke(60, 60, 60, .85), this.kv = iT.ke(80, 60, 60, .85), this.kw = iT.kc(30, 255, 30), this.kx = iT.kc(0, 200, 0),
this.ky = iT.kc(128, 255, 128), this.kz = iT.ke(10, 65, 10, .75), this.l0 = iT.ke(0, 255, 0, .6), this.l1 = iT.ke(0, 255, 0, .5), this.l2 = iT.ke(0, 200, 0, .5), this.l3 = iT.ke(0, 100, 0, .75), this.l4 = iT.ke(0, 60, 0, .8), this.l5 = iT.ke(
0, 255, 0, .3), this.l6 = iT.ke(0, 180, 0, .6), this.l7 = iT.ke(0, 120, 0, .85), this.l8 = iT.kc(0, 120, 0), this.l9 = iT.ke(0, 70, 0, .85), this.lA = iT.kc(255, 120, 120), this.lB = iT.kc(255, 160, 160), this.lC = iT.kc(255, 70, 70),
this.lD = iT.kc(230, 0, 0), this.lE = iT.ke(220, 0, 0, .6), this.lF = iT.ke(255, 100, 100, .8), this.lG = iT.ke(100, 0, 0, .85), this.lH = iT.ke(60, 0, 0, .85), this.lI = iT.ke(200, 0, 0, .6), this.lJ = iT.ke(120, 0, 0, .85), this.lK = iT.kc(
255, 70, 10), this.lL = iT.ke(0, 60, 60, .85), this.lM = iT.ke(10, 60, 60, .9), this.lN = iT.ke(0, 96, 96, .75), this.lO = iT.kc(160, 160, 255), this.lP = iT.ke(0, 40, 90, .75), this.lQ = iT.ke(0, 0, 255, .6), this.lR = iT.kc(200, 200,
255), this.lS = iT.kc(255, 120, 100), this.lT = iT.ke(255, 255, 0, .5), this.lU = iT.ke(255, 255, 150, .2), this.lV = iT.kc(255, 255, 0), this.lW = iT.kc(255, 255, 200), this.lX = iT.ke(200, 200, 0, .6), this.lY = iT.ke(140, 120, 0, .75),
this.lZ = iT.ke(180, 160, 40, .75), this.la = iT.ke(70, 50, 20, .85), this.lb = iT.ke(255, 140, 0, .75), this.lc = iT.ke(0, 0, 0, 0), iT = null
}
function cJ() {
this.fk = new ld, this.fU = new le, this.lf = new lg, this.lh = new li, this.iX = new lj
}
function ld() {
this.fl = function(fe) {
b.iv ? aX.lf.fl(b.ea, fe) : aO.lk.ll(fe)
}, this.ft = function(h9, hZ) {
l.lm(), b.iv ? aX.lf.ft(b.ea, h9, hZ) : aO.lk.ln(h9, hZ)
}, this.lo = function(h9, lp) {
l.lm(), b.iv ? aX.lf.lq(b.ea, h9, lp) : aO.lk.lr(h9, lp)
}, this.fq = function(h9, fe) {
b.iv ? aX.lf.fq(b.ea, h9, fe) : al.fo.fp(b.ea, fe) && aO.lk.ls(h9, fe)
}, this.lt = function(lu, fe) {
b.iv ? aX.lf.lt(b.ea, lu, fe) : al.fo.lv(b.ea, lu, fe) && aO.lk.lw(lu, fe)
}, this.lx = function(hZ) {
b.iv ? aX.lf.lx(b.ea, hZ) : aO.lk.ly(hZ)
}, this.lz = function(m0) {
b.iv ? aX.lf.m1(b.ea, m0) : aO.lk.m2(m0)
}, this.m3 = function(m4) {
b.iv ? aX.lf.m3(b.ea, m4) : aO.lk.m5(m4)
}, this.m6 = function() {
b.iv ? aX.lf.m6(b.ea) : aO.lk.m7()
}
}
function lj() {
this.iY = function(player, lp, ha) {
aZ.fU.m8(player, ha, lp) && (a4.lo(player, lp), lp < b.ht) && aM.random() < aM.value(10) && (hU[lp] = 0)
}, this.m9 = function(player, lp, ha) {
aZ.fU.mA(ha, lp) && (aZ.fU.mB(lp, am.dj[0]), b2.mC(player, lp), a5.mD(lp, am.dj[0]))
}
}
function le() {
this.mE = function(m0, player) {
l.lz(b.ea, player, m0), aO.lk.mF(m0, player)
}, this.mG = function(player) {
l.mH(player, 0), aO.lk.mI(player)
}, this.mJ = function(mK, player) {
l.mL(mK, player), aO.lk.mM(mK, player)
}, this.mN = function() {
b.iv || b.fS || aO.mO.mN()
}
}
function li() {
this.iE = function(mP) {
var id, dt, kT;
for (af.ct(mP), af.g4 += 2, kT = 8 * af.size; af.g4 + 8 <= kT;) id = af.mQ(4), dt = af.mQ(9), 0 === id ? this.mR(id, dt, af.mQ(22)) : 1 === id ? this.mR(id, dt, af.mQ(10), af.mQ(10)) : 2 === id ? this.mR(id, dt, af.mQ(10), af.mQ(9)) :
3 === id || 4 === id ? this.mR(id, dt, af.mQ(10), af.mQ(22)) : 5 === id || 6 === id ? this.mR(id, dt, af.mQ(10)) : 7 === id ? this.mR(id, dt, af.mQ(1)) : this.mR(id, dt)
}, this.mS = [], this.mT = function() {
for (var mV = 0, mW = 0, mX = 0, mY = 0, mZ = 0, ma = 0, eJ = 0; eJ < 512; eJ++) mV += a6.jS[eJ], mW += a6.f5[eJ], mX += a6.eb[eJ], mY += al.j4.mb[eJ];
mZ += al.j4.mc, ma += iV, this.mS.push(((255 & mV + mW + mX + mY + mZ + ma) << 12) + ((3 & mV) << 10) + ((3 & mW) << 8) + ((3 & mX) << 6) + ((3 & mY) << 4) + ((3 & mZ) << 2) + (3 & ma))
}, this.mR = function(id, dt, dv, dx) {
0 === id ? aX.lf.fl(dt, dv) : 1 === id ? aX.lf.ft(dt, dv, dx) : 2 === id ? aX.lf.lq(dt, dv, dx) : 3 === id ? aX.lf.fq(dt, dv, dx) : 4 === id ? aX.lf.lt(dt, dv, dx) : 5 === id ? aX.lf.lx(dt, dv) : 6 === id ? aX.lf.m1(dt, dv) : 7 === id ?
aX.lf.m3(dt, dv) : 8 === id ? aX.lf.m6(dt) : aX.lf.md(dt)
}
}
function lg() {
this.fl = function(player, fe) {
aZ.fU.fV(0) && aZ.fU.fW(player) && ak.hD(fe) && (aY.me.mf(0, player, fe), b.mg.hW(player, fe))
}, this.ft = function(player, h9, hZ) {
a6.mh[player]++, aZ.fU.fV(1) && aZ.fU.fW(player) && aZ.fU.mi(player, hZ) && aZ.fU.mj(player, h9, 12, b.eY) && aZ.fU.mk(player, hZ) && ((hZ = a3.hr(player, am.dp[0])) || a3.iC(player)) && hM(player, hZ) && (aY.me.mf(1, player, h9, am.dp[
0]), aZ.fU.ml(player), b2.mm(player, h9), hS(player))
}, this.lq = function(player, h9, lp) {
aZ.fU.fV(1) && aZ.fU.fW(player) && b.hT && aZ.fU.mi(player, lp) && aZ.fU.mn(player, lp) && aZ.fU.m8(player, aZ.fU.h8(player, h9), lp) && (aY.me.mf(2, player, h9, lp), a4.lo(player, lp))
}, this.fq = function(player, h9, fe) {
aZ.fU.fV(1) && aZ.fU.fW(player) && ak.hD(fe) && al.j4.mc !== al.j4.mo && al.j4.mb[player] !== al.j4.mp && 0 !== a6.ey[player].length && aZ.fU.mj(player, h9, 32, 16) && al.mq.mr(player, fe) && (aY.me.mf(3, player, h9, fe), aZ.fU.ml(
player), al.j4.ms(player))
}, this.lt = function(player, lu, fe) {
aZ.fU.fV(1) && aZ.fU.fW(player) && ak.hD(fe) && al.fo.mt(player, lu) && al.mq.mu(fe) && (aY.me.mf(4, player, lu, fe), aZ.fU.mv(player, 8), al.j4.lt())
}, this.lx = function(player, hZ) {
aZ.fU.fV(1) && aZ.fU.fW(player) && (hZ = Math.min(hZ, b.ej), a3.hr(player, hZ)) && (aY.me.mf(5, player, hZ), a3.mw(player, hZ))
}, this.m1 = function(player, m0) {
(aZ.fU.fV(1) || aZ.fU.fV(2)) && aZ.fU.fW(player) && (m0 = aj.mx(m0, 0, 1023), aY.me.mf(6, player, m0), a5.my(player, 0, m0))
}, this.m3 = function(player, m4) {
aZ.fU.fV(1) && aZ.fU.fW(player) && (aY.me.mf(7, player, m4), aJ.mz(player, m4))
}, this.m6 = function(player) {
(aZ.fU.fV(0) || aZ.fU.fV(1)) && aZ.fU.fW(player) && ao.m6(player) && aY.me.mf(8, player)
}, this.md = function(player) {
ao.md(player), aY.me.mf(9, player)
}
}
function n0() {
var n2;
this.n1 = [], this.n2 = document.createElement("div"), this.n3 = function(g3) {
var title = document.createElement("h2");
title.textContent = g3, title.style.margin = "0", title.style.marginBottom = "0.6em", title.style.fontSize = "1.4em", title.style.overflowWrap = "break-word", this.n2.appendChild(title)
}, this.n4 = function(g3) {
var n5 = document.createElement("p");
return n5.textContent = g3, n5.style.fontSize = "0.75em", n5.style.lineHeight = "1.2em", n5.style.marginBottom = "0", this.n2.appendChild(n5), n5
}, this.n6 = function(n7, fontSize = "1em") {
var n2 = document.createElement("div");
n2.innerHTML = n7, n2.style.fontSize = fontSize, n2.style.lineHeight = "1.2em", this.n2.appendChild(n2)
}, this.n8 = function(n9) {
for (var nA = n9.nA, ef = nA.length, eJ = 0; eJ < ef; eJ++) this.n2.appendChild(nA[eJ])
}, this.nB = function(nC) {
this.n1.push(nC), this.n2.appendChild(nC.dI)
}, this.resize = function() {
for (var ef = this.n1.length, eJ = 0; eJ < ef; eJ++) this.n1[eJ].resize && this.n1[eJ].resize()
}, (n2 = this.n2).style.position = "absolute", n2.style.height = "auto", n2.style.padding = "0.5em"
}
function nD(nE, nF) {
var eJ, n2 = document.createElement("div");
function nL() {
var eJ, nM, gF, en, eo, nI = aL.nN * n2.offsetWidth,
nO = new Float64Array(function(nI) {
var gA = .25 * aZ.g5.nJ(.6) * aL.g1;
return Math.max(Math.floor(nI / gA), 1)
}(nI)),
nP = b1.nP,
nQ = (nI - (nO.length + 1) * b1.gap) / (nO.length * aL.nN);
for (nO.fill(nP), eJ = 0; eJ < nF.length; eJ++) nM = (eo = nF[eJ].n2).style, gF = Math.min(...nO), en = nO.indexOf(gF), nM.top = aZ.g5.nR(gF), nM.left = aZ.g5.nR(nP + en * (nQ + nP)), nM.width = aZ.g5.nR(nQ), aZ.g5.nS(eo, 5), nO[en] += eo
.offsetHeight + 3 * nP;
n2.style.height = aZ.g5.nR(Math.max(...nO) - 2 * nP)
}
for (this.nG = nF, this.resize = function() {
var eJ;
for (eJ = 0; eJ < nF.length; eJ++) nF[eJ].resize();
nL(), nL()
}, n2.style.width = "100%", n2.style.maxWidth = "100%", nE.style.lineHeight = "1.5em", nE.style.overflowX = "hidden", nE.style.overflowY = "auto", eJ = 0; eJ < nF.length; eJ++) n2.appendChild(nF[eJ].n2);
nE.appendChild(n2)
}
function nT(title, nU, backgroundColor = aa.kg) {
let nV = document.createElement("button");
this.button = nV, this.nW = nU;
let nX;
function nZ() {
var nc = aZ.color.nd(nX);
0 < nc[0] && nc[0] < 255 && nc[0] === nc[1] && nc[0] === nc[2] || (this.style.backgroundColor = aZ.color.nZ(nX, 50))
}
function nb() {
this.style.backgroundColor = nX
}
function na() {
this.style.backgroundColor = nX, this.blur()
}
var self;
this.nY = function(iT) {
nX = iT, nV.style.backgroundColor = iT
}, self = this, nV.innerHTML = title, nV.style.color = aa.gN, nV.style.userSelect = "none", nV.style.outline = "none", nV.style.overflowWrap = "break-word", self.nY(backgroundColor), nV.style.border = "none", nV.style.font = "inherit", nV
.style.fontSize = "1em", nV.style.padding = "0em 0.3em", nV.onclick = nU, nV.addEventListener("mouseover", nZ), nV.addEventListener("mouseout", na), nV.addEventListener("focus", nZ), nV.addEventListener("blur", nb)
}
function ne(nf, nE) {
var n2, eJ;
for (this.resize = function() {
for (var eJ = 0; eJ < nf.length; eJ++) aZ.g5.nS(nf[eJ].button);
n2.style.gap = n2.style.padding = aZ.g5.nR(b1.nP)
}, (n2 = document.createElement("div")).style.display = "grid", n2.style.gridTemplateColumns = "repeat(auto-fill, minmax(9.5em, 1fr))", n2.style.overflowY = "auto", n2.style.gridAutoRows = "5.3em", n2.style.maxHeight = "100%", eJ = 0; eJ < nf
.length; eJ++) nf[eJ].button.style.fontSize = "1.2em", n2.appendChild(nf[eJ].button);
nE.appendChild(n2)
}
function nh(ni, nj, nk = .5) {
this.fO = 0, this.fP = 0, this.gA = 0, this.gF = 0, this.resize = function() {
this.gF = Math.min(aZ.g5.nJ(nk) * ni[1] * aL.g1, aL.gF - 2 * b1.gap), this.gA = Math.min(this.gF * (ni[0] / ni[1]), aL.gA - 2 * b1.gap), this.gF = ni[1] * this.gA / ni[0], this.fO = b1.gap + nj[0] * (aL.gA - this.gA - 2 * b1.gap), this
.fP = b1.gap + nj[1] * (aL.gF - this.gF - 2 * b1.gap)
}, this.nl = function() {
return this.fO + .5 * this.gA
}
}
function nm(nn, title = aW.no[121], nW = function() {}) {
function click() {
var value = 1 - nn.value;
this.textContent = (value ? "🟢 " : "⚪ ") + title, bA.np.nq(nn.g4, value), nW(value)
}
var dI;
this.dI = document.createElement("p"), (dI = this.dI).textContent = (nn.value ? "🟢 " : "⚪ ") + title, dI.style.margin = "0", dI.style.marginBottom = "0.5em", dI.style.cursor = "pointer", dI.addEventListener("click", click)
}
function nr(nE, n7) {
var n2 = document.createElement("div");
this.ns = n2, this.resize = function() {
n2.style.padding = aZ.g5.nR(b1.nP), n2.style.lineHeight = aZ.g5.nR(aZ.g5.nt(.035))
}, nE.style.overflowX = "hidden", nE.style.overflowY = "auto", n2.innerHTML = n7, nE.appendChild(n2)
}
function nu(nv) {
var n2 = document.createElement("div");
this.dI = n2, this.nw = nv, this.resize = function() {
for (var ef = nv.length, eJ = 1; eJ < ef; eJ++) aZ.g5.nS(nv[eJ], 4)
};
var eJ, ef = nv.length;
for (n2.style.width = "100%", n2.style.height = "2.7em", n2.style.marginTop = "0.6em", n2.style.border = "inherit", eJ = 0; eJ < ef; eJ++) nv[eJ].style.verticalAlign = "top", nv[eJ].style.width = (100 / ef).toFixed(2) + "%", nv[eJ].style.height =
"100%", nv[eJ].style.fontSize = "0.75em", n2.appendChild(nv[eJ])
}
function nx(nn, type = "text") {
var dI;
this.dI = document.createElement("input"), (dI = this.dI).type = type, dI.id = "input" + nn.title, dI.value = nn.value, dI.style.width = "100%", dI.style.userSelect = "none", dI.style.outline = "none", dI.style.resize = "none", dI.style.border =
"inherit", dI.style.font = "inherit", dI.style.color = aa.gN, dI.style.backgroundColor = aa.kd, dI.style.fontSize = "1em", dI.style.padding = "0.1em 0.2em", -1 !== nn.g4 && (dI.addEventListener("blur", function() {
bA.np.nq(nn.g4, dI.value.trim())
}), dI.addEventListener("keypress", function(event) {
"Enter" === event.key && (event.preventDefault(), bA.np.nq(nn.g4, dI.value.trim()))
}))
}
function ny(nn) {
var dI;
this.dI = document.createElement("input"), (dI = this.dI).type = "color", dI.id = "input" + nn.title, dI.value = aZ.color.nz(aZ.color.o0(bA.j4.o1())), dI.style.width = "100%", dI.style.userSelect = "none", dI.style.outline = "none", dI.style
.resize = "none", dI.style.border = "inherit", dI.style.font = "inherit", dI.style.color = aa.gN, dI.style.backgroundColor = aa.kd, dI.style.fontSize = "2em", dI.style.height = "1em", dI.style.padding = "0", dI.addEventListener("input",
function() {
bA.np.nq(nn.g4, aZ.color.o2(aZ.color.nd(aZ.color.o3(dI.value))))
})
}
function o4(nE, o5, h9) {
var o6, eJ, o7 = new Array(o5.length),
nF = new Array(o5.length);
for (this.resize = function() {
for (var ef = o5.length, eJ = 0; eJ < ef; eJ++) 0 < eJ && aZ.g5.nS(o7[eJ], 8)
}, o6 = document.createElement("div"), nE.style.overflowX = "hidden", nE.style.overflowY = "auto", ! function() {
var eJ, eo, ef = o5.length;
for (eJ = 0; eJ < ef; eJ++) {
o7[eJ] = document.createElement("div"), o7[eJ].style.display = "flex", o7[eJ].style.width = "100%", o7[eJ].style.height = "2.5em", o7[eJ].style.backgroundColor = eJ % 2 == 0 ? aa.ks : aa.kj, nF[eJ] = new Array(o5[0].length);
for (let hg = 0; hg < o5[0].length; hg++) nF[eJ][hg] = eo = document.createElement("div"), eo.style.display = "flex", eo.style.width = "100%", eo.style.height = "100%", eo.style.justifyContent = "center", eo.style.alignItems =
"center", eo.innerHTML = o5[eJ][hg], 0 < hg && aZ.g5.nS(eo, 4), o7[eJ].appendChild(eo)
}
}(), eJ = 0; eJ < o5.length; eJ++) o6.appendChild(o7[eJ]);
nE.appendChild(o6)
}
function o9(nn, oA = function() {}) {
this.nA = [];
let oB = this.nA;
function click() {
for (let eJ = 0; eJ < oB.length; eJ++) oB[eJ].textContent = oB[eJ].textContent.replace("🟢", "⚪");
this.textContent = this.textContent.replace("⚪", "🟢");
var g4 = parseInt(this.name);
bA.np.nq(nn.g4, g4), oA(g4)
}
var oC, ef = nn.oD.length;
for (let eJ = 0; eJ < ef; eJ++)(oC = document.createElement("p")).textContent = "⚪ " + nn.oD[eJ], oC.style.margin = "0", oC.name = "" + eJ, oC.style.cursor = "pointer", oC.style.fontSize = "1em", oC.addEventListener("click", click), oB.push(oC);
oB[nn.value].textContent = oB[nn.value].textContent.replace("⚪", "🟢")
}
function oE(title, oF) {
var eJ, o6 = document.createElement("div"),
oG = document.createElement("div"),
oH = document.createElement("div"),
oI = document.createElement("div");
for (this.oJ = oH, this.show = function() {
document.body.appendChild(o6)
}, this.oN = function() {
document.body.removeChild(o6)
}, this.resize = function() {
var eJ, dI, ef = oF.length,
oO = aZ.g5.nt(.1),
oP = aZ.g5.nt(.08 + .04 * (aL.oQ < 1));
for (oG.style.height = aZ.g5.nR(oO), aZ.g5.nS(oG, 2), oI.style.top = aZ.g5.nR(aL.gF / aL.nN - oP), oI.style.height = aZ.g5.nR(oP), aZ.g5.nS(oI, 8), oH.style.top = aZ.g5.nR(oO), oH.style.height = oH.style.maxHeight = aZ.g5.nR(aL.gF / aL
.nN - oO - oP), oI.style.font = oG.style.font = aZ.g5.g6(0, aZ.g5.nt(.02, .25)), oH.style.font = aZ.g5.g6(0, aZ.g5.nt(.02, .4)), eJ = 0; eJ < ef; eJ++)(dI = oF[eJ].button).style.top = "0", dI.style.left = (100 * eJ / ef).toFixed(
2) + "%", dI.style.width = (100 / ef).toFixed(2) + "%", dI.style.height = "100%", 0 < eJ && aZ.g5.nS(dI, 4)
}, o6.style.position = "absolute", o6.style.top = "0", o6.style.left = "0", o6.style.width = "100%", o6.style.height = "100%", oG.style.position = "absolute", oG.style.top = "0", oG.style.left = "0", oG.style.width = "100%", oG.style
.display = "flex", oG.style.backgroundColor = aa.kg, oI.style.position = "absolute", oI.style.left = "0", oI.style.width = "100%", oH.style.position = "absolute", oH.style.width = "100%", oH.style.backgroundColor = aa.kg, ! function() {
var eJ;
for (eJ = 0; eJ < oF.length; eJ++) oF[eJ].button.style.position = "absolute", oF[eJ].button.style.fontSize = "1.2em"
}(), eJ = 0; eJ < oF.length; eJ++) oI.appendChild(oF[eJ].button);
oG.appendChild(function() {
var oM = document.createElement("h1");
return oM.textContent = title, oM.style.margin = "auto", oM.style.fontSize = "2.3em", oM
}()), o6.appendChild(oH), o6.appendChild(oG), o6.appendChild(oI)
}
function oR(name, oS) {
var oT = document.createElement("textarea"),
oV = (this.oU = oT, !0);
function ob() {
oT.select(), document.execCommand("copy")
}
this.resize = function() {
oT.style.padding = aZ.g5.nR(b1.nP)
}, this.oW = function(oX) {
oT.value = oX
}, this.oY = function() {
return oT.value
}, this.oZ = function() {
oT.select()
}, this.clear = function() {
oT.value = ""
}, this.oa = function() {
oV && navigator.clipboard ? (oT.select(), navigator.clipboard.writeText(oT.value).catch(function() {
oV = !1, ob()
})) : ob()
}, oT.setAttribute("name", name), oT.setAttribute("id", name + "Field"), oT.setAttribute("autocomplete", "off"), oT.setAttribute("placeholder", oS), oT.style.top = "0", oT.style.left = "0", oT.style.width = "100%", oT.style.height = "100%",
oT.style.userSelect = "none", oT.style.outline = "none", oT.style.resize = "none", oT.style.border = "none", oT.style.color = aa.gN, oT.style.backgroundColor = aa.kd, oT.style.fontSize = "1.2em"
}
function ce() {
this.nW = new oc, this.dK = new od, this.np = new oe, this.j4 = new og, this.ct = function() {
this.dK.ct(), (new oh).ct()
}
}
function od() {
function oi(eJ, title, type = 0, oD = null, oo = 0, dg = 0) {
bA.dK.data.push({
g4: eJ,
title: title,
type: type,
oD: oD,
value: oo,
oo: oo,
dg: dg
})
}
function oj(eJ, title, type, oD = null, oo = "", dg = 0) {
bA.dK.data.push({
g4: eJ,
title: title,
type: type,
oD: oD,
value: oo,
oo: oo,
dg: dg
})
}
function ok(kT) {
for (var eJ = bA.dK.data.length; eJ < kT; eJ++) bA.dK.data.push(null)
}
this.data = [], this.ct = function() {
oi(0, "", 1, ["English", "Русский", "Türkçe", "Española", "Deutsch", "Polski"], 0, 5), 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), oi(108), oi(109), oj(110, null, 2), oi(111), oi(112), oi(113), oj(114, null, 2), oi(115), oj(116, null, 2), oi(117, null, 1), oj(118, null, 2,
null, "", 2), oi(119, null, 1, null, 0, 1), oj(120, null, 2), oi(121, "CountryColor", 1, null, -1), oj(122, "Username", 2), oi(123, "Same as MP Username"), oj(124, null, 2, null, "Player " + Math.floor(1e3 * Math.random())), ok(
180), oi(180, "R0", 0), oi(181, "R1", 0)
}, this.translate = function() {
this.data[0].title = "🌐 " + aW.no[101], this.data[1].title = aW.no[102], this.data[2].title = aW.no[103], this.data[5].title = aW.no[104], this.data[6].title = aW.no[105], this.data[7].title = aW.no[106], this.data[8].title = aW.no[107],
this.data[9].title = aW.no[108], this.data[10].title = aW.no[109], this.data[11].title = aW.no[110], this.data[1].oD = [aW.no[111], aW.no[112], aW.no[113], aW.no[114]], this.data[9].oD = [aW.no[112], aW.no[115], aW.no[116]], this
.data[10].oD = [aW.no[109] + " 1", aW.no[117] + " 1", aW.no[109] + " 2", aW.no[117] + " 2"], this.data[11].oD = [aW.no[118], aW.no[119], aW.no[120]]
}, this.nq = function(g4, value) {
this.data[g4].value = value
}, this.dL = function(g4, value) {
this.nq(g4, value), bA.nW.save(g4, String(value)), bA.nW.save(g4, String(this.data[g4].dg), !0)
}, this.ol = function() {
for (var eJ = 0; eJ < this.data.length; eJ++) this.data[eJ] && (bA.nW.save(eJ, String(this.data[eJ].value)), bA.nW.save(eJ, String(this.data[eJ].dg), !0))
}, this.om = function(g4) {
return Number(this.data[g4].value)
}, this.on = function(g4) {
return String(this.data[g4].value)
}
}
function oc() {
this.op = function(g4, dg = !1) {
return Number(this.oq(g4, dg))
}, this.oq = function(g4, dg = !1) {
var df = null;
return 0 === b8.id ? b8.or && (df = b8.or.getItem((dg ? "v" : "d") + g4)) : 1 === b8.id ? df = b8.os.loadString((dg ? 1e3 : 2e3) + g4) : 2 === b8.id && (df = b8.ot[(dg ? "v" : "d") + g4]), df && 0 !== df.length ? df : null
}, this.save = function(g4, value, dg = !1) {
0 === b8.id ? b8.or && b8.or.setItem((dg ? "v" : "d") + g4, value) : 1 === b8.id ? b8.os.saveString((dg ? 1e3 : 2e3) + g4, value) : 2 === b8.id && (b8.ot["d" + g4] = value, b8.ou.postMessage((dg ? "v" : "d") + g4 + " " + value))
}
}
function oh() {
this.ct = function() {
! function() {
var data = bA.dK.data;
0 === data[2].dg && (aL.gF > aL.gA || 0 !== b8.id) && (data[2].value = data[2].oo = 1);
0 === data[100].dg && (data[100].value = data[100].oo = (0 === b8.id ? "Player " : 1 === b8.id ? "Android User " : "iOS User ") + Math.floor(1e3 * Math.random()));
data[0].value = data[0].oo = aW.ox()
}();
var eJ, df, data = bA.dK.data,
ef = data.length;
for (eJ = 0; eJ < ef; eJ++) data[eJ] && data[eJ].dg === bA.nW.op(eJ, !0) && (df = bA.nW.oq(eJ), data[eJ].value = null === df ? data[eJ].oo : 2 === data[eJ].type ? df : Number(df));
bA.dK.data[10].value = bA.dK.data[10].oo
}
}
function og() {
function p1(ds) {
if (0 === ds.length) bA.np.nq(116, "");
else {
let p5 = ds[0];
for (let eJ = 1; eJ < ds.length; eJ++) p5 += ";" + ds[eJ];
bA.np.nq(116, p5)
}
}
this.oy = function() {
bA.dK.data[110].value.length && (bA.dK.data[106].value = bA.dK.data[110], bA.np.nq(110, ""), this.oz())
}, this.oz = function() {
var ds = bA.dK.data[116].value.split(";");
ds.length % 2 == 1 && ds.pop(), ds.unshift(bA.dK.data[106].value), ds.unshift(bA.dK.data[105].value);
for (let eJ = 2; eJ < ds.length; eJ += 2)
if (ds[eJ] === ds[0]) {
ds.splice(eJ, 2);
break
} var p0 = [];
for (let eJ = 0; eJ < ds.length; eJ += 2) p0.push(ds[eJ]);
p1(ds), bA.dK.data[117].value = 0, bA.dK.data[117].oD = p0
}, this.p2 = function(g4) {
bA.dK.data[117].oD.splice(g4, 1), bA.dK.data[117].value = Math.min(g4, bA.dK.data[117].oD.length - 1);
var ds = bA.dK.data[116].value.split(";");
ds.splice(2 * g4, 2), p1(ds)
}, this.p3 = function(g4) {
var ds = bA.dK.data[116].value.split(";");
return {
p4: ds[2 * g4],
password: ds[2 * g4 + 1]
}
}, this.o1 = function() {
let df = aj.mx(bA.dK.data[121].value, -1, 262143);
return df = -1 === df ? ~~(262144 * Math.random()) : df
}
}
function oe() {
this.nq = function(g4, value) {
bA.dK.data[g4].value !== value && (bA.dK.dL(g4, value), 0 === g4 ? (at.p6(), aW.ct(), at.d5(2)) : 1 === g4 ? aL.d8(1) : 2 === g4 ? aL.d8(0) : 5 === g4 && (aZ.g5.p7(), aL.d8(0)))
}, this.p8 = function() {
for (var data = bA.dK.data, eJ = 0; eJ < 100; eJ++) data[eJ] && bA.dK.dL(eJ, data[eJ].oo);
aZ.g5.p7(), aL.d8(1), aW.ct()
}, this.p9 = function() {
var data = bA.dK.data;
for (let eJ = 0; eJ < data.length; eJ++) data[eJ] && bA.dK.nq(eJ, data[eJ].oo)
}
}
function bO() {
this.pA = new pB, this.pC = new pD, this.ct = function() {
this.pA.ct()
}
}
function pD() {
this.pE = function(size) {
var pF = af,
ds = [];
for (let eJ = 0; eJ < size; eJ++) ds.push(String.fromCharCode(pF.mQ(16)));
return ds.join("")
}, this.pG = function(g3) {
return 20 < (g3 = g3.trim()).length ? g3.substring(0, 20) : g3
}
}
function pB() {
var pH = new Uint8Array(78);
this.ct = function() {
var eJ;
for (pH[50] = 37, eJ = 0; eJ < 10; eJ++) pH[eJ + 3] = eJ + 1;
for (eJ = 0; eJ < 26; eJ++) pH[eJ + 20] = eJ + 11, pH[eJ + 52] = eJ + 38
}, this.pI = function(g3) {
return g3.trim().replace(new RegExp("[^a-zA-Z0-9_\\-]", "g"), "_")
}, this.pJ = function(g3, size) {
if ((g3 = this.pI(g3)).length > size) return g3.substring(0, size);
for (; g3.length < size;) g3 += "_";
return g3
}, this.pK = function(g3) {
for (var pL = pH, ef = g3.length, ds = new Uint8Array(ef), eJ = 0; eJ < ef; eJ++) ds[eJ] = pL[g3.charCodeAt(eJ) - 45];
return ds
}, this.pM = function(pN) {
ac.d4(6 * pN.length), this.pO(pN), af.ct(ac.mP)
}, this.pO = function(pN) {
var ef = pN.length,
gA = ac;
for (let eJ = 0; eJ < ef; eJ++) gA.pP(6, pN[eJ])
}, this.pQ = function(g3) {
this.pO(this.pK(g3))
}, this.pR = function(g3, size) {
this.pO(this.pK(this.pJ(g3, size)))
}
}
function pS() {
var gA, gF, pT;
function pt(pu, eo, pr, pZ, pm) {
eo = ps(pu, eo + 1 + 2 * pZ & 3);
! function(pu, pv) {
return 1 < Math.abs(pu % gA - pv % gA) || 1 < Math.abs(py(pu) - py(pv))
}(pu, eo) && 0 === pm[eo << 2] && (pm[eo << 2] = pr)
}
function py(em) {
return Math.floor((em + .5) / gA) % gF
}
function ps(em, eo) {
return em + pT[eo]
}
this.pU = function(g3) {
var eJ, pV, ef, pX, pF = af;
for (ae.pA.pM(ae.pA.pK(g3)), aq.eE = gA = pF.mQ(12), aq.eF = gF = pF.mQ(12), pT = [-gA, -1, gA, 1], aq.pi = document.createElement("canvas"), aq.pi.width = aq.eE, aq.pi.height = aq.eF, aq.pe = aq.pi.getContext("2d", {
alpha: !1
}), aq.pf = aq.pe.getImageData(0, 0, aq.eE, aq.eF), aq.pj = aq.pf.data, aZ.pk.pl(aq.pj), ef = pF.mQ(12), pV = pF.mQ(5), pX = pb(gA * gF - 1), eJ = 0; eJ < ef; eJ++) ! function(pW, em, pY, pZ) {
var eJ, eo, pF = af,
pm = aq.pj,
pn = em,
po = em,
pp = 0,
pq = 1 + pY,
pr = 2 - pY;
for (pm[em << 2] = pq, eJ = 0; eJ < pW; eJ++) eo = pF.mQ(2), em = ps(em, eo), pm[em << 2] === pq ? pp % 2 == 1 && pt(po, pp + 2 * pZ + 3, pr, pZ, pm) : pm[em << 2] = pq, pt(em, eo, pr, pZ, pm), pt(po, eo, pr, pZ, pm), po = em,
pp = eo;
ps(em, 0) === pn ? (pt(em, 0, pr, pZ, pm), pt(pn, 0, pr, pZ, pm)) : ps(em, 1) === pn && (pt(em, 0, pr, pZ, pm), pt(pn, 2, pr, pZ, pm));
0 === pW && (pt(pn, 0, pr, pZ, pm), pt(pn, 2, pr, pZ, pm))
}(pF.mQ(pV), pF.mQ(pX), 1 === pF.mQ(1), 1 === pF.mQ(1));
var fO, fP, pz, q0, q1, q2, pm = aq.pj,
q3 = !0,
q4 = aq.ir.q5[aq.q6].q4,
q7 = aq.ir.q5[aq.q6].q7;
for (fP = 0; fP < gF; fP++)
for (q0 = !0, q1 = q3, fO = q2 = 0; fO < gA; fO++) pz = 4 * fP * gA + 4 * fO, q2 <= fO && 0 < pm[pz] && (q1 = 2 === pm[pz], q0) && (q0 = !1, q1 !== q3) ? (q3 = q1, q2 = fO + 1, fO = -1) : (q1 ? (pm[pz] = q7[0], pm[1 + pz] = q7[1], pm[
2 + pz] = q7[2]) : (pm[pz] = q4[0], pm[1 + pz] = q4[1], pm[2 + pz] = q4[2]), pm[3 + pz] = 255);
aq.pe.putImageData(aq.pf, 0, 0), aq.pg = !0, aq.ph.ct(), b4.d3 = !0
}
}
function bU() {
var fO, fP, gA, gF, q8, q9, qA, qB, player, ds;
function qJ() {
return function() {
var eJ;
for (eJ = 0; eJ < 8; eJ++)
if (fO = eX(gA * aM.random(), aM.value(100)), fP = eX(gF * aM.random(), aM.value(100)), qR()) return 1;
return
}() || function() {
var h1, h4, hg, qH, hp, qG;
for (h1 = eX(gA * aM.random(), aM.value(100)), h4 = eX(gF * aM.random(), aM.value(100)), hg = 40; 1 <= hg; hg--)
for (qH = gF - hg; 0 <= qH; qH -= 40)
for (fP = (qH + h4) % gF, hp = 40; 1 <= hp; hp--)
for (qG = gA - hp; 0 <= qG; qG -= 40)
if (fO = (qG + h1) % gA, qR()) return 1;
return
}()
}
function qR() {
for (var em, qT, gap = eX(q8 - qB, 2), qU = qA + fP * q8 + gap, qV = q9 + fO * q8 + gap, qS = qU + qB - 1; qU <= qS; qS--)
for (qT = qV + qB - 1; qV <= qT; qT--)
if (em = a1.qP(qT, qS), !a1.eh(em) || a1.hc(em)) return;
return 1
}
function qK(qG, qH) {
qC(), qW(qG - 2, qH - 2)
}
function qC() {
a6.jS[player] = 0, a6.eb[player] = 0, a6.f5[player] = a6.qX[player] = 0, a6.eg[player] = [], a6.ex[player] = [], a6.ey[player] = [], a6.f1[player] = [], a6.i2[player] = a6.i5[player] = a6.i1[player] = a6.i4[player] = 0
}
function qW(qG, qH) {
var em, eJ, qZ, qa;
for (a6.jS[player] = 1, player < b.ht ? a6.eb[player] = b.qY : a6.eb[player] = ib[c.ha[player - b.ht]], a6.i2[player] = qG + 10, a6.i5[player] = qH + 10, a6.i4[player] = a6.i1[player] = 0, qZ = qG; qZ < qG + 4; qZ++)
for (qa = qH; qa < qH + 4; qa++)(qG < qZ && qZ < qG + 3 || qH < qa && qa < qH + 3) && (em = a1.qP(qZ, qa), a1.eh(em)) && (a6.i2[player] = qZ < a6.i2[player] ? qZ : a6.i2[player], a6.i1[player] = qZ > a6.i1[player] ? qZ : a6.i1[player], a6
.i5[player] = qa < a6.i5[player] ? qa : a6.i5[player], a6.i4[player] = qa > a6.i4[player] ? qa : a6.i4[player], ds[a6.f5[player]] = em, a6.f5[player]++, a1.qb(em, player));
for (a6.qX[player] = a6.f5[player], eJ = a6.f5[player] - 1; 0 <= eJ; eJ--) a1.qc(ds[eJ], player) ? (a1.ei(ds[eJ], player), a6.ex[player].push(ds[eJ])) : a1.qd(ds[eJ]) ? (a1.ei(ds[eJ], player), a6.ey[player].push(ds[eJ])) : a1.qe(ds[eJ]) && (
a1.ei(ds[eJ], player), a6.f1[player].push(ds[eJ]))
}
function qQ(qG, qH) {
for (var em, qT, qS = qH; qH - 6 < qS; qS--)
for (qT = qG; qG - 6 < qT; qT--)
if (em = a1.qP(qT, qS), a1.hc(em)) return;
return 1
}
this.ct = function() {
var eJ, qG, qH;
if (ds = new Array(12), qB = 6, q8 = 10, gA = eX(aq.eE, q8), gF = eX(aq.eF, q8), q9 = eX(aq.eE - q8 * gA, 2), qA = eX(aq.eF - q8 * gF, 2), b.fj)
for (eJ = 0; eJ < b.ht; eJ++) player = eJ, qC(), a6.jS[player] = 1;
if (aV.iq && aV.ir.qD) {
for (player = 0; player < b.ej; player++)
if (1 !== a6.jS[player]) {
if (player < b.qI) {
if (function() {
var qG = aV.ir.qD[player] + 1,
qH = aV.ir.qO[player] + 1;
if (3 < qG && qG < aq.eE - 5 && 3 < qH && qH < aq.eF - 5 && a1.eh(a1.qP(qG, qH)) && qQ(qG + 3, qH + 3)) return qK(qG + 1, qH + 1), 1;
return
}()) continue;
if (qJ()) {
qG = q9 + fO * q8 + eX(q8, 2), qH = qA + fP * q8 + eX(q8, 2), qK(qG, qH);
continue
}
}
qC()
}
} else ! function() {
var qG, qH;
for (player = 0; player < b.ej; player++) 1 !== a6.jS[player] && (player < b.qI && qJ() ? (qG = q9 + fO * q8 + eX(q8, 2), qH = qA + fP * q8 + eX(q8, 2), qK(qG, qH)) : qC())
}();
b2.ed[7] = a6.f5[b.ea], b2.ed[8] = a6.eb[b.ea]
}, this.qf = function(hZ, qg, qh) {
var eJ, qG, qH, em, fO, fP;
for (player = hZ, eJ = 0; eJ < 20; eJ++)
for (qG = qg + eJ; qg - eJ <= qG; qG--)
for (qH = qh + eJ; qh - eJ <= qH; qH--)
if ((qG === qg + eJ || qG === qg - eJ || qH === qh + eJ || qH === qh - eJ) && 3 < qG && qG < aq.eE - 5 && 3 < qH && qH < aq.eF - 5 && a1.eh(a1.qP(qG, qH)) && qQ(qG + 3, qH + 3)) {
if (0 < a6.f5[player]) {
for (fP = fO = em = void 0, fO = a6.i1[player]; fO >= a6.i2[player]; fO--)
for (fP = a6.i4[player]; fP >= a6.i5[player]; fP--) em = 4 * (fP * aq.eE + fO), a1.qj(player, em) && (a1.qk(em), a6.f5[player]--);
qC()
}
return qW(qG - 1, qH - 1), !0
} return !1
}, this.ql = function(hZ) {
player = hZ, qJ() ? qK(q9 + fO * q8 + eX(q8, 2), qA + fP * q8 + eX(q8, 2)) : qC()
}
}
function qm() {
aE.qn(), gM.setTransform(hB, 0, 0, hB, 0, 0), gM.imageSmoothingEnabled = hB < 3, gM.drawImage(aq.pi, q.jn(), q.gK()), an.qo.gL(), gM.drawImage(qp, q.jn(), q.gK()), aE.gL(), gM.imageSmoothingEnabled = !1, gM.setTransform(1, 0, 0, 1, 0, 0), al.qo
.gL(), a5.gL(), f.gL(), (b.kG ? (b6.gL(), ab) : (l.gL(), t.gL(), p.gL(), ab.gL(), aJ.gL(), u.gL(), q.gL(), o.gL(), b6.gL(), s.gL(), n.gL(), k.gL(), j.gL(), v.gL(), b3.gL(), aG)).gL()
}
function qq(qr, gA, gF) {
qr.clearRect(0, 0, gA, gF), qr.fillStyle = aa.kh, qr.fillRect(0, 0, gA, gF)
}
function qs(qr, gA, gF, qt) {
qr.fillStyle = aa.gN, qr.fillRect(0, 0, gA, qt), qr.fillRect(0, 0, qt, gF), qr.fillRect(gA - qt, 0, qt, gF), qr.fillRect(0, gF - qt, gA, qt)
}
function qu(qr, fO, fP, gP, qt, em, qv) {
qr.fillStyle = aa.gN;
var em = Math.floor(gP * em),
qx = (em += (em - qt) % 2, Math.floor((em - qt) / 2)),
gP = Math.floor((gP - em) / 2);
qr.fillRect(fO + gP, fP + gP + qx, em, qt), qv && qr.fillRect(fO + gP + qx, fP + gP, qt, em)
}
function qz() {
this.r0 = null, this.ct = function(r0) {
this.r0 = r0, l.r1(this.r0)
}, this.r2 = function(r3) {
var gn = (this.r0[r3].r4 - this.r0[1 - r3].r4) / 10,
gn = 8 / (1 + Math.pow(2, gn / 32)),
gn = Math.floor(10 * gn + .5),
r6 = this.r7(this.r0[r3].r4 + gn + 1),
gn = this.r7(this.r0[1 - r3].r4 - gn);
0 === r3 ? l.r9(this.r0, r6, gn, ["rgba(10,140,10,0.75)", "rgba(140,10,10,0.75)"]) : l.r9(this.r0, gn, r6, ["rgba(140,10,10,0.75)", "rgba(10,140,10,0.75)"])
}, this.r7 = function(r4) {
return 16e3 <= (r4 = r4 < 0 ? 0 : 16e3 < r4 ? 16e3 : r4) ? "Unknown" : (r4 / 10).toFixed(1)
}
}
function bx() {
this.rA = new rB, this.pm = new rC
}
function rC() {
this.rD = !1;
let jj, jk, gap, gP, zoom, rE, rG;
this.rH = [], this.rI = 100;
let rK = 0,
rL = new Array(9),
rM = [],
rN = [],
rO = 0,
rP = 0,
rQ = 0,
rR = 0;
function rd() {
rL.sort((hg, hp) => hp.ic - hg.ic);
let g3 = "" + rL[0].m0;
for (let eJ = 1; eJ < 9; eJ++) g3 += "," + rL[eJ].m0;
for (let eJ = 0; eJ < 9; eJ++) g3 += "," + rL[eJ].ic;
bA.dK.dL(120, g3)
}
this.ct = function() {
var rS = [0, 1, 2, 4, 7, 8, 9, 10, 11, 12, 13, 14, 15, 6];
for (let eJ = 0; eJ < rS.length; eJ++) {
var color = 6 === rS[eJ] ? aa.l6 : aa.ki;
this.rH.push(aZ.gV.rT(a0.get(3), rS[eJ], color))
}
for (let eJ = 0; eJ < a9.rA.rU; eJ++) rN.push(a9.rA.rV - a9.rA.rU + eJ);
for (let eJ = 0; eJ < a9.rA.rW; eJ++) rN.push(a9.rA.rX + eJ);
var rY = a9.rA.rZ(ai.rY);
for (let eJ = 0; eJ < rY.length; eJ++) rN.push(rY[eJ]);
var ds = bA.dK.data[120].value.split(",");
if (18 !== ds.length)
for (let eJ = 0; eJ < 9; eJ++) rL[eJ] = {
m0: 1015 + eJ,
ic: 0
};
else
for (let eJ = 0; eJ < 9; eJ++) {
var df = parseInt(ds[eJ]),
iT = (df = 0 <= df && df < a9.rA.rV ? df : 0, parseInt(ds[eJ + 9]));
iT = 0 <= iT && iT < 1e3 ? iT : 0, rL[eJ] = {
m0: df,
ic: iT
}
}
}, this.show = function(gD, gE, re = 0) {
if (rO = gD, rP = gE, rK = re, this.rD = !0, rM = [], 0 === rK)
for (let eJ = 0; eJ < 9; eJ++) rM.push(rL[eJ].m0);
else {
let hp = 49 * rK,
hg = hp - 49;
hg >= rN.length && (rK = 1, hg = 0, hp = 49), hp = Math.min(hp, rN.length);
for (let eJ = hg = hp - 49; eJ < hp; eJ++) rM.push(rN[eJ])
}
rM.push(1024);
re = rM.length, gP = Math.floor((b8.cy.g0() ? .075 : .0468) * aL.g1), gap = Math.floor(gP / 3), rE = gP + gap, (rQ = 10 * rE) > aL.gA && (rQ = aL.gA, rE = rQ / 10, gP = 3 * rE / 4, gap = rE - gP), rG = aj.fK(re, 10) + !!(re % 10), (rR =
rG * rE) > aL.gF && (rR = aL.gF, rE = rR / rG, gP = 3 * rE / 4, gap = rE - gP), zoom = gP / this.rI, re = .5 * gap;
jj = Math.min(Math.max(gD - .5 * rQ + re, re), aL.gA - rQ + re), jk = Math.min(Math.max(gE - .5 * rR + re, re), aL.gF - rR + re)
}, this.fX = function(gD, gE, player) {
if (!this.rD) return !1;
if (this.rh(gD, gE)) {
gD = aj.mx(aj.fK(gD - jj + .5 * gap, rE), 0, 9);
if ((gD += 10 * aj.mx(aj.fK(gE - jk + .5 * gap, rE), 0, 9)) >= rM.length) return j.oN(), !0;
gE = rM[gD];
if (1024 === gE) return this.show(rO, rP, rK + 1), !0;
! function(m0) {
for (let eJ = 0; eJ < 9; eJ++) rL[eJ].ic = Math.floor(.99 * rL[eJ].ic);
for (let eJ = 0; eJ < 9; eJ++)
if (m0 === rL[eJ].m0) return rL[eJ].ic = Math.min(rL[eJ].ic + 30, 999), rd();
rL.splice(5, 0, {
m0: m0,
ic: Math.max(rL[4].ic, 30)
}), rL.pop(), rd()
}(gE), player === b.ea ? aX.fk.lz(gE) : aX.fU.mE(gE, player)
}
return j.oN(), !0
}, this.rh = function(gD, gE) {
return !(gD < jj - .5 * gap || gE < jk - .5 * gap || gD >= jj + rQ - .5 * gap || gE >= jk + rR - .5 * gap)
}, this.gL = function() {
gM.fillStyle = aa.kh, gM.fillRect(jj - .5 * gap, jk - .5 * gap, rQ, rR);
var pz = .5 * b1.ri,
ef = (gM.lineWidth = b1.ri, gM.strokeStyle = gM.fillStyle = aa.gN, gM.strokeRect(jj - .5 * gap + pz, jk - .5 * gap + pz, rQ - 2 * pz, rR - 2 * pz), gM.imageSmoothingEnabled = !0, rM.length);
for (let eJ = 0; eJ < ef; eJ++) this.rj(rM[eJ], gM, jj + eJ % 10 * rE, jk + aj.fK(eJ, 10) * rE, gP);
gM.imageSmoothingEnabled = !1
}, this.rj = function(m0, gW, fO, fP, gP) {
var fg;
m0 >= 1024 - a9.rA.rU ? (fg = gP / this.rI, gW.setTransform(fg, 0, 0, fg, fO, fP), gW.drawImage(this.rH[m0 - 1024 + a9.rA.rU], 0, 0), gW.setTransform(1, 0, 0, 1, 0, 0)) : (aZ.g5.textAlign(gW, 1), aZ.g5.textBaseline(gW, 1), gW.font = aZ.g5
.g6(0, .89 * gP), gW.fillText(a9.rA.rk(m0), fO + .5 * gP, fP + (.35 - aZ.g5.rl + .56) * gP))
}
}
function rB() {
this.emojis = ["🥰", "😎", "😘", "😜", "🤗", "🥳", "😇", "😊", "🥱", "🙄", "🤔", "🥺", "😡", "😭", "😱", "😞", "💀", "👹", "👋", "🙏", "👏", "💪", "🙋‍♂️", "🤦‍♂️", "⬆️", "➡️", "⬇️", "⬅️", "👀", "❤️", "💔", "💥", "🔥", "🪦", "🥇", "🥈", "🥉",
"🎖️", "🏅", "👑", "🎉", "💯", "✝️", "☪️", "🕉️", "☸️", "✡️", "☦️", "⚛️"
], this.rU = 13, this.rW = this.emojis.length, this.rX = 676, this.rV = 1024, this.rm = this.emojis.indexOf("💀"), this.rn = this.rm + 1, this.ro = this.emojis.indexOf("🥇"), this.rp = this.emojis.indexOf("😊"), this.rk = function(df) {
return df < this.rX ? String.fromCharCode(55356, 56806 + aj.fK(df, 26), 55356, 56806 + df % 26) : this.emojis[Math.min(df - this.rX, this.rW - 1)]
}, this.rZ = function(g3) {
var ef = g3.length - 2,
ds = [];
for (let eJ = 0; eJ < ef; eJ++) {
var gi = g3.charCodeAt(eJ) - 56806,
gj = g3.charCodeAt(eJ + 2) - 56806;
0 <= gi && gi < 26 && 0 <= gj && gj < 26 && (ds.push(26 * gi + gj), eJ += 3)
}
return ds
}, this.rq = function(df) {
return df < this.rX
}, this.rr = function(df) {
return df >= 1024 - this.rU
}, this.rs = function(df) {
return df >= this.rX && df < this.rX + this.rn
}
}
function bN() {
this.pA = new rt, this.pC = new ru, this.ct = function() {
this.pA.ct()
}
}
function ru() {
this.pQ = function(g3) {
var ef = g3.length,
gA = ac;
for (let eJ = 0; eJ < ef; eJ++) gA.pP(16, g3.charCodeAt(eJ))
}
}
function rt() {
var rv = new Uint8Array(64);
this.ct = function() {
var eJ;
for (rv[0] = 45, rv[37] = 95, eJ = 0; eJ < 10; eJ++) rv[eJ + 1] = 48 + eJ;
for (eJ = 0; eJ < 26; eJ++) rv[eJ + 11] = 65 + eJ, rv[eJ + 38] = 97 + eJ
}, this.rw = function(rx) {
for (var pF = af, pN = new Uint8Array(rx), eJ = 0; eJ < rx; eJ++) pN[eJ] = pF.mQ(6);
return pN
}, this.ry = function(pN) {
for (var ef = pN.length, rz = rv, ds = [], eJ = 0; eJ < ef; eJ++) ds.push(String.fromCharCode(rz[pN[eJ]]));
return ds.join("")
}
}
function bV() {
var s0, s1, s2;
s0 = [32, 65, 191, 913, 931], s1 = [64, 127, 688, 930, 1155], s2 = new Array(s0.length + 1);
for (var eJ = 0; eJ < s2.length; eJ++) {
s2[eJ] = 0;
for (var hg = eJ - 1; 0 <= hg; hg--) s2[eJ] += s1[hg] - s0[hg]
}
function s8(iT) {
for (var eJ = s0.length - 1; 0 <= eJ; eJ--)
if (iT >= s0[eJ] && iT < s1[eJ]) return eJ;
return -1
}
this.pG = function(g3) {
return 0 !== (g3 = g3.trim()).indexOf("Bot ") && 0 !== g3.indexOf("[Bot] ") && function(g3, s5, s6) {
var ef = (g3 = g3.trim()).length;
if (ef < s5 || s6 < ef) return !1;
for (var iT, s7 = 0, eJ = 0; eJ < ef; eJ++)
if (iT = g3.charCodeAt(eJ), s7 += 65 <= iT && iT <= 90 || 1040 <= iT && iT <= 1071 ? 1 : 0, -1 === s8(iT)) return !1;
if (3 < s7 && s7 > Math.floor(ef / 2)) return !1;
return !0
}(g3, 3, 20)
}, this.s9 = function(g3) {
for (var ef = (g3 = g3.trim()).length, ds = [], eJ = 0; eJ < ef; eJ++) {
var iT, em = s8(iT = g3.charCodeAt(eJ));
ds.push(s2[em] + iT - s0[em])
}
return ds
}, this.pU = function(ds) {
for (var iT, hp, g3 = "", ef = ds.length, eJ = 0; eJ < ef; eJ++)
for (hp = 1; hp < s2.length; hp++)
if (ds[eJ] < s2[hp]) {
iT = s0[hp - 1] + ds[eJ] - s2[hp - 1], g3 += String.fromCharCode(iT);
break
} return g3
}, this.sA = function(g3) {
for (var ds = this.s9(g3), result = "", eJ = 0; eJ < ds.length; eJ++) result = (result += ds[eJ] < 10 ? "00" : ds[eJ] < 100 ? "0" : "") + ds[eJ].toString(10);
return result
}, this.sB = function(g3) {
for (var ds = new Array(Math.floor(g3.length / 3)), eJ = 0; eJ < g3.length; eJ += 3) ds[Math.floor(eJ / 3)] = parseInt(g3.substring(eJ, eJ + 3));
return this.pU(ds)
}, this.sC = function(g3) {
for (var df, ds = [g3.length], eJ = 0; eJ < g3.length; eJ++) ds[eJ] = g3.charCodeAt(eJ) - 48;
var result = "";
for (eJ = 0; eJ < g3.length; eJ++) eJ === g3.length - 1 || 51 < 10 * ds[eJ] + ds[eJ + 1] ? result += ds[eJ].toString() : (df = 10 * ds[eJ] + ds[eJ + 1], result += String.fromCharCode(df + (df < 26 ? 65 : 71)), eJ++);
return result
}, this.sD = function(g3) {
for (var iT, result = "", eJ = 0; eJ < g3.length; eJ++) 48 <= (iT = g3.charCodeAt(eJ)) && iT < 58 ? result += String.fromCharCode(iT) : 65 <= iT && iT < 75 ? result += "0" + (iT - 65).toString() : 75 <= iT && iT < 91 ? result += (iT - 65)
.toString() : 97 <= iT && iT < 123 && (result += (iT - 71).toString());
return result
}, this.sE = function(g3) {
for (var ef = g3.length, ds = [], eJ = 0; eJ < ef; eJ++)(iT = g3.charCodeAt(eJ)) < 58 ? ds.push(g3[eJ]) : (iT -= iT < 91 ? 65 : 71, ds.push(String(eX(iT, 10))), ds.push(String(iT - 10 * eX(iT, 10))));
var ef = ds.length - 2,
iT = 0,
pN = [];
for (eJ = 0; eJ < ef; eJ += 3) pN[iT++] = parseInt(ds[eJ] + ds[eJ + 1] + ds[eJ + 2]);
return pN
}, this.sF = function() {
for (var gY, sG = "", eJ = 0; eJ < 6; eJ++) gY = 48 + aM.random() % 36, gY += 58 <= gY ? 39 : 0, sG += String.fromCharCode(gY);
return sG
}
}
function cV() {
this.sH = new sI, this.sJ = new sK, this.result = new sL, this.fo = new sM
}
function sN() {
this.sO = function() {}
}
function sM() {
this.sP = function() {
var ef = iV,
r0 = iW,
sQ = [];
for (let eJ = 0; eJ < ef; eJ++) {
var em = r0[eJ];
a1.sR(em) && sQ.push(em)
}
return sQ
}, this.sS = function() {
var ef = iV,
r0 = iW;
let dd = 0;
var f5 = a6.f5;
for (let eJ = 0; eJ < ef; eJ++) dd += f5[r0[eJ]];
return dd
}
}
function sI() {
function sU() {
if (2 === b.sh) return 1;
aJ.si(), b.sh = 2, b.sj = b.sk
}
function sY() {
ap.result.sO(), ap.result.sl(), l.sm(!0), l.sn(247, 0), t.jC(!0), u.jC(!0), aJ.jC(), ab.so(), b.fS && b4.sp.sq(), b4.d3 = !0, b0.sr(), b8.cy.setState(0)
}
this.sT = function() {
sU() || (b.sV = 2, ap.result.sW(), l.sX(0, 59), g.kL(2700), v.show(!1, !1, !0), sY())
}, this.sZ = function(sa) {
sU() || (b.sV = 1, 8 === b.it ? (b.sb = sa < 0 ? a6.f5[0] >= a6.f5[1] ? 0 : 1 : sa, b.sc = +(b.sb === b.ea), b.sc ? l.sX(b.sb, 2) : l.sX(1 - b.ea, 3), b.sd.r2(b.sb)) : b.hT ? (b.sc = +(b5.iU[b.ea] === b6.se()), 9 === b.it && l.sf()) : (b
.sb = jM[0], b.sc = +(b.sb === b.ea), l.sg(b.sb)), v.show(1 === b.sc, !1), sY())
}
}
function sL() {
this.ss = 0, this.sQ = null;
let su = this.st = 0;
this.sv = 0, this.sW = function() {
0 !== a6.jS[b.ea] && a1.sR(b.ea) && 2 === b.sV && (b.sc = 2)
}, this.sO = function() {
var en, dd;
this.sQ = ap.fo.sP(), this.ss = b9.sw.sx(), b.it < 7 && 2 !== b.sV ? this.st = b6.sy() : this.st = ap.fo.sS(), 8 === b.it && 1 === b.sV ? (en = 1 - b.sb, dd = a6.f5[en], a6.f5[en] = 0, aX.fU.mN(), a6.f5[en] = dd) : aX.fU.mN(), su = .01 *
a6.t2[b.ea] / 50, this.sv = 0, b.it < 7 ? ap.sJ.sO(this.sQ) : 7 === b.it || 10 === b.it ? aZ.fU.fW(b.ea) && (en = ap.result.ss * (1 + b.t5), 2 === b.sV ? ap.result.sv += en * a6.f5[b.ea] / ap.result.st : jM[0] === b.ea && (ap.result
.sv += en)) : 8 !== b.it || 1 !== b.sc || (ap.result.sv += 2, 0 === bA.dK.data[107].value) || 200 <= (dd = bA.dK.data[108].value) || (ap.result.sv += .01 * (200 - dd) * 2 * (1 + (0 === dd)))
}, this.sl = function() {
0 !== su && 0 !== ap.result.sv && l.t6(0, "🏆 You earned prize money of 🧈 " + ap.result.sv.toFixed(2) + ".", 40, 0, aa.gN, aa.kh, -1, !1)
}
}
function sK() {
function tF(sQ, tD) {
var gn = (b.it + 2) * (1 + b.t5) * sQ.length / (1e5 * ap.result.st);
let tH = "";
for (let eJ = 0; eJ < tD.length; eJ++) {
var tI = tD[eJ].tJ * gn;
tH += " " + tD[eJ].name + ": " + aZ.jr.tK(1e6 * tI)
}
tH.length && (l.t6(0, "The following clans won these points:", 45, 0, aZ.color.kc(225, 240, 255), aa.kh, -1, !1), l.t6(0, tH.trim(), 45, 0, aZ.color.kc(225, 240, 255), aa.kh, -1, !1))
}
this.sO = function(sQ) {
var t7 = b5.t8[b6.t9()],
tA = b5.fz[t7],
tA = (o.tB("Team " + tA, 2, 1, 12), l.t6(0, "Team " + tA + " won the game!", 40, 0, aa.gN, aa.kh, -1, !1), b.sc && aZ.fU.fW(b.ea) && (ap.result.sv += .125 * ap.result.ss * (1 + b.t5) * (b.it + 2) * a6.f5[b.ea] / ap.result.st),
function(r0) {
var tD = [],
username = a6.tL,
ef = r0.length;
loop: for (let eJ = 0; eJ < ef; eJ++) {
var em = r0[eJ],
tM = aZ.jr.tN(username[em]);
if (tM) {
for (let hg = tD.length - 1; 0 <= hg; hg--)
if (tD[hg].name === tM) {
tD[hg].tJ += a6.f5[em];
continue loop
} tD.push({
name: tM,
tJ: a6.f5[em],
tO: b5.iU[em]
})
}
}
return tD
}(sQ));
tA.length && (2 === b.sV ? tF(sQ, tA) : tF(sQ, function(tD, t7) {
for (let eJ = tD.length - 1; 0 <= eJ; eJ--) b5.t8[tD[eJ].tO] !== t7 && tD.splice(eJ, 1);
return tD
}(tA, t7)))
}
}
function cb() {
this.id = 0, this.dg = 0, this.or = null, this.os = null, this.ot = null, this.ou = null, this.cy = new tP, this.ct = function() {
var self, dg;
self = this, "undefined" == typeof Android || (dg = Android.getVersion()) < 12 || (self.dg = dg, self.id = 1, self.os = Android),
function(self) {
var dg;
"undefined" != typeof mwIOSdataX && window.webkit && window.webkit.messageHandlers && window.webkit.messageHandlers.iosCommandA && (self.id = 2, self.ot = mwIOSdataX, self.ou = window.webkit.messageHandlers.iosCommandA, dg = self
.ot.version, self.dg = dg ? Number(dg) : 0)
}(this),
function(self) {
var or;
if (0 === self.id) {
try {
if (!(or = window.localStorage)) return;
or.setItem("tls7", "1"), or.removeItem("tls7")
} catch (error) {
return
}
self.or = or
}
}(this)
}
}
function tP() {
this.tT = function() {
bA.np.p8(), bA.np.p9(), aO.j4.close(0, 3255), 0 === b8.id ? b8.or && b8.or.clear() : 1 === b8.id ? b8.os.saveString(199, "") : 2 === b8.id && b8.ou.postMessage("clear")
}, this.tU = function() {
2 === b8.id ? b8.ou.postMessage("showConsentForm") : 1 === b8.id ? b8.os.setState(7) : au.dM.showCMPScreen()
}, this.tV = function() {
this.setState(14)
}, this.tW = function() {
var g3 = bA.dK.on(101),
max = ("string" != typeof(g3 = "" === g3 ? function() {
{
if (2 === b8.id) return b8.ot.password;
if (1 === b8.id) return 12 <= b8.dg ? b8.os.loadString(22) : ""
}
return a2.tZ(9)
}() : g3) && (g3 = ""), Math.floor(Math.pow(2, 48))),
tY = Math.floor(parseInt(i.sD(g3)));
return 0 < tY && tY < max ? bA.dK.dL(101, g3) : (tY = Math.floor(1 + (max - 1) * Math.random()), bA.dK.dL(101, g3)), tY
}, this.g0 = function() {
return 1 === bA.dK.om(2)
}, this.ta = function() {
bA.dK.dL(102, "")
}, this.setState = function(db) {
1 === b8.id && 5 <= b8.dg && b8.os.setState(db)
}, this.tb = function() {
var tc;
1 === b8.id && 7 <= b8.dg ? b8.os.setState(5) : ((tc = new URL(window.location)).searchParams.set("v", "" + Math.floor(1e3 * Math.random())), window.location.href = tc.toString())
}, this.cz = function() {
1 !== b8.id || b8.dg < 17 || b8.os.saveString(23, document.documentElement.outerHTML)
}, this.dQ = function() {
0 === b8.id ? au.dM.ct() : 1 === b8.id ? b8.os.prepareAd("1688441405") : 2 === b8.id && (0 === b8.dg ? b8.ou.postMessage("prepare ad 4500876070") : b8.ou.postMessage("loadAds 4500876070"))
}, this.de = function(dd) {
return 0 === b8.id ? !!au.dM.dZ() : 1 === b8.id ? 12 <= b8.dg && (b8.os.presentAd(dd), !0) : 2 === b8.id && (0 === b8.dg ? b8.ou.postMessage("show ad " + dd) : b8.ou.postMessage("showAd"), !0)
}, this.d7 = function() {
2 === b8.id && b8.dg < 23 && at.d5(4, 1, new td("App Update Required", "A new iOS app version with bug fixes has been published.<br>Please download the new Territorial.io app version for iOS:<br><a href='" + ai.te + "' target='_blank'>" +
ai.te + "</a>", !0, [new nT("❌ " + aW.no[92], function() {
at.d5(0)
}, aa.lJ)]))
}
}
function cq() {
function tr(title, tH, dI) {
tl(dI), at.d5(4, 5, new td("⚠️ " + title, tH, !0))
}
function tl(dI) {
! function(dI) {
var db = y.tk();
0 !== db && (6 === db ? aO.j4.tv(dI) : 7 === db ? (aH.tw(), aO.j4.close(aO.j4.to, 3256)) : 8 === db && b.tx(!0))
}(dI), at.j4.tu()
}
this.tf = function(tg, dI) {
if (8 === at.th && 0 === tg) at.d5(4, 0, new td("⚠️ " + aW.ti(64), aW.tj(dI), !0));
else {
var db = y.tk();
if (6 === db) {
if (4211 === dI) return tl(dI), void at.d5(4, 5, new td("🚀 " + aW.no[122], aW.no[123], !0, [new nT("❌ " + aW.no[92], function() {
at.tm()
}, aa.lJ), new nT("🔄 " + aW.no[124], function() {
b8.cy.tb()
}, aa.l3)]));
if (4214 !== dI) return void x.tn(tg)
} else {
if (7 !== db) return 8 === db ? void(tg !== aO.j4.tp || b.iv || 1 !== b.sh || l.tq(aW.tj(dI))) : void 0;
if (tg !== aO.j4.to) return
}
tr(aW.ti(64), aW.tj(dI), dI)
}
}, this.ts = function(dI) {
8 === y.tk() ? b.iv || 1 !== b.sh || l.tq(aW.tj(dI)) : tr(aW.ti(64), aW.tj(dI), dI)
}
}
function bG() {
var ty, tz;
function u0() {
var gA = new cM;
gA.d4(1612), gA.pP(1, 0), gA.pP(6, 7), gA.pP(2, b8 ? b8.id : 3), gA.pP(1, dD ? 1 : 0), gA.pP(1, dF ? 1 : 0), gA.pP(1, a ? a.d9 : 0);
for (let eJ = 0; eJ < tz.length && eJ < 100; eJ++) gA.pP(16, tz.charCodeAt(eJ));
ty.send(gA.mP), u1()
}
function u1() {
ty && (ty.onclose = null, ty.onopen = null, ty = null)
}
window.addEventListener("error", function error(dI) {
window.removeEventListener("error", error);
return alert("Error:\n" + dI.filename + " " + dI.lineno + " " + dI.colno + " " + dI.message);
window.removeEventListener("error", error), tz = dI.lineno + " " + dI.colno + " " + dI.message, (ty = new WebSocket("wss://territorial.io/s52/")).onopen = u0, ty.onclose = function() {
u1()
}, 0 === dI.lineno && 0 === dI.colno || (b8 && 1 === b8.id ? b8.os.showToast(tz) : alert(tz))
})
}
function cP() {
var u2, u3, u4 = -15e3,
u5 = !1;
function fX(dI) {
uO() || (u5 = !0, uP(dI, 1), aO.j4.uQ(aO.j4.tp), uR(Math.floor(aL.nN * dI.clientX), Math.floor(aL.nN * dI.clientY)))
}
function uD(dI) {
u4 = b4.dc, uP(dI, 1), aO.j4.uQ(aO.j4.tp), 0 < dI.touches.length && (u2 = Math.floor(aL.nN * dI.touches[0].clientX), u3 = Math.floor(aL.nN * dI.touches[0].clientY), aF.uD(dI) || uR(u2, u3))
}
function uR(fO, fP) {
0 === b.sh ? y.fX(fO, fP) : ab.uS(fO, fP) || b3.fX(fO, fP) || v.fX(fO, fP) || j.uT(fO, fP) || n.fX(fO, fP) || k.fX(fO, fP) || ah.uU(fO, fP) || aJ.fX(fO, fP) || j.uV(fO, fP)
}
function u9(dI) {
uO() || (u5 = !0, uP(dI, 1), uW(Math.floor(aL.nN * dI.clientX), Math.floor(aL.nN * dI.clientY)))
}
function uE(dI) {
u4 = b4.dc, uP(dI, 1), 0 < dI.touches.length && (u2 = Math.floor(aL.nN * dI.touches[0].clientX), u3 = Math.floor(aL.nN * dI.touches[0].clientY), aF.uE(dI) || uW(u2, u3))
}
function uW(fO, fP) {
0 === b.sh ? y.u9(fO, fP) : (ar.fN(fO, fP), b3.u9(fO, fP) || (k.u9(fO, fP), j.rD() ? j.u9(fO, fP) : p.fY ? p.u9(fO) && (b4.d3 = !0) : (t.u9(fO, fP), q.kH && q.u9(fO, fP) && (b4.d3 = !0))))
}
function uB(dI) {
uO() || (uP(dI, 1), 0 === b.sh ? (y.click(-1024, -1024), r.uX()) : (t.uY(-1024, -1024), k.u9(-1024, -1024), p.uZ(), q.kH && (q.kH = !1)))
}
function uA(dI) {
uO() || (uP(dI, 1), ua(Math.floor(aL.nN * dI.clientX), Math.floor(aL.nN * dI.clientY), 2 === dI.button))
}
function click(dI) {
uO() || uP(dI, 1)
}
function uF(dI) {
u4 = b4.dc, uP(dI, 1), dI && dI.touches && 0 < dI.touches.length && 0 !== b.sh ? q.kH = !1 : aF.ub() || ua(u2, u3, !1)
}
function uG(dI) {
u4 = b4.dc, uP(dI, 1), ua(u2, u3, !1)
}
function uH(dI) {
aU.uH(dI)
}
function uI(dI) {
aU.uI(dI)
}
function uJ(dI) {
uO() || uP(dI, 0)
}
function ua(fO, fP, uc) {
0 === b.sh ? y.click(fO, fP) : (t.uY(fO, fP), b3.uY(), p.uZ(), q.kH = !1, j.click(fO, fP, uc) && (b4.d3 = !0))
}
function uC(dI) {
var fO, fP, deltaY;
uO() || (uP(dI, 1), aO.j4.uQ(aO.j4.tp), fO = Math.floor(aL.nN * dI.clientX), fP = Math.floor(aL.nN * dI.clientY), deltaY = dI.deltaY, 1 === dI.deltaMode && (deltaY *= 16), 0 === b.sh ? y.uC(fO, fP, deltaY) : t.uC(fO, fP, deltaY) || (p.ud(fO,
fP) ? p.uC(deltaY) && (b4.d3 = !0) : q.uC(fO, fP, +deltaY)))
}
function uK(dI) {
uP(dI, 0)
}
function uP(dI, id) {
0 === id && at.rD() || (id = window.innerWidth / document.documentElement.clientWidth) < .999 || 1.001 < id || 0 !== y.tk() && dI.preventDefault()
}
function uM(dI) {
if (keybindHandler(dI.key)) return;
uO() || ("ArrowLeft" === dI.key ? aC.uf(3) : "ArrowUp" === dI.key ? aC.uf(0) : "ArrowRight" === dI.key ? aC.uf(1) : "ArrowDown" === dI.key ? aC.uf(2) : "a" === dI.key ? p.ug(.9375) : "d" === dI.key ? p.ug(16 / 15) : "s" === dI.key ? p.ug(7 /
8) : "w" === dI.key ? p.ug(8 / 7) : "1" === dI.key ? p.ug(.75) : "2" === dI.key ? p.ug(7 / 8) : "3" === dI.key ? p.ug(.9375) : "4" === dI.key ? p.ug(31 / 32) : "5" === dI.key ? p.ug(32 / 31) : "6" === dI.key ? p.ug(16 / 15) :
"7" === dI.key ? p.ug(8 / 7) : "8" === dI.key ? p.ug(4 / 3) : "+" === dI.key ? 0 !== b.sh && q.uC(Math.floor(aL.gA / 2), Math.floor(aL.gF / 2), -200) : "-" === dI.key ? 0 !== b.sh && q.uC(Math.floor(aL.gA / 2), Math.floor(aL.gF / 2),
200) : "c" === dI.key ? 0 !== b.sh && b3.uh() : " " === dI.key ? b.sh && ar.fQ(!1) : "b" === dI.key && b.sh && ar.fQ(!0))
}
function uL(dI) {
uO() || b4.dc < 400 || at.ui(dI) || (8 !== y.tk() && y.ui(dI) ? b4.d3 = !0 : "Escape" === dI.key ? y.dh() : "ArrowLeft" === dI.key || "a" === dI.key ? aC.uj(3) : "ArrowUp" === dI.key || "w" === dI.key ? aC.uj(0) : "ArrowRight" === dI.key ||
"d" === dI.key ? aC.uj(1) : "ArrowDown" === dI.key || "s" === dI.key ? aC.uj(2) : "h" === dI.key ? 1 <= b.sh && ab.uk(!b.kG) : " " === dI.key && b.sh && (k.fT && k.ul(), b.fS) && ab.um(!1))
}
function uN() {
"hidden" === document.visibilityState ? 1 === b.sh && (b.fS ? ab.un() : !b.iv || k.fT || b.fj || k.ul()) : b4.d3 = !0
}
function uO() {
return u4 + 15e3 > b4.dc
}
function resize() {
aL.uq()
}
this.u6 = 0, this.u7 = "", this.ct = function() {
u8.addEventListener("mousedown", fX, {
passive: !1
}), u8.addEventListener("mousemove", u9, {
passive: !1
}), u8.addEventListener("mouseup", uA, {
passive: !1
}), u8.addEventListener("click", click, {
passive: !1
}), u8.addEventListener("mouseleave", uB, {
passive: !1
}), u8.addEventListener("wheel", uC, {
passive: !1
}), u8.addEventListener("touchstart", uD, {
passive: !1
}), u8.addEventListener("touchmove", uE, {
passive: !1
}), u8.addEventListener("touchend", uF, {
passive: !1
}), u8.addEventListener("touchcancel", uG, {
passive: !1
}), u8.addEventListener("dragover", uH), u8.addEventListener("drop", uI), u8.addEventListener("dblclick", uJ), document.addEventListener("contextmenu", uK), document.addEventListener("keyup", uL), document.addEventListener("keydown",
uM), document.addEventListener("visibilitychange", uN), window.addEventListener("resize", resize)
}, this.uU = function(fO, fP) {
return !!ab.fX(fO, fP) || !!(t.fX(fO, fP) || q.fX(fO, fP) || p.fX(fO, fP) || l.fX(fO, fP))
}, this.uo = uO, this.up = function() {
return !u5 || 0 < u4
}
}
function bK() {
this.g5 = new ur, this.pk = new us, this.fU = new ut, this.jr = new uu, this.qr = new uv, this.uw = new ux, this.gV = new uy, this.color = new uz, this.ct = function() {
this.g5.p7()
}
}
function us() {
this.pl = function(ds) {
ds.fill(0)
}, this.v0 = function(ds) {
for (var ef = ds.length, eJ = 0; eJ < ef; eJ++) ds[eJ] = []
}, this.v1 = function(gi, fy) {
for (var gj = am.dm, eJ = 0; eJ < 3; eJ++) gj[eJ] = fy * gi[eJ];
return gj
}, this.v2 = function(gi, gj, v3) {
for (var gn = 0, eJ = 0; eJ < 3; eJ++) gn += Math.abs(gi[eJ] - gj[eJ]);
return v3 <= gn
}, this.v4 = function(gi, v5) {
for (var eJ = 0; eJ < 3; eJ++) gi[eJ] = aj.mx(gi[eJ] + v5, 0, 255);
return gi
}, this.v6 = function(ds, gI = 0, gJ = ds.length - 1) {
for (var v7 = 0, eJ = gI; eJ <= gJ; eJ++) v7 += ds[eJ];
return v7
}, this.v8 = function(ds, v9) {
for (var eJ, vA, ef = ds.length, vB = [], hg = ef - 1; 0 <= hg; hg--) {
for (eJ = vA = 0; eJ < ef; eJ++) v9(ds[eJ]) < v9(ds[vA]) && (vA = eJ);
ef--, vB.push(ds[vA]), ds[vA] = ds[ef], ds.pop()
}
return vB
}
}
function uy() {
this.rT = function(vC, g4, vD) {
var gP = vC.height,
vE = aZ.g5.pa(gP, gP),
gW = aZ.g5.getContext(vE);
return function(gA, gW, vD) {
gW.fillStyle = vD, gW.beginPath(), gW.arc(gA / 2, gA / 2, .47 * gA, 0, 2 * Math.PI), gW.fill()
}(gP, gW, vD), gW.drawImage(vC, -g4 * gP, 0), vE
}, this.vG = function(vH) {
var gP = vH.height,
gW = aZ.g5.getContext(vH, !0),
gS = gW.getImageData(0, 0, gP, gP);
return aZ.uw.vI(gS.data, gP, gP, .9), gW.putImageData(gS, 0, 0), vH
}
}
function uz() {
this.vJ = function(df) {
return [df >> 12 & 63, df >> 6 & 63, 63 & df]
}, this.o0 = function(df) {
var ds = this.vJ(df);
for (let eJ = 0; eJ < 3; eJ++) ds[eJ] = ~~(4.05 * ds[eJ]);
return ds
}, this.o2 = function(ds) {
for (let eJ = 0; eJ < 3; eJ++) ds[eJ] = ~~(ds[eJ] / 4.04);
return (ds[0] << 12) + (ds[1] << 6) + ds[2]
}, this.kc = function(gY, vK, hp) {
return "rgb(" + gY + "," + vK + "," + hp + ")"
}, this.ke = function(gY, vK, hp, hg) {
return "rgba(" + gY + "," + vK + "," + hp + "," + hg.toFixed(3) + ")"
}, this.nd = function(iT) {
var ds = iT.split("(")[1].split(","),
dl = (ds.length, am.dl);
for (let eJ = 0; eJ < 3; eJ++) dl[eJ] = parseInt(ds[eJ]);
return dl
}, this.nZ = function(vL, eo) {
var ds = vL.slice(vL.indexOf("(") + 1, vL.indexOf(")")).split(","),
dl = am.dl;
for (let eJ = 0; eJ < 3; eJ++) dl[eJ] = aj.mx(parseInt(ds[eJ].trim(), 10) + eo, 0, 255);
return 3 === ds.length ? this.kc(dl[0], dl[1], dl[2]) : this.ke(dl[0], dl[1], dl[2], parseFloat(ds[3].trim()))
}, this.nz = function(ds) {
let g3 = "#";
for (let eJ = 0; eJ < 3; eJ++) {
var gY = ds[eJ].toString(16);
g3 += 1 === gY.length ? "0" + gY : gY
}
return g3
}, this.o3 = function(g3) {
var gY, vK;
return g3.length < 7 ? aa.jp : (gY = parseInt(g3.slice(1, 3), 16), vK = parseInt(g3.slice(3, 5), 16), g3 = parseInt(g3.slice(5, 7), 16), this.kc(gY, vK, g3))
}
}
function uv() {
this.vM = function(g3, font, maxWidth) {
if (gM.font = font, gM.measureText(g3).width <= maxWidth) return g3;
for (let eJ = g3.length - 1; 1 <= eJ; eJ--)
if (g3 = g3.substring(0, eJ), gM.measureText(g3 + "...").width <= maxWidth) return g3 + "...";
return "..."
}
}
function ur() {
var vN = null;
this.rl = 0, this.p7 = function() {
var df = bA.dK.data[5].value;
vN = "px " + df, "Trebuchet MS" !== df && (vN += ", Trebuchet MS"), this.rl = gO(32, 32, ["a", "b", "m"], 200, vN)
}, this.pa = function(gA, gF) {
var iT = document.createElement("canvas");
return iT.width = gA, iT.height = gF, iT
}, this.getContext = function(gV, alpha) {
return gV.getContext("2d", {
alpha: alpha
})
}, this.getImageData = function(qr, gA, gF) {
return qr.getImageData(0, 0, gA, gF)
}, this.g6 = function(type, size) {
return size = size.toFixed(2), 0 === type ? size + vN : 1 === type ? "bold " + size + vN : 2 === type ? "lighter " + size + vN : 3 === type ? "italic " + size + vN : 4 === type ? "oblique " + size + vN : 5 === type ? "small-caps " +
size + vN : "small-caps bold " + size + vN
}, this.textAlign = function(gW, id) {
gW.textAlign = 0 === id ? "left" : 1 === id ? "center" : "right"
}, this.textBaseline = function(gW, id) {
gW.textBaseline = 1 === id ? "middle" : "bottom"
}, this.nS = function(dI, code = 5, color = aa.gN) {
color = this.nR(b1.vO) + " solid " + color;
5 === code ? dI.style.border = color : 4 === code ? dI.style.borderLeft = color : 2 === code ? dI.style.borderBottom = color : 6 === code ? dI.style.borderRight = color : dI.style.borderTop = color
}, this.vP = function(dI, fO, fP, gA, gF) {
dI = dI.style;
dI.left = this.vQ(fO), dI.top = this.vQ(fP), dI.width = this.vQ(gA), dI.height = this.vQ(gF)
}, this.nJ = function(df) {
return 1 + df * b8.cy.g0()
}, this.nt = function(kO, en = .5) {
return kO * this.nJ(en) * aL.g1 / aL.nN
}, this.nR = function(df) {
return df.toFixed(1) + "px"
}, this.vQ = function(df) {
return this.vR(df).toFixed(1) + "px"
}, this.vR = function(df) {
return df / aL.nN
}, this.vS = function(vT, vU) {
for (var g3 = "<ul>", ef = vT.length, eJ = 0; eJ < ef; eJ++) g3 += "<li>" + vT[eJ] + ": <a href='" + vU[eJ] + "' target='_blank'>" + vU[eJ] + "</a></li>";
return g3 += "</ul>"
}, this.vV = function(vW) {
return "<a href='" + vW + "' target='_blank'>" + vW + "</a>"
}, this.vX = function(dI) {
navigator.clipboard && navigator.clipboard.writeText(dI.value)
}, this.vY = function(dI) {
dI.innerText.startsWith("✅ ") || (dI.innerText = "✅ " + dI.innerText, setTimeout(function() {
dI.innerText = dI.innerText.substring(dI.innerText.indexOf(" ") + 1)
}, 500))
}
}
function ut() {
this.fV = function(db) {
return 0 === db ? 1 === b.sh && b.fj : 1 === db ? 1 === b.sh && !b.fj : 2 === b.sh
}, this.fW = function(player) {
return 0 !== a6.jS[player] && 2 !== a6.vZ[player]
}, this.mi = function(va, vb) {
return va !== vb
}, this.mB = function(player, df) {
return df = this.vc(player, df), a6.eb[player] += df, df
}, this.vc = function(player, df) {
var vd = a6.eb[player];
return df = Math.min(df, a6.f5[player] * b.ve - vd), df = Math.min(df, b.vf - vd), Math.max(df, 0)
}, this.mj = function(player, h9, vg, vh) {
var vd = a6.eb[player],
h9 = aj.fK(vd * (h9 + 1), 1024),
vg = aj.fK(vg * vd, 1024),
h9 = Math.min(h9, vd - vg);
return 10 === b.it && (h9 = aS.vj(player, h9)), am.dj[0] = h9, am.dj[1] = vg, vh <= h9
}, this.m8 = function(player, lq, lp) {
var player = a6.eb[player],
vi = aj.fK(64 * player, 1024);
return lq = Math.min(lq, player - vi), vi += player = this.vl(lq), lq = this.vc(lp, lq -= player), am.dj[0] = lq, am.dj[1] = vi, 1 <= lq
}, this.mA = function(lq, lp) {
var vk = this.vl(lq);
return lq = this.vc(lp, lq -= vk), am.dj[0] = lq, am.dj[1] = vk, 1 <= lq
}, this.h8 = function(player, vm) {
return aj.fK(a6.eb[player] * (vm + 1), 1024)
}, this.vl = function(vn) {
return aj.fK(Math.max(2142 - b4.iS(), 0) * vn, 2142)
}, this.mv = function(player, vg) {
a6.eb[player] -= aj.fK(vg * a6.eb[player], 1024)
}, this.ml = function(player) {
a6.eb[player] -= am.dj[0] + am.dj[1]
}, this.mk = function(player, hZ) {
return (hZ = Math.min(hZ, b.ej)) < b.ej && 0 === a6.jS[hZ] && (hZ = b.ej), (am.dp[0] = hZ) === b.ej || fw(player, hZ)
}, this.mn = function(player, lp) {
return 0 !== a6.jS[lp] && !fw(player, lp)
}
}
function ux() {
this.vo = function(gV, vp, vq) {
var gA = gV.width,
gF = gV.height,
iT = aZ.g5.pa(gA, gF),
gW = aZ.g5.getContext(iT, !0),
gV = (gW.drawImage(gV, 0, 0), gW.getImageData(0, 0, gA, gF));
return vp(gV.data, gA, gF, vq), gW.putImageData(gV, 0, 0), iT
}, this.vr = function(pm, gA, gF) {
for (let fO = gA - 1; 0 <= fO; fO--)
for (let fP = gF - 1; 0 <= fP; fP--) {
var eJ = 4 * (fO + fP * gA);
pm[3 + eJ] = pm[eJ], pm[eJ] = pm[1 + eJ] = pm[2 + eJ] = 255
}
}, this.vs = function(pm, gA, gF) {
for (let fO = gA - 1; 0 <= fO; fO--)
for (let fP = gF - 1; 0 <= fP; fP--) {
var eJ = 4 * (fO + fP * gA);
pm[1 + eJ] > pm[2 + eJ] + 10 && (pm[3 + eJ] = pm[eJ], pm[1 + eJ] = pm[2 + eJ])
}
}, this.vt = function(pm, gA, gF, vq) {
var eJ, gap = Math.floor(Math.min(gA, gF) * vq);
for (let fO = 0; fO < gA; fO++)
for (let fP = 0; fP < gF; fP++)(fO < gap || fP < gap || fO >= gA - gap || fP >= gF - gap) && (pm[3 + (eJ = 4 * (fO + fP * gA))] = 255 - 255 * (pm[1 + eJ] - pm[eJ]) / (255 - pm[eJ]))
}, this.vu = function(pm, gA, gF, vq) {
for (let fO = gA - 1; 0 <= fO; fO--)
for (let fP = gF - 1; 0 <= fP; fP--) {
var eJ = 4 * (fO + fP * gA);
pm[eJ] = vq[0], pm[1 + eJ] = vq[1], pm[2 + eJ] = vq[2]
}
}, this.vv = function(pm, gA, gF, vq) {
var eJ, gap = Math.floor(gA * vq);
for (let fO = 0; fO < gA; fO++)
for (let fP = 0; fP < gF; fP++)(fO < gap || fP < gap || fO >= gA - gap || fP >= gF - gap) && (pm[eJ = 4 * (fO + fP * gA)] = pm[1 + eJ] = pm[2 + eJ] = 0)
}, this.vw = function(pm, gA, gF) {
for (var fP, eJ, fO = gA - 1; 0 <= fO; fO--)
for (fP = gF - 1; 0 <= fP; fP--) 200 < pm[1 + (eJ = 4 * (fO + fP * gA))] && pm[1 + eJ] - 20 > pm[eJ] && pm[1 + eJ] - 20 > pm[2 + eJ] ? pm[eJ] + pm[2 + eJ] < 40 ? pm[3 + eJ] = 0 : (pm[3 + eJ] = pm[eJ], pm[eJ] = 255, pm[1 + eJ] = 255,
pm[2 + eJ] = 255) : pm[eJ] < 50 && pm[1 + eJ] < 50 && pm[2 + eJ] < 50 && (pm[eJ] + pm[1 + eJ] + pm[2 + eJ] < 50 ? pm[3 + eJ] = 180 : pm[3 + eJ] = 180 + Math.floor(75 * (pm[eJ] + pm[1 + eJ] + pm[2 + eJ] - 50) / 100))
}, this.vx = function(pm, gA, gF) {
for (var fP, eJ, fO = gA - 1; 0 <= fO; fO--)
for (fP = gF - 1; 0 <= fP; fP--) pm[1 + (eJ = 4 * (fO + fP * gA))] > pm[eJ] + 20 && pm[1 + eJ] > pm[2 + eJ] + 20 && pm[eJ] + pm[2] < 40 && (pm[3 + eJ] = 255 - pm[1 + eJ], pm[eJ] = pm[1 + eJ] = pm[2 + eJ] = pm[eJ])
}, this.vI = function(pm, gA, gF, vq) {
var gY = gA >> 1;
for (let fO = 0; fO < gA; fO++)
for (let fP = 0; fP < gF; fP++) Math.sqrt((fO - gY) * (fO - gY) + (fP - gY) * (fP - gY)) > vq * gY && (pm[4 * (fO + fP * gA) + 3] = 0)
}
}
function uu() {
this.js = function(df) {
var eJ, vy, vz, w0, w1;
if (df < 0) return "-" + this.js(Math.abs(df));
if (df < 1e3) return df.toString();
for (vy = Math.floor(Math.log(df + .5) / Math.log(10)) + 1, vz = Math.floor((vy - 1) / 3), w1 = (w0 = df.toString()).substring(vy - 3, vy), eJ = 1; eJ < vz; eJ++) w1 = w0.substring(vy - 3 * (eJ + 1), vy - 3 * eJ) + " " + w1;
return w0.substring(0, vy - 3 * vz) + " " + w1
}, this.w2 = function(em, vy) {
return em.toFixed(vy) + "%"
}, this.tK = function(df, w3 = 3) {
return df.toFixed(Math.max(Math.floor(w3 - Math.log10(df)), 0))
}, this.w4 = function(df, kO, vy) {
return (df * kO).toFixed(vy)
}, this.tN = function(username) {
var w6, w5 = username.indexOf("[");
return !(w5 < 0) && 1 < (w6 = username.indexOf("]")) - w5 && w6 - w5 <= 8 ? username.substring(w5 + 1, w6).toUpperCase().trim() : null
}, leaderboardFilter.parseClanFromPlayerName = this.tN;
this.w7 = function(g3) {
var hg = Math.floor(.5 * g3.length + .5),
kT = Math.floor(.5 * (hg - 1));
for (let eJ = 0; eJ < kT; eJ++)
for (let hp = -1; hp < 2; hp += 2) {
var iT = hg + hp * eJ;
if (" " === g3[iT]) return [this.w8(g3.substring(0, iT)), this.w9(g3.substring(iT))]
}
return [g3.substring(0, hg), g3.substring(hg)]
}, this.w9 = function(g3) {
var ef = g3.length;
for (let eJ = 0; eJ < ef; eJ++)
if (" " !== g3[eJ]) return g3.substring(eJ);
return g3
}, this.w8 = function(g3) {
for (let eJ = g3.length - 1; 0 <= eJ; eJ--)
if (" " !== g3[eJ]) return g3.substring(0, eJ + 1);
return g3
}, this.wA = function(g3, wB) {
return g3.split("(")[0] + "(🧈 " + wB.toFixed(2) + ")"
}
}
function wC() {
this.hW = function(player, fe) {
h.qf(player, ak.gf(fe), ak.gh(fe)) && (b4.d3 = !0), b.iv && this.iE()
}, this.iE = function() {
b.fj = !1;
for (let eJ = 0; eJ < b.ht; eJ++) 0 !== a6.jS[eJ] && 0 === a6.f5[eJ] && h.ql(eJ);
0 !== a6.jS[b.ea] ? (b2.ed[7] = a6.f5[b.ea], b2.ed[8] = a6.eb[b.ea], p.wD(), u.wE(), b.fS || g.kD(a6.i2[b.ea] - 5, a6.i5[b.ea] - 5, a6.i1[b.ea] + 5, a6.i4[b.ea] + 5), aG.ct()) : v.show(!1, !1, !1, !0), l.wF(18), a5.wG(), a5.jC(!0), an.j4
.wH(), b.mg = null, b0.wI = !0, b0.wJ(), b.iv && b8.cy.setState(1)
}
}
function bM() {
this.ej = 512, this.vf = 15e8, this.wK = 1e9, this.qY = 512, this.eY = 2, this.ea = 0, this.ht = 0, this.sk = 0, this.ip = 0, this.sj = 0, this.qI = 512, this.ve = 150, this.iv = !0, this.fS = !1, this.sh = 0, this.wL = 0, this.kG = !1, this
.fj = !1, this.wM = !1, this.hT = !1, this.wN = 0, this.it = 0, this.t5 = !1, this.mg = null, this.sd = null, this.wO = 30, this.sV = 0, this.sc = 0, this.sb = 0, this.wP = function(wQ, wR, r0, wS, wT, wU) {
this.kG = !1, this.fS = wU, this.it = wS, this.t5 = wT, this.hT = this.it < 7 || 9 === this.it, this.sk = this.ht = r0.length, this.iv = 1 === this.sk, this.it = 10 === this.it && this.iv ? 7 : this.it, this.it = 8 === this.it && 2 !==
this.ht ? 7 : this.it, this.wN = 9 === this.it ? 2 : this.it + 2, this.wO = this.ht <= 2 ? 30 : this.ht <= 50 ? 40 : 50, aV.iq && !aV.ir.wV ? this.wM = this.fj = !1 : this.wM = this.fj = this.hT || this.ht < 100, this.mg = this.fj ?
new wC : null, this.iv ? this.qI = z.wW() : this.qI = this.ej, this.ip = this.qI - this.ht, this.sj = 0, this.ea = wR, this.sV = 0, this.sc = 0, this.sb = 0, aM.wX(wQ), aN.ct(), a6.ct(r0), aX.lh.mS = [], b5.ct(r0), this.sh = 1, b2
.ct(), wY(), aA.wZ(), b0.ct(), a4.ct(), i9(), a1.ct(r0), aE.ct(), ak.ct(), al.ct(), c.ct(), a8.d4(), h.ct(), wa(), aY.ct(wQ, r0, wS, wT), b6.ct(), ao.ct(), an.ct(), b3.ct(), wb.putImageData(wc, 0, 0), t.ct(), q.ct(), p.ct(), ab.ct(),
aJ.ct(), s.ct(), u.ct(), k.ct(), o.ct(), l.ct(), n.ct(), j.ct(), v.ct(), f.ct(), d.ct(), e.ct(), eD(), a3.ct(), a5.ct(), aS.ct(), aR.ct(), aT.ct(), aP.ct(), 8 === this.it ? (this.sd = new qz, this.sd.ct(r0)) : this.sd = null, b4.wd(),
g.kC(), 0 === a6.jS[b.ea] && v.show(!1, !0), a5.jC(!0), aG.ct(), b4.d3 = !0, this.fS || this.iv && this.fj || b8.cy.setState(1)
}, this.tx = function(wf) {
aO.j4.wg(), this.sh = 0, b4.wh(), b8.cy.setState(0), wf || au.dO.show(), y.setState(0), at.d5(5, 5)
}, this.wi = function() {
return this.fS ? k.fT || !ab.wj : this.iv && (k.fT || this.fj)
}, this.wk = function() {
return 1 === this.sh && !this.fj
}
}
function cp() {
this.ri = 0, this.gap = 0, this.vO = 0, this.nP = 0, this.ct = function() {
this.resize()
}, this.resize = function() {
this.ri = .0022 * aZ.g5.nJ(.5) * aL.g1, this.vO = this.ri / aL.nN, this.gap = Math.max(Math.floor((b8.cy.g0() ? .0114 : .01296) * aL.g1), 2), this.nP = this.gap / aL.nN
}
}
function co() {
this.wl = function() {
return 2 === b8.id ? 4 : b8.cy.g0() ? 2 : 1
}
}
function bW() {
var fO, fP, wm, wn, wo, dc, player, wp, gap, zoom, mK, wq, nf = new Array(10);
function x1(player) {
for (var eJ = mK.length - 1; 0 <= eJ; eJ--)
if (mK[eJ] === player) return 1
}
function wz(ww) {
var eJ, ef;
if (-1 !== ww)
for (ef = nf.length, eJ = 0; eJ < ef; eJ++)
if (nf[eJ].rD && nf[eJ].fO + 1 === ww % 4 && nf[eJ].fP + 1 === ww >> 2) return eJ;
return -1
}
function wx(gD, gE) {
var vK = gap / 2;
return gD < fO - wm - 3 * vK || fO + 3 * wm + 5 * vK < gD || gE < fP - wm - 3 * vK || fP + 2 * wm + 3 * vK < gE ? -1 : 4 * (gE < fP - vK ? 0 : gE < fP + wm + vK ? 1 : 2) + (gD < fO - vK ? 0 : gD < fO + wm + vK ? 1 : gD < fO + 2 * wm + 3 *
vK ? 2 : 3)
}
this.wr = function() {
var eJ, hp, wu = [aa.l6, aa.lI, aa.ki, aa.lX, aa.lQ];
for (nf = new Array(8), eJ = 0; eJ < 8; eJ++) nf[eJ] = {
id: eJ,
rD: !1,
wv: 0,
gV: [],
fO: 0,
fP: 0
};
for (nf[0].colors = [0, 1, 2, 3], nf[0].fO = 0, nf[0].fP = 0, nf[1].colors = [0, 1, 4], nf[1].fO = 1, nf[1].fP = 0, nf[2].colors = [0, 2], nf[2].fO = -1, nf[2].fP = 0, nf[3].colors = [0], nf[3].fO = 0, nf[3].fP = 0, nf[4].colors = [0, 2],
nf[4].fO = 1, nf[4].fP = 1, nf[5].colors = [3], nf[5].fO = 0, nf[5].fP = -1, nf[6].id = 20, nf[6].colors = [0], nf[6].fO = 1, nf[6].fP = -1, nf[7].id = 21, nf[7].colors = [0], nf[7].fO = 0, nf[7].fP = 1, eJ = 0; eJ < 8; eJ++)
for (hp = 0; hp < nf[eJ].colors.length; hp++) nf[eJ].gV.push(function(id, vD) {
if (id < 20) return aZ.gV.rT(a0.get(3), id, vD);
var vD = a0.get(3).height,
vE = aZ.g5.pa(vD, vD),
gW = aZ.g5.getContext(vE);
20 === id ? gW.drawImage(a0.get(18), 0, 0) : 21 === id && a9.pm.rj(a9.rA.rX + a9.rA.rp, gW, 0, 0, vD);
return vE
}(nf[eJ].id, wu[nf[eJ].colors[hp]]))
}, this.wt = function() {
return nf
}, this.ct = function() {
mK = [], fO = fP = dc = 0, wn = wo = -1e3, this.resize()
}, this.resize = function() {
wm = Math.floor((b8.cy.g0() ? .075 : .0468) * aL.g1), zoom = wm / a0.get(3).height, gap = Math.floor(wm / 3)
}, this.uT = function(gD, gE) {
return !!this.rD() && (b4.d3 = !0, !!a9.pm.fX(gD, gE, player) || (gD = function(gD, gE) {
wo = wn = -1e3;
var ww = wx(gD, gE),
ww = wz(ww);
if (-1 === ww) return 0;
if (1 !== nf[ww].colors[nf[ww].wv])
if (5 === ww) {
if (! function() {
var dd = performance.now();
wq + 4e3 < dd && (mK = []);
wq = dd
}(), x1(player)) return 1;
mK.push(player), 16 < mK.length && mK.shift()
} else if (6 === ww) {
for (let eJ = mK.length - 1; 0 <= eJ; eJ--) 0 === a6.jS[mK[eJ]] && mK.splice(eJ, 1);
0 < mK.length && (aT.x2(1, mK, !0) && aX.fU.mJ(mK, player), mK = [])
} else if (2 === ww) aX.fk.lo(p.fr(), player);
else if (3 === ww) b.fj && aX.fk.fl(wp);
else if (0 === ww)
if (0 === nf[0].wv) {
if (b.wM && u.x3() < 300) return 1;
aX.fk.ft(p.fr(), player)
} else aP.fv(player, p.fr());
else if (1 === ww) av.x4(), aX.fk.fq(p.fr(), wp);
else {
if (7 === ww) return av.x5(), a9.pm.show(gD, gE), 2;
if (4 !== ww) return 0;
aT.x2(0, [player], !0) && aX.fU.mG(player)
}
return 1
}(gD, gE), this.oN(), 2 === gD && (a9.pm.rD = !0), 0 < gD))
}, this.uV = function(gD, gE) {
this.rD() || (wn = gD, wo = gE, dc = performance.now())
}, hoveringTooltip.display = function(mouseX, mouseY) {
var coordX = ak.fb(mouseX),
coordY = ak.fd(mouseY),
coord = ak.ff(coordX, coordY),
point = ak.fh(coord);
if (coordX < 0 || coordY < 0) return;
(function(gD, gE, fg) {
a1.eh(fg) || -1 === (gD = al.fo.xI(gD, gE)) ? l.xH(fg) : l.xJ(gD)
}(mouseX, mouseY, point))
}
this.click = function(gD, gE, uc) {
var fa = ak.fb(gD),
fc = ak.fd(gE),
fe = ak.ff(fa, fc),
fg = ak.fh(fe);
return !(!ak.fi(fa, fc) || (fa = (b8.cy.g0() ? .025 : .0144) * aL.g1, fc = performance.now(), Math.abs(gD - wn) > fa) || Math.abs(gE - wo) > fa || dc + 500 < fc) && (dc = fc, uc ? (function(gD, gE, fg) {
a1.eh(fg) || -1 === (gD = al.fo.xI(gD, gE)) ? l.xH(fg) : l.xJ(gD)
}(gD, gE, fg), !1) : k.fT || this.rD() || !aZ.fU.fW(b.ea) || b.fS ? (this.oN(), !1) : b.fj ? !!a1.eh(fg) && (wp = fe, nf[3].rD = !0, this.x8(gD, gE)) : (al.fo.lt(fe) ? al.x9.xA = -1 : al.fo.xB(gD, gE) || (2 === b.sh ? a1.ep(fg) &&
(player = a1.eq(fg), a1.sR(player)) && (nf[0].rD = !0, nf[0].wv = 1, nf[7].rD = !0) : a1.fm(fg) || (wp = fe, al.fo.fp(b.ea, fe) && (nf[0].rD = !0, nf[0].wv = 1, nf[1].rD = !0, nf[1].wv = am.dn[2] ? 0 : 2), a1.fn(fg)) || (
a1.er(fg) ? (player = b.ej, fs(b.ea) ? (nf[0].rD = !0, nf[0].wv = 0) : fu(b.ea, player) && (nf[0].rD = !0, nf[0].wv = 3)) : (player = a1.eq(fg)) === b.ea ? (nf[0].rD = !0, nf[0].wv = 1, nf[7].rD = !0) : (nf[0].wv = 1,
nf[5].rD = function(player) {
return a1.sR(player) && !x1(player) && aT.x2(1, [player], !1)
}(player), nf[7].rD = a1.sR(player), fw(player, b.ea) ? (nf[4].rD = a1.sR(player) && !a5.xD(player) && aT.x2(0, [player], !1), nf[6].rD = function(player) {
if (0 === mK.length) return !1;
if (performance.now() > wq + 4e3) return !(mK = []);
return !x1(player) && ! function(player) {
var eJ;
if (b.hT)
for (eJ = mK.length - 1; 0 <= eJ; eJ--)
if (!fw(player, mK[eJ])) return 1;
return
}(player)
}(player), fx(b.ea, player) ? (nf[0].wv = 0, nf[0].rD = !0) : fu(b.ea, player) && (nf[0].wv = 3, nf[0].rD = !0), nf[0].rD = this.xF()) : (nf[2].rD = !0, nf[0].rD = !0)))), this.x8(gD, gE)))
}, this.x8 = function(gD, gE) {
return fO = gD - Math.floor(wm / 2), fP = gE - Math.floor(wm / 2), !!this.rD()
}, this.u9 = function(gD, gE) {
return !!this.rD() && (a9.pm.rD ? !a9.pm.rh(gD, gE) && (a9.pm.rD = !1, b4.d3 = !0) : function(xM, gD, gE) {
gD = wx(gD, gE);
if (0 <= wz(gD)) return !1;
if ((1 === gD || 6 === gD) && 0 <= wz(2)) return !1;
if ((6 === gD || 9 === gD) && 0 <= wz(10)) return !1;
return xM.oN(), b4.d3 = !0
}(this, gD, gE))
}, this.oN = function() {
for (let eJ = nf.length - 1; 0 <= eJ; eJ--) nf[eJ].rD = !1, nf[eJ].wv = 0;
a9.pm.rD = !1
}, this.rD = function() {
return this.xF() || a9.pm.rD
}, this.xF = function() {
for (var ef = nf.length, eJ = 0; eJ < ef; eJ++)
if (nf[eJ].rD) return !0;
return !1
}, this.gL = function() {
if (this.rD())
if (a9.pm.rD) a9.pm.gL();
else {
var eJ, gW = gM,
hp = nf,
ef = hp.length,
xO = (wm + gap) / zoom;
for (gW.imageSmoothingEnabled = !0, gW.setTransform(zoom, 0, 0, zoom, fO, fP), eJ = 0; eJ < ef; eJ++) hp[eJ].rD && gM.drawImage(hp[eJ].gV[hp[eJ].wv], hp[eJ].fO * xO, hp[eJ].fP * xO);
gW.imageSmoothingEnabled = !1, gW.setTransform(1, 0, 0, 1, 0, 0)
}
}
}
function bX() {
var gF, gV, g9, xP, xQ;
function xR() {
var xS, qr = gV.getContext("2d", {
alpha: !0
});
qr.clearRect(0, 0, gF, gF), qr.fillStyle = aa.kf, qr.fillRect(0, 0, gF, gF), 0 === xP && (qr.fillStyle = aa.kk, qr.fillRect(0, 0, gF, gF)), qr.fillStyle = aa.gN, qr.fillRect(0, 0, gF, 1), qr.fillRect(0, 0, 1, gF), qr.fillRect(0, gF - 1, gF,
1), qr.fillRect(gF - 1, 0, 1, gF), xS = .9 * gF / a0.get(0).width, qr.imageSmoothingEnabled = !0, qr.setTransform(xS, 0, 0, xS, Math.floor((gF - xS * a0.get(0).width) / 2), Math.floor((gF - xS * a0.get(0).height) / 2)), qr.drawImage(
a0.get(0), 0, 0), qr.setTransform(1, 0, 0, 1, 0, 0)
}
function xU(gD, gE) {
if (!k.fT) return gD <= gF + b1.gap && gE >= p.fP ? 0 : -1;
if (gD <= 4 * gF + b1.gap) {
if (gE >= p.fP) return 0;
if (gE >= p.fP - gF - xQ * b1.gap) return 2
} else if (gD <= 7 * gF + b1.gap && gE >= p.fP - gF - xQ * b1.gap) return 1;
return -1
}
this.fT = !1, this.ct = function() {
xP = -1, this.fT = !1, xQ = b8.cy.g0() ? 1.2 : .6, this.resize()
}, this.resize = function() {
gF = p.gF, (gV = document.createElement("canvas")).width = gF, gV.height = gF, g9 = aZ.g5.g6(1, (b8.cy.g0() ? .5 : .45) * gF), xR()
}, this.ul = function() {
this.fT = !this.fT, this.fT ? (au.dM.hideCMPButton(), ab.uk(!1), b.fS && ab.wj && ab.um(!0), this.xT()) : (xP = -1, xR(), b.iv && 1 === b.sh && !b.fj && b8.cy.setState(1)), b4.d3 = !0
}, this.xT = function() {
(b.iv || b.fS) && 1 === b.sh && (t.jC(!0), b.fj || setTimeout(function() {
b0.sr()
}, 0), b8.cy.setState(0))
}, this.fX = function(gD, gE) {
var wv = xU(gD, gE);
if (this.fT) {
if (b.kG) return 0 <= wv && ab.uk(!1), !b.fS;
if (0 === wv) b.tx();
else if (1 === wv) this.ul();
else if (2 === wv) at.d5(1, 0);
else {
if (!(b.iv || 1 !== b.sh || b.fS || b3.rD) && (k.ul(), 1)) return !1;
ah.uU(gD, gE) || j.uV(gD, gE)
}
return !0
}
return 0 === wv && (this.ul(), !0)
}, this.u9 = function(gD, gE) {
gD = xU(gD, gE);
gD !== xP && (xP = gD, this.fT || xR(), b4.d3 = !0)
}, this.gL = function() {
var gA;
this.fT ? (gA = Math.floor(5.5 * gF), gM.setTransform(1, 0, 0, 1, b1.gap, p.fP), gM.fillStyle = aa.kf, gM.fillRect(0, 0, gA, gF), 0 === xP ? (gM.fillStyle = aa.kk, gM.fillRect(0, 0, 4 * gF, gF)) : 1 === xP && (gM.fillStyle = aa.kk, gM
.fillRect(4 * gF, 0, Math.floor(1.5 * gF), gF)), gM.fillStyle = aa.gN, gM.fillRect(0, 0, gA, 1), gM.fillRect(0, 0, 1, gF), gM.fillRect(4 * gF, 0, 1, gF), gM.fillRect(0, gF - 1, gA, 1), gM.fillRect(gA - 1, 0, 1, gF), gM.font =
g9, aZ.g5.textBaseline(gM, 1), aZ.g5.textAlign(gM, 1), gM.fillText(aW.no[79], 2 * gF, .54 * gF), gA = .4 * gF, k.xZ(b1.gap + 4 * gF + (1.5 * gF - gA) / 2, p.fP + .3 * gF, gA), gA = 1, gM.setTransform(1, 0, 0, 1, b1.gap, p.fP -
gA * xQ * b1.gap - gA * gF), gM.fillStyle = aa.kf, gM.fillRect(0, 0, 4 * gF, gF), xP === gA + 1 && (gM.fillStyle = aa.kk, gM.fillRect(0, 0, 4 * gF, gF)), gM.fillStyle = aa.gN, gM.fillRect(0, 0, 4 * gF, 1), gM.fillRect(0, 0, 1,
gF), gM.fillRect(4 * gF, 0, 1, gF), gM.fillRect(0, gF - 1, 4 * gF, 1), gM.fillText(aW.no[79 + gA], 2 * gF, .54 * gF), gM.setTransform(1, 0, 0, 1, 0, 0)) : gM.drawImage(gV, b1.gap, p.fP)
}, this.xY = function(player) {
return 0 !== a6.jS[player] && 2 !== b.sh && a1.sR(player)
}, this.xZ = function(fO, fP, ef) {
gM.setTransform(1, 0, 0, 1, fO, fP), gM.lineWidth = b1.ri, gM.strokeStyle = aa.gN, gM.beginPath(), gM.moveTo(0, 0), gM.lineTo(ef, ef), gM.moveTo(0, ef), gM.lineTo(ef, 0), gM.stroke()
}
}
function bY() {
var xb, gF, xc, xd, xe, xf, xg, xh, xi;
function gK() {
return p.y2(l.xy()) ? aJ.rD ? p.fP - p.gF - 2 * xc : p.fP - xc : ab.y2(l.y1()) ? aJ.rD ? ab.gK() - p.gF - 2 * xc : ab.gK() - xc : aJ.rD ? aL.gF - p.gF - (bB.wl() + 1) * xc : aL.gF - bB.wl() * b1.gap
}
function xp(dd, g3, id, em, xt, xu, pv, xv, xw) {
var eJ, qr, vE, nC, ds, y6 = void 0 !== xw,
gA = Math.floor(o.measureText(g3, l.g9) + 1.5 * xd + (y6 ? gF : 1.5 * xd));
if (b4.d3 = !0, gA + xc > aL.gA && !y6 && 50 !== id && 20 < g3.length) xp(dd, (ds = aZ.jr.w7(g3))[0], id, em, xt, xu, pv, xv, xw), xp(dd, ds[1], id, em, xt, xu, pv, xv, xw);
else if (ds = gA + (50 === id ? xe : 0), (vE = document.createElement("canvas")).width = gA, vE.height = gF, (qr = vE.getContext("2d", {
alpha: !0
})).font = l.g9, aZ.g5.textBaseline(qr, 1), aZ.g5.textAlign(qr, 0), qr.clearRect(0, 0, gA, gF), qr.fillStyle = xu, qr.fillRect(0, 0, gA, gF), qr.fillStyle = xt, qr.fillText(g3, Math.floor(1.5 * xd), Math.floor(gF / 2)), y6 && (qr
.imageSmoothingEnabled = !0, a9.pm.rj(xw, qr, gA - gF, 0, gF)), 0 === (nC = {
dc: dd,
g3: g3,
id: id,
player: em,
gV: vE,
xt: xt,
xu: xu,
gA: gA,
xz: ds,
pv: pv,
xv: xv,
xw: xw
}).dc || 0 < xb.length && 0 < xb[0].dc) xb.unshift(nC);
else {
for (eJ = 1; eJ < xb.length; eJ++)
if (0 < xb[eJ].dc) return void xb.splice(eJ, 0, nC);
xb.push(nC)
}
}
function xr(gY, vK, hp) {
return "rgb(" + gY + "," + vK + "," + hp + ")"
}
function y7(id, rf) {
for (var ef = xb.length, eJ = 0; eJ < ef; eJ++) xb[eJ].id === id && rf-- <= 0 && (xb.splice(eJ, 1), eJ--, ef--)
}
function y8(id, player) {
for (var yP = !1, eJ = xb.length - 1; 0 <= eJ; eJ--) xb[eJ].id !== id || player !== b.ej && xb[eJ].player !== player || (xb.splice(eJ, 1), yP = !0);
return yP
}
function yU(g3) {
xp(340, g3, 6, 0, xr(215, 245, 255), aa.kh, -1, !1)
}
this.xj = "", this.ct = function() {
var self;
xh = 0, xg = b8.cy.g0() ? 7 : 12, xf = {
r0: [0, 0, 0],
xk: [0, 0, 0],
kA: [220, 180, 180],
xl: [0, 0, 0],
iT: [0, 0, 0]
}, xb = [], this.resize(), b.fj && this.sX(0, 18), yU(aW.ti(37, [aq.ir.q5[aq.q6].name])), yU(aW.ti(38, [aq.eE - 2, aq.eF - 2])), yU(aW.ti(39, [aA.yV], {
yG: [0]
})), aA.yV !== aA.yW && yU(aW.ti(40, [aA.yW, aA.yW / aA.yV], {
yG: [0],
yX: [1]
})), 0 < aA.yY && yU(aW.ti(41, [aA.yY, aA.yY / aA.yV], {
yG: [0],
yX: [1]
})), 0 < aA.yZ && yU(aW.ti(42, [aA.yZ, aA.yZ / aA.yV], {
yG: [0],
yX: [1]
})), 10 === b.it && xp(120, aW.ti(43), 6, 0, xr(235, 255, 120), aa.kh, -1, !1), 0 !== (self = this).xj.length && (xp(200, self.xj, 0, 0, aa.gN, aa.kh, -1, !1), self.xj = ""), this.xo()
}, this.xo = function() {
var eJ, ef;
if (aV.iq)
for (ef = aV.ir.xq.length, eJ = 0; eJ < ef; eJ++) xp(400, aV.ir.xq[eJ], 6, 0, xr(255, 255, 255), aa.kh, -1, !1)
}, this.resize = function() {
var xs, eJ;
if (gF = (gF = Math.floor((b8.cy.g0() ? .031 : .0249) * aL.g1)) < 10 ? 10 : gF, this.fontSize = Math.floor(2 * gF / 3), this.g9 = aZ.g5.g6(1, this.fontSize), xc = b1.gap, xd = Math.floor(gF / 5), 0 < xb.length)
for (xs = xb, xb = [], eJ = xs.length - 1; 0 <= eJ; eJ--) xp(xs[eJ].dc, xs[eJ].g3, xs[eJ].id, xs[eJ].player, xs[eJ].xt, xs[eJ].xu, xs[eJ].pv, xs[eJ].xv, xs[eJ].xw);
this.xx()
}, this.xx = function() {
xi = document.createElement("canvas");
var g3 = aW.ti(0),
qr = (xe = o.measureText(g3, this.g9) + 5 * xd, xi.height = gF, xi.width = xe, xi.getContext("2d", {
alpha: !0
}));
qr.font = this.g9, aZ.g5.textBaseline(qr, 1), aZ.g5.textAlign(qr, 1), qr.clearRect(0, 0, xe, gF), qr.fillStyle = aa.l3, qr.fillRect(0, 0, xe, gF), qr.fillStyle = aa.gN, qr.fillText(g3, Math.floor(xe / 2), Math.floor(gF / 2))
}, this.xy = function() {
var ef;
return aJ.rD ? aJ.gA : 0 === (ef = xb.length) ? 0 : 1 === ef ? xb[0].xz : y0(xb[0].xz, xb[1].xz)
}, this.y1 = function() {
var ef = xb.length;
return aJ.rD ? ef ? y0(aJ.gA, xb[0].xz) : aJ.gA : 0 === ef ? 0 : 1 === ef ? xb[0].xz : 2 === ef ? y0(xb[0].xz, xb[1].xz) : y0(y0(xb[0].xz, xb[1].xz), xb[2].xz)
}, this.fX = function(fO, fP) {
for (var y3, y4 = gK(), eJ = xb.length - 1; 0 <= eJ; eJ--)
if ((y3 = y4 - (eJ + 1) * gF) <= fP && fP < y3 + gF) return 50 === xb[eJ].id ? fO >= aL.gA - xe - xc - xb[eJ].gA && (fO >= aL.gA - xe - xc ? aX.fU.mG(xb[eJ].player) : g.kE(xb[eJ].player, 800, !1, 0), !0) : fO >= aL.gA - xb[eJ].gA -
xc && (736 === xb[eJ].id ? window.open("https://" + xb[eJ].g3, "_blank") : xb[eJ].xv && (g.kE(xb[eJ].player, 800, !1, 0), 0 <= xb[eJ].pv) && (y3 = xb[eJ].pv, xb[eJ].pv = xb[eJ].player, xb[eJ].player = y3), !0);
return !1
}, this.t6 = function(dd, g3, id, em, xt, xu, pv, xv, xw) {
xp(dd, g3, id, em, xt, xu, pv, xv, xw)
}, this.y5 = function(tH) {
xp(300, tH, 252, 0, aa.gN, aa.kh, -1, !1)
}, this.wF = function(id) {
for (var eJ = xb.length - 1; 0 <= eJ; eJ--) xb[eJ].id === id && (xb[eJ].dc = 1)
}, this.sX = function(player, id) {
0 === id ? (b2.ed[player < b.ht ? 4 : 3]++, o.hW(player, 0), y7(423, 0), xp(160, aW.ti(1, [a6.jt[player]]), 423, player, "rgb(10,220,10)", aa.kh, -1, !1)) : 1 === id ? (y8(50, b.ej), o.hW(player, 1), xp(360, aW.ti(2, [a6.jt[player]]), 0,
player, aa.lK, aa.kh, -1, !0), g.kE(player, 2700, !1, 0)) : 2 === id ? (o.hW(player, 2), xp(0, aW.ti(3), 0, player, "rgb(10,255,255)", aa.kh, -1, !0), g.kE(player, 2700, !1, 0)) : 3 === id ? (o.hW(player, 2), xp(0, aW.ti(4, [a6
.jt[player]
]), 0, player, aa.gN, aa.kh, -1, !0), g.kE(player, 2700, !1, 0)) : 4 === id ? this.y9(1, player, player) : 5 === id ? 2 !== a6.vZ[player] && a1.sR(b.ea) && (function(id, jP) {
var eJ, yJ = 0,
ef = xb.length;
for (eJ = 0; eJ < ef; eJ++)
if (xb[eJ].id === id && jP <= ++yJ) return xb.splice(eJ, 1)
}(1, 5), a5.yB(player) ? xp(180, aW.ti(5, [a6.jt[player]]), 1, player, xr(255, 200, 180), aa.kh, -1, !0) : (y7(573, 0), xp(180, aW.ti(6, [a6.jt[player]]), 573, player, aa.lK, aa.kh, -1, !0))) : 18 === id ? xp(255, aW.ti(7), 18, 0, aa
.gN, aa.kh, -1, !1) : 21 === id ? xp(220, aW.ti(8), id, 0, aa.gN, aa.kh, -1, !1) : 22 === id ? this.y9(2, player, player) : 59 === id && xp(0, aW.ti(9), id, 0, aa.lW, aa.kh, 0, !1)
}, this.tq = function(tH) {
xp(200, aW.ti(10, [tH]), 94, 0, aa.gN, aa.lG, -1, !1)
}, this.sg = function(sa) {
if (b.ea === sa && !b.iv)
wins_counter++, window.localStorage.setItem("fx_winCount", wins_counter),
xp(0, "Your Win Count is now " + wins_counter, 3, sa, aa.gN, aa.kh, -1, !0);
o.hW(sa, 2), b.ht < 100 ? xp(0, aW.ti(4, [a6.jt[sa]]), 3, sa, aa.gN, aa.kh, -1, !0) : xp(0, aW.ti(12, [a6.jt[sa]]), 3, sa, aa.gN, aa.kh, -1, !0), g.kE(sa, 2700, !1, 0)
}, this.xH = function(fg) {
var yC = "(" + ak.gf(fg >> 2) + ", " + ak.gh(fg >> 2) + ")",
xv = !1,
player = 0;
a1.eh(fg) ? a1.er(fg) ? yC = aW.ti(13, [yC]) : (player = a1.eq(fg), yC = aW.ti(14, [aZ.qr.vM(a6.tL[player], aZ.g5.g6(0, 10), 150), aZ.jr.js(a6.eb[player]), aZ.jr.js(a6.f5[player]), yC]), xv = !0) : yC = a1.fm(fg) ? aW.ti(15, [yC]) : aW
.ti(16, [yC]), b4.d3 = !0, y7(55, 0), xp(220, yC, 55, player, aa.gN, aa.kh, -1, xv)
}, this.xJ = function(yD) {
var pW = al.j4,
player = pW.yE[yD] >> 3;
b4.d3 = !0, y7(55, 0), xp(220, aW.ti(17, [a6.jt[player], pW.yF[yD]], {
yG: [1]
}), 55, player, aa.gN, aa.kh, -1, !0)
}, this.lz = function(lk, yH, m0) {
lk === b.ea ? xp(175, aW.ti(18, [a6.jt[yH]]), 1001, yH, xr(200, 255, 210), aa.kh, -1, !0, m0) : this.yI(lk, m0)
}, this.yI = function(lk, m0) {
y7(1e3, 0), xp(175, aW.ti(19, [a6.jt[lk]]), 1e3, lk, aa.gN, "rgba(5,60,25,0.9)", -1, !0, m0)
}, this.sf = function() {
var tH;
b.sc ? (tH = aW.ti(20), o.tB(aW.ti(21), 2, 1, 12), xp(0, tH, 40, 0, "rgb(10,220,10)", aa.kh, -1, !1)) : (tH = aW.ti(22), o.tB(aW.ti(23), 2, 0, 16), xp(0, tH, 41, 0, aa.gN, aa.kh, -1, !1)), g.kL(2700)
}, this.r1 = function(r0) {
xp(300, r0[0].name + " [" + b.sd.r7(r0[0].r4) + "] vs " + r0[1].name + " [" + b.sd.r7(r0[1].r4) + "]", 65, 0, aa.jp, "rgba(100,255,255,0.75)", -1, !1)
}, this.yK = function(tH) {
xp(200, tH, 0, 0, "rgb(40,255,200)", "rgba(10,60,40,0.9)", -1, !1)
}, this.yL = function(yM) {
xp(0, aW.ti(yM ? 24 : 129), 247, 0, aa.lV, aa.kh, -1, !1)
}, this.r9 = function(r0, r6, r8, yN) {
xp(0, r0[0].name + ": " + b.sd.r7(r0[0].r4) + " -> " + r6, 66, 0, aa.gN, yN[0], -1, !1), xp(0, r0[1].name + ": " + b.sd.r7(r0[1].r4) + " -> " + r8, 66, 1, aa.gN, yN[1], -1, !1)
}, this.mH = function(player, id) {
0 === id ? y8(50, player) ? (xp(128, aW.ti(25, [a6.jt[player]]), 52, player, xr(180, 255, 180), aa.kh, -1, !0), a5.my(player, 2, 255)) : xp(384, aW.ti(26, [a6.jt[player]]), 51, player, xr(210, 210, 255), aa.kh, -1, !0) : y8(51, player) ?
(xp(128, aW.ti(27, [a6.jt[player]]), 52, player, aa.gN, "rgba(60,120,10,0.9)", -1, !0), a5.my(player, 2, 255)) : (xp(384, aW.ti(28, [a6.jt[player]]), 50, player, aa.gN, "rgba(90,90,90,0.9)", -1, !0), a5.my(player, 2, 96))
}, this.mL = function(r0, target) {
var color = xr(210, 255, 210);
1 < r0.length ? xp(230, aW.ti(29, [r0.length, a6.jt[target]]), 66, target, color, aa.kh, -1, !0) : xp(230, aW.ti(30, [a6.jt[r0[0]], a6.jt[target]]), 66, r0[0], color, aa.kh, target, !0)
}, this.yO = function(player, target) {
xp(230, aW.ti(31, [a6.jt[player], a6.jt[target]]), 66, player, aa.gN, "rgba(75,65,5,0.9)", target, !0)
}, this.sn = function(id, player) {
y8(id, player)
}, this.lm = function() {
var g4;
100 <= a6.eb[b.ea] || (-1 === (g4 = function(id) {
for (var eJ = xb.length - 1; 0 <= eJ; eJ--)
if (xb[eJ].id === id) return eJ;
return -1
}(143)) ? xp(80, aW.ti(32), 143, 0, aa.gN, aa.kh, -1, !1) : xb[g4].dc = 80)
}, this.mC = function(yR, yS, player) {
2 !== a6.vZ[b.ea] && (xp(200, aW.ti(33, [yR, a6.jt[player]], {
yG: [0]
}), 30, player, "rgb(190,255,190)", aa.kh, -1, !0), yS) && xp(30, aW.ti(34, [yS], {
yG: [0]
}), 30, 0, aa.gN, aa.kh, -1, !1)
}, this.yT = function(yR, player) {
2 !== a6.vZ[b.ea] && (y7(31, 0), 2 === a6.vZ[player] || player >= b.ht ? xp(150, aW.ti(36, [a6.jt[player], yR], {
yG: [1]
}), 31, player, aa.jp, "rgba(205,205,205,0.9)", -1, !0) : xp(150, aW.ti(35, [a6.jt[player], yR], {
yG: [1]
}), 31, player, aa.jp, "rgba(205,255,205,0.9)", -1, !0))
}, this.sm = function(ya) {
for (var iT = b4.iS(), eJ = 2; 0 <= eJ; eJ--) 0 < xf.xl[eJ] && (ya || xf.iT[eJ] < iT - 220) && this.yb(eJ)
}, this.yb = function(id) {
var g3, ef = xf.xl[id],
player = xf.r0[id];
xf.xl[id] = 0, 1 === ef ? (g3 = 0 === id ? aW.ti(47, [a6.jt[player], a6.jt[xf.xk[0]]]) : aW.ti(47 + id, [a6.jt[player]]), y7(7, 0), xp(xf.kA[id], g3, 7, xf.xk[id], aa.gN, aa.kh, -1, !0)) : 2 <= ef && (g3 = aW.ti(44 + id, [a6.jt[player],
ef - 1
]), y7(7, 0), xp(xf.kA[id], g3, 7, player, aa.gN, aa.kh, -1, !1))
}, this.y9 = function(id, pu, pv) {
var iT = b4.iS(),
ef = xf.xl[id] + 1;
xf.xl[id]++, xf.r0[id] = pu, xf.xk[id] = pv, 1 === ef && (xf.iT[id] = iT), (1 === ef && (b.sk < 32 || 2 === b.sh) || 1 < ef && (xf.iT[id] < iT - 140 || 2 === b.sh)) && this.yb(id)
}, this.iE = function() {
for (var gn = (gn = xb.length - xg) <= 1 ? 1 : gn * gn, eJ = xb.length - 1; 0 <= eJ; eJ--) 0 < xb[eJ].dc && (xb[eJ].dc -= gn, xb[eJ].dc <= 0) && (b4.d3 = !0, xb.splice(eJ, 1));
! function() {
var rf, eJ;
if (128 !== xh && !(++xh < 128))
for (rf = 5, eJ = iV - 1; 0 <= eJ; eJ--) 1 === a6.vZ[iW[eJ]] && 0 < rf-- && xp(240, aW.ti(50, [a6.jt[iW[eJ]]]), 1, iW[eJ], aa.jp, "rgba(255,255,255,0.75)", -1, !0)
}(), this.sm(!1)
}, this.gL = function() {
for (var qH, fP = gK(), eJ = xb.length - 1; 0 <= eJ; eJ--) qH = fP - (eJ + 1) * gF, 50 === xb[eJ].id ? (gM.drawImage(xb[eJ].gV, aL.gA - xb[eJ].gA - xe - xc, qH), gM.drawImage(xi, aL.gA - xe - xc, qH)) : gM.drawImage(xb[eJ].gV, aL.gA - xb[
eJ].gA - xc, qH)
}
}
function bZ() {
var no, yd, ye, gA, gF, font;
function yi(yj) {
return yj < 10 ? "0" + yj : String(yj)
}
this.ct = function() {
void 0 === gA && this.resize(), this.setTime()
}, this.resize = function() {
gA = Math.floor((b8.cy.g0() ? .53 : .36) * aL.g1), gF = Math.floor(.065 * gA), font = aZ.g5.g6(1, Math.floor(.9 * gF)), ye--, this.setTime()
}, this.iE = function() {
this.setTime() && (b4.d3 = !0)
}, this.setTime = function() {
var dd = new Date,
yg = dd.getUTCMinutes(),
dd = dd.getUTCSeconds();
return yd = 3600 - 60 * yg - dd, yd %= 900, no = "Next Contest: " + yi(Math.floor(yd / 60)) + ":" + yi(yd % 60), ye !== (ye = 60 * yg + dd) && (gA = o.measureText(no, font), gA += Math.floor(.4 * gF), !0)
}, this.gL = function() {
gM.lineWidth = 1 + Math.floor(gF / 15), 7 === y.tk() && aH.yk() + 2 * b1.gap > .5 * (aL.gF - gA) ? gM.translate(aL.gA - gF, Math.floor(aH.yk() + 2 * b1.gap + gA)) : gM.translate(aL.gA - gF, Math.floor(.5 * (aL.gF + gA))), gM.rotate(-Math
.PI / 2), gM.fillStyle = aa.gN, gM.fillRect(0, 0, gA, gF), gM.strokeStyle = aa.jp, gM.strokeRect(0, 0, gA, gF + 10), gM.fillStyle = aa.jp, gM.font = font, aZ.g5.textBaseline(gM, 1), aZ.g5.textAlign(gM, 1), gM.fillText(no, Math
.floor(gA / 2), Math.floor(.59 * gF)), gM.setTransform(1, 0, 0, 1, 0, 0)
}
}
function ba() {
var xb, yl, g9, gF, ym;
function yo(eJ) {
let yq = !0,
gi = aa.gN;
xb[eJ].hZ === b.ej ? xb[eJ].qr.fillStyle = aa.kt : (a1.yr(xb[eJ].hZ), xb[eJ].qr.fillStyle = aZ.color.ke(am.dl[0], am.dl[1], am.dl[2], .87), 400 < aZ.pk.v6(am.dl, 0, 2) && (yq = !1, gi = aa.jp));
var gA = xb[eJ].gV.width,
qw = (xb[eJ].qr.clearRect(0, 0, gA, gF), xb[eJ].qr.fillRect(0, 0, gA, gF), xb[eJ].qr.fillStyle = gi, ! function(qr, gA, gF) {
qr.fillRect(0, 0, gA, 1), qr.fillRect(0, gF - 1, gA, 1), qr.fillRect(0, 0, 1, gF), qr.fillRect(gA - 1, 0, 1, gF)
}(xb[eJ].qr, gA, gF), yl + 2 * gF < gA && (xb[eJ].qr.fillRect(gA - yl - gF, 0, 1, gF), xb[eJ].qr.fillText(a6.jt[xb[eJ].hZ], Math.floor((gA - yl) / 2), Math.floor(.57 * gF))), 0 !== xb[eJ].id ? 0 : gF);
xb[eJ].qr.fillText(aZ.jr.js(xb[eJ].ha), Math.floor(gA - yl / 2 - qw), Math.floor(.57 * gF)),
function(eJ, gA, qw, yq) {
xb[eJ].qr.fillStyle = yq ? aa.kl : aa.ki;
yq = Math.floor(yl * xb[eJ].ha / xb[eJ].yx);
xb[eJ].qr.fillRect(Math.floor(gA - yl - qw), gF - ym, yq, ym)
}(eJ, gA, qw, yq), 0 === xb[eJ].id ? (yu(eJ, gA, yq, gi), function(eJ, gA, yq) {
xb[eJ].qr.strokeStyle = yq ? aa.ky : aa.l8, xb[eJ].qr.fillRect(gF, 0, 1, gF);
yq = gA - gF;
xb[eJ].qr.beginPath(), xb[eJ].qr.moveTo(Math.floor(.3 * gF + yq), Math.floor(gF / 2)), xb[eJ].qr.lineTo(Math.floor(gF - .3 * gF + 0 + yq), Math.floor(gF / 2)), xb[eJ].qr.stroke(), xb[eJ].qr.beginPath(), xb[eJ].qr.moveTo(Math
.floor(gF / 2 + yq), Math.floor(.3 * gF)), xb[eJ].qr.lineTo(Math.floor(gF / 2 + yq), Math.floor(gF - .3 * gF + 0)), xb[eJ].qr.stroke()
}(eJ, gA, yq)) : yu(eJ, 2 * gF, yq, gi)
}
function yu(eJ, gA, yq, gi) {
xb[eJ].qr.strokeStyle = xb[eJ].yy ? aa.kr : yq ? aa.lC : aa.lD, xb[eJ].qr.fillStyle = gi, xb[eJ].qr.fillRect(gA - gF, 0, 1, gF), xb[eJ].qr.lineWidth = Math.max(Math.floor(gF / 12), 3), xb[eJ].qr.lineCap = "round";
yq = .35;
gA = gF + 1, xb[eJ].qr.beginPath(), xb[eJ].qr.moveTo(Math.floor(gA - yq * gF + 0), Math.floor(yq * gF)), xb[eJ].qr.lineTo(Math.floor(gA - gF + yq * gF), Math.floor(gF - yq * gF + 0)), xb[eJ].qr.stroke(), xb[eJ].qr.beginPath(), xb[eJ].qr
.moveTo(Math.floor(gA - gF + yq * gF), Math.floor(yq * gF)), xb[eJ].qr.lineTo(Math.floor(gA - yq * gF + 0), Math.floor(gF - yq * gF + 0)), xb[eJ].qr.stroke()
}
function z9(ef) {
for (var ha, eJ = ef - 1; 0 <= eJ; eJ--) ha = a3.eR(b.ea, eJ), xb[eJ].ha !== ha && (xb[eJ].ha = ha, xb[eJ].yx = ha > xb[eJ].yx ? ha : xb[eJ].yx, xb[eJ].yp = !0)
}
function yn(zB) {
zB.gV = document.createElement("canvas"), aq.pe.font = g9;
var gA = yl;
zB.hZ < b.ej && 0 === zB.id && (gA += Math.floor(aq.pe.measureText(a6.jt[zB.hZ] + "000").width)), gA += gF, 0 === zB.id && (gA += gF), zB.gV.width = gA, zB.gV.height = gF, zB.qr = zB.gV.getContext("2d", {
alpha: !0
}), zB.qr.font = g9, aZ.g5.textBaseline(zB.qr, 1), aZ.g5.textAlign(zB.qr, 1)
}
function z5(eJ) {
return s.zD() ? aL.gA - xb[eJ].gV.width - b1.gap : s.fO
}
function z6(eJ) {
return Math.floor(2 * b1.gap + (s.zD() ? u.gF + b1.gap : 0) + s.gF + eJ * (1.3 * gF))
}
this.ct = function() {
xb = [], this.resize()
}, this.resize = function() {
g9 = l.g9, gF = l.fontSize + 5, gF = Math.floor(1.25 * gF), b8.cy.g0() && (gF = Math.floor(1.25 * gF)), ym = Math.floor(.15 * gF), aq.pe.font = g9, yl = Math.floor(aq.pe.measureText("02 000 000 0000").width);
for (var eJ = xb.length - 1; 0 <= eJ; eJ--) yn(xb[eJ]), yo(eJ)
}, this.jC = function() {
for (var eJ = xb.length - 1; 0 <= eJ; eJ--) xb[eJ].yp && (xb[eJ].yp = !1, yo(eJ))
}, this.fX = function(gD, fP) {
if (2 !== b.sh && 0 !== a6.jS[b.ea] && !b.fS && a1.sR(b.ea))
for (var z0, z1, z2, z3 = b8.cy.g0() ? gF : 0, z4 = b8.cy.g0() ? Math.floor(.15 * gF) : 0, eJ = xb.length - 1; 0 <= eJ; eJ--)
if (z0 = z5(eJ), z1 = z6(eJ), z2 = xb[eJ].gV.width, z1 - z4 <= fP && fP <= z1 + gF + z4) {
if (z0 - z3 <= gD && gD <= z0 + gF + z3) return xb[eJ].yy || (xb[eJ].yp = !0, xb[eJ].yy = !0, 0 === xb[eJ].id && aX.fk.lx(xb[eJ].hZ)), !0;
if (0 === xb[eJ].id && z0 + z2 - gF - z3 <= gD && gD <= z0 + z2 + z3) return aX.fk.ft(p.fr(), xb[eJ].hZ), !0
} return !1
}, this.iE = function() {
var ef;
2 !== b.sh && 0 !== a6.jS[b.ea] && !b.fS && a1.sR(b.ea) && (function(ef) {
if (xb.length !== ef) return 1;
for (var eJ = ef - 1; 0 <= eJ; eJ--)
if (xb[eJ].id !== a3.eL(b.ea, eJ) || xb[eJ].hZ !== a3.eQ(b.ea, eJ)) return 1;
return
}(ef = a3.eK(b.ea)) && function(ef) {
var eJ, id, hZ, hp, ha, xs = [];
loop: for (eJ = 0; eJ < ef; eJ++) {
for (id = a3.eL(b.ea, eJ), hZ = a3.eQ(b.ea, eJ), hp = 0; hp < xb.length; hp++)
if (xb[hp].id === id && xb[hp].hZ === hZ) {
xs.push(xb.splice(hp, 1)[0]);
continue loop
} ha = a3.eR(b.ea, eJ), yn(ha = {
hZ: hZ,
ha: ha,
yx: ha,
id: id,
yp: !0,
yy: !1,
gV: null,
qr: null
}), xs.push(ha)
}
xb = xs
}(ef), z9(ef))
}, this.zC = function(em) {
for (var ef = Math.min(xb.length, a3.eK(b.ea)), eJ = 0; eJ < ef; eJ++)
if (xb[eJ].hZ === em) return void(xb = [])
}, this.gL = function() {
if (0 !== a6.jS[b.ea] && a1.sR(b.ea) && !b.fS)
for (var eJ = xb.length - 1; 0 <= eJ; eJ--) gM.drawImage(xb[eJ].gV, z5(eJ), z6(eJ))
}
}
function bb() {
var xb, ic, zE, zF, gF, g9, fontSize, zG, zH, zI, zJ, gV, qr, k5, zK;
function zR() {
gM.drawImage(gV, b1.gap + (b.hT ? b1.gap + b6.zS() : 0), zT + 2 * b1.gap)
}
function zL() {
gV.width = xb[0].width + zI, gV.height = gF + zI, (qr = gV.getContext("2d", {
alpha: !0
})).clearRect(0, 0, xb[0].width + zI, gF + zI), qr.translate(Math.floor(zI / 2), Math.floor(zI / 2)), qr.lineWidth = zI, qr.fillStyle = 1 === xb[0].zQ ? aa.ko : aa.kh, zU(), qr.fill(), qr.strokeStyle = 1 === xb[0].zQ ? aa.jp : aa.gN,
zU(), qr.stroke(), aZ.g5.textAlign(qr, 1), aZ.g5.textBaseline(qr, 1), qr.fillStyle = 1 === xb[0].zQ ? aa.jp : aa.gN, qr.font = g9[0], qr.fillText(aW.no[66 + xb[0].zP], Math.floor(xb[0].width / 2), Math.floor(.72 * zG[0] * gF)), qr.font = g9[
1], qr.fillText(xb[0].g3, Math.floor(xb[0].width / 2), Math.floor((zG[0] + .48 * zG[1]) * gF))
}
function zU() {
qr.beginPath(), qr.moveTo(zJ, 0), qr.lineTo(xb[0].width - zJ, 0), qr.lineTo(xb[0].width, zJ), qr.lineTo(xb[0].width, gF - zJ), qr.lineTo(xb[0].width - zJ, gF), qr.lineTo(zJ, gF), qr.lineTo(0, gF - zJ), qr.lineTo(0, zJ), qr.closePath()
}
this.ct = function() {
ic = 4, zE = zF = k5 = 0, xb = [], g9 = new Array(2), fontSize = new Array(2), (zG = new Array(2))[0] = .3, zG[1] = .7, zH = new Array(4), gV = document.createElement("canvas"), zK = b4.dc + 2e3, this.resize()
}, this.resize = function() {
var eJ, gA;
for (gF = Math.floor((b8.cy.g0() ? .0725 : .058) * aL.g1), fontSize[0] = Math.floor(.85 * zG[0] * gF), fontSize[1] = Math.floor(.85 * zG[1] * gF), g9[0] = aZ.g5.g6(1, fontSize[0]), g9[1] = aZ.g5.g6(1, fontSize[1]), eJ = zH.length -
1; 0 <= eJ; eJ--) zH[eJ] = this.measureText(aW.no[66 + eJ] + "000", g9[0]);
if (zI = Math.floor(1 + .05 * gF), zJ = Math.floor(.2 * gF), 0 < xb.length) {
for (eJ = xb.length - 1; 0 <= eJ; eJ--) gA = this.measureText(xb[eJ].g3 + "00", g9[1]), xb[eJ].width = gA < zH[eJ] ? zH[eJ] : gA;
zL()
}
}, this.iE = function() {
0 !== ic && (4 === ic ? b4.dc > zK && (ic = 0, 1 === b.sh) && o.tB(aq.ir.q5[aq.q6].name, 3, 1, 9) : (1 === ic ? (0 === zE && (zL(), zE = 1e-4), 1 <= (zE += .002 * (b4.dc - k5)) && (zF = 0, ic = 2, zE = 1), b4.d3 = !0) : 2 === ic ? ((zF +=
(b4.dc - k5) / 1e3) > xb[0].kA || 1 < zF && 1 < xb.length) && (ic = 3) : 3 === ic && ((zE -= .002 * (b4.dc - k5)) <= 0 && (zE = 0, xb.shift(), ic = 0 < xb.length ? 1 : 0), b4.d3 = !0), k5 = b4.dc))
}, this.measureText = function(g3, g9) {
return gM.font = g9, Math.floor(gM.measureText(g3).width)
}, this.hW = function(zO, eJ) {
this.tB(a6.jt[zO], eJ, 1, 0 === eJ ? 3 : 7)
}, this.tB = function(g3, zP, zQ, kA) {
var gA = (gA = this.measureText(g3 + "00", g9[1])) < zH[zP] ? zH[zP] : gA;
xb.push({
g3: g3,
width: gA,
zP: zP,
zQ: zQ,
kA: kA
}), 0 === ic && (zE = 0, ic = 1, k5 = b4.dc)
}, this.gL = function() {
0 !== ic && 0 !== zE && (zE < 1 ? (gM.globalAlpha = zE, zR(), gM.globalAlpha = 1) : zR())
}
}
function cA() {
var gF, gV, qr, zV, zW, zX, zY, yp, zZ, za, zb, zc, yM = !1,
vE = (this.rD = !1, this.gA = 0, new Array(2));
function g7() {
var gA = aJ.gA,
pW = (yp = !1, qq(qr, gA, gF), Math.floor(gA / 2));
1 === zV ? (qr.fillStyle = aa.l0, qr.fillRect(pW, 0, pW, gF)) : -1 === zV && (qr.fillStyle = aa.lE, qr.fillRect(0, 0, pW, gF)), qs(qr, gA, gF, 2);
var pW = (pW = Math.floor(.25 * gF)) < 2 ? 2 : pW,
yV = (qr.fillStyle = aa.kp, Math.floor((gF - 4) * zW[1] / zX[1]));
0 < yV && qr.fillRect(2, gF - 2 - yV, pW, yV), 0 < (yV = Math.floor((gF - 4) * zW[0] / zX[0])) && qr.fillRect(gA - 2 - pW, gF - 2 - yV, pW, yV);
pW = (pW = Math.floor(gF / 8)) < 2 ? 2 : pW, qu(qr, Math.floor(.4 * gF), 0, gF, pW, .5, !1), qu(qr, Math.floor(gA - 1.4 * gF), 0, gF, pW, .5, !0), yV = 1.1 * gF / vE[0].width;
qr.imageSmoothingEnabled = !0, qr.setTransform(yV, 0, 0, yV, (gA - yV * vE[0].width) / 2, -.05 * gF), qr.drawImage(vE[+yM], 0, 0), qr.setTransform(1, 0, 0, 1, 0, 0)
}
function zd() {
yp = !0, zZ = 140, zV = 0, zY = [], aJ.rD = !1, l.sn(247, 0), zW[0] = zW[1] = 0
}
function gK() {
return p.y2(l.xy()) ? p.fP - gF - b1.gap : ab.y2(l.y1()) ? ab.gK() - gF - b1.gap : aL.gF - gF - bB.wl() * b1.gap
}
this.cu = function() {
for (let eJ = 0; eJ < 2; eJ++) vE[eJ] = aZ.gV.rT(a0.get(3), 8 - eJ, aa.lc), vE[eJ] = aZ.gV.vG(vE[eJ])
}, this.ct = function() {
zb = zc = 0, this.rD = !1, yp = yM = !1, zZ = 140, zW = [zV = 0, 0], zX = [1, 1], zY = [], za = new Uint32Array(10), this.resize()
}, this.resize = function() {
gF = p.gF, this.gA = 4 * gF, (gV = document.createElement("canvas")).width = this.gA, gV.height = gF, qr = gV.getContext("2d", {
alpha: !0
}), g7()
}, this.jC = function() {
yp && g7()
}, this.fX = function(fO, fP) {
var jk;
return !!this.rD && !(fO < aL.gA - this.gA - b1.gap || fP < (jk = gK()) || jk + gF < fP || (b.fS || aX.fk.m3(fO > aL.gA - b1.gap - this.gA / 2 ? 1 : 0), 0))
}, this.iE = function() {
if (0 < zc) 0 === --zc && zd();
else if (this.rD) 270 == --zZ && 2 <= zb && function() {
var eJ;
for (eJ = iV - 1; 0 <= eJ; eJ--)
if (a1.sR(iW[eJ])) return;
return 1
}() && (yp = !0, zW[0] += zX[0]), 180 === zZ && 3 * zW[0] < zX[0] ? zd() : zW[0] >= zX[0] ? yM ? ap.sH.sT() : ap.sH.sZ(-1) : zW[1] >= zX[1] ? zc = 4 : zZ <= 0 && zd();
else if (function() {
var eJ;
for (eJ = 9; 0 <= eJ; eJ--) 12 < Math.abs(za[eJ] - a6.f5[jM[eJ]]) && (zZ = 140), za[eJ] = a6.f5[jM[eJ]];
if (--zZ <= 0) return 1;
return
}()) {
yM = a7.zg(), l.yL(yM), this.rD = !0, yp = !0, zZ = 360;
{
let dd = 0;
for (let eJ = iV - 1; 0 <= eJ; eJ--) a1.sR(iW[eJ]) && (dd += a6.f5[iW[eJ]]);
{
var df;
yM ? zX[0] = Math.max(eX(3 * dd, 4), 1) : b.hT ? (df = aj.fK(100 * b6.sy(), b.wL), df += 2 * Math.max(df - 75, 0), df = aj.mx(df = 150 - df, 0, 100), df = aj.fK(df * dd, 100), zX[0] = Math.max(df, 1)) : zX[0] = Math.max(eX(3 *
dd, 5), 1)
}
zX[1] = Math.max(dd - zX[0], 1)
}
zb++
}
}, this.si = function() {
this.rD && zW[0] < zX[0] && zd()
}, this.mz = function(player, zj) {
var eJ, dd;
if (this.rD) {
for (eJ = zY.length - 1; 0 <= eJ; eJ--)
if (zY[eJ] === player) return;
l.t6(200, a6.jt[player] + (zj ? " voted for" : " rejected") + " peace.", 257, player, zj ? aa.ky : aa.lB, aa.kh, -1, !0), zY.push(player), yp = !0, dd = b.iv ? zX[0] : a6.f5[player], zj ? zW[0] += dd : zW[1] += dd, player === b.ea &&
(zV = zj ? 1 : -1)
}
}, this.gL = function() {
var fP;
this.rD && (fP = gK(), gM.drawImage(gV, aL.gA - this.gA - b1.gap, fP))
}
}
function bc() {
var gA, fO, zk, gV, qr, rD, h9, wB, g9, yp, zl = 11 / 12;
function zn() {
var yw = Math.floor(h9 * (gA - 2 * zk)),
zq = 1 + Math.floor(.0625 * p.gF),
zr = 1 + Math.floor(.3 * p.gF),
zs = Math.floor(.55 * p.gF);
qr.clearRect(0, 0, gA, p.gF), qr.fillStyle = aa.kg, qr.fillRect(0, 0, zk, p.gF), qr.fillRect(zk + yw, 0, gA - zk - yw, p.gF), qr.fillStyle = h9 < 1 / 3 ? "rgba(" + Math.floor(3 * h9 * 130) + ",130,0,0.85)" : h9 < 2 / 3 ? "rgba(130," + (130 -
Math.floor(3 * (h9 - 1 / 3) * 130)) + ",0,0.85)" : "rgba(130,0," + Math.floor(3 * (h9 - 2 / 3) * 130) + ",0.85)", qr.fillRect(zk, 0, yw, p.gF), qr.fillStyle = aa.gN, qr.fillRect(0, 0, gA, 1), qr.fillRect(0, p.gF - 1, gA, 1), qr
.fillRect(0, 0, 1, p.gF), qr.fillRect(zk, 0, 1, p.gF), qr.fillRect(zk + yw, 0, 1, p.gF), qr.fillRect(gA - zk, 0, 1, p.gF), qr.fillRect(gA - 1, 0, 1, p.gF), qr.fillRect(Math.floor(.25 * p.gF) + zr, Math.floor((p.gF - zq) / 2), p.gF - 2 *
zr, zq), qr.fillRect(Math.floor(gA - 1.25 * p.gF) + zr, Math.floor((p.gF - zq) / 2), p.gF - 2 * zr - zr % 2, zq), qr.fillRect(Math.floor(gA - 1.25 * p.gF) + Math.floor((p.gF - zq) / 2), zr, zq, p.gF - 2 * zr - zr % 2), wB = aZ.fU.h8(b
.ea, p.fr()), qr.fillText(aZ.jr.js(wB) + " (" + aZ.jr.w2(100 * h9, +(h9 < .1)) + ")", Math.floor(.5 * gA), zs)
}
this.setAbsolutePercentage = function(newPercentage) {
h9 = newPercentage;
};
keybindFunctions.setAbsolute = this.setAbsolutePercentage;
keybindFunctions.setRelative = (arg1) => p.ug(arg1);
function zw(fy) {
return !(1 < fy && 1 === h9 || (1 < fy && fy * h9 - h9 < 1 / 1024 ? fy = (h9 + 1 / 1024) / h9 : fy < 1 && h9 - fy * h9 < 1 / 1024 && (fy = (h9 - 1 / 1024) / h9), h9 = aj.mx(h9 * fy, 1 / 1024, 1), zn(), 0))
}
function zx(gD) {
return h9 !== (h9 = aj.mx((gD - fO - zk) / (gA - 2 * zk), 1 / 1024, 1)) && (zn(), !0)
}
this.fP = 0, this.fY = !1, this.ct = function() {
rD = !b.fj && !b.fS, yp = !1, h9 = .5, wB = 0, this.fY = !1, this.resize()
}, this.resize = function() {
b8.cy.g0() && aL.gA < .8 * aL.gF ? (this.gF = Math.floor(.0536 * aL.g1), gA = aL.gA - 4 * b1.gap - this.gF) : (gA = Math.floor((b8.cy.g0() ? .65 : .389) * aL.g1), gA += 12 - gA % 12, this.gF = Math.floor(gA / 12)), zk = Math.floor(3 *
this.gF / 2), g9 = aZ.g5.g6(1, Math.floor(.5 * this.gF)), (gV = document.createElement("canvas")).width = gA, gV.height = this.gF, (qr = gV.getContext("2d", {
alpha: !0
})).font = g9, aZ.g5.textBaseline(qr, 1), aZ.g5.textAlign(qr, 1), this.zm(), zn()
}, this.zm = function() {
fO = b8.cy.g0() && aL.gA < .8 * aL.gF ? this.gF + 3 * b1.gap : Math.floor((aL.gA - gA) / 2), this.fP = aL.gF - this.gF - bB.wl() * b1.gap
}, this.jC = function() {
yp && (yp = !1, zn())
}, this.rD = function() {
return !(!rD || k.fT && fO < Math.floor(b1.gap + 5.5 * this.gF))
}, this.y2 = function(gB) {
return !!this.rD() && fO + gA > aL.gA - gB - b1.gap
}, this.wD = function() {
rD = !b.fS
}, this.zd = function() {
rD = !1
}, this.fr = function() {
return aj.mx(Math.floor(1024 * h9 + .5) - 1, 0, 1023)
}, this.ud = function(gD, gE) {
return this.rD() && fO < gD && gD < fO + gA && gE > this.fP
}, this.fX = function(gD, gE) {
return !!this.rD() && !!p.ud(gD, gE) && (q.kH = !1, function(xM, gD, gE) {
if (function(gD, gE) {
return fO < gD && gD < fO + zk && gE > p.fP
}(gD, gE)) return zw(zl);
if (function(gD, gE) {
return fO + gA - zk < gD && gD < fO + gA && gE > p.fP
}(gD, gE)) return zw(1 / zl);
return xM.fY = !0, zx(gD)
}(this, gD, gE) && (b4.d3 = !0), !0)
}, this.ug = function(kO) {
0 !== b.sh && this.rD() && zw(kO) && (b4.d3 = !0)
}, this.uC = function(deltaY) {
var kO;
return !(0 === deltaY || !this.rD()) && zw(kO = 0 < deltaY ? (kO = 400 / (400 + deltaY)) < zl ? zl : kO : 1 / zl < (kO = (400 - deltaY) / 400) ? 1 / zl : kO)
}, this.u9 = function(gD) {
return !!this.fY && zx(gD)
}, this.uZ = function() {
this.fY = !1
}, this.iE = function() {
this.rD() && wB !== aZ.fU.h8(b.ea, this.fr()) && (yp = !0)
}, this.gL = function() {
this.rD() && gM.drawImage(gV, fO, this.fP)
}
}
function cL() {
var gV, qr, zy, font, zz = 0,
a00 = !1,
a01 = [10, 5, 3, 2, 1.5, 1, .75, .5, .25],
a02 = 5;
function a08() {
if (a00) {
var eJ, ef = a01.length,
zs = Math.floor(.5 * zy.gF),
gF = ef * zs,
fO = Math.floor(Math.floor(zy.fO) + .3 * zy.gA - .5),
fP = Math.floor(Math.floor(zy.fP) - gF),
gA = Math.floor(.4 * zy.gA + 2.5);
for (gM.fillStyle = aa.kg, gM.fillRect(fO, fP, gA, gF), gM.fillStyle = aa.l5, gM.fillRect(fO, fP + a02 * zs, gA, zs), gM.fillStyle = aa.gN, gM.fillRect(fO, fP, 2, gF), gM.fillRect(fO, fP, gA, 2), gM.fillRect(fO + gA - 2, fP, 2, gF), eJ =
1; eJ < ef; eJ++) gM.fillRect(fO, fP + eJ * zs, gA, 2);
for (gM.fillStyle = aa.gN, aZ.g5.textAlign(gM, 1), aZ.g5.textBaseline(gM, 1), gM.font = aZ.g5.g6(0, .6 * zs), fO += .5 * gA, eJ = 0; eJ < ef; eJ++) gM.fillText(a0G(eJ), fO, fP + (eJ + .6) * zs)
}
gM.drawImage(gV, Math.floor(zy.fO), Math.floor(zy.fP))
}
function g7(xM) {
var fO, jj, jk, zs;
qr.clearRect(0, 0, Math.floor(zy.gA), Math.floor(zy.gF)), qr.fillStyle = aa.kg, qr.fillRect(0, 0, Math.floor(zy.gA), Math.floor(zy.gF)), b.kG && (qr.fillStyle = aa.l5, qr.fillRect(0, 0, Math.floor(.3 * zy.gA), Math.floor(zy.gF))), qr
.fillStyle = aa.gN, qr.fillText("Hide UI", .15 * zy.gA, .5 * zy.gF), qr.fillRect(Math.floor(.3 * zy.gA - .5), 0, 2, Math.floor(zy.gF)), fO = .5 * zy.gA, qr.fillText("Replay Speed", fO, .31 * zy.gF), qr.fillText(a0G(a02), fO, .69 * zy.gF),
qr.fillRect(Math.floor(.7 * zy.gA - .5), 0, 2, Math.floor(zy.gF)), xM.wj ? (fO = Math.floor(.02 * zy.gA), xM = Math.floor(.025 * zy.gA), jj = Math.floor(.85 * zy.gA - fO - .5 * xM), jk = Math.floor(.25 * zy.gF), zs = Math.floor(zy.gF) -
2 * jk, qr.fillRect(jj, jk, fO, zs), qr.fillRect(jj + fO + xM, jk, fO, zs)) : function() {
var gA = Math.floor(.46 * zy.gF),
gF = Math.floor(.23 * zy.gF),
fO = Math.floor(.85 * zy.gA - .5 * gA + gA / 12),
fP = Math.floor(.5 * zy.gF - gF);
qr.beginPath(), qr.moveTo(fO, fP), qr.lineTo(fO + gA, fP + gF), qr.lineTo(fO, fP + (gF << 1)), qr.fill()
}(), qr.fillRect(0, 0, Math.floor(zy.gA), 2), qr.fillRect(0, 0, 2, Math.floor(zy.gF)), qr.fillRect(0, Math.floor(zy.gF) - 2, Math.floor(zy.gA), 2), qr.fillRect(Math.floor(zy.gA - 2), 0, 2, Math.floor(zy.gF))
}
function a0G(eJ) {
return 5 === eJ ? "Normal" : "" + a01[eJ]
}
this.wj = !1, this.ct = function() {
b.fS && (a02 = 5, this.wj = !1, a00 = !1, zy = new nh([.3, .3 / 6], [.5, 1]), this.resize())
}, this.a03 = function() {
return a01[a02]
}, this.gK = function() {
return zy.fP
}, this.y2 = function(gB) {
return !!b.fS && zy.fO + zy.gA > aL.gA - gB - b1.gap
}, this.resize = function() {
b.fS && (zy.resize(), zy.fP -= (bB.wl() - 1) * b1.gap, font = aZ.g5.g6(0, .3 * zy.gF), (gV = document.createElement("canvas")).width = Math.floor(zy.gA), gV.height = Math.floor(zy.gF), (qr = gV.getContext("2d", {
alpha: !0
})).font = font, aZ.g5.textAlign(qr, 1), aZ.g5.textBaseline(qr, 1), g7(this))
}, this.uk = function(a04) {
a04 !== b.kG && (b.kG = a04, b6.resize(), b4.d3 = !0, b.fS) && (zz = b4.dc + 2e3, g7(this))
}, this.fX = function(fO, fP) {
if (!b.fS) return !1;
if (fO < zy.fO || fP < zy.fP || fO > zy.fO + zy.gA) return a00 && function(xM, fO, fP) {
var ef = a01.length,
zs = Math.floor(.5 * zy.gF),
gF = ef * zs,
jj = Math.floor(Math.floor(zy.fO) + .3 * zy.gA - .5),
gF = Math.floor(Math.floor(zy.fP) - gF),
gA = Math.floor(.4 * zy.gA + 2.5);
return a00 = !1, b4.d3 = !0, fO < jj || jj + gA < fO || fP < gF || (a02 = a07(0, Math.floor((fP - gF) / zs), ef - 1), g7(xM)), !0
}(this, fO, fP);
if ((fO -= zy.fO) < .3 * zy.gA) a00 = !1, this.uk(!b.kG);
else {
if (fO < .7 * zy.gA) return a00 = !a00, b4.d3 = !0;
this.um(!1)
}
return !0
}, this.um = function(a06) {
2 === b.sh ? (this.uk(!1), at.d5(3)) : (a00 = !1, this.wj = !this.wj, this.wj ? k.fT ? k.ul() : b8.cy.setState(1) : a06 || k.xT(), b4.d3 = !0, g7(this))
}, this.un = function() {
this.wj = !1, k.xT(), b4.d3 = !0, g7(this)
}, this.uS = function(fO, fP) {
return !!b.kG && (k.fX(fO, fP) || (b.fS ? ((b4.dc > zz || !this.fX(fO, fP)) && q.fX(fO, fP), b4.d3 = !0, zz = b4.dc + 2e3) : q.fX(fO, fP)), !0)
}, this.iE = function() {
b.fS && b.kG && b4.dc > zz - 1e3 && b4.dc < zz && (b4.d3 = !0)
}, this.so = function() {
b.fS && (this.wj = !1, b4.d3 = !0, g7(this))
}, this.gL = function() {
if (b.fS) {
if (b.kG) {
if (b4.dc > zz) return;
if (b4.dc > zz - 1e3) return gM.globalAlpha = a07(0, (1e3 - (b4.dc - (zz - 1e3))) / 1e3, 1), a08(), void(gM.globalAlpha = 1)
}
a08()
}
}
}
function bd() {
var a0H, a0I, gA, fO, fP, a0J, a0K;
this.ct = function() {
a0H = new Array(2), a0I = new Array(2), this.kH = !1, a0K = a0J = hC = hA = 0, hB = 1, this.resize()
}, this.resize = function() {
gA = (gA = Math.floor((b8.cy.g0() ? .072 : .0502) * aL.g1)) < 8 ? 8 : gA;
for (var eJ = 1; 0 <= eJ; eJ--) a0H[eJ] = document.createElement("canvas"), a0H[eJ].width = gA, a0H[eJ].height = gA, a0I[eJ] = a0H[eJ].getContext("2d", {
alpha: !0
});
this.zm(),
function() {
for (var a0Z = Math.floor(1 + gA / 20), eJ = 1; 0 <= eJ; eJ--) a0I[eJ].clearRect(0, 0, gA, gA), a0I[eJ].fillStyle = aa.kd, a0I[eJ].beginPath(), a0I[eJ].arc(gA / 2, gA / 2, gA / 2 - a0Z, 0, 2 * Math.PI), a0I[eJ].fill(), a0I[eJ]
.lineWidth = a0Z, a0I[eJ].fillStyle = aa.gN, a0I[eJ].strokeStyle = aa.gN, a0I[eJ].beginPath(), a0I[eJ].arc(gA / 2, gA / 2, gA / 2 - a0Z, 0, 2 * Math.PI), a0I[eJ].stroke(), qu(a0I[eJ], 0, 0, gA, a0Z, .3, 0 === eJ)
}()
}, this.jn = function() {
return -hA / hB
}, this.gK = function() {
return -hC / hB
}, this.kQ = function(a0O, gy) {
hA = hB * a0O - gy
}, this.kR = function(a0P, gz) {
hC = hB * a0P - gz
}, this.fX = function(a0N, y3) {
return b.kG || ! function(a0N, y3) {
return Math.pow(a0N - (fO + gA / 2), 2) + Math.pow(y3 - (fP + gA / 2), 2) < gA * gA / 4 || Math.pow(a0N - (fO + gA / 2), 2) + Math.pow(y3 - (fP + 2 * gA), 2) < gA * gA / 4
}(a0N, y3) || bA.dK.data[8].value ? (g.kT() && (this.kH = !0, a0J = a0N, a0K = y3), !1) : y3 < fP + 1.25 * gA ? this.uC(Math.floor(aL.gA / 2), Math.floor(aL.gF / 2), -200) : this.uC(Math.floor(aL.gA / 2), Math.floor(aL.gF / 2), 200)
}, this.u9 = function(a0N, y3) {
var a0Q, a0R, h1, h4;
return !g.kT() || (a0Q = hA, a0R = hC, hA += h1 = a0J - a0N, hC += h4 = a0K - y3, a5.u9(h1, h4), this.a0S(), a0J = a0N, a0K = y3, a0Q !== hA) || a0R !== hC
}, this.uC = function(gD, gE, deltaY) {
var kO;
if (g.kT()) {
if (0 < deltaY) kO = (kO = 500 / (500 + deltaY)) < .5 ? .5 : kO;
else {
if (!(deltaY < 0)) return !1;
kO = 2 < (kO = (500 - deltaY) / 500) ? 2 : kO
}
this.a0T(gD, gE, kO), b4.d3 = !0
}
return !0
}, this.a0T = function(fO, fP, fg) {
var fy;
fg = fy = (fy = 1024 < (fy = fg) * hB ? 1024 / hB : fy) * hB < .125 ? .125 / hB : fy, a5.zoom(fg, fO, fP),
function(fy, gD, gE) {
hB *= fy, hA = (hA + gD) * fy - gD, hC = (hC + gE) * fy - gE, q.a0S()
}(fg, fO, fP)
}, this.a0S = function() {
var a0W = aL.gA / 16,
ge = 0,
a0X = aL.gF / 16,
gg = 0;
hA < -aL.gA + a0W && (ge = -aL.gA + a0W - hA), hA > hB * aq.eE - a0W && (ge = hB * aq.eE - a0W - hA), hC < -aL.gF + a0X && (gg = -aL.gF + a0X - hC), hC > hB * aq.eF - a0X && (gg = hB * aq.eF - a0X - hC), hA += ge, hC += gg, az.kS(), a5
.a0Y(ge, gg)
}, this.zm = function() {
fO = aL.gA - gA - b1.gap, fP = Math.floor(aL.gF / 2 - 1.25 * gA)
}, this.gL = function() {
bA.dK.data[8].value || (gM.drawImage(a0H[0], fO, fP), gM.drawImage(a0H[1], fO, Math.floor(fP + 3 * gA / 2)))
}
}
function be() {
var ds, q9, a0a, a0b, gap, a0c, a0d, a0e, a0f, a0g, g9, a0h, fL, a0i, yw, a0j, a0k, a0l;
function a0p() {
a0b = Math.floor(.2 * (b8.cy.g0() ? .07 : .035) * aL.g1), a0b = y0(b8.cy.g0() ? 3 : 1, a0b);
var a0s = aL.gA / (ds.length + gap);
a0b = a0b < a0s ? a0s : a0b, yw = Math.floor((1 - gap) * a0b), q9 = 0, a0t()
}
function a0t() {
q9 = (q9 = q9 < -20 ? -20 : q9) > (ds.length - 15) * a0b ? (ds.length - 15) * a0b : q9, a0d = Math.floor(q9 / a0b), a0e = (a0e = a0d + Math.floor(aL.gA / a0b)) > ds.length - 1 ? ds.length - 1 : a0e, a0d = (a0d = a0e < a0d ? a0e : a0d) < 0 ?
0 : a0d;
var pW = a0e;
a0c = a0a / ds[pW];
for (var eJ = a0e - 1; a0d <= eJ; eJ--) ds[eJ] > ds[pW] && (pW = eJ, a0c = a0a / Math.pow(ds[eJ], a0i))
}
function a0w(fO) {
fO = Math.floor((q9 + aL.gA - fO - gap * a0b) / a0b);
return (fO = fO < -1 ? -1 : -1 === fO ? 0 : fO > ds.length - 1 ? -1 : fO) !== a0f && (a0f = fO, -1 === a0j && 0 === a0f && r.a0m && (a0j = setInterval(a0x, 100)), 1)
}
function a0y(eJ) {
var ym = Math.floor(a0c * Math.pow(ds[eJ], a0i));
gM.fillRect(q9 + aL.gA - (eJ + 1) * a0b, aL.gF - ym, yw, ym)
}
function a0x() {
var em;
0 !== (a0f = 8 === y.tk() ? -1 : a0f) ? (a0k = (new Date).getTime(), clearInterval(a0j), a0j = -1) : (em = ds[1] / 864e3, -1 !== a0k && (em += ((new Date).getTime() - a0k) * ds[1] / 864e5, a0k = -1), 0 < em && (ds[0] += Math.floor(em), b4
.d3 = !0))
}
this.a0m = !1, this.ct = function() {
a0k = a0j = -1, a0f = -(a0i = 1), this.a0n = !1, fL = 0, a0h = new Date, q9 = 0, gap = .3, (a0l = []).push({
rf: "Plateau A",
ef: 0,
dI: 57
}), a0l.push({
rf: "Max A",
ef: 1,
dI: 1
}), a0l.push({
rf: "Black Friday",
ef: 15,
dI: 15
}), a0l.push({
rf: "Max B",
ef: 19,
dI: 19
}), a0l.push({
rf: "Max C",
ef: 44,
dI: 44
}), a0l.push({
rf: "First Android Version",
ef: 58,
dI: 58
}), a0l.push({
rf: "Max D",
ef: 67,
dI: 67
}), a0l.push({
rf: "The iFrame Explosion",
ef: 98,
dI: 99
}), a0l.push({
rf: "The 155-Day Uptrend",
ef: 58,
dI: 213
}), a0l.push({
rf: "Max E",
ef: 213,
dI: 213
}), a0l.push({
rf: "Plateau B",
ef: 214,
dI: 259
}), a0l.push({
rf: "Turbulent Times",
ef: 260,
dI: 344
}), a0l.push({
rf: "Max F",
ef: 262,
dI: 262
}), a0l.push({
rf: "Max G",
ef: 282,
dI: 282
}), a0l.push({
rf: "Max H",
ef: 333,
dI: 333
}), a0l.push({
rf: "The 19-Day Downtrend",
ef: 283,
dI: 301
}), a0l.push({
rf: "Plateau C",
ef: 345,
dI: 385
}), a0l.push({
rf: "The Alliance Ascent",
ef: 386,
dI: 395
}), a0l.push({
rf: "Max I",
ef: 395,
dI: 395
}), a0l.push({
rf: "First iOS Version",
ef: 411,
dI: 411
}), a0l.push({
rf: "Plateau D",
ef: 396,
dI: 453
}), a0l.push({
rf: "The TikTok Revolution",
ef: 454,
dI: 470
}), a0l.push({
rf: "Max J",
ef: 456,
dI: 456
}), a0l.push({
rf: "Max K",
ef: 472,
dI: 472
}), a0l.push({
rf: "Max L",
ef: 478,
dI: 478
}), a0l.push({
rf: "YT Drew",
ef: 471,
dI: 485
}), a0l.push({
rf: "Plateau E",
ef: 485,
dI: 600
}), a0l.push({
rf: "Uptrend A",
ef: 600,
dI: 613
}), a0l.push({
rf: "Max M",
ef: 613,
dI: 613
}), a0l.push({
rf: "Downtrend A",
ef: 614,
dI: 635
}), a0l.push({
rf: "Plateau F",
ef: 636,
dI: 737
}), a0l.push({
rf: "End of Record",
ef: 738,
dI: 738
}), ds = [208644377, 208644377, 208644377, 206964709, 205156594, 250680803, 249089835, 234476552, 252346209, 263196406, 270821533, 291436400, 294907103, 288866179, 297960890, 310165928, 323215738, 326005712, 312078872, 282668674,
268883231, 261100885, 247870209, 240175828, 231697235, 240614202, 237647174, 230525212, 228239099, 226070733, 215992739, 216961676, 231079584, 235793502, 234032821, 228402462, 216942832, 211862670, 209792418, 220626495, 221020535,
228198633, 226910806, 227687295, 210969547, 197393506, 205629061, 215820135, 213694935, 209455870, 215822584, 215130299, 214034219, 229190414, 230055290, 225313791, 223398523, 231870169, 226224938, 218242706, 235891029, 210498444,
195329116, 187676007, 183432634, 175752106, 170096205, 173369342, 171454357, 185810310, 189616577, 190788861, 179291487, 179513980, 189122353, 188375572, 202060722, 203256609, 197948652, 191950448, 194693217, 196335490, 195911919,
202264283, 199251620, 193699336, 188441210, 183419345, 195919988, 198126823, 199780788, 197440550, 190144884, 179139362, 166469099, 178827877, 183801980, 197952484, 188875861, 185919783, 186237411, 182504952, 183532013, 174109004,
178159701, 161031347, 194622838, 205645645, 200496457, 194773327, 194546481, 207893217, 210920126, 213376144, 173859897, 154326886, 158943729, 166772975, 175066046, 177406405, 179018562, 185986119, 186747583, 200787939, 208959937,
161987576, 185512400, 185788899, 185957487, 194591063, 215634157, 230579314, 237637383, 240518707, 221398239, 225230795, 224891285, 211292916, 216944626, 219436299, 226523918, 232405568, 232166426, 216921782, 244767964, 257278946,
243548100, 237386943, 242802627, 229717622, 168149709, 259971896, 267057767, 257606635, 209857364, 126035568, 129833237, 151312703, 197006695, 73120657, 37551024, 39229432, 29517736, 29382631, 31512045, 42652097, 47363019,
49624906, 46687310, 33767120, 31230439, 34211643, 43094531, 53747053, 55380682, 49779117, 47748833, 21038802, 20406484, 24523793, 26566139, 25284142, 26825553, 23497443, 20291865, 17765022, 21291320, 21106123, 19050128, 18324426,
19044067, 19594721, 19347845, 23365124, 24186529, 19824881, 17952812, 17093838, 17328579, 17607296, 21284737, 22551012, 20471281, 19350848, 19654931, 18725460, 18641926, 23301269, 25178902, 21617041, 21433781, 21078957, 19526047,
18665064, 21394401, 21575049, 19286677, 18018450, 17550775, 17282428, 17055509, 19348704, 20177845, 19766211, 19088037, 18118802, 18269428, 18500614, 19130220, 19351798, 19205188, 19489961, 20233286, 20726811, 23245145, 26158741,
26096642, 24424181, 23690661, 22967492, 21098008, 20325973, 19431907, 17008295, 15583096, 14209752, 14307184, 13541498, 12822679, 13154311, 12161194, 12956543, 11435697, 13428928, 12262514, 12858519, 12405344, 12884309, 14410011,
15556681, 15260178, 14863807, 13861458, 15176144, 14089849, 13063987, 12378716, 13061867, 13118900, 13112653, 13137263, 13062253, 13126875, 14136833, 14711852, 14341250, 11888270, 13137006, 12830841, 12516937, 12783789, 13139393,
12931e3, 12857582, 13677329, 13892963, 13171528, 14135236, 14640750, 15677970, 16758399, 19125177, 17723446, 16469484, 17032884, 19792603, 21426397, 22032534, 20271251, 16190176, 16772813, 17675977, 18764026, 18346209, 19576834,
20989792, 21350839, 14696885, 14653075, 14677999, 14958759, 14210260, 15488352, 15623604, 14473144, 12823062, 14869909, 15142264, 15567014, 17896725, 20081347, 17765006, 12763925, 13523610, 13979983, 15080856, 17116394, 18483238,
18084320, 12100282, 12221529, 12441579, 12058220, 12441689, 12821546, 13401583, 13009895, 12271066, 12210094, 12355642, 13737115, 14257807, 14904897, 14072161, 15640387, 15721803, 16397970, 19254839, 21608906, 20527471, 16596206,
15550563, 14385591, 15547262, 13174302, 12462319, 13000669, 12832541, 12186376, 13150940, 14654379, 14299386, 14158528, 15185971, 12444117, 14253445, 15049053, 14123310, 16892853, 15963931, 11858727, 10012703, 9478191, 9193460,
8851082, 9298848, 9638204, 9442496, 8653593, 9093527, 8530977, 8809114, 9609612, 9906912, 9615756, 9477879, 9713075, 9126583, 8949378, 9577595, 10180186, 9858705, 9534213, 9184660, 8889455, 8311313, 9738346, 9772164, 9157791,
8445413, 8467279, 8756002, 9257951, 10213536, 10620530, 10352296, 9350531, 9118709, 9614237, 9692491, 10801215, 10984804, 9542309, 9609538, 9391430, 9515517, 10064494, 11061684, 10408005, 9794768, 9297643, 9275992, 9394076,
9716084, 10045958, 9715229, 9091248, 10010584, 9845528, 9532588, 8986320, 9037708, 9820996, 8953464, 9074064, 8644692, 8025308, 8832112, 10785788, 10539708, 8908744, 8331216, 8858100, 8626840, 7666284, 8503372, 8855308, 6762540,
6414076, 6786692, 6445532, 6262192, 5918176, 5864376, 5464928, 5384996, 5942760, 5261972, 5404612, 6184860, 6312948, 5815660, 5208552, 4734392, 4538784, 4661404, 5145524, 4819368, 4369224, 4458584, 4289956, 3538288, 3517544,
3871876, 3388048, 3344796, 3089228, 2863676, 2268964, 2160500, 2580004, 2244356, 2018408, 1688912, 1945368, 1796332, 1619260, 2060292, 1597656, 1472788, 1306208, 1171408, 1021096, 1109312, 1241276, 1305092, 1142748, 1157700,
991984, 786992, 786396, 1043956, 1029320, 860500, 834824, 841912, 736464, 690328, 878376, 907232, 794932, 646388, 752600, 672836, 636212, 794108, 746856, 642928, 671328, 493568, 458168, 428776, 464736, 371412, 314568, 225472,
252072, 227604, 251048, 269184, 174136, 825576, 536060, 165952, 153252, 180036, 149616, 138472, 157832, 188152, 180108, 134076, 70960, 89236, 111428, 60520, 74620, 73424, 74720, 71584, 94432, 62572, 66420, 32532, 34452, 41048,
51372, 61916, 43236, 55172, 26776, 47e3, 57424, 93100, 64980, 37288, 44296, 34588, 40700, 29200, 24604, 18184, 42660, 31404, 38096, 18556, 17388, 19568, 17604, 22328, 40300, 39392, 33440, 17960, 7984, 11612, 67700, 14108, 22444,
19756, 9436, 16864, 14400, 17216, 14436, 8612, 15952, 29764, 18748, 16348, 23976, 22080, 20268, 20984, 9480, 30736, 15996, 9484, 9392, 9716, 21540, 57428, 24788, 18728, 8528, 5972, 20560, 18268, 28088, 15364, 15300, 29348, 30992,
20564, 34420, 16716, 14424, 12360, 15124, 51172, 13176
], this.resize()
}, this.resize = function() {
a0a = Math.floor(.15 * aL.gF), a0g = (a0g = Math.floor((b8.cy.g0() ? .018 : .0137) * aL.g1)) < 2 ? 2 : a0g, g9 = aZ.g5.g6(1, a0g), a0p()
}, this.a0q = function(a0r) {
var eJ;
for (this.a0m = !0, eJ = 0; eJ < a0r.length; eJ++) ds.unshift(a0r[eJ]);
a0p(), b4.d3 = !0
}, this.a0u = function() {
a0t()
}, this.u9 = function(fO, fP) {
fP > aL.gF - .6 * a0a ? this.a0n ? fO !== fL && (q9 += fO - fL, fL = fO, a0t(), a0w(fO), this.a0n = -1 !== a0f, b4.d3 = !0) : a0w(fO) && (b4.d3 = !0) : this.uX()
}, this.uX = function() {
-1 !== a0f && (this.a0n = !1, a0f = -1, b4.d3 = !0)
}, this.uC = function(fO, deltaY) {
-1 !== a0f && (q9 += Math.floor(deltaY), a0t(), a0w(fO), b4.d3 = !0)
}, this.fX = function(fO, fP) {
this.u9(fO, fP), -1 !== a0f && (fL = fO, this.a0n = !0)
}, this.uY = function() {
-1 !== a0f && (this.a0n = !1)
}, this.gL = function() {
gM.fillStyle = aa.km;
for (var a10, month, dd, qx, a13, a14, jk, a15, a16, eJ = a0e; a0d <= eJ; eJ--) a0y(eJ);
this.a0m && 0 === a0d && (gM.fillStyle = aa.lE, a0y(0)), -1 !== a0f && (gM.fillStyle = aa.kl, a0y(a0f)), -1 !== a0f && (gM.font = g9, aZ.g5.textBaseline(gM, 2), (dd = new Date).setTime(a0h.getTime() - 1e3 * a0f * 60 * 60 * 24), month =
"month", a10 = "day", "undefined" != typeof Intl && (month = new Intl.DateTimeFormat("en-US", {
month: "long"
}).format(dd), a10 = new Intl.DateTimeFormat("en-US", {
weekday: "long"
}).format(dd)), a10 = a10 + ", " + dd.getUTCDate() + " " + month + " " + dd.getFullYear(), month = 1 === ds[a0f] ? " second played" : " seconds played", month = aZ.jr.js(ds[a0f]) + month, dd = Math.floor(gM.measureText(a10)
.width), qx = Math.floor(gM.measureText(month).width), a13 = Math.floor(.5 * (dd + a0g)), a14 = (a14 = q9 + aL.gA - (a0f + 1) * a0b) < a13 ? a13 : a14 > aL.gA - a13 ? aL.gA - a13 : a14, jk = aL.gF - Math.floor(a0c * Math.pow(ds[
a0f], a0i)), a15 = Math.floor(1.1 * a0g), a16 = jk > aL.gF - a15 ? aL.gF - a15 : jk, gM.fillStyle = aa.kh, gM.fillRect(aL.gA - qx - a0g, a16 - a15, qx + a0g, a15), gM.fillRect(a14 - a13, aL.gF - a15, dd + a0g, a15), gM
.fillStyle = aa.gN, aZ.g5.textAlign(gM, 2), gM.fillText(month, Math.floor(aL.gA - .5 * a0g), a16),
function(jk, a15) {
for (var qw, wv = -1, g4 = ds.length - a0f - 1, eJ = a0l.length - 1; 0 <= eJ; eJ--) g4 >= a0l[eJ].ef && g4 <= a0l[eJ].dI && (-1 === wv || a0l[eJ].dI - a0l[eJ].ef < a0l[wv].dI - a0l[wv].ef) && (wv = eJ); - 1 !== wv && (qw =
Math.floor(gM.measureText(a0l[wv].rf).width), gM.fillStyle = aa.kh, gM.fillRect(aL.gA - qw - a0g, jk, qw + a0g, a15), gM.fillStyle = aa.gN, gM.fillText(a0l[wv].rf, Math.floor(aL.gA - .5 * a0g), jk + a15))
}(a16 - 2 * a15, a15), aZ.g5.textAlign(gM, 1), gM.fillText(a10, a14, aL.gF), gM.strokeStyle = aa.kn, gM.lineWidth = 1, gM.beginPath(), gM.moveTo(0, jk), gM.lineTo(aL.gA, jk), gM.closePath(), gM.stroke())
}
}
function bf() {
var g9, gA, fP, a18, a19, gV, qr, yp, vd, a1A, a1B, a1C, a1D;
this.fO = 0, this.gF = 0, this.ct = function() {
a19 = b.qY, a1B = "rgba(0,100,0,0.8)", a1C = "rgba(150,0,0,0.8)", yp = !(a1A = !0), vd = a6.eb[b.ea], this.resize()
}, this.resize = function() {
gA = Math.floor((b8.cy.g0() ? .305 : .24) * aL.g1), this.gF = Math.floor(.5 + .13 * gA), gA = Math.floor(6 * this.gF), g9 = aZ.g5.g6(1, Math.floor(.8 * this.gF)), a1D = Math.floor(.5 * this.gF), aq.pe.font = g9, fP = b1.gap, a18 = Math
.floor(1 + .13 * this.gF), (gV = document.createElement("canvas")).width = gA, gV.height = this.gF, (qr = gV.getContext("2d", {
alpha: !0
})).font = g9, aZ.g5.textBaseline(qr, 1), aZ.g5.textAlign(qr, 1), this.a1E()
}, this.zD = function() {
return b8.cy.g0() && aL.gA < 1.2 * aL.gF
}, this.zm = function() {
this.zD() ? this.fO = aL.gA - gA - b1.gap : this.fO = Math.floor(t.a1F() + (aL.gA - t.a1F() - u.gA - gA) / 2 - .5 * b1.gap)
}, this.jC = function() {
yp && (yp = !1, this.a1E())
}, this.a1E = function() {
qr.clearRect(0, 0, gA, this.gF), qr.fillStyle = a1A ? a1B : a1C, qr.fillRect(0, 0, gA, this.gF), qr.fillStyle = aa.kl, this.a1G(), this.a1H(), qr.fillStyle = a6.eb[b.ea] >= a4.iH(b.ea) ? aa.lB : aa.gN, qr.fillText(aZ.jr.js(vd), Math
.floor(gA / 2), a1D), qr.fillStyle = aa.gN, qr.fillRect(0, 0, gA, 1), qr.fillRect(0, 0, 1, this.gF), qr.fillRect(0, this.gF - 1, gA, 1), qr.fillRect(gA - 1, 0, 1, this.gF)
}, this.a1G = function() {
var qH = a1J(Math.floor((a4.a1I() - 1) * this.gF / 9), this.gF - a18);
qr.fillRect(0, qH, a18, this.gF - qH), qr.fillRect(gA - a18, qH, a18, this.gF - qH)
}, this.a1H = function() {
qr.fillRect(a18, this.gF - a18, Math.floor((gA - 2 * a18) * a6.eb[b.ea] / a19), a18)
}, this.iE = function() {
0 !== a6.jS[b.ea] && 2 !== a6.vZ[b.ea] && vd !== a6.eb[b.ea] && (a19 = y0(a6.eb[b.ea], a19), a1A = a6.eb[b.ea] > vd && 10 <= a6.eb[b.ea], vd = a6.eb[b.ea], yp = !0)
}, this.gL = function() {
0 === a6.jS[b.ea] || b.fj || 2 === a6.vZ[b.ea] || gM.drawImage(gV, this.fO, fP)
}
}
function bg() {
var a1L, a1M, a1N, a1O, a1P, a1Q, a1R, a1S, a1T, a1U, a1V, a1W, a1X, a1Y, a1Z, a1a, a1b, a1c, a1d, a1e, a1f, a1g, position, a1h, a1i, a1j, a1k, a1l = 1,
a1m = 1;
var leaderboardHasChanged = true;
this.playerPos = b.ea;
leaderboardFilter.setUpdateFlag = () => leaderboardHasChanged = true;
function updateFilteredLb() {
if (!leaderboardHasChanged) return;
leaderboardFilter.filteredLeaderboard = leaderboardFilter.playersToInclude
.map(id => a1K[id]).sort((a, b) => a - b);
leaderboardHasChanged = false;
this.playerPos = leaderboardFilter.filteredLeaderboard.indexOf(a1K[b.ea]);
}
function a1o() {
a1R.clearRect(0, 0, a1L, zT),
a1R.fillStyle = aa.lP,
a1R.fillRect(0, 0, a1L, a1W),
a1R.fillStyle = aa.kg,
a1R.fillRect(0, a1W, a1L, zT - a1W);
if (leaderboardFilter.enabled) updateFilteredLb();
var playerPos = (leaderboardFilter.enabled ?
this.playerPos :
a1K[b.ea]
);
if (leaderboardFilter.hoveringOverTabs) a1g = -1;
if (leaderboardFilter.enabled && a1g >= leaderboardFilter.filteredLeaderboard.length) a1g = -1;
playerPos >= position && a1p(playerPos - position, aa.l5),
0 !== a1K[b.ea] && 0 === position && a1p(0, aa.lU),
-1 !== a1g && a1p(a1g, aa.kk),
a1R.fillStyle = aa.kg,
//console.log("drawing", a1g),
a1R.clearRect(0, zT - leaderboardFilter.tabBarOffset, a1L, leaderboardFilter.tabBarOffset);
a1R.fillRect(0, zT - leaderboardFilter.tabBarOffset, a1L, leaderboardFilter.tabBarOffset);
a1R.fillStyle = aa.gN,
a1R.fillRect(0, a1W, a1L, 1),
a1R.fillRect(0, zT - leaderboardFilter.tabBarOffset, a1L, 1),
leaderboardFilter.drawTabs(a1R, a1L, zT - leaderboardFilter.tabBarOffset, aa.l5),
a1R.fillRect(0, 0, a1L, b1.ri),
a1R.fillRect(0, 0, b1.ri, zT),
a1R.fillRect(a1L - b1.ri, 0, b1.ri, zT),
a1R.fillRect(0, zT - b1.ri, a1L, b1.ri), a1R.font = a1M, aZ.g5.textBaseline(a1R, 1), aZ.g5.textAlign(a1R, 1), a1R.fillText(aW.no[65], Math.floor((a1L + a1W - 22) / 2), Math.floor(a1U + a1N / 2));
playerList.drawButton(a1R, 12, 12, a1W - 22);
var hg, en = playerPos < position + a1P - 1 ? 1 : 2;
if (leaderboardFilter.enabled) {
let result = leaderboardFilter.filteredLeaderboard;
if (position !== 0 && position >= result.length - a1P)
position = (result.length > a1P ? result.length : a1P) - a1P;
//if (position >= result.length) position = result.length - 1;
for (a1R.font = a1O, aZ.g5.textAlign(a1R, 0), hg = a1P - en; 0 <= hg; hg--) {
const pos = result[hg + position];
if (pos !== undefined)
a1q(jM[pos]), a1r(hg, pos, jM[pos]);
}
for (aZ.g5.textAlign(a1R, 2), hg = a1P - en; 0 <= hg; hg--) {
const pos = result[hg + position];
if (pos !== undefined)
a1q(jM[pos]), a1s(hg, jM[pos]);
}
} else {
for (a1R.font = a1O, aZ.g5.textAlign(a1R, 0), hg = a1P - en; 0 <= hg; hg--)
a1q(jM[hg + position]), a1r(hg, hg + position, jM[hg + position]);
for (aZ.g5.textAlign(a1R, 2), hg = a1P - en; 0 <= hg; hg--)
a1q(jM[hg + position]), a1s(hg, jM[hg + position]);
}
2 == en && (a1q(b.ea), aZ.g5.textAlign(a1R, 0), a1r(a1P - 1, a1K[b.ea], b.ea), aZ.g5.textAlign(a1R, 2), a1s(a1P - 1, b.ea)), 0 === position && (en = .7 * a1X / a0.get(4).height, a1R.setTransform(en, 0, 0, en, Math.floor(a1Y + .58 * a1X + .5 *
en * a0.get(4).width), Math.floor(a1U + a1N + .4 * a1X)), a1R.imageSmoothingEnabled = !0, a1R.drawImage(a0.get(4), -Math.floor(a0.get(4).width / 2), -Math.floor(a0.get(4).height / 2)), a1R.setTransform(1, 0, 0, 1, 0, 0))
}
function a1q(player) {
b.hT && (a1R.fillStyle = b5.a1u[b5.t8[b5.iU[player]]])
}
function a1p(eJ, a1v) {
a1R.fillStyle = a1v, eJ = a1P - 1 < eJ ? a1P - 1 : eJ;
a1v = Math.floor((eJ === a1P - 1 ? 2 : 0 === eJ ? 1.15 : 1) * a1X), a1v = eJ === a1P - 2 ? Math.floor(a1W + 9.15 * a1X) - Math.floor(a1W + 8.15 * a1X) : a1v;
a1R.fillRect(0, Math.floor(a1W + (eJ + (0 === eJ ? 0 : .15)) * a1X), a1L, a1v)
}
function a1r(a1x, t3, eJ) {
a1R.fillText(a1c[t3], a1Y, Math.floor(a1U + a1N + (a1x + .5) * a1X)), 1 === a6.vZ[eJ] && (a1R.font = "italic " + a1O);
t3 = Math.floor(a1U + a1N + (a1x + .5) * a1X);
a1R.fillText(a6.jt[eJ], a1Z, t3), 0 !== a6.vZ[eJ] && (a1R.font = a1O), eJ < b.ht && 2 !== a6.vZ[eJ] || a1R.fillRect(a1Z, t3 + .35 * a1l, a1b[eJ], Math.max(1, .1 * a1l))
}
function a1s(a1x, eJ) {
a1R.fillText(a6.f5[eJ], a1a, Math.floor(a1U + a1N + (a1x + .5) * a1X))
}
function a26(fP) {
return (fP -= b1.gap + a1W) < 0 ? Math.floor(fP / a1X) - 1 : fP < (a1P - 1) * a1X ? Math.floor(fP / a1X) : fP < zT - a1W ? a1P - 1 : (fP -= zT - a1W, a1P + Math.floor(fP / a1X))
}
function rh(fO, fP) {
return fO >= b1.gap && fO < b1.gap + a1L && fP >= b1.gap && fP < b1.gap + zT
}
this.ct = function() {
var eJ;
for (a1i = !1, a1k = a1j = a1h = 0, a1g = -1, a1P = b8.cy.g0() ? 6 : 10, a1m = (position = 0) === (a1m = bA.dK.data[11].value) ? 10 : 1 === a1m ? 5 : 1, a1f = !1, a1d = new Uint16Array(a1P + 1), a1e = new Uint32Array(a1P + 1), a1T = b.ej,
jM = new Uint16Array(a1T), a1K = new Uint16Array(a1T), eJ = a1T - 1; 0 <= eJ; eJ--) jM[eJ] = eJ, a1K[eJ] = eJ;
this.resize(!0), a1b = new Uint16Array(b.ej);
var a1n = Math.floor(a1L - a1Z - a1Y - a1S);
for (a1c = new Array(b.ej), a1R.font = a1O, eJ = b.ej - 1; 0 <= eJ; eJ--) a1c[eJ] = eJ + 1 + ".", a6.jt[eJ] = aZ.qr.vM(a6.tL[eJ], a1O, a1n), a1b[eJ] = Math.floor(a1R.measureText(a6.jt[eJ]).width);
a1o()
}, this.resize = function(ct) {
if (zT = b8.cy.g0() ? (a1L = Math.floor(.335 * aL.g1), Math.floor(a1P * a1L / 8)) : (a1L = Math.floor(.27 * aL.g1), Math.floor(a1P * a1L / 10)), a1L = Math.floor(.97 * a1L), (a1Q = document.createElement("canvas")).width = a1L, a1Q
.height = zT, a1R = a1Q.getContext("2d", {
alpha: !0
}), a1U = .025 * a1L, a1N = .16 * a1L, a1V = 0 * a1L, a1W = Math.floor(.45 * a1U + a1N), a1X = (zT - a1N - 2 * a1U - a1V) / a1P,
a1Q.height = zT += a1X, leaderboardFilter.tabBarOffset = Math.floor(a1X * 1.3), leaderboardFilter.verticalClickThreshold = zT - leaderboardFilter.tabBarOffset, leaderboardFilter.windowWidth = a1L,
a1M = aZ.g5.g6(1, Math.floor(.55 * a1N)), a1l = Math.floor((b8.cy.g0() ? .67 : .72) * a1X), a1O = aZ.g5.g6(0, a1l), a1R.font = a1O, a1Y = Math.floor(.04 * a1L), a1Z = Math.floor((b8.cy.g0() ? .195 : .18) * a1L), a1S = Math.floor(a1R
.measureText("00920600").width), a1R.font = a1M, a1a = a1L - a1Y, !ct) {
a1R.font = a1O;
for (var eJ = b.ej - 1; 0 <= eJ; eJ--) a1b[eJ] = Math.floor(a1R.measureText(a6.jt[eJ]).width);
a1o()
}
}, this.a1F = function() {
return a1L
}, this.jC = function(ya) {
a1f && (ya || b4.iS() % a1m == 0) && (a1f = !1, a1o())
}, this.iE = function() {
! function() {
for (var hg = a1T - 1; 0 <= hg; hg--) 0 === a6.jS[jM[hg]] && ! function(hg) {
var a24 = jM[hg];
a1T--;
for (var eJ = hg; eJ < a1T; eJ++) jM[eJ] = jM[eJ + 1], a1K[jM[eJ]] = eJ;
jM[a1T] = a24, a1K[jM[a1T]] = a1T
}(hg)
}();
for (var a22, kT = a1T - 1, hg = 0; hg < kT; hg++) a6.f5[jM[hg]] < a6.f5[jM[hg + 1]] && (a22 = jM[hg], jM[hg] = jM[hg + 1], jM[hg + 1] = a22, a1K[jM[hg]] = hg, a1K[jM[hg + 1]] = hg + 1);
! function() {
for (var dd = a1f, en = (a1f = !0, a1K[b.ea] >= a1P - 1 ? a1P - 2 : a1P - 1), eJ = en; 0 <= eJ; eJ--)
if (a1d[eJ] !== jM[eJ] || a1e[eJ] !== a6.f5[jM[eJ]]) return;
(en != a1P - 2 || a1d[a1P] === a1K[b.ea] && a1e[a1P] === a6.f5[b.ea]) && (a1f = dd)
}();
for (var eJ = a1P - 1; 0 <= eJ; eJ--) a1d[eJ] = jM[eJ], a1e[eJ] = a6.f5[jM[eJ]];
a1d[a1P] = a1K[b.ea], a1e[a1P] = a6.f5[b.ea];
leaderboardHasChanged = true;
}, leaderboardFilter.scrollToTop = function() {
position = 0;
}, this.fX = function(fO, fP) {
return !!rh(fO, fP) && ((utils.isPointInRectangle(fO, fP, b1.gap + 12, b1.gap + 12, a1W - 22, a1W - 22) && playerList.display(a6.tL), true) &&
!(fP - b1.gap > leaderboardFilter.verticalClickThreshold && leaderboardFilter.handleMouseDown(fO - b1.gap)) && (a1h = b4.dc, a1i = !0, a1j = a1k = a26(fP), ah.uo() && (fO = a07(-1, a1k, a1P), a1g !== (fO = fO === a1P ? -1 :
fO)) && (a1g = fO, a1o(), b4.d3 = !0)), !0)
}, leaderboardFilter.repaintLeaderboard = function() {
a1o(), b4.d3 = !0;
},
this.u9 = function(fO, fP) {
if (utils.isPointInRectangle(fO, fP, b1.gap + 12, b1.gap + 12, a1W - 22, a1W - 22)) {
playerList.hoveringOverButton === false && (playerList.hoveringOverButton = true, a1o(), b4.d3 = !0);
} else {
playerList.hoveringOverButton === true && (playerList.hoveringOverButton = false, a1o(), b4.d3 = !0);
}
if (leaderboardFilter.setHovering(
utils.isPointInRectangle(fO, fP, b1.gap, b1.gap + leaderboardFilter.verticalClickThreshold, leaderboardFilter.windowWidth, leaderboardFilter.tabBarOffset), fO - b1.gap
)) return;
var dd, a25 = a26(fP);
return a1i ? (dd = position, (position = a07(0, position += a1j - a25, b.ej - a1P)) !== dd && (a25 = (a25 = a07(-1, a1j = a25, a1P)) !== a1P && rh(fO, fP) ? a25 : -1, a1g = a25, a1o(), b4.d3 = !0), !0) : (a25 = (a25 = a07(-1, a25,
a1P)) === a1P || !rh(fO, fP) || ah.uo() ? -1 : a25, a1g !== a25 && (a1g = a25, a1o(), b4.d3 = !0))
}, this.uY = function(fO, fP) {
if (!a1i) return !1;
a1i = !1;
var a25 = a26(fP);
var isEmptySpace = false;
return ah.uo() && -1 !== a1g && (a1g = -1, a1o(), b4.d3 = !0), b4.dc - a1h < 350 && a1k === a25 && -1 !== (a25 = (a25 = a07(-1, a25, a1P)) !== a1P && rh(fO, fP) ? a25 : -1) && (fO = (leaderboardFilter.enabled ? (updateFilteredLb(), jM[
leaderboardFilter.filteredLeaderboard[a25 + position] ?? (isEmptySpace = true, a1K[b.ea])]) : jM[a25 + position]), a25 === a1P - 1 && (leaderboardFilter.enabled ? this.playerPos : a1K[b.ea]) >=
position + a1P - 1 && (fO = b.ea), !isEmptySpace && b.hT && donationsTracker.displayHistory(fO, a6.tL, b.iv), 0 !== a6.jS[fO] && !isEmptySpace) && g.kE(fO, 800, !1, 0), !0
}, this.uC = function(fO, fP, deltaY) {
var a27;
return !(a1i || b.kG || (a27 = Math.max(Math.floor(Math.abs(deltaY) / 40), 1), !rh(fO, fP)) || (fO = (fO = a07(-1, a26(fP), a1P)) === a1P || ah.uo() ? -1 : fO, 0 < deltaY ? position < b.ej - a1P && (position += Math.min(b.ej - a1P -
position, a27), a1g = fO, a1o(), b4.d3 = !0) : 0 < position && (position -= Math.min(position, a27), a1g = fO, a1o(), b4.d3 = !0), 0))
}, this.gL = function() {
gM.drawImage(a1Q, b1.gap, b1.gap)
}
}
function bh() {
var gV, qr, fO, fP, ym, a28, gap, a29, fontSize, a2A, a2B, ed, a2C, a2D, a2E, a2F, a2G, a2H;
function a2K() {
qr.clearRect(0, 0, u.gA, u.gF), qr.fillStyle = aa.kh, qr.fillRect(0, 0, u.gA, u.gF), qr.fillStyle = aa.l0, fg = 0 < a2E ? a2E : Math.sqrt(ed[4] / 1e4), qr.fillRect(0, u.gF - ym - 1, Math.floor(fg * u.gA), ym), qr.fillStyle = aa.gN, qr
.fillRect(0, 0, u.gA, 1), qr.fillRect(0, 0, 1, u.gF), qr.fillRect(u.gA - 1, 0, 1, u.gF), qr.fillRect(0, u.gF - 1, u.gA, 1), qr.fillRect(0, u.gF - ym - 1, u.gA, 1);
for (var fg, a2M, dd = 0, eJ = 0; eJ < a2B.length; eJ++) a2C[eJ] ? (aZ.g5.textAlign(qr, 0), a2M = Math.floor((a28 - ym + 2 * a29) * (eJ - dd + 1) / (a2B.length + 1) - .7 * a29), qr.fillText(a2B[eJ], gap, a2M), aZ.g5.textAlign(qr, 2), 5 ===
eJ && 0 !== a6.jS[b.ea] && a6.eb[b.ea] >= a4.iH(b.ea) ? (qr.fillStyle = aa.lS, qr.fillText(a2J(eJ), u.gA - gap, a2M), qr.fillStyle = aa.gN) : qr.fillText(a2J(eJ), u.gA - gap, a2M)) : dd++
}
function a2J(eJ) {
return eJ < 3 ? ed[eJ].toString() : 3 === eJ || 4 === eJ || 5 === eJ ? aZ.jr.w2(ed[eJ] / 100, 2) : eJ < 7 ? aZ.jr.js(ed[eJ]) : eJ === 7 ? u.a1I(ed[7]) : eJ === 8 ? utils.getMaxTroops(a6.f5, b.ea) : utils.getDensity(b.ea)
}
function a2I() {
a6.f5[b.ea] !== ed[6] && (ed[6] = a6.f5[b.ea], a2A++)
}
this.ct = function() {
a2E = a2F = 0, (a2B = new Array(8))[0] = aW.no[70], a2B[1] = b.iv ? aW.no[71] : aW.no[72], a2B[2] = aW.no[73], a2B[3] = aW.no[74], a2B[4] = aW.no[75], a2B[5] = aW.no[76], a2B[6] = aW.no[77], a2B[7] = aW.no[78],
a2B.push("Max Troops", "Density"), // add a2B
a2H = b.wL - eX(b.wL, 100), (ed = new Array(a2B.length))[0] = b.iv ? 0 : b.ht, ed[1] = b.iv ? iV : b.ip, ed[2] = b.sj, ed[3] = 0, ed[4] = eX(1e4 * a6.f5[0], b.wL), ed[5] = 700, ed[6] = 0, a2I(), ed[7] = 0, a2D = a2J(6), a2C =
new Array(a2B.length);
for (var eJ = a2B.length - 1; 0 <= eJ; eJ--) a2C[eJ] = !0;
a2G = 0, a2G = b.iv ? (a2C[0] = !1, a2C[2] = !1, a2C[3] = !1, 3) : (a2C[3] = !1, 1), a2A = 0, this.resize()
}, this.resize = function() {
this.gA = Math.floor((b8.cy.g0() ? .1646 : .126) * 1.25 * aL.g1), this.gF = Math.floor(1.18 * this.gA), ym = Math.floor(.04 * this.gA), gap = Math.floor(.035 * this.gA), a29 = .04 * this.gA, a28 = this.gF, this.gF -= Math.floor(a2G * (
this.gF - 2 * ym) / a2B.length), fontSize = Math.floor(.7 * (a28 - ym) / a2B.length), fontSize = aZ.g5.g6(1, fontSize), (gV = document.createElement("canvas")).width = this.gA, gV.height = this.gF, (qr = gV.getContext("2d", {
alpha: !0
})).font = fontSize, aZ.g5.textBaseline(qr, 1), qr.lineWidth = 1, this.wE(), this.zm(), s.zm(), a2K()
}, this.zm = function() {
fO = aL.gA - this.gA - b1.gap
}, this.a2L = function() {
fP = b1.gap
}, this.wE = function() {
fP = b1.gap + (s.zD() && 0 !== a6.jS[b.ea] && !b.fj ? s.gF + b1.gap : 0)
}, this.jC = function(ya) {
(ya || 100 <= a2A) && (a2A = 0, a2K())
}, this.x3 = function() {
return ed[7]
}, this.a1I = function(value) {
var pW = Math.floor(value / 1e3 / 60),
value = Math.floor((value - 6e4 * pW) / 1e3);
return value < 10 ? pW + ":0" + value : pW + ":" + value
}, this.iE = function() {
var a2W, per;
a2C[0] && b.sk - b.sj !== ed[0] && (ed[0] = b.sk - b.sj, a2A++), iV - ed[0] !== ed[1] && (ed[1] = iV - ed[0], a2A++), this.j3(), (a2W = a4.a2X(b.ea)) !== ed[5] && (ed[5] = a2W, a2A++), a2I(), ed[7] += b4.a2Y, a2W = a2J(7), a2D !== a2W &&
(a2D = a2W, a2A += 100), a2W = b.hT ? b6.sy() : a6.f5[jM[0]], per = eX(1e4 * a2W, b.wL), ed[3] = a2W, ed[4] !== per && (a2A++, ed[4] = per), 8 === b.it && function() {
if (0 === a6.jS[0]) ap.sH.sZ(1);
else {
if (0 !== a6.jS[1]) return;
ap.sH.sZ(0)
}
return 1
}() || ed[3] < a2H || ed[3] !== b.wL && ! function() {
for (var eJ = iV - 1; 0 <= eJ; eJ--)
if (0 < a6.eg[iW[eJ]].length) return;
return 1
}() || ap.sH.sZ(-1)
}, this.j3 = function() {
a2C[2] && b.sj !== ed[2] && (ed[2] = b.sj, a2A++)
}, this.a2Z = function(eJ) {
var vK, a2a, dd;
return 2 !== b.sh && (eJ === b.wO ? (a2E = 0, a2K(), !1) : (-1 !== eJ || 0 !== a2F) && (a2a = a2E, a2E = b.fS ? eJ / b.wO : (dd = performance.now(), 0 <= eJ && (vK = dd - 392 * eJ, a2F = 0 === eJ || vK < a2F ? vK : a2F), 1 < (a2E = (dd -
a2F) / (392 * b.wO)) ? 1 : a2E), a2K(), a2E !== a2a))
}, this.gL = function() {
gM.drawImage(gV, fO, fP)
}
}
function bi() {
var rD, a2b, gA, gF, zs, a2c, a2d, zE, gV, k5, a2e;
function gK() {
return Math.floor((aL.gA - gA) / 2) < p.gF + 2 * b1.gap ? aL.gF - gF - 4 * b1.gap - p.gF : aL.gF - gF - 2 * b1.gap
}
this.a2f = -1, this.ct = function() {
a2e = rD = !1, zs = .61, a2c = .07, a2d = .09, k5 = zE = gF = 0, this.a2f = -1
}, this.resize = function() {
var qr, jj, iT, a2j, a2k, xS;
rD && (gA = a1J(gA = b8.cy.g0() ? Math.floor(.69 * aL.g1) : Math.floor(.5 * aL.g1), y0(aL.gA - 2 * b1.gap, 10)), gA = a1J(gA, Math.floor(3.57 * y0(aL.gF - 2 * b1.gap, 3))), gF = Math.floor(.28 * gA), (gV = document.createElement(
"canvas")).width = gA, gV.height = gF, qr = gV.getContext("2d", {
alpha: !0
}), jj = Math.floor(1 + gF / 40), qr.clearRect(0, 0, gA, gF), qr.fillStyle = aa.kh, qr.fillRect(jj, jj, gA - 2 * jj, gF - 2 * jj), qr.lineJoin = "bevel", qr.lineWidth = 2 * jj, qr.strokeStyle = aa.gN, qr.strokeRect(jj, jj, gA -
2 * jj, gF - 2 * jj), qr.imageSmoothingEnabled = !1, iT = a0.get(a2b), a2j = iT.width, a2k = iT.height, xS = (1 === a2b ? .85 : 21 === a2b ? .666 : .9) * zs * gF / a2k, qr.setTransform(xS, 0, 0, xS, Math.floor((gA - xS *
a2j) / 2), Math.floor((gF - xS * a2k) / 2)), qr.drawImage(iT, 0, 0), qr.setTransform(1, 0, 0, 1, Math.floor(gA - a2d * gF - a2c * gF - jj), Math.floor(jj + a2c * gF)), function(qr, ef) {
qr.lineWidth = Math.floor(1 + gF / 80), qr.strokeStyle = aa.gN, qr.beginPath(), qr.moveTo(0, 0), qr.lineTo(ef, ef), qr.moveTo(0, ef), qr.lineTo(ef, 0), qr.stroke()
}(qr, Math.floor(a2d * gF)), qr.setTransform(1, 0, 0, 1, 0, 0))
}, this.show = function(df, a2h, zg, a2i) {
rD || a2i && a2e || (a2b = zg ? 21 : df ? 1 : 2, rD = a2e = !0, this.resize(), j.oN(), p.zd(), k5 = b4.dc, -1 === this.a2f && (this.a2f = b4.iS()), zE = a2h ? 1 : 0)
}, this.iE = function() {
!rD || 1 <= zE || (zE = 1 < (zE += 5e-4 * (b4.dc - k5)) ? 1 : zE, k5 = b4.dc, b4.d3 = !0)
}, this.fX = function(fO, fP) {
return !(!rD || zE <= 0 || (fO -= Math.floor((aL.gA - gA) / 2), fP -= gK(), fO < 0) || fP < 0 || gA < fO || gF < fP || (gA - gF / 3 < fO && fP < gF / 3 && (rD = !1, b4.d3 = !0), 0))
}, this.gL = function() {
!rD || zE <= 0 || (gM.globalAlpha = zE, gM.drawImage(gV, Math.floor((aL.gA - gA) / 2), gK()), gM.globalAlpha = 1)
}
}
function ck() {
let a2m = [0, 0],
a2n = [0, 0];
function a2o(g4) {
return 3 !== a2m[g4] && 1 !== a2n[g4] && (a2n[g4] = 1, a2m[g4]++, bA.np.nq(119, (a2m[0] << 2) + a2m[1]), 1)
}
this.ct = function() {
var df = bA.dK.data[119].value;
a2m[0] = df >> 2, a2m[1] = 3 & df
}, this.x4 = function() {
a2o(0) && l.y5(aW.ti(130))
}, this.x5 = function() {
a2o(1) && l.y5(aW.ti(131))
}
}
function cj() {
this.a2p = !1, this.kb = !1, this.wI = !1, this.a2q = [0, 0, 0, 0], this.a2r = function() {
var jj, jk, jl, jm;
this.wI = this.wI || this.kb, (this.kb || this.a2p && this.wI) && (jj = az.a2s[0], jk = az.a2s[1], jl = az.a2s[2], jm = az.a2s[3], jj = jj < this.a2q[0] ? this.a2q[0] : jj, jk = jk < this.a2q[1] ? this.a2q[1] : jk, jl = jl > this.a2q[2] ?
this.a2q[2] : jl, jm = jm > this.a2q[3] ? this.a2q[3] : jm, this.kb = !1, this.a2p = !1, jj === this.a2q[0] && jk === this.a2q[1] && jl === this.a2q[2] && jm === this.a2q[3] ? this.wJ() : jj <= jl && jk <= jm && wb.putImageData(
wc, 0, 0, jj, jk, jl - jj + 1, jm - jk + 1))
}, this.wJ = function() {
this.wI && this.a2q[2] >= this.a2q[0] && this.a2q[3] >= this.a2q[1] && wb.putImageData(wc, 0, 0, this.a2q[0], this.a2q[1], this.a2q[2] - this.a2q[0] + 1, this.a2q[3] - this.a2q[1] + 1), this.wI = !1
}, this.sr = function() {
this.a2q[2] >= this.a2q[0] && this.a2q[3] >= this.a2q[1] && wb.putImageData(wc, 0, 0, this.a2q[0], this.a2q[1], this.a2q[2] - this.a2q[0] + 1, this.a2q[3] - this.a2q[1] + 1), this.wI = !1
}, this.ct = function() {
var fO, fP;
this.a2p = !1, this.kb = !1, this.wI = !1, this.a2q[0] = aq.eE, this.a2q[1] = aq.eF, this.a2q[2] = this.a2q[3] = 0;
loop: for (fO = 1; fO < aq.eE - 1; fO++)
for (fP = aq.eF - 2; 1 < fP; fP--)
if (1 === a2t[a1.qP(fO, fP) + 2]) {
this.a2q[0] = fO;
break loop
} loop: for (fP = 1; fP < aq.eF - 1; fP++)
for (fO = aq.eE - 2; 1 < fO; fO--)
if (1 === a2t[a1.qP(fO, fP) + 2]) {
this.a2q[1] = fP;
break loop
} loop: for (fO = aq.eE - 2; 0 < fO; fO--)
for (fP = aq.eF - 2; 1 < fP; fP--)
if (1 === a2t[a1.qP(fO, fP) + 2]) {
this.a2q[2] = fO;
break loop
} loop: for (fP = aq.eF - 2; 0 < fP; fP--)
for (fO = aq.eE - 2; 1 < fO; fO--)
if (1 === a2t[a1.qP(fO, fP) + 2]) {
this.a2q[3] = fP;
break loop
}
}
}
function ca() {
this.no = null;
var a2u, a2v = new a2w;
this.ct = function() {
a2u = 1 === bA.dK.data[0].value ? new a2x : 2 === bA.dK.data[0].value ? new a2y : 3 === bA.dK.data[0].value ? new a2z : 4 === bA.dK.data[0].value ? new a30 : 5 === bA.dK.data[0].value ? new a31 : a2v;
var eJ, ef = a2v.no.length,
pW = a2u.no.length;
for (eJ = 0; eJ < ef; eJ++) pW === eJ ? (a2u.no.push(a2v.no[eJ]), pW++) : 0 === a2u.no[eJ].length && (a2u.no[eJ] = a2v.no[eJ]);
this.no = a2u.no, bA.dK.translate()
}, this.ox = function() {
return navigator.language.startsWith("en") ? 0 : navigator.language.startsWith("ru") ? 1 : navigator.language.startsWith("tr") ? 2 : navigator.language.startsWith("es") ? 3 : navigator.language.startsWith("de") ? 4 : navigator.language
.startsWith("pl") ? 5 : 0
}, this.tj = function(iT) {
for (var en, ef = this.no.length, eJ = 0; eJ < ef; eJ++)
if (this.no[eJ].startsWith("{") && (en = this.no[eJ].replace("{" + iT + "}", "")).length < this.no[eJ].length) return en;
return iT
}, this.ti = function(g4, a33, oD) {
var eJ, hp, ef, g3;
if (!a33) return this.no[g4];
for (ef = a33.length, g3 = this.no[g4], eJ = 0; eJ < ef; eJ++)
if (Number.isInteger(a33[eJ]))
for (hp = a2u.a34.length - 1; 0 <= hp; hp--) g3 = g3.replace("{" + (20 * (hp + 1) + eJ) + "}", (2 === hp ? 1 !== a33[eJ] : 1 === a33[eJ]) ? "" : a2u.a34[hp]);
if (oD) {
if (oD.yG)
for (eJ = 0; eJ < oD.yG.length; eJ++) a33[oD.yG[eJ]] = aZ.jr.js(a33[oD.yG[eJ]]);
if (oD.yX)
for (eJ = 0; eJ < oD.yX.length; eJ++) a33[oD.yX[eJ]] = aZ.jr.w2(100 * a33[oD.yX[eJ]], 1)
}
for (eJ = 0; eJ < ef; eJ++) g3 = g3.replace("{" + eJ + "}", a33[eJ]);
return g3
}
}
function a2w() {
this.a34 = ["s"], this.no = ["Accept", "You erased {0}.", "You were erased by {0}.", "Congratulations! You won the game.", "{0} won the game.", "{0} broke the non-aggression pact.", "{0} is attacking you!", "Choose your start position!",
"You surrendered!", "The game ended in a stalemate!", "Error: {0}", "", "{0} was immortalized!", "Unclaimed Land {0}", "Player: {0} Balance: {1} Territory: {2} Coordinates: {3}", "Mountains {0}", "Water {0}",
"Ship Owner: {0} Strength: {1}", " Message to {0}: ", "{0}: ", "Humanity triumphs! The undead have been beaten back.", "The Resistance", "Mankind's era ends, overrun by the relentless tide of the undead.", "The Virus",
"If peace is agreed upon, the game ends in a stalemate.", "You signed a non-aggression pact with {0}.", "You asked {0} to sign a non-aggression pact.", "{0} accepted the non-aggression pact.", "{0} requested a non-aggression pact.",
"You asked {0} players to attack {1}.", "You asked {0} to attack {1}.", "{0} suggested you attack {1}.", "Your balance is too low!", "You exported {0} resource{20} to {1}.", "A tax of {0} unit{20} was deducted.",
"{0} supported you with {1} resource{21}.", "A bot ({0}) supported you with {1} resource{21}.", "Map: {0}", "Dimension: {0}x{1}", "Overall Pixels: {0}", "Land: {0} ({1})", "Water: {0} ({1})", "Mountains: {0} ({1})",
"Full sending against human players is disabled.", "{0} and {1} other player{21} were erased.", "{0} and {1} other player{21} left the game.", "{0} and {1} other player{21} surrendered.", "{0} was erased by {1}.", "{0} left the game.",
"{0} surrendered.", "{0} joined the game.", "{1006}No Server Response", "{3231}Account successfully saved!", "{3232}Account", "{3249}No Servers Found", "{3252}Thanks for the vote.", "{3265}Please accept Cookies",
"{3266}Invalid Password Format", "{3605}Invalid Replay Format", "{4207}Lobby Timeout", "{4214}Invalid Username", "{4224}Lobby Error", "{4229}No Client Response", "Undefined", "Error", "LEADERBOARD", "YOU ERASED", "YOU WERE ERASED BY",
"THE GAME WAS WON BY", "MAP:", "Humans", "Players", "Bots", "Spectators", "Threshold", "Occupation", "Interest", "Income", "Time", "Quit Game", "More", "Settings", "Replay", "Links", "Game Version", "Delete Data", "Privacy Settings",
"Close", "Game Statistics", "Surrender", "Force Restart Game", "Menu", "Back", "Select All", "Copy", "Clear", "Launch", "Save & Close", "Reset", "Information",
"Increasing resolution, shrinking minimum font size, and speeding up text rendering can strain your system and hinder gameplay responsiveness.", "Language", "Resolution", "Large UI", "Font", "Hide Usernames", "Place Balance Above",
"Hide Zoom Buttons", "Minimum Font Size", "Lobby", "Text Rendering Speed", "Low", "Medium", "High", "Very High", "Small", "Very Small", "Proxied Lobby", "Slow", "Normal", "Fast", "Enabled", "New Game Update",
"The game has been updated! Please reload the game.", "Reload", "My Account", "Delete Account", "", "", "If peace is agreed upon, the largest territory holder wins the game.", "Hint: Click on a boat to send it to a new location.",
"Hint: The top 9 emojis are ordered by usage.", "{4480}Not enough gold! 💸"
]
}
function a30() {
this.a34 = ["n", "en", "r"], this.no = ["Akzeptieren", "Du hast {0} ausgelöscht.", "Du wurdest von {0} ausgelöscht.", "Herzlichen Glückwunsch! Du hast das Spiel gewonnen.", "{0} hat das Spiel gewonnen.",
"{0} hat den Nichtangriffspakt gebrochen.", "{0} greift dich an!", "Wähle deine Startposition!", "Du hast aufgegeben!", "Das Spiel endete in einem Patt!", "Fehler: {0}", "New Game Update", "{0} wurde verewigt!", "Neutrales Land {0}",
"Spieler: {0} Bilanz: {1} Territorium: {2} Koordinaten: {3}", "Gebirge {0}", "Wasser {0}", "Schiffseigner: {0} Stärke: {1}", " Nachricht an {0}: ", "{0}: ", "Die Menschheit triumphiert. Die Untoten wurden zurückgedrängt.",
"Der Widerstand", "Die Ära der Menschheit endet, überrannt von den Untoten.", "Das Virus", "Die Zustimmung zum Frieden beendet das Spiel in einem Patt!", "Du hast einen Nichtangriffspakt mit {0} geschlossen.",
"Du hast {0} gebeten, einen Nichtangriffspakt zu unterzeichnen.", "{0} hat den Nichtangriffspakt akzeptiert.", "{0} hat einen Nichtangriffspakt angefordert.", "Du bittest {0} Spieler, {1} anzugreifen.", "Du bittest {0}, {1} anzugreifen.",
"{0} bittet dich, {1} anzugreifen.", "Deine Bilanz ist zu niedrig!", "Du hast {0} Ressource{20} an {1} exportiert.", "Eine Steuer von {0} Einheit{40} wurde abgezogen.", "{0} unterstützt dich mit {1} Ressource{21}.",
"Ein Bot ({0}) unterstützt dich mit {1} Ressource{21}.", "Karte: {0}", "Dimension: {0}x{1}", "Gesamtpixel: {0}", "Land: {0} ({1})", "Wasser: {0} ({1})", "Gebirge: {0} ({1})", "Angriffe gegen menschliche Spieler sind limitiert.",
"{0} und {1} weitere{61} Spieler wurden ausgelöscht.", "{0} und {1} weitere{61} Spieler haben das Spiel verlassen.", "{0} und {1} weitere{61} Spieler haben aufgegeben.", "{0} wurde von {1} ausgelöscht.", "{0} hat das Spiel verlassen.",
"{0} hat aufgegeben.", "{0} ist dem Spiel beigetreten.", "{1006}Keine Serverantwort", "{3231}Konto erfolgreich gespeichert!", "{3232}Konto", "{3249}Keine Server gefunden", "{3252}Danke für die Abstimmung.",
"{3265}Bitte akzeptiere Cookies", "{3266}Ungültiges Passwortformat", "{3605}Ungültiges Replayformat", "{4207}Lobby-Timeout", "{4214}Ungültiger Benutzername", "{4224}Lobby Error", "{4229}Keine Client-Antwort", "Undefiniert", "Fehler",
"BESTENLISTE", "DU BESIEGTEST", "DU WURDEST AUSGELÖSCHT VON", "DAS SPIEL WURDE GEWONNEN VON", "KARTE:", "Menschen", "Spieler", "Bots", "Zuschauer", "Schwelle", "Besetzung", "Zinsen", "Einkommen", "Zeit", "Beenden", "Mehr",
"Einstellungen", "Replay", "Links", "Spielversion", "Daten löschen", "Datenschutzeinstellungen", "Schließen", "Spielstatistiken", "Kapitulieren", "Spiel neustarten", "Menü", "Zurück", "Alles auswählen", "Kopieren", "Löschen", "Starten",
"Speichern & Schließen", "Zurücksetzen", "Information",
"Eine erhöhte Auflösung, die Verkleinerung der minimalen Schriftgröße und die Beschleunigung der Textdarstellung können Ihr System belasten und die Spielreaktionsfähigkeit beeinträchtigen.", "Sprache", "Auflösung", "Mobilfreundlich",
"Schriftart", "Benutzernamen ausblenden", "Bilanz oben anzeigen", "Zoom-Tasten ausblenden", "Minimale Schriftgröße", "Lobby", "Textdarstellungsgeschwindigkeit", "Niedrig", "Mittel", "Hoch", "Sehr hoch", "Klein", "Sehr klein",
"Proxy-Lobby", "Langsam", "Normal", "Schnell", "Aktiviert", "Neues Spiel-Update", "Das Spiel wurde aktualisiert! Bitte lade das Spiel neu.", "Neu laden", "Mein Konto", "Konto löschen", "", "",
"Wenn Frieden geschlossen wird, gewinnt die Partei mit dem größten Territorium."
]
}
function a31() {
this.a34 = [], this.no = ["Zaakceptuj", "Usunąłeś {0}.", "Zostałeś usunięty przez {0}.", "Gratulacje! Wygrałeś grę.", "{0} wygrał grę.", "{0} złamał pakt o nieagresji.", "{0} atakuje Cię!", "Wybierz swoją pozycję startową!", "Poddałeś się!",
"Gra zakończyła się remisem!", "Błąd: {0}", "", "{0} został uwieczniony!", "Niezajęta ziemia {0}", "Gracz: {0} Saldo: {1} Terytorium: {2} Współrzędne: {3}", "Góry {0}", "Woda {0}", "Właściciel statku: {0} Siła: {1}",
"Wiadomość do {0}: ", "{0}: ", "Ludzkość triumfuje! Nieumarli zostali odparci.", "Opor", "Era ludzkości dobiegła końca, przeważona przez nieustające fale nieumarłych.", "Wirus",
"Jeśli zostanie uzgodniony pokój, gra zakończy się remisem.", "Podpisałeś pakt o nieagresji z {0}.", "Poprosiłeś {0} o podpisanie paktu o nieagresji.", "{0} zaakceptował pakt o nieagresji.", "{0} zaproponował pakt o nieagresji.",
"Poprosiłeś {0} graczy o atak na {1}.", "Poprosiłeś {0} o atak na {1}.", "{0} zasugerował atak na {1}.", "Twoje saldo jest zbyt niskie!", "Wyeksportowałeś {0} zasobów do {1}.", "Pobrano podatek od {0} jednostek.",
"{0} wsparł Cię {1} zasobami.", "Bot ({0}) wsparł Cię {1} zasobami.", "Mapa: {0}", "Wymiary: {0}x{1}", "Całkowita liczba pikseli: {0}", "Teren: {0} ({1})", "Woda: {0} ({1})", "Góry: {0} ({1})",
"Pełne atakowanie graczy ludzkich jest wyłączone.", "{0} oraz {1} innych graczy zostało usuniętych.", "{0} oraz {1} innych graczy opuściło grę.", "{0} oraz {1} innych graczy poddało się.", "{0} został usunięty przez {1}.",
"{0} opuścił grę.", "{0} poddał się.", "{0} dołączył do gry.", "{1006}Brak odpowiedzi serwera", "{3231}Konto zostało pomyślnie zapisane!", "{3232}Konto", "{3249}Nie znaleziono serwerów", "{3252}Dziękujemy za głos.",
"{3265}Proszę zaakceptuj ciasteczka", "{3266}Nieprawidłowy format hasła", "{3605}Nieprawidłowy format powtórki", "{4207}Przekroczenie czasu oczekiwania w lobby", "{4214}Nieprawidłowa nazwa użytkownika", "{4224}Błąd lobby",
"{4229}Brak odpowiedzi klienta", "Nieokreślony", "Błąd", "TABLICA WYNIKÓW", "WYELIMINOWAŁEŚ", "ZOSTAŁEŚ WYELIMINOWANY PRZEZ", "GRA WYGRANA PRZEZ", "MAPA:", "Ludzie", "Gracze", "Boty", "Widzowie", "Próg", "Zajęcie", "Odsetki", "Dochód",
"Czas", "Opuść grę", "Więcej", "Ustawienia", "Powtórka", "Linki", "Wersja gry", "Usuń dane", "Ustawienia prywatności", "Zamknij", "Statystyki gry", "Poddaj się", "Wymuś restart gry", "Menu", "Powrót", "Zaznacz wszystko", "Kopiuj",
"Wyczyść", "Uruchom", "Zapisz i zamknij", "Resetuj", "Informacje", "Zwiększanie rozdzielczości, zmniejszanie minimalnego rozmiaru czcionki i przyspieszanie renderowania tekstu mogą obciążać system i wpływać na responsywność gry.",
"Język", "Rozdzielczość", "Przyjazny dla urządzeń mobilnych", "Czcionka", "Ukryj nazwy użytkowników", "Umieść saldo na górze", "Ukryj przyciski powiększania", "Minimalny rozmiar czcionki", "Lobby", "Szybkość renderowania tekstu", "Niska",
"Średnia", "Wysoka", "Bardzo wysoka", "Mała", "Bardzo mała", "Lobby pośredniczone", "Wolne", "Normalne", "Szybkie", "Włączone", "Nowa aktualizacja gry", "Gra została zaktualizowana! Proszę przeładować grę.", "Przeładuj", "Moje konto",
"Usuń konto", "", "", "Jeśli zostanie uzgodniony pokój, gracz z największym terytorium wygrywa grę."
]
}
function a2x() {
this.a34 = [], this.no = ["Принять", "Вы стерли {0}.", "Вас уничтожил {0}.", "Поздравляем! Вы выиграли игру.", "{0} выиграл игру.", "{0} нарушил пакт о ненападении.", "{0} атакует вас!", "Выберите вашу начальную позицию!", "Вы сдались!",
"Игра закончилась вничью!", "Ошибка: {0}", "New Game Update", "{0} был увековечен!", "Невостребованная Земля {0}", "Игрок: {0} Баланс: {1} Территория: {2} Координаты: {3}", "Горы {0}", "Вода {0}",
"Владелец корабля: {0} Сила: {1}", " Сообщение для {0}: ", "{0}: ", "Человечество торжествует! Нежить отброшена назад.", "Сопротивление", "Эра человечества заканчивается, нежить непрерывно наступает.", "Вирус",
"Согласие на мир заканчивает игру вничью!", "Вы подписали пакт о ненападении с {0}.", "Вы предложили {0} подписать пакт о ненападении.", "{0} принял пакт о ненападении.", "{0} предложил заключить пакт о ненападении.",
"Вы призвали {0} игроков атаковать {1}.", "Вы попросили {0} атаковать {1}.", "{0} предложил вам атаковать {1}.", "Ваш баланс слишком низкий!", "Вы экспортировали {0} ресурс(ов) к {1}.", "Был удержан налог в размере {0} единиц(ы).",
"{0} поддержал вас {1} ресурс(ов).", "Бот ({0}) поддержал вас {1} ресурс(ов).", "Карта: {0}", "Размер: {0}x{1}", "Общее количество пикселей: {0}", "Земля: {0} ({1})", "Вода: {0} ({1})", "Горы: {0} ({1})",
"Полная отправка против игроков-людей отключена.", "{0} и еще {1} игрок(а) были уничтожены.", "{0} и еще {1} игрок(а) покинули игру.", "{0} и еще {1} игрок(а) сдались.", "{0} был уничтожен {1}.", "{0} покинул игру.", "{0} сдался.",
"{0} присоединился к игре.", "{1006}Ответ от сервера не получен", "{3231}Аккаунт успешно сохранен!", "{3232}Аккаунт", "{3249}Серверы не найдены", "{3252}Спасибо за ваш голос.", "{3265}Пожалуйста, примите Cookies",
"{3266}Неверный формат пароля", "{3605}Неверный формат повтора", "{4207}Тайм-аут лобби", "{4214}Неверное имя пользователя", "{4224}Lobby Error", "{4229}Нет ответа от клиента", "Неопределено", "Ошибка", "ТАБЛИЦА ЛИДЕРОВ", "ВЫ СТЕРЛИ",
"ВАС УНИЧТОЖИЛ", "ИГРУ ВЫИГРАЛ", "КАРТА:", "Люди", "Игроки", "Боты", "Зрители", "Порог", "Занятие", "Интерес", "Доход", "Время", "Выйти из игры", "Ещё", "Настройки", "Повтор", "Ссылки", "Версия игры", "Удалить данные",
"Настройки конфиденциальности", "Закрыть", "Статистика игры", "Сдаться", "Принудительный перезапуск игры", "Меню", "Назад", "Выбрать все", "Копировать", "Очистить", "Запустить", "Сохранить и закрыть", "Сброс", "Информация",
"Увеличение разрешения, уменьшение минимального размера шрифта и ускорение рендеринга текста могут нагружать вашу систему и снижать отзывчивость игрового процесса.", "Язык", "Разрешение", "Подходит для мобильных", "Шрифт",
"Скрыть имена пользователей", "Разместить баланс сверху", "Скрыть кнопки масштабирования", "Минимальный размер шрифта", "Лобби", "Скорость рендеринга текста", "Низкое", "Средний", "Высокое", "Очень высокое", "Маленький",
"Очень маленький", "Проксированное Лобби", "Медленно", "Нормально", "Быстро", "Включено", "Новое обновление игры", "Игра была обновлена! Пожалуйста, перезагрузите игру.", "Перезагрузить", "Мой аккаунт", "Удалить аккаунт", "", "",
"Если будет достигнуто соглашение о мире, побеждает игрок с наибольшей территорией."
]
}
function a2z() {
this.a34 = ["", ""], this.no = ["Aceptar", "Borraste a {0}.", "Fuiste borrado por {0}.", "Felicidades! Ganaste el juego.", "{0} ganó el juego.", "{0} rompió el pacto de no agresión.", "¡{0} te está atacando!", "Elige tu posición de inicio!",
"Te rendiste!", "¡El juego terminó en un empate!", "Error: {0}", "New Game Update", "{0} fue inmortalizado!", "Tierra sin reclamar {0}", "Jugador: {0} Saldo: {1} Territorio: {2} Coordenadas: {3}", "Montañas {0}", "Agua {0}",
"Propietario del barco: {0} Fuerza: {1}", " Mensaje a {0}: ", "{0}: ", "¡La humanidad triunfa! Los no muertos han sido rechazados.", "La Resistencia",
"La era de la humanidad termina, invadida por la implacable marea de los no muertos.", "El Virus", "¡Acordar la paz concluye el juego en un empate!", "Firmaste un pacto de no agresión con {0}.",
"Le pediste a {0} que firmara un pacto de no agresión.", "{0} aceptó el pacto de no agresión.", "{0} solicitó un pacto de no agresión.", "Pediste a {0} jugadores atacar a {1}.", "Pediste a {0} que atacara a {1}.",
"{0} te sugirió que atacaras a {1}.", "¡Tu saldo es demasiado bajo!", "Exportaste {0} recurso(s) a {1}.", "Se dedujo un impuesto de {0} unidad(es).", "{0} te apoyó con {1} recurso(s).", "Un bot ({0}) te apoyó con {1} recurso(s).",
"Mapa: {0}", "Dimensión: {0}x{1}", "Píxeles totales: {0}", "Tierra: {0} ({1})", "Agua: {0} ({1})", "Montañas: {0} ({1})", "El envío completo contra jugadores humanos está deshabilitado.",
"{0} y {1} otro(s) jugador(es) fueron eliminados.", "{0} y {1} otro(s) jugador(es) abandonaron el juego.", "{0} y {1} otro(s) jugador(es) se rindieron.", "{0} fue eliminado por {1}.", "{0} abandonó el juego.", "{0} se rindió.",
"{0} se unió al juego.", "{1006}Sin respuesta del servidor", "{3231}¡Cuenta guardada con éxito!", "{3232}Cuenta", "{3249}No se encontraron servidores", "{3252}Gracias por el voto.", "{3265}Por favor, acepta las cookies",
"{3266}Formato de contraseña inválido", "{3605}Formato de repetición inválido", "{4207}Tiempo de espera en el lobby", "{4214}Nombre de usuario inválido", "{4224}Lobby Error", "{4229}Sin respuesta del cliente", "Indefinido", "Error",
"TABLA DE LIDERAZGO", "ELIMINASTE A", "FUERON ELIMINADOS POR", "EL JUEGO FUE GANADO POR", "MAPA:", "Humanos", "Jugadores", "Bots", "Espectadores", "Umbral", "Ocupación", "Interés", "Ingresos", "Tiempo", "Abandonar juego", "Más",
"Ajustes", "Repetición", "Enlaces", "Versión del juego", "Eliminar datos", "Configuración de privacidad", "Cerrar", "Estadísticas del juego", "Rendirse", "Reiniciar juego forzosamente", "Menú", "Atrás", "Seleccionar todo", "Copiar",
"Limpiar", "Lanzar", "Guardar y cerrar", "Restablecer", "Información",
"Aumentar la resolución, reducir el tamaño mínimo de la fuente y acelerar la velocidad de renderizado del texto puede sobrecargar tu sistema y afectar la capacidad de respuesta del juego.", "Idioma", "Resolución", "Amigable para móviles",
"Fuente", "Ocultar nombres de usuario", "Colocar saldo arriba", "Ocultar botones de zoom", "Tamaño mínimo de fuente", "Lobby", "Velocidad de renderizado de texto", "Bajo", "Medio", "Alto", "Muy alto", "Pequeño", "Muy pequeño",
"Lobby proxy", "Lento", "Normal", "Rápido", "Habilitado", "Nueva actualización del juego", "¡El juego ha sido actualizado! Por favor, recarga el juego.", "Recargar", "Mi cuenta", "Eliminar cuenta", "", "",
"Si se acuerda la paz, el jugador con el mayor territorio gana el juego."
]
}
function a2y() {
this.a34 = ["", ""], this.no = ["Kabul Et", "{0} silindi.", "{0} tarafından silindiniz.", "Tebrikler! Oyunu kazandınız.", "{0} oyunu kazandı.", "{0} saldırmazlık paktını bozdu.", "{0} sana saldırıyor!", "Başlangıç pozisyonunuzu seçin!",
"Teslim oldunuz!", "Oyun berabere bitti!", "Hata: {0}", "New Game Update", "{0} ölümsüzleştirildi!", "Sahipsiz Arazi {0}", "Oyuncu: {0} Bakiye: {1} Bölge: {2} Koordinatlar: {3}", "Dağlar {0}", "Su {0}",
"Gemi Sahibi: {0} Güç: {1}", " {0} için Mesaj: ", "{0}: ", "İnsanlık zafer kazandı! Ölüler geri püskürtüldü.", "Direniş", "İnsanlığın çağı sona erdi, durdurulamayan ölülerin akını tarafından istila edildi.", "Virüs",
"Barışa razı olmak oyunu beraberlikle sonuçlandırır!", "{0} ile saldırmazlık anlaşması imzaladınız.", "{0} ile saldırmazlık anlaşması imzalamasını istediniz.", "{0} saldırmazlık anlaşmasını kabul etti.",
"{0} saldırmazlık anlaşması talep etti.", "{0} oyuncuya {1}'e saldırması için istekte bulundunuz.", "{0}, {1}'e saldırması için istekte bulundunuz.", "{0}, {1}'e saldırmanızı istedi.", "Bakiyeniz çok düşük!",
"{0} kaynak {1}'e ihraç ettiniz.", "{0} birim vergi kesintisi yapıldı.", "{0}, {1} kaynak ile sizi destekledi.", "Bir bot ({0}), {1} kaynak ile sizi destekledi.", "Harita: {0}", "Boyut: {0}x{1}", "Toplam Pikseller: {0}",
"Arazi: {0} ({1})", "Su: {0} ({1})", "Dağlar: {0} ({1})", "İnsan oyunculara karşı tam gönderim engellendi.", "{0} ve diğer {1} oyuncu silindi.", "{0} ve diğer {1} oyuncu oyunu terk etti.", "{0} ve diğer {1} oyuncu teslim oldu.",
"{0}, {1} tarafından silindi.", "{0} oyunu terk etti.", "{0} teslim oldu.", "{0} oyunu katıldı.", "Sunucudan Yanıt Yok", "Hesap başarıyla kaydedildi!", "Hesap", "Sunucu Bulunamadı", "Oyun için teşekkürler.", "Lütfen çerezleri kabul edin",
"Geçersiz Şifre Formatı", "Geçersiz Yeniden Oynatma Formatı", "Lobi Zaman Aşımı", "Geçersiz Kullanıcı Adı", "{4224}Lobby Error", "İstemci Yanıtı Yok", "Tanımsız", "Hata", "LİDER TABLOSU", "YENILDINIZ", "SİZİ İHALE ETTİRENLER",
"OYUNU KAZANAN", "HARİTA:", "İnsanlar", "Oyuncular", "Botlar", "İzleyiciler", "Eşik", "Meslek", "Faiz Oranı", "Gelir", "Zaman", "Oyundan Çık", "Daha Fazla", "Ayarlar", "Yeniden Oyna", "Bağlantılar", "Oyun Versiyonu", "Verileri Sil",
"Gizlilik Ayarları", "Kapat", "Oyun İstatistikleri", "Teslim Ol", "Oyunu Yeniden Başlat", "Menü", "Geri", "Tümünü Seç", "Kopyala", "Temizle", "Başlat", "Kaydet & Kapat", "Sıfırla", "Bilgi",
"Çözünürlüğü artırmanın, minimum yazı tipi boyutunu küçültmenin ve metin işleme hızını artırmanın sistem üzerinde yük oluşturabileceği ve oyun tepkiselliğini azaltabileceği konusunda uyarı.", "Dil", "Çözünürlük", "Mobil Dostu",
"Yazı Tipi", "Kullanıcı Adlarını Gizle", "Bakiyeyi Yukarıda Göster", "Yakınlaştırma Düğmelerini Gizle", "Minimum Yazı Tipi Boyutu", "Lobi", "Metin İşleme Hızı", "Düşük", "Orta", "Yüksek", "Çok Yüksek", "Küçük", "Çok Küçük", "Proxy Lobi",
"Yavaş", "Normal", "Hızlı", "Etkin", "Yeni Oyun Güncellemesi", "Oyun güncellendi! Lütfen oyunu yeniden yükle.", "Yeniden Yükle", "Hesabım", "Hesabı Sil", "", "", "Barış üzerinde anlaşılırsa, en büyük toprak sahibi oyunu kazanır."
]
}
function d0() {
this.rD = !1, this.xb = null, this.a35 = 0, this.gA = null, this.gF = null, this.a36 = .013, this.a37 = .022, this.a38 = .025;
this.a3A = 3, this.a3B = 1.2, this.a3C = .2, this.a3D = .235, this.a3E = .9, this.a3F = .08;
var a3G, vT = ["Best Players", "Best Clans", "LEGENDS NEVER DIE", "THE NEVER ENDING WAR"],
a3H = [-1e6, -1e6];
this.position = [0, 0], this.a3J = [0, 0], this.ct = function() {
this.xb = [null, null], this.rD = !1, this.a35 = 0
}, this.wD = function(id) {
this.a35 = id, aO.lk.a3K(0, this.a35)
}, this.iE = function() {
this.rD && this.g7()
}, this.g7 = function() {
b4.dc - 12e4 >= a3H[this.a35] && (a3H[this.a35] = b4.dc, this.a3J = [0, 0], aO.lk.a3K(0, this.a35))
}, this.resize = function() {
if (this.rD) {
var eJ;
for (this.gA = this.a3L(b8.cy.g0() ? .85 : .66, .75, aL.gA, aL.gF), this.gF = Math.floor(this.gA / .75), eJ = 1; 0 <= eJ; eJ--) this.xb[eJ] && (this.xb[eJ][4] = aZ.g5.g6(1, this.xb[eJ][5] * this.gF / 10));
a3G = aZ.g5.g6(1, .1 * this.gF)
}
}, this.a3L = function(fy, gU, gA, gF) {
return gA < gU * gF ? Math.floor(fy * gA) : Math.floor(gU * fy * gF)
}, this.a3M = function(g4, a3N, a3O, vy, a3P, a3Q, a1x) {
this.position[g4] = a1x;
var zB, size = a3N.length,
g9 = aZ.g5.g6(1, a3P * this.gF / 10),
ds = (this.a3R(a3N, g9, a3Q * this.gA), [
[], size, -1, vy, g9, a3P, 10 * a1x
]);
for (let eJ = 0; eJ < size; eJ++) zB = {
name: a3N[eJ].name,
value: a3N[eJ].r4 / a3O,
colorIndex: a3N[eJ].colorIndex
}, ds[0].push(zB);
this.xb[g4] = ds, this.a3S(g4);
let name = this.xb[g4][0][0].name;
1 === g4 && (name = "[" + name + "]"), 0 === a1x && ay.g2(g4, name);
var data = [];
for (let eJ = 0; eJ < ds[0].length; eJ++) data.push([eJ + 1 + ".", ds[0][eJ].name, ds[0][eJ].value.toFixed(1)]);
at.d5(10, at.th, new a3T(g4 ? "Clan Ranking" : "1v1 Player Ranking", data))
}, this.a3S = function(eJ) {
this.xb[eJ][0].sort(function(hg, hp) {
return hp.value - hg.value
})
}, this.nq = function(g4, name, a3U, a3V) {
if (this.xb && this.xb[g4]) {
var eJ, yP = !1;
if (0 === g4) {
for (eJ = 0; eJ < this.xb[g4][0].length; eJ++)
if (name === this.xb[g4][0][eJ].name && a3U > .99 * this.xb[g4][0][eJ].value && a3U < 1.01 * this.xb[g4][0][eJ].value) {
this.xb[g4][0][eJ].value = a3V, yP = !0;
break
} yP || this.xb[g4][0].push({
name: name,
value: a3V
})
} else {
for (eJ = 0; eJ < this.xb[g4][0].length; eJ++)
if (name === this.xb[g4][0][eJ].name) {
this.xb[g4][0][eJ].value += 32 < this.xb[g4][0][eJ].value ? (64 - this.xb[g4][0][eJ].value) / 256 : .25, this.xb[g4][0][eJ].value *= 1 / (383 / 384), yP = !0;
break
} for (eJ = 0; eJ < this.xb[g4][0].length; eJ++) this.xb[g4][0][eJ].value *= 383 / 384;
yP || this.xb[g4][0].push({
name: name,
value: .25
})
}
this.a3S(g4)
}
}, this.a3R = function(a3N, g9, gB) {
for (var eJ = a3N.length - 1; 0 <= eJ; eJ--)
for (; 3 < a3N[eJ].name.length && o.measureText(a3N[eJ].name, g9) > gB;) a3N[eJ].name = a3N[eJ].name.substring(0, a3N[eJ].name.length - 4) + "..."
}, this.fX = function(gy, gz) {
return !!this.rD && (gy -= (aL.gA - this.gA) / 2, gz -= (aL.gF - this.gF) / 2, gy < 0 || gy > this.gA || gz < 0 || gz > this.gF ? (this.rD = !1, b4.d3 = !0) : (gz = gz < .3 * this.gF ? 1 : gz < .85 * this.gF ? (gz = (0 === this.a35 ?
14.1 : 3) * (gz - .3 * this.gF) / (.55 * this.gF), Math.floor(1 + gz * gz)) : 0 === this.a35 ? 200 : 10, gy < this.gA / 2 ? this.a3J[this.a35] = -gz : this.a3J[this.a35] = gz, a3H[this.a35] + 50 > b4.dc || (a3H[this.a35] =
b4.dc, aO.lk.a3K(0, this.a35)), !0))
}, this.gL = function() {
var jj, jk, qw, qx, a3W, a3X, a3Y, xc;
this.rD && (jj = (aL.gA - this.gA) / 2, jk = (aL.gF - this.gF) / 2, qw = this.a36 * this.gA, qx = this.a3A * qw, a3W = this.a37 * this.gA, a3X = this.a3B * a3W, a3Y = this.a38 * this.gA, xc = Math.floor(.25 * this.gF), gM.setTransform(1,
0, 0, 1, jj, jk), gM.fillStyle = 0 === this.a35 ? aa.lL : aa.lH, gM.fillRect(0, 0, this.gA, xc), gM.fillStyle = aa.kg, gM.fillRect(0, xc, this.gA, this.gF - xc), gM.fillStyle = aa.gN, gM.font = a3G, aZ.g5.textBaseline(gM, 1),
aZ.g5.textAlign(gM, 1), gM.fillText(vT[this.a35], Math.floor(this.gA / 2), Math.floor(.135 * this.gF)), gM.font = aZ.g5.g6(1, .025 * this.gF), gM.fillText(vT[this.a35 + 2], Math.floor(this.gA / 2), Math.floor(.2125 * this.gF)), gM
.beginPath(), gM.moveTo(this.gA / 4, 0), gM.lineTo(this.gA / 2 - qw, 0), gM.lineTo(this.gA / 2, -qx), gM.lineTo(this.gA / 2 + qw, 0), gM.lineTo(this.gA - a3W, 0), gM.lineTo(this.gA + a3X, -a3X), gM.lineTo(this.gA, a3W), gM.lineTo(
this.gA, this.gF / 2 - qw), gM.lineTo(this.gA + qx, this.gF / 2), gM.lineTo(this.gA, this.gF / 2 + qw), gM.lineTo(this.gA, this.gF - a3W), gM.lineTo(this.gA + a3X, this.gF + a3X), gM.lineTo(this.gA - a3W, this.gF), gM.lineTo(
this.gA / 2 + qw, this.gF), gM.lineTo(this.gA / 2, this.gF + qx), gM.lineTo(this.gA / 2 - qw, this.gF), gM.lineTo(a3W, this.gF), gM.lineTo(-a3X, this.gF + a3X), gM.lineTo(0, this.gF - a3W), gM.lineTo(0, this.gF / 2 + qw), gM
.lineTo(-qx, this.gF / 2), gM.lineTo(0, this.gF / 2 - qw), gM.lineTo(0, a3W), gM.lineTo(-a3X, -a3X), gM.lineTo(a3W, 0), gM.lineTo(this.gA / 4, 0), gM.lineTo(this.gA / 4, a3Y), gM.lineTo(a3Y, a3Y), gM.lineTo(a3Y, this.gF - a3Y), gM
.lineTo(this.gA - a3Y, this.gF - a3Y), gM.lineTo(this.gA - a3Y, a3Y), gM.lineTo(this.gA / 4, a3Y), gM.fill(), this.xb[this.a35] && this.a3Z(xc), this.a3a(xc), gM.setTransform(1, 0, 0, 1, 0, 0))
}, this.a3a = function(xc) {
var qw = y0(2, Math.floor(.06 * this.gA)),
zs = (qw -= qw % 2, y0(2, Math.floor(.01 * this.gA))),
xc = (zs -= zs % 2, Math.floor(.82 * xc));
gM.fillRect(qw, xc, qw, zs), gM.fillRect(this.gA - qw - qw, xc, qw, zs), gM.fillRect(Math.floor(this.gA - qw - qw + (qw - zs) / 2), Math.floor(xc - (qw - zs) / 2), zs, qw)
}, this.a3Z = function(xc) {
var fP;
gM.font = this.xb[this.a35][4];
for (var eJ = this.xb[this.a35][1] - 1; 0 <= eJ; eJ--) aZ.g5.textAlign(gM, 2), fP = Math.floor(this.a3F * this.gF + xc + eJ * ((1 - 2 * this.a3F) * this.gF - xc) / 9), gM.fillText(this.xb[this.a35][0][eJ].value.toFixed(this.xb[this.a35][
3]), Math.floor(this.a3E * this.gA), fP), gM.fillText(eJ + 1 + this.xb[this.a35][6] + ".", Math.floor(this.a3C * this.gA), fP), aZ.g5.textAlign(gM, 0), gM.fillText(this.xb[this.a35][0][eJ].name, Math.floor(this.a3D * this.gA), fP)
}
}
function d1() {
var fO, fP, gF, a3b, a3c, a3d, a3e, a3f, a3g, gA, vW, a3h;
this.rD = !1, this.ct = function(g3, a3i) {
if (1 === b8.id && 13 <= b8.dg && b8.dg < 18) return a3i ? void(vW = g3) : vW !== g3 ? void 0 : void b8.os.saveString(200, g3);
a3i && (vW = g3, (a3h = document.createElement("a")).appendChild(document.createTextNode(vW)), this.rD = !0, a3h.title = vW, a3h.target = "_blank", a3h.href = vW, a3h.style.textAlign = "center", a3h.style.color = aa.gN, a3h.style
.position = "absolute", a3h.style.padding = "0px", a3h.style.margin = "0px", this.resize(), document.body.appendChild(a3h), b4.d3 = !0)
}, this.oN = function() {
return !(!this.rD || (document.body.removeChild(a3h), this.rD = !1))
}, this.fX = function(gy, gz) {
return !!this.rD && ((gy < fO || gz < fP || fO + gA < gy || fP + gF < gz || fO + gA - a3b < gy && gz < fP + a3b) && (b4.d3 = !0, this.rD = !1, document.body.removeChild(a3h)), !0)
}, this.resize = function() {
var g9, a3j;
this.rD && (a3f = Math.floor(.8 * (b8.cy.g0() ? aL.gA > aL.gF ? .6 : .55 : .4) * aL.g1), a3b = Math.floor(.15 * a3f), a3c = Math.floor(.35 * a3b), a3d = Math.floor(.5 * a3b), a3e = Math.floor(2.5 * a3d), gF = a3b + a3c + 3 * a3d, g9 = aZ
.g5.g6(1, a3c / aL.nN), a3g = Math.floor(aL.nN * o.measureText(vW, g9)), a3j = gA = (a3f < a3g ? a3g : a3f) + 2 * a3e, gA = Math.min(gA, aL.gA - 2 * (b8.cy.g0() ? 2 : 1) * b1.gap), g9 = aZ.g5.g6(1, gA / a3j * a3c / aL.nN), a3g =
Math.floor(aL.nN * o.measureText(vW, g9)), fO = Math.floor((aL.gA - gA) / 2), fP = Math.floor((aL.gF - gF) / 2), a3h.style.font = g9, a3h.style.top = Math.floor((fP + 1.4 * a3d + a3b) / aL.nN) + "px", a3h.style.left = Math.floor((
fO + (gA - a3g) / 2) / aL.nN) + "px")
}, this.gL = function() {
this.rD && (gM.fillStyle = aa.kh, gM.fillRect(fO, fP + a3b, gA, gF - a3b), gM.fillStyle = aa.lb, gM.fillRect(fO, fP, gA, a3b), gM.fillStyle = aa.gN, gM.lineWidth = b1.ri, gM.strokeStyle = aa.gN, gM.strokeRect(fO, fP, gA, gF), gM.fillRect(
fO, fP + a3b, gA, b1.ri), gM.font = aZ.g5.g6(1, .48 * a3b), aZ.g5.textAlign(gM, 1), aZ.g5.textBaseline(gM, 1), gM.fillText("You are leaving Territorial.io!", Math.floor(fO + (gA - .5 * a3b) / 2), Math.floor(fP + .55 * a3b)), k
.xZ(Math.floor(fO + gA - .8 * a3b), Math.floor(fP + .25 * a3b), Math.floor(.5 * a3b)), gM.setTransform(1, 0, 0, 1, 0, 0))
}
}
function cx() {
var gap, a2B, fO = [0, 0, 0, 0, 0],
fP = [0, 0, 0, 0, 0],
kO = [1, 1, 1, 1, 1],
df = [!0, !0, !1, !1, !1],
iT = (this.dx = [!0, !0, !1, !1, !1], null);
this.a3k = function(vE, a3l) {
iT = vE, df = a3l, a2B = [ai.a3m, ai.te, ai.a3n, ai.a3o, ai.a3p], this.ct()
}, this.ct = function() {
if (a0.g8()) {
var eJ, qw = Math.floor((b8.cy.g0() ? .261 : .195) * aL.g1),
qx = Math.floor(.9 * qw),
zs = Math.floor(.17 * qx);
if (gap = b8.cy.g0() ? 2 * b1.gap : b1.gap, kO[0] = qw / iT[0].width, kO[1] = qx / iT[1].width, kO[2] = zs / iT[2].height, kO[3] = zs / iT[3].height, kO[4] = zs / iT[4].height, kO[3] *= 1.07, fO[0] = gap, fO[1] = gap, fO[2] = gap, fO[
3] = gap, fO[4] = Math.floor(2 * gap + kO[3] * iT[3].width), fP[0] = gap, fP[1] = fP[0] + gap + kO[0] * iT[0].height, fP[2] = fP[1] + gap + kO[1] * iT[1].height, fP[3] = fP[2] + gap + kO[2] * iT[2].height, fP[4] = fP[3], !df[
0])
for (eJ = 0; eJ < 5; eJ++) fP[eJ] -= kO[0] * iT[0].height + gap;
if (!df[1])
for (eJ = 2; eJ < 5; eJ++) fP[eJ] -= kO[1] * iT[1].height + gap
}
}, this.rD = function() {
return !(7 === y.tk() && b8.cy.g0())
}, this.fX = function(gy, gz, a3i) {
if (iT && this.rD())
for (var eJ = df.length - 1; 0 <= eJ; eJ--)
if (df[eJ] && this.dx[eJ] && fO[eJ] < gy && fP[eJ] < gz && gy < fO[eJ] + kO[eJ] * iT[eJ].width && gz < fP[eJ] + kO[eJ] * iT[eJ].height) return at.d5(9, at.th, new a3q("You are leaving Territorial.io.", aZ.g5.vV(a2B[eJ]))), !0;
return !1
}, this.gL = function() {
if (iT && this.rD()) {
var eJ;
for (gM.imageSmoothingEnabled = !0, eJ = 0; eJ < 5; eJ++) df[eJ] && this.dx[eJ] && (gM.setTransform(kO[eJ], 0, 0, kO[eJ], fO[eJ], fP[eJ]), gM.drawImage(iT[eJ], 0, 0));
gM.setTransform(1, 0, 0, 1, 0, 0)
}
}
}
function bj() {
var a35, a3r, a3s;
function a3x(eJ) {
var button = w.nf[eJ],
fO = button.fO,
fP = button.fP,
gA = button.gA,
gF = button.gF;
gM.fillStyle = button.a3v, gM.fillRect(fO, fP, gA, gF), eJ === a35 && (gM.fillStyle = a3s, gM.fillRect(fO, fP, gA, gF)), gM.lineWidth = b1.ri, gM.strokeStyle = a3r, gM.strokeRect(fO, fP, gA, gF),
function(button) {
var fO = button.fO,
fP = button.fP,
gA = button.gA,
gF = button.gF;
aZ.g5.textAlign(gM, 1), aZ.g5.textBaseline(gM, 1), gM.font = button.font, gM.fillStyle = a3r, gM.fillText(button.no, Math.floor(fO + gA / 2), Math.floor(fP + gF / 2 + .1 * button.fontSize))
}(button)
}
this.gA = 0, this.gF = 0, this.fP = 0, this.gap = 0, this.ct = function() {
a35 = -1, a3r = aa.gN, a3s = "rgba(255,255,255,0.16)", this.nf = new Array(7), this.gF = Math.floor((b8.cy.g0() ? .123 : .093) * aL.g1), this.gA = Math.floor((b8.cy.g0() ? 3.96 : 4.2) * this.gF), this.gap = Math.floor(.025 * this.gA);
var a3t = Math.floor(.26 * this.gF),
a3u = aZ.g5.g6(1, a3t);
this.nf[0] = {
fO: 0,
fP: 0,
gA: Math.floor(.6 * this.gA - this.gap / 2),
gF: this.gF,
no: "Multiplayer",
font: a3u,
a3v: "rgba(22,88,22,0.8)",
fontSize: a3t
}, a3t = Math.floor(.18 * this.gF), a3u = aZ.g5.g6(1, a3t), this.nf[1] = {
fO: 0,
fP: 0,
gA: this.gA - this.nf[0].gA - this.gap,
gF: this.gF,
no: "Single Player",
font: a3u,
a3v: "rgba(22,88,88,0.8)",
fontSize: a3t
}, this.nf[2] = {
fO: 0,
fP: 0,
gA: this.gA,
gF: Math.floor(.3 * this.gF),
no: "",
font: this.nf[1].font,
a3v: "rgba(100,0,0,0.8)",
fontSize: this.nf[1].fontSize
}, this.nf[3] = {
fO: 0,
fP: 0,
gA: this.gA,
gF: this.gF,
no: "Back",
font: this.nf[0].font,
a3v: "rgba(0,0,0,0.8)",
fontSize: this.nf[0].fontSize
}, this.nf[4] = {
fO: 0,
fP: 0,
gA: this.gA,
gF: Math.floor(.3 * this.gF),
no: "The game was updated!",
font: this.nf[1].font,
a3v: "rgba(100,0,0,0.8)",
fontSize: this.nf[1].fontSize
}, this.nf[5] = {
fO: 0,
fP: 0,
gA: this.nf[0].gA,
gF: Math.floor(.8 * this.gF),
no: "Reload",
font: this.nf[0].font,
a3v: "rgba(0,100,0,0.8)",
fontSize: this.nf[0].fontSize
}, this.nf[6] = {
fO: 0,
fP: 0,
gA: this.nf[1].gA,
gF: this.nf[5].gF,
no: "Back",
font: this.nf[0].font,
a3v: "rgba(0,0,0,0.8)",
fontSize: this.nf[0].fontSize
}, this.a0u()
}, this.a0u = function() {
this.fP = Math.floor(.54 * aL.gF), this.nf[0].fO = Math.floor(.5 * aL.gA - .5 * this.gA), this.nf[1].fO = this.nf[0].fO + this.nf[0].gA + this.gap, this.nf[2].fO = this.nf[3].fO = this.nf[0].fO, this.nf[4].fO = this.nf[5].fO = this.nf[0]
.fO, this.nf[6].fO = this.nf[1].fO, this.nf[0].fP = Math.floor(.54 * aL.gF), this.nf[1].fP = this.nf[0].fP, this.nf[2].fP = Math.floor((aL.gF - this.nf[2].gF - this.nf[3].gF - this.gap) / 2), this.nf[3].fP = this.nf[2].fP + this.nf[2]
.gF + this.gap, this.nf[4].fP = Math.floor((aL.gF - this.nf[4].gF - this.nf[5].gF - this.gap) / 2), this.nf[5].fP = this.nf[6].fP = this.nf[4].fP + this.nf[4].gF + this.gap
}, this.a3w = function() {
a3x(0), a3x(1)
}, this.a3y = function() {
a3x(2), a3x(3)
}, this.a3z = function() {
a3x(4), a3x(5), a3x(6)
}, this.u9 = function(fO, fP, jC) {
var eJ = -1;
return 0 === y.tk() ? eJ = this.ud(fO, fP, 0, 2) : 3 === y.tk() ? eJ = this.ud(fO, fP, 3, 1) : 5 === y.tk() && (eJ = this.ud(fO, fP, 5, 2)), a35 !== eJ && (a35 = eJ, jC) && (b4.d3 = !0), -1 !== eJ && (r.uX(), !0)
}, this.ud = function(fO, fP, a40, size) {
for (var eJ = a40; eJ < a40 + size; eJ++)
if (fO >= this.nf[eJ].fO && fP >= this.nf[eJ].fP && fO <= this.nf[eJ].fO + this.nf[eJ].gA && fP <= this.nf[eJ].fP + this.nf[eJ].gF) return eJ;
return -1
}
}
function a42() {
function a49(a1v) {
return a1v < 0 ? 0 : 255 < a1v ? 255 : Math.floor(a1v)
}
this.gA = 0, this.gF = 0, this.rD = !1, this.a43 = 0, this.gap = 0, this.a44 = 0, this.a3b = 0, this.a45 = 0, this.a46 = 0, this.a47 = 0, this.colors = null, this.ct = function() {
this.rD = !0, this.a43 = 0, this.resize()
}, this.resize = function() {
this.rD && (aL.gA < 1.4 * aL.gF ? this.gA = Math.floor((b8.cy.g0() ? .94 : .43) * aL.gA) : (this.gF = Math.floor((b8.cy.g0() ? .88 : .43) * aL.gF), this.gA = Math.floor(1.4 * this.gF)), this.gF = this.gA / 1.4, this.gap = this.gA / 32,
this.a3b = Math.floor(.25 * this.gF), this.a45 = (this.gF - this.a3b - 3 * this.gap) / 2, this.a46 = this.gA - 3 * this.gap - this.a45, this.a47 = (this.gF - this.a3b - 4 * this.gap) / 3)
}, this.a48 = function() {
this.colors = [
[0, 0, 0],
[0, 0, 0]
];
var g3 = bA.dK.data[103].value.split("");
if (g3.length < 6)
for (var hp = 2; 0 <= hp; hp--) this.colors[0][hp] = a49(256 * Math.random());
else
for (var eJ = 2; 0 <= eJ; eJ--) this.colors[0][eJ] = a49(4 * (10 * parseInt(g3[2 * eJ]) + parseInt(g3[2 * eJ + 1])));
this.a4A()
}, this.a4B = function() {
return [eX(this.colors[0][0], 4), eX(this.colors[0][1], 4), eX(this.colors[0][2], 4)]
}, this.uC = function(gD, gE, deltaY) {
var jj = (aL.gA - this.gA) / 2;
gE -= (aL.gF - this.gF) / 2 + this.a3b, (gD -= jj) < 0 || gE < 0 || gD >= this.gA || gE >= this.gF - this.a3b || (jj = Math.floor(3 * gE / (this.gF - this.a3b)), this.colors[this.a44][jj] = a49(this.colors[this.a44][jj] + (deltaY < 0 ?
1 : -1) * Math.max(Math.abs(.05 * deltaY), 1)), b4.d3 = !0)
}, this.fX = function(gD, gE) {
this.a43 = 0;
var jj = (aL.gA - this.gA) / 2;
return gE -= (aL.gF - this.gF) / 2, (gD -= jj) < 0 || gE < 0 || gD >= this.gA - 1 || gE >= this.gF - 1 || gD > this.gA - (.4 * this.a3b + 3 * this.gap) && gE < this.a3b ? (this.rD = !1, !(b4.d3 = !0)) : gD < this.gap || gE < this.gap +
this.a3b || gD >= this.gA || gE >= this.gF - this.gap || (gD < this.gap + this.a45 ? (gE < this.gap + this.a3b + this.a45 && 0 !== this.a44 && (this.a44 = 0, b4.d3 = !0), !0) : gD < this.gap + this.a45 || (gD -= 2 * this.gap + this
.a45, gE < this.gap + this.a3b + this.a47 ? (this.a43 = 1, this.colors[this.a44][0] = a49(256 * gD / this.a46), b4.d3 = !0) : gE < 2 * this.gap + this.a3b + this.a47 || (gE < 2 * this.gap + this.a3b + 2 * this.a47 ? (this
.a43 = 2, this.colors[this.a44][1] = a49(256 * gD / this.a46), b4.d3 = !0) : !(gE >= 3 * this.gap + this.a3b + 2 * this.a47) || (this.a43 = 3, this.colors[this.a44][2] = a49(256 * gD / this.a46), b4.d3 = !0))))
}, this.a4A = function() {
for (var hp = 2; 0 <= hp; hp--) this.colors[0][hp] = a49(this.colors[0][hp])
}, this.a4C = function() {
for (var df, g3 = "", eJ = 0; eJ < 3; eJ++)(df = eX(this.colors[0][eJ], 4)) < 10 && (g3 += "0"), g3 += df.toString();
return g3
}, this.u9 = function(gD) {
0 !== this.a43 && (gD -= 2 * this.gap + this.a45 + (aL.gA - this.gA) / 2, this.colors[this.a44][this.a43 - 1] = a49(256 * gD / this.a46), b4.d3 = !0)
}, this.a4D = function() {
0 < this.a43 && (this.a43 = 0, this.a4A(), bA.np.nq(103, this.a4C()), b4.d3 = !0)
}, this.gL = function() {
var jj = (aL.gA - this.gA) / 2,
jk = (aL.gF - this.gF) / 2;
gM.setTransform(1, 0, 0, 1, jj, jk), gM.fillStyle = aa.kh, gM.fillRect(0, this.a3b, this.gA, this.gF - this.a3b), gM.fillStyle = aa.ks, gM.fillRect(0, 0, this.gA, this.a3b), gM.fillStyle = aa.gN, gM.lineWidth = b1.ri, gM.strokeStyle = aa
.gN, gM.strokeRect(-1, -1, this.gA + 2, this.gF + 2), gM.fillRect(0, this.a3b, this.gA, b1.ri), gM.font = aZ.g5.g6(1, .31 * this.a3b), aZ.g5.textBaseline(gM, 1), aZ.g5.textAlign(gM, 1), gM.fillText("Choose Your Nation's Color!", Math
.floor((this.gA - this.gap - .4 * this.a3b) / 2), Math.floor(.55 * this.a3b)), this.a4E(0), gM.lineWidth = b1.ri, this.a4F(0), this.a4F(1), this.a4F(2), k.xZ(Math.floor(jj + this.gA - .4 * this.a3b - this.gap), Math.floor(jk +
.3 * this.a3b), Math.floor(.4 * this.a3b)), gM.setTransform(1, 0, 0, 1, 0, 0)
}, this.a4E = function(eJ) {
var gY = this.colors[eJ][0],
vK = this.colors[eJ][1],
eJ = this.colors[eJ][2];
gM.fillStyle = "rgb(" + gY + "," + vK + "," + eJ + ")", gM.fillRect(this.gap, this.a3b + this.gap, this.a45, 2 * this.a45 + this.gap), gM.lineWidth = b1.ri, gM.strokeStyle = aa.gN, gM.strokeRect(this.gap, this.a3b + this.gap, this.a45,
2 * this.a45 + this.gap), gM.fillStyle = gY + vK + eJ < 306 && vK < 150 ? aa.gN : aa.jp, gM.font = aZ.g5.g6(1, .32 * this.a47), aZ.g5.textAlign(gM, 1), aZ.g5.textBaseline(gM, 1), gM.rotate(-Math.PI / 2), gM.fillText(
"National Color", Math.floor(-1.5 * this.gap - this.a3b - this.a45), Math.floor(this.gap + .5 * this.a45)), gM.rotate(Math.PI / 2)
}, this.a4F = function(eJ) {
gM.fillStyle = "rgb(" + (0 === eJ ? 150 : 2 === eJ ? 30 : 0) + "," + (1 === eJ ? 130 : 2 === eJ ? 30 : 0) + "," + (2 === eJ ? 220 : 0) + ")", gM.fillRect(2 * this.gap + this.a45, this.a3b + this.gap + eJ * (this.gap + this.a47), Math
.floor(this.colors[this.a44][eJ] * this.a46 / 255), this.a47), gM.strokeStyle = aa.gN, gM.strokeRect(2 * this.gap + this.a45, this.a3b + this.gap + eJ * (this.gap + this.a47), this.a46, this.a47), gM.fillStyle = aa.gN, gM.font =
aZ.g5.g6(1, .32 * this.a47), aZ.g5.textBaseline(gM, 1), aZ.g5.textAlign(gM, 0), gM.fillText((0 === eJ ? "Red: " : 1 === eJ ? "Green: " : "Blue: ") + this.colors[0][eJ].toString(), 3 * this.gap + this.a45, Math.floor(this.a3b + this
.gap + eJ * (this.gap + this.a47) + .53 * this.a47))
}
}
function bk() {
var a4G, a4H, ym, yw, zk, a4I, a4J, a4K, a4L, g9, fontSize, k5, a4M, a4O, a4N = 0;
function a4R() {
return aO.j4.a4S[(a4M + a4N) % aO.j4.a4T]
}
function a4P() {
a4M++, k5 = b4.dc, aO.j4.a4U(a4R(), 4) && (a4O = !0, aO.a4V.a4W(a4R()))
}
function a4X() {
0 === a4M ? bC.ts(3249) : (a4M === aO.j4.a4T - 1 && (a4M = -1), a4P())
}
function a4f(fP, a0b, a4e) {
var jj = Math.floor((aL.gA - yw) / 2) + a4J,
jl = jj + Math.floor(a4e * (yw - 2 * a4J));
gM.lineWidth = a0b, gM.beginPath(), gM.moveTo(jj, fP), gM.lineTo(jl, fP), gM.lineTo(Math.floor(jj - a4J + a4e * yw), fP + ym), gM.lineTo(jj - a4J, fP + ym), gM.closePath()
}
this.ct = function() {
y.setState(6), a4G = 0, a4H = 1, a4K = "rgba(0,220,120,0.4)", a4L = "rgba(0,0,0,0.8)", this.resize(), b4.d3 = !0, a4M = 0, a4O = !1, a4P()
}, this.resize = function() {
yw = Math.floor((b8.cy.g0() ? .5 : .25) * aL.g1), zk = yw + 12, ym = Math.floor(.125 * yw), a4J = 3 * ym, a4I = Math.floor(.225 * yw), fontSize = Math.floor(.3 * ym), g9 = aZ.g5.g6(0, fontSize)
}, this.a4Q = function(hg) {
a4N = hg
}, this.tn = function(tg) {
tg === a4R() && (a4O = !1, a4X())
}, this.a4Y = function(tg) {
6 !== y.tk() || a4O || (k5 = b4.dc, a4O = !0)
}, this.fX = function(fO, fP) {
var jj = Math.floor((aL.gA - zk) / 2),
jk = Math.floor(.5 * (aL.gF - b1.gap - ym - a4I)) + ym + b1.gap;
return jj < fO && fO < jj + zk && jk < fP && fP < jk + a4I && (this.a4a(), w.u9(fO, fP, !1), !0)
}, this.a4a = function() {
aO.j4.tv(3260), at.j4.tu()
}, this.iE = function() {
6 === y.tk() && (a4O ? b4.dc > k5 + 12e3 && bC.ts(3250) : b4.dc > k5 + 12e3 && a4X(), 100 < (a4G += .07 * a4H * (a4G < 16 ? 5 + a4G : 84 < a4G ? 105 - a4G : 17)) ? (a4G = 100, a4H = -1) : a4G < 0 && (a4G = 0, a4H = 1), a4K = "rgba(0," +
Math.floor(190 - 1.9 * a4G) + "," + Math.floor(120 - 1.2 * a4G) + "," + (.4 + .004 * a4G) + ")", a4L = "rgba(0," + Math.floor(1.9 * a4G) + "," + Math.floor(1.2 * a4G) + "," + (.8 - .004 * a4G) + ")", b4.d3 = !0)
}, this.gL = function() {
var fO = Math.floor((aL.gA - zk) / 2),
fP = Math.floor(.5 * (aL.gF - b1.gap - ym - a4I));
! function(title, fP, a0b, a4e) {
gM.fillStyle = a4L, a4f(fP, a0b, 1), gM.fill(), gM.fillStyle = a4K, a4f(fP, a0b, a4e), gM.fill(), gM.strokeStyle = aa.gN, a4f(fP, a0b, 1), gM.stroke(),
function(a4h, fP) {
aZ.g5.textAlign(gM, 1), aZ.g5.textBaseline(gM, 1), gM.font = g9, gM.fillStyle = aa.gN, gM.fillText(a4h, Math.floor(.5 * aL.gA), Math.floor(fP + .58 * ym))
}(title, fP)
}("Loading", fP, 3, a4G / 100),
function(fO, fP, gA, gF, no) {
gM.fillStyle = aa.kf, gM.fillRect(fO, fP, gA, gF), gM.lineWidth = 3, gM.strokeStyle = aa.gN, gM.strokeRect(fO, fP, gA, gF);
var ef = Math.floor(.3 * gF);
aZ.g5.textAlign(gM, 1), aZ.g5.textBaseline(gM, 1), gM.font = aZ.g5.g6(0, ef), gM.fillStyle = aa.gN, gM.fillText(no, Math.floor(fO + gA / 2), Math.floor(fP + gF / 2 + .1 * ef))
}(fO, fP + ym + b1.gap, zk, a4I, "Back")
}
}
function bl() {
var db = 0;
this.ct = function() {
w.ct(), db = 0
}, this.setState = function(a4i) {
db = a4i
}, this.tk = function() {
return db
}, this.a4j = function() {
this.setState(8), aH.tw(), at.p6()
}, this.ui = function(dI) {
if (!aq.pg) return !1;
if (!(b4.dc < 400)) {
if ("Enter" === dI.key || "Escape" === dI.key) {
if (this.a4k()) return !0;
if ("Enter" === dI.key) {
if (0 === db) return !0;
if (7 === db) return !0
}
}
return !1
}
}, this.a4l = function() {
ax.resize()
}, this.a4k = function() {
return !!ax.oN()
}, this.dh = function() {
b4.d3 = !0, 8 === db ? b.kG ? ab.uk(!1) : (b3.rD ? b3 : k).ul() : 7 === db ? aH.a4m() : 6 === db ? x.a4a() : 2 === db && z.a4n()
}, this.fX = function(fO, fP) {
!aq.pg || ax.fX(fO, fP) || 6 === db && x.fX(fO, fP) || 2 === db && z.fX(fO, fP) || (r.fX(fO, fP), 0 !== db && 7 === db && aH.fX(fO, fP)) || ay.fX(fO, fP)
}, this.u9 = function(fO, fP) {
if (!r.a0n) {
if (2 === db && z.u9(fO, fP)) return void r.uX();
if (w.u9(fO, fP, !0)) return
}
r.u9(fO, fP)
}, this.click = function(fO, fP) {
r.uY(), aw.fX(fO, fP, !1)
}, this.uC = function(fO, fP, deltaY) {}, this.a4o = function() {
w.a0u(), 0 !== db && 7 === db && aH.resize(), b4.d3 = !0
}, this.gL = function() {
8 !== db && 10 !== db && (gM.imageSmoothingEnabled = !0, this.qn(), 0 !== db && (r.gL(), m.gL(), this.a4p(), aw.gL(), ay.gL()), 0 !== db && (2 === db ? z.gL() : 6 === db ? x.gL() : 7 === db && aH.gL()), ax.gL())
}, this.qn = function() {
var a4r, a4q;
if (makeMainMenuTransparent) gM.clearRect(0, 0, aL.gA, aL.gF);
else aq.pg ? (a4q = aL.gA / aq.eE, a4r = aL.gF / aq.eF, gM.setTransform(a4q = a4r < a4q ? a4q : a4r, 0, 0, a4q, Math.floor((aL.gA - a4q * aq.eE) / 2), Math.floor((aL.gF - a4q * aq.eF) / 2)), gM.drawImage(aq.pi, 0, 0), gM.setTransform(1,
0, 0, 1, 0, 0), gM.fillStyle = aa.kf) : gM.fillStyle = aa.jp, gM.fillRect(0, 0, aL.gA, aL.gF)
}, this.a4p = function() {
var fP = Math.floor(.3 * aL.gF),
gV = a0.a4s("territorial.io"),
gU = (gU = 1.75 * aL.gF / gV.width) * gV.width < .98 * aL.gA ? .98 * aL.gA / gV.width : gU,
fO = (gM.globalAlpha = .15, gM.imageSmoothingEnabled = !1, Math.floor(.5 * (aL.gA - gU * gV.width))),
fO = Math.floor(fO / gU),
fP = Math.floor(fP - .5 * gV.height * gU),
fP = Math.floor(fP / gU);
gM.setTransform(gU, 0, 0, gU, fO, fP), gM.drawImage(gV, fO, fP), gM.setTransform(1, 0, 0, 1, 0, 0), gM.globalAlpha = 1, gM.imageSmoothingEnabled = !0
}
}
function cB() {
var mP, a4v, a4w, a4x;
this.a4t = 0, this.a4u = 0, this.ct = function() {
var gV, kO;
7 === y.tk() && (mP = af.mP, a4v = 0, a4w = b4.dc + 4500, a4x = aO.yH.a4y() ? 2 : 0, y.setState(10), gM.imageSmoothingEnabled = !0, y.qn(), gV = a0.a4s("loading"), kO = (b8.cy.g0() ? .396 : .25) * aL.g1 / gV.width, gM.setTransform(kO, 0,
0, kO, Math.floor((aL.gA - kO * gV.width) / 2), Math.floor((aL.gF - kO * gV.height) / 2)), gM.imageSmoothingEnabled = !1, gM.drawImage(gV, 0, 0), gM.setTransform(1, 0, 0, 1, 0, 0))
}, this.jA = function() {
0 < a4x && b4.dc > a4w && (a4x--, a4w += 4500, 0 === b4.a4z) && 0 === b4.iS() && (0 === a4x && aO.j4.tp < aO.j4.a50 && (aO.j4.tp += aO.j4.a51), aO.j4.a4U(aO.j4.tp, 5))
}, this.a52 = function() {
var em, eJ;
return 10 === y.tk() && (em = af.mP, eJ = af.g4, aO.yH.a53(mP), mP = null, af.ct(em), af.g4 = eJ, !0)
}, this.a54 = function() {
10 === y.tk() && 2 <= ++a4v && (aO.yH.a53(mP), mP = null)
}
}
function c8() {
var a56, a57, a58, a59, a5A, a5B, a5C, nF, a5E, a5G, a5H, a5I, a5L, a5M, a5N, a5O, a5P, a5D = 48,
a5J = ["Joined", "Skipped", "Multiplayer", "Singleplayer"],
a5K = [0, 0, 0, 0];
function a5T(eJ, m0) {
eJ = a5C[eJ].getContext("2d", {
alpha: !0
});
eJ.clearRect(0, 0, a5D, a5D), a9.pm.rj(m0, eJ, 0, 0, a5D)
}
function a5S(eJ, vE) {
var eJ = a5C[eJ].getContext("2d", {
alpha: !0
}),
zoom = (eJ.clearRect(0, 0, a5D, a5D), a5D / vE.width),
dd = a5D / vE.height,
zoom = dd < zoom ? dd : zoom;
eJ.imageSmoothingEnabled = !0, eJ.setTransform(zoom, 0, 0, zoom, Math.floor((a5D - zoom * vE.width) / 2), Math.floor((a5D - zoom * vE.height) / 2)), eJ.drawImage(vE, 0, 0), eJ.setTransform(1, 0, 0, 1, 0, 0)
}
function a5X(iT, gY, a5a, gW) {
gW.beginPath(), gW.moveTo(iT, iT), gW.lineTo(iT + Math.cos(a5a) * gY, iT + Math.cos(a5a + 1.5 * Math.PI) * gY), gW.stroke()
}
function a5q() {
if (7 === y.tk()) {
for (var gi, vE, gW, zoom, dd, hg = -1, eJ = nF.length - 1; 0 <= eJ; eJ--)
if (null === nF[eJ].gV) {
hg = eJ;
break
} - 1 !== hg && (null !== (gi = a5e(nF[hg].a5i, nF[hg].a5j)) ? nF[hg].gV = gi : (gi = {
eE: aq.eE,
eF: aq.eF,
pi: aq.pi,
pe: aq.pe,
pf: aq.pf,
pj: aq.pj,
q6: aq.q6,
a5f: aq.a5f
}, aq.d4(nF[hg].a5i, nF[hg].a5j), aq.ph.a5r(), (vE = document.createElement("canvas")).width = 128, vE.height = 128, gW = vE.getContext("2d", {
alpha: !1
}), (zoom = 128 / aq.eE) < (dd = 128 / aq.eF) && (zoom = dd), gW.imageSmoothingEnabled = !0, gW.setTransform(zoom, 0, 0, zoom, (128 - zoom * aq.eE) / 2, (128 - zoom * aq.eF) / 2), gW.drawImage(aq.pi, 0, 0), aq.eE = gi.eE, aq
.eF = gi.eF, aq.pi = gi.pi, aq.pe = gi.pe, aq.pf = gi.pf, aq.pj = gi.pj, aq.q6 = gi.q6, aq.a5f = gi.a5f, nF[hg].gV = vE), b4.d3 = !0)
}
}
function a5e(a5i, a5j) {
for (var eJ = nF.length - 1; 0 <= eJ; eJ--)
if (null !== nF[eJ].gV && nF[eJ].a5i === a5i && nF[eJ].a5j === a5j) return nF[eJ].gV;
return null
}
this.ct = function() {
var eJ;
for (a5P = 0, a5G = -1, y.setState(7), nF = [], this.resize(), a5C = new Array(13), eJ = a5C.length; 0 <= eJ; eJ--) a5C[eJ] = document.createElement("canvas"), a5C[eJ].width = a5D, a5C[eJ].height = a5D;
for (eJ = 0; eJ < 7; eJ++) ! function(rf) {
var a5V, gW = a5C[rf - 2].getContext("2d", {
alpha: !0
}),
a5U = 1.5 * Math.PI,
iT = Math.floor(.5 * a5D),
gY = Math.floor(.48 * a5D);
gW.lineWidth = 2, gW.strokeStyle = aa.gN, gW.clearRect(0, 0, a5D, a5D);
for (var eJ = 0; eJ < rf; eJ++) a5V = a5U + 2 * Math.PI / rf,
function(eJ, iT, gY, a5U, a5V, gW) {
gW.fillStyle = b5.a5Z[eJ], gW.beginPath(), gW.arc(iT, iT, gY, a5U, a5V), gW.lineTo(iT, iT), gW.fill()
}(eJ + 1, iT, gY, a5U, a5V, gW), 0 !== eJ && a5X(iT, gY, a5U, gW), a5U = a5V;
a5X(iT, gY, 1.5 * Math.PI, gW),
function(iT, gY, gW) {
gW.beginPath(), gW.arc(iT, iT, gY, 0, 2 * Math.PI), gW.stroke()
}(iT, gY, gW)
}(eJ + 2);
a5S(7, a0.get(4)), a5T(8, a9.rA.rX + a9.rA.ro), a5T(9, a9.rA.rX + a9.rA.rm), a5T(10, 1024 - a9.rA.rU), a5S(11, a0.get(19)), a5S(12, a0.get(20)), b4.d3 = !0
}, this.a4m = function() {
this.tw(), aO.j4.tv(3240), y.setState(0), at.d5(5, 5)
}, this.tw = function() {
nF = [], a5C = []
}, this.yk = function() {
return a5I
}, this.resize = function() {
var a5b, pV, zz, a5c;
for (a58 = [0, 0], a5E = [0, 0, 0, 0], a5O = b8.cy.g0() ? (a5H = Math.floor(.8 * .4 * aL.g1), a5I = Math.floor(.56 * a5H), a5E[0] = b1.gap, aL.gA < aL.gF ? (a5E[1] = a5I + 2 * b1.gap, a5E[2] = aL.gA - 3 * a5E[0], a5E[3] = ay.gK() - 3 * b1
.gap - a5I, a5M = Math.floor(.95 * a5I), a5N = Math.floor((aL.gA - a5H - b1.gap) / 2), Math.floor(b1.gap + a5I / 2)) : (a5E[1] = b1.gap, a5E[2] = aL.gA - 3 * b1.gap - a5H, a5E[3] = ay.gK() - 2 * b1.gap, a5M = Math.floor(.8 *
a5H), a5E[3] - a5I < a5H && (a5M = Math.floor(.8 * (a5E[3] - a5I)), a5M = y0(a5I, a5M)), a5N = Math.floor(aL.gA - a5H / 2 - b1.gap), y0(a5O = Math.floor(b1.gap + a5I + (a5E[3] - a5I) / 2), Math.floor(a5I + 2 * b1.gap +
a5M / 2)))) : (a5H = Math.floor(.2016 * aL.g1), a5I = Math.floor(.56 * a5H), a5E[2] = Math.floor(.5 * aL.gA), a5E[3] = Math.floor(.5 * aL.gF), a5E[1] = Math.floor(.45 * (aL.gF - a5E[3])), a5E[0] = Math.floor((aL.gA - a5E[2]) / 2),
a5M = Math.floor(.75 * a5I), a5N = Math.floor(aL.gA / 2), Math.floor(a5E[1] + a5E[3] + (aL.gF - a5E[3] - a5E[1]) / 2)), a5L = aZ.g5.g6(1, .65 * a5I / 4), a5b = pV = 1; a5b * pV < nF.length;) a5E[3] / (pV + 1) < a5E[2] / (a5b +
1) ? a5b++ : pV++;
zz = (a5E[2] - (a5b - 1) * b1.gap) / a5b, a5c = (a5E[3] - (pV - 1) * b1.gap) / pV, a56 = zz < a5c ? zz : a5c, a57 = Math.floor(a56), a5B = aZ.g5.g6(1, .5 * a56 / 5), a58[0] = a5b, a58[1] = pV, a59 = a5E[0] + Math.floor((a5E[2] - a58[0] *
a56 - (a58[0] - 1) * b1.gap) / 2), a5A = a5E[1] + Math.floor((a5E[3] - a58[1] * a56 - (a58[1] - 1) * b1.gap) / 2)
}, this.nq = function(a5d, em) {
var eJ, dd, gV, ef = nF.length;
for (a5K = a5d, eJ = 0; eJ < em.length; eJ++) gV = a5e(em[eJ].q6, em[eJ].a5f), nF.push({
a5g: em[eJ].id,
wS: em[eJ].wS,
wT: em[eJ].a5h,
a5i: em[eJ].q6,
a5j: em[eJ].a5f,
joined: em[eJ].a5k,
yh: em[eJ].a4e,
a5l: em[eJ].a5l,
gV: gV,
a5m: em[eJ].a5m,
a5n: em[eJ].a5n,
a5o: em[eJ].a5o
});
for (eJ = ef - 1; 0 <= eJ; eJ--) nF.shift();
if (-1 !== a5G)
for (dd = a5G, a5G = -1, eJ = nF.length - 1; 0 <= eJ; eJ--)
if (nF[eJ].a5g === dd) {
a5G = dd;
break
}(nF.length > a5P || nF.length < a5P) && (a5P = nF.length, this.resize()), this.a5p(), b4.d3 = !0
}, this.a5p = function() {
for (var eJ = nF.length - 1; 0 <= eJ; eJ--) null === nF[eJ].gV && setTimeout(a5q, 0)
}, this.fX = function(fO, fP) {
return 4 * ((fO - a5N) * (fO - a5N) + (fP - a5O) * (fP - a5O)) <= a5M * a5M ? (this.a4m(), w.u9(fO, fP, !1), !0) : function(fO, fP) {
var hg, hp, jj, jk;
if (0 !== nF.length) {
var eJ = 0;
for (jk = a5A, hp = 0; hp < a58[1]; hp++) {
for (jj = a59, hg = 0; hg < a58[0]; hg++) {
if (jj < fO && fO < jj + a56 && jk < fP && fP < jk + a56) return aO.a4V.a5t(nF[eJ].a5g), a5G = nF[eJ].a5g !== a5G ? nF[eJ].a5g : -1, b4.d3 = !0;
if (++eJ >= nF.length) return !1;
jj += a56 + b1.gap
}
jk += a56 + b1.gap
}
}
return !1
}(fO, fP)
}, this.gL = function() {
var hg, hp, fO, gY, zoom, eJ = 0,
fP = a5A;
if (gM.imageSmoothingEnabled = !0, gM.lineWidth = 3, gY = Math.floor(.5 * a5M), gM.fillStyle = aa.kf, gM.beginPath(), gM.arc(a5N, a5O, gY, 0, 2 * Math.PI), gM.fill(), gM.strokeStyle = aa.gN, gM.beginPath(), gM.arc(a5N, a5O, gY, 0, 2 *
Math.PI), gM.stroke(), gY = a0.get(0).height, zoom = .6 * a5M / gY, gM.setTransform(zoom, 0, 0, zoom, Math.floor(a5N - .56 * zoom * a0.get(0).width), Math.floor(a5O - .5 * zoom * gY)), gM.drawImage(a0.get(0), 0, 0), gM
.setTransform(1, 0, 0, 1, 0, 0),
function() {
gM.fillStyle = aa.kf, gM.fillRect(aL.gA - a5H - b1.gap, b1.gap, a5H, a5I), 0 <= a5G ? (gM.fillStyle = aa.l1, gM.fillRect(aL.gA - a5H - b1.gap, b1.gap, a5H, Math.floor(.25 * a5I))) : (gM.fillStyle = aa.lT, gM.fillRect(aL.gA - a5H -
b1.gap, b1.gap + Math.floor(.25 * a5I), a5H, Math.floor(.25 * a5I)));
gM.strokeStyle = aa.gN, gM.strokeRect(aL.gA - a5H - b1.gap, b1.gap, a5H, a5I), gM.fillStyle = aa.gN, gM.font = a5L, aZ.g5.textBaseline(gM, 1);
for (var fP, a3Y = Math.floor(.04 * a5H), xc = Math.floor(.08 * a5I), eJ = 3; 0 <= eJ; eJ--) fP = Math.floor(b1.gap + (eJ + 1) * (a5I + 2 * xc) / 5 - xc), aZ.g5.textAlign(gM, 0), gM.fillText(a5J[eJ], aL.gA - a5H - b1.gap + a3Y,
fP), aZ.g5.textAlign(gM, 2), gM.fillText(aZ.jr.js(a5K[eJ]), aL.gA - b1.gap - a3Y, fP)
}(), 0 !== nF.length)
for (hp = 0; hp < a58[1]; hp++) {
for (fO = a59, hg = 0; hg < a58[0]; hg++) {
if (! function(eJ, fO, fP) {
var zoom, hp, a5x, a5z, a60;
null === nF[eJ].gV ? (gM.fillStyle = aa.kf, gM.fillRect(fO, fP, a57, a57)) : (zoom = a57 / 128, gM.setTransform(zoom, 0, 0, zoom, fO, fP), gM.drawImage(nF[eJ].gV, 0, 0), gM.setTransform(1, 0, 0, 1, 0, 0));
a5G === nF[eJ].a5g ? (function(fO, fP) {
var qw = Math.floor(.2 * a57),
qx = Math.floor(.3 * qw);
gM.fillStyle = aa.l4, gM.fillRect(fO + a57 - qw, fP, qw, qw), gM.fillStyle = aa.jp, gM.fillRect(fO + a57 - qw, fP, 2, qw), gM.fillRect(fO + a57 - qw, fP + qw - 2, qw, 2), k.xZ(fO + a57 - qw + qx, fP + qx,
qw - 2 * qx), gM.setTransform(1, 0, 0, 1, 0, 0)
}(fO, fP), gM.lineWidth = 3, gM.fillStyle = aa.l4) : gM.fillStyle = aa.kd;
a5z = Math.floor(a56 / 4), gM.fillRect(fO, fP, a5z, a5z), a60 = Math.floor(fP + .8 * a56), gM.fillRect(fO, a60, a57, Math.floor(a56 / 5)),
function(eJ, fO, fP) {
var zoom;
nF[eJ].wT && (eJ = a0.get(4), zoom = .5 * a56 / eJ.width, gM.setTransform(zoom, 0, 0, zoom, Math.floor(fO + (a56 - zoom * eJ.width) / 2), Math.floor(fP + (a56 - zoom * eJ.height) / 2)), gM.globalAlpha = .6, gM
.drawImage(eJ, 0, 0), gM.globalAlpha = 1, gM.setTransform(1, 0, 0, 1, 0, 0))
}(eJ, fO, fP);
var a62 = new Array(nF[eJ].a5m);
if (nF[eJ].a5m) {
for (hp = a5x = 0; hp < nF[eJ].a5m; hp++) nF[eJ].a5n[hp] = aZ.qr.vM(nF[eJ].a5n[hp], a5B, .4 * a56), a62[hp] = ("" === nF[eJ].a5n[hp] ? "other: " : "[" + nF[eJ].a5n[hp] + "]: ") + nF[eJ].a5o[hp];
for (hp = 0; hp < nF[eJ].a5m; hp++) a5x = Math.max(a5x, o.measureText(a62[hp], a5B));
a5x += .05 * a56, hp = 5 === nF[eJ].a5m, a5z = hp ? fP + a5z : Math.max(fP + .8 * a56 - .11 * nF[eJ].a5m * a56, fP + a5z), a60 = hp ? a60 : Math.min(a5z + .11 * nF[eJ].a5m * a56 + .05 * a56, a60), gM.fillRect(fO,
a5z, a5x, a60 - a5z)
}
for (gM.font = a5B, aZ.g5.textBaseline(gM, 1), aZ.g5.textAlign(gM, 0), gM.fillStyle = aa.lO, gM.fillText(nF[eJ].joined.toString(), Math.floor(fO + .22 * a56), Math.floor(fP + .9 * a56)), gM.fillStyle = aa.gN, hp =
0; hp < nF[eJ].a5m; hp++) gM.fillText(a62[nF[eJ].a5m - hp - 1], Math.floor(fO + .03 * a56), Math.floor(fP + .77 * a56 - .11 * hp * a56));
aZ.g5.textAlign(gM, 2), gM.fillStyle = aa.lA, gM.fillText(nF[eJ].yh.toString(), Math.floor(fO + .81 * a56), Math.floor(fP + .9 * a56)), gM.strokeStyle = a5G === nF[eJ].a5g ? aa.l2 : aa.kl, gM.strokeRect(fO, fP, a57,
a57), a60 = Math.floor(.16 * a56), zoom = a60 / a5D, gM.setTransform(zoom, 0, 0, zoom, Math.floor(fO + .33 * a60), Math.floor(fP + .33 * a60)), a5C.length > nF[eJ].wS && gM.drawImage(a5C[nF[eJ].wS], 0, 0);
gM.setTransform(zoom, 0, 0, zoom, Math.floor(fO + .15 * a60), Math.floor(fP + a56 - 1.08 * a60)), gM.drawImage(a5C[11], 0, 0), gM.setTransform(zoom, 0, 0, zoom, Math.floor(fO + a56 - 1.05 * a60), Math.floor(fP + a56 -
1.15 * a60)), gM.drawImage(a5C[12], 0, 0), gM.setTransform(1, 0, 0, 1, 0, 0)
}(eJ, Math.floor(fO), Math.floor(fP)), ++eJ >= nF.length) return;
fO += a56 + b1.gap
}
fP += a56 + b1.gap
}
}
}
function bm() {
var a64 = [0, 0, 0, 0];
function a3a(fO, fP, gP, a6K) {
gM.fillStyle = aa.gN;
var qw = y0(2, Math.floor((a6K ? .5 : .35) * gP)),
zs = (qw -= qw % 2, y0(2, Math.floor(.1 * gP))),
gP = (zs -= zs % 2, Math.floor((gP - qw) / 2)),
jl = Math.floor(gP + (qw - zs) / 2);
gM.fillRect(fO + gP, fP + jl, qw, zs), a6K && gM.fillRect(fO + jl, fP + gP, zs, qw)
}
function a4d(fO, fP, gA, gF, a1v, fy, no, ha, rf) {
gM.fillStyle = a1v, gM.fillRect(fO, fP, gA, gF), 0 <= ha && function(fO, fP, gA, gF, ha) {
gM.fillStyle = "rgba(" + 22 * ha + "," + (110 - 22 * ha) + ",0,0.75)", gM.fillRect(fO, fP, (1 + ha) * gA / 6, gF)
}(fO, fP, gA, gF, ha), 0 < rf && function(fO, fP, gA, gF, rf) {
gM.fillStyle = "rgba(255,255,255,0.3)", gM.fillRect(fO, fP, rf * gA / b.ej, gF)
}(fO, fP, gA, gF, rf), gM.strokeStyle = aa.gN, gM.strokeRect(fO, fP, gA, gF), 0 !== fy && (gM.fillStyle = aa.gN, gM.font = aZ.g5.g6(1, fy * gF), gM.fillText(no, Math.floor(fO + gA / 2), Math.floor(fP + .52 * gF)))
}
this.iw = [{
eo: 0,
rf: 512
}], this.ct = function() {
aI.rD = !1, y.setState(2), this.resize(), b4.d3 = !0
}, this.tw = function() {}, this.resize = function() {
a64[2] = Math.floor((b8.cy.g0() ? .49 : .4) * aL.g1), a64[1] = Math.floor((aL.gF - a64[2] / 6 - this.iw.length * (b1.gap + a64[2] / 10)) / 2), a64[0] = Math.floor((aL.gA - a64[2]) / 2), aI.rD && aI.resize()
}, this.a65 = function(wS) {
var eJ;
if (6 < wS) this.iw = [{
eo: 0,
rf: 512
}];
else {
for (this.iw = [], eJ = 0; eJ < wS + 2; eJ++) this.iw.push({
eo: 0,
rf: 0
});
this.a66()
}
aO.j4.tp = 0
}, this.a67 = function(a68, a69) {
for (var ef = a68.length, eJ = 0; eJ < ef; eJ++) this.iw[eJ].eo = a68[eJ], this.iw[eJ].rf = a69[eJ]
}, this.a6A = function(vK) {
var eJ, ef;
if (1 === vK.r0.length)
for (ef = this.iw.length, vK.a68 = new Array(ef), vK.a69 = new Array(ef), eJ = 0; eJ < ef; eJ++) vK.a68[eJ] = this.iw[eJ].eo, vK.a69[eJ] = this.iw[eJ].rf
}, this.a4n = function() {
b4.d3 = !0, aI.rD ? aI.rD = !1 : (this.tw(), y.setState(0), at.d5(5, 5))
}, this.wW = function() {
var eJ, rf;
if (aV.iq) return aV.ir.a6B;
for (rf = 0, eJ = this.iw.length - 1; 0 <= eJ; eJ--) rf += this.iw[eJ].rf;
return rf
}, this.u9 = function(fO, fP) {
return !(!aI.rD || !aI.u9(fO, fP)) || -1 !== this.ud(fO, fP)
}, this.a6C = function() {
var hg;
aO.j4.tp = 0, y.a4j(), aV.iq ? aV.a6D() : (hg = (hg = this.iw.length - 2) < 0 ? 7 : hg, b.wP(Math.floor(16384 * Math.random()), 0, [{
name: bA.dK.data[124].value,
a6E: aZ.color.vJ(bA.j4.o1()),
a6F: 0
}], hg, !1, !1))
}, this.fX = function(fO, fP) {
if (aI.rD && !aV.iq) return aI.fX(fO, fP);
var eJ, hg, max, qw, fP = this.ud(fO, fP);
if (-1 === fP) return !1;
if (0 === fP) this.a4n();
else if (1 === fP) aV.iq ? (aV.uX(), b4.d3 = !0) : aI.show();
else if (100 === fP) aU.a6G();
else if (2 === fP) this.tw(), this.a6C();
else {
if (aV.iq) return !1;
if (27 === fP) this.iw.length < 8 && (this.iw.push({
eo: 0,
rf: b.ej
}), this.a66(), this.resize(), b4.d3 = !0);
else if (eJ = Math.floor((fP - 3) / 3), fP % 3 == 0) 1 < this.iw.length && (this.iw.splice(eJ, 1), this.resize(), b4.d3 = !0);
else if (qw = (a64[2] - a64[2] / 10 - 2 * b1.gap) / 2, fP % 3 == 1) 0 === eJ && 1 === this.iw[eJ].rf || (fO < a64[0] + a64[2] - 1.5 * qw - b1.gap ? this.iw[eJ].eo-- : this.iw[eJ].eo++, this.iw[eJ].eo < 0 ? this.iw[eJ].eo = 5 : 5 <
this.iw[eJ].eo && (this.iw[eJ].eo = 0), b4.d3 = !0);
else {
for (b4.d3 = !0, fP = (fO - (a64[0] + a64[2] - qw)) / qw - .5, fP *= fP < 0 ? -fP : fP, fP = 0 === (fP = Math.floor(fP * b.ej)) ? 1 : fP, max = b.ej, hg = this.iw.length - 1; 0 <= hg; hg--) eJ !== hg && (max -= this.iw[hg].rf);
if (fP < 0) {
if (1 === this.iw[eJ].rf) return this.iw[eJ].rf = max, !0
} else if (this.iw[eJ].rf === max) return this.iw[eJ].rf = 1, !0;
this.iw[eJ].rf += fP, this.iw[eJ].rf < 1 ? this.iw[eJ].rf = 1 : this.iw[eJ].rf > max && (this.iw[eJ].rf = max)
}
}
return !0
}, this.a66 = function() {
for (var rf = Math.floor(b.ej / this.iw.length), a6H = b.ej % this.iw.length, eJ = this.iw.length - 1; 0 <= eJ; eJ--) this.iw[eJ].rf = rf;
this.iw[0].rf += a6H
}, this.ud = function(fO, fP) {
var qw = (a64[2] - 3 * b1.gap) / 4,
zs = a64[2] / 6;
if (fO < a64[0] || fP < a64[1] || a64[0] + a64[2] <= fO) return -1;
if (fP < a64[1] + zs) return fO < a64[0] + qw ? 0 : fO < a64[0] + qw + b1.gap ? -1 : fO < a64[0] + 2 * qw + b1.gap ? 100 : fO < a64[0] + 2 * (qw + b1.gap) ? -1 : fO < a64[0] + 3 * qw + 2 * b1.gap ? 1 : fO < a64[0] + 3 * (qw + b1.gap) ? -
1 : 2;
for (var jk, a6I = a64[2] / 10, qw = (a64[2] - a6I - 2 * b1.gap) / 2, eJ = 0; eJ < this.iw.length; eJ++) {
if (fP < (jk = a64[1] + zs + b1.gap + eJ * (a6I + b1.gap))) return -1;
if (!(jk + a6I < fP)) return fO < a64[0] + a6I ? 3 + 3 * eJ : fO < a64[0] + a6I + b1.gap ? -1 : fO < a64[0] + a64[2] - qw - b1.gap ? 4 + 3 * eJ : fO < a64[0] + a64[2] - qw ? -1 : 5 + 3 * eJ
}
return !(this.iw.length < 8) || fP < (jk = a64[1] + zs + b1.gap + this.iw.length * (a6I + b1.gap)) || jk + a6I < fP || a64[0] + a6I < fO ? -1 : 27
}, this.gL = function() {
gM.lineWidth = b1.ri, aZ.g5.textAlign(gM, 1), aZ.g5.textBaseline(gM, 1);
var qw = (a64[2] - 3 * b1.gap) / 4,
zs = a64[2] / 6;
if (a4d(a64[0], a64[1], qw, zs, "rgba(128,0,0,0.75)", .34, "Back", -1, -1), a4d(a64[0] + qw + b1.gap, a64[1], qw, zs, "rgba(128,0,128,0.75)", .31, "Custom", -1, -1), a4d(a64[0] + 2 * (qw + b1.gap), a64[1], qw, zs, "rgba(" + (aV.iq ? 128 :
0) + ",128,128,0.75)", .34, aV.iq ? "Reset" : "Maps", -1, -1), a4d(a64[0] + a64[2] - qw, a64[1], qw, zs, "rgba(0,128,0,0.75)", .34, "Start", -1, -1), !aV.iq) {
for (var jk, a6I = a64[2] / 10, qw = (a64[2] - a6I - 2 * b1.gap) / 2, eJ = 0; eJ < this.iw.length; eJ++) jk = a64[1] + zs + b1.gap + eJ * (a6I + b1.gap), a4d(a64[0], jk, a6I, a6I, 1 < this.iw.length ? "rgba(128,0,0,0.75)" :
"rgba(90,90,90,0.75)", 0, null, -1), 1 < this.iw.length && a3a(a64[0], jk, a6I, !1), a4d(a64[0] + a6I + b1.gap, jk, qw, a6I, aa.kh, .4, this.a6J(eJ), this.iw[eJ].eo, -1), a4d(a64[0] + a64[2] - qw, jk, qw, a6I, aa.kh, .4, this
.yG(eJ), -1, this.iw[eJ].rf);
this.iw.length < 8 && (jk = a64[1] + zs + b1.gap + this.iw.length * (a6I + b1.gap), a4d(a64[0], jk, a6I, a6I, "rgba(0,128,20,0.75)", 0, null, -1, -1), a3a(a64[0], jk, a6I, !0)), aI.rD && aI.gL()
}
}, this.a6J = function(eJ) {
return 0 === eJ && 1 === this.iw[eJ].rf ? "You" : c.ik[this.iw[eJ].eo]
}, this.yG = function(eJ) {
return 1 === this.iw[eJ].rf ? "1 Player" : this.iw[eJ].rf + " Players"
}
}
function a6N() {
this.ef = 0, this.gA = 0, this.xb = null, this.ct = function() {
this.xb = [], this.xb.push({
fO: 0,
fP: 0,
wv: b8.cy.g0(),
a6O: null
}), this.xb.push({
fO: 0,
fP: 0,
wv: !1,
a6O: new a42
}), this.xb[1].a6O.a48(), this.ef = this.xb.length, this.gA = 0
}, this.a0u = function() {
this.gA = Math.floor((b8.cy.g0() ? .063 : .04) * aL.g1), this.gA += 4 - this.gA % 4, this.xb[0].fO = b1.gap, this.xb[0].fP = aL.gF - this.gA - b1.gap;
for (var eJ = 1; eJ < this.ef; eJ++) this.xb[eJ].fO = this.xb[eJ - 1].fO + Math.floor(b8.cy.g0() ? 1.5 * b1.gap : 3.7 * b1.gap) + this.gA, this.xb[eJ].fP = this.xb[0].fP
}, this.ud = function(gD, gE) {
if (a0.g8())
for (var eJ = this.ef - 1; 0 <= eJ; eJ--)
if (gD >= this.xb[eJ].fO && gE >= this.xb[eJ].fP && gD < this.xb[eJ].fO + this.gA && gE < this.xb[eJ].fP + this.gA) return eJ;
return -1
}, this.a6P = function() {
for (var eJ = 1; 1 <= eJ; eJ--)
if (this.xb[eJ].a6O.rD) return !0;
return !1
}, this.resize = function() {
for (var eJ = 1; 1 <= eJ; eJ--) this.xb[eJ].a6O.resize()
}, this.ui = function() {
return !!this.xb[1].a6O.rD && (this.xb[1].a6O.fX(-5e3, -5e3), !0)
}, this.fX = function(gD, gE, a3i) {
if (a3i && this.xb[1].a6O.rD) return this.xb[1].a6O.fX(gD, gE), !0;
gD = this.ud(gD, gE);
if (a3i) {
if (0 === gD) return this.xb[gD].wv = !this.xb[gD].wv, bA.dK.dL(2, this.xb[gD].wv ? 1 : 0), aL.d8(0), !0;
if (1 <= gD && gD < 2) return this.xb[gD].a6O.ct(), b4.d3 = !0
}
return !1
}, this.u9 = function(gD, gE) {
return !!this.xb[1].a6O.rD && (this.xb[1].a6O.u9(gD), !0)
}, this.a4D = function() {
for (var eJ = 1; 1 <= eJ; eJ--)
if (this.xb[eJ].a6O.rD) return this.xb[eJ].a6O.a4D(), !0;
return !1
}, this.gL = function() {
if (a0.g8()) {
gM.imageSmoothingEnabled = !0;
for (var eJ = this.ef - 1; 0 <= eJ; eJ--) gM.fillStyle = this.xb[eJ].wv ? aa.l3 : aa.kh, gM.fillRect(this.xb[eJ].fO, this.xb[eJ].fP, this.gA, this.gA), 0 === eJ ? this.a6Q(eJ, a0.get(15)) : 1 === eJ && this.a6R(), gM.setTransform(1,
0, 0, 1, 0, 0), gM.lineWidth = b1.ri, gM.strokeStyle = aa.gN, gM.strokeRect(this.xb[eJ].fO, this.xb[eJ].fP, this.gA, this.gA);
gM.imageSmoothingEnabled = !1
}
}, this.a6Q = function(eJ, vE) {
var gap = .08 * this.gA,
zoom = (this.gA - 2 * gap) / vE.width;
gM.setTransform(zoom, 0, 0, zoom, this.xb[eJ].fO + gap, this.xb[eJ].fP + (this.gA - zoom * vE.height) / 2), gM.drawImage(vE, 0, 0)
}, this.a6R = function() {
gM.setTransform(1, 0, 0, 1, this.xb[1].fO, this.xb[1].fP);
for (var eo = this.gA / 4, fO = 3; 0 <= fO; fO--)
for (var fP = 3; 0 <= fP; fP--) {
var gY = Math.floor(367 * (fO + 1) * (fP + 1) % 256),
vK = Math.floor(687 * (fO + 1) * (fP + 1) % 256),
hp = Math.floor(651 * (fO + 1) * (fP + 1) % 256);
gM.fillStyle = "rgb(" + gY + "," + vK + "," + hp + ")", gM.fillRect(fO * eo, fP * eo, eo, eo)
}
}, this.a6S = function() {
for (var eJ = 1; 1 <= eJ; eJ--)
if (this.xb[eJ].a6O.rD) return void this.xb[eJ].a6O.gL()
}
}
function bn() {
var a6T, gV, fz, a6U;
function a6Z(g4, name, a6a, g3) {
fz[g4] = name, gV[g4] = new Image, gV[g4].onload = function() {
! function(g4, a6a) {
let vq = null,
vp;
7 === a6a ? vp = aZ.uw.vs : 8 === a6a ? (vp = aZ.uw.vv, vq = .1) : 3 === a6a ? (vp = aZ.uw.vt, vq = .06) : 5 === a6a ? vp = aZ.uw.vw : 6 === a6a ? vp = aZ.uw.vr : 4 === a6a && (vp = aZ.uw.vx);
gV[g4] = aZ.uw.vo(gV[g4], vp, vq)
}(g4, a6a), a6c()
}, gV[g4].onerror = function(dI) {
console.error("Error loading image at index", g4, "Error:", dI), a6c()
}, gV[g4].src = "data:image/png;base64," + g3
}
function a6c() {
a6T--, a6X()
}
function a6X() {
0 === a6T && (a6T = -1, ay.g7(), j.wr(), aw.a3k([gV[8], gV[16], gV[7], gV[9], gV[10]], [2 !== b8.id, 1 !== b8.id, !0, !0, !0]), a9.pm.ct(), aJ.cu(), b4.d3 = !0, gV[7] = a6U, gV[8] = a6U, gV[9] = a6U, gV[10] = a6U)
}
this.ct = function() {
if (void 0 === gV) {
a6T = 23, gV = new Array(a6T), fz = new Array(a6T), (a6U = document.createElement("canvas")).width = 1, a6U.height = 1;
for (var eJ = a6T - 1; 0 <= eJ; eJ--) gV[eJ] = a6U;
a6Z(0, "exit", 6,
"iVBORw0KGgoAAAANSUhEUgAAAFYAAABGBAMAAACkrn5fAAAAHlBMVEUAAAAiJCI4OjdcXltoameIioejpqPExsPY29j///9xarZIAAAAyUlEQVRIx+3WQQqCQBTG8TdOB5DUI+S6nRcoPIFhu1bBHGGO4Any3TYxAkWTv1DSYr71D4b5mOE9kWmszkeC/ZptT6Ocl+xj5qgtbVR1iZn9VE2wU2uO2Jryhm2h2OaKbdZgu/NKrXVK7f6q1JpaqTWFYpvrUtqhPTTYpst0aBOv2Drltlxh392iu0U1t5I4biX13PZvF7+zvOFWihXWlNy+aqZ/M3LcivXcds1xK9kKK3GYAVtYe+8CZ/c/7Br9blSNcgn75O/tE26TasUvH0ImAAAAAElFTkSuQmCC"
), a6Z(1, "victory", 6,
"iVBORw0KGgoAAAANSUhEUgAAADYAAAAKAQMAAADFMz9IAAAABlBMVEUAAAD///+l2Z/dAAAASUlEQVQI12M4lvj+++efLQzHkoH0jxaGI+yMbcIcZxiOpEHoMyD6xx+GHBB9oIIhA0Q/MGCoSAfSBQYMBskP2z9bAOlEIC1hAADJYSFMvxXXTAAAAABJRU5ErkJggg=="), a6Z(2, "defeat", 6,
"iVBORw0KGgoAAAANSUhEUgAAADAAAAAKAQMAAADILU8PAAAABlBMVEUAAAD///+l2Z/dAAAAOklEQVQI12P48efPH5v/DEDyT81/hjMHDhxIkWA4AqV+/PgBpf5JgOWA1B0gdUyC4cefA3+A1AcwBQAlGyu1reW1ZgAAAABJRU5ErkJggg=="), a6Z(3, "orders", 6,
"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
), a6Z(4, "crown", 4,
"iVBORw0KGgoAAAANSUhEUgAAANIAAADSCAIAAACw+wkVAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAF0WlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDUgNzkuMTYzNDk5LCAyMDE4LzA4LzEzLTE2OjQwOjIyICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDIyLTEyLTIzVDE0OjA0OjQ3KzAzOjMwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDIyLTEyLTIzVDE0OjA0OjQ3KzAzOjMwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAyMi0xMi0yM1QxNDowNDo0NyswMzozMCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo1ZmFkNDE3NC03OWNiLTUwNDgtYWIyMi04NThmMGExODUzZTEiIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDo4ZDQ1NTIyYS02MDRlLWYxNDUtYWM3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
), a6Z(5, "arena", 6, "iVBORw0KGgoAAAANSUhEUgAAACsAAAAKAQMAAAAXYzUQAAAABlBMVEUAAAD///+l2Z/dAAAARklEQVQI12OwqbdXOHyAoabe3uD4AYaURAOLYw4gygZE1dvpAKl/FXZq/g8Y/tUYGAOpY3kGxj4JDMfS7Q3PAKlke4MzCQCHpxoxsfTs8gAAAABJRU5ErkJggg=="),
a6Z(6, "territorial.io", 6,
"iVBORw0KGgoAAAANSUhEUgAAGe4AAAMACAYAAAD286EDAAAABGdBTUEAALGPC/xhBQAACklpQ0NQc1JHQiBJRUM2MTk2Ni0yLjEAAEiJnVN3WJP3Fj7f92UPVkLY8LGXbIEAIiOsCMgQWaIQkgBhhBASQMWFiApWFBURnEhVxILVCkidiOKgKLhnQYqIWotVXDjuH9yntX167+3t+9f7vOec5/zOec8PgBESJpHmomoAOVKFPDrYH49PSMTJvYACFUjgBCAQ5svCZwXFAADwA3l4fnSwP/wBr28AAgBw1S4kEsfh/4O6UCZXACCRAOAiEucLAZBSAMguVMgUAMgYALBTs2QKAJQAAGx5fEIiAKoNAOz0ST4FANipk9wXANiiHKkIAI0BAJkoRyQCQLsAYFWBUiwCwMIAoKxAIi4EwK4BgFm2MkcCgL0FAHaOWJAPQGAAgJlCLMwAIDgCAEMeE80DIEwDoDDSv+CpX3CFuEgBAMDLlc2XS9IzFLiV0Bp38vDg4iHiwmyxQmEXKRBmCeQinJebIxNI5wNMzgwAABr50cH+OD+Q5+bk4eZm52zv9MWi/mvwbyI+IfHf/ryMAgQAEE7P79pf5eXWA3DHAbB1v2upWwDaVgBo3/ldM9sJoFoK0Hr5i3k4/EAenqFQyDwdHAoLC+0lYqG9MOOLPv8z4W/gi372/EAe/tt68ABxmkCZrcCjg/1xYW52rlKO58sEQjFu9+cj/seFf/2OKdHiNLFcLBWK8ViJuFAiTcd5uVKRRCHJleIS6X8y8R+W/QmTdw0ArIZPwE62B7XLbMB+7gECiw5Y0nYAQH7zLYwaC5EAEGc0Mnn3AACTv/mPQCsBAM2XpOMAALzoGFyolBdMxggAAESggSqwQQcMwRSswA6cwR28wBcCYQZEQAwkwDwQQgbkgBwKoRiWQRlUwDrYBLWwAxqgEZrhELTBMTgN5+ASXIHrcBcGYBiewhi8hgkEQcgIE2EhOogRYo7YIs4IF5mOBCJhSDSSgKQg6YgUUSLFyHKkAqlCapFdSCPyLXIUOY1cQPqQ28ggMor8irxHMZSBslED1AJ1QLmoHxqKxqBz0XQ0D12AlqJr0Rq0Hj2AtqKn0UvodXQAfYqOY4DRMQ5mjNlhXIyHRWCJWBomxxZj5Vg1Vo81Yx1YN3YVG8CeYe8IJAKLgBPsCF6EEMJsgpCQR1hMWEOoJewjtBK6CFcJg4Qxwicik6hPtCV6EvnEeGI6sZBYRqwm7iEeIZ4lXicOE1+TSCQOyZLkTgohJZAySQtJa0jbSC2kU6Q+0hBpnEwm65Btyd7kCLKArCCXkbeQD5BPkvvJw+S3FDrFiOJMCaIkUqSUEko1ZT/lBKWfMkKZoKpRzame1AiqiDqfWkltoHZQL1OHqRM0dZolzZsWQ8ukLaPV0JppZ2n3aC/pdLoJ3YMeRZfQl9Jr6Afp5+mD9HcMDYYNg8dIYigZaxl7GacYtxkvmUymBdOXmchUMNcyG5lnmA+Yb1VYKvYqfBWRyhKVOpVWlX6V56pUVXNVP9V5qgtUq1UPq15WfaZGVbNQ46kJ1Bar1akdVbupNq7OUndSj1DPUV+jvl/9gvpjDbKGhUaghkijVGO3xhmNIRbGMmXxWELWclYD6yxrmE1iW7L57Ex2Bfsbdi97TFNDc6pmrGaRZp3mcc0BDsax4PA52ZxKziHODc57LQMtPy2x1mqtZq1+rTfaetq+2mLtcu0W7eva73VwnUCdLJ31Om0693UJuja6UbqFutt1z+o+02PreekJ9cr1Dund0Uf1bfSj9Rfq79bv0R83MDQINpAZbDE4Y/DMkGPoa5hpuNHwhOGoEctoupHEaKPRSaMnuCbuh2fjNXgXPmasbxxirDTeZdxrPGFiaTLbpMSkxeS+Kc2Ua5pmutG003TMzMgs3KzYrMnsjjnVnGueYb7ZvNv8jYWlRZzFSos2i8eW2pZ8ywWWTZb3rJhWPlZ5VvVW16xJ1lzrLOtt1ldsUBtXmwybOpvLtqitm63Edptt3xTiFI8p0in1U27aMez87ArsmuwG7Tn2YfYl9m32zx3MHBId1jt0O3xydHXMdmxwvOuk4TTDqcSpw+lXZxtnoXOd8zUXpkuQyxKXdpcXU22niqdun3rLleUa7rrStdP1o5u7m9yt2W3U3cw9xX2r+00umxvJXcM970H08PdY4nHM452nm6fC85DnL152Xlle+70eT7OcJp7WMG3I28Rb4L3Le2A6Pj1l+s7pAz7GPgKfep+Hvqa+It89viN+1n6Zfgf8nvs7+sv9j/i/4XnyFvFOBWABwQHlAb2BGoGzA2sDHwSZBKUHNQWNBbsGLww+FUIMCQ1ZH3KTb8AX8hv5YzPcZyya0RXKCJ0VWhv6MMwmTB7WEY6GzwjfEH5vpvlM6cy2CIjgR2yIuB9pGZkX+X0UKSoyqi7qUbRTdHF09yzWrORZ+2e9jvGPqYy5O9tqtnJ2Z6xqbFJsY+ybuIC4qriBeIf4RfGXEnQTJAntieTE2MQ9ieNzAudsmjOc5JpUlnRjruXcorkX5unOy553PFk1WZB8OIWYEpeyP+WDIEJQLxhP5aduTR0T8oSbhU9FvqKNolGxt7hKPJLmnVaV9jjdO31D+miGT0Z1xjMJT1IreZEZkrkj801WRNberM/ZcdktOZSclJyjUg1plrQr1zC3KLdPZisrkw3keeZtyhuTh8r35CP5c/PbFWyFTNGjtFKuUA4WTC+oK3hbGFt4uEi9SFrUM99m/ur5IwuCFny9kLBQuLCz2Lh4WfHgIr9FuxYji1MXdy4xXVK6ZHhp8NJ9y2jLspb9UOJYUlXyannc8o5Sg9KlpUMrglc0lamUycturvRauWMVYZVkVe9ql9VbVn8qF5VfrHCsqK74sEa45uJXTl/VfPV5bdra3kq3yu3rSOuk626s91m/r0q9akHV0IbwDa0b8Y3lG19tSt50oXpq9Y7NtM3KzQM1YTXtW8y2rNvyoTaj9nqdf13LVv2tq7e+2Sba1r/dd3vzDoMdFTve75TsvLUreFdrvUV99W7S7oLdjxpiG7q/5n7duEd3T8Wej3ulewf2Re/ranRvbNyvv7+yCW1SNo0eSDpw5ZuAb9qb7Zp3tXBaKg7CQeXBJ9+mfHvjUOihzsPcw83fmX+39QjrSHkr0jq/dawto22gPaG97+iMo50dXh1Hvrf/fu8x42N1xzWPV56gnSg98fnkgpPjp2Snnp1OPz3Umdx590z8mWtdUV29Z0PPnj8XdO5Mt1/3yfPe549d8Lxw9CL3Ytslt0utPa49R35w/eFIr1tv62X3y+1XPK509E3rO9Hv03/6asDVc9f41y5dn3m978bsG7duJt0cuCW69fh29u0XdwruTNxdeo94r/y+2v3qB/oP6n+0/rFlwG3g+GDAYM/DWQ/vDgmHnv6U/9OH4dJHzEfVI0YjjY+dHx8bDRq98mTOk+GnsqcTz8p+Vv9563Or59/94vtLz1j82PAL+YvPv655qfNy76uprzrHI8cfvM55PfGm/K3O233vuO+638e9H5ko/ED+UPPR+mPHp9BP9z7nfP78L/eE8/stRzjPAAAAIGNIUk0AAHomAACAhAAA+gAAAIDoAAB1MAAA6mAAADqYAAAXcJy6UTwAAAAJcEhZcwAALiMAAC4jAXilP3YAAR6vSURBVHic7N1/3Nbz/f//x3me1XmqJM6ypNGSSoW0LHqXt99qZWIzovIrkzWbUjrrLCEpP5f1A40RxjDDQjVhWCsLsWGitbSMt19LnxA5z77/7LvLZqrzPOvseRzn63r9r+NynudxO/44jo7zvLyO570gIjYGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGREYeoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANieDPcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkCmGewAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADIFMM9AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGSK4R4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMsVwDwAAAAAAAAAAAAAAA
), a6Z(7, "youtube", 7, "iVBORw0KGgoAAAANSUhEUgAAADAAAAAKAQMAAADILU8PAAAABlBMVEUAAAD///+l2Z/dAAAAOklEQVQI12P48efPH5v/DEDyT81/hjMHDhxIkWA4AqV+/PgBpf5JgOWA1B0gdUyC4cefA3+A1AcwBQAlGyu1reW1ZgAAAABJRU5ErkJggg=="), a6Z(8,
"googleplay", 3,
"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"
), a6Z(9, "discord", 7, "iVBORw0KGgoAAAANSUhEUgAAADAAAAAKAQMAAADILU8PAAAABlBMVEUAAAD///+l2Z/dAAAAOklEQVQI12P48efPH5v/DEDyT81/hjMHDhxIkWA4AqV+/PgBpf5JgOWA1B0gdUyC4cefA3+A1AcwBQAlGyu1reW1ZgAAAABJRU5ErkJggg=="), a6Z(10, "insta",
3, "iVBORw0KGgoAAAANSUhEUgAAADAAAAAKAQMAAADILU8PAAAABlBMVEUAAAD///+l2Z/dAAAAOklEQVQI12P48efPH5v/DEDyT81/hjMHDhxIkWA4AqV+/PgBpf5JgOWA1B0gdUyC4cefA3+A1AcwBQAlGyu1reW1ZgAAAABJRU5ErkJggg=="), a6Z(11, "emojis", 4,
"iVBORw0KGgoAAAANSUhEUgAAADAAAAAKAQMAAADILU8PAAAABlBMVEUAAAD///+l2Z/dAAAAOklEQVQI12P48efPH5v/DEDyT81/hjMHDhxIkWA4AqV+/PgBpf5JgOWA1B0gdUyC4cefA3+A1AcwBQAlGyu1reW1ZgAAAABJRU5ErkJggg=="), a6Z(12, "flags", 3,
"iVBORw0KGgoAAAANSUhEUgAAADAAAAAKAQMAAADILU8PAAAABlBMVEUAAAD///+l2Z/dAAAAOklEQVQI12P48efPH5v/DEDyT81/hjMHDhxIkWA4AqV+/PgBpf5JgOWA1B0gdUyC4cefA3+A1AcwBQAlGyu1reW1ZgAAAABJRU5ErkJggg=="), a6Z(13, "bestTeam", 5,
"iVBORw0KGgoAAAANSUhEUgAAAIoAAACvCAMAAAAVOLbTAAAAtFBMVEUAAAABAxsXAwACCQwXBTIoBg84BAAJEhJOAAJGAR5lAAASHBx9AACaAACwAAEcKyobMgAVMkUnOjgNWAA5TEq8LSUrVlgocYAWgge4TEJOa2gFjSBnamdCdXO9W1QDl0V1dsa6bmZoi4RTkpE3nZpUogB3icmciYEMuIkAxLNiqcxuvABvsrRXvb+QsqOwsK062M0A/wC9wb6D19JV/1bX2teS/5Hj5+TD9sy7/7vl/u3///93TxdPAAASr0lEQVR42u2cC3uaShOAEcpFwKBo0VppTsXUpkXpwRAa8///1zeX3WXxnjRpzvM9mdP2RLOXl5nZ2Qu7a/x7RO535O7F5FiNxv5Xd/e/t9vHV5Tt74f7uwtQgOPxL8j29/0ZlHvJUdfVK0mtaB5OoNz/ZoxyOXONV5N4VpTMs70/hvJAvy9nkfHqEs1Kquzh7hDK3W8GMf6SMMz2bh/lDr2kXhp/UWZ1y0iGTlKNMIUF/xkWyGtUb1HBovS41FkMjaQMmITTW4T0wiCqaBa30FgECvpJEcgMLko70wvpA8S1qHDxbdH4i6HaDuvEcDWxLsO5MAlxaNKw/G5QMLBV3ITdQEgL52VIRImqBq4Q/eVeoYB5avJYIwgiIYrmHAv7lnEqjQYS6DVwiKmEiRDlHri4FUOyOB6NYhCN5hSLqOUkrgJhDiyd6oiYZYahTqCgeVwmwUQsOs7RiqhFSEueIVEcI1WFYClYLQYrhWKsG0GyqZCEcYiGYA77iCVtL4D3IwCBSA4oNJE1IAtpIK5JLQZ5SsUeCyjT0TSdg6Qp4xANV7RXg8GVSMtTGms/HadhdUChaTrPoIJpPEW1uFIthLIVngIokDawgiTNUBoarGmXRdiGK2Fgdx/YUCCsjpSLzpLAckEvMaOMqBEZaJ86ZhRQynRkeo4ZJdmiRUNP3a6C7R9FsfQtUgx8bbXTcZIEMYhjkSWx4Xgm1iW8xa3QQgaGt8qQrgIZXN/3iSZdLIgmZRioSFVCzYEcII5HjeUxTdBEL7QOJ0kEx0JwQBVGOp/qjvsbUMBVChFToNg0SxzfZ5pA0QCMxiJdNaLnBd+aJnNOEqn4KB0W/S8RdlmkSWASBxQfZxrKDJ3FQFeZGdJXoNzU9Fk8QcMw5GMuq0SFB6pmnkYBuDqyiAjAKS1MySQNhycKt9OMy6SnC8BZ7ggllihxMs2yyCMOD7N5jm3E4MaKRbkqe8gUq4ltJ8jgIacqIjUpmSRNEstGfXiiXB8ypMkokg4IznJv/AteaxhNYwbvtmUWj6EcI6GMVAOVr+IPNExK7ySoO+U1TUomMWxWhyoV0zeN2TCgI3ow7nZQ0mxheZjHkSxQgoX1JNxgqUUwB4JkCRnUToSLSxdWKUFtgSdNzsX6vintI9xPolSyWaCFACV2UBWOo1B8J844a0StBq0whTAFteepyWnMJM8zjF1pzMGLUyIJqk2RYLG+Fy2wPLKjbEJ7KGih1FYowsl8cyxYOJJMoR+P0yzPV5kln9hMc4RJLAN+PUJoNA+QjGU78BVKY59m1HIABdQSSE0qj/dc9EtqryL6eJ6RpKtFR9F65mIFII5nTSl4RdI8kTKPI+1uyAc7iiLa0CJxhIMZk2HftDHQeANpIkKZJ17oe3YUKRJIEkRgrNCL5lOVEM3jcJTqDyd94X9evBDt5wiKpdQCoYVRzJ8/f97cTPrCL5mFUFKbH9TXhD+B8mU6ZZ7+5OYGiuqLBkRlieBwBgUsRCy+M/mJcoMs1hjj44jiGjQdVxGEJOqjyciYDpWCFrRFMaxsX7fPERRLWoiUSpmGpJafE6cxEQWVeZZ4iqMH0tBEHIMEyQByOsMbUsqQHtAX9hFx8BSKsJB4xBsgARk6ZCLyAqxknqWO4gi7XV/ReIlQHpqRzOMNqQiwTxP0s7ZS9lDQRDtBCS3ELOCmnbGqBUKK6QuFdD+ghAIG6qFEI2Ge0O/fMMrEESjubvs5jEJqAfWLwAXlMAq4SyhMhF3PfJ7HqIlez/8gxOtdIQ31RpRGmEeS3PRFkaRdaj/NmHnPQKJTB5Q8hZBL1reHsiTVikaj2Xy+Tv3e1VVof/jQwelHpwOKubrqhcl6TijYPaF5bPEsE3w4KNGL0kyMD9xmILyDIsZc7AkQRwcemsD3+jfs/1CuQR3wdIYoc/+q51kdNZwCGqd35cMv5rMZOQqaWbbBocOFBeNVnioUyziKYkiUIEpXq/HAI1c0hwQzwdiELLPZbFms15Fv7k4CIB6t1wWgzJAEI+WQSCbkWOhtq9UichutGOe1EkDbXWxWY5ufBVluONDl0OMBSVHMg4OTnjn8armERDk1Q1SpVIk9Xm1WwGeeNZDuK4EfQthsYPqTCbdvK1uvqbaRtpoFnbm21Eac6zWUwW0QPR6KcNSzIUoSn3Jbiiyicw7UYyzYShzU4bsYLFAU+rJhutpsVqn2BSptvYZeKhTdAeYfZGDxjkcGz1SEM861oIyfCCyDxhUuE3JI89J1oS8cxosNySJpvgtmRTl3mjyhP+By/FDGFRlsj6KovjmQ3QsX0hEdDcYxZ67ZJkCVrEEAJtMB55EIeUK7/EAixO3F/UOBXw7kZOdPqsWCbBFboQEbbdushexYCRr2FcH43QSaDWnW30VxL0OR3iHsnHSBBGNa2zYIAS2mYBjdSiaGwF7oJQsA6creG/vYp6LwwNxjy2DLzgcQ0xyt3aQbIgEQEmElrS054VUonoJAYARHo4TgGSgeDbyIppvkm8xpYpolbIMgX0GWrBm0khZvnPEmH3cFR38y/BMUjE99CFDYAY817ScbVokAacNo6QZjG/JCUOljlJw8D8WXIyegmfTD3lWo2Wbxa7PZglRVBShfQASMcBnNSmDVEMaTVNCeVo63IOsACo2/JuCC3Y7sp9LVr9VqRSy4BP71E8oXZhEuo6zUsQFFjAURxYdSn46C46+fPP7SUKyEQH6QlPh6p/7ySYeRVuKG3fnAKGrw9FwUHsPpKMnilyL5hvID8n/6+PEjsnxRVlLh90VQfInSMtAKSRqQb/98g+lu8fFjA8OKAZaVQLlSBrpxeL70TBR6niG4bddilDYJyLfHx686CytGoBg2oPTZzBLFfRIKD7MhrgxhegihBQInB/wFozQgINVj+fGjgiEW1ItCgZDr2P3hcCIG2pejjFLVHTqenGFoKEonguRb/VhdXUkUYaQWipyXOPvdoXVsxN8eJMjumDqPLkfaxZ5SgKT+eqWzCAsxitHdKYgGCdOzg4T20ImexOt2BuNxlm+muyhCKeC2y49XGsuyqqvGQMk6z8fjZND1PDl4MSWKddRA+tgWlx/siCBWNDTKkx2Uf9pKUSxfqsftti4kSpxT9lWeZ+PBwMZlEksb2x7XiiVRYnCY1YrK+JHhQ4XOcZRPVw3LJ9BSvd2WEsWEbj0ZZz/oiSAigZu42uTjPEqWEwVC2KjYxm0lyj8tp9VQ6sftGnqnVguCjrn7YTDmp8ubKdl5t4UpWZokqE01kDyKQk25QflUPNbfr4GljSIHLPYgSdL0Aq0oX0mtxsnAafp9GB4eQ/kGnRBzwJ9PFRR3vYPi9fumLA8bgpk2WjkyJdNakMlt2cPAhIHSlIF/H+Wf+hHd9mtVff2CnWO1vr7+rlAsRKGlKwiWYqDtpCKuWOcmH4lEgUw8zjiNQmr5KrZfVOvv14Cy2Wp9kCcK+SkWTRXKJZOPPRTnFEr1uPyK6oC/5fXna0QhlmMo9iUoSivBE1BQLaiOaxgcXH8WKN83x1HM7FIULfC3UKwDKBR28U1xff158plEoNxqbqtQwgtnh3tzZnBb0xwOqUs92Ji/qR069frzZAfl9lahTCZYimt6MvDP1VLp+VWnwPG0/hB+2ENBqcA5cCdSvUaSiSLZQYERv9YZeo6VnW3MWh+UZWP4M4ZeY/Ch2+1CUb0dlB8lOQhUjX8mE10pLRSce0ARH6AoKHCMBT9lqQcC4kr0QDkOTzLozOI2So1WQTedCNFIdJQIOpEMy8ibXmj6BJTYcJyuPeAH4
), a6Z(14, "bestPlayer", 5,
"iVBORw0KGgoAAAANSUhEUgAAAIoAAACvCAMAAAAVOLbTAAAAtFBMVEUTBQUZBQgbBwMhCQcqCwkvCgsbGAgWEntaAzY5FRBgDCdlDRU0HDAlIG9TFkk4JUwvLxUzLC29IAk7QIlbO11ISjlOTSUAZjpMTWQiYEBsTEZAWJuHR4ZOXI66RiQAiByAWXdeZ31IbnxrbDdxaGC0WysAmiSxbTl5dsIhnkVyhcCKhWiKiEepf0OAiIh9iqtlk66rgoOnpFaMtZKvsq4A/wa+wr7X2tfk5uSm/6Tc+9////8kff4VAAAXaklEQVR42u2ca1ujyNPGIXHwRAQ2AXNiNhFGR5NFE/MQRr//93rqruqG5qTOf3fGfbF97RrHEPqXuw5d3Q1Y/9duP368vP7K9vLy40dHt1aL49diVDw/3kH58fob2483UEyQ4vhrWlH0wVgdpinyLLUH3Gz+b9jbTk7KX8pfVRv0tSA95EWHmayWJHkW2Hbj08P328lJkwaf6yCxLWpBlreEsRokeWrb/wtJN8qgh4dg7FTBvDRRhKTIwFGh0PmG77G4cRx73Sj4eGWqymbcycDOihqLZZIcQ9uWw0w1BsM3UeIHal4HSsNrKiZ8Ve4lyE0WyyDJgy6S4ZskJ/Fi8bCIY/cdlIYn66g4GP4iKPyHg5DY9s94iLdYLJ7A8gaK/i5d4WSwMMqLaMKqlap8hGTojcejx6cn4vEMlD6irngSFo3C5jkG4q/sUB8EGQ7H49P4idp4YZjoJ0gomHLtLpYyTxEqy0hSe8dVK1FOx09PNzdPccXyjve2M95RmchSomTaS37GU4hkdCMNLG+j9GbfVMliiShHy7YrDPttFN2hOz49XSuUm/FIuUsXy0kTZdhylx+EwqKkZRQP30qxJybJcDw6jQliTY1+jsYL9w2SoZG7645rBwXLYnH4QBTFwk7S5yonZhuNTsfAmFIjGGKJayzGUGkMBDoRmynmoFAqT7FrKfY9FG90OlIgzLKOR+NxRWJoc9KVaUxdQraQBfsUgZnbPuAlcJTR6WkMkgkaYLLxaFy6S1U1dHpxHcU6lijHCsT+EMqXky8lydXV2dXV1QTCjAwWLU9/CjZMxBay4CqH2sDQy9AgIUchSa7OXNc9AwvZiEzkmiAnw5P3UWwVz4yS2rYJ8467fqEmjsIk4fX1dXh2xizT03F80mrvJl87YBT8CNTI3RfHLRI4CokAkvn1NbOILpR9vZ9GscVZgFLY79RsTRLtKERycS3tQulC7uJ++QhJDcXONUpdk/dF8ZSjEMlMocwuRJfsdAR3IW9qopy8QVKiHAf2Wy5roHwR85yKoxBJeK1bSCwU1Nn0dOTRMXL8ufb2tvsOjPJScj+j2L161ENYNTYPSNhRZmj0Or8QE3kVy/lbTtOqoEQVPfr0zHNKEtf1vCsi8SR4yDyzWYJGMLMLYZlScFHzPM9130AZdKPolN/rsUDA+U+5jSqS69nzZrvd1lgAw4eNqXkm0kdQBn2lGxi8sWbA+fF1p0ISgiTPN3/99dcWLOGF+Ms69cpPME+J9D5KV+wAgQrX6pxxTPGBprL9xZxJXl6OfwnL9ez8QuIIiRctjuVbjABE9W8sU6YOmDZKyUJTisVY6xyv43W21k0kObu4nAnJy8umZLm85PwyqWiECEgj0NCkaVpN2CqifhSaUkDVRYwzPWYVBQ/EkOTiMrye3WRAeS3+uquxQBkZrTWQKjpjTN/irpiuUBrFCkR5OmRPqKClSlMQwCBFSJLLiEhunp4OSNnHu7s78ZfZ/PICMDxYTwwgnAhTg4fFg/sWSqtWiRfjQwWiMK4EgxSpSJ6eeH0iVywQZn6paJjnStMoFrJRc7b2tttOF6P4ICSih6IABnGcR/T9GeTp8RE5u7grWQgmvATNhSFPyfJINh++o0o9gIJ4dJoxigJRFBfn8zBEbyUJGR8m2n1jFgWDFByG8/m54HBQTXG2jNwv6BqL6onfnGcPabSPMxFlwhznQOBeONMLCJM8Csq3b8LCMLNylKQmxQzLQrOldS3T9Qaz4/vOQMkiUxwicc/OqkGPB5wbDSIkcJbdV2a5k7BOBKfkOTtzJywLJYagRBk4jqMHxBoKveX7UaRZUARljHJVkjCF5lAkbJ7X4+6rYmEY1iZJIg0T8IBwk8WjxbTM//jivtOhCr8VRQmxlLJolJkCMTA0yANPvo/5tz++1mG0OLrGY5RTFuVEJovoLtIsDRQ/SvyKRWRZlyiVXQwQcZRi9/UPaszCMJpGs5wLihJFVHHQF7FYTRT9nr+l/9lEwRrewihcvs5uDA4FIiSvxbc//hAWhhGaO2GZaVEoz53y9HFYkiROomWpoVj8phVtEy1LfDrioU+qxjJoSo6H7w/ssq8iigmjDbXdzKTWRKkZn1aeAhNsfb8LhX2I39WynJysR6jqIct5iVJxPHz//l1WgosKBSxfDZbN80yVmiLK0BBli+8dKc818wqih1AiLQvhT2OzhFUoJkkPSukzRPI8K0UZt0Sxton2XGM4ZHdOEiJ1tuy5+BB5yzTTU4w6ynduD8xyrEgMFqDkQNE1L1U8ZbHt+OjKR5CBZWgaCChOQqUhvYKFPzQVbxFZJMM+miQky2sTpWSBfXKIckmJvxKFYxluuXUs9Beh48GwjpKQn2z39EJmElngLShVyXFRUFcomuT7Y1G3T8nCKJuGKGW1DVFIDSLZOhS2Ts1AlnKjfRJt/VKWwPSWLpTvPP780YOSP2fX4SWjkCjjqZ6lcaz6W3+/3/oO/ebUK37xo4jeJF5TFo9MdCXlY8lSoeQtA+mIvtvkL88zKuuYhNwu1tOiIfdFfrLfR5b01QhmkoWE20fkLwkHdF2WeSfKI0dQG+Xubkel5vMsUqKMyFPOqWlRomjvkzdYkjsaIzOjknm2RNOQhVEuZ10o34taitvtdmyf3e5QvLyQ154zSjqlzH2uUIacZ+kLkzOIX1IaK1HKpEMMib9XsmBCSOl/lLLjXtI424FiyvJ1V+TF7u4bvRavLArKbjjtiDzFEIV8YI843qqEaqhSZR2CdUg4H3mOp6bTMc8FCeX8esZ1ch0FjqtiaCcDUpHzcEAkpavQNJpE+cIoMvigj2gfaVHqqoi3kN86kZLFwVQ9mI48rhSActOB8l3H81dzf7IAyf21QhmN4uBcGQiB7KMbqF8Ovg1VRJY9hRmxEotzgg9PMTF9C4VnH1Sv7F5rKM/39xXKeF2RiKewMKUoNRQpnLbg2FCTwgWauiOFctmD8igm2kGdYw7rFNDk3kDxqDoQFvZZkn8TJvjOCQ+HDV9hkgSBvN2k6SZ1YCLIMiK/fRPlgS3E1jk+U8NWMlnn9lZQxG0plL98UaJEAXrgrmQIGrRQCJaE8zdpEOx2gchCopx6G0K5uJx3u63IIpvkz89//nkv7ZZRrimYaeqxni5iF54ngZzuVkG6gQG2HSgDjAVI/FufDrRWO5FliBWmVNJt1MorD5UsSpM/qd3Sf9IIxdd5fzHFQhSLEhJJsNvI6Os0U5ykFSS//TbY7AJ3tQtZFpczfzvFcTF5JNfIZfKB9nz/p0YRGLaQoMQsixSK6rtGaghqZtuhxfHjIBvj0AmZCEd5VMll7cRP/Rd8cYFxhUHBmjRQIAsslI3j+MuJA5+d0+lJlIC+tSNDUHN2yGmFMz88BdgU0D4miZLhalVC0bzooiBHue9CMWURn93tXBEF4YMYskwUS1BQRNAARG41twKWZTo+rY+GT1LoF9x5wT9ImILKtZLERCGW6EKVTvFU+6ycXJJ71KhtsSLolCnOCXYr151DlpjmQnqpWERBY+9A7+QqCN+cFFEgJgpnFlOWkEVZsSjsClwwtspsrvhhImKxVqvJhDw3CMZqgRaiAIX6Ph5VCqHe75nA4ODgYROpmL4uC37IkiQD0oNPLWk9aVX87LWRlPzkLJvVajlZBrt0PKrWz2e8xFSlkHv02GoSxX/eahSR5Yqrp0W8IZ+dTyaT1QpOi8GlVfGXaV+l291y6S4n8x1EWatVaxZFLrY5Yqi7v73tI9HWaciyiKfuLnXp1KudTrY63dbLbN9Bt
), a6Z(15, "zoom", 6,
"iVBORw0KGgoAAAANSUhEUgAAAC4AAAAuBAMAAACllzYEAAAAHlBMVEUAAAAhIyA3ODZTVVJrbWqEhoOkpqO8v7vX2tb///8goTJXAAABaElEQVQ4y32Tu1ODQBDGL8QAdlg5dml8dZTa2TijXQpnIh2TwoQOxwehi2PB0flKYP/b7HFv5nALBn5337d7ewshXZyuKX2PST8egUW76OE7EJFa+BhJ9bSsUWFaeTV3GKHbn8EvlB79bjSv4VO8jUr4VdiHNnK938MHPie0Yh+ZLqmGuNsJ7CNURgewI5qPoRE86GwkJyWIBIfcUfJrmMm0sclDyDnPWmLyADacl8jnRbEGKIoiJRP4EmU2LJmIDfLvAf7z/37mv6IUm08pzbV/rx5f1pPA1Fn/iX3eS3nekAslz7gcGw9bg3uqn6Rup5oH+uaTLpO4r0SmZVuUFE2lfTc+z1qr9+BVtGJqzq1RHNfQdAtnrEW75UwuXOFgvj3crpCyDu6UIpP9fPHZU5XkiYVXvsXIPcc+VwspzY2pPorE/NgCfYK+QJ5+QFA6fjQt2A4IWuIWODixe2ELcuIUNJGL+zQle92exY5pfDIaAAAAAElFTkSuQmCC"
), a6Z(16, "apple", 3,
"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"
), a6Z(17, "loading", 6,
"iVBORw0KGgoAAAANSUhEUgAAAEEAAAAKAQMAAADRpqGpAAAABlBMVEUAAAD///+l2Z/dAAAATklEQVQI12M48E/OzoinjoGB4cA/O3tjnn8g1iEjY+aeAxCWofGZBijLCMqqNzRKmQdhGRubNINZyeYQ1p9/yXbGMv9yG0AsG2OemtwGAJcsIuxbPF7gAAAAAElFTkSuQmCC"), a6Z(18, "target",
7,
"iVBORw0KGgoAAAANSUhEUgAAAGQAAABkBAMAAACCzIhnAAAAJFBMVEXUAADLSwDYWli/eQCzlQGgswDloaGC0wAA/wBk5wDx09P///8NUBuBAAADWElEQVRYw62YvW/aUBDADwghTRakqoJuTBmSBamNSjcyJSMZotINZciQLCxVnQ1EkO0N1ET1iDJkgCViyGD/c7UN8bv37t5Hq96EbH6+j3fv3d2DgJPw52Uqd+y7AJhnP05hI6WTOyfksQ1IPnhWJLwAWUrfLYjfBSJfjIjfBkYaBoQnVAYjYRc08lWHXIBW+jwy0RNQijjErxsQqHJID4xyTpF7MwEVirQtCHxUkYmNEBEAVyVCDbgqEWq2SNcBgQ5GpsrLw+UqSZbPAzZoG2QovdpN/7+R5xaTNjkSSgt/lAiJJaYmkImOUJiSQHCu7CeJnjl/Q7Bdu4kqr6ploKTXLUGSJ8UykON1lDDSkmMGUrKUOSJZC+TdBvHFk2MWSQbSTkuRsUWJpCbKkaE2wIw3/RwRrqx0yKL4SzNDQsOa0LWpZcjU5rxkWSVDxna7sGVRisz4eMUay/op0uPilW2UQ6wVbU0I6owrm7Qqr5jV3AsgZFx5paa+iJCBSBcmPvvUmWoAU7oqKD8KzbGIMkzoF1vcHi0eBTB6+3nAbcMy/U4EM7IfF8Dt0iJkHoNI59AB+VAfhqqnsXwMkiifQ09FXiWkTJCOQJgQs48Z5EVGiPIOdFVk8f+Rvb9Hmv/iiyvCRYxfFzCti/vqk4SRc2yfybGZPmelAwEhI/JyzXmPk39MTIg5V4S5AdzTtwNmh8Wi9onjoswcjbv02Q5/jj3RYrtGh1LAFeMBKbYLUS1BNEkH6Ay/yh7ccNWimSJDtiItn2/wKR6jBgOCkUt9EWvlpci9qbMgcS9lVcy3F2RkVzWvyHW7ZWvcXgBurY6tdmX9ZYqMrFUc7TovR6ZgC8BC6kizTgksamK5hwO5T7w1e5K3yhkyBmOvhM+PaIv4YGr7cD9aLTrYtqm5xEdBs0DmuKCstM1oHuIt4oOWeaIDGTCDxY2yb5TRArjx5XDJTgnbAWaDhOqAWL6+vr5S55eaNPLMXUYeT0J8B6KqjG9DO9JXELuaGhlF546eICS0TJYNZqw2D8mViJv3e26DOEZMpjU0FxFTLbGjvSF50Dni6e9hfvHztGe67Xmw6qB3So/k0mMnst1c+acyceZyP/aI9uiJ53alFvy+/JTa9/7zt8j1Fs4ifwCmXBmOYkld0AAAAABJRU5ErkJggg=="
), a6Z(19, "members", 7,
"iVBORw0KGgoAAAANSUhEUgAAAEgAAABIBAMAAACnw650AAAAGFBMVEUAAABSVFGanJkA/wDMz8x4/3ey/7L///+GDHoaAAACZElEQVRIx9WWwYrjMAyGlVCYa6cs5JqGQh5gaObaDYU8QJnOA5SS66RN49dfSZZt2U2WZZeFXc9h2r9fZEmRJcPbLyz4d6GzMdM1/uXcG3PV0KehFVFnlh4Baoxdl8BEEkF7EcwUoN5pJ4HenRBMNV66C4QfxxI2nTKFhsYt5CgZC9FTawDIxbg4UKKUWevAuw1Aq/D7NUq6M9RbQ2zKhkwpKVnK2AWGRrCrc04lEpDfgyg1u8mh3EQqSGLoS5QXY/a4+XSKJIIwkkNQOIlTgFYUcQq59TuQcrwI0PDk+M3Hayh2+RcC1smkl3DDj1ltlMR5old38LutHT04l/BVAVfOSL9lnXelUBKaAltxt2gTv3Ft6w6k4sajdtf6zhLVHUHltzTwkIzvOUGf9PhOJJdVdphWS0YfFnJUCrVgISmdTVWVnVQa19+YV9VWKgohl2+MRUFKjaAXDX0tQCvt0+HPIJWnJajWGV9wPDPutPFhXs9CK+PLr1aJjSF+5aUzpOQY6mwZURWNCRRO9JZq43ikMtnog44v2LlojK1EW6n4zYXz4HqSb/gsty1qaWjAt5o7NAEiL7Jdu2vX7IqHLikEIYdzUJ5CZQQdJJcJ5GSE9i5tC1BNR4oadGub76ChwrZfKn48wTRXsGfrQvHFQr0dmy245o8nMYHGoxsToMZIAoWBA2qOzEMXmVJiK4nO2jn5oXju5yGZpn4Gf/QpNH08D+pn6O3vQqOGulkIX0+1fbXd93VT+dkXQe/SO3F1fkSnUBjgT7cEdVdJodkLTbNkKLr1NH1ApstPrkbnK/39B9e1H85NJPjxrK7zAAAAAElFTkSuQmCC"
), a6Z(20, "hourglass", 7,
"iVBORw0KGgoAAAANSUhEUgAAAEgAAABIBAMAAACnw650AAAAGFBMVEUAAABKTEqZm5gA/wDJzMh3/3iz/7L///+iyVF/AAACjklEQVRIx72W3aqyQBSGJwk6dceGTv1C8AJEO60QvACJLkDI02xPrtvf75pJ58cx2iffIqT0aWb9vGuNIrft0hSX8WqZ4Etxg9HM+G4zQVdatOcEdSSrqkr3juFOVdMwQXQUC7YmAyVLUPQZ1PxtJSJ5js7KX7j/+pKkNR5Y0RE9Ij/6JMPFRFfebt0cOmbD7dZOEOwQgn7ssnwOrf8rJAMp8KFSrnwormcQCR8S1HpQgT8qVVXnVCsJS/tQzlV4mMpmJLUCXOi4I2mgmnotOAfqcJPiCUIGNsMMunJdEqMjbP+cQQcOrx+hnZ0BA5XsuTQuPUxwBoLnZj98Oxq/LaiTHNK4G34MAQj7jfGhQqeIfgJQzm7ofELccUZ5CDpQjKBO3LbUr+gZhAo8QhMl8FoCb4IQhkvyUt7JWciBCnhUa5VkJkkexEtxQ3KjPvMlqKD7hk7fdF/bHnlQfoUU4LglgBCElVCP+ztIbQfDdXk7OL5jqH/juE7BA4pBUZr8XTJZMadoKZklKlxriMvSBqGO4m8ejJmuy5AH9aTqq02CbwPQlfeYDH94ziEWilqDW5xniiUWq6VUjs6szFTnat5SHYuXdcnGAcTZrINLrpmZGJnqqXY26WLONJ7rfqm5qfwh1vXckPahAh8HD/Imjzt7xJgACLe3oZ01xYQ1Mo/umWmGprBOjcQ96cyEEtacc89DrDx6PkJQrHSh2kjdgh4ulH0C7YIQuS8P3nYlDa9ecg33OpUF8TqnFyB9UitIVujsALSmqp6g+/5fHKVpxQfQqM6q2ier7X5joFdAMX++YrEyMc6hgP0RkuoVZbvfTqfU6gs/VbZG6M3bmn5fE0pxb6x1Ori4eNbkY3f+AriuYpjQCOoxAAAAAElFTkSuQmCC"
), a6Z(21, "stalemate", 6,
"iVBORw0KGgoAAAANSUhEUgAAAEoAAAAKAQMAAAApRlpeAAAABlBMVEUAAAD///+l2Z/dAAAAX0lEQVQI12P4/afiwJ+G9vnvDzD8/vPjwJ+D/SDmgYQTBw487mnmYYAwv4OZBUDmj/89zfwNDBWJfw78uDv/MJApAWQeODn/MFABR2LPgQMHZ4CYPxJ7/vwBMvkPIDEB8vo+S3L7oMwAAAAASUVORK5CYII="
), a6Z(22, "logo", 8,
"iVBORw0KGgoAAAANSUhEUgAAAFAAAABQBAMAAAB8P++eAAAAMFBMVEW+AAHAIiMAiAfESkosjSx4cMRcnFzPgoGbmNGow6e7ut7ftLTX4dbf3+7u3d7////Ro4BnAAACgklEQVRIx+3VMYgaQRQA0D1SpEizcv0Vg1h7XHHFQQpZUqVdWIRrRBaEQCIWKSxSBWRBDoIIC0J6YZHjCgshdsLCwvYB2cLiCkHLQ5zMz3cl7ow6O1OkSJF/V8lj5s+fP38N43/8s/GqoMUK17fjcVkDttvT9epRAwIGW17rQWBjUwmTXz+Hc2BPSugNbdsZwbal2t3eRRdgORk3TSV0kjTRydOlAtrDID0UTEwFtKtJksqmCjodL5jPAbamAu6s08EEHtVwf6gXLWiPgJW1YCeR7i1CLL3sOEfQAaYHMcuyLvykBb2E6cERrLitL24KEogV55v9btmSQGxMbufXa8hekwjnQhnfAvdGBFfF9slWvJhi3y2kTZGt+GYNXN8dH/o52/kK6CBrkmO44FMMG7EEdvnmmUKvFB/qL8J7bus7oDXynTXPFzxL/nKdQpDBNKd2y7z9ARAS8vGQ9NFdP+y2arPnz1OgUZ2QRvxyHt7DwsSbA/wP/QohpXhbkHT4tnyVjgLatwghxRjGrRvTPIUJu5lCFAHdrYfxHthqtZw0Tzo8YF8QNaKonzpS2g8ldgI9/HVWL1r79TA+7KUAnY7zFTuSuoSLUoSJiHCIY2qOQw3rzEXRdRuDiIfV/eBL6yxGse76hvAMYvyj/jdyGtYBOl4CfiP0B+E7ci7+QC9IYNOzrKJbIXnQwWFLZxLDQ3xV1He1IA1rhKihA2GF6MAqzIgm3NSI3ta0rgcT6GtBfPlU69S7i+5pQax47sUcICaZX3EjG0+byt+FXUXJD/BBUR8jG9+a0FEU0uDmfGjpQDs4evhSiB//vOY1hK9RTwtiljnXzc+eIO9yDOGjTuXwN2h8zFYEBekAAAAAAElFTkSuQmCC"
)
}
}, this.get = function(g4) {
return gV[g4]
}, this.a4s = function(name) {
for (var eJ = fz.length - 1; 0 <= eJ; eJ--)
if (fz[eJ] === name) return gV[eJ];
return a6U
}, this.g8 = function() {
return a6T <= 0
}, this.a6W = function() {
a6T = 0, a6X()
}
}
function bo() {
var a6h, a6i, a6j, a6k, a6l, a6m, a6n, a6o, a6p, a6q, a6r, a6e = [224, 224, 224],
a6f = [
[172, 172, 172],
[144, 0, 0],
[0, 128, 0],
[0, 0, 144],
[128, 128, 0],
[128, 0, 128],
[0, 128, 128],
[196, 196, 196],
[0, 0, 0]
],
a6g = [
[4, 4, 4, 20],
[4, 0, 0, 27],
[0, 4, 0, 31],
[0, 0, 4, 27],
[4, 4, 0, 31],
[4, 0, 4, 31],
[0, 4, 4, 31],
[4, 4, 4, 14],
[4, 4, 4, 13]
];
function a7D(em, a7F) {
a2t[em] = 0, a2t[em + 1] = 0, a2t[em + 2] = a7F, a2t[em + 3] = 0, a7G(em)
}
function a7G(em) {
var fO;
b0.kb || (fO = a1.jn(em), em = a1.gK(em), b0.kb = fO >= az.a2s[0] && fO <= az.a2s[2] && em >= az.a2s[1] && em <= az.a2s[3])
}
this.ct = function(r0) {
if (a6h = new Uint8Array(b.ej), a6i = new Uint8Array(b.ej), a6j = new Uint8Array(b.ej), a6k = new Uint8Array(b.ej), a6l = new Uint8Array(b.ej), a6m = new Uint8Array(b.ej), a6n = new Uint8Array(b.ej), a6o = new Uint8Array(b.ej), a6p =
new Uint8Array(b.ej), a6q = new Uint8Array(b.ej), this.zp = new Uint8Array(b.ej), (a6r = new Int32Array(4))[0] = -4 * aq.eE, a6r[1] = 4, a6r[2] = -a6r[0], a6r[3] = -a6r[1], b.hT)
for (var pW, iT, eJ = b.ej - 1; 0 <= eJ; eJ--) iT = b5.t8[b5.iU[eJ]], pW = eX((a6g[iT][3] + 1) * aM.random(), aM.value(100)), a6h[eJ] = a6f[iT][0] + pW * a6g[iT][0], a6i[eJ] = a6f[iT][1] + pW * a6g[iT][1], a6j[eJ] = a6f[iT][2] + pW *
a6g[iT][2];
else aV.iq && aV.ir.a6y ? function(ds) {
var eJ;
for (eJ = b.qI - 1; 0 <= eJ; eJ--) a6h[eJ] = 4 * ds[eJ][0], a6i[eJ] = 4 * ds[eJ][1], a6j[eJ] = 4 * ds[eJ][2]
}(aV.ir.a6y) : (function() {
for (var eJ = b.ej - 1; eJ >= b.ht; eJ--) a6h[eJ] = 4 * eX(64 * aM.random(), aM.value(100)), a6i[eJ] = 4 * eX(64 * aM.random(), aM.value(100)), a6j[eJ] = 4 * eX(64 * aM.random(), aM.value(100))
}(), function(r0) {
for (var eJ = b.ht - 1; 0 <= eJ; eJ--) a6h[eJ] = 4 * r0[eJ].a6E[0], a6i[eJ] = 4 * r0[eJ].a6E[1], a6j[eJ] = 4 * r0[eJ].a6E[2]
}(r0));
! function() {
var eJ, eo;
for (eJ = b.ej - 1; 0 <= eJ; eJ--) eo = eX(a6h[eJ] + a6i[eJ] + a6j[eJ], 3), a6h[eJ] += a77(eo - a6h[eJ], 2), a6i[eJ] += a77(eo - a6i[eJ], 2), a6j[eJ] += a77(eo - a6j[eJ], 2), a6h[eJ] -= a6h[eJ] % 4, a6i[eJ] -= a6i[eJ] % 4, a6j[eJ] -=
a6j[eJ] % 4
}(),
function() {
for (var eJ = b.ej - 1; 0 <= eJ; eJ--) a6h[eJ] += eX(eJ, 128), a6i[eJ] += eX(eJ % 128, 32), a6j[eJ] += eX(eJ % 32, 8), a6k[eJ] = eJ % 8
}(), this.a74(),
function() {
for (var eJ = b.ej - 1; 0 <= eJ; eJ--) a6l[eJ] = a6h[eJ] < 32 ? a6h[eJ] + 32 : a6h[eJ] - 32, a6m[eJ] = a6i[eJ] < 32 ? a6i[eJ] + 32 : a6i[eJ] - 32, a6n[eJ] = a6j[eJ] < 32 ? a6j[eJ] + 32 : a6j[eJ] - 32
}(),
function() {
for (var eJ = b.ej - 1; 0 <= eJ; eJ--) a6o[eJ] = 235 < a6h[eJ] ? a6h[eJ] - 20 : a6h[eJ] + 20, a6p[eJ] = 235 < a6i[eJ] ? a6i[eJ] - 20 : a6i[eJ] + 20, a6q[eJ] = 235 < a6j[eJ] ? a6j[eJ] - 20 : a6j[eJ] + 20
}()
}, this.yr = function(player) {
var ds = am.dl;
return ds[0] = a6h[player], ds[1] = a6i[player], ds[2] = a6j[player], ds
}, this.a74 = function() {
for (var eJ = b.ej - 1; 0 <= eJ; eJ--) this.zp[eJ] = a6h[eJ] + a6i[eJ] + a6j[eJ] < 280 ? 0 : 1
}, this.jn = function(em) {
return eX(em, 4) % aq.eE
}, this.gK = function(em) {
return eX(em, 4 * aq.eE)
}, this.qP = function(fO, fP) {
return Math.floor(4 * (fP * aq.eE + fO))
}, this.qe = function(em) {
return this.pw(em + a6r[0]) || this.pw(em + a6r[1]) || this.pw(em + a6r[2]) || this.pw(em + a6r[3])
}, this.qc = function(em, player) {
return this.a78(em + a6r[0], player) || this.a78(em + a6r[1], player) || this.a78(em + a6r[2], player) || this.a78(em + a6r[3], player)
}, this.sR = function(player) {
return player < b.ht && 2 !== a6.vZ[player]
}, this.ep = function(em) {
return 208 <= a2t[em + 3]
}, this.qj = function(player, em) {
return this.ep(em) && this.a79(player, em)
}, this.a79 = function(player, em) {
return player === this.eq(em)
}, this.a7A = function(em) {
return 208 <= a2t[em + 3] && a2t[em + 3] < 224
}, this.hc = function(em) {
return 224 <= a2t[em + 3] && a2t[em + 3] < 248
}, this.qd = function(em) {
for (var eJ = 3; 0 <= eJ; eJ--)
if (this.fn(em + a6r[eJ])) return !0;
return !1
}, this.a7B = function(em) {
return 192 <= a2t[em + 3] && a2t[em + 3] < 208
}, this.a7C = function(em, player) {
return this.a7B(em) && player === this.eq(em)
}, this.eh = function(em) {
return this.ep(em) || this.er(em)
}, this.fn = function(em) {
return 0 === a2t[em + 3] && 2 === a2t[em + 2]
}, this.er = function(em) {
return 0 === a2t[em + 3] && 1 === a2t[em + 2]
}, this.pw = function(em) {
return 0 === a2t[em + 3] && 3 === a2t[em + 2]
}, this.fm = function(em) {
return this.pw(em)
}, this.a78 = function(em, player) {
return this.er(em) || this.ep(em) && player !== this.eq(em)
}, this.eq = function(em) {
return a2t[em] % 4 * 128 + a2t[em + 1] % 4 * 32 + a2t[em + 2] % 4 * 8 + a2t[em + 3] % 8
}, this.qk = function(em) {
a7D(em, 1)
}, this.a7E = function(em) {
a7D(em, 2)
}, this.qb = function(em, player) {
a2t[em] = a6h[player], a2t[em + 1] = a6i[player], a2t[em + 2] = a6j[player], a2t[em + 3] = 208 + a6k[player], a7G(em)
}, this.ei = function(em, player) {
a2t[em] = a6l[player], a2t[em + 1] = a6m[player], a2t[em + 2] = a6n[player], a2t[em + 3] = 224 + a6k[player], a7G(em)
}, this.hd = function(em, player) {
a2t[em] = a6o[player], a2t[em + 1] = a6p[player], a2t[em + 2] = a6q[player], a2t[em + 3] = 248 + a6k[player], a7G(em)
}, this.a7H = function(em, player) {
a2t[em] = a6e[0] + a6h[player] % 4, a2t[em + 1] = a6e[1] + a6i[player] % 4, a2t[em + 2] = a6e[2] + a6j[player] % 4, a2t[em + 3] = 192 + a6k[player], a7G(em)
}
}
function bp() {
var fz, ed, ef, a7I, a7J;
function a7O() {
for (var a7W = 0, eJ = 1; eJ < 5; eJ++) a7W += ed[eJ] % 1024;
return a7W
}
function a7N() {
for (var eJ = 1; eJ < ef - a7J; eJ++) ed[eJ] = parseInt(ed[eJ])
}
function a7P() {
ed[0] = "Player " + Math.floor(1e3 * Math.random()), ed[1] = aL.gA < aL.gF ? Math.floor(1 + Math.random() * (Math.pow(2, 30) - 1)) : 0, ed[2] = 1, ed[3] = 1, ed[4] = aL.gA < aL.gF ? 0 : 1, ed[5] = 0, ed[6] = "000", ed[7] = "0", ed[8] = "0",
ed[9] = "0", a2.a7Q()
}
function a7M() {
for (var eJ = ef - a7J - 1; 0 <= eJ; eJ--) ed[eJ] = i.sD(ed[eJ]);
ed[0] = i.sB(ed[0])
}
function a7Z(name, value, a7a) {
var a7b = new Date,
a7a = (a7b.setTime(a7b.getTime() + Math.floor(31536e6 * a7a)), name + "=" + value + ";expires=" + a7b.toUTCString() + ";SameSite=Strict;Secure;path=/");
document.cookie = a7a
}
this.ct = function() {
if (0 === b8.id) {
a7J = 4, fz = [], ef = 10;
for (var eJ = a7I = 0; eJ < ef; eJ++) fz.push("u" + eJ);
ed = new Array(ef), ! function(a7X) {
for (var hg, em, a7Y = a7X.split(";"), eJ = a7Y.length - 1; 0 <= eJ; eJ--) {
for (a7Y[eJ] = a7Y[eJ].trim(), hg = 2; 0 <= hg; hg--) a7Y[eJ] = a7Y[eJ].replace(" ", "");
3 < a7Y[eJ].length && (hg = fz.indexOf(a7Y[eJ].substring(0, 2)), em = a7Y[eJ].indexOf("="), 0 <= hg && 2 === em ? ed[hg] = a7Y[eJ].substring(em + 1, a7Y[eJ].length) : 0 < em && a7Z(a7Y[eJ].substring(0, em), "0", 0))
}
}(document.cookie), ed[9] || (ed[9] = "0"), (! function() {
for (var eJ = ef - 1; 0 <= eJ; eJ--)
if (void 0 === ed[eJ]) return;
return 1
}() || (a7I = 2, a7M(), a7N(), a7O() !== ed[5])) && a7P()
}
}, this.a7Q = function() {
if (2 === a7I) {
ed[1] = 0 === ed[1] ? Math.floor(1 + Math.random() * (Math.pow(2, 30) - 1)) : ed[1], ed[5] = a7O(), ! function() {
for (var eJ = 1; eJ < ef - a7J; eJ++) ed[eJ] = ed[eJ].toString()
}(), ! function() {
ed[0] = i.sA(ed[0]);
for (var eJ = ef - a7J - 1; 0 <= eJ; eJ--) ed[eJ] = i.sC(ed[eJ])
}();
for (var eJ = ef - 1; 0 <= eJ; eJ--) a7Z(fz[eJ], ed[eJ], 1);
a7M(), a7N()
}
}, this.a7I = function() {
return a7I
}, this.a7U = function(hg) {
a7I = hg, this.a7Q()
}, this.a7V = function(eJ, value) {
0 === b8.id && (ed[eJ] = value)
}, this.tZ = function(eJ) {
return 0 !== b8.id ? 0 : ed[eJ]
}
}
function cC() {
var g4 = 0,
a7c = new Uint16Array(32);
function remove(ww) {
var eJ;
for (g4 -= 2, eJ = ww; eJ < g4; eJ += 2) a7c[eJ] = a7c[eJ + 2], a7c[eJ + 1] = a7c[eJ + 3]
}
this.ct = function() {
g4 = 0
}, this.iE = function() {
var eJ, hZ, h9;
if (0 !== g4)
if (0 === a6.jS[b.ea] || a3.a7d(b.ea) === a3.eK(b.ea)) g4 = 0;
else
for (eJ = g4 - 2; 0 <= eJ; eJ -= 2)(hZ = a7c[eJ]) < b.ej && 0 === a6.jS[hZ] ? remove(eJ) : (h9 = a7c[eJ + 1], (hZ >= b.ej && fs(b.ea) || hZ < b.ej && fx(b.ea, hZ)) && (aX.fk.ft(h9, hZ), remove(eJ)))
}, this.fv = function(hZ, h9) {
! function(hZ, h9) {
var eJ;
for (eJ = 0; eJ < g4; eJ += 2)
if (a7c[eJ] === hZ) return a7c[eJ + 1] = Math.min(a7c[eJ + 1] + h9, 1023), 1;
return
}(hZ, h9) && 32 !== g4 && (a7c[g4] = hZ, a7c[g4 + 1] = h9, g4 += 2)
}
}
function a7f(player) {
a7g(player), a7h(player), a7i(player), d.eZ(player), f.jb(player), a3.clear(player), al.a7j.a7k(player)
}
function a7g(player) {
a1.sR(player) && (a6.t2[player] = b9.sw.a7l(), b.sj++);
var a7m = a3.a7n(player);
0 === a7m.length ? player === b.ea && a7o() : (a7p(player, a7m), a7q(player, a7m))
}
function a7o() {
b2.ed[17] += a6.eb[b.ea] + a3.a7r(b.ea), v.show(!1, !1, !1, !0), u.a2L()
}
function a7p(player, a7m) {
for (var eJ = a7m.length - 1; 0 <= eJ; eJ--) a3.a7s(a7m[eJ], player)
}
function a7t(a7m) {
for (var g4 = 0, eJ = a7m.length - 1; 1 <= eJ; eJ--) a6.f5[a7m[eJ]] > a6.f5[a7m[g4]] && (g4 = eJ);
return g4
}
function a7q(player, a7m) {
var eJ, yP, a7u = a7m[a7t(a7m)];
if (9 === b.it && 1 === b5.iU[player] && aM.iN(8) && aN.a7v(a7u), player === b.ea) 2 !== a6.vZ[player] && l.sX(a7u, 1), a7o();
else {
for (yP = !1, eJ = a7m.length - 1; 0 <= eJ; eJ--)
if (a7m[eJ] === b.ea) return yP = !0, void l.sX(player, 0);
!yP && player < b.ht && 2 !== a6.vZ[player] && l.y9(0, player, a7u)
}
}
function a7i(player) {
a6.jS[player] = a6.eb[player] = 0, a6.eg[player] = null, a6.ex[player] = null, a6.ey[player] = null, a6.f1[player] = null, aR.a7w(player)
}
function a7h(player) {
for (var em, fP, fO = a6.i1[player]; fO >= a6.i2[player]; fO--)
for (fP = a6.i4[player]; fP >= a6.i5[player]; fP--) em = 4 * (fP * aq.eE + fO), a1.qj(player, em) && (a1.qk(em), a6.f5[player]--)
}
function cH() {
var input;
function a7x(dI) {
a7z(dI.target.files)
}
function a7z(files) {
files && 0 < files.length && aU.a80(files[0])
}
function a85(dI) {
var iT = new Image;
iT.onload = a86, iT.src = dI.target.result
}
function a86(dI) {
var a87, dI = dI.target,
gA = dI.width,
gF = dI.height;
4096 < gA || 4096 < gF || gA < 10 || gF < 10 ? (a87 = "Image w & h must be between 10 and 4096.", b8.os ? b8.os.showToast(a87) : alert(a87)) : (aV.uX(), aq.q6 = aq.a84(), aq.a5f = 0, aq.eE = gA, aq.eF = gF, aq.pi.width = aq.eE, aq.pi.height =
aq.eF, aq.pe.drawImage(dI, 0, 0), a87 = aq.pe.getImageData(0, 0, aq.eE, aq.eF), aq.pj = a87.data)
}
function a88(dI) {
dI.stopPropagation(), dI.preventDefault()
}
function a89() {
return 0 === y.tk() || 2 === y.tk()
}
this.ct = function() {
(input = document.createElement("input")).type = "file", input.setAttribute("accept", ".json, .png, .jpg, .gif, .jpeg"), input.onchange = a7x
}, this.a6G = function() {
input.click()
}, this.a7y = function(dI) {
a7x(dI)
}, this.a80 = function(a81) {
var ds = a81.name.split("."),
a82 = ds[ds.length - 1].toLowerCase();
"json" === a82 ? aV.oq(a81) : "gif" !== a82 && "jpg" !== a82 && "jpeg" !== a82 && "png" !== a82 || (aq.ir.q5[aq.a84()].name = ds[0], (a82 = new FileReader).onload = a85, a82.readAsDataURL(a81))
}, this.uH = function(dI) {
a89() && (a88(dI), dI.dataTransfer.dropEffect = "copy")
}, this.uI = function(dI) {
a89() && (a88(dI), a7z(dI.dataTransfer.files))
}
}
function cF() {
this.a8A = null, this.ct = function() {
10 !== b.it ? this.a8A = null : this.a8A = new Uint32Array(b.ej)
}, this.iE = function() {
10 === b.it && this.tl()
}, this.tl = function() {
for (var em, target, a2W, a8A = this.a8A, r0 = iW, vd = a6.eb, eJ = iV - 1; 0 <= eJ; eJ--)(em = r0[eJ]) >= b.ht || (target = Math.max(eX(vd[em], 4), 2048), a2W = Math.max(a4.a2X(em), 100), a8A[em] += eX(a2W * target, 1e4), a8A[em] >
target && (a8A[em] = target))
}, this.vj = function(player, ha) {
return ha > this.a8A[player] ? (ha = this.a8A[player], this.a8A[player] = 0) : this.a8A[player] -= ha, ha
}
}
function cI() {
function a85(dI) {
aV.iq = !0, aV.a8G(JSON.parse(dI.target.result)), aV.sO()
}
function a8M(g3, min, max, a8V) {
return "string" != typeof g3 || g3.length < min ? a8V : g3.length > max ? g3.substring(0, max) : g3
}
function a8H(df, min, max) {
return df = "number" == typeof df ? Math.floor(df) : min, Math.min(Math.max(df, min), max)
}
function a8K(df, oo) {
return "boolean" == typeof df ? df : oo
}
function a8O(df, ef, max, a8X) {
var eJ, ds, pW;
if (!Array.isArray(df) || df.length < 1) return null;
for (ds = new(8 === a8X ? Uint8Array : Uint16Array)(ef), pW = df.length, eJ = 0; eJ < ef; eJ++) ds[eJ] = a8H(df[eJ % pW], 0, max);
return ds
}
this.iq = !1, this.ir = null, this.uX = function() {
this.iq = !1, this.ir = null
}, this.a6D = function() {
this.ir.a6y && this.ir.a8B && (this.ir.a6y[0] = aZ.color.vJ(bA.j4.o1())), b.wP(this.ir.a8C, 0, this.a8D(), this.ir.wS, !1, !1)
}, this.a8D = function() {
return [{
name: this.ir.a8E ? bA.dK.data[124].value : this.ir.a8F[0],
a6E: [0, 0, 0],
a6F: 0
}]
}, this.oq = function(a81) {
var a83 = new FileReader;
a83.onload = a85, a83.readAsText(a81)
}, this.a8G = function(nC) {
this.ir = {}, this.ir.a6B = a8H(nC.numberPlayers, 1, 512), this.ir.a8I = a8H(nC.modeID, 0, 1), this.ir.q6 = a8H(nC["gMap.mapID"], 0, aq.a8J - 1), this.ir.a5j = a8H(nC.seedMap, 0, 16383), this.ir.a8C = a8H(nC.seedSpawn, 0, 16383), this.ir
.wV = a8K(nC.selectableSpawn, !1), this.ir.a8E = a8K(nC.selectableName, !1), this.ir.a8B = a8K(nC.selectableColor, !1), aq.ir.q5[aq.a84()].name = this.ir.a8L = a8M(nC.mapName, 1, 25, "Custom Map"), this.ir.xq = function(df) {
var eJ, ef;
if (!Array.isArray(df) || df.length < 1) return [];
for (ef = df.length, eJ = 0; eJ < ef; eJ++) df[eJ] = a8M(df[eJ], 0, 100, "");
return df
}(nC.description), this.ir.qD = a8O(nC.playerX, this.ir.a6B, 4096, 16), this.ir.qO = a8O(nC.playerY, this.ir.a6B, 4096, 16), this.ir.a8P = a8O(nC.playerTeam, this.ir.a6B, 8, 8), this.ir.is = a8O(nC.playerStrength, this.ir.a6B, 5, 8),
this.ir.a6y = function(df, ef) {
var eJ, ds, pW;
if (!Array.isArray(df) || df.length < 1) return null;
for (ds = new Array(ef), pW = df.length, eJ = 0; eJ < ef; eJ++) ds[eJ] = a8O(df[eJ % pW], 3, 63, 8);
return ds
}(nC.playerColor, this.ir.a6B), this.ir.a8F = function(df, ef) {
var eJ, ds, pW;
if (!Array.isArray(df) || df.length < 1) return null;
for (ds = new Array(ef), pW = df.length, eJ = 0; eJ < ef; eJ++) ds[eJ] = a8M(df[eJ % pW], 3, 26, "Bot");
return ds
}(nC.playerName, this.ir.a6B), this.ir.a8S = "string" == typeof nC.mapBase64 ? nC.mapBase64 : "", this.ir.a8E = this.ir.a8E || !this.ir.a8F, this.ir.wS = 0 === this.ir.a8I ? 7 : 2 === this.ir.a8I ? 9 : 6, this.ir.qD = this.ir.qO ?
this.ir.qD : null
}, this.sO = function() {
! function(g3) {
var gV, gS, a8U = "data:image/png;base64,";
if (g3.length <= a8U.length) return;
aV.ir.q6 = 0, aV.ir.a5j = 0, aq.d4(0, 0), g3.substring(0, a8U.length) !== a8U && (g3 = a8U + g3);
return (gV = new Image).onload = function() {
aq.eE = gV.width, aq.eF = gV.height, 4096 < aq.eE || 4096 < aq.eF || aq.eE < 10 || aq.eF < 10 ? (aq.d4(0, 0), alert("Image w & h must be between 10 and 4096.")) : (aq.q6 = aq.a84(), aq.a5f = 0, aq.pi.width = aq.eE, aq.pi
.height = aq.eF, aq.pe.drawImage(gV, 0, 0), gS = aq.pe.getImageData(0, 0, aq.eE, aq.eF), aq.pj = gS.data)
}, gV.src = g3, aV.ir.a8S = "", 1
}(this.ir.a8S) && aq.d4(this.ir.q6, this.ir.a5j)
}, this.a8Y = function() {
for (var max = 0, ef = this.ir.a6B, eJ = 0; eJ < ef; eJ++) this.ir.a8P[eJ] > max && (max = this.ir.a8P[eJ]);
return Math.max(0, max - 1)
}
}
function bq() {
var a8Z, a8a, size, hZ, ha, id;
function a8b(player) {
return player < b.ht ? a8Z * player : a8Z * b.ht + a8a * (player - b.ht)
}
this.ct = function() {
a8Z = b.ht < 16 ? 12 : 8, a8a = 4;
var ef = a8b(b.ej);
size = new Uint8Array(b.ej), hZ = new Uint16Array(ef), ha = new Uint32Array(ef), id = new Uint16Array(ef)
}, this.mw = function(zO, a8c) {
var a8d = this.fJ(zO, a8c);
this.fI(zO, a8c, 0), a8d = aZ.fU.mB(zO, a8d), zO === b.ea && (b2.ed[13] -= a8d)
}, this.clear = function(player) {
size[player] = 0
}, this.a7s = function(player, a8c) {
var ia, a8c = function(player, a8c) {
var eJ, pW = a8b(player);
for (eJ = size[player] - 1; 0 <= eJ; eJ--)
if (0 === id[pW + eJ] && hZ[pW + eJ] === a8c) return eJ;
return size[player]
}(player, a8c);
a8c !== size[player] && (ia = ha[a8b(player) + a8c], this.ee(player, a8c), this.hW(player, ia, b.ej))
}, this.hr = function(player, a8c) {
for (var pW = a8b(player), eJ = size[player] - 1; 0 <= eJ; eJ--)
if (0 === id[pW + eJ] && hZ[pW + eJ] === a8c) return !0;
return !1
}, this.iC = function(player) {
return player < b.ht ? size[player] < a8Z : size[player] < a8a
}, this.eK = function(player) {
return size[player]
}, this.eQ = function(player, eJ) {
return hZ[a8b(player) + eJ]
}, this.eL = function(player, eJ) {
return id[a8b(player) + eJ]
}, this.jq = function(player, a8f) {
for (var pW = a8b(player), eJ = size[player] - 1; 0 <= eJ; eJ--)
if (id[pW + eJ] === a8f) return eJ;
return -1
}, this.eR = function(player, eJ) {
return ha[a8b(player) + eJ]
}, this.fJ = function(player, a8c) {
for (var pW = a8b(player), eJ = size[player] - 1; 0 <= eJ; eJ--)
if (0 === id[pW + eJ] && hZ[pW + eJ] === a8c) return ha[pW + eJ];
return 0
}, this.a7r = function(player) {
for (var pW = a8b(player), df = 0, eJ = size[player] - 1; 0 <= eJ; eJ--) df += ha[pW + eJ];
return df
}, this.a8g = function(player) {
for (var pW = a8b(player), df = 0, eJ = size[player] - 1; 0 <= eJ; eJ--) 0 === id[pW + eJ] && (df += ha[pW + eJ]);
return df
}, this.a7d = function(player) {
for (var pW = a8b(player), rf = 0, eJ = size[player] - 1; 0 <= eJ; eJ--) 0 < id[pW + eJ] && rf++;
return rf
}, this.fI = function(player, a8c, ia) {
for (var pW = a8b(player), eJ = size[player] - 1; 0 <= eJ; eJ--) 0 === id[pW + eJ] && hZ[pW + eJ] === a8c && (ha[pW + eJ] = ia)
}, this.f4 = function(player, eJ, ia) {
ha[a8b(player) + eJ] = ia
}, this.hW = function(player, ia, a8c) {
var eJ, pW = a8b(player);
for (a8c === b.ea && b2.ed[player < b.ht ? 6 : 5]++, eJ = size[player] - 1; 0 <= eJ; eJ--)
if (0 === id[pW + eJ] && hZ[pW + eJ] === a8c) return ha[pW + eJ] += ia, void(ha[pW + eJ] = ha[pW + eJ] > b.vf ? b.vf : ha[pW + eJ]);
hZ[pW + size[player]] = a8c, ha[pW + size[player]] = ia, id[pW + size[player]] = 0, size[player]++, player < b.ht && (a8c === b.ea ? l.sX(player, 5) : player === b.ea && a5.yB(a8c))
}, this.a8h = function(player, ia, a8f) {
var pW = a8b(player);
a6.jS[player] = 2, hZ[pW + size[player]] = 0, ha[pW + size[player]] = ia, id[pW + size[player]] = a8f, size[player]++
}, this.ee = function(player, g4) {
var hg, pW;
if (0 !== size[player])
for (pW = a8b(player), size[player]--, hg = g4; hg < size[player]; hg++) hZ[pW + hg] = hZ[pW + hg + 1], ha[pW + hg] = ha[pW + hg + 1], id[pW + hg] = id[pW + hg + 1]
}, this.a7n = function(player) {
for (var hg, pW, a7m = [], eJ = iV - 1; 0 <= eJ; eJ--)
for (pW = a8b(iW[eJ]), hg = size[iW[eJ]] - 1; 0 <= hg; hg--)
if (0 === id[pW + hg] && hZ[pW + hg] === player) {
a7m.push(iW[eJ]);
break
} return a7m
}
}
function br() {
var a8i, a8j, a8k, a8l, a8m, a8n;
this.ct = function() {
a8k = a8i = 10, a8l = a8j = 10
}, this.d2 = function() {
a8n = 512, a8m = new Uint16Array(a8n);
for (var eJ = 0; eJ < a8n; eJ++) a8m[eJ] = 100 + a8o(eX(25600 * eJ, a8n - 4), 9)
}, this.a1I = function() {
return a8l
}, this.iE = function() {
if (--a8k <= 0 && (a8k = a8i, function() {
var eJ, a8t, dd = a6.eb[b.ea];
for (b.iv && !b.hT && 0 !== a6.jS[0] && 0 === z.iw[0].eo && (a6.eb[0] += eX(a6.f5[0], 6)), eJ = iV - 1; 0 <= eJ; eJ--) a8t = eX(a4.a2X(iW[eJ]) * a6.eb[iW[eJ]], 1e4), a6.eb[iW[eJ]] += a8t < 1 ? 1 : a8t, a4.ec(iW[eJ]);
b2.ed[9] += a6.eb[b.ea] - dd
}(), --a8l <= 0)) {
a8l = a8j;
for (var dd = a6.eb[b.ea], eJ = iV - 1; 0 <= eJ; eJ--) a6.eb[iW[eJ]] += a6.f5[iW[eJ]], a4.ec(iW[eJ]);
b2.ed[8] += a6.eb[b.ea] - dd
}
}, this.a2X = function(player) {
var gY = a8m[eX((a8n - 1) * a6.f5[player], b.wL)],
a8s = (b4.iS() < 1920 && (gY = gY < (a8s = eX(100 * (13440 - 6 * b4.iS()), 1920)) ? a8s : gY), this.iH(player));
return a6.eb[player] > a8s && (gY -= eX(2 * gY * (a6.eb[player] - a8s), a8s)), gY < 0 ? 0 : 700 < gY ? 700 : gY
}, this.iH = function(player) {
player = 100 * a6.f5[player];
return player > b.wK ? b.wK : player
}, this.ec = function(player) {
var df = a6.f5[player] * b.ve;
a6.eb[player] = Math.min(Math.min(a6.eb[player], b.vf), df)
}, this.lo = function(player, lp) {
aZ.fU.mB(lp, am.dj[0]), b2.mC(player, lp), a5.a8v(player, am.dj[0] + am.dj[1]), a5.mD(lp, am.dj[0]), aZ.fU.ml(player)
}, this.a8w = function() {
var ef = iV,
r0 = iW;
let pW = 0;
var vd = a6.eb;
for (let eJ = 0; eJ < ef; eJ++) pW += vd[r0[eJ]];
return pW
}, this.a8x = function(tO) {
var ef = iV,
r0 = iW;
let pW = 0;
var em, vd = a6.eb,
iU = b5.iU;
for (let eJ = 0; eJ < ef; eJ++) iU[em = r0[eJ]] === tO && (pW += vd[em]);
return pW
}
}
function bt() {
var a8y, a8z, a90, a91, a92, a93, a94, a95, a96, a97, a98, a99, a9A, a9B, a9C, a9D, a9E, a9F, a9H, a9I, a9J, a9K, a9L, a9R, a9S, a9G = null,
a9N = 0,
a9O = !1,
a9P = new Float32Array(4),
a9Q = 0,
a1m = 400;
function nL() {
a96 = Math.floor(+aL.g1), a97 = Math.floor(.5 * a96), a9G.width = aL.gA, a9G.height = aL.gF, a9H = a9G.getContext("2d", {
alpha: !0
}), aZ.g5.textAlign(a9H, 1), aZ.g5.textBaseline(a9H, 1), a9H.imageSmoothingEnabled = !0
}
function a9T() {
var eJ, a9Y;
for (gM.font = aZ.g5.g6(1, 100 * a98), a9Y = 80 / Math.floor(gM.measureText(aZ.jr.js(b.vf)).width), gM.font = aZ.g5.g6(1, 100), eJ = b.ej - 1; 0 <= eJ; eJ--) a95[eJ] = 100 / Math.floor(gM.measureText(a6.jt[eJ]).width), a94[eJ] = Math.min(a9Y,
a95[eJ])
}
function a9Z(eJ) {
return !bA.dK.data[7].value || a6.eb[eJ] < 1e6 ? 1 : a6.eb[eJ] < 1e7 ? a9P[0] : a9P[Math.min(Math.floor(Math.log10(a6.eb[eJ])) - 6, 3)]
}
function a9X(gW) {
a9F = !1, a9E = 1, a9C = a9D = 0, gW.clearRect(0, 0, aL.gA, aL.gF);
for (var jg, jh, eJ, a9e, fontSize, ji, jj = hA / hB, jk = hC / hB, jl = (aL.gA + hA) / hB, jm = (aL.gF + hC) / hB, a9f = 0 !== a6.jS[b.ea] && a1.sR(b.ea), hg = iV - 1; 0 <= hg; hg--) eJ = iW[hg], (fontSize = Math.floor(a9B * hB * a9Z(eJ) *
a94[eJ] * a92[eJ])) < a9A || a96 <= fontSize || a90[eJ] + a92[eJ] > jj && a90[eJ] < jl && a91[eJ] + a93[eJ] > jk && a91[eJ] < jm && (jg = Math.floor(aL.gA * (a90[eJ] + a92[eJ] / 2 - jj) / (jl - jj)), jh = Math.floor(aL.gF * (a91[eJ] +
a93[eJ] / 2 - jk) / (jm - jk) - .1 * fontSize), a9e = a1.zp[eJ], gW.font = aZ.g5.g6(1 === a6.vZ[eJ] ? 4 : 1, fontSize), gW.fillStyle = a9g(fontSize, a9e % 2), bA.dK.data[7].value ? a9h(gW, eJ, fontSize, jg, jh, a9e) : a9i(eJ,
fontSize, jg, jh, gW), a9F = !0, 0 < a9J[eJ] ? function(jg, jh, fontSize, eJ, gW) {
0 === a1K[eJ] ? a9.rA.rq(a9I[eJ]) ? (function(jg, jh, fontSize, player, m0, gW) {
for (var qH = jh, gU = (gW.globalAlpha = a9q(fontSize), a9Z(player) * (bA.dK.data[7].value ? a9Q : a95[player])), qG = jg - .5 * fontSize / gU - .9 * fontSize, hp = 0; hp < 2; hp++) gW.fillText(a9.rA.rk(m0), qG, qH),
qG = jg + .5 * fontSize / gU + .9 * fontSize;
gW.globalAlpha = 1
}(jg, jh, fontSize, eJ, a9I[eJ], gW), a9k(jg, jh, fontSize, 0, 0, gW)) : a9.rA.rs(a9I[eJ]) ? (a9t(jg, jh, fontSize, a9I[eJ], 0, gW), a9k(jg, jh, fontSize, 0, 1, gW)) : (a9t(jg, jh, fontSize, a9I[eJ], 1, gW), a9k(jg, jh,
fontSize, 1, 0, gW)) : a9t(jg, jh, fontSize, a9I[eJ], 0, gW)
}(jg, jh, fontSize, eJ, gW) : 0 === a1K[eJ] && a9k(jg, jh, fontSize, 0, 0, gW), a9f && (0 < a9J[eJ + b.ej] || 0 < a9J[eJ + 2 * b.ej] || 0 < a9J[eJ + 3 * b.ej] || 0 < a9J[eJ + 4 * b.ej]) && function(jg, jh, fontSize, eJ, gW) {
var iT, rf = -1;
for (iT = 4; 1 <= iT; iT--) 0 < a9J[eJ + iT * b.ej] && rf++;
for (iT = 1; iT < 5; iT++) 0 < a9J[eJ + iT * b.ej] && (! function(jg, jh, fontSize, iT, eJ, a9o, dd, gW) {
let vE;
if (1 === iT) {
eJ = a9I[eJ + b.ej];
if (!a9.rA.rr(eJ)) return function(jg, jh, fontSize, m0, a9o, gW) {
gW.globalAlpha = a9q(fontSize);
jg -= .534 * a9o * fontSize, a9o = jh + 1.59 * fontSize;
gW.font = aZ.g5.g6(0, .785 * fontSize), gW.fillText(a9.rA.rk(m0), jg, a9o), gW.globalAlpha = 1
}(jg, jh, fontSize, eJ, a9o, gW);
vE = a9.pm.rH[eJ - 1024 + a9.rA.rU]
} else vE = 2 === iT ? j.wt()[4].gV[+(dd < 255)] : (3 === iT ? j.wt()[5] : j.wt()[6]).gV[0];
eJ = a9.pm.rI, dd = .8 * fontSize / eJ, iT = jg - .5 * dd * eJ - .534 * a9o * fontSize, jg = jh + 1.4 * dd * eJ;
gW.setTransform(dd, 0, 0, dd, iT, jg), gW.globalAlpha = a9q(fontSize), gW.drawImage(vE, 0, 0), gW.globalAlpha = 1, gW.setTransform(1, 0, 0, 1, 0, 0)
}(jg, jh, fontSize, iT, eJ, rf, a9J[eJ + iT * b.ej], gW), rf -= 2)
}(jg, jh, fontSize, eJ, gW), (ji = a98 * fontSize) < a9A || (gW.font = aZ.g5.g6(1, ji), jh += Math.floor(.78 * fontSize), bA.dK.data[7].value ? a9i(eJ, ji, jg, jh, gW) : a9h(gW, eJ, ji, jg, jh, a9e)))
}
function a9i(eJ, fontSize, fO, fP, gW) {
var ___id = eJ;
gW.fillText(a6.jt[eJ], fO, fP), eJ < b.ht && 2 !== a6.vZ[eJ] || (eJ = fontSize / a95[eJ], gW.fillRect(fO - .5 * eJ, fP + aZ.g5.rl * fontSize, eJ, Math.max(1, .1 * fontSize)));
bA.dK.data[7].value && settings.showPlayerDensity && (settings.coloredDensity && (gW.fillStyle = utils.textStyleBasedOnDensity(___id)), gW.fillText(utils.getDensity(___id), fO, fP + fontSize));
}
function a9h(gW, eJ, fontSize, jg, jh, a9e) {
var ___id = eJ;
eJ = aZ.jr.js(a6.eb[eJ]);
a9e >> 1 & 1 ? (gW.lineWidth = .05 * fontSize, gW.strokeStyle = a9g(fontSize, a9e % 2), gW.strokeText(eJ, jg, jh)) : (1 < a9e && (gW.lineWidth = .12 * fontSize, gW.strokeStyle = a9g(fontSize, a9e), gW.strokeText(eJ, jg, jh)), gW.fillText(eJ,
jg, jh));
bA.dK.data[7].value || settings.showPlayerDensity && (settings.coloredDensity && (gW.fillStyle = utils.textStyleBasedOnDensity(___id)), gW.fillText(utils.getDensity(___id), jg, jh + fontSize))
}
function a9k(jg, jh, fontSize, a9o, a9p, gW) {
var xS = .95 * fontSize / a9L,
jg = jg - .5 * xS * a9K + .8 * a9o * fontSize,
a9o = jh - 1.76 * xS * a9L - (.35 - aZ.g5.rl + .7) * a9p * fontSize;
gW.setTransform(xS, 0, 0, xS, jg, a9o), gW.globalAlpha = a9q(fontSize), gW.drawImage(a0.get(4), 0, 0), gW.globalAlpha = 1, gW.setTransform(1, 0, 0, 1, 0, 0)
}
function a9t(jg, jh, fontSize, m0, a9o, gW) {
if (gW.globalAlpha = a9q(fontSize), a9.rA.rr(m0)) {
var gP = a9.pm.rI,
xS = 1.1 * fontSize / gP;
gW.setTransform(xS, 0, 0, xS, jg - .5 * xS * gP - .8 * a9o * fontSize, jh - 1.55 * xS * gP), gW.drawImage(a9.pm.rH[m0 - 1024 + a9.rA.rU], 0, 0), gW.setTransform(1, 0, 0, 1, 0, 0)
} else {
let qG = jg - .8 * a9o * fontSize,
qH = jh - (.35 - aZ.g5.rl + 1) * fontSize;
gW.fillText(a9.rA.rk(m0), qG, qH)
}
gW.globalAlpha = 1
}
function a9g(fontSize, a9e) {
return a97 <= fontSize && fontSize < a96 ? b5.a9v[a9e] + a9q(fontSize).toFixed(3) + ")" : b5.a9w[a9e]
}
function a9q(fontSize) {
return a97 <= fontSize && fontSize < a96 ? 1 - (fontSize - a97) / (a96 - a97) : 1
}
function aA5(gU, gA) {
return 1 + Math.floor(a99 * gU * gA)
}
function aA2(eJ) {
for (var left = a90[eJ], hg = a90[eJ] - a6.i2[eJ] - 1; 0 <= hg; hg--)
if (!aA7(eJ, --left, a91[eJ], a93[eJ])) {
left++;
break
} var right = a90[eJ];
for (hg = a6.i1[eJ] - a90[eJ] - a92[eJ]; 0 <= hg; hg--)
if (!aA7(eJ, ++right + a92[eJ] - 1, a91[eJ], a93[eJ])) {
right--;
break
} var fO = Math.floor((left + right) / 2),
top = a91[eJ];
for (hg = a91[eJ] - a6.i5[eJ] - 1; 0 <= hg; hg--)
if (!aA8(eJ, fO, --top, a92[eJ])) {
top++;
break
} var bottom = a91[eJ];
for (hg = a6.i4[eJ] - a91[eJ] - a93[eJ]; 0 <= hg; hg--)
if (!aA8(eJ, fO, ++bottom + a93[eJ] - 1, a92[eJ])) {
bottom--;
break
} var fP = Math.floor((top + bottom) / 2);
a9z(eJ, fO, fP, a92[eJ], a93[eJ]) && (a90[eJ] = fO, a91[eJ] = fP)
}
function a9z(player, fO, fP, gA, gF) {
eo = Math.floor(.2 * gA);
for (var eo, iT = fO + gA - 1; fO <= iT; iT--)
if (!aA7(player, iT, fP, gF)) return;
for (iT = fP + gF - 1 - (eo = (eo = Math.floor(.25 * gF)) < 1 ? 1 : eo); fP + eo <= iT; iT--)
if (!aA8(player, fO, iT, gA)) return;
return 1
}
function aA7(player, fO, fP, gF) {
return a1.qj(player, 4 * (fP * aq.eE + fO)) && a1.qj(player, 4 * ((fP + gF - 1) * aq.eE + fO))
}
function aA8(player, fO, fP, gA) {
return a1.qj(player, 4 * (fP * aq.eE + fO)) && a1.qj(player, 4 * (fP * aq.eE + fO + gA - 1))
}
this.ct = function() {
if (a1m = 0 === (a1m = bA.dK.data[11].value) ? 280 : 1 === a1m ? 187 : 112, a9F = !1, a9B = .88, a98 = .5, a99 = 1.8, a9A = 12 - 3 * bA.dK.data[9].value, a8z = a8y = 0, a90 = new Uint16Array(b.ej), a91 = new Uint16Array(b.ej), a92 =
new Uint16Array(b.ej), a93 = new Uint16Array(b.ej), a94 = new Float32Array(b.ej), a95 = new Float32Array(b.ej), a9I = new Uint16Array(2 * b.ej), a9J = new Uint8Array(5 * b.ej), a9R = new Uint8Array(b.ej), a9S = new Uint8Array(b.ej),
a9G = a9G || document.createElement("canvas"), nL(), a9D = a9C = 0, a9E = 1, bA.dK.data[7].value) {
var eJ, a9Y;
for (a9T(), gM.font = aZ.g5.g6(1, 100), a9Y = 100 / Math.floor(gM.measureText("900 000").width), eJ = b.ej - 1; 0 <= eJ; eJ--) a94[eJ] = Math.min(a9Y, 2 * a95[eJ]);
a9Q = a9Y, a9P[0] = 100 / (a9Y * Math.floor(gM.measureText("5 000 000").width)), a9P[1] = 100 / (a9Y * Math.floor(gM.measureText("50 000 000").width)), a9P[2] = 100 / (a9Y * Math.floor(gM.measureText("500 000 000").width)), a9P[3] =
100 / (a9Y * Math.floor(gM.measureText("1 000 000 000").width))
} else a9T();
! function() {
var eJ;
for (eJ = b.ej - 1; 0 <= eJ; eJ--) a6.f5[eJ] < 12 ? (a90[eJ] = a6.i2[eJ] + 1, a91[eJ] = a6.i5[eJ] + 1, a92[eJ] = 1, a93[eJ] = 1) : (a90[eJ] = a6.i2[eJ], a91[eJ] = a6.i5[eJ] + 1, a92[eJ] = 4, a93[eJ] = 2);
if (b.fj)
for (eJ = 0; eJ < b.ht; eJ++) a92[eJ] = 0;
a9K = a0.get(4).width, a9L = a0.get(4).height
}()
}, this.a8v = function(em, yR) {
yR > 18 * a6.f5[em] ? (a9S[em] = 6, a1.zp[em] = 2 + a1.zp[em] % 2) : (a9R[em] = 4, (a1.zp[em] < 2 || 3 < a1.zp[em]) && (a1.zp[em] = 6 + a1.zp[em] % 2))
}, this.mD = function(em, yR) {
yR > 6 * a6.f5[em] ? (a9S[em] = 6, a1.zp[em] = 4 + a1.zp[em] % 2) : (a9R[em] = 4, (a1.zp[em] < 4 || 5 < a1.zp[em]) && (a1.zp[em] = 8 + a1.zp[em] % 2))
}, this.resize = function() {
nL(), a9X(a9H)
}, this.wG = function() {
for (var eJ = 0; eJ < b.ht; eJ++) a6.i1[eJ] - a6.i2[eJ] != 3 || a6.i4[eJ] - a6.i5[eJ] != 3 ? (a90[eJ] = a6.i2[eJ] + (a6.i1[eJ] !== a6.i2[eJ] ? 1 : 0), a91[eJ] = a6.i5[eJ], a92[eJ] = 1, a93[eJ] = 1) : (a90[eJ] = a6.i2[eJ], a91[eJ] = a6.i5[
eJ] + 1, a92[eJ] = 4, a93[eJ] = 2)
}, this.my = function(player, g4, a9a) {
! function(player, g4, a9a) {
player += g4 * b.ej;
0 === g4 ? a9I[player] === a9a && 0 < a9J[player] ? a9J[player] = 0 : (a9I[player] = a9a, a9J[player] = a9.rA.rq(a9a) ? 255 : 64) : 1 === g4 ? (a9J[player] = 64, a9I[player] = a9a) : a9J[player] = a9a
}(player, g4, a9a), 2 === b.sh && this.jC(!0)
}, this.gL = function() {
a9F && (1 !== a9E ? (gM.imageSmoothingEnabled = !0, gM.setTransform(a9E, 0, 0, a9E, 0, 0), gM.drawImage(a9G, -a9C / a9E, -a9D / a9E), gM.setTransform(1, 0, 0, 1, 0, 0), gM.imageSmoothingEnabled = !1) : gM.drawImage(a9G, -a9C, -a9D))
}, this.a0Y = function(h1, h4) {
a9C += h1, a9D += h4
}, this.u9 = function(h1, h4) {
a5.a0Y(h1, h4)
}, this.zoom = function(fy, gD, gE) {
a9E *= fy, a9C = (a9C + gD) * fy - gD, a9D = (a9D + gE) * fy - gE
}, this.jC = function(ya) {
return !(!a9O && !ya && b4.dc < a9N + (1 === a9E && 0 === a9C && 0 === a9D && (b.wi() || b.fj || 2 === b.sh) ? 1e3 : a1m) || (a9O = !1, a9N = b4.dc, a9X(a9H), 0))
}, this.jo = function(eJ) {
return a9Z(eJ) * a94[eJ]
}, this.a9d = function(player) {
return a94[player]
}, this.iE = function() {
b4.iS() % 10 == 9 && (a9O = b.wk() && !b.wi()), !b.wi() && 4 <= ++a8z && function() {
var eJ, hg, hp;
for (a8z = 0, hp = 4; 1 <= hp; hp--)
for (hg = iV - 1; 0 <= hg; hg--) eJ = iW[hg] + hp * b.ej, 0 < a9J[eJ] && a9J[eJ] < 255 && a9J[eJ]--;
if (2 !== b.sh)
for (hg = iV - 1; 0 <= hg; hg--) eJ = iW[hg], 0 < a9J[eJ] && a9J[eJ] < 255 && a9J[eJ]--
}();
for (var ef = Math.floor(.1 * iV), eJ = a8y + (ef = iV < (ef = ef < 8 ? 8 : ef) ? iV : ef) - 1; a8y <= eJ; eJ--) ! function(eJ) {
var gU = a9Z(eJ) * a94[eJ];
0 < a92[eJ] && a9z(eJ, a90[eJ], a91[eJ], a92[eJ], a93[eJ]) ? ! function(eJ) {
for (var fO, fP, gA, gF, fg = !1, hp = 0; hp < 8; hp++) {
if (gA = a92[eJ] + 2, gF = a93[eJ] + 2, gA > a6.i1[eJ] - a6.i2[eJ] + 1 || gF > a6.i4[eJ] - a6.i5[eJ] + 1) return fg;
if (fO = a90[eJ] - 1, fP = a91[eJ] - 1, !a9z(eJ, fO, fP, gA, gF)) return fg;
a90[eJ] = fO, a91[eJ] = fP, a92[eJ] = gA, a93[eJ] = gF, fg = !0
}
return fg
}(eJ) && function(eJ, gU) {
for (var fO, fP, gA, gF, fg = !1, a3j = a92[eJ], kO = 1 + Math.floor(.02 * a3j), hp = 1; hp < 5; hp++) {
if ((gA = a3j + hp * kO) > a6.i1[eJ] - a6.i2[eJ] + 1) return fg;
if ((gF = aA5(gU, gA)) > a6.i4[eJ] - a6.i5[eJ] + 1) return fg;
fO = a6.i2[eJ] + Math.floor(Math.random() * (a6.i1[eJ] - a6.i2[eJ] + 2 - gA)), fP = a6.i5[eJ] + Math.floor(Math.random() * (a6.i4[eJ] - a6.i5[eJ] + 2 - gF)), a9z(eJ, fO, fP, gA, gF) && (a90[eJ] = fO, a91[eJ] = fP, a92[
eJ] = gA, a93[eJ] = gF, fg = !0)
}
return fg
}(eJ, gU) && aA2(eJ) : ! function(eJ, gU) {
var gF, fO = a90[eJ] + 1,
fP = a91[eJ] + 1,
gA = a92[eJ] - 2;
for (;;) {
if (gA < 1) {
a92[eJ] = 0;
break
}
if (gF = aA5(gU, gA), a9z(eJ, fO, fP, gA, gF)) return a90[eJ] = fO, a91[eJ] = fP, a92[eJ] = gA, a93[eJ] = gF, 1;
fO++, fP++, gA -= 2
}
return
}(eJ, gU) ? function(eJ, gU) {
var fO, fP, gA, gF, hp, kT, hi = a6.i1[eJ] - a6.i2[eJ] + 1,
aA6 = Math.floor(.02 * hi);
for (kT = -6 * (aA6 = aA6 < 1 ? 1 : aA6), hp = hi; kT <= hp; hp -= aA6)
if (gF = aA5(gU, gA = 0 < hp ? hp : 1), fO = a6.i2[eJ] + Math.floor(Math.random() * (a6.i1[eJ] - a6.i2[eJ] + 2 - gA)), fP = a6.i5[eJ] + Math.floor(Math.random() * (a6.i4[eJ] - a6.i5[eJ] + 2 - gF)), a9z(eJ, fO, fP, gA,
gF)) return a90[eJ] = fO, a91[eJ] = fP, a92[eJ] = gA, a93[eJ] = gF
}(eJ, gU) : aA2(eJ)
}(iW[eJ % iV]);
a8y = (a8y + ef) % iV
}, this.j7 = function() {
var eJ, em, gi, gj;
if (b4.iS() % 4 == 1)
for (eJ = iV - 1; 0 <= eJ; eJ--) em = iW[eJ], a1.zp[em] < 2 || ((gi = Math.max(a9R[em] - 1, 0)) === (gj = Math.max(a9S[em] - 1, 0)) ? 0 === gi && (a1.zp[em] %= 2) : 0 === gj && a1.zp[em] < 6 && (a1.zp[em] += 4), a9R[em] = gi, a9S[
em] = gj)
}, this.yB = function(player) {
var eJ = player + 2 * b.ej,
dd = a9J[eJ];
return 0 < dd && (l.sn(50, player), a9J[eJ] = 0, 255 === dd)
}, this.xD = function(player) {
return 255 === a9J[player + 2 * b.ej]
}
}
function bv() {
var fz, aA9;
this.ct = function() {
fz = "Abbasid Caliphate;Aceh s;Achaemenid Z;Afsharid z;Aghlabid Emirate;Ahom z;Akkadian Z;Aksumite Z;Akwamu;Alaouite z;Almohad Caliphate;Almoravid z;Angevin Z;Aq Qoyunlu;Armenian Z;Assyria;Ashanti Z;Austrian Z;Austria-Hungary;Ayyubid z;Aztec Z;Aulikara Z;Babylonian Z;Balhae;Banten s;S Banjar;Bamana Z;Bengal s;Benin Z;Kadamba z;Bornu Z;E Brazil;Britannic Z;British Z;British Raj;Bruneian Z;Bukhara Z;Burgundian State;Buyid z;Byzantine Z;Caliphate of Córdoba;Cao Wei;Carthaginian Z;Cebu Rajahnate;Chagatai Khanate;Chalukya z;Chauhan z;Chavín Z;Chenla;Chera z;Chola z;Comanche Z;Congo Free State;Crimean Khanate;Dacian Z;Delhi s;Demak s;Durrani Z;Dutch Z;Egyptian Z;Elamite Z;Exarchate of Africa;Abyssinia;Fatimid Caliphate;First French Z;Frankish Z;Funan;Gallic Z;Gaza Z;Republic of Genoa;German Z;Ghana Z;Ghaznavid z;Ghurid z;Goguryeo;Goryeo;Gorkha Z;Göktürk Khaganate;Golden Horde;S Gowa;Seljuq Z;Gupta Z;Hafsid Y;Han z;Hanseatic League;E Harsha;Hephthalite Z;Hittite Z;Holy Roman Z;Hotak z;Hoysala Z;Hunnic Z;Husainid z;Idrisid z;Ilkhanate;K Israel;K Judah;Inca Z;Italian Z;E Japan;Jin z;Johor Z;Jolof Z;Joseon;Kaabu Z;Kachari Y;Kalmar Union;Kanem Z;Kanva z;Kara-Khanid Khanate;Kazakh Khanate;Khazar Khaganate;Khmer Z;Khilji z;Khwarazmian z;Kievan Rus';Konbaung z;Kong Z;Korean Z;Kushan Z;K Kush;Lakota;Latin Z;Later Lê z;Liao z;Lodi s;Khmer Z;Macedonian Z;Majapahit Z;Mali Z;Malacca Z;Mamluk s;Manchukuo;Maratha Z;Marinid z;Massina Z;Mataram s;Mauretania;Mauryan Z;Median Z;Mlechchha z;Ming z;Mitanni Z;Mongol Z;Mughal Z;Nanda Z;Nguyễn z;North Sea Z;E Nicaea;Numidia;Omani Z;Ottoman Z;Oyo Z;Pagan Z;Pahlavi z;Pala Z;Palmyrene Z;Parthian Z;Pontic Z;Portuguese Z;K Prussia;Ptolemaic Z;Qajar z;Qara Qoyunlu;Qin z;Qing z;Ramnad Sethupathis;Rashidun Caliphate;Rashtrakuta z;Roman Z;Rouran Khaganate;Rozwi Z;Rustamid z;Russian Z;Tsardom of Russia;Saadi z;Safavid z;Saffarid z;Sassanid z;Satavahana z;Samanid Z;Soviet Union;Saudeleur z;Duchy of Savoy;Seleucid Z;Serbian Z;Shu Han;Shang z;Siam Z;Sikh Z;Singhasari;Sokoto Caliphate;Song z;Songhai Z;Spanish Z;Srivijaya Z;Sui z;K Mysore;Shunga Z;S Sulu;Sumer;Sur Z;Swedish Z;Tahirid z;Tang z;Tây Sơn z;S Ternate;E Thessalonica;German Reich;Tibetan Z;Tondo z;S Tidore;Timurid Z;K Tlemcen;E Trebizond;Toltec Z;Toungoo z;Toucouleur Z;Tu'i Tonga Z;Turgesh Khaganate;Umayyad Caliphate;Uyunid Emirate;Uyghur Khaganate;Uzbek Khanate;Vandal Y;Vijayanagara Z;Republic of Venice;Wari Z;Wassoulou Z;Wattasids;Western Roman Z;Eastern Wu;Western Xia z;Xin z;Yuan z;Zand z;Zhou z;Zulu Z;Yugoslavia;Kosovo;Sikkim;KanemBornu Z;Wadai Z;Ethiopian Z;Rozvi Z;Sasanian Z;E Vietnam;Shilluk Y;K Aksum;Gwiriko Y;Toro Y;Malindi Y;K Loango;K Mapungubwe;Ryukyu Y;K Cyprus;K Jerusalem;Garhwal Y;K Nepal;K Cambodia;Champa Y;Hanthawaddy Y;Phayao Y;K Sardinia;K Sicily;K Gwynedd;K Scotland;K Desmond;K Poland;K Hungary;K Croatia;K Bohemia;Albanian Y;K Georgia;K Portugal;Khanate of Sibir;K Romania;Cossack Hetmanate;Duchy of Bouillon;K Ireland;Lordship of Ireland;K Italy;Republic of Pisa;Idrisid z;Almoravid z;Almohad Caliphate;Marinid z;Wattasid z;Saadian z;Republic of Salé;Rif Republic;K Kush;Makuria;Alodia;Ayyubid z;Mamluk s;Egypt Eyalet;K Fazughli;S Sennar;S Darfur;Mahdist State;S Egypt;K Egypt;Emirate of Cyrenaica;K Libya;Republic of Egypt;Republic of the Sudan;United Arab Republic;Libyan Arab Republic;Zirid z;Hafsid z;K Kuku;Regency of Algiers;Gurunsi;Liptako;Tenkodogo;Wogodogo;Yatenga;Bilanga;Bilayanga;Bongandini;Con;Macakoali;Piela;Nungu;K Sine;K Saloum;K Baol;K Cayor;K Waalo;Bundu;Bonoman;Gyaaman;Denkyira;Mankessim Y;K Dahomey;Oyo Z;K Nri;Aro Confederacy;Kwararafa;Biafra;Buganda;Bunyoro;Ankole;Busoga;Tanganyika;Kuba Y;K Luba;K Lunda;Yeke Y;K Ndongo;Kasanje Y;K Matamba;Mbunda Y;Chokwe Y;Kazembe Y;K Butua;Ndebele Y;Mthethwa Z;Bophuthatswana;Ciskei;Transkei;Venda;Rhodesia;Kart z;Nogai Horde;Khanate of Bukhara;Khanate of Khiva;Khamag Mongol;Northern Fujiwara;Kamakura Shogunate;Ashikaga Shogunate;Jaxa;Republic of Ezo;Jiangxi Soviet;Hunan Soviet;Guangzhou Commune;Gojoseon;Alaiye;Beylik of Bafra;Kara Koyunlu;Kars Republic;K Iraq;Arab Federation
.split(";");
var eJ, hg, aAA = ["K ", " Y", "E ", " Z", " z", " s", "S "],
aAB = ["Kingdom of ", " Kingdom", "Empire of ", " Empire", " Dynasty", " Sultanate", "Sultanate of "];
for (aA9 =
"Pestilent Dominion;Wretched Realm;Damned Province;Corrupt Zone;Cursed Territory;Blight Nation;Haunted Expanse;Malevolent State;Ruined Empire;Contaminated Land;Epidemic Domain;Forsaken District;Abandoned Wasteland;Necrotic Enclave;Tainted Domain;Decayed Principality;Infested Region;Malignant Territory;Toxic Dominion;Ravaged Sector;Ghostly Realm;Plagued Commonwealth;Afflicted State;Desolate Nation;Apocalyptic Zone;Radiated Province;Deathly District;Pestilence Haven;Doom Territory;Malefic Expanse;Abandoned State;Cursed Haven;Corroded Zone;Hauntland;Noxious Nation;Infected Enclave;Ruinous Domain;Wasteland Woe;Rotten Principality;Voided Land;Vile Dominion;Catastrophic Region;Eerie Expanse;Desolation State;Forsaken Outpost;Contagion District;Damaged Province;Abhorrent Sector;Accursed Nation;Doomstruck Land;Radiant Ruin;Deathly Enclave;Malefic Dominion;Plague District;Infected Haven;Corrupt State;Pestilent Territory;Razed Realm;Haunted Wasteland;Toxic Sector;Cursed Dominion;Decaying Province;Forsaken Enclave;Ruinous Region;Malignant Haven;Infested State;Ghostly Nation;Tainted Territory;Damned District;Radiated Dominion;Desolate Expanse;Apocalyptic Land;Death Zone;Wretched State;Malevolent Haven;Plagued Nation;Noxious Domain;Voided Territory;Eerie Sector;Accursed Province;Necrotic District;Doom Haven;Haunt Realm;Rotten Nation;Forsaken Territory;Infected State;Abhorrent Expanse;Malignant Land;Toxic Dominion;Ruined District;Ghostland;Cursed Sector;Radiant Nation"
.split(";"), eJ = fz.length - 1; 0 <= eJ; eJ--)
for (hg = aAA.length - 1; 0 <= hg; hg--) fz[eJ] = fz[eJ].replace(aAA[hg], aAB[hg]);
if (settings.realisticNames) fz = realisticNames;
}, this.d4 = function() {
var eJ;
if (aV.iq && aV.ir.a8F)
for (eJ = b.ht; eJ < b.ej; eJ++) a6.jt[eJ] = a6.tL[eJ] = aV.ir.a8F[eJ % b.qI];
else(9 === b.it ? function() {
var eJ, gY = aM.random(),
ef = fz.length,
pW = b.ht + aN.aAG;
for (eJ = pW - 1; eJ >= b.ht; eJ--) a6.jt[eJ] = a6.tL[eJ] = fz[(eJ + gY) % ef];
for (ef = aA9.length, eJ = pW; eJ < b.ej; eJ++) a6.jt[eJ] = a6.tL[eJ] = aA9[eJ % ef]
} : b.iv ? function() {
var eJ, gY = aM.random();
for (eJ = b.ht; eJ < b.ej; eJ++) a6.jt[eJ] = a6.tL[eJ] = fz[(eJ + gY) % b.ej]
} : function() {
var eJ, ef = fz.length,
gY = aM.random();
for (eJ = b.ht; eJ < b.ej; eJ++) a6.jt[eJ] = a6.tL[eJ] = fz[(eJ + gY) % ef]
})()
}
}
function cG() {
this.aAH = [], this.aAI = [], this.ct = function() {
this.aAH = [], this.aAI = []
}, this.iE = function() {
0 <= this.aAH.length && this.aAJ(this.aAH), 0 <= this.aAI.length && this.aAJ(this.aAI)
}, this.aAJ = function(ds) {
for (var hp = -1, eJ = ds.length - 1; 0 <= eJ; eJ--)
if (ds[eJ].dc--, ds[eJ].dc <= 0) {
hp = eJ;
break
} for (eJ = hp; 0 <= eJ; eJ--) ds.shift()
}, this.x2 = function(id, r0, aAK) {
return this.aAL(this.aAH, id, r0, aAK)
}, this.aAM = function(id, r0, aAK) {
return this.aAL(this.aAI, id, r0, aAK)
}, this.aAL = function(ds, id, r0, aAK) {
return ! function(ds, id, r0) {
var eJ, pz;
for (eJ = r0.length - 1; 0 <= eJ; eJ--)
for (pz = ds.length - 1; 0 <= pz; pz--)
if (ds[pz].player === r0[eJ] && id === ds[pz].id) return 1;
return
}(ds, id, r0) && (aAK && function(ds, id, r0) {
var eJ;
for (eJ = r0.length - 1; 0 <= eJ; eJ--) ds.push({
player: r0[eJ],
id: id,
dc: 384
})
}(ds, id, r0), !0)
}
}
function bu() {
this.tL = new Array(b.ej), this.jt = new Array(b.ej), this.vZ = new Uint8Array(b.ej), this.jS = new Uint8Array(b.ej), this.i2 = new Uint16Array(b.ej), this.i5 = new Uint16Array(b.ej), this.i1 = new Uint16Array(b.ej), this.i4 = new Uint16Array(b
.ej), this.f5 = new Uint32Array(b.ej), this.qX = new Uint32Array(b.ej), this.eb = new Uint32Array(b.ej), this.eg = null, this.ex = null, this.ey = null, this.f1 = null, this.mh = new Uint16Array(b.ej), this.hQ = new Uint16Array(b.ej),
this.hR = new Uint16Array(b.ej), this.t2 = new Uint16Array(b.ej), this.aAP = new Uint8Array(b.ej), this.ct = function(r0) {
for (let eJ = r0.length - 1; 0 <= eJ; eJ--) this.jt[eJ] = this.tL[eJ] = r0[eJ].name, this.vZ[eJ] = r0[eJ].a6F;
this.jS.fill(0), this.i2.fill(0), this.i5.fill(0), this.i1.fill(0), this.i4.fill(0), this.f5.fill(0), this.qX.fill(0), this.eb.fill(0), donationsTracker.reset(), leaderboardFilter.reset(), this.eg = new Array(b.ej), this.ex = new Array(b
.ej), this.ey = new Array(b.ej), this.f1 = new Array(b.ej), this.mh.fill(0), this.hQ.fill(0), this.hR.fill(0), this.t2.fill(0), this.aAP.fill(0)
}
}
function cE() {
this.yd = 0, this.r0 = null, this.ct = function() {
this.yd = 0, this.r0 = []
}, this.aAQ = function(player) {
this.r0.push(player), b.sj++, a6.vZ[player] = 2, a6.t2[player] = b9.sw.a7l(), player === b.ea && (v.show(!1, !1), u.a2L()), a5.yB(player)
}, this.a7w = function(player) {
var eJ, r0;
if (2 !== a6.vZ[player])
for (eJ = (r0 = this.r0).length - 1; 0 <= eJ; eJ--)
if (r0[eJ] === player) return void r0.splice(eJ, 1)
}, this.iE = function() {
b.iv || (30 === this.yd && 2140 <= b4.iS() && this.aAR(), this.yd = (this.yd + 1) % 60)
}, this.aAR = function() {
for (var r0 = this.r0, eJ = r0.length - 1; 0 <= eJ; eJ--) ! function(player, h9) {
!a3.iC(player) || (h9 = Math.max(Math.min(100, a6.eb[player]), eX(h9 * a6.eb[player], 100))) < 100 || (0 === a6.ex[player].length ? !al.iD.iE(player) && b.hT && iG(player, h9, 0, 0) : (b.hT ? iR : iZ)(player, h9))
}(r0[eJ], 12)
}
}
function wa() {
for (iV = 0, eJ = b.ej - 1; 0 <= eJ; eJ--) 0 !== a6.jS[eJ] && iV++;
iW = new Uint16Array(iV);
for (var ef = 0, eJ = 0; eJ < b.ej; eJ++) 0 !== a6.jS[eJ] && (iW[ef++] = eJ)
}
function j6() {
aAT(), aAU()
}
function aAU() {
for (var eJ = iV - 1; 0 <= eJ; eJ--) 0 === a6.jS[iW[eJ]] && aAV(eJ)
}
function aAV(eJ) {
iV--;
for (var hg = eJ; hg < iV; hg++) iW[hg] = iW[hg + 1]
}
function aAT() {
for (let eJ = iV - 1; 0 <= eJ; eJ--) {
var dd, em = iW[eJ];
a6.f5[em] <= eX(a6.qX[em], 4) ? a6.f5[em] <= 1e3 && (2 !== a6.jS[em] || 0 === a6.f5[em]) && a7f(em) : a6.f5[em] >= a6.qX[em] ? (dd = a6.f5[em], 250 <= (a6.qX[em] = dd) && (a6.aAP[em] = 1)) : a6.qX[em] -= Math.max(1, eX(a6.qX[em] - a6.f5[em],
1e3))
}
}
function aAW() {
for (var a7W = 0, eJ = iV - 1; 0 <= eJ; eJ--) a7W += a6.eb[iW[eJ]];
return a7W % 4096
}
function bw() {
var aAX;
this.iy = null, this.ct = function() {
aAX = [], 9 === b.it && this.aAY()
}, this.aAY = function() {
var eJ, aAZ = [50, 74, 95, 150, 190, 333];
if (this.aAG = 0, this.iy = [0, 0, 0, 0, 0, 0], b.ht <= aAZ[0]) this.iy[0] = Math.max(aj.fK(b.ht * (512 - b.ht), aAZ[0]), 13), b.ip = this.iy[0];
else
for (b.ip = b.ej - b.ht, eJ = 1; eJ < 6; eJ++)
if (b.ht <= aAZ[eJ]) {
this.iy[eJ - 1] = 512 - aAZ[eJ - 1] - eX((512 - aAZ[eJ - 1]) * (b.ht - aAZ[eJ - 1]), aAZ[eJ] - aAZ[eJ - 1]), this.iy[eJ] = 512 - b.ht - this.iy[eJ - 1];
break
} b.qI = b.ht + b.ip
}, this.a7v = function(player) {
aAX.push({
player: player,
rf: 14 + aM.hj(20)
})
}, this.iE = function() {
var eJ;
if (9 === b.it)
for (eJ = aAX.length - 1; 0 <= eJ; eJ--) --aAX[eJ].rf <= 0 && (a5.my(aAX[eJ].player, 0, a9.rA.rX + a9.rA.rm), aAX.splice(eJ))
}
}
function cW() {
function aAf(eJ) {
return void 0 !== aq.ir.q5[eJ].aAn
}
function aAd(eJ) {
return 1 !== eJ && !aAf(eJ) && eJ !== aq.a84()
}
this.a8J = 21, this.eE = 0, this.eF = 0, this.pi = null, this.pe = null, this.pf = null, this.pj = null, this.q6 = 0, this.a5f = 0, this.pg = !1, this.ph = new aAb, this.ir = new aAc, this.ct = function() {
this.ir.ct()
}, this.d4 = function(map, a5j) {
((map %= this.a8J) !== this.q6 || aAd(this.q6) && a5j !== this.a5f) && (this.pg = !1, this.ph.a5r(), aM.wX(map), this.q6 = map, this.a5f = a5j, aAd(map) && (aq.ir.q5[map].aAe = a5j), aAf(this.q6) ? aAg() : (map = aq.ir.q5[this.q6], this
.eE = map.gA, this.eF = map.gF, aM.wX(map.aAe), aB.d4([this.eE, this.eF, map.jx, map.ju]), aAh(), aA.aAi(), aB.aAj()))
}, this.aAk = function(eJ) {
return 3 === eJ || 7 === eJ || 9 === eJ || eJ === this.a84()
}, this.aAl = function(eJ) {
return 2 === eJ || 7 === eJ || 9 === eJ
}, this.aAm = function(eJ) {
return 1 === eJ
}, this.a84 = function() {
return this.a8J
}
}
function aAb() {
function aAw() {
aq.ph.iE()
}
function aB2(em, aB1) {
0 < aB1 && (aq.pj[em] += aB1, aq.pj[em + 1] += aB1, aq.pj[em + 2] += aB1)
}
function fn(em) {
return aq.pj[em + 2] > aq.pj[em] && aq.pj[em + 2] > aq.pj[em + 1]
}
this.a0j = -1, this.db = 0, this.aAo = 0, this.aAp = 8, this.aAq = 32, this.aAr = 8, this.aAs = 32, this.aAt = [0, 0], this.zp = [0, 0, 0, 0], this.hI = null, this.aAu = !0, this.aAv = !1, this.a5r = function() {
-1 !== this.a0j && clearTimeout(this.a0j), this.a0j = -1, this.hI = null, aB.aAj()
}, this.ct = function() {
7 === y.tk() || this.aAv || (this.aAu = !0, this.db = 0, this.aAo = 1, this.aAt = [aq.ir.q5[aq.q6].q4[0], aq.ir.q5[aq.q6].q7[0]], this.zp = [aq.ir.q5[aq.q6].aAn[3], aq.ir.q5[aq.q6].aAn[4], aq.ir.q5[aq.q6].aAn[5], aq.ir.q5[aq.q6].aAn[6]],
this.aAp = aq.ir.q5[aq.q6].aAn[7], this.aAq = aq.ir.q5[aq.q6].aAn[8], this.aAr = aq.ir.q5[aq.q6].aAn[9], this.aAs = aq.ir.q5[aq.q6].aAn[10], this.aAu ? this.a0j = setTimeout(aAw, 16) : this.iE())
}, this.iE = function() {
if (8 === y.tk() && g.kB()) this.a0j = setTimeout(aAw, 16);
else {
if (0 === this.db) {
var aAe = aM.aAx();
if (aM.wX(aq.ir.q5[aq.q6].aAn[2]), aB.d4([aq.eE, aq.eF, aq.ir.q5[aq.q6].aAn[0], aq.ir.q5[aq.q6].aAn[1]]), aM.wX(aAe), this.hI = aB.aAy(), this.db++, this.aAu) return void(this.a0j = setTimeout(aAw, 16))
}
for (var em, fe, aAe = this.aAu ? 10 : 1e6, aAe = aq.eF - this.aAo - 1 < aAe ? aq.eF - this.aAo - 1 : aAe, qU = this.aAo + aAe, fP = this.aAo; fP < qU; fP++)
for (var fO = 1; fO < aq.eE - 1; fO++) fn(em = 4 * (fe = fO + fP * aq.eE)) ? this.aAz(em, fe, 1) : (this.aAz(em, fe, 0), function(fO, fP, em) {
return 1 < fO && fn(em - 4) || fO < aq.eE - 2 && fn(em + 4) || 1 < fP && fn(em - 4 * aq.eE) || fP < aq.eF - 2 && fn(em + 4 * aq.eE)
}(fO, fP, em) && this.aB0(fO, fP));
this.aAo = qU, this.aAo >= aq.eF - 1 ? (aq.pe.putImageData(aq.pf, 0, 0, 1, 1, aq.eE - 2, aq.eF - 2), b4.d3 = !0, this.a5r()) : this.aAu && (this.a0j = setTimeout(aAw, 16))
}
}, this.aAz = function(em, fe, g4) {
aB2(em, Math.floor(this.aAt[g4] + this.zp[g4] * this.hI[fe] / 1e4) - aq.pj[em])
}, this.aB3 = function(em, gY, aB4, g4, zp) {
aB2(em, Math.floor(this.aAt[g4] + (1 - gY / aB4) * zp) - aq.pj[em])
}, this.aB0 = function(gD, gE) {
for (var em, gY, aB4, q9 = gD - this.aAq, qA = gE - this.aAq, qV = gD + this.aAq, qU = gE + this.aAq, q9 = q9 < 1 ? 1 : q9, qV = qV > aq.eE - 2 ? aq.eE - 2 : qV, qU = qU > aq.eF - 2 ? aq.eF - 2 : qU, fP = qA < 1 ? 1 : qA; fP <= qU; fP++)
for (var fO = q9; fO <= qV; fO++) fn(em = 4 * (fO + fP * aq.eE)) ? (aB4 = this.aAp + (this.aAq - this.aAp) * this.hI[fO + aq.eE * fP] / 1e4, Math.abs(gD - fO) > aB4 || Math.abs(gE - fP) > aB4 || aB4 <= (gY = Math.sqrt((gD - fO) * (
gD - fO) + (gE - fP) * (gE - fP))) || this.aB3(em, gY, aB4, 1, this.zp[3])) : (aB4 = this.aAr + (this.aAs - this.aAr) * this.hI[fO + aq.eE * fP] / 1e4, Math.abs(gD - fO) > aB4 || Math.abs(gE - fP) > aB4 || aB4 <= (gY = Math
.sqrt((gD - fO) * (gD - fO) + (gE - fP) * (gE - fP))) || this.aB3(em, gY, aB4, 0, this.zp[2]))
}
}
function aAh() {
2 === aq.q6 ? aB5([256], [256], [0, 205, 256], [500, 500, 0], [0, 0, 0]) : 7 === aq.q6 ? aB5([512], [512], [0, 380, 512], [500, 500, 0], [0, 0, 0]) : 8 === aq.q6 ? aB5([410], [410], [0, 120, 210], [0, 80, 640], [0, 0, 0]) : 9 === aq.q6 && aB5([
512
], [512], [0, 70, 180, 200, 290, 420, 512], [500, 500, 0, 0, 500, 500, 0], [0, 0, 0, 0, 0, 0, 0])
}
function aB5(aB6, aB7, aB8, aB9, aBA) {
for (var fO, fP, aBC, aBD, fy, aBE, h0 = aB6.length - 1, aBB = aq.eE + aq.eF, ef = (aBB *= aBB, aB8.length), eJ = ef - 1; 0 <= eJ; eJ--) aB8[eJ] *= aB8[eJ];
var aBF = new Array(ef),
aBG = new Array(ef),
aBH = new Array(ef),
df = aB.aAy();
if (void 0 === aBA)
for (aBA = new Array(ef), eJ = ef - 1; 0 <= eJ; eJ--) aBA[eJ] = 0;
for (eJ = 1; eJ < ef; eJ++) aBF[eJ] = aB8[eJ] - aB8[eJ - 1], aBG[eJ] = aB9[eJ] - aB9[eJ - 1], aBH[eJ] = aBA[eJ] - aBA[eJ - 1];
for (fO = aq.eE - 1; 0 <= fO; fO--)
for (fP = aq.eF - 1; 0 <= fP; fP--) {
for (aBC = aBB, eJ = h0; 0 <= eJ; eJ--) aBC = (aBD = (fO - aB6[eJ]) * (fO - aB6[eJ]) + (fP - aB7[eJ]) * (fP - aB7[eJ])) < aBC ? aBD : aBC;
for (fy = aB9[ef - 1], aBE = aBA[ef - 1], eJ = 1; eJ < ef; eJ++)
if (aBC < aB8[eJ]) {
fy = aB9[eJ - 1] + a77((aBC - aB8[eJ - 1]) * aBG[eJ], aBF[eJ]), aBE = aBA[eJ - 1] + a77((aBC - aB8[eJ - 1]) * aBH[eJ], aBF[eJ]);
break
} aBI(aq.eE * fP + fO, fy, aBE, df)
}
}
function aBI(g4, fy, aBE, df) {
fy < 500 ? df[g4] = eX(df[g4] * fy * 2, 1e3) : 500 < fy && (df[g4] += eX(2 * (1e4 - df[g4]) * (fy - 500), 1e3)), df[g4] += eX(aBE * (10 * fy - df[g4]), 1e3)
}
function by() {
var aBJ;
function aBT(vE, gU, fO, fP, globalAlpha) {
aq.pe.save(), aq.pe.globalAlpha = globalAlpha, aq.pe.imageSmoothingEnabled = !1, aq.pe.scale(gU, gU), aq.pe.drawImage(vE, Math.floor(fO * (aq.eE / gU - vE.width)), Math.floor(fP * (aq.eF / gU - vE.height))), aq.pe.restore()
}
this.yV = 0, this.yW = 0, this.yY = 0, this.yZ = 0, this.ct = function() {
(aBJ = new Array(aq.a8J))[0] = {
gA: [0, 5e3, 8e3, 1e4],
gY: [220, 250, 255, 220],
vK: [190, 220, 0, 0],
hp: [170, 200, 0, 0]
}, aBJ[1] = {
gA: [0, 4e3, 5e3, 6e3, 1e4],
gY: [25, 0, 100, 0, 25],
vK: [25, 0, 0, 0, 25],
hp: [25, 0, 0, 0, 25]
}, aBJ[2] = {
gA: [0, 500, 2500, 2999, 3e3, 3200, 4200, 5200, 5700, 8800, 1e4],
gY: [15, 15, 70, 40, 48, 48, 252, 40, 40, 20, 30],
vK: [80, 80, 190, 90, 46, 46, 248, 180, 180, 90, 140],
hp: [120, 120, 220, 110, 37, 37, 217, 10, 10, 10, 10]
}, aBJ[3] = {
gA: [0, 400, 1800, 2e3, 3200, 4500, 6e3, 7700, 8500, 9500, 1e4],
gY: [10, 10, 20, 10, 30, 10, 16, 40, 55, 230, 230],
vK: [10, 10, 40, 50, 100, 40, 80, 120, 55, 230, 230],
hp: [80, 80, 200, 10, 60, 10, 16, 40, 55, 230, 230]
}, aBJ[4] = {
gA: [0, 300, 1400, 1700, 3e3, 4e3, 1e4],
gY: [10, 10, 20, 10, 10, 170, 212],
vK: [20, 20, 60, 100, 100, 110, 170],
hp: [70, 70, 160, 30, 30, 60, 120]
}, aBJ[5] = {
gA: [0, 1e3, 3e3, 3500, 4e3, 4500, 7e3, 7500, 8e3, 1e4],
gY: [10, 10, 20, 10, 5, 10, 20, 5, 20, 25],
vK: [30, 30, 50, 100, 30, 100, 140, 60, 140, 200],
hp: [80, 80, 200, 10, 5, 10, 20, 5, 20, 25]
}, aBJ[6] = {
gA: [0, 700, 2650, 3200, 5e3, 8e3, 1e4],
gY: [10, 10, 60, 255, 255, 200, 200],
vK: [10, 10, 60, 255, 255, 200, 200],
hp: [80, 80, 255, 255, 255, 200, 200]
}, aBJ[7] = {
gA: [0, 400, 1999, 2e3, 3200, 4e3, 4700, 5500, 6500, 9500, 1e4],
gY: [10, 10, 80, 255, 255, 55, 6, 70, 20, 155, 255],
vK: [10, 10, 90, 245, 245, 170, 80, 190, 20, 155, 255],
hp: [80, 80, 255, 235, 235, 55, 26, 10, 20, 155, 255]
}, aBJ[8] = {
gA: [0, 700, 1300, 1900, 1901, 2500, 3400, 6e3, 1e4],
gY: [25, 30, 30, 30, 255, 255, 30, 40, 20],
vK: [25, 30, 150, 150, 245, 245, 80, 150, 70],
hp: [60, 170, 170, 170, 235, 235, 30, 40, 40]
}, aBJ[9] = {
gA: [0, 400, 2009, 2010, 3300, 4e3, 5200, 6500, 8e3, 9500, 1e4],
gY: [10, 10, 80, 255, 255, 55, 23, 36, 20, 155, 255],
vK: [10, 10, 90, 245, 245, 170, 60, 160, 20, 155, 255],
hp: [80, 80, 255, 235, 235, 55, 9, 72, 20, 155, 255]
}, aBJ[20] = {
gA: [0, 5500, 6700, 6999, 7e3, 7300, 7600, 8200, 1e4],
gY: [5, 5, 70, 70, 255, 255, 252, 10, 8],
vK: [20, 28, 190, 190, 255, 255, 248, 90, 60],
hp: [60, 80, 220, 220, 220, 220, 217, 10, 8]
}
}, this.aAi = function() {
var aBS, eJ, hg, dt, gS = function() {
var gS;
return aq.pi = document.createElement("canvas"), aq.pi.width = aq.eE, aq.pi.height = aq.eF, aq.pe = aq.pi.getContext("2d", {
alpha: !1
}), gS = aq.pe.getImageData(0, 0, aq.eE, aq.eF), aq.pj = gS.data, gS
}(),
gA = aBJ[aq.q6].gA,
gY = aBJ[aq.q6].gY,
vK = aBJ[aq.q6].vK,
hp = aBJ[aq.q6].hp,
df = aB.aAy(),
ef = gA.length - 2,
aBN = new Array(1 + ef),
aBO = new Array(1 + ef),
aBP = new Array(1 + ef),
aBQ = new Array(1 + ef);
for (hg = ef; 0 <= hg; hg--) aBN[hg] = gA[hg + 1] - gA[hg], aBO[hg] = gY[hg + 1] - gY[hg], aBP[hg] = vK[hg + 1] - vK[hg], aBQ[hg] = hp[hg + 1] - hp[hg];
for (eJ = aq.eE * aq.eF - 1; 0 <= eJ; eJ--)
for (hg = ef; 0 <= hg; hg--)
if (df[eJ] >= gA[hg]) {
dt = df[eJ] - gA[hg], aq.pj[4 * eJ] = gY[hg] + a77(aBO[hg] * dt, aBN[hg]), aq.pj[4 * eJ + 1] = vK[hg] + a77(aBP[hg] * dt, aBN[hg]), aq.pj[4 * eJ + 2] = hp[hg] + a77(aBQ[hg] * dt, aBN[hg]), aq.pj[4 * eJ + 3] = 255;
break
} aq.pe.putImageData(gS, 0, 0), aq.aAm(aq.q6) && a0.g8() && aq.aAm(aq.q6) && (gS = a0.a4s("arena"), aBS = a0.a4s("territorial.io"), aBT(gS, 5, .5, .5, .1), aBT(aBS, 2, .5, .45, .1)), aq.pg = !0, b4.d3 = !0
}, this.wZ = function() {
for (var em, fO, fP, aBU, aBV, dv, yW = 0, gA = aq.eE, gF = aq.eF, dt = gA * gF * 4, aBW = a2t, aBX = aq.pj, eJ = gA - 1; 0 <= eJ; eJ--) aBW[(em = eJ << 2) + 2] = aBW[dt - em - 2] = 3;
for (dt = 4 * gA, eJ = gF - 1; 0 <= eJ; eJ--) aBW[(em = eJ * dt) + 2] = aBW[em + dt - 2] = 3;
for (aBU = gA - 1, aBV = gF - 1, fP = 1; fP < aBV; fP++)
for (dt = fP * gA, fO = 1; fO < aBU; fO++) dv = 1 - (aBX[(em = dt + fO << 2) + 2] > aBX[em + 1] && aBX[em + 2] > aBX[em]), aBW[em + 2] = 2 - dv, yW += dv;
this.yV = (gA - 2) * (gF - 2), this.yZ = 0, aq.aAk(aq.q6) && function() {
var em, fO, fP, dt, aBW = a2t,
aBX = aq.pj,
gA = aq.eE,
aBU = gA - 1,
aBV = aq.eF - 1,
rf = 0;
for (fP = 1; fP < aBV; fP++)
for (dt = fP * gA, fO = 1; fO < aBU; fO++) aBX[em = dt + fO << 2] === aBX[1 + em] && aBX[em] === aBX[2 + em] && (rf++, aBW[2 + em] = 3);
aA.yZ = rf
}(), this.yW = b.wL = yW - this.yZ, this.yY = this.yV - this.yW - this.yZ
}
}
function aAg() {
var g3;
10 === aq.q6 ? g3 =
"DYDz2ESNu-0UYCCrS9c3pBUrKHc94BhIBhIJpIIBnMIAAIrKSSpKABmgf9e7X7ecX-5P0baOy191XXX7eegf9mcfUrrxrKppppKpKSrzUMMMSKKKrJcXcXcmgcXnKIKBmnCIJonCKrrSrrSSxSS9XcJnBe9XemmWXeX99chMIAEprrSrrtbrxIrMKBn9eBcecX9X7f99X90e577VX1VcOWX16XX7X999cX7eWyXXccVVX6rUSrrwUrlzpbbrrU6xzztzxzrztzbaOtaOa5-0WV-77e-9119HcXXZecccceXXX7ce9Xcce9e9meeVof919ee9Wzy5XeXYS9KBcXee_He6ce1ee0zxzta5UaX99c1mXcXhEJp9cNHWcTN9BcnAzJoorIBe0c--nIJoonSIBe-OX-NNOXWbcBgzIHX9xHzS9mcCSI9-nBrrorK9VcP-jHe9_BhxzKHcWC9mZp9-3n9fBnS970a6zs7egrIAAIRUKocXX9gx9npKaUxBppABe5OdHpBe-AC9-17TOWABpKI9-7JmnC6zGtxIBmen9egp6aUlyOzbrbbqUzxHXgjKKBc-ZehlxoeeoxObonox9XonAUbzS9efBdCAArHmjISBhEJnAofBUIJgrpocXxIBUoxHVmnBmmXAExoUxABmdAIBgnBonIAC6oxHVgfMHcXcUXAAGxIBgfxJch9c3enCMzSBe9eXomxHeBgmeCSBgpKMp9hzHfIEzHnArSxHX7pSrUHcnCMrUpSa5UIonABrSBccnBopJttzbxpBonHXpIEKMrMSrxpKxzUzltyUtaTOaOaObaT5UzNTOV0c116rMMKSKrxIKpJpKMSKMGxISCrKMSpKMKrSpSpI9xp9_pMMMMSBoxSryTUUxa5P7-0ttbWzzzxzaN5-NOWVN--0Wa5-0X-0VNVN7TOzaOWzL0bbX0y7NN5Ua17V111749c79e1c-V-----Ow7--N57-OzaN0ba156byNNT6q5OzWaT55-OsOX1777Oa55-5T5UX16tzUOyUtzrpzUrSKKSSAoemnKCIAIICI9KHn9CKBhCSHgenSAJnIJxSMMKKSSpKoopKKHpSoorSzxpWxMS-UKISaOxMOxttyOzy5OzbbtyTOzbtaUxyUyTT6porUrSztzzMSp9eceoogeZp9ZxJx9geeeXe9eZgeC9gegemp9gmpKMSonSxKrrbaUMIKJpMKKKpIACBmeccV71XX7V1mmmmhCCCKJompKKJpMKSKSKpKMJpKBeeceenKpzHnBnBmceee-X1117ememfBn9mfCBmgemf9mfBmf9xromcec7Us8He0u99cWtbc-PeCCS9VecZnBnBemfBn9X9c6aOXA997Y99755VXc6tXXmV5Os-ObVN0yN0bzaT-7ec7N70Wa-OV-5eggnHon9f9efCBpMzop97epCKIpSIBpKrrSKKIKKMKMJehzKKErJeABnIAJc717f9eBnAJzrHe7V9d9ef9gmopKUKC9gmcV6tX73eCIJoonIBnBnBgnCHgjJeZfA9megeegfKCICCJnIA9meZf9mfIEMof9XceXe97X-59XdCIKKpKKCJoeVcf97mZmVVV199YJmX7gceY9gpEOxMMJecrSSGzOxSrxprSxzJzUopSrIxKBpUMIpMprSropEMHnBrpprK91AJpJpIICpBopICCJonKBn9mcme9VcX9ee7X7e9ece9Xe19XcX91Xee9Xcce9VVVccefAAABe7emhBnSSKMSIJhCIJpKJppCKKIIIICJgpIBpAIHpBcoooonIKLObpBnKlzrKIKCJpCJpBnBpUzrrxpxSbbwUxzUprpppppJppMMIrrSSRUbWsOwUzUltbzrxzUzSzUbrrTTUUrSbbV6WbaTOzxzyN5TN-T5TOxbtts71-X-70V0sOWsObbaT0sTObw70tbbzbxbzzyOtyUtbyUaOV1-N0cVN-50aOtza6tzlxzUxSrzUzSSxUSzzOzzs5OyOtyOyUztyObaNOtaUrUxrrUSrrUrMSJrSIMSpKISzKUSpSrSSrzSMMxMSrMSpSrUzSSzzrTUMSpprSzMSzUxSSIEUSrzrUSpMKKxpKrKMKBmmrIKBgpKrzs6VOsUa--5ObzyN77-7X7e970V-5Oa5ObzxSxrzzSrKMUw-OV17X7X1X99X97X9X99cXXXXX977OaOVXeeeeecX7cX7X7X177-7-X-71-7XX97X97cX7VVV1--VObs970cVObtzbtyObrzxSomdKKSSMKqTN5NN0xrMIM5UrKKKpEKrSMSMprSrxMMUzrzrzSrSrSrHXenOtxrrxrxzSrrSrUrrSrSxMSxxKJpKKKJnKKrKIUUSrSrKKzKxKrSrSwUxIBnrxpSSpUzyOzzzzyUSxzRUpCBee7ecXce89omegpIBrpxzSrMJnKrMSFT0tbrMKxKL0VObxprSSlXV-11-c-X-WxzxFUaPcX777OzztzrSrMV-V75X96zzMKrUa9e-7V17gc9XeV90Bf957cVOzrMOX17X7X-X7X7V-N-6aUxCKzUUKprcX-UzSrN17WzrxrNX7ecV17WzzbaOtbxraObrOxrbxwUxpUzrzraOy5OVOWtzyOzzxbzVNXccXcXcX1-V197V-ec5Oy5N1--555UyN-N1---VOWX0Wtcc0aUMMyOs----Zc5-TOtsOWX7c0xzLN-NWbyOyUyUzrbxJe9gfTUxAMxrxzlbzbzbq5UKrJnAABnAAICETUtxSrzrpIpKIUSxraOaOVNTObzWa5NOtxxyOyOc-5A9YBmnBfHceX7-XXcX9e9Y9e5OzUbxSyVUX5OcUa1-UMqNNUbyOtsUWtWbWaObtzbyUWy6bzpJmoh9nIUI99oghSUzrrrSHeHohKCJgrKJemgcrS9nry6xSrUMStxzUSzqUrbrUxUSxxrrprUU6zSrbrtzUSUSzxMKxSMprMKIIIoonIBmohAIAHgf9eHeemfI9nA9mf9c9n9ZeXc9d9n9ccX7VZmoceeHVX1Zn9meZegegegfBhABehABonAHnABhCIBemee9eBfBeecgeohCUxzUbzxI9egegfAUUrHmegemecWcfCUp9meX9Beeef9onrSpAAKKKIyOzyUzJnBjSrxSSIBhMSHgcVYKxBmnzrROzpzxzSKKCKUzKBnoUzzbzpJmegfzyUzFObyUzrrzpKUSlzry6sUyUVN-7NOzbzzlzrzUrUSrrURUxzbzsTUsUWts5NOWa5ObzrUxrtyOWWaOzMSJnIAIprMJorKMIrSKMKKpUKCBonKMJnCJpCIKIKMJmpKIMKJpCJpBxBonHomoemmegnHf9f9cX7ce99emecgn9h9eA9nCHgfBnAIBfHh9eXXce9emec7f9ec1me89eeceme89fHeemX77-ceeeemeX9X9eeecV-V9e9Xe7e9eefBnBeefBfHmnBnBnKBpIEpKxMSKJnBpBnBnBmgmeeX9cXXVcX7Xce1eXcXe7ee9eXeeeX9X7V7V77V--XcXee7ec7X9eXXceX9f9eeee997X9Ve7Zee7WaX5X2Be-cee17X--0tsUbtaT0ta5-Oc--7Xe-X7--OVUtbVT--QA9nBmcXV--97X9ememggnBecJceeXme-cXdABeXeX97cnHgeeI9IA9XcVX7eX99e9e9mgeXeXemmceZmXe9ceXemXmggf9mmnAI9X1eIHcXfBghBmf9BemcX9Y9Ve9--JmZeccXA9Xd9cX9VXVVc7-V-Xee_BnJhIIBnJnBmohBgohBcmmf9eHf99Hf9HmommmmV5N-MvxppxrIICWzsOxX--OV5s0i1mopMKppzTOaN-0XXceV--0lJ7-90mzBlV2N7tRof9JqUsOaW7c8bwrrJchpK9-X7PBfHjKogcP0Jd92SMUwUlxMSErHegnrlxI9X7cY99e7hSzxpxSIIUHozogmgecYIExxxrrrKpKrSrMMrrlxtyUtxblxUyTUbyUUSaUy6Wzttbbc5N5N7V7XWaT7V6aZeVWsV9nIA9X2BmcWc7ooc--f9IBomV-0cnICBeXgn90Wc5TOa7-1-5cX---d11---e
11 === aq.q6 ? g3 =
"QREc7lR7oVUYGy_KJOJKKKKuK4OKT_K4KG_u_GJJO_3K_KKKL_4KL__KK_4_LKK_MjzuOOK_KKKOKLKKLLUjzji_KKMgyzdMjzgzzzEszzyzzjvuQvieeid_POOvzkzvzy_TvuOK4GKKvyyzzydJQi_OdKKaLOLajdOPuueaYBzydJdPOybvdbjeuvizwzujuQnunl2wBnBE2-EYBz2nk2kFzwBzznBydnwznEYwnnEBnnwkyvwzEgznzzEwwwwznnxK4KGOJ2zl2nzifvwyw-J0GGJ042nvzEvzwznJEnzlG42zg02KKGFzzEzzeT-woKK3EvoKLOJBnBnzE2EznnwnwznznzpJKKKKOOKG_G_LKFwl2zK8K4JK4KKKKKKKKKKKKF_g38EBemXeeeeeemeemgeXeegf9XgeeexCxzzzoenErMroeXeeegfEzSS9eVcghoeemf9YBe9ee9eXghrzzzKBfIUzrbzUzzzbryOxrzzbbsTXe9geY9egeeBeY91cUy6z6xtxbxzbzlzObrx6ztztue5UyT6zzbzbae7UxyOzzbzzbbtzyUyUtzztbyUzzbuecZeBeXeeecgeV--1ViZ-00JJIV379xwOLKKgzyzK2zF5g4ccBgcn9ggepUxAprzztxtyOzbzzbe90f9cXX99V-cAQAOx-PFLqqmemxp9zzttzIAzrrzzxzzze7X9ZeceX5ece---AorF0B4uUghzzae9-6VjJh_UznK---NUXV1NBEpOLYnzlJ--0X1X--Vl4pk-B5KYEc-D29vazJ-HkP9DmexzxxzzzrbztbseeeHeYHceXV-NC5uUF-R5YYCyX-2Vpc0jCF--5lM7-12TuM-hkQrZrS9X7f9e9enrSxrzaUxx9f9zzHhzUxqOaOsObbzSxoqUxyUY999c9Xcecce7eV5NDrSOLauUwzzzzEGK4K_0F2Z6YfEUoefUtzUzMyNNe9ceec0a2zdLQdyjwynxKKFznpGGJ--1-_X-AW0ZpjvnzCKKJ--1309--02HO---WrDV1sGfOOjzzn4KK-0FYN1qP-2W7RtfkF6J8G-geeemf9gemegfEbqUrxEbyTgecOwUbbxEbyTTUac-H3crrjCLEE1KoQBrofHegeecBefBeeegfAACxUHemeeeeegxrSrzxxoeeXXe9ecdAzUomXexzrzroeXeecc711_rI9nUSxxKMSryUzrzUpxKx9cV7cceghrrJnJmhBe9ee9VUrxy0a5-7e7VVX-7XccOVX99eefKKAAMxMIUxzMrxK9XXXXeXceXceee9mxxp9oeV9mf9eHgmeeWsXnHcmfA9oenJf9XcXcOby999exKKzMIJcceYBggghxrI9e9e99pxzpHeccceX110cXe7cXWzrUzUxzzrzrtzbaOcVcceXccce9Xceegcce6emeZe96buXeXoe7TZhBe2Bmc6eIBdC9eC9fHcHcAC9erxHed90C9MTUzoh9ZjJeofIAzHghHzI9nHYACCA9VxIHcfx9gmmnEJrKErJzSC9xrrrtyTOaUa0xSxKroxMSSrIMKqUlc6bztWx51--P7OyOy0tcX997V-NP6WsUaUbaOaX6VTOzzzxxpHnBnBggofCKSpJxUUo6pzzbtzyUzbxSzogfABeceef9mpSzoppI9e7X9nCCKMMK9fEI9ee19mfBgemh9W91WuI9gf9e5eX17N5NUXc0a1nBenUHfSorpMKMrHXh9XgmY9nMJmV1nIISC93fA9gnKBemp9e9XxKoeeeA9fSMzrxrpMSxMMHorIKII9eecgeceeee9gmghrKKCpKCIJonMozKJp6xyUzSppr5OttzzzzWWtyN5ObcV-5OaOWttyTTN5VWWbbzzrrxaOtbyNTUUrrSMMSpxrrSrUxxUUpSzSMKonIOaN6aVcVNOzUrL17ccXccVPeccX7717cXX-5V0zbzJxOboUKrKrrUxxrrSxxrSorIKSrMpUUISxxAESpGxrsVWzP7XXWzrrxVNXoccWcOcX-6xrV6tx0zxzUtbtzq99777WWVUV-50xaV0tsNUbzpUUzp9nUrpIyOzaUy9ge197e6zlbbbzbbyUzommhxonCHeIxxrxrxrUSxrUrrMKoogmmecmeeZcceX7eXHeeemmmn9eedCzHfoeeeZe_IMzIpoxHXKzUJxxUoUUprza0zxxxrUtyOaUUlbxIMKKKoopCIJpJoommeeeX9A9mmn9cce9Xe9ee19eXe17eA9mgnCKpJnBee7XXXcee7X-99XXeee9993cXV0ba5-XV0aOA919HgmeeBeY9mmX9ememef9ggn9ghA9mXcmeecX7gpCCCBnAAAABnCIICIKpJonCABnBgf9hBpBnBnCCCJonBnJnJonCIKprSKIMKKpJpCIKIIIHrSMpJjJxMpz6zHxCrrMMUSprKSIrMrMUUMrSxrSrSrrUUyTUbbtz6zbr6xxxtbtyOtyU56tzyUTUxzrSpxKMU6lWxzqNUSxpUxEMKJxCJnMKEUHhICEMrHxSUMSrMSrSppppMKMSSMKpKBxMKpppKKCBnCBopIKIKCEKCKKMMSpppSSSMMMMSSKKKKpSKKSKSMMMSrSSSMKpSSSppKICppMrUSyTUztbzzbrxaUq6zttbaObaOa5TOa5NOWWa5TT5-N50V7WWbaUbbtaOX-N-7-1-170cTT5ObaOa5OtttttbaOa5N5-1510c5V--0VVcX-1-V51-N7X-WWV55N55550ta6aNNOa5Oa5OaOaOtbaOaOaOaNOa55NNOV50a5-T50WWV-N--7nBf9mcmgcmmmeBgmee7X17eWba11X7VX7X79X97Jc7V7-V7117X7cV7---V1-X7X97--7X111111711-VX77V7-UMMMSMSrN0V5-UKKCMxpprSSSrMSSKprxrSSSMKKSKrMrrSrMKpprSrKrSSCKKppKpoxMUOzaTOzyUaTUttWtzbbyOts-OyUbbztVObyNNOyTV-0WxWWaNNN7X7VXceXXX17-7WWIBnIBonBd9eAA9Vc7NNV1CIK9117-797X7VX1111WbWy0xUzprSSSpprUxrSxxrzTUbqP6zrSKprxzxzzTUUUztzztxzzbtzSSUSMSzprSrrtzJmmfrSrSUSzaTN756xKxCSSIKMMKKpSKpMKprKprMKpSKpprMMMMMKrJxSSrSaNNOtVN6s---0WV17N-V-0aUWbyN0baOaOaNNOWbyOsN70btaUL0xLT6o-UM6lX6brSppSSSUUSrppEF6pSSSMKKCKVUMUL0tba-USSUKSKSSMKrMKpKSKKCKpIKIM6rSSpxMSppKSMKSSSpSrSxrUSlwT777VV---777X7XX19XXX--7V1Hc1--N0VN570c6bzKMUzrSxprK6xMxxrpCKS5NTT6cN0zltaTOa--57-11-V7X7VcX7c7X77977VN-Oa0aTObaUUoOxpKpqP70btyOwUsOw776rS6twUkUOtWaObX6ta0bVcOcWy5N-5T96XWaWccZeWWtaX97cecWzUxxq1X7cVX77VX999750a6VOttw1XecXnIBe9-VZceX7V0zTT-OtWWbrzSpCCUJltWbbbzxzUpoxopxTUUxprS9zMMSKKxGtaUtzV177177cX7X7X997-OtWaNX150a6V6rxUxtbaOV-NN0WV-75-0V77777X711-1X195XccccXZe_on9c29c799ecVOWaN-55NP-T-TUzzzzlzzzsUzxzzrxAqUyUzuA9770V-5UzbzOzSSUrOVOac7WzzxCrSUMJgpIJrKIHgrSJxSrMSrSrSrrSrSrSrrSrSrU55-X77TOe775OxsXX7X15WzMcXccX-Xee77-VX-UzkOzSq7UbzzxzSX5OVNUbaTP6xzrzccccce1XXeccWzzsP7ce-U6rSzSzbzUxxxzxzUwUqXcPVTT99XXce9eeXzS9cXXX9XceXe9e9ce9cece9e9ececeeeeeceexxxxrHee7ece7Ue9omeeXeeeeeeeccX999e9eeXgef9eeXXXeceec5eXefC9eWcPn9WeXeeef9hzSxHcfx9cBe9em
12 === aq.q6 ? g3 =
"JJAf2uP6y-0nEiiuyywnyueuTbfevfvvjivivivjfvivviyvuuyEgzjjzzvviyvizvviuNziyvijvijfvyvgzvvvvfeu0-F-n5a_GG4KJGGG3G3G3FFJFmKGJ4JGGGG3GJJFJG3G3G323G--kLPeduaKGFGGGG443JJJJJJG--B-C0FJK__443-BJ-66wmpBnJopCMJpCCCIIIJoopKKICKCBnCKJgooopMIDOzzSzUzbzzUSyTUxxrrrrrP1XcXXX9Hcn9cceemece7cPIoeX0sWWaOWVNTOcTNNcN0V0V5-N0aOa-0V--N50a5Obyc-M0z3TPOdgBnBF0NOpxpMV7-M2mMiLbinz03F0sTx8mfrNT-2l6QEdMwwp-5XX7UMTP1V1GIuvaNn-5Xfxrpw5XV1GNTEfn4-_XvzjAAA9mfA9ed9fpzyTUzyUaUyOX3n59NTKLLKHPPPO_LK4iidea_O_QeideeaLOLLJG3-0eeddOaPO_OKLKzEznzjgnnzBykknByEYnByug-3332ElJ222-2wBko2BnBnBwwzwx-9Y6j6rrrkccc-E5ctEizpJF-aDYgSMGz-X10G6VyjiyuuPeiuzjivh3G3K3G--k-9JGFAPEIZSKBghKSMIpKpCJnI9gcXeccehHccoeXBeoppKIJoghIHnCJnJmemmecmfA9jyTUzzzbbxbV0WaTT-OtWWWV0zxtyUN6yUzSxrSqTUztaN71190V7-5V15VUy--V-lxHEg--33oL-67Dhyu0--3FoL--7ahw-LGYowfzu-0HFMIfF-aHWWwxxxcXX-E8ZrUdfVl--TIJLzSr17V0wcDLvivjysGK3G4XaJb1zppIJpBccccge7fUxx9eocX7cXX6y7Y99Heggen9nJdAHp9Xnp9IIJfICIBdCKKIIMMJme19eXxxp9X9VVfEMMMSBpooe7XCSBomccxxpHcrKKCMHmXXmcxoeX1mpJe70BrMJmVV--gxExIpJcX71nKCJmhCKKCIJoopCKKKHX8KHd9nKrKBj6xrSrKpz6xSMMSrKppwObaP-UzSCAICIKCIKKKCMMKKCpCMMSrrrKpKprUSprMUSMrSprKrSpSrUrUSxpxprSrMrMprSSSppMKprSprrSrxKSUSqUGbqUbbrxrSxrSrKHXXeggeYBnBgmnBnKCrJnKpIKpBnKCMMrSS9chKKIBeX77EIAE5OxIIKKKIIEKSKSKKSKKMKpKpKKSMSSSSrSzxxxzlzzUzzzzzUxrMMMMSxxxrrxrrxxxxzUzOzrbxzrxzzzw6w6yOtttttyUbbyTTTTTTTTTUtzIrzbzbzbba-71-VVV77V--7711-V1-1---51--1-1-V0cN-N5VN1e-ee7-1mc71Xe9fIBcVV0WbyOzxX-VV7VNN5TUzUu1ce9menBecmf9gxHc7c7V-777---50VP-V-N-0WxppSJpr6zyObzttV6rMKpUyObttbryUbzWaP0sNNOX757X97X7ce9XXXXXVc7-V-X7VX5-V7eeA9menA9fBnCBnIIJoorMIRObpIKMJpppSSSMSoeX71-V7777X97c5V-ccWV0VX77--NN55-N--7U5111cXXenBcc7fABgcX117X7c-gf9emV---1--XXXVX7X17579VVV117Xed9XecXX--WV5Uzz6zyUzrSrUUaNUlxtzXXXee1777X1e-5NOy--WV5OttttaTUzyUrxxtzzzlzMUrzzxaUttbbxWzxpSonBmpCCJpCKCIJpJooeACHpprSxaOV577U6sOWV-NNN70WVOWzwTTT5NUxryUba5NNOba1cc79cXX199X-91X99mhIHfJmXgxxxpHe9XccX997c7X0zV--V-N7P6k49V711-111X-77cX79mmeHeccV1mdbn_Uno-DKNVSo1-O9kaiKKzzEzpK-8_SLEzzzeeeV1Hinzjh3-8_UsM9mjtyTVBHk8AfiyvivizpG43G3GG--0OIzV2mnjMaLEBxn29mc4SSpprSSSUprrKprSSpppKMMSrMrxrKIKHhKHfIKKpIBpCIIJpIJnIKpSKJo1AKKpppxprSprpMKphIKhMUSrCKMRpMKrrSMMMMSKUVUxxUxSJe19efAKKUbKnMxKKUKIKUStaSrUMTUrzbzxxrSzzUy5SSKtbqprTprzSxxSrBXe9ghSrMMUyUzzbySKrUKpUSpSUMtV---D--0aN-X9997977VVe9XD-19XX1-9XcXXXXYxzUttzbV-7VX78by0rUSppKMbs5-V77V77X-X71--17-X-7V-0WWVN-6byTOrJepKpSrpxrUSSIKSKSzrrrs797c1711ObUSxxpSSSSSSy5--7997VV6z_rrSrxpSprs-7VX17XeXVXN-11-TUUSxztyTT5ObzrSSrzbtbbtUKzrxrSxzUrzUzShKhMKrxzzzxyMtzqnAA9mgfAAACKICBnKzbbWWbaOtbaOaTUbtyUyTTTOaOa556zyMxrUtaTUzrxrrrzSzxzbta5N0s-ee997cX97cX7cX7X771-V-aT--V17V7X1--V7Xea6ty5T5Mts5--5-550aT55NU_ySxxta5OVD--0VN5NND-N--8a6a5OsN1og55OVVOta-75OTSqhCMrBmhMbbtzzzzta--NN5-8Us0V-N1eD-XN0VOKppraT18zs0SyOUaOa5OaN1-VcX7X5OSpSxpMSra5NNObV5-N19cVc-W_KMSrrxxztzsND--MJpKMrzb_pyTMzUa5-0a5-X-VOIMMMSBnKKSMrMzprzaQBen1ceeXcccempprtzUUSv9mmfMrxzUMxpUUUrzbztrxyOzUxrrMzbWbJppSvC7gmenA9mgggfABgnBf9nBppUrttbzUzCKrSSxzbaUxPfMSKpKnJhRpIAIIKrSzUMMzxztyTObaTOWWaTTTUbzzrza5ObaTOWbbbUrSrStzyUUzbyN--s5T2rs-1XeXeefBn97VfBnIBemf97cXcX7bWV1111c1eiN7f-ABa6s19n77X7g97cceX7f11UzUppry-N0MMAIKzV4UW_rJoppza55-TMSsNObztaOa6KzV-77N-SKKSUzbaOaOyUtzzzyTUbtzxrsOaObtttSraOWaObzzzzz_ptaUbyMzzyUtbVUyUrUzzzzzUzzxyQMzzUzzzeeeeXee9Xeee9eeeefKMIKcf9ggnABemefCCKzrLf99X1fABgeeXAKSSMKxxzUSrSraMRpSxrQA7X7X9oopBo1N9gnIKCIJmmmnKIKJomn7emfMBc51997cenKMUzPmegmfMMSzzyNA9OzzUUIKMUKrKpSSrUrxza6SrMSrrMSrUUxzrxxxrUSSzSSxSUSxSrSSrSrpUrMMUSprrUUUUSpKrySzSrxzzxpzSppprrzUrSpSSCSRprSMKKpMKrMKKCIIIBohIBonAAABnABmgemhBmmmeenBnA9X9ecceeXX7Xemmcemgef9nA7en9kecee9eXeX1-enBkeX7XeXce92VXX99ceACBn9XX77XVVV--X7XemmgeeXXX997VVc75OVeX9hAAA7eeme9eXe9Xeeee9e9ceemmmmf9meegfHenBmfBnA9mgggemnBggfBnIHmmekeeceX9e9cXXXmoeceeXce9Xce99eXnBpCBpSrSrSrMSxzzxyeeeeemkeemgf9pprUzUHmeXXem99e9eceef1dbs17ecepKrMgg9XeXccX-Xeen7cXeenBmnBghCBgnBACCCMCKJohCCMrzzzyUzzzzqognBmnCKprMSMACKpz_wmoogepCKrMSMStUZkeeeeAH15-11-X9hCKMSRomcgpKzprpprs0z_rKppzrSrzSpIKIBgXmprrUKIKKrttpKzSUBomm97ghJpSyUzSzzzUbzzUtrzfAI9epnHceceemegghUUzxzWbzzrbTopMSta5OVOrzzUSKUUxrsOrpxQCSrIIKSxSrSzSrzUrUUtttztUtbzxxMaOV-sOWV5--NNOUzUzxzxzUUrSxrrUSrrSzrrSxSprSppprSpxrrrUUrbbtzrbbrztzzrbbyTT6bSyOa
13 === aq.q6 ? g3 =
"C0DX0NP1V--QqeadnzzjynEEzzjjivdivfezjj2BBwzwnEzzzzzEjnnvYBBBBEBnzz-UV-hflzUUSrrUzSxSxzk0a1-V50K-0pMiudevf-zvfeBnyviVF-F33-yzgp3bVV02IKUrHnUzzpHz5UzUzSKrUrzbyNN-OzzxzUUUSrSrrrtzttzWaOaTUzSxxaOaOxrKBnCSKCIMSKKKKIBpIJoonIJopCJpJpCCCBnBggeXn9eccc9X7geXXn9efHfBnABemcXX9eece7XHXeXecegeeVV1ee9eX9ecc70eXcXe9enA9fAABnBnJpMKpKJnBnHmmeeXX7X7cceXXce9eeccXVVVV-VeXe97Xcee9f9eXeXXXXceWVWBc29cX7V-6aOaTOWWV-1XX17-NOtWaNVnBn97X-7cf9mmnBemXgece9I9eXXomgeh9eX99eeeemf9BmmeHgeeegfBggmnHoeABeggnIBggeeeecVI9eeemeXe7cX1-ZmfIKCCIJooonIIBnAAAA9mmgnIIBnBpKCBnCCCKKKMSKJoonIBohBmnABnCABfA9gd9mhBopCIJonABgmnJopCCKJpBnBnBnCJnCCCJnKBoggpIKCKJ-UMSGxrMMKKIIISrKpSKKKKJopCIIKKKCCCBnIBjSrSSpKppqUI9cpKIKrrrKSzyUpKpMxS5UKxMSrSxxxpSrSKpIrHxrSMSzHfrxxzUUUSxrSrSxxxrSrrSrSrrrrrrUUxryOtttzbttyUzzbtzzUzzxzzUxzrTTTTUbyTTTTTUbbxy0byUtzyUzyUzzzzxzrrSrSSSppSSMrRN-OxpSMztzbzzzVUrLUSpprUtxKbxBfrSKJpKKJonICppKHnKKJoopKISppSrMKrSrrUSSpxxMSxprUSMMSSpKMSttzzI9f9hMMMSrKSMKpprKKHnCSSKpMMSSrKKKKKCIIC9gnJonBpKAKJpJpBpKBnCpMKKCKCKpKSSSrSrMMMMKrMSSMKSSSprMMMpUKppSJpKKKKMKSSppIMIpKKMSKSpKMSSSprMrSrMMSSrKppMMKSSMSSSSSprSMKKSKBmgprSSppSIMzxCUzprMUyTObbyUzzzaOaUzzzUtzzzUUqOaUxy0bzzzbbtaTOaTOaOaObaOa5OWbaOtWaOWa555555NNOWaOaObaOa57-6WV0WWV--O97VWWWaObbbtyTUttyTOaNNNHV0V-N---9-V-777579775-0taTOaOaObyNOa5OaOWbbaTTTTTUztWbbbaOVOWaOa5-5N-7X--V-517T7---7-Wa0V-X7ccX7-7-77VV-5-7-5N17X7XV-0VN5-N5TNNNNN50aN-5Oza5OaOtsOWWaOWaOWaOaOaOaOaObaOaObaTTTOtbaTOtaOaOWaOaOaNOaOWWWaNOa5NNNN5-Oa5NN0WaT550WaNNN--N0aN7--0WcefIBf9en9geecmmf9eAAABgee9egfBgmeee7cX7X777cce5TTT-VVX1cX1c7197X977X7Xe79eX15hHX11717-7-V-V71177VXX7X7ce-V-1-1-----117--cXX77ce1-VVV-0u7X777117771177V771-717VV-977X77VVV-7X-OWxpSSMSrMKMSSrSrSy5150WV0V5OzJpKCKCCUzSrSSSrKrSprMKprpMUMMMpKKSpzSxxrUMSSMKpppSCKKSMISMSrMMUUrrSrUKSSpppMpSSSpxrrSKrSpSMKKJhSMKppKKppSKKSSprxtzaUTObbaObzzzbyUby5OtzrtzWsObbbtzttbtztzaTTUs-o-9SuvkpF---4GN0--Akuevkk-0Z-5DzUUzzUMMSrUUrrxzzV0k24nbEF-72uPs-31lfR-X0zvBgpOsN---Fjh-1VahUR-033plvivC44-bVp12CUzzrxpztzzzy2A979eeXd9eXXVGkPch_OLJKKa_OLujjznwwkzo-Eno-q32WRrMKpkV7-V--7jXk2-IvW9e-7xySpV2kZ-vaazk0-HWAOjKHprsWxta7ccV2FavYivl3F2cIsAppKMwN117X-81g-ifoF-L4N9UrkcVDFfPz___bjvjjEB3ByvEGJKK--WQlvV0kn8QjoF0NPnGrScX-E2V6yPuEF3-D6-ISGX-42b3rh-0NYH_ooy-3P8eEOJFGGIB-B-0-2043LaPdaeeiZ30003G002j-03-JGFGJ-4K-03G-3303330NBzB-UzzB3DvzuzByyfiivieivifevefjzyw-D9vlxqX-A58vaOYw-07nF-rFPV4lbM4aaabBn3B-mC6fBmmjSOa5N-25o35o--CiYN-gQSZPTw0--2QiX--66YJ-9FT6CN-BHQ8jadHQyddcyvG2232-F-8Hr8k--dcfk6dIezn9YpIBhC5Oa6y5UrWZmX70C2JVtUzzp4J-mXEjworrq557e-6IQmyv4--dmmEV-JuCMk-9SVlk3KDxRuPiueObi_JGTyycnBk--4-BF-eicPos02KqRDLPefeTiuiviuk-K33F-----6f9qfBnUWV-jMD3iO_aOaPOiwBnBnn--0evOEn5U5c1_T5ktLKKGTvjzzYp-w0Rg9s6ABmeWBmghJonKxCIKIKKSKWa6zzro5Uxltbe9e5OtVOWaN-N6w6y2ABcX17cXV-SWU2PBo-alHDReopsOa-OOYdiPPPgnE00--BsPu--Oo5J-5oKjx-AxeUxtaeeTeeffeuePauuvivijfieiivePgyvvC000000-3-3G35JG-2BF0-30-2FFFF--3hlWISD1-ER5o5evV0-0eu7_RjSSprzrSrcX7X7X7X--6KDt-HirDjBnBnKMba5551-3rQbzaaEBnpFJAmhxnKSSSSKKKKonIKKpKpMKrSKIr5UrNV79V1----V55N-1V1-7-7-X79-IUBriLagwC2-3jm7YKkV7jUvJLaLMeudeP_LPK3PfeaLeaa_F8aaLLOaO__KHdOK8__KeePOdaaieeeiiefifeeddddaaPadOPePPeeiiveueaeeivfeiuyzjvvizEBwwwzzEE2-kkBB2-2-kB-2-B222-B-k22-BB2-B-BB222-k-kF-B22Bk0-F32nyevg220-FF-0--0-F003G-G0-Cl0ab9eefxzzba-AX5ODuklF2RKFUonyUUaPXeV9sgwrddaLaPNn2BnEE0F3RULpn9opxbbbtXVe-Y_1riO_LKfvEink--0BfCIpy1V" :
14 === aq.q6 ? g3 =
"EcA20EP9t--46idaPadePOddiaeuuuebieeiiivuO_aRnufezijzzvzjvfuuPKJFJGG3GPKGPOaTiiiedaduus2EYuiedn2nyffdv32--0202EzeRwoG--Ezzjevck20202zeufik43BFBFK0G4-0_J--nyioC03-0002-n22wyddyjfzven3Eyv3JJ20-zynnEyjnnvjizjjejzyy_wznnBn2zvnzyvzBl3GG3G--23FFo0-wzBB8m--ZISrMUUSpzrxxrKrrSKpppKKIACBnAA9mmgfBcee9cXef9geeeXVf9999199ge17V7Hgce7c15ABee99eeXegegegfBgfA9mgomeecXcXgeXceXnBrxSxxzHecefAUUJceccgce0AxBeXXXeceY9nTUJgoepCJnzzzxIBfrMpIJmnpHmc58EJmnrSbrMrUKJnIKxrHgrUzrxKCbtzprzxKISpxzU5Ulzq0a-NOzzxxzSxrprSSpxxrzrtztyUtaOaTObzxpxrUyObaOxMKBn9pMKICCKSKIKKCMKCACBpCACBonIJnKIHhKBpKBpBonCBmnHmgeme1ggeeeX17Xc7VY9e7emdBe97gfBfBfBfBf9e7X7cXeXc19eX-ecXceX9Vf9cee7V-P1e9cecX7e9X7X-0XcX7c97e9V0--O6glDk-BjnBnJpKKMSKrrMSSpSSrxMrSSrMKMprSKzUzzSI9cmgonCKIJppI9YKCKCKKSKKSMMrrUzzzUSMSrUUUSzrzUzryUaUyUyUbxlzzs7-V15X----V---NNccX-ccc0y10WeeeeV--70V6xUztWxMSzbbc6xta11cX9X7V7-X-eHeggnCISpKHX1V1X-7-Oa-N5Xe98HeVVVeeV0X9711-3--XjabvBG-0s7nSrxGc9-BFOunededziszBzG0-G-KF2NDz6rSzzu9d99-0FVIObk153LiReenAUbbxzxzrpxq--e9e9e-A1JTaukCF07J23pq7---cVM--WN3QV1khy_awxF-H4kIRjyV-oCGnvjx3J-16-Ny-U2iSDjyffv33G4F-CWtG2GxSUlV79e--2nbB--6j1s0REhiviizkJG4-4X-vYML77-ZHJ3Pv3-1cZeNponGtV-V4lDIreOiuBl-3-DAESjT9-r4cgTLLKKOaQjzyvgn3FBEB--1pnH-E4zQyafnG--5BKbgN-3Oxws0iCDazIKxKMMIr5OVX1V7759-05hoa-4YPwIzTXc0oS4-OaOaanwnB0-qYoDA9pIrzxzpzpKzzzzUzrWVf9cP1ceceVemcc7cV0H9uMvF-eGU9USSbuX975JYvsOLKOKKK4OaLJKPueTzjEzjzBn2zj3-Bnwn-B_HnzBpIzyNX7V1mi7bfz3J09L-pSKKCSrs5P7VX7-YBjWieueuusF-F03-0dhx_nILN-03vANuaQYl---6b56-jf6VcBknBBn-Bk2BnEBkBkn-BnBkBw-----n2Bk------kn04GKKKaOaO__KKKPLOKLKGKKLKaKKKKKLLKaOOLGKKK3KaKLKOaKaOKKKG3G43G3J33F3G4G4JGznnE2--G-G3334L33G43J-33JG3KG303F433GK3K3GKG3G3k3GKOffaF--GG-FG3---F-3I-3F0-0303F40GGG-G03GG4FF0--FF2-----0---k-G-F3--04343G-G3KG030-0-Gk-2DwkG43F3G0-30-F3F30-00-G30-0-F-3--G33I--03FG3303F3-I0--3F-nDtfefeuvfideeviivfiuviuzwn--B2BBB22--wn9PeLeeLeaPOfjzyvuiveuifhfifiivevefffjiafjiuifeypeeeiivejEivjiivijfiuieiiueuieeeeeafieeeujvifffiuzziviuzivieifiififPivfeifivPvyvijviefivevevafieeaOeueevfeeveeeuiufiaeefifivizizzwmznEzzBnEzBnBnznEzzzzwzwEzwnBnEnAyzzBzzBn-nEnBznEwzzwnBnzzEEzBznnnBznEk--22B2zkzwnnwnzznBnnEzzzmvwEEBkBk-B2znEzEznBn--kBnBEnzBzzw---4--2-n-RB2Dvfzn0n-kB2BnB2nBknBBB2-n-3-KK3JG0304-G43GLJJK_K4JJJKJG3F43G03F3-Fk3-3-k--FLOadeOaOaOOaPOada__aOe_LPaPOK_KOGGKKKKOaOKKJG-K3Gk--nB-FF-3Rk-JGGKaPPeaPPeuieW00-FF3G3FFF--2-J0-GJ43G3JG-0KK2-3G3G-3F0-3G00-F4N2znB-3jEzzBk-ivzzfjEBAzievivivieevivueiuiuufivzzzvivzuivivjvyvzejvjwzzvyvzwnnBzn_ejEBzzEB2-LOKOaMBBzzBnzwzizieveefifieizzzvyzzznyyvzznvjEzzwzBijzjyzznDzzwnnEyznzznEnEEw2yajzDjwBvnznEnzkzEznivvheejwzjefievveyzByvnmeziuvfiyvyzjnzjBwnkzaeO_PO_dLLG4PPvjivjivjiuviyviyzjwzwnE2zBnBnB2-k--4222BzEOOaeiejxPeeuuuuqeuaeeuuefifefefeeffeuuifeveffeueiieuvfiiveufiivvfeuuiuffieeuufuffieyvjiyfeveiuiffifefieevuiivfjivvjwwnBn2BB--BBnnBwn--2-k2BBwzE---0--0B3F-k2-kBB--k---JF-3B---3F03-k2--wkzEn2-B2wEEE2Bn0BB0-kknBkwE-kk22--eUSCSJrLT7V71K0YLtevvyl3KFzwGJ-DWcRRqP-hG7KyLafizivwwG03G0F-acjpSSKy-VX-IJltLePvV---PeSVrBgmoxprMRTTOa77X77-0N3vk7eoElnII93nzSKBooUSX0aNX0a5V-1pfNUugBJ-9iOdUNV-4v1z-Sfs-zBgmX8MKAxy5NOzKbse7V-0U-Fk-1y-lV-4x-6--g6bj-3L4kbaTYn2J-apmECIJlaN--MR8FTPQYEwpGF-2W9GV-62Hz-7i5cMKKGV---y2dwQvz4K-NgIMwmnUzJopKCCKKIJnKKpKSKKSKMKrMMbrWbWtaT6a550VN---X157cV-VX77VVX7ce7V-nZT45OKJLLPzjzzBz2wLJF0I80TwpCpzpOWa5P7eeV-9fnj-3pOZ6JOX-2f5dcs" :
15 === aq.q6 ? g3 =
"CoE-7lR-YWRa2AEJenMxJpbqTObaOBcX5NeW_xnVto5UUzzrzUrtxtxrMKMUSSyN1XXV5NNOtaUUxzztzUxxpUSIBpSSyNN1aUrSpCCIJpKs50WVNN--7N6bbzrzxzrrpSMMSSMSzs9X7-X-VVVX99ccVVDUV19D--998a6rztVXaOV1771-78VN0V0V-7V---YV7Xh17XOWWV0V6pTOs-8V7XXpCF5-N-N-N-N0VObSxrSrSUyN-aNOsObrxMABnKUaUs-V1-N5NUzrxUWbzUSxprzCKHenMtzKoopSSSzzxxrMCJmnABegmXOs1ABmnCSKCKIC77gcepzSKBe9XfKrHh9eprxmnKMKLmehKCUrSrII7XnMUSxrUSIMpIABpryURpMbtxrrSrMUWtbzSnKKABgnAAKUxztrMUxrsObWtWzzUttraOtbUtbbVefaOrxxpStySStzVXaNTNN5SJhSry1zzSgmpSM9mmgofKpxryU_rUSxrPXmhMQIKSxrUrrxSxrprKLpMa-2V7Va-OV1XXAI97ee9m8a6TNSxSzzrtyTStbtzyUbzzbtztzzzyObaNObaOyUtzzaOttyUMy-f_zztztztzzxxrSopKprKKMSzrzzxzztttyOtaOaOZnBnBmn9mmmpMzbbzWaTOta5UyObtV9eg7XnBNN-7-ObrTUzztaOaOaOaNOa555-4KCCCBnIBnBnBnBpzzSzzxzba-7--6WV-1--771-VV------71-----NN-5---OaTOaNN---0WWWaNN56bzzbbaTTTTUCKSSprrSrMrrSMKpKSUUrSxzzzttaTNOaOVN---VV--X--1N0WVN5-7-0aN79enKBmVX9e9177-X770Ws7VX-WbVccOa-7OtzaUzy1WbyObaMxyN6UV4rUUy4zzaOaMWxyOzrzxrrTOzUUUrztzUzzzzzaNN--770aSSSztV-6rxzbbs5-NOUzzyMxzUxzV-1X9777e9gf9ege997VX7X9X71MMrV-V75-gnAHommmgf9emem9eefBmenA1AHmmfCC9h9m91AIHegn9emnAABnIBmV1mmegon9f9mXenI9fbV1ge7tzV--cgoon99gc0s76tV99nCLo1977Ebs50Vf-AKJcc-1fMMKr9c7-Aa-1mpBme9c-5OWWV-XV-50a0VVUV---1N18xy11--V1717V-0a0VV117V7-0VcWaN7Oa6aNN--OVV0SrWyUxzVe8UxyNN7X2bVSMVN50bbzWVXhH7aNTSraTObbWV0Us0WVOaN55OaOaOV5-OsND0tbzaUrrtVXX6rrV-X91V0V-N-V7X17X99f17X1XXeemXcgeA9hBce17XpA17fKKCK9e97hSrSHpomf9ABpSxHpKIKHhHhIJhMUhKnKUrKKyICCBnABpAAJpKBnIICA9opBme9hC9nCKQ97-XhJmfIKBhJoXA9empmpHhMTehICIBehIKSRkgomfKQ1971hKxQBpprSghCCJonCKKqpMSpBX17XhSnBopKSgpKopnKpIJpKSppIJprSzzKMTTTUQKMrKrrps5-KpUKKSSpMppSSKrrKMI9fBnBpHnK779nAMrSxzwonBmXXppQAI9fCLmhBop-s1-WV1hKBAJpBofBegp9mefKrpqfABfKzbpIAKMKHpKKBpIBpqmpKKKRnABooppKpLmnKJpCBpKABoonIIJpBpBnIHVX9e9f7ceeceegpSRe7f9mmonCJpKSpSQIIHn99cXee9mgf9Xce97V-5OV511711-V--7X1--MrSTT--VcNUUWV-7971--X77c1-VV-V1---AJXN--N5-7eYWs17Wa---cXcWs2aOVgc1ca0tVVD---V0V--55-1eX7X511V-8V5-ge9pMKpKJoepIIBmegXc-fCBmgfCIABfIBogmnAC1gnBnBfAABgm99ggefBXXccXf7VXe9XX6ba-XXX7c91X7VV7X1VV1-D0s55--6USrMSMSrWWbzs1menB1N7VUsN----2bVemACUSKKBk-VVfICKSpg9777--7hCSJpC-----bsN-OaOa56rJnIKT0a5SrtaUs99150zy50ty-55ObaOzbopHpMWa555Uzs9ef79gf9eopBcgnKRkAJomVa0V1da5-gnIBmWVVVWWzV-VXAMLkVVXNOVza-1hRmVNEtSrrpMSy17VTN1mgX7X2yN56zrMTUtztzSxzMrStbtyMxSppKST-V-UTUraUy1Xe-OaN9nHpKLegA9a1ccX1nIBcXXXcXcefA9gX7VVzs9XVbzyUVef-Obzs91UV-e9WWaUWaUzrUSrUrpzzUUrsUrs7efB999e971ceXX9ec7c4rMyTN11X-SprMMMbVcYa4xzzrIMpry1X-V19ge-zza5OzMUUUKpKps1-1OyTSzKMKnIKKSy1V0WxzT19XX-V-Xcf7gekcaUby19f9mdtyMtbzxtzSrWUzrSyOzzbrtrV9gXf1me-eecaTMs7cX8aTTMxSrMtrxtzrKKs--VXDOxSSSSCMUy-XUs7gV97V6tV6xprV7tVA8ySrVEzzxRopzbVXOVaUzbtzKopxRpMrV5StxzrzUV7TOVgiOtbaUzba-emVOtbaTObtbzbztbs9emgf9fBggf9mnAKRpgmmn9mmn9egge1-0ttV9mmme6a-iUbbzaOV7NSs5O_s8baNUVaMT0brs54SMMUICMaNOzzMsD1eeccXUSs8WVObttVVgfAIV71g7XmkXtaT2rxrSryOyMsAxs8a5UKtWWxpKztyObWs1mmon9Yy-X7N9on8V5OWVaNMMSrStVXVcV0WaST-aN55OVfABda6bUthMSrT17XN1fVU_ttzyUwprs2zzbWa6s1eopAA99eef9ttbyN9gcX0y-VDMptzs9cdV6s8WvKy0zy171OsUxT0V2brBpMs8s51kTTUxzxzxxrV17es1mfA-egeiTTOtV55OtttppSzUMV199-8bbrUVcAtSrs7XX7gnBnA9eTOs1cT5T2WxRpzbtyN9bs9ABkYWbbaShMsOWt_QMIKKxzT18VXTTUT-1hPecVOUVbaUzUU_rSSUVVX8tzzUT-ce9f9VemeeABfB8a5UzbWWWzzbbs6tSrVVWxrV79f755OWtyUs1-0aN-OUKMpry-c17aOzWUIMKprUUIMa-1X918V770aTObyUxIKSIJpCUVNN5--sNOMVN56_pKCJpSJoonKMVNNOa---OVsOptaKMT55NNUrKxxrMMT11115N7s9kc9V9VttMT0UTNO_xU_nJpUs7NUSzzSKKUMUts1e1T-c5TOVNOaOaUy2V50_zSUVX119X7USxs7--OzSCUbbKSzsUxRnCBnCCBnKrCIKJnIKM_pUVN5NN-7T50a5OWV0aNNNOWWxKKMBnAMxpIKKIMaSxs1X6rV-D6V-sT-UUVX1e9Os7zy-5SMUTOtpKySqpCBoe9nCTURnBpyOt_oonBnKttU_zV7a-5-tWWWtxxrqpKTOttSMsOrSxhBpT6bxSxrtUUIKAA9nHpHnBgeecf1ee9XnMxzxrUzUQCUxSs6SompyMs-0rSTUxtTMzzrrrUV1-sSxs777UrrrUMUtzUpMJn9e9ee-VhKgnMzUrynKtWzrzzzUxJpSKJnACKKs0Wba0V--UTOxyUrxzxyUxs-xyUrxzrUzprzUrpzUrrUrSyMrUSrrSUUUSxUaSfMT6xrSzrUrUUby18SrSrxrUpMUTNSUUzSSKSMSrMKhSzTKSpMLpMCSCCJopCIJpJonBonIIHnABggnBnA9nBf9geeg9ecce9cf1e9mm9mecf1eeece9X7cXXfBn97V9eA9cX7XfMQB97cX9997VV7ceXXnKSxxpSKxSxzQMUtxxhUr9Xs1AJmhUzUUSzzKSz1hUU_Sz_xrrSzUMUKrSxprqnH19pSKSpBpQABhMrKSxrKSzMBpxrppIMygpSrBopryKpzKy0nMMzba0rrUMStUSpSrMryMrxzbyUUMUty5-Ortbs78V77X77--Xe79pHfBg997X7X7X77ce-X7-zTOa0VV75TUUzUrrxSrrUrzzwfACKr
16 === aq.q6 ? g3 =
"DwCd1sP0j--RaO__ddedddifv2EEznnnyfEeRwyzBBBB2Bn00-17-2fEMK9dCrtzUrrMMqN-X-789V----Sf-T--yfzIrzohrxy6kX6rSk16k7---11J7Z-35CISoOxsUKESpEP6qOV6pJp9mec17cmhpxUSogfBnMMGWxptyUUzc5UrtttzpoTOV6lVVZme-gcfBc5cUrztbV73cWztaEO-1I5dLOfvkygzEyaOdzjzsl2knvg2EW2zEznvzzyzyfyyzzvjuMyzdzjivvvyyinyaTVyydzufvevjgwBoG-znzdiEdbg2vkyjEyiazuK_4OGaJaPjzYnzzjBwnvyfiigEnuP_vjuiaOMdezeififiiEfgzfusnEeO_ivviEuvjzyzivivivg3EjuyjiezjjisnvvEffvznviyviYEYyzjygnBz1_Fl-zivjEzyuwnB2z0434-4G304-44-CGJFKJEK42Bo-38G-340403LK2kl44G_GFn-G402l2x2433432vuvfvY4-l-0-FkF3G-J43G3FJ3-G5J2---20L-Y-8CqLKOzvEjYn3GF5N0A3mrIprrIryT1Wace1XV0F2MKYo-H05ahSVV1R1RHOKefiznn0-z4KUy5MEe17X7Xa17X7X7X7X7e7X7-17Xe1XeX1VXT0aN7X7X9X7V19X7V17-Xec7X-7X77X7VfBctaT-17917-X--7V0V-9Xe19X1cX991hJpKJpKMSKMSKUIMUrMprSrMSrKMSKrKKrMSrSKrMprSrMpKMSMMpMSKrKKCKMUzrxrSUMUKIABceV17-XcX7X7917X9X7X7e--0aN-7V17XcX77eceVX7X17919X1EzyTN5T-c-7X77X7V197XcVXN-7V-17-X18VXD---X7a11--7a17-99177Vce91X7XX1cVXe9XV-N-7a11177VVX12V0V-VX9-N0VVVX1-1171777s0V5-N7V7Va0bVN0VUV-VN-2Vs--a-NTN0WbV50WsN5-N5-N5-N5-OrxzST-VXcc-VN-1N5-V51-15OxUSxUrxSxSJpMs0V-8V5Oa1D18V91191X11-VVX19nCSSKSSSrMrKQKpK7cXXX7Xcs-1X1VXVV7777719-csN7714yUSpUSSryN77c7X0V-16a0VenB5-D0WV9X-a0WWVN-gpC7X-gm10tV0yN7NNN1VV-N1mm-N--s-7WWyN--fLocccAAC9555NUsSpy-Wa555-c--hIJpCCBmg5NN-NNN8_y--N0VD-epnIKCCLVXYWV-919prKSC9cV77-V0Vc11111TTUVVgkf1991D-e1-ceXX7X-WWs9cXXgcUxy10Va1cXei1monICI7g9-XgegmVgem7X6xyUVc8bbta6bbtrzMST--15NAA9egemfABXnBm9n9XmfBpMI9mggfA1eceeegn9eeXe9AIBme7g7Vecg7dV9mgecVfWzzyUzxSvCMtbtbzxtUryOzzttbtaOaTOzs97ea0VenBmN5N-XN9X9XiOa5ObtaNNNNOttVgggnB7e17OVN0WbtT-tWV5MV0ztbaUzMy2aOyStI7fCMtxrzzbKrUyUa5Oa0bUsOa1me7f9cD-1997-VTOWaUV-WWrzzxprWzUrqnBnCKrSSzySSza19Es9aOs-c-WsOaN50V-NObttrSSxzzbtyUbzzUUzUtxrUUTUyULpf7hKyTSBpMzpompqpSxUrSSrKprUSMMUTMxSrKSKrrrppMKMSSprSy50byOSzaKgpxza6zUtbz_zUmgf9mA1egmgf9pMsOzbtzMyTOzzMbttWy2WrKKIKSKSUtVOsUCLnKUtza5SzUxSSrSSzUSrMrUzMttSxxMSSHemgnKzUSzrzxzyUrtbbpSrzKtKrSAMKSs-T---X55UbsN9eem7iObtztyU_rQMKrUSMzzSrxUzzbyUxxyUs18s1UaUprzxMKJhSrMxpps-V-798VUtaOVOVD-XhHDN-6V9XXm7ce7VVtV-951-Ors18Wa-7-177--1-UVcOyUbzMTUbURopIKCIA7f1hMShJonIMTUMUSUKKUMrSrRchMJpSryOxxhIMprSJpxrs---Wa4xxrSprKmpKKxUSrUT5OV7N2a--7-ztVYVXcVV2aOzrzzxrSrbrIMxJogAMSMSUUSrrKJgpQJnAJX97hMMU7fHeX-en99pSrxwopCICBmcXXccXehSrprUxzbztTpKJonKCBfHeXnCLpBmX9XpSzrpKpABeepS9nKnBofKwnBopRpBopCJpKpKKMKIKxzSzzzxKMSSSSKxKSIKtTUWyTObUrrxzrzrbrSzrMSrpzUxySrxxzrrrzzbtztzyMxrUKQKKSSppMKpSKpxprrSrUUSxxrMprrttVD5SrV-a-NN71-cX7791-77VVVVX71-TT6WWbWWWVN-NN8V711-V777X11XVcccceXVXXNNN8V-15-9-VV791dV1-VVX7X1-sNOtrtxtxtySyUVNStUrUrrbUMrppzzrbbry6pKKrMMMrMMCSUUKepKxs0aTTMUUU_rMT-OVN-6T-7-a-777V-5-XMxSSxxrxMU_pzhUxSmpra6QKUbSyOSSnMxSyUKSxCMKUtprySzrxxKttbzbSrbTN0xzUKBpyTSrrMtttzprrSSrMSpprKCILpJhBhIBonKMKLnKICJnBgmmpBm9mnAABgggmeommnAAAJghKKKhKgmpAAJpIJopCIMIMIJpCKJpKUa-s550V2VN50VNT0s5OWs6VT5NNTTTTTMyUSSxQJpJpAA7fBprxpttWbbSSQKSSSMMzSrt_rUUbUbaMyTOVzTOs7777N70V70_pzKKzbbSJpBp11hIKqnKUtIAJmnJnJmnIBnBnJnKKLpBnJhI7e9778V1N5-NT0VOtbaNN9gmmmkfICCACBgonCBpQICBnI1fJo9pSQJohBchKhCKJopSMKSSMrSMCIBomooenABfAIABgnIIMtsOaObbxI9mmon9gnKUwpMJpJpJpBmpSCShMKCMKCBpCK10V7-77X1-cVV-7hKKCMKrppMKSKpIAKtxzxSKpxnHghUySrvCICBfCJpMbnAIBhBgompIIMC9mgfCCKBoonIIICBfIIICBopIIIKKCKKSKMUKpKxpSSxxMUMKKSKxpUpKrSKSKSKnICCJnCA1999-1A9e-7-cXXX17V70a-f7VV-1--7XXm997cXX9AAC9mgoekccXg97XXABmkf9f9fA9emXn9emgmgonKtxgnBfI9nBemef1X9-9gn9meeXA9eemegoefBmgnBnC9gnC9eeggnCJhBpBnKJnKKKKxpIKrRhBhAKBhKSKKKIMKKKF7Z2MkT__44OOaO__O_LLTbYvkyffBkEcw2knyaaiBkyEC-x-nl3-3VQ3QMsc-O-txaOjzzk4K_-7VS-vCSzc7V0J2qEPevjFF3F--6mTV-FGRlV--92TV0kLotbx-a7AuPnIUUoxxzbzrKrpKKMSSSlWxrUsWtzKlzTUyOzbw516xSUzWbsX6wNgc55Xc7mcXmgmeJmofomXXIBcYHcVPXZcVTUceX1d9me17ee9-A0Y6qioC-asBoenIBjSUIBjUSJe9ceV7177eV7fC9gpzzHeeICyUxA9efIrzM0zKaP6kOxIMtxzbxBgef9gfMSxyU6ttaUttzGzryOa-OV1XCJc9VcN7---40ekqQ--NDEDyV--Red-6VumnMUacX--0pcZ3P2fIBnrozKocX7X7poxognBU6zbzojHxISryUWX-U0XV--V9YHX7--6M-k--Do0VDFSy8__bfuePPaEykFkk03C2-3VwCbAMV--0t6o-92oUS0V4FUCSaOQzBn4---ywe-Y13Y5KOjuRyaEBG2F--GW_V0FZtli---3co7-38GgR-93kCEP-1kaQpeNn--L4BWBn5T-BFdZS_ePOvjjjjwk3-FJGF0sL9epCyN9-mkhAhaefdPOOaOd_eO_dPLyiiveeeyEnnEiEwBk2nEnBnEEEnnwwznnF3333GGKJJG3G4KKGJ-94g9CkV--ipW-VWVbABxrMKz5OzJxsNNNVXmX
17 === aq.q6 ? g3 =
"9mDS-FP-F--0TedPPOXo0HCGSpxrMptUSrUztztbbsUtaTTOzzzzStzSzSrSrSrppT-0btaOaNNUttVOa---56y6aOSrUaN5OzztztaOtTObtaNNUzaOSrSvHogmgfKpKSrCJgnIICMKrSryUWs--17XD--OaUzaOzyObzzztzrrUxUKprrzyUzzzzzzrSrrbzUSzyOaOsOzzzztbzzrAMSKzrUzzUSrUrrMKKSzzxrrxrxrrSrSrUSpMJnCKUV6aSxxUSxrSSMzzzWzz_zzzzzzxrUzxUzzrSzpxpxUSUxrxxSrrMSrSKKMKMSKKxrSKxzxpJmegnKzWzzoeepBpABgohBnBpMSKyOsT5T---OWWt_onKzzS9ehSrUzzzzrzzKKAILmfHnBpUztWsT0WaOaUzzzUrUrSzpxzzrSMSrzzzSKKKKpyTUaOzxzxrxxrxrUzzxzzzzzzzSrxrUrSrSzMSrSSrSrUprMKzUUUrbrbrbrrSMKxKKKpIKKKMKKKIBpKBnJnBhBgnCAIBnBnBnBgonIJoonIJnBnKBen17AKICIKKJgpKKCSSKKCKJpBpKIKBnKKKCACBpKMIKponBgfBnCHoonBnAKCKKCI9nBenBnBgmepCBn9cecegX-9eenHmognBmegefBnBenBnBenBgmonAKICCKKCKKKIKKJnCJnBmfBnBmpBnICIBpIBmpBmnBnABn8aObbaOa0bVOV1n9fCBonIHmonCMpQ9hCAJnJgnCBnBmpBpBgfA9nBmX9eeeXeXcXX9eee77gpKrSrzSrSrJnKKrrrrKJnCBnCBhCIBgemggeggef9eemmeecceAKKrKICJproomgmgeee9X9eXfKMSMAKMzrMyOtxrKCBe7VcfBprrBAIHnKhSKIBp9emgfBnCBpSMSUSxrrzzrKKLmnBmmnABpIKIBmgmnKSpSKUSrPkf9en9nAIKpIBgmXEV9gpB7Ve9VX9XbrUV1cc9V7Ws11chBeaN7tV7AIC7XN1N1777c2V-a5USy117aNN-ceef97Oa-Wzy1N-17WbyMMKSCKrs10WV-Ws978V-5-D5-s-7VcgmfMopCSppIA7XV--1-2bs717V15--a52aN-X1-cVN-X-V-ts-0V0VOV1OaOa1-2WV-sOV--7OV-V--VX-7--7-0yN7--7-X1OWa--1-0WVT--9N7OV--1-NN---V-17V-15Us--V--15NN7----VX1N7---X71--17eX7X7XX1VcX9XXcX9999A77eVeX9A17X9cX7X7X9cX7V7VV---717cV1717X717X-X7X71177X-X71N19--97X-X7-X7c-91X-X-7X7g7XVeX7Ws-177-17-5Oa5NOsOa5OaOV1XmX7eVcOV-95--5-sUWVNT5N--0WWtztaTT6WaOV7-0aOaOzza0aN0a--7VOV7s-s--6V-X---17X1Vc118V5OV7eX7XcXemnCCBfBnBoprSp9gn9cV17ee-9eee7eV4kDJ_aeiwn-FJ-u28mgpMSzsN-XeV5Fop6aeecBBk-F1t5Zdn9xxrs-9-O9QZyeevz-G3G-YcmK6CIIrUrrSrrrqOa9-X9X7X9cV1_beTuOPOPfznwwC3-4-Jh78rBeejprrSrNN--7-T5ITPw30U8E3BgonBzrtWzzaNVeeV8t9XtaOdOyzBwnEBKK-AmPDvCxrr-7X7ByJT4OdKaTizEydLQi_G48_OUdOvEvyuv-zyevvnzyBFzjvyBnzzznE0KKJJJK43JJG3JF0GKK-2BiSRpxxpWX7Xc" :
18 === aq.q6 ? g3 =
"DgBy1vR-AV60YBnopk-O_9DCIs4rUUrSSMUrSrSSSMKzypKSSMRpKMSrUKMSpKSSrUrSKIKSueXgnCKBgme9XenIKKMBpSKpKMMxpLppKKpnBoopKMMMMKpMKKKKrSzzza55ObzzUUSxppppCCSSpSSrRopSrrSSSppMMSSrKSzUtpxrxxphSMUMUSrrUzzaOtbaOtbbbaOzWWaN5Os6yN-ee117eme97cX--1117XmmccVaN1-Xy-XD-NT-6sDOa0y-cWtzrrKrrSpptWSxs1W_rMUMMUTUUzrrrrSrSxKSrKKzKSrMSrxxprUUzUyTOa-N-1-X-7--1-VV1D-EUUaOtSs-SyMzy-Xe1XXe999XcefCIKKUUn7X7eXee8aOV11UUUa-X7X0Ss1N1mVcf9ecekgk1AJmnABgn99mn9hIJhKKMB7797ee17y17V79Ve79nFX8s19nAIKI1n9pMKKT5Jp-hFgV1goV1nIF-hB-1kOsN56rSpppMtVX-77c7a5N-D550V-ObbaTTN-OVa----N--7s50y0VTNN-9maOzV17cVeepABnBpKKCBnBoopIKMMS9pKKKKKKIBWV-D-XemgpKBe9gm9eOzbyOa5OWV15NN7-N--V5-OV55-50aOaOa----99e77X9e770V1OVX-ccefABn997Xc77VccgceXegfBnH7cegcVX9ecD-VV-7-XV7Xcs5OaUT155-51XD--UtyUy--zWzzUzrbzyMT5OtztyOaOzKpxxIKKKKpIKKSMIKSKKSzztzbyUxtaUaNN5OyKs-6V0WV0_y-SppSICMKMTTTOtQBpSCMSsSrMSzyTMSprSptSUbzzygfKxUaObrMJpTO_pmpUxraTTOtttVUtaSSptzIAK99eXegfKgpCLmpMrUSpz7fKBoohUttrSrUrrSrSAKKUUra4pSzbaNTObaUyUxopBpSrzbaOyN10baSrrpzKpSSUtSzpUs-75N7cc91cXoX7V7Ws1-5TUbaOaOaSySzzzrzzzUtaN0V971A9eenBeee7Xe9cgcfAA9gggnKJgpgeee9eA9mfBgf9geVVX9fB7X6baOTTNNOtaOty52tzVNN9m7Xcce9715N5ObKt_y-8rMbzs90My6_s4raOUxrrpUMrz_rCMUry-eXUzrpySrxyObrztrzUMUttpztrVMrzrMsURhUxpsOpCUbrzqmenMtzmpzb_mfKzpooXX1pBpxSSKpSMSMKKCMKQKnCBmmeXcc71171-V--XpIIKKnIAAIBnCMMCKprzWV7sObKKrKUMsNN5UyMzzrBpztttWVaTObW_xpI99ghKKMxztaUUbzzzMy6vBgnACUtz_yTMrUzbnIMUtttV-UrUSrSSprMSSMyOWVX-18a0a-0yTOa5NOzrrRoonBpSKBpCKCCKSnCCBhBmme7efMSUSzUUaOyT5OaN-0aUxpoopMSzTN99WbV2VVXX9eYV0WaN-V-OtvKKUSzMrs1797VtpzV6rrSSrzBhKCKMSrT-Wa-V0V-X77ca--UzzzyHpMT-yT-7-sOaObbyTTOzUtsUIMSpSRnMzMT0WsTOs97hIBeX-X7tVVtzVc8WWaUonMzbKUsTUbSxrnMUKBoonJnJgpBpBoptaNOttaT5NUxprCUT1-VObbzrUzzyTUzzzy2zSxxxzry-1-Wrbtbs9zbzV9UV19-fa-taTOpUWxMsN716aUKyUps0xzaNN0VOWbaUzSrzaMrzVcX155OVOV0ztby-199f1XOWa-N-TOWa5UaNUaOa5OaUtzxtaN7egYy-VTOaUrnMwnKtzxpzaICTmoomenCKS9e9hSKxzbrSrSKBgpMKrWs-_yTNMbMyTOzrJnHnKxrKpSMKMSpprKSSMU9fBopKKpcfKSMAIKSrUMMpSSrUzVbrMUUTMympKrSrUUzMBnKSKrSxpJpMrUSSpSKS97cXXXXcXXXX9997ccX7c7X7V11171N-V-VVX1-71117-7-X19997V1mopKrSxpMMKpPeVX7hJfKCCKMMMMMKKpprUa6BpepKAK8V1meommnKMPgpAACReonACBopKSIKMMCKKKKKRpKCKJoprUtbbSSUs4MtaT-78sUxzzwpxxpxrKKSSSUSpUSSSSSKKKSKKMKSKJpKKKIKKKJoopBn9mccgpKICAMIKKKrKCJnIIBopMMzxxrrSxxxrSpSMSpKABofBnBn97710VA112V1171mmgn9k7V51-7XecXpAHhAIBooo-X75NN-XeXnBnKIBnCCKBnB9gpKprryU_ppSzyOWVObrzyTShPfIBnCK9hKCCJpKzrzxprSrSSUrxxqeeehUxzUrrABnIBhMzsOxrxSmgpxnMHnHhMnMICHmpMnHhSyMBhLopC9fIMhBnBnCJommmfAA1nBo97c9nMMrFhBgnBehBgfABfIKSx9X17N1emXABf9gmnJepJmhRmopKCMSUSxrMSrrUSxrrxrSrSrMSSMKKppCKKRognBggogeefI9mpxrr9nBggoog7--N-e999fAa-XfJV17s7XA97XcgecWV7eeAJpKKJoopCKBpKKKrTTMMKSxRpKrSzrzxxrStSrUUUSSpLpCMSKMSzMSSRef7Xce7e9X997-cX9-c-777-11197VXX17X7cgc0V0VNN1VOV-1-WVV-77VcV71-V-71--AJVV7XhMCBmfBnC797g-ACI7-Oa--11-Vc-1XVX9979X17V1-VV7cec9oppnBn1gXo71oome-1nHmgfBpKIBgmmcenIBnBnBnAAAIA9mmonI9egoXmggopCMKKKLpQCIBoopKopJcgnIBp9fACJmge7X77VVa-11-V7-VVVX-V72V7-7-VVV11-V7----V---N78V5NN-V6s9XOy1cepgpQIA9f9e7X777VX7UTUbta1eekXX7X0VcX91c--g7-11emXceeXX9ee99ce9g7cX999XXXX99X7XV-5-V7ceeegeX7X977X77-X7XVV-5-1-7--ecD-9hBX99onAMSKIMJpKSpKrMKJhIMKopST-NOaOrRopIBfIMSSMzxzUpzUUaUaUbttyUaOhBpIJppMKprSxrUrrKMKprRnBn9ggnBms9gnICIK99efBomceXgnIBcXceeeXeefBp9emceececeegmeXXeekee9X9Xf9ecee7X7-5N-a-N--NOWVN--V-1-V1--5---711171--550aN5--0V1-V77-55---------N-7XOta6aN1ggnBmnI7VD-VNN--NN1ghKBpKIKKJpKIIKCKKKCKIKKRnBopKKrKSSIJpIIJoopCIJpKUKSMLpSKKIIJpKKMSnKrUSSppKpMSMKpSKrKp9eepUrpSSKpSprrrzzzSrrzzzrUrzxrUzUzUyTSxnICKCACCCBnABnBgnBmnABnCBnBgmnBgmmmgggggf9meemeXggf9mgemmmenAAABmmmmXhA7cgnIIAIBnBmhBnIBnKKSMSpgnCKRnKKMKKpKSprQMQCIKKCKMKCJpKKpMBohRmnABfB-1V9sQR73q09kCIBed989cCHZpMUMMSMSUOxbpy0bbxSraOaOc7TVP29C9Vc0VBecV--7NVV-N8H9w--c9BgrX-BVhQICKrSsV-1VkNB1Dn9choeAEHp9A9eAKKp9fCI9Xme118BgecX7IKKAKrJce70cXXXcXMSppCzSpJxSMKSKSSrk-0xpxxzba-17Oxta56paOsNNTOyTOa--USkWzMUUzs--VWbrxrrVV-d9e7VHsFGFpA9BnCzzII9X97pxS9XHVZoogqUtzqUyUxx50WsTOXmgcOuVOXc0T4CohpochopxzyN7X7NXV-cNWurX-AW_mQ9horyWa--D6JABqN-51WZ4aN79-1XOJ2Oc-58_IBN-i8hrCBfItza-V2Nd5onEIMLOs-X-0se3gprOX1V5NezHrS9eACprpxy0aN7cVV07h4Zpy1V3shEFnKMUrzcVN7I91V-chgRwP--Xvb6V37jO2mfSxrUba79cV3cjXTpJpJOyTOX7gc--1B70i-6Y102KttXe-4Y2-QBrWV-qBklBop
19 === aq.q6 && (g3 =
"EcCx-VQCO1iiqOLOKeeedae_ddadadadOfiveOeLeeeedadaPiuuiePPeeyeeeeOeaPadaeeydPeOedaOPLOeeeOadLOKLKKLJG4G3G4G4G3F-3GJG4G4KKG443G3G3G3G4K3K3K3GKKK3FJ40F33GK0K0K3G3F3F2nBnBnBnB-Bn-04G--BzzwEByvn-wG-BnnB2BkG44K-4KPKQyde_K-G3GKFwGPKO_O_K3J4KG4KKG4KKKJG4KJKK30304LOJG3GKKKKKQvjzuzziviueeaKaKPKKKKKKKKK3K_eOKO_OedaKaLaOevedaOGOeOeeaOaOaOeOjzvjyaPeOKKKOK43K_KKaveJGJ0-JG3G3GF3G3G43KaKF3G4aOedaOFKLK4_eee_dJK33KeaOLOaOjveeKLO_OaOaeKLPeivjeaOeOaJKGKJ4PdadafiyjedLPeueK3F-G30F3G3-3LOaOjeKLPe_O_OeaPfieieeyeaOaPOKOeedeOdada_daOdaKd_O_aOKPOKLKaKdK4LK3LTdaOdKaOK_KLPOaaO_LPKGKKK_KOaLO_aOOaaOdaPOdaO_OaKOdaPOdaPedeOJF--00LaPdeaeOfeyeiuudaueaaPdbeOeuefefuivfifujifieviivifeeid_G-04OF0-03KaPvievjizfeeLJ0-JG-KdOTvfiyviyujffviujeiufeiefivivfivvfeevivveiuueieiefeeiyejffuiuuiviuvfiifiieePeeaieieveuePdaPKJKefefefiuzzvzivviyfvnvjvzEzzjzwzzzBnzwnnk2Bwkn2zzknB-n2BnEBzyzzBzzEwnzznzzzjfzBzwzznziz2zwnBnBBkB--B2EBznEzBwnBnBzzBknEnEByywzzzzzEzz2wnzkzznEBwwEnEnEzznEzzzzzzzzEzwwEEizizizivjvjfznnzyyyvivzzwnyviuizyeyeKbifiuizzvifieeuyviuiuefie_iviiyjzvn3F3Bnw-BnBn2BnBnwnwnwnBkBBk22nEn-EeeieKdeiudaOaOPedaeePeee_KKLPOefzkzEEjzwk2B-k-kBB2yiiuieueeaeeaOOaOvzzzBzvjivjuiuyevieifiedaOeueuivivieuvfyvzvyvvuuvwzzyyvzzvjivvivvjyvznBnn2wzznwoLK-z2BknzEivePPLOOvjBwnEffeuyzefzuuujnkkGG-yzEEzBnEBnnBwnEBnznzzvzzznzvzzEBnzn-k-k-k-2-wB2B-k2-2nBB2kBBwnBw-nB-2Bk22Bw-BkknnBBBBBnBE-znznkkEnE2--kEBknBBkBBk2E-3-2Bk-k2B22BB2k-k-k2BBn-w2-32k-C3F--k-FG0G-22-2-FB--k-2-w-G32En--nB-2kKLePLdFJG3-F0033G043-l3-G3K3JK-32B3G4K4F--B--B--FGLJGJ3F03JLaeKFG--0---BFK--203FGGFG33F2nBFG3FGJ4GJ4K02GKF03-GKKG3K0JFK3G03F--G--l43--Bk--kG-FF3F03G-403G----l0----G--Bn33GJG340JG3-G4KaLKPKG-4-3F3F03-B-------G3FJ00--3KGF--0---03G0032T4mfgmegmeX7fBnJnKIEzzzzbrpzzaObtVOaNX9c9c0JN9cQfjzGG0F4NoWynBpJnKzzzV---Xc1RfMlOOvfvzwEw3GKKF-0gAIV-2OK2-3aoazBjs-pIUdyOaKaKaOfzzvgBnBF---1gInV-4OaA-BexerKESrs-V9V3q6e6dauVn3-0fPHBpMs-c-SiqWQwJ1mtRSUSKKKKKKJOzzxrROc11--TX-X7V7eeV4Meo2avi2kCK--EcNy-OUJfiLKdTzsBk-0kCPrF0fVVRjiveveiueOuveeeeaNn-n22-BG--030303K3F3B6-nnBnBrSr0a---EsTXQudeviviedazk-2-G-030K-4l1tMCkOc-57MIs-E3IhS5P-CYA-DLew--koIyA9emmfACMSrUtbzzzTTObrUtV7ge7X7eeV8QnZxddaebjwnB-30F3xzBZnMKCMzra71-7cV3wA4p_Qzzo4Ffy5yanHpIKSKMKSMSSrKKMofJppMKSKrSpSMKSzrzzrUtaOzsTN1oc5OaUzrHnCTOtaP755N5-T-NUTNN-N-5-5-N-P7X97gn9gmeee9n9meeX97cX7eVeX9cXV"
), (new pS).pU(g3)
}
function aAc() {
this.q5 = null, this.ct = function() {
var aBZ = [120, 105, 92],
cos = [12, 12, 60],
aBa = [300, 300, 9827, 26, 18, 36, 36, 8, 32, 3, 9],
aBb = [140, 130, 120],
aBc = [12, 12, 76],
aBd = [240, 120, 1024, 30, 19, 30, 70, 8, 20, 3, 9],
aBe = [130, 117, 106],
aBf = [12, 12, 68],
aBg = [270, 210, 1024, 28, 19, 33, 50, 8, 26, 3, 9];
this.q5 = new Array(aq.a8J + 1), this.q5[0] = {
name: "White Arena",
gA: 230,
gF: 230,
jx: 1e3,
ju: 2e3,
aAe: 173
}, this.q5[1] = {
name: "Black Arena",
gA: 800,
gF: 800,
jx: 100,
ju: 50,
aAe: 43
}, this.q5[2] = {
name: "Island",
gA: 512,
gF: 512,
jx: 128,
ju: 32,
aAe: 0
}, this.q5[3] = {
name: "Mountains",
gA: 960,
gF: 960,
jx: 60,
ju: 8,
aAe: 0
}, this.q5[4] = {
name: "Desert",
gA: 900,
gF: 900,
jx: 100,
ju: 5,
aAe: 0
}, this.q5[5] = {
name: "Swamp",
gA: 1e3,
gF: 1e3,
jx: 100,
ju: 40,
aAe: 0
}, this.q5[6] = {
name: "Snow",
gA: 1e3,
gF: 1e3,
jx: 100,
ju: 20,
aAe: 0
}, this.q5[7] = {
name: "Cliffs",
gA: 1024,
gF: 1024,
jx: 128,
ju: 32,
aAe: 0
}, this.q5[8] = {
name: "Pond",
gA: 820,
gF: 820,
jx: 200,
ju: 100,
aAe: 0
}, this.q5[9] = {
name: "Halo",
gA: 1024,
gF: 1024,
jx: 128,
ju: 32,
aAe: 0
}, this.q5[10] = {
name: "Europe",
q4: aBb,
q7: aBc,
aAn: aBd
}, this.q5[11] = {
name: "World",
q4: aBe,
q7: aBf,
aAn: aBg
}, this.q5[12] = {
name: "Caucasia",
q4: aBe,
q7: aBf,
aAn: aBg
}, this.q5[13] = {
name: "Africa",
q4: aBZ,
q7: cos,
aAn: aBa
}, this.q5[14] = {
name: "Middle East",
q4: aBZ,
q7: cos,
aAn: aBa
}, this.q5[15] = {
name: "Scandinavia",
q4: aBb,
q7: aBc,
aAn: aBd
}, this.q5[16] = {
name: "North America",
q4: aBb,
q7: aBc,
aAn: aBd
}, this.q5[17] = {
name: "South America",
q4: aBZ,
q7: cos,
aAn: aBa
}, this.q5[18] = {
name: "Asia",
q4: aBe,
q7: aBf,
aAn: aBg
}, this.q5[19] = {
name: "Australia",
q4: aBZ,
q7: cos,
aAn: aBa
}, this.q5[20] = {
name: "Island Kingdom",
gA: 1024,
gF: 1024,
jx: 128,
ju: 32,
aAe: 0
}, this.q5[aq.a8J] = {}
}
}
function wY() {
(qp = void 0 === qp ? document.createElement("canvas") : qp).width = aq.eE, qp.height = aq.eF, wb = qp.getContext("2d", {
alpha: !0
}), wc = wb.getImageData(0, 0, aq.eE, aq.eF), a2t = wc.data, aZ.pk.pl(a2t)
}
function bz() {
var df, gA, gF, max, aBh, ju, aBj, aBk, aBl, aBm, aBn, aBo, aBp, aBq, aBi = 1e4;
function aBx(aBw, jx, ef) {
var eJ;
for (aBj[0] = aBw, eJ = 1; eJ < ef; eJ++) aBj[eJ] = aBj[eJ - 1] + jx, jx = aBj[eJ] >= aBi ? (aBj[eJ] = aBi - 1, -jx) : aBj[eJ] < 0 ? (aBj[eJ] = 0, -jx) : (jx += 16384 <= aM.random() ? ju : -ju) < -aBh ? -aBh : aBh < jx ? aBh : jx
}
function aBz(fO, fP, aC0, ef) {
(aC0 ? function(fO, fP, ef) {
var eJ;
for (eJ = 0; eJ < ef; eJ++) df[fP * gA + fO + eJ] = aBj[eJ]
} : function(fO, fP, ef) {
var eJ;
for (eJ = 0; eJ < ef; eJ++) df[fP * gA + fO + eJ * gA] = aBj[eJ]
})(fO, fP, ef)
}
function aC3(value, ef) {
var eJ, aA6, fg, gn = value - aBj[ef - 1];
if (0 != gn) {
for (aA6 = 1 + eX(Math.abs(gn), ef - 1), aA6 = gn < 0 ? -aA6 : aA6, aBj[ef - 1] = value, fg = (fg = ef - 1 - eX(Math.abs(gn), Math.abs(aA6))) < 1 ? 1 : ef - 2 < fg ? ef - 2 : fg, eJ = ef - 2; fg <= eJ; eJ--) aBj[eJ] += gn - (ef - 1 -
eJ) * aA6;
(gn < 0 ? function(ef) {
var eJ;
for (eJ = ef - 2; 1 <= eJ; eJ--) aBj[eJ] < 0 && (aBj[eJ] = -aBj[eJ] - 1)
} : function(ef) {
var eJ;
for (eJ = ef - 2; 1 <= eJ; eJ--) aBj[eJ] >= aBi && (aBj[eJ] = 2 * aBi - aBj[eJ] - 1)
})(ef)
}
}
function aC6(aC7, aC8, ef) {
for (var eJ = 0; eJ < ef; eJ++) aC7[eJ] = aC8[eJ]
}
function aC9(ds) {
for (var eJ = 0; eJ < ds.length - 1; eJ++) ds[eJ] = ds[eJ + 1] - ds[eJ];
ds[ds.length - 1] = ds[ds.length - 3]
}
function aCA(ww, gap, gm) {
aBk.push(ww), aBl.push(gap), aBm.push(gm)
}
this.d4 = function(vq) {
! function(vq) {
var eJ;
for (gA = vq[0], gF = vq[1], aBh = vq[2], ju = vq[3], df = new Int16Array(gA * gF), max = gF < gA ? gA : gF, aBj = new Int16Array(max), aBk = [], aBl = [], aBm = [], aBn = new Array(gA), aBo = new Array(gF), eJ = gA - 1; 0 <=
eJ; eJ--) aBn[eJ] = !1;
for (eJ = gF - 1; 0 <= eJ; eJ--) aBo[eJ] = !1;
aBp = new Int16Array(gA), aBq = new Int16Array(gF)
}(vq),
function(ef) {
var aBw = aM.random() % aBi,
jx = aM.random() % (2 * aBh + 1) - aBh;
aBx(aBw, jx, ef)
}(max), aC6(aBq, aBj, gF), aBz(0, 0, !0, gA);
var fO, fP, vq = df[0],
ef = max,
jx = aM.random() % (2 * aBh + 1) - aBh;
for (aBx(vq, jx, ef), aC6(aBp, aBj, gA), aBz(0, 0, !1, gF), aC9(aBp), aC9(aBq), aBx(df[gA - 1], aBp[gA - 1], gF), aBz(gA - 1, 0, !1, gF), aBx(df[gA * (gF - 1)], aBq[gF - 1], gA), aC3(df[gA * gF - 1], gA), aBz(0, gF - 1, !0, gA), aBn[gA -
1] = aBn[0] = !0, aBo[gF - 1] = aBo[0] = !0, aCA(0, gA, !0), aCA(0, gF, !1), ! function() {
var aCC, ww;
for (;;) {
if (aCC = function() {
var eJ, aCC = aBk.length - 1;
for (eJ = aCC - 1; 0 <= eJ; eJ--) aBl[eJ] > aBl[aCC] && (aCC = eJ);
return aCC
}(), aBl[aCC] < 5) return;
ww = aBk[aCC] + eX(aBl[aCC], 2), (aBm[aCC] ? function(fO) {
var ef, aCF, eJ, a40 = 0,
aCG = 0;
for (; aCG < gF - 1;) {
for (eJ = a40 + 1; eJ < gF; eJ++)
if (aBo[eJ]) {
aCG = eJ;
break
} ef = aCG - a40 + 1, aBx(df[fO + gA * a40], 0 === a40 ? aBp[fO] : aBj[aCF - 1] - aBj[aCF - 2], ef), aC3(df[aCG * gA + fO], ef), aBz(fO, a40, !1, ef), aCF = ef, a40 = aCG
}
aBn[fO] = !0
} : function(fP) {
var ef, aCF, eJ, a40 = 0,
aCG = 0;
for (; aCG < gA - 1;) {
for (eJ = a40 + 1; eJ < gA; eJ++)
if (aBn[eJ]) {
aCG = eJ;
break
} ef = aCG - a40 + 1, aBx(df[fP * gA + a40], 0 === a40 ? aBq[fP] : aBj[aCF - 1] - aBj[aCF - 2], ef), aC3(df[fP * gA + aCG], ef), aBz(a40, fP, !0, ef), aCF = ef, a40 = aCG
}
aBo[fP] = !0
})(ww), aCA(ww, aBk[aCC] + aBl[aCC] - ww, aBm[aCC]), aBl[aCC] = ww - aBk[aCC] + 1
}
}(), fO = 0; fO < gA; fO++)
if (!aBn[fO])
for (fP = 0; fP < gF; fP++) aBo[fP] || ! function(fO, fP) {
var value = df[fP * gA + fO - 1] + df[(fP - 1) * gA + fO],
yj = 2;
aBn[fO + 1] && (yj++, value += df[fP * gA + fO + 1]);
aBo[fP + 1] && (yj++, value += df[(fP + 1) * gA + fO]);
df[fP * gA + fO] = eX(value, yj)
}(fO, fP)
}, this.aAy = function() {
return df
}, this.aAj = function() {
df = null
}
}
function eX(hg, hp) {
return Math.floor(hg / hp + 1 / (2 * hp))
}
function a77(hg, hp) {
return 0 <= hg ? eX(hg, hp) : -eX(-hg, hp)
}
function i7(df) {
return df * df
}
function y0(hg, hp) {
return hp < hg ? hg : hp
}
function a1J(hg, hp) {
return hg < hp ? hg : hp
}
function a07(hg, df, hp) {
return df < hg ? hg : hp < df ? hp : df
}
function aCI(df, ef) {
for (var iT = eX(df + 1, 2), eJ = 0; eJ < ef; eJ++) iT = eX(iT + eX(df, iT), 2);
return iT
}
function a8o(df, ef) {
return df < 1 ? 0 : aCI(df, ef)
}
function aCJ(jj, jk, qw, zs, jl, jm, qx, a6I) {
return !(jj + qw <= jl || jk + zs <= jm || jl + qx <= jj || jm + a6I <= jk)
}
function aCK(jj, jk, qw, zs, jl, jm, qx, a6I) {
return jj <= jl && jk <= jm && jl + qx <= jj + qw && jm + a6I <= jk + zs
}
function pb(df) {
return Math.floor(!!df * (1 + Math.log2(df + .5)))
}
function bI() {
this.fK = function(hg, hp) {
return Math.floor((hg + .5) / hp)
}, this.aCL = function(hg, hp) {
return Math.floor(hg * (hp + .5))
}, this.sqrt = function(df) {
return ~~Math.sqrt(df + .5)
}, this.pow = function(dI) {
return Math.floor(Math.pow(2, dI) + .5)
}, this.mx = function(value, min, max) {
return Math.min(Math.max(value, min), max)
}, this.aCM = function(dt, dv, dx) {
return Math.max(Math.min(dt, dv), dx)
}, this.aCN = function(aCO, aCP, fO, fP) {
fO -= aCO, aCO = fP - aCP, fP = 0;
return 0 == fO ? fP = 0 <= aCO ? Math.PI : 0 : (fP = Math.atan(aCO / fO), fP += 0 < fO ? .5 * Math.PI : 1.5 * Math.PI), fP
}, this.log2 = function(df) {
return Math.floor(!!df * (1 + Math.log2(df + .5)))
}
}
function cY() {
this.j4 = new aCR, this.th = 0;
let map = new Map;
this.d5 = function(g4, aCS = this.th, vq = void 0) {
b4.d3 = !0, 0 === g4 && 0 === y.tk() && (g4 = 5), this.oN(), this.th = g4;
let pW = map.get(g4);
if (!pW || 4 === g4 || 7 === g4 || 8 === g4 || 9 === g4 || 10 === g4 || 11 === g4) {
if (0 === g4) return void map.clear();
1 === g4 ? pW = new aCT : 2 === g4 ? pW = new aCU : 3 === g4 ? pW = new aCV : 4 === g4 || 9 === g4 || 10 === g4 || 11 === g4 ? pW = vq : 5 === g4 ? pW = new aCW : 6 === g4 ? pW = new aCX : 7 === g4 ? pW = new aCY : 8 === g4 && (pW =
vq), pW.aCS = aCS, map.set(g4, pW)
}
pW.show(vq)
}, this.tm = function() {
this.rD() && this.d5(map.get(this.th).aCS)
}, this.aCZ = function(g4) {
this.rD() && (this.oN(), b4.d3 = !0, this.th = g4, map.get(g4).show())
}, this.oN = function() {
this.rD() && map.get(this.th).oN()
}, this.p6 = function() {
this.rD() && (map.get(this.th).oN(), map.clear(), this.th = 0)
}, this.gL = function() {
var pW;
this.rD() && (pW = map.get(this.th)).gL && pW.gL()
}, this.resize = function() {
if (!this.rD()) return !1;
map.get(this.th).resize()
}, this.fX = function(fO, fP) {
var pW;
this.rD() && (pW = map.get(this.th)).fX && pW.fX(fO, fP)
}, this.ui = function(dI) {
return !!this.rD() && ("Enter" === dI.key ? map.get(this.th).ui(1) : "Escape" === dI.key && map.get(this.th).ui(2), !0)
}, this.iE = function() {
var pW;
this.rD() && (pW = map.get(this.th)) && pW.iE && pW.iE()
}, this.rD = function() {
return 0 < this.th
}, this.aCa = function() {
return map.get(this.th)
}, this.aCb = function(g4) {
return map.get(g4)
}
}
function aCY() {
var aCc, aCd, nF;
this.show = function() {
aCc.show(), this.resize()
}, this.oN = function() {
aCc.oN()
}, this.resize = function() {
aCc.resize(), aCd.resize()
}, this.ui = function(iT) {
1 !== iT && at.d5(this.aCS)
}, aCc = new oE("🔑 " + aW.no[125], [new nT("💾 " + aW.no[97], function() {
at.tm()
}, aa.l3)]), aCd = new nD(aCc.oJ, ((nF = []).push(function() {
var aCo = new n0;
return aCo.n3("🧈 Gold"), aCo.n6("Balance: " + aZ.jr.w4(bA.dK.data[113].value, .01, 2)), aCo.n4(
"Play more multiplayer games to earn gold. Accounts without gold will be deleted. Each day, you will lose 🧈 0.50 or 0.01% of your balance, whichever amount is higher."), aCo
}()), nF.push(function() {
var aCo = new n0;
return aCo.n3("1v1 Rating"), aCo.n6("Elo: " + aZ.jr.w4(bA.dK.data[107].value, .1, 1) + "<br>Rank: " + (bA.dK.data[108].value + 1) + " / " + bA.dK.data[111].value + "<br>Played Games: " + bA.dK.data[112].value), aCo
}()), nF.push(function() {
let aCo = new n0,
aCp = (aCo.n3("Account Name"), new nx(bA.dK.data[105]));
return aCp.dI.readOnly = !0, aCo.nB(aCp), aCo.nB(new nu([new nT("Copy", function() {
aZ.g5.vX(aCp.dI), aZ.g5.vY(this)
}).button])), aCo
}()), nF.push(function() {
let aCo = new n0,
aCq = (aCo.n3("Password"), new nx(bA.dK.data[106]));
return aCq.dI.readOnly = !0, aCq.dI.type = "password", aCo.nB(aCq), aCo.nB(new nu([new nT("Show", function() {
"Show" === this.innerText ? (this.innerText = "Hide", aCq.dI.type = "text") : (this.innerText = "Show", aCq.dI.type = "password")
}).button, new nT("Copy", function() {
aZ.g5.vX(aCq.dI), aZ.g5.vY(this)
}).button])), aCo.nB(new nu([new nT("Request New Password", function() {
at.d5(8, at.aCa().aCS, new gG("⏳ Connecting...", 15))
}).button])), aCo
}()), nF.push(function() {
var aCo = new n0;
return aCo.n3("Account Options"), aCo.nB(new nu([new nT("Log in to a Different Account", function() {
at.d5(6, at.aCa().aCS)
}).button])), aCo.nB(new nu([new nT("Create New Account", function() {
bA.np.nq(105, ""), at.d5(8, at.aCa().aCS, new gG("⏳ Connecting...", 18))
}).button])), aCo.nB(new nu([new nT("Delete Account: " + bA.dK.data[105].value, function() {
at.d5(4, 0, new td("🗑️ Account Deletion", "Your account will start the deletion process but may be restored if you log in within 3 weeks.", !0, [new nT("❌ " + aW.no[92], function() {
at.d5(7, at.aCb(7).aCS)
}), new nT("🗑️ Delete Account", function() {
at.d5(8, at.aCb(7).aCS, new gG("⏳ Connecting...", 17))
}, aa.lJ)]))
}, aa.lJ).button])), aCo
}()), nF.push(function() {
var aCo = new n0;
aCo.n3("Saved Accounts"), bA.j4.oz();
function aCs(g4) {
for (let eJ = 0; eJ < 2; eJ++) aCr[eJ].nY(0 === g4 ? aa.ku : 0 === eJ ? aa.lJ : aa.l3)
}
let n9, aCr;
return aCr = [new nT("🗑️ Remove From List", function() {
var g4 = Math.min(bA.dK.data[117].value, n9.nA.length - 1);
if (!(g4 < 1)) {
n9.nA[g4].remove(), n9.nA.splice(g4, 1);
for (let eJ = g4; eJ < n9.nA.length; eJ++) n9.nA[eJ].name = "" + eJ;
bA.j4.p2(g4), g4 = bA.dK.data[117].value, n9.nA[g4].textContent = n9.nA[g4].textContent.replace("⚪", "🟢"), aCs(g4)
}
}, aa.ku), new nT("➡️ Login", function() {
var g4 = Math.min(bA.dK.data[117].value, n9.nA.length - 1);
g4 < 1 || (g4 = bA.j4.p3(g4), bA.np.nq(105, g4.p4), bA.np.nq(106, g4.password), at.d5(8, at.aCa().aCS, new gG("⏳ Connecting...", 18)))
}, aa.ku)], n9 = new o9(bA.dK.data[117], aCs), aCo.n8(n9), aCo.nB(new nu([aCr[0].button])), aCo.nB(new nu([aCr[1].button])), aCo
}()), nF.push(function() {
let aCo = new n0,
aCp = (aCo.n3("Country Color"), new ny(bA.dK.data[121]));
return aCo.nB(aCp), aCo.nB(new nu([new nT("Random Color", function() {
bA.np.nq(121, ~~(262144 * Math.random())), aCp.dI.value = aZ.color.nz(aZ.color.o0(bA.j4.o1()))
}).button])), aCo
}()), nF.push(function() {
var aCo = new n0,
username = (aCo.n3("Username"), aCo.n4("You can change your username once per UTC day."), bA.dK.data[122].value);
at.j4.dK.username && (at.j4.dK.username === username ? aCo.n4("Username successfully updated.").style.color = aa.kx : aCo.n4("Username couldn't be updated.").style.color = aa.lC);
at.j4.dK.username = void 0;
let aCp = new nx({
title: "username",
value: username,
g4: -1
});
return aCp.dI.style.marginTop = "0.5em", aCo.nB(aCp), aCo.nB(new nu([new nT("Request Update (🧈 0.00)", function() {
var h0 = aCp.dI.value.slice(0, 20);
at.j4.dK.username = h0, at.d5(8, at.aCa().aCS, new gG("⏳ Connecting...", 20, h0))
}).button])), aCo
}()), nF.push(function() {
function aCt() {
var df = bA.dK.data[123].value;
aCp.dI.readOnly = 1 === df, 1 === df && (aCp.dI.value = bA.dK.data[122].value, bA.np.nq(124, bA.dK.data[122].value))
}
let aCo = new n0,
aCp = (aCo.n3("Offline Username"), new nx(bA.dK.data[124]));
return aCt(), aCo.nB(new nm(bA.dK.data[123], bA.dK.data[123].title, aCt)), aCo.nB(aCp), aCo
}()), nF))
}
function gG(title, id, vq) {
var aCc, aCu;
function aCy() {
aCu.ns.innerHTML += "<br>New Connection..."
}
this.aCv = !0, this.show = function() {
aCc.show(), this.resize(), 15 === id ? aO.j4.a4U(0, id) ? this.aCx() : aCy() : 16 === id ? aO.j4.a4U(0, id) ? aO.aCz.aD0(2) : aCy() : 17 === id ? aO.j4.a4U(0, id) ? aO.aCz.aD0(3) : aCy() : 18 === id ? (aO.j4.close(0, 3253), aO.j4.a4U(0,
id), aCy()) : 20 === id ? aO.j4.a4U(0, id) ? aO.aD1.aD2(vq) : aCy() : 21 === id && (aO.j4.a4U(0, id) ? aO.aCz.aD3(vq.gH, vq.gI, vq.gJ) : aCy())
}, this.aD4 = function() {
15 === id ? this.aCx() : 16 === id ? aO.aCz.aD0(2) : 17 === id ? aO.aCz.aD0(3) : 18 === id ? at.d5(8, this.aCS, new gG("⏳ Connecting...", 16)) : 20 === id ? aO.aD1.aD2(vq) : 21 === id && aO.aCz.aD3(vq.gH, vq.gI, vq.gJ)
}, this.aD5 = function(code, ya = !1, data) {
if (ya || code === id)
if (15 === code) at.d5(7, this.aCS);
else if (16 === code) at.d5(7, this.aCS);
else if (17 === code)
if (aO.j4.close(0, 3252), bA.j4.p2(0), 0 < bA.dK.data[117].oD.length) {
let data = bA.j4.p3(0);
bA.np.nq(105, data.p4), bA.np.nq(106, data.password), at.d5(8, this.aCS, new gG("⏳ Connecting...", 16))
} else bA.np.nq(105, ""), at.j4.aCw();
else 20 === code ? at.d5(7, this.aCS) : 21 === code && at.d5(10, 0, new a3T(data))
}, this.aCx = function() {
ac.d4(48), ac.pP(24, Math.floor(aj.pow(24) * Math.random())), ac.pP(24, Math.floor(aj.pow(24) * Math.random())), af.ct(ac.mP), bA.np.nq(110, ad.pA.ry(ad.pA.rw(8))), aO.aD1.aD6()
}, this.oN = function() {
aCc.oN()
}, this.resize = function() {
aCc.resize(), aCu.resize()
}, this.ui = function(iT) {
2 === iT && at.j4.aCw()
}, aCc = new oE(title, [new nT("❌ " + aW.no[92], function() {
at.j4.aCw()
}, aa.lJ)]), aCu = new nr(aCc.oJ, "Find Server...")
}
function aCW() {
let aD7, aD8, aD9, aDA;
aD9 = new nh([.4, .24], [.5, .5], 2 / 3), aD8 = [new nT("⚔️<br>Multiplayer", function() {
aDB(0)
}, aa.l9), new nT("🗡️<br>Single Player", function() {
aDB(1)
}, aa.lL), new nT("🔑<br>My Account", function() {
aDB(2)
}, aa.la), new nT("⚙️<br>Menu", function() {
aDB(3)
}, aa.kv),
new nT("FX Client settings", function() {
WindowManager.openWindow("settings");
}, "rgba(0, 0, 20, 0.5")
];
for (let eJ = 0; eJ < aD8.length; eJ++) aD8[eJ].button.style.position = "absolute";
function aDB(g4) {
b8.cy.setState(10), b8.cy.setState(13), aV.uX(), a0.g8() || a0.a6W(), 0 === g4 ? at.j4.aDC() : 1 === g4 ? at.j4.aDD() : 2 === g4 ? at.d5(8, at.th, new gG("⏳ Connecting...", 16)) : 3 === g4 && at.d5(1, at.th)
}
this.show = function() {
y.setState(0), b8.cy.setState(12), this.resize();
for (let eJ = 0; eJ < aD8.length; eJ++) document.body.appendChild(aD8[eJ].button);
1 !== b8.id || b8.dg < 5 || (aDA && b4.dc > aDA + 144e5 ? b8.os.setState(14) : aDA = b4.dc)
}, this.oN = function() {
for (let eJ = 0; eJ < aD8.length; eJ++) document.body.removeChild(aD8[eJ].button)
}, this.resize = function() {
aD9.resize();
var gap = .5 * b1.gap,
a3b = 10 / 99 * aD9.gA,
a0W = .1 * aD9.gA,
fO = aD9.fO + a0W,
a3b = aD9.fP + a3b + 4 * gap,
a0W = .5 * (aD9.gA - gap) - a0W,
gF = .5 * (aD9.fP + aD9.gF - a3b - gap);
aZ.g5.vP(aD8[0].button, fO, a3b, a0W, gF), aZ.g5.vP(aD8[1].button, fO + a0W + gap, a3b, a0W, gF), aZ.g5.vP(aD8[2].button, fO, a3b + gF + gap, a0W, gF), aZ.g5.vP(aD8[3].button, fO + a0W + gap, a3b + gF + gap, a0W, gF);
aZ.g5.vP(aD8[4].button, fO, a3b + gF * 2 + gap * 2, a0W * 2 + gap, gF / 3);
for (let eJ = 0; eJ < aD8.length; eJ++) aD8[eJ].button.style.font = aZ.g5.g6(0, aZ.g5.vR(.075 * aD9.gF)), aZ.g5.nS(aD8[eJ].button, 5)
}, this.gL = function() {
if (y.a4p(), r.gL(), m.gL(), aw.gL(), ay.gL(), a0.g8()) {
if (settings.displayWinCounter) {
const size = Math.floor(aD9.gA * 0.03);
gM.font = aZ.g5.g6(1, size);
gM.fillStyle = "#ffffff";
const text = "Win count: " + wins_counter;
const textLength = gM.measureText(text).width;
gM.textAlign = "left";
gM.textBaseline = "middle";
gM.fillText(text, gM.canvas.width - textLength - size / 2, size);
};
gM.imageSmoothingEnabled = !1;
var iT = a0.a4s("territorial.io"),
kO = aD9.gA / iT.width;
gM.setTransform(kO, 0, 0, kO, aD9.fO, aD9.fP), aD7 = aD7 || aZ.uw.vo(iT, aZ.uw.vu, [0, 0, 0]);
for (let fO = -1; fO <= 1; fO += 2)
for (let fP = -1; fP <= 1; fP += 2) gM.drawImage(aD7, fO, fP);
gM.drawImage(iT, 0, 0), gM.imageSmoothingEnabled = !0;
var gj = a0.a4s("logo"),
aDG = .6666 * kO * iT.height / gj.height,
jl = .5 * aL.gA,
jm = aD9.fP + .5 * kO * iT.height - .5 * aDG * gj.height;
gM.setTransform(aDG, 0, 0, aDG, jl - .6 * kO * iT.width, jm), gM.drawImage(gj, 0, 0), gM.setTransform(aDG, 0, 0, aDG, jl + .6 * kO * iT.width - aDG * gj.width, jm), gM.drawImage(gj, 0, 0), gM.setTransform(1, 0, 0, 1, 0, 0), gM
.imageSmoothingEnabled = !0
}
}, this.fX = function(fO, fP) {}, this.ui = function(iT) {}
}
function a3q(title, n7, aDH = [new nT("❌ " + aW.no[92], function() {
at.tm()
}, aa.lJ)]) {
let aCc, aCu;
this.show = function() {
aCc.show(), this.resize()
}, this.oN = function() {
aCc.oN()
}, this.resize = function() {
aCc.resize(), aCu.resize()
}, this.ui = function(iT) {
2 === iT && aDH[0].nW()
}, aCc = new oE(title, aDH), aCu = new nr(aCc.oJ, n7), aZ.g5.textAlign(aCc.oJ.style, 1)
}
function a3T(data) {
let aCc, aDI, aDH;
function aDJ(gn) {
var gI = parseInt(data.data[0][0]) - 1 + gn;
at.d5(8, 0, new gG("⏳ Connecting...", 21, {
gH: data.gH,
gI: gI,
gJ: gI + Math.abs(gn)
}))
}
this.show = function() {
aCc.show(), this.resize()
}, this.oN = function() {
aCc.oN()
}, this.resize = function() {
aCc.resize(), aDI.resize()
}, this.ui = function(iT) {
2 === iT && aDH[0].nW()
}, aDH = [new nT("❌ " + aW.no[92], function() {
at.tm()
}), new nT("⬆️ Prev 100 (🧈 1.00)", function() {
aDJ(-100)
}), new nT("⬆️ Prev 10 (🧈 0.10)", function() {
aDJ(-10)
}), new nT("⬇️ Next 10 (🧈 0.10)", function() {
aDJ(10)
}), new nT("⬇️ Next 100 (🧈 1.00)", function() {
aDJ(100)
}), new nT("🛠️ Custom", function() {
at.d5(11, 10, new aDK({
gH: data.gH
}))
})], aCc = new oE(data.title, aDH), aDI = new o4(aCc.oJ, data.data)
}
function aDK(vq) {
let aCc, aCd;
var nF;
this.show = function() {
aCc.show(), this.resize()
}, this.oN = function() {
aCc.oN()
}, this.resize = function() {
aCc.resize(), aCd.resize()
}, this.ui = function(iT) {
1 !== iT && at.aCZ(10)
}, aCc = new oE("🛠️ List Options", [new nT("❌ " + aW.no[92], function() {
at.aCZ(10)
})]), aCd = new nD(aCc.oJ, ((nF = []).push(function() {
function aDO() {
var gI = Math.floor(aDM.dI.value),
gJ = Math.floor(aDN.dI.value);
return {
vA: Math.min(gI, gJ),
aCC: Math.max(gI, gJ)
}
}
function aDQ() {
var nC = ((nC = aDO()).aCC - nC.vA + (nC.vA <= 0) + 1) / 100;
aDP.button.innerHTML = aZ.jr.wA(aDP.button.innerHTML, nC)
}
let aCo = new n0,
aDM = new nx({
title: "startIndex",
value: 0,
g4: -1
}, "number"),
aDN = new nx({
title: "endIndex",
value: 199,
g4: -1
}, "number"),
aDP = (aCo.n3("Start Index"), aCo.nB(aDM), aDM.dI.style.marginBottom = "0.5em", aCo.n3("End Index"), aCo.nB(aDN), new nT("Go (🧈 2.02)", function() {
var nC = aDO();
at.d5(8, at.aCa().aCS, new gG("⏳ Connecting...", 21, {
gH: vq.gH,
gI: nC.vA,
gJ: nC.aCC
}))
}));
return aDM.dI.addEventListener("input", aDQ), aDN.dI.addEventListener("input", aDQ), aCo.nB(new nu([aDP.button])), aCo
}()), nF))
}
function aCX() {
var aCc, aCd, nF;
this.show = function() {
aCc.show(), this.resize()
}, this.oN = function() {
aCc.oN()
}, this.resize = function() {
aCc.resize(), aCd.resize()
}, this.ui = function(iT) {
2 === iT && at.d5(7, at.aCb(7).aCS)
}, aCc = new oE("Login", [new nT("❌ " + aW.no[92], function() {
at.d5(7, at.aCb(7).aCS)
}, aa.lJ), new nT("➡️ Login", function() {
bA.np.nq(105, ae.pA.pJ(aCd.nG[0].n1[0].dI.value, 5)), bA.np.nq(106, ae.pA.pJ(aCd.nG[1].n1[0].dI.value, 8)), at.d5(8, at.aCb(7).aCS, new gG("⏳ Connecting...", 18))
}, aa.l3)]), aCd = new nD(aCc.oJ, ((nF = []).push(function() {
var aCo = new n0;
return aCo.n3("Account Name"), aCo.nB(new nx({
title: "AccountName",
value: "",
g4: -1
})), aCo
}()), nF.push(function() {
let aCo = new n0,
aCq = (aCo.n3("Password"), new nx({
title: "Password",
value: "",
g4: -1
}));
return aCq.dI.type = "password", aCo.nB(aCq), aCo.nB(new nu([new nT("Show", function() {
"Show" === this.innerText ? (this.innerText = "Hide", aCq.dI.type = "text") : (this.innerText = "Show", aCq.dI.type = "password")
}).button])), aCo
}()), nF))
}
function aCR() {
this.dK = {}, this.tu = function() {
at.d5(5, 5)
}, this.aDD = function() {
at.p6(), z.ct()
}, this.aDC = function() {
at.p6(), x.a4Q(bA.dK.data[10].value), x.ct()
}, this.aCw = function() {
at.d5(0 === y.tk() ? 5 : 0)
}
}
function td(title, n7, aDV = !1, aDH = [new nT("❌ " + aW.no[92], function() {
at.tm()
}, aa.lJ)]) {
var aCc, aCu;
this.show = function() {
aCc.show(), this.resize()
}, this.oN = function() {
aCc.oN()
}, this.resize = function() {
aCc.resize(), aCu.resize()
}, this.ui = function(iT) {
2 === iT && aDH[0].nW()
}, aCc = new oE(title, aDH), aCu = new nr(aCc.oJ, n7), aDV && aZ.g5.textAlign(aCc.oJ.style, 1)
}
function aCV() {
let aCc, oT;
function aDW() {
au.dM.hideCMPButton(), at.d5(0);
var g3 = aY.aDc(oT.oY());
(0 < g3.length && g3 === aY.me.aDZ || aY.aDe.pU(g3)) && aY.aDd()
}
this.show = function(aDX) {
this.aDY(aDX), aCc.show(), this.resize()
}, this.aDY = function(aDX) {
0 === b.sh ? (aDX = aDX || oT.oY(), oT.oW(aDX)) : (b.fS || (aY.me.aDZ = aY.aDa.s9()), oT.oW(aY.aDb(aY.me.aDZ)))
}, this.oN = function() {
aCc.oN()
}, this.resize = function() {
aCc.resize(), oT.resize()
}, this.ui = function(iT) {
1 === iT ? aDW() : at.tm()
}, aCc = new oE("▶️ " + aW.no[82], [new nT("❌ " + aW.no[92], function() {
at.tm()
}, aa.lJ), new nT("🔲 " + aW.no[93], function() {
oT.oZ()
}), new nT("📋 " + aW.no[94], function() {
oT.oa()
}), new nT("🗑️ " + aW.no[95], function() {
oT.clear()
}), new nT("▶️ " + aW.no[96], function() {
aDW()
}, aa.l7)]), oT = new oR("replayData", "Insert the replay link here!"), aCc.oJ.appendChild(oT.oU)
}
function aCU() {
var aCc, aCd, nF, aDf, aCo;
this.show = function() {
aCc.show(), this.resize()
}, this.oN = function() {
aCc.oN()
}, this.resize = function() {
aCc.resize(), aCd.resize()
}, this.ui = function(iT) {
1 === iT ? aDf.dI.blur() : at.d5(1)
}, aCc = new oE("⚙️ " + aW.no[81], [new nT("💾 " + aW.no[97], function() {
at.d5(1)
}, aa.l3), new nT("🔄 " + aW.no[98], function() {
at.p6(), bA.np.p8(), at.d5(2)
})]), nF = [], (aCo = new n0).n3(aW.no[99]), aCo.n4(aW.no[100]), nF.push(aCo), (aCo = new n0).n3(bA.dK.data[0].title), aCo.n8(new o9(bA.dK.data[0])), nF.push(aCo), (aCo = new n0).n3(bA.dK.data[10].title), aCo.n8(new o9(bA.dK.data[10])), nF
.push(aCo), (aCo = new n0).n3(bA.dK.data[1].title), aCo.n8(new o9(bA.dK.data[1])), nF.push(aCo), (aCo = new n0).n3(bA.dK.data[9].title), aCo.n8(new o9(bA.dK.data[9])), nF.push(aCo), (aCo = new n0).n3(bA.dK.data[11].title), aCo.n8(new o9(bA.dK
.data[11])), nF.push(aCo), (aCo = new n0).n3(bA.dK.data[2].title), aCo.nB(new nm(bA.dK.data[2])), nF.push(aCo), (aCo = new n0).n3(bA.dK.data[7].title), aCo.nB(new nm(bA.dK.data[7])), nF.push(aCo), (aCo = new n0).n3(bA.dK.data[8].title),
aCo.nB(new nm(bA.dK.data[8])), nF.push(aCo), (aCo = new n0).n3(bA.dK.data[5].title), aDf = new nx(bA.dK.data[5]), aCo.nB(aDf), nF.push(aCo), aCd = new nD(aCc.oJ, nF)
}
function aCT() {
var aCc, aDg, aDi, oF, aDh = !1;
this.show = function() {
aCc.show(), this.resize(), this.iE()
}, this.oN = function() {
aCc.oN()
}, this.resize = function() {
aCc.resize(), aDg.resize()
}, this.ui = function(iT) {
2 === iT && at.tm()
}, this.iE = function() {
!aDh || k.xY(b.ea) || (at.p6(), at.d5(1))
}, aDi = [new nT("🔑 " + aW.no[125], function() {
at.d5(8, 1, new gG("⏳ Connecting...", 16))
}), new nT("⚙️ " + aW.no[81], function() {
at.d5(2)
}), new nT("▶️ " + aW.no[82], function() {
at.d5(3, 1, "")
}), new nT("🔗 " + aW.no[83], function() {
at.d5(4, 1, new td("🔗 " + aW.no[83], aZ.g5.vS(["Android App", "iOS App", "Discord", "Changelog", "Clans", "Clan Results", "Players", "Tutorial", "Terms", "Privacy"], [ai.a3m, ai.te, ai.a3o, ai.aDn, ai.aDo, ai.aDp, ai.aDq, ai.aDr,
ai.aDs, ai.aDt
]), !1, [new nT("❌ " + aW.no[92], function() {
at.d5(1)
}, aa.lJ)]))
}), new nT(" " + aW.no[84], function() {
at.d5(4, 1, new td(" " + aW.no[84], dB + "<br><a href='" + ai.aDn + "' target='_blank'>" + ai.aDn + "</a>" +
"<br><br><b>" + "FX Client v" + fx_version + " " + fx_update + "<br><a href='https://discord.gg/dyxcwdNKwK' target='_blank'>FX Client Discord server</a>" +
"<br><a href='https://github.com/fxclient/FXclient' target='_blank'>Github repository</a></b>", !0, [new nT("❌ " + aW.no[92], function() {
at.d5(1)
}, aa.lJ)]))
}), new nT("🗑️ " + aW.no[85], function() {
at.d5(4, 1, new td("🗑️ " + aW.no[85],
"Do you want to delete all locally stored data, like usernames, account data and setting data? Your account will be deleted automatically after 3 months of inactivity. To prevent the storage of new data, it is recommended to close the game after deletion.",
!1, [new nT("❌ " + aW.no[92], function() {
at.d5(1)
}), new nT("🗑️ Delete", function() {
b8.cy.tT(), at.d5(1)
})]))
}), new nT(aW.no[86], function() {
b8.cy.tU(), at.d5(4, 1, new td("User Privacy", "If the privacy window doesn't open, please deactivate all your adblockers.<br>Additionally, check out our Privacy Policy: <a href='" + ai.aDt + "' target='_blank'>" + ai.aDt +
"</a>", !1, [new nT("❌ " + aW.no[92], function() {
at.d5(1)
}, aa.lJ)]))
})], oF = [new nT("❌ " + aW.no[87], function() {
at.tm()
}, aa.lJ)], 8 === y.tk() && aDi.unshift(new nT("📈 " + aW.no[88], function() {
at.p6(), 2 <= b2.aDm && (b3.ul(), b4.d3 = !0)
})), 8 === y.tk() && !b.fS && k.xY(b.ea) && (aDh = !0, aDi.unshift(new nT("🏳️ " + aW.no[89], function() {
aX.fk.m6(), at.p6(), k.fT && k.ul()
}))), 1 === b8.id && 5 <= b8.dg && aDi.push(new nT(aW.no[90], function() {
b8.cy.tV()
})), aCc = new oE("📙 " + aW.no[91], oF), aDg = new ne(aDi, aCc.oJ)
}
function bH() {
"function" != typeof Math.log2 && (Math.log2 = function(fO) {
return Math.log(fO) / Math.log(2)
}), "function" != typeof Math.log10 && (Math.log10 = function(fO) {
return Math.log(fO) / Math.log(10)
}), "function" != typeof Math.sign && (Math.sign = function(fO) {
return 0 < fO ? 1 : fO < 0 ? -1 : 0
})
}
function c0() {
var a0j, aDv, aDw, aDx, aDu = !1;
function aDy() {
aDu = !0, a0j = -1, aDv = new Array(4);
for (var eJ = 3; 0 <= eJ; eJ--) aDv[eJ] = !1;
var aDz = Math.floor(1 + .02 * aL.min);
aDw = new Array(4), (aDx = new Array(4))[1] = aDx[3] = aDw[0] = aDw[2] = 0, aDx[0] = aDw[3] = -aDz, aDw[1] = aDx[2] = aDz
}
function aE0() {
if (-1 !== a0j)
if (0 !== b.sh && g.kT()) {
for (var aE1 = !1, eJ = 3; 0 <= eJ; eJ--) aDv[eJ] && (aE1 = !0, hA += aDw[eJ], hC += aDx[eJ], a5.u9(aDw[eJ], aDx[eJ]), q.a0S());
aE1 ? b4.d3 = !0 : aC.kK()
} else aC.kK()
}
this.uf = function(g4) {
0 !== b.sh && g.kT() && (aDu || aDy(), aDv[g4] = !0, -1 === a0j) && (a0j = setInterval(aE0, 20), aE0())
}, this.uj = function(g4) {
if (0 !== b.sh && (aDu || aDy(), aDv[g4] = !1, -1 !== a0j)) {
for (var aE1 = !1, eJ = 3; 0 <= eJ; eJ--) aE1 = aE1 || aDv[eJ];
aE1 || this.kK()
}
}, this.kK = function() {
if (aDu && -1 !== a0j) {
for (var eJ = 3; 0 <= eJ; eJ--) aDv[eJ] = !1;
clearInterval(a0j), a0j = -1
}
}
}
function c1() {
this.j4 = new aE2, this.j8 = new aE3, this.lk = new aE4, this.a4V = new aE5, this.aCz = new aE6, this.aD1 = new aE7, this.mO = new aE8, this.yH = new aE9, this.aEA = new aEB, this.aEC = new aED, this.aEE = new aEF, this.ct = function() {
this.j4.ct()
}
}
function aE2() {
var aEG, aEI;
this.a50 = 5, this.a51 = this.a50 - 1, this.a4T = this.a50 + this.a51, this.a4S = [0, 1, 5, 2, 6, 3, 7, 4, 8], this.aEH = null;
function dT(eJ) {
return aEI[eJ].aDu && aEG[eJ].dT()
}
function aEQ(tg) {
aEI[tg].dc = b4.dc, aEI[tg].aEK = !1
}
this.tp = 0, this.to = 0, this.ct = function() {
this.aEH = new Array(this.a50);
this.aEH[0] = "territorial.io";
var eJ, aAe = aM.aAx(0);
for (aM.wX(0), eJ = 1; eJ < this.a50; eJ++) this.aEH[eJ] = i.sF() + ".territorial.io";
for (aM.wX(aAe), aEG = new Array(this.a4T), aEI = new Array(this.a4T), eJ = this.a4T - 1; 0 <= eJ; eJ--) aEI[eJ] = {
aDu: !1,
dc: 0,
aEK: !1
};
this.a4U(0, 0)
}, this.aEL = function(eJ) {
return aEG[eJ]
}, this.aEM = function() {
return this.to < this.a50 ? this.to : this.to - this.a51
}, this.iE = function() {
for (let eJ = this.a4T - 1; 0 <= eJ; eJ--) this.a4O(eJ) && b4.dc > aEI[eJ].dc + 15e3 && aO.lk.aEN(eJ, aEI[eJ].aEK);
!this.a4O(0) && b4.dc > aEI[0].dc + 8e3 && (aEI[0].dc = b4.dc, this.a4U(0, 0))
}, this.a4U = function(tg, aCS) {
if (aEI[tg].aDu) {
if (aEG[tg].dT()) return aEG[tg].aEP(aCS), aEG[tg].a4O();
aEG[tg].oN()
}
return this.aEO(tg, aCS), !1
}, this.aEO = function(tg, aCS) {
aEI[tg].aDu = !0, aEQ(tg), aEG[tg] = new aER, aEG[tg].ct(tg, aCS)
}, this.aEP = function(tg, aCS) {
dT(tg) && aEG[tg].aEP(aCS)
}, this.aES = function(tg, aCS) {
aO.aCz.aET(tg)
}, this.a4O = function(eJ) {
return aEI[eJ].aDu && aEG[eJ].a4O()
}, this.send = function(tg, mP) {
aEQ(tg), aEG[tg].send(mP)
}, this.uQ = function(tg) {
8 === y.tk() && (aEI[tg].aEK = !0, aO.j8.iq = !0)
}, this.close = function(tg, aEU) {
dT(tg) && aEG[tg].close(aEU)
}, this.aEV = function(tg, aEU) {
bC.ts(aEU), dT(tg) && aEG[tg].close(aEU)
}, this.tv = function(aEU) {
for (let eJ = this.a4T - 1; 0 <= eJ; eJ--) this.close(eJ, aEU)
}, this.aEW = function(tg, aEU) {
for (var eJ = this.a4T - 1; 0 <= eJ; eJ--) eJ !== tg && this.close(eJ, aEU)
}, this.wg = function() {
this.close(this.tp, 3246)
}, this.aEX = function(tg, dI) {
aEG[tg].oN(), bC.tf(tg, dI.code)
}
}
function aE3() {
this.iq = !1, this.iE = function() {
b4.iS() % 250 != 249 || b.fS || (aO.aCz.aEY(+(this.iq && 0 < a6.jS[b.ea]), iV + al.j4.mc), this.iq = !1)
}
}
function aE9() {
this.aEa = function(tg, mP) {
af.ct(mP), 0 === af.size ? aO.j4.aEV(tg, 3205) : ((0 === af.mQ(1) ? function(tg) {
var aEe = af.mQ(6);
0 === aEe ? function(tg) {
if (0 === tg && 8 !== y.tk()) {
ay.g2(0, ae.pC.pE(af.mQ(5))), ay.g2(1, "[" + ae.pC.pE(af.mQ(3)) + "]");
var aEn = af.mQ(12),
aEo = af.mQ(6),
ds = new Array(aEn);
for (let eJ = 0; eJ < aEn; eJ++) ds[eJ] = af.mQ(aEo);
r.a0q(ds)
}
}(tg) : 1 === aEe ? function() {
var eJ;
if (8 !== y.tk()) {
var r4, id = af.mQ(1),
position = af.mQ(16),
yj = af.mQ(4),
ds = [];
for (eJ = 0; eJ < yj; eJ++) r4 = af.mQ(14), ds.push({
name: ae.pC.pE(af.mQ(5)),
r4: r4
});
0 === id ? b7.a3M(0, ds, 10, 1, .36, .55, position) : b7.a3M(1, ds, 100, 2, .47, .5, position)
}
}() : 2 === aEe ? aO.aEA.aEh(tg) : 3 === aEe || 4 === aEe ? aK.ct() : 5 !== aEe && 6 !== aEe && 7 !== aEe && 8 !== aEe && (9 === aEe ? aO.aEC.aEi(tg) : 10 === aEe ? aO.aEE.aEj() : 11 === aEe ? aO.aEC.aEk() : 12 ===
aEe ? aO.aEE.aEl() : 13 === aEe && aO.aEC.aEm())
} : function(tg) {
if (8 !== y.tk() && !aK.a52()) return;
if (tg !== aO.j4.tp) aO.j4.aEV(tg, 3244);
else if (0 === af.mQ(1)) b4.sp.aEu(af.mP);
else {
var eJ, m0, tg = af.mQ(2);
if (0 === tg) {
var lk = af.mQ(9);
0 !== a6.jS[lk] && 0 !== a6.jS[b.ea] && (m0 = af.mQ(10), l.lz(lk, b.ea, m0), a5.my(lk, 1, m0))
} else if (1 === tg) ! function() {
var lk = af.mQ(9);
0 !== a6.jS[lk] && 0 !== a6.jS[b.ea] && aT.aAM(0, [lk], !0) && l.mH(lk, 1)
}();
else if (2 === tg) ! function() {
var lk = af.mQ(9),
target = af.mQ(9);
0 !== a6.jS[lk] && 0 !== a6.jS[target] && 0 !== a6.jS[b.ea] && aT.aAM(1, [lk], !0) && (a5.my(lk, 3, 96), a5.my(target, 4, 96), l.yO(lk, target))
}();
else if (dD && !dF) {
var ef = 720;
for (ac.d4(14407), ac.pP(1, 0), ac.pP(6, 10), ef = Math.min(aX.lh.mS.length, 720), eJ = 0; eJ < ef; eJ++) ac.pP(20, aX.lh.mS[eJ]);
aO.j4.send(aO.j4.tp, ac.mP)
}
}
})(tg), b4.aEd())
}, this.a53 = function(mP) {
if (af.ct(mP), af.g4 = 1, 3 === af.mQ(6)) {
af.g4 += 20;
for (var a6F, a6E, name, mP = af.mQ(9), wQ = af.mQ(14), wS = af.mQ(4), a5h = 1 === af.mQ(1), a5i = af.mQ(6), a5j = af.mQ(14), aEt = af.mQ(9) + 1, r0 = [], eJ = 0; eJ < aEt; eJ++) a6F = af.mQ(1), a6E = [af.mQ(6), af.mQ(6), af.mQ(6)],
name = ae.pC.pE(af.mQ(5)), r0.push({
name: name,
a6E: a6E,
a6F: a6F
});
y.a4j(), aq.d4(a5i, a5j), 1 === r0.length && z.a65(wS), b.wP(wQ, mP, r0, wS, a5h, !1)
} else ! function() {
af.g4 += 20;
for (var a6F, a6E, r4, name, a4u = af.mQ(1), wQ = af.mQ(14), wS = af.mQ(4), a5h = 1 === af.mQ(1), a5i = af.mQ(6), a5j = af.mQ(14), r0 = [], eJ = 0; eJ < 2; eJ++) a6F = af.mQ(1), a6E = [af.mQ(6), af.mQ(6), af.mQ(6)], r4 = af.mQ(
14), name = ae.pC.pE(af.mQ(5)), r0.push({
name: name,
a6E: a6E,
r4: r4,
a6F: a6F
});
y.a4j(), aq.d4(a5i, a5j), b.wP(wQ, a4u, r0, wS, a5h, !1)
}()
}, this.a4y = function() {
af.g4 = 1;
var aEe = af.mQ(6),
aEr = af.mQ(10);
return aO.j4.to > aO.j4.a51 && (aEr += aO.j4.a51), aO.j4.to === aEr ? (aO.j4.tp = aEr, !1) : (aO.j4.close(aO.j4.to, 3247), aO.j4.tp = aEr, aK.a4t = af.mQ(10), aK.a4u = af.mQ(3 === aEe ? 9 : 1), aO.j4.a4U(aEr, 5) && aO.lk.aEs(), !0)
}
}
function aEF() {
this.aEj = function() {
bA.j4.oy(), bA.np.nq(105, ad.pA.ry(ad.pA.rw(5))), bA.np.nq(106, ad.pA.ry(ad.pA.rw(8))), bA.np.nq(109, af.mQ(30)), bA.np.nq(108, bA.dK.data[109].value), bA.np.nq(111, bA.dK.data[109].value + 1), bA.np.nq(107, 0), bA.np.nq(110, "")
}, this.aEl = function() {
var aF1;
!(af.size < ac.aF0(180)) && (af.g4 = 175, aF1 = af.mQ(5), af.aF2(180 + 16 * aF1)) ? (af.g4 = 7, bA.np.nq(109, af.mQ(30)), bA.np.nq(107, af.mQ(16)), bA.np.nq(108, af.mQ(30)), bA.np.nq(112, af.mQ(30)), bA.np.nq(111, af.mQ(30)), bA.np.nq(
113, af.aF3(32)), af.g4 += 5, bA.np.nq(122, ae.pC.pE(aF1)), bA.dK.data[123].value && bA.np.nq(124, bA.dK.data[122].value), 8 === at.th && at.aCa().aD5(16, !0)) : aO.j4.aEV(0, 3254)
}
}
function aEB() {
this.aEh = function(tg) {
var eJ, a5K, aF5, aF6, aF7;
if (tg !== aO.j4.to) aO.j4.close(tg, 3239);
else if (6 === y.tk() && aH.ct(), 7 !== y.tk()) aO.j4.close(tg, 3251);
else {
for (a5K = [0, 0, 0, 0], aF5 = af.mQ(6), eJ = 0; eJ < 4; eJ++) a5K[eJ] = af.mQ(aF5);
for (aF6 = af.mQ(4), aF7 = [], eJ = 0; eJ < aF6; eJ++) {
aF7.push({
id: af.mQ(5),
wS: af.mQ(4),
a5h: 1 === af.mQ(1),
q6: af.mQ(6),
a5f: af.mQ(14),
a5k: af.mQ(aF5),
a5l: af.mQ(9) + 1,
a4e: af.mQ(10)
});
for (var a5m = af.mQ(3), a5n = new Array(a5m), a5o = new Array(a5m), hg = 0; hg < a5m; hg++) a5o[hg] = af.mQ(9) + 1, a5n[hg] = ae.pC.pE(af.mQ(3));
aF7[eJ].a5m = a5m, aF7[eJ].a5n = a5n, aF7[eJ].a5o = a5o
}
aH.nq(a5K, aF7)
}
}
}
function aED() {
this.aEi = function(tg) {
var aEw = af.mQ(3),
aF8 = b9.aF9.iE(af.mQ(16), af.mQ(20));
aO.aCz.aFA(tg, aF8, aEw), 0 < aEw || (0 === tg && 0 === bA.dK.data[105].value.length ? aO.aCz.aD0(0) : aO.aD1.aFB(tg), 4 === aO.j4.aEL(tg).aFC() ? 6 === y.tk() && aO.a4V.a4W(tg) : 5 !== aO.j4.aEL(tg).aFC() || 8 !== y.tk() && 10 !== y
.tk() || aO.lk.aEs())
}, this.aEk = function() {
var id = af.mQ(6);
0 === id ? (r.a0m || aO.aCz.aD0(1), 8 === at.th && at.aCa().aD4()) : 21 === id ? 8 === at.th && at.aCa().aD5(17) : 22 === id && (bA.np.nq(106, bA.dK.data[110].value), bA.np.nq(110, ""), 8 === at.th) && at.aCa().aD5(15)
}, this.aEm = function() {
if (af.size < ac.aF0(38)) aO.j4.aEV(0, 3259);
else {
var gH = af.mQ(6),
ef = af.mQ(10),
gQ = af.mQ(15);
if (af.aF2(38 + 51 * ef + 16 * gQ)) {
var data = [];
let kO, vy;
vy = 0 === gH ? (kO = .1, 1) : (kO = .001, 3);
for (let eJ = 0; eJ < ef; eJ++) data.push(["" + (af.mQ(30) + 1), ae.pC.pE(af.mQ(5)), (kO * af.mQ(16)).toFixed(vy)]);
8 === at.th && at.aCa().aD5(21, !1, {
gH: gH,
title: gH ? "Clan Ranking" : "1v1 Player Ranking",
data: data
})
} else aO.j4.aEV(0, 3260)
}
}
}
function aE4() {
this.a3K = function(tg, id) {
ac.d4(24), ac.pP(1, 0), ac.pP(6, 6), ac.pP(1, id), ac.pP(16, Math.abs(4096 + b7.position[id] + b7.a3J[id]) % 65536), aO.j4.send(tg, ac.mP)
}, this.aEN = function(tg, aEK) {
ac.d4(8), ac.pP(1, 0), ac.pP(6, 4), ac.pP(1, aEK ? 1 : 0), aO.j4.send(tg, ac.mP)
}, this.aEs = function() {
ac.d4(58), ac.pP(1, 0), ac.pP(6, 5), ac.pP(8, aO.j4.aEM()), ac.pP(10, aK.a4t), ac.pP(9, aK.a4u), ac.pP(10, dE), ac.pP(14, a.dG), aO.j4.send(aO.j4.tp, ac.mP)
}, this.ll = function(fe) {
ac.d4(27), ac.pP(1, 1), ac.pP(4, 0), ac.pP(22, fe), aO.j4.send(aO.j4.tp, ac.mP)
}, this.ln = function(h9, hZ) {
ac.d4(25), ac.pP(1, 1), ac.pP(4, 1), ac.pP(10, h9), ac.pP(10, hZ), aO.j4.send(aO.j4.tp, ac.mP)
}, this.lr = function(h9, lp) {
ac.d4(24), ac.pP(1, 1), ac.pP(4, 2), ac.pP(10, h9), ac.pP(9, lp), aO.j4.send(aO.j4.tp, ac.mP)
}, this.ls = function(h9, fe) {
ac.d4(37), ac.pP(1, 1), ac.pP(4, 3), ac.pP(10, h9), ac.pP(22, fe), aO.j4.send(aO.j4.tp, ac.mP)
}, this.lw = function(lu, fe) {
ac.d4(37), ac.pP(1, 1), ac.pP(4, 4), ac.pP(10, lu), ac.pP(22, fe), aO.j4.send(aO.j4.tp, ac.mP)
}, this.ly = function(hZ) {
ac.d4(15), ac.pP(1, 1), ac.pP(4, 5), ac.pP(10, hZ), aO.j4.send(aO.j4.tp, ac.mP)
}, this.m2 = function(g4) {
ac.d4(15), ac.pP(1, 1), ac.pP(4, 6), ac.pP(10, g4), aO.j4.send(aO.j4.tp, ac.mP)
}, this.m5 = function(m4) {
ac.d4(6), ac.pP(1, 1), ac.pP(4, 7), ac.pP(1, m4), aO.j4.send(aO.j4.tp, ac.mP)
}, this.m7 = function() {
ac.d4(5), ac.pP(1, 1), ac.pP(4, 8), aO.j4.send(aO.j4.tp, ac.mP)
}, this.mF = function(aFD, aFE) {
ac.d4(24), ac.pP(1, 1), ac.pP(4, 15), ac.pP(9, aFE), ac.pP(10, aFD), aO.j4.send(aO.j4.tp, ac.mP)
}, this.mI = function(yH) {
ac.d4(14), ac.pP(1, 1), ac.pP(4, 14), ac.pP(9, yH), aO.j4.send(aO.j4.tp, ac.mP)
}, this.mM = function(aFF, target) {
var eJ, ef = aFF.length;
for (ac.d4(14 + 9 * ef), ac.pP(1, 1), ac.pP(4, 13), ac.pP(9, target), eJ = 0; eJ < ef; eJ++) ac.pP(9, aFF[eJ]);
aO.j4.send(aO.j4.tp, ac.mP)
}
}
function aE7() {
this.aFH = function() {
ac.d4(39), ac.pP(1, 0), ac.pP(6, 16), aO.aCz.aFG(), aO.j4.send(0, ac.mP)
}, this.aFB = function(tg) {
ac.d4(115), ac.pP(1, 0), ac.pP(6, 17), ae.pA.pR(bA.dK.data[105].value, 5), ae.pA.pR(bA.dK.data[106].value, 8), ac.pP(30, bA.dK.data[109].value), aO.j4.send(tg, ac.mP)
}, this.aD6 = function() {
ac.d4(55), ac.pP(1, 0), ac.pP(6, 18), ae.pA.pQ(bA.dK.data[110].value), aO.j4.send(0, ac.mP)
}, this.aD2 = function(username) {
ac.d4(12 + 16 * username.length), ac.pP(1, 0), ac.pP(6, 20), aO.aCz.aFJ(username), aO.j4.send(0, ac.mP)
}
}
function aE8() {
this.mN = function() {
var ef = b.ht,
sQ = ap.result.sQ,
aFK = sQ.length,
t2 = (ac.d4(40 + 16 * ef + aFK * (33 + 3 * (b.it < 7))), ac.pP(1, 1), ac.pP(4, 10), ac.pP(10, aFK), ac.pP(1, +(2 === b.sV)), ac.pP(24, ap.result.st), a6.t2);
for (let eJ = 0; eJ < ef; eJ++) ac.pP(16, t2[eJ]);
var f5 = a6.f5;
for (let eJ = 0; eJ < aFK; eJ++) {
var em = sQ[eJ];
ac.pP(9, em), ac.pP(24, f5[em])
}
if (b.it < 7) {
var iU = b5.iU;
for (let eJ = 0; eJ < aFK; eJ++) ac.pP(3, 7 & iU[sQ[eJ]])
}
aO.j4.send(aO.j4.tp, ac.mP)
}
}
function aE5() {
this.a4W = function(tg) {
ac.d4(35), ac.pP(1, 0), ac.pP(6, 1), ac.pP(10, dE);
var a6E = aZ.color.vJ(bA.j4.o1());
ac.pP(6, a6E[0]), ac.pP(6, a6E[1]), ac.pP(6, a6E[2]), aO.j4.to = tg, aO.j4.send(tg, ac.mP)
}, this.a5t = function(a5g) {
return ac.d4(11), ac.pP(1, 0), ac.pP(6, 2), ac.pP(4, a5g), aO.j4.send(aO.j4.to, ac.mP), !0
}
}
function aE6() {
this.aET = function(tg) {
ac.d4(39), ac.pP(1, 0), ac.pP(6, 13), ac.pP(14, a.dG), ac.pP(4, b8.id), ac.pP(7, b8.dg), ac.pP(1, +dD), ac.pP(1, +dF), ac.pP(5, (new Date).getHours() % 24), aO.j4.send(tg, ac.mP)
}, this.aFA = function(tg, aF8, aEw) {
ac.d4(26), ac.pP(1, 0), ac.pP(6, 14), ac.pP(3, aEw), ac.pP(16, aF8), aO.j4.send(tg, ac.mP)
}, this.aD0 = function(id) {
ac.d4(13), ac.pP(1, 0), ac.pP(6, 15), ac.pP(6, id), aO.j4.send(0, ac.mP)
}, this.aD3 = function(gH, gI, gJ) {
ac.d4(75), ac.pP(1, 0), ac.pP(6, 21), ac.pP(6, gH), ac.pP(1, +(gI < 0)), ac.pP(1, +(gJ < 0)), ac.pP(30, Math.abs(gI)), ac.pP(30, Math.abs(gJ)), aO.j4.send(0, ac.mP)
}, this.aFL = function(gH, aFM, aDS, aDT) {
ac.d4(20 + 16 * aDS.length + 30), ac.pP(1, 0), ac.pP(6, 22), ac.pP(6, gH), ac.pP(2, aFM), this.aFJ(aDS), ac.pP(30, Math.abs(aDT)), aO.j4.send(0, ac.mP)
}, this.aFN = function(aEr, nC) {
ac.d4(7 + 26 * nC.length), ac.pP(1, 0), ac.pP(6, 9);
for (let eJ = 0; eJ < nC.length; eJ++) ac.pP(16, nC[eJ][0]), ac.pP(10, nC[eJ][1]);
aO.j4.send(aEr, ac.mP)
}, this.aEY = function(aFO, a7W) {
ac.d4(20), ac.pP(1, 0), ac.pP(6, 19), ac.pP(1, aFO), ac.pP(12, a7W), aO.j4.send(aO.j4.tp, ac.mP)
}, this.aFJ = function(username) {
ac.pP(5, username.length), ad.pC.pQ(username)
}
}
function aER() {
var tg, aCS, ty, aFP = ["wss://", "/s50/", "/s51/", "/s52/"];
function aES() {
aO.j4.aES(tg, aCS)
}
function aFU(dI) {
aO.yH.aEa(tg, new Uint8Array(dI.data))
}
function aFV() {}
function aEX(dI) {
aO.j4.aEX(tg, dI)
}
this.ct = function(g4, aFQ) {
tg = g4, aCS = aFQ;
g4 = aFP[0];
tg < aO.j4.a50 ? g4 += aO.j4.aEH[tg] + aFP[1 + dA] : g4 += aO.j4.aEH[0] + "/i" + (1 + dA) + (tg - aO.j4.a51) + "/", (ty = new WebSocket(g4)).binaryType = "arraybuffer", ty.onopen = aES, ty.onmessage = aFU, ty.onclose = aEX, ty.onerror =
aFV
}, this.aFS = function() {
return ty.readyState === ty.CONNECTING
}, this.a4O = function() {
return ty.readyState === ty.OPEN
}, this.dT = function() {
return this.aFS() || this.a4O()
}, this.aEP = function(aFQ) {
aCS = aFQ
}, this.aFC = function() {
return aCS
}, this.send = function(mP) {
this.a4O() && ty.send(mP)
}, this.close = function(aEU) {
this.dT() && (ty.close(aEU), this.oN())
}, this.oN = function() {
ty.onopen = null, ty.onmessage = null, ty.onclose = null, ty.onerror = null
}
}
function cg() {
var aFW = !1,
yd = 0,
gA = 0,
qw = 0,
gap = 0,
gV = null,
qr = null,
v7 = null;
function aFY() {
for (var a5V, aFb = 0, ef = 0, iT = Math.floor(gA / 2), gY = Math.floor(qw / 2), a5U = 1.5 * Math.PI, eJ = b.wN; 0 <= eJ; eJ--) ef += v7[eJ], 0 === v7[eJ] && aFb++;
if (aFW = !1, qr.clearRect(0, 0, gA, gA), qr.fillStyle = aa.kh, qr.fillRect(0, 0, gA, gA), qr.fillStyle = aa.gN, qr.fillRect(0, 0, gA, gap), qr.fillRect(0, 0, gap, gA), qr.fillRect(gA - gap, 0, gap, gA), qr.fillRect(0, gA - gap, gA, gap), 0 <
ef)
if (aFb === b.wN) {
for (eJ = b.wN; 0 <= eJ; eJ--)
if (0 < v7[eJ]) {
! function(eJ, iT, gY) {
qr.fillStyle = b5.a5Z[b5.t8[eJ]], qr.beginPath(), qr.arc(iT, iT, gY, 0, 2 * Math.PI), qr.fill()
}(eJ, iT, gY);
break
}!
function(iT) {
var fontSize = iT / 3;
qr.font = aZ.g5.g6(1, fontSize), qr.fillStyle = aa.gN, qr.fillText("100%", iT, iT + .1 * fontSize)
}(iT)
} else {
for (eJ = 0; eJ <= b.wN; eJ++) 0 < v7[eJ] && (! function(eJ, iT, gY, a5U, a5V) {
qr.fillStyle = b5.a5Z[b5.t8[eJ]], qr.beginPath(), qr.arc(iT, iT, gY, a5U, a5V), qr.lineTo(iT, iT), qr.fill()
}(eJ, iT, gY, a5U, a5V = a5U + 2 * Math.PI * v7[eJ] / ef), function(iT, gY, a5U, a5V) {
var df = (a5V - a5U) / (2 * Math.PI),
fontSize = +gY * Math.min(df, .37);
fontSize < 8 || (a5U = (a5U + a5V) / 2, a5V = Math.floor(100 * df + .5) + "%", gY *= .525 - Math.max(.6 * (df - .7), 0), qr.font = aZ.g5.g6(1, fontSize), qr.fillStyle = aa.gN, qr.fillText(a5V, iT + Math.cos(a5U) * gY, iT +
Math.cos(a5U + 1.5 * Math.PI) * gY))
}(iT, gY, a5U, a5V), 0 !== eJ && a5X(iT, gY, a5U), a5U = a5V);
a5X(iT, gY, 1.5 * Math.PI)
}!
function(iT, gY) {
qr.beginPath(), qr.arc(iT, iT, gY, 0, 2 * Math.PI), qr.stroke()
}(iT, gY)
}
function a5X(iT, gY, a5a) {
qr.beginPath(), qr.moveTo(iT, iT), qr.lineTo(iT + Math.cos(a5a) * gY, iT + Math.cos(a5a + 1.5 * Math.PI) * gY), qr.stroke()
}
this.ct = function() {
if (b.hT) {
var eJ;
for (yd = 0, v7 = new Uint32Array(b.wN + 1), eJ = b.wN; 0 <= eJ; eJ--) v7[eJ] = 0;
for (eJ = iV - 1; 0 <= eJ; eJ--) v7[b5.iU[iW[eJ]]] += 1;
this.resize()
} else v7 = qr = gV = null
}, this.zS = function() {
return gA
}, this.resize = function() {
b.hT && (gA = Math.floor(b8.cy.g0() && !b.kG ? .18 * aL.min : .13 * aL.g1), gA = (gA *= 1 + (.5 + .2 * b8.cy.g0()) * b.kG) + gA % 2, qw = Math.floor(7 * gA / 8), (gV = gV || document.createElement("canvas")).width = gA, gV.height = gA,
qr = gV.getContext("2d", {
alpha: !0
}), gap = Math.max(1, .015 * gA), qr.lineWidth = gap, qr.strokeStyle = aa.gN, aZ.g5.textAlign(qr, 1), aZ.g5.textBaseline(qr, 1), aFY())
}, this.sy = function() {
return v7[this.t9()]
}, this.se = function() {
return yd = 31, this.iE(), this.t9()
}, this.t9 = function() {
let aFZ = 0;
for (let eJ = b.wN; 0 < eJ; eJ--) v7[eJ] > v7[aFZ] && (aFZ = eJ);
return aFZ
}, this.iE = function() {
if (b.hT && 32 <= ++yd) {
var eJ;
for (yd = 0, eJ = b.wN; 0 <= eJ; eJ--) v7[eJ] = 0;
for (eJ = iV - 1; 0 <= eJ; eJ--) v7[b5.iU[iW[eJ]]] += a6.f5[iW[eJ]];
aFW = !0
}
}, this.g7 = function() {
b.hT && aFW && aFY()
}, this.gL = function() {
b.hT && (b.kG ? gM.drawImage(gV, b1.gap, b1.gap) : gM.drawImage(gV, b1.gap, zT + 2 * b1.gap))
}
}
function cO() {
this.d6 = function() {
var value, tc;
0 === b8.id && (value = function(key) {
if ("undefined" == typeof URLSearchParams) return null;
var aDX = window.location.search,
aDX = new URLSearchParams(aDX).get(key);
if ("string" != typeof aDX || aDX.length < 1) return null;
return aDX
}("replay"), (tc = new URL(window.location.href)).search = "", history.replaceState(null, "", tc.toString()), value) && at.d5(3, 0, value)
}
}
function c2() {
var aFg, ds;
this.ct = function() {
for (var eJ = (ds = new Uint16Array(101)).length - 1; 0 <= eJ; eJ--) ds[eJ] = eX(32768 * eJ, 100);
this.wX(0)
}, this.value = function(em) {
return ds[em]
}, this.aAx = function() {
return eX(aFg - 1, 2)
}, this.wX = function(aAe) {
aFg = 2 * aAe % 32768 + 1
}, this.random = function() {
return aFg = 167 * aFg % 32768
}, this.hj = function(jP) {
return eX(jP * this.random(), 32768)
}, this.iN = function(em) {
return 0 !== em && this.random() < this.value(em)
}
}
function cK() {
this.me = new aFh, this.aDa = new aFi, this.aDe = new aFj, this.ct = function(wQ, r0, wS, wT) {
var aFk;
b.fS || ((aFk = {}).wR = b.ea, aFk.wQ = wQ, aFk.r0 = r0, aFk.wS = wS, aFk.wT = wT, aFk.a5i = aq.q6, aFk.a5j = aq.a5f, z.a6A(aFk), this.me.ct(aFk))
}, this.iE = function() {
b.fS || (this.me.iE(), 3 !== at.th) || b4.iS() % 15 != 5 && 2 !== b.sh || at.aCa().aDY()
}, this.aDd = function() {
var vK = this.me.aFk;
0 === b.sh && y.a4j(), aq.d4(vK.a5i, vK.a5j), 1 === vK.r0.length && (z.a65(vK.wS), z.a67(vK.a68, vK.a69)), aO.j4.close(aO.j4.tp, 3257), aO.j4.tp = 0, b.wP(vK.wQ, vK.wR, vK.r0, vK.wS, vK.wT, !0)
}, this.aDc = function(g3) {
var eJ = g3.indexOf("=");
return 0 <= eJ ? g3.substring(eJ + 1) : g3
}, this.aDb = function(g3) {
return "https://territorial.io/?replay=" + g3
}
}
function aFh() {
this.aFm = null, this.aFn = null, this.aFo = null, this.aFp = null, this.aFq = null, this.aFr = null;
var aFs = 0;
this.aFk = null, this.aDZ = "", this.ct = function(aFk) {
this.aFm = [], this.aFn = [], this.aFo = [], this.aFp = [], this.aFq = [0], this.aFr = [0], aFs = 0, this.aFk = aFk, this.aDZ = ""
}, this.mf = function(id, dt, dv, dx) {
b.fS || 2 === b.sh || (0 === this.aFq[aFs] && (this.aFr[aFs] ? (this.aFq.push(1), this.aFr.push(0), aFs++) : this.aFq[aFs] = 1), this.aFm.push(id), this.aFn.push(dt), this.aFo.push(void 0 === dv ? 0 : dv), this.aFp.push(void 0 === dx ?
0 : dx), this.aFr[aFs]++)
}, this.iE = function() {
0 === this.aFq[aFs] ? this.aFr[aFs]++ : (this.aFq.push(0), this.aFr.push(0), aFs++)
}
}
function aFj() {
function aFy(g3, aG0 = !1) {
aG0 ? l.xj = "Replay Error: " + g3 : at.d5(4, 3, new td("⚠️ Replay Error", g3, !0))
}
this.pU = function(g3) {
if (ae.pA.pM(ae.pA.pK(ae.pA.pI(g3))), l.xj = "", ! function() {
if (af.size < 10) aFy("File Too Small");
else if (af.mQ(9) !== dC && aFy("Incompatible Version Error", !0), af.mQ(31) !== af.size) aFy("Size Error");
else {
if (function(gF) {
var eJ, em = af.mP,
ef = af.size,
a7W = 0;
for (eJ = 7; eJ < ef; eJ++) a7W = a7W + em[eJ] & 65535;
return a7W === gF
}(af.mQ(16))) return 1;
aFy("Hash Error")
}
return
}()) return !1;
var aFk;
(aFk = {}).wR = af.mQ(9), aFk.wQ = af.mQ(14), aFk.wS = af.mQ(4), aFk.wT = 1 === af.mQ(1), aFk.a5i = af.mQ(6), aFk.a5j = af.mQ(14), aFk.aG1 = af.mQ(10), aY.me.aFk = aFk,
function() {
var eJ, a6F, a6E, name, ef = aY.me.aFk.aG1,
r0 = [];
for (eJ = 0; eJ < ef; eJ++) a6F = af.mQ(1), a6E = [af.mQ(6), af.mQ(6), af.mQ(6)], name = ae.pC.pE(af.mQ(5)), r0.push({
name: name,
a6E: a6E,
a6F: a6F
});
if (aY.me.aFk.r0 = r0, 8 === aY.me.aFk.wS)
for (eJ = 0; eJ < ef; eJ++) r0[eJ].r4 = af.mQ(14)
}();
var eJ, ef, aG2 = aY.me.aFk;
if (1 === aG2.r0.length)
for (ef = 6 < aG2.wS ? 1 : aG2.wS + 2, aG2.a68 = new Array(ef), aG2.a69 = new Array(ef), eJ = 0; eJ < ef; eJ++) aG2.a68[eJ] = af.mQ(3), aG2.a69[eJ] = af.mQ(9) + 1;
return !! function() {
var pV = af.mQ(5),
aG3 = af.mQ(30),
aG4 = af.mQ(30);
if (aG3 + aG4 > 8 * af.size) return void aFy("Corrupted File");
return function(ef) {
var eJ, id, aG7 = new Uint8Array(ef),
aG8 = new Uint16Array(ef),
aG9 = new Uint32Array(ef),
aGA = new Uint32Array(ef);
for (aY.me.aFm = aG7, aY.me.aFn = aG8, aY.me.aFo = aG9, aY.me.aFp = aGA, eJ = 0; eJ < ef; eJ++) aG7[eJ] = id = af.mQ(4), aG8[eJ] = af.mQ(9), 0 === id ? aG9[eJ] = af.mQ(22) : 1 === id ? (aG9[eJ] = af.mQ(10), aGA[eJ] = af
.mQ(10)) : 2 === id ? (aG9[eJ] = af.mQ(10), aGA[eJ] = af.mQ(9)) : 3 === id || 4 === id ? (aG9[eJ] = af.mQ(10), aGA[eJ] = af.mQ(22)) : 5 === id || 6 === id ? aG9[eJ] = af.mQ(10) : 7 === id && (aG9[eJ] = af.mQ(1))
}(aG3),
function(ef, pV) {
var eJ, aFq = new Uint8Array(ef),
aFr = new Array(ef);
for (aFr.fill(0), aY.me.aFq = aFq, aY.me.aFr = aFr, eJ = 0; eJ < ef; eJ++) aFq[eJ] = af.mQ(1), aFr[eJ] = af.mQ(pV)
}(aG4, pV), 1
}() && (af.g4 < 8 * af.size - 13 || af.g4 > 8 * af.size ? (aFy("Out Of Bounds Error: " + af.g4 + " " + 8 * af.size), !1) : (aY.me.aDZ = g3, !0))
}
}
function aFi() {
this.s9 = function() {
var aG2, pV = function() {
var eJ, aFr = aY.me.aFr,
ef = aFr.length,
max = 0;
for (eJ = 0; eJ < ef; eJ++) max = Math.max(max, aFr[eJ]);
return pb(Math.max(max, 1))
}(),
aGC = function(pV) {
return 179 + function() {
var eJ, r0 = aY.me.aFk.r0,
ef = r0.length,
aGC = 24 * ef;
for (eJ = 0; eJ < ef; eJ++) aGC += 16 * r0[eJ].name.length;
8 === aY.me.aFk.wS && (aGC += 14 * ef);
return aGC
}() + (1 === aY.me.aFk.r0.length ? 12 * aY.me.aFk.a68.length : 0) + function() {
var eJ, aFm = aY.me.aFm,
ef = aFm.length,
aGC = 13 * ef,
aGN = [22, 20, 19, 32, 32, 10, 10, 1, 0, 0];
for (eJ = 0; eJ < ef; eJ++) aGC += aGN[aFm[eJ]];
return aGC
}() + function(pV) {
return aY.me.aFr.length * (1 + pV)
}(pV)
}(pV);
ac.d4(aGC + (6 - aGC % 6) % 6), aG2 = aY.me.aFk, ac.pP(9, dC), ac.pP(31, ac.size), ac.g4 += 16, ac.pP(9, aG2.wR), ac.pP(14, aG2.wQ), ac.pP(4, aG2.wS), ac.pP(1, aG2.wT), ac.pP(6, aG2.a5i), ac.pP(14, aG2.a5j), ac.pP(10, aG2.r0.length);
var eJ, r0 = aY.me.aFk.r0,
ef = r0.length;
for (eJ = 0; eJ < ef; eJ++) ac.pP(1, r0[eJ].a6F), ac.pP(18, (r0[eJ].a6E[0] << 12) + (r0[eJ].a6E[1] << 6) + r0[eJ].a6E[2]), ac.pP(5, r0[eJ].name.length), ad.pC.pQ(r0[eJ].name);
if (8 === aY.me.aFk.wS)
for (eJ = 0; eJ < ef; eJ++) ac.pP(14, r0[eJ].r4);
return function() {
var eJ, aG2 = aY.me.aFk;
if (1 === aG2.r0.length)
for (eJ = 0; eJ < aG2.a68.length; eJ++) ac.pP(3, aG2.a68[eJ]), ac.pP(9, aG2.a69[eJ] - 1)
}(),
function(pV) {
var eJ, aFm = aY.me.aFm,
dt = aY.me.aFn,
dv = aY.me.aFo,
dx = aY.me.aFp,
ef = aFm.length;
for (ac.pP(5, pV), ac.pP(30, ef), ac.pP(30, aY.me.aFr.length), eJ = 0; eJ < ef; eJ++) ac.pP(4, aFm[eJ]), ac.pP(9, dt[eJ]), 0 === aFm[eJ] ? ac.pP(22, dv[eJ]) : 1 === aFm[eJ] ? (ac.pP(10, dv[eJ]), ac.pP(10, dx[eJ])) : 2 === aFm[
eJ] ? (ac.pP(10, dv[eJ]), ac.pP(9, dx[eJ])) : 3 === aFm[eJ] || 4 === aFm[eJ] ? (ac.pP(10, dv[eJ]), ac.pP(22, dx[eJ])) : 5 === aFm[eJ] || 6 === aFm[eJ] ? ac.pP(10, dv[eJ]) : 7 === aFm[eJ] && ac.pP(1, dv[eJ])
}(pV),
function(pV) {
var eJ, aFq = aY.me.aFq,
aFr = aY.me.aFr,
ef = aFq.length;
for (eJ = 0; eJ < ef; eJ++) ac.pP(1, aFq[eJ]), ac.pP(pV, aFr[eJ])
}(pV), ac.g4 !== aGC && l.tq("Encoder Index Error: " + ac.g4 + " " + aGC), ac.g4 = 40, ac.pP(16, function() {
var eJ, em = ac.mP,
ef = ac.size,
a7W = 0;
for (eJ = 7; eJ < ef; eJ++) a7W = a7W + em[eJ] & 65535;
return a7W
}()), af.ct(ac.mP), ad.pA.ry(ad.pA.rw(eX(aGC - 1, 6) + 1))
}
}
function c7() {
var iT, ya = !1,
aGO = !1,
aGP = -1e4;
function resize(gn) {
iT = 0, a0.g8() && (aGR(gn) || ya) && (ya = !1, b1.resize(), ay.ct(), w.ct(), aw.ct(), x.resize(), r.resize(), m.resize(), b7.resize(), at.resize(), 1 <= b.sh ? (t.resize(!1), s.resize(), u.resize(), q.resize(), p.resize(), l.resize(), k
.resize(), ab.resize(), aJ.resize(), n.resize(), o.resize(), j.resize(), b3.resize(), a5.resize(), v.resize(), b6.resize(), q.a0S()) : (2 === y.tk() && z.resize(), y.a4l(), y.a4o()), b4.d3 = !0)
}
function aGQ(df) {
return df && 128 < df ? Math.floor(df) : 128
}
function aGR(gn) {
var gA, gF, aGT, qw = aGQ(document.documentElement.clientWidth),
zs = aGQ(window.visualViewport && 2 !== b8.id ? window.visualViewport.height : document.documentElement.clientHeight);
return gA = qw, gF = zs, aGT = 0 !== b8.id || gA < gF ? 700 : 1200, aGT = Math.min(aGT / ((gA + gF) / 2), 1), aGT = 0 === bA.dK.data[1].value ? 2 * aGT / 3 : Math.min(aGT + (bA.dK.data[1].value - 1) * (1 - aGT) / 2, 1), aL.nN = (window
.devicePixelRatio || 1) * aGT, hoveringTooltip.canvasPixelScale = aL.nN, gn && !aGO ? (aGO = !0, document.body.removeChild(u8)) : aGO && (aGO = !1, document.body.appendChild(u8)), gA = Math.floor(.5 + qw * aL.nN), gF = Math.floor(.5 +
zs * aL.nN), (gA !== aL.gA || gF !== aL.gF) && (aL.gA = gA, aL.gF = gF, aL.min = a1J(gA, gF), aL.max = y0(gA, gF), aL.g1 = eX(gA + gF, 2), aL.oQ = gA / gF, u8.width = gA, u8.height = gF, u8.style.width = qw + "px", u8.style.height =
zs + "px", 1)
}
this.gA = 0, this.gF = 0, this.min = 0, this.max = 0, this.g1 = 0, this.oQ = 1, this.nN = 1, this.cu = function() {
this.gA = aGQ(document.documentElement.clientWidth) + 2, this.gF = aGQ(document.documentElement.clientHeight) + 2
}, this.ct = function() {
iT = 1, u8 = document.getElementById("canvasA"), (gM = u8.getContext("2d", {
alpha: makeMainMenuTransparent
})).imageSmoothingEnabled = !1, aGR(0)
}, this.iE = function() {
aQ.iE(), 50 <= ++iT && resize(0)
}, this.d8 = function(gn) {
ya = !0, resize(gn)
}, this.uq = function() {
aGP + 1e3 > b4.dc || (aGP = b4.dc, resize(0))
}
}
function c3() {
var player, ha, pu, po, jj, jk, jl, jm, g4, aGV, id;
function aGb() {
var hZ;
if (a1.er(pu)) hZ = b.ej;
else {
if ((hZ = a1.eq(pu)) === player) return void aGd(!0);
if (!fw(player, hZ)) return function(hZ) {
var max = a6.f5[hZ] * b.ve - a6.eb[hZ];
max <= 0 || (ha -= max = max < ha ? max : ha, player === b.ea && (l.mC(max, 0, hZ), b2.ed[16] += max), hZ === b.ea && (l.yT(max, player), b2.ed[10] += max), a6.eb[hZ] += max, a5.mD(hZ, max))
}(hZ), void aGd(!0)
}
player === b.ea && (b2.ed[13] += ha), f.eZ(player, id), a3.ee(player, aGV), a6.eg[player].push(po), a3.hW(player, ha, hZ), d.hX(player, !0)
}
function aGd(aGg) {
f.eZ(player, id), a3.ee(player, aGV), aGg && (a6.eb[player] += ha)
}
function aGX() {
a1.a7C(pu, player) && a1.a7E(pu)
}
function aGW(eJ, a8f, zO, hi, kT) {
if (g4 = eJ, id = a8f, player = zO, jj = a1.jn(hi), jk = a1.gK(hi), jl = a1.jn(kT), jm = a1.gK(kT), po = pu = a1.qP(jj, jk), -1 !== (aGV = a3.jq(player, id))) return ha = a3.eR(player, aGV), 1;
aGX(), f.eZ(player, id)
}
this.iE = function(eJ, id, zO, hi, kT) {
aGW(eJ, id, zO, hi, kT) && (aGX(), function() {
var aGh = eX(ha, 128);
ha -= aGh = aGh < 1 ? 1 : aGh, player === b.ea && (b2.ed[15] += aGh);
if (ha <= b.eY) return player === b.ea && (b2.ed[15] += ha), void aGd(!1);
return a3.f4(player, aGV, ha), 1
}()) && (eJ = a1.qP(jj, jk), pu = Math.abs(jl - jj) >= Math.abs(jm - jk) ? eJ + eA[jj < jl ? 1 : 3] : eJ + eA[jk < jm ? 2 : 0], jj = a1.jn(pu), jk = a1.gK(pu), f.jZ(g4, pu), ! function() {
if (a1.eh(pu)) return;
return 1
}() ? aGb() : a1.fn(pu) && a1.a7H(pu, player))
}, this.jc = function(zO, hi) {
player = zO, pu = a1.qP(a1.jn(hi), a1.gK(hi)), aGX()
}
}
function cd() {
this.aF9 = new aGi, this.sw = new aGj
}
function aGj() {
this.sx = function() {
let ef = iV;
var r0 = iW,
t2 = a6.t2,
a4v = this.a7l();
for (let eJ = 0; eJ < ef; eJ++) {
var em = r0[eJ];
a1.sR(em) && (t2[em] = a4v)
}
var mh = a6.mh,
hQ = a6.hQ,
hR = a6.hR,
aAP = a6.aAP;
ef = b.ht;
for (let eJ = 0; eJ < ef; eJ++)(0 === aAP[eJ] || hR[eJ] < 1 || 2 * mh[eJ] > 3 * (hQ[eJ] + hR[eJ])) && (t2[eJ] = 0);
let ss = 0;
for (let eJ = 0; eJ < ef; eJ++) ss += 0 < t2[eJ];
return ss
}, this.a7l = function() {
return Math.min(65535, b4.iS())
}
}
function aGi() {
function aGp(df, aAe, min, max) {
return min + (df * aAe + 137) % (max - min)
}
this.iE = function(aGk, aGl) {
let aGn = 1;
for (let eJ = 0; eJ <= 10; eJ++) aGn = function(aGn, aGk, aGl, fg) {
var ef = 65536 + (aGn * fg + 7 & 16383);
for (let eJ = 0; eJ < ef; eJ++) aGn = 1 + aGn * aGk % aGl;
return aGn
}(aGn, aGk, aGl, eJ), aGk = aGp(aGk, aGn, 16384, 65536), aGl = aGp(aGl, aGn, 1 << 18, 1 << 20);
return aGn - 1 & 65535
}
}
function c4() {
var aGq, aGr, fn, aGs;
this.ct = function() {
var eJ, fO, fP, a6E, aGt, gA, gF, qr, gS, pm, df, em, i6, hg, x9;
if (function() {
if (fn = !0, aGs = "rgb(" + aq.pj[0] + "," + aq.pj[1] + "," + aq.pj[2] + ")", aq.aAl(aq.q6)) return 1;
return fn = !1, 0
}()) aGr = null;
else {
for (aGq = eX(96, 4), aGt = 1 === aq.q6 ? (a6E = 0, 160) : (a6E = 128, 32), aGs = "rgb(" + a6E + "," + a6E + "," + a6E + ")", aGr = new Array(4), eJ = 3; 0 <= eJ; eJ--) {
if (aGr[eJ] = document.createElement("canvas"), gA = eJ % 2 == 0 ? aq.eE : aGq, gF = eJ % 2 == 0 ? aGq : aq.eF + 2 * aGq, aGr[eJ].width = gA, aGr[eJ].height = gF, pm = (gS = (qr = aGr[eJ].getContext("2d", {
alpha: !1
})).getImageData(0, 0, gA, gF)).data, eJ % 2 == 0)
for (fP = aGq - 1; 0 <= fP; fP--)
for (df = aGt + Math.floor((fP + 1) * (a6E - aGt) / (aGq + 1)), fO = gA - 1; 0 <= fO; fO--) pm[em = 4 * ((0 === eJ ? aGq - fP - 1 : fP) * gA + fO)] = df, pm[em + 1] = df, pm[em + 2] = df, pm[em + 3] = 255;
else {
for (fO = aGq - 1; 0 <= fO; fO--)
for (df = aGt + Math.floor((fO + 1) * (a6E - aGt) / (aGq + 1)), fP = gF - 1 - aGq; aGq <= fP; fP--) pm[em = 4 * (fP * gA + (3 === eJ ? aGq - fO - 1 : fO))] = df, pm[em + 1] = df, pm[em + 2] = df, pm[em + 3] = 255;
for (hg = 1; 0 <= hg; hg--)
for (fO = aGq - 1; 0 <= fO; fO--)
for (fP = aGq - 1; 0 <= fP; fP--) i6 = (Math.pow(fO * fO + fP * fP, .5) + 1) / (aGq + 1), df = aGt + Math.floor((1 < i6 ? 1 : i6) * (a6E - aGt)), pm[em = 4 * ((0 === hg ? aGq - fP - 1 : fP + hg * (gF - aGq)) * gA + (
1 === eJ ? fO : aGq - fO - 1))] = df, pm[em + 1] = df, pm[em + 2] = df, pm[em + 3] = 255
}
qr.putImageData(gS, 0, 0)
}
x9 = aGt, aq.pe.fillStyle = "rgb(" + x9 + "," + x9 + "," + x9 + ")", aq.pe.fillRect(0, 0, aq.eE, 1), aq.pe.fillRect(0, aq.eF - 1, aq.eE, 1), aq.pe.fillRect(0, 0, 1, aq.eF), aq.pe.fillRect(aq.eE - 1, 0, 1, aq.eF)
}
}, this.qn = function() {
var hg = fn ? 0 : -aGq;
aCK(hg, hg, aq.eE - 2 * hg, aq.eF - 2 * hg, az.aGw, az.aGx, az.aGy, az.aGz) || (gM.fillStyle = aGs, gM.fillRect(0, 0, aL.gA, aL.gF))
}, this.gL = function() {
fn || (aCJ(0, -aGq, aq.eE, aGq, az.aGw, az.aGx, az.aGy, az.aGz) && gM.drawImage(aGr[0], az.aH0, az.aH1 - aGq), aCJ(aq.eE, -aGq, aGq, aq.eF + 2 * aGq, az.aGw, az.aGx, az.aGy, az.aGz) && gM.drawImage(aGr[1], az.aH0 + aq.eE, az.aH1 - aGq),
aCJ(0, aq.eF, aq.eE, aGq, az.aGw, az.aGx, az.aGy, az.aGz) && gM.drawImage(aGr[2], az.aH0, az.aH1 + aq.eF), aCJ(-aGq, -aGq, aGq, aq.eF + 2 * aGq, az.aGw, az.aGx, az.aGy, az.aGz) && gM.drawImage(aGr[3], az.aH0 - aGq, az.aH1 - aGq))
}
}
function cR() {
this.fo = new aH2, this.a7j = new aH3, this.qo = new aH4, this.j4 = new aH5, this.hI = new aH6, this.x9 = new aH7, this.aH8 = new aH9, this.iD = new aHA, this.mq = new aHB, this.ct = function() {
this.qo.ct(), this.j4.ct(), this.hI.ct(), this.x9.ct()
}
}
function aHA() {
function aHH(player, hi, aHJ, aHK) {
for (var jj, jk, gA, gF, gY, aHL, jl, jm, ef = hi + aHK, eJ = hi; eJ < ef; eJ += aHJ)
if (jj = (jj = a6.i2[player] - eJ) < 1 ? 1 : jj, jk = a6.i5[player] - eJ, jl = (jl = a6.i1[player] + eJ) >= aq.eE - 1 ? aq.eE - 2 : jl, gF = (jm = (jm = a6.i4[player] + eJ) >= aq.eF - 1 ? aq.eF - 2 : jm) - (jk = jk < 1 ? 1 : jk), jl = (
gY = eX(aM.random() * (2 * (jl - jj + jm - jk)), aM.value(100))) <= (gA = jl - jj) ? (aHL = jj + gY, jk) : gY <= gA + gF ? (aHL = jl, jk + gY - gA) : gY <= 2 * gA + gF ? (aHL = jj + gY - gA - gF, jm) : (aHL = jj, jk + gY - 2 *
gA - gF), aHI(player, jm = a1.qP(aHL, jl))) return jm;
return -1
}
function aHI(va, en) {
return a1.eh(en) && (a1.er(en) || va !== (en = a1.eq(en)) && fw(va, en) && 0 < a6.ey[en].length)
}
this.iE = function(player) {
return !(0 === a6.ey[player].length || a6.eb[player] < 100) && al.j4.mc !== al.j4.mo && (al.j4.mb[player] !== al.j4.mp && aZ.fU.mj(player, 203, 32, 16) ? !! function(player) {
var en = function(player) {
var eJ, qT, qS, jj = a6.i2[player],
jk = a6.i5[player],
h1 = a6.i1[player] - jj + 1,
h4 = a6.i4[player] - jk + 1,
df = aM.value(100);
for (eJ = 0; eJ < 32; eJ++)
if (qT = jj + aj.fK(aM.random() * h1, df), qS = jk + aj.fK(aM.random() * h4, df), qT = a1.qP(qT, qS), aHI(player, qT)) return qT;
return -1
}(player);
if (0 <= en) return al.mq.mr(player, en >> 2);
if (0 <= (en = aHH(player, 1, 4, 40))) return al.mq.mr(player, en >> 2);
if (0 <= (en = aHH(player, 40, 8, 200))) return al.mq.mr(player, en >> 2);
return
}(player) && !! function(va) {
if (0 === am.dn[2]) return void console.log("error 325234");
var aHF = am.dn[1] + ak.gZ[am.dn[2] - 1] << 2;
if (a1.er(aHF)) return 1;
return aHF = a1.eq(aHF), va !== aHF && !!fw(va, aHF)
}(player) && function(player) {
return aZ.fU.ml(player), al.j4.ms(player), !0
}(player) : void 0)
}
}
function aH2() {
function aHO(aHN) {
var aHY = 4 + .03 * (1 + 1.5 * b8.cy.g0()) * aL.g1 / hB;
return ak.h7(aHN, am.dn[1]) < aHY
}
this.fp = function(player, aHN) {
return !!ak.hD(aHN) && al.j4.mc !== al.j4.mo && al.j4.mb[player] !== al.j4.mp && 0 !== a6.ey[player].length && !!al.mq.mr(player, aHN) && !!aHO(aHN)
}, this.lv = function(player, lu, aHN) {
return !!(ak.hD(aHN) && this.mt(player, lu) && al.mq.mu(aHN) && aHO(aHN))
}, this.mt = function(player, id) {
for (var aHP, gI = player << 3, gJ = gI + al.j4.mb[player], aHQ = al.j4.aHQ, aHR = al.j4.aHR, eJ = gI; eJ < gJ; eJ++)
if (id === aHR[aHP = aHQ[eJ]]) return am.dn[3] = aHP, !0;
return !1
}, this.lt = function(fe) {
var xA = al.x9.xA;
return !!this.mt(b.ea, xA) && (aX.fk.lt(xA, fe), !0)
}, this.xB = function(gD, gE, aHS = !1) {
var eJ, gJ, aHT, aHQ, aHU, aHV, aHW, i6, yF, aHX, player = b.ea,
ef = al.j4.mb[player];
if (0 === ef) return !1;
for (aHQ = al.j4.aHQ, aHV = al.j4.aHV, yF = al.j4.yF, gJ = (player = player << 3) + ef, aHU = .4 * aZ.g5.nJ(.5) * aL.g1 / hB, aHT = -1, eJ = player; eJ < gJ; eJ++) aHX = aHQ[eJ], aHW = 16 * (.625 + .125 * Math.sqrt(Math.sqrt(yF[aHX]))), (
i6 = ak.gx(gD, gE, aHV[aHX])) - aHW < aHU && (aHU = i6, aHT = aHX);
return !(aHT < 0 || (aHS ? am.dk[0] = al.j4.aHR[aHT] : al.x9.xA = al.j4.aHR[aHT], 0))
}, this.xI = function(gD, gE) {
var eJ, aHT, aHU, aHV, aHW, i6, yF, ef = al.j4.mc;
if (ef < 1) return -1;
for (aHV = al.j4.aHV, yF = al.j4.yF, aHU = 1e3, aHT = -1, eJ = 0; eJ < ef; eJ++) aHW = 16 * aZ.g5.nJ(.5) * (.625 + .125 * Math.sqrt(Math.sqrt(yF[eJ]))), (i6 = ak.gx(gD, gE, aHV[eJ])) < aHU && i6 < aHW && (aHU = i6, aHT = eJ);
return aHT
}
}
function aH3() {
this.a7k = function(player) {
for (var aHQ = al.j4.aHQ, gI = player << 3, eJ = gI + al.j4.mb[player] - 1; gI <= eJ; eJ--) this.aHZ(aHQ[eJ])
}, this.aHZ = function(aHa) {
var j4 = al.j4,
aHb = j4.mc - 1,
aHc = j4.yE[aHa],
aHd = j4.aHe[aHa],
aHf = j4.aHV[aHa];
j4.mc = aHb, j4.yE[aHa] = j4.yE[aHb], j4.aHg[aHa] = j4.aHg[aHb], j4.aHh[aHa] = j4.aHh[aHb], j4.aHV[aHa] = j4.aHV[aHb], j4.aHi[aHa] = j4.aHi[aHb], j4.yF[aHa] = j4.yF[aHb], j4.aHe[aHa] = j4.aHe[aHb], j4.aHR[aHa] = j4.aHR[aHb], j4.aHj[aHa] =
j4.aHj[aHb], j4.aHQ[j4.yE[aHa]] = aHa,
function(a5a) {
var player = a5a >> 3,
j4 = al.j4,
ef = j4.mb[player] - 1,
aHm = (player << 3) + ef;
j4.mb[player] = ef, aHm !== a5a && (j4.aHQ[a5a] = j4.aHQ[aHm], j4.yE[j4.aHQ[a5a]] = a5a)
}(aHc), al.hI.hI[ak.hH(j4.aHV[aHa])][j4.aHe[aHa]] = aHa, aHb = ak.hH(aHf), aHc = aHd, aHb = al.hI.hI[aHb], j4 = aHb.pop(), aHc !== aHb.length && (aHb[aHc] = j4, al.j4.aHe[j4] = aHc)
}
}
function aH4() {
var aHo, rI = 8,
aHp = new Array(2);
function aHq(g4) {
var gP = rI + 4,
vE = aZ.g5.pa(gP, gP),
gW = aZ.g5.getContext(vE, !0),
gS = aZ.g5.getImageData(gW, gP, gP),
pm = gS.data;
return aHr(pm, gP + 1, g4), aHr(pm, gP + 2, g4), aHr(pm, 2 * gP + 1, g4), aHr(pm, 2 * gP - 3, g4), aHr(pm, 2 * gP - 2, g4), aHr(pm, 3 * gP - 2, g4), aHr(pm, gP * (gP - 3) + 1, g4), aHr(pm, gP * (gP - 2) + 1, g4), aHr(pm, gP * (gP - 2) + 2,
g4), aHr(pm, gP * (gP - 2) - 2, g4), aHr(pm, gP * (gP - 1) - 3, g4), aHr(pm, gP * (gP - 1) - 2, g4), gW.putImageData(gS, 0, 0), vE
}
function aHr(pm, fe, g4) {
fe *= 4;
pm[fe] = 255, pm[1 + fe] = 255, pm[2 + fe] = g4, pm[3 + fe] = 255
}
function pa(player) {
var vE = aZ.g5.pa(rI, rI);
return function(gW, player) {
var fO, fP, h1, fe, aHt, a5b, gP = rI,
gS = aZ.g5.getImageData(gW, gP, gP),
pm = gS.data,
pW = (gP >> 1) - .5,
aGs = a1.yr(player),
aHv = aZ.pk.v1(aGs, .5);
aZ.pk.v2(aGs, aHv, 300) || aZ.pk.v4(aGs, 100);
for (fP = 0; fP < gP; fP++)
for (fO = 0; fO < gP; fO++) a5b = (gP - 1.5) * (gP - 1.5) / 4, aHt = (h1 = (h1 = fO - pW) * h1 + (h1 = fP - pW) * h1) <= (gP - 4.5) * (gP - 4.5) / 4 ? aHv : aGs, pm[fe = 4 * (fP * gP + fO)] = aHt[0], pm[1 + fe] = aHt[1], pm[2 +
fe] = aHt[2], pm[3 + fe] = a5b < h1 ? 0 : 255;
gW.putImageData(gS, 0, 0)
}(aZ.g5.getContext(vE, !0), player), vE
}
this.ct = function() {
aHo = new Array(b.ej), aHp[0] = aHq(255), aHp[1] = aHq(0)
}, this.gL = function() {
var eJ, player, aHw, ha, aHx, h0, aI0, aI2, aI3, aHV = al.j4.aHV,
yE = al.j4.yE,
yF = al.j4.yF,
aI4 = aHo,
aI5 = b.ea,
aI6 = -1,
ef = al.j4.mc,
aI7 = aL.gA,
aI8 = aL.gF,
aI9 = aq.eE << 4,
w5 = hB,
fg = w5 / rI,
jj = hA / w5,
jk = hC / w5,
h1 = (aI7 + hA) / w5 - jj,
h4 = (aI8 + hC) / w5 - jk,
gW = gM;
for (al.fo.mt(b.ea, al.x9.xA) && (aI6 = am.dn[3]), gW.fillStyle = aa.gN, aZ.g5.textAlign(gW, 1), aZ.g5.textBaseline(gW, 1), eJ = 0; eJ < ef; eJ++) player = yE[eJ] >> 3, ha = yF[eJ], aHw = .625 + .125 * Math.sqrt(Math.sqrt(ha)), aHx = (
h0 = aHV[eJ]) % aI9 / 16 - aHw, h0 = aI8 * (Math.floor(h0 / aI9) / 16 - aHw - jk) / h4, aI0 = -2 * (aI3 = w5 * aHw) * (1 + (aI2 = +(player === aI5)) / 8), aI2 = aI2 * aI3 / 4, (aI3 = aI7 * (aHx - jj) / h1) < aI0 || h0 < aI0 ||
aI7 + aI2 < aI3 || aI8 + aI2 < h0 || (aHx = aHw * w5, gW.imageSmoothingEnabled = (aI0 = 2 * aHw * fg) < 3, void 0 === (aI2 = aI4[player]) && (aI4[player] = aI2 = pa(player)), player === aI5 && (gW.setTransform(aI0, 0, 0, aI0, aI3 -
2 * aI0, h0 - 2 * aI0), gW.drawImage(aHp[+(eJ === aI6)], 0, 0)), gW.setTransform(aI0, 0, 0, aI0, aI3, h0), gW.drawImage(aI2, 0, 0), (aHw = Math.floor(function(ha) {
if (ha < 1e3) return .42;
if (ha < 1e4) return .34;
if (ha < 1e6) return .26;
if (ha < 1e8) return .19;
return .15
}(ha) * aHx)) < 6) || (gW.setTransform(1, 0, 0, 1, 0, 0), gW.font = aZ.g5.g6(1, aHw), gW.fillText(aZ.jr.js(ha), aI3 + aHx, h0 + aHx + .1 * aHw));
gW.imageSmoothingEnabled = !1, gW.setTransform(1, 0, 0, 1, 0, 0)
}
}
function aH9() {
this.iE = function() {
for (var aIC, aH8, aHj = al.j4.aHj, aHV = al.j4.aHV, aHh = al.j4.aHh, eJ = al.j4.mc - 1; 0 <= eJ; eJ--) aIC = aHV[eJ], 0 !== (aH8 = aHj[eJ]) && aIC === aHh[eJ] && (! function(eJ, aIE, gm) {
var hZ, player = al.j4.yE[eJ] >> 3,
gm = aIE + ak.gZ[gm] << 2,
eJ = al.j4.yF[eJ];
if (a1.er(gm)) hZ = b.ej;
else {
if ((hZ = a1.eq(gm)) === player) return aZ.fU.mB(player, eJ);
if (!fw(player, hZ)) return aX.iX.m9(player, hZ, eJ)
}
player === b.ea && (b2.ed[13] += eJ);
a6.eg[player].push(aIE << 2), a3.hW(player, eJ, hZ), d.hX(player, !0)
}(eJ, ak.hG(aIC), aH8 - 1), al.a7j.aHZ(eJ))
}
}
function aH5() {
this.aIF = null, this.mo = 512, this.mp = 8, this.mc = 0, this.jU = 0, this.yE = new Uint16Array(this.mo), this.aHg = new Uint32Array(this.mo), this.aHh = new Uint32Array(this.mo), this.aHV = new Uint32Array(this.mo), this.aHi = new Uint16Array(
this.mo), this.yF = new Uint32Array(this.mo), this.aHe = new Uint16Array(this.mo), this.aHR = new Uint16Array(this.mo), this.aHj = new Uint8Array(this.mo), this.mb = new Uint8Array(b.ej), this.aHQ = new Uint16Array(this.mp * b.ej), this
.ct = function() {
this.jU = 0, this.mc = 0, this.aIF = new Uint8Array(aq.eE + aq.eF), this.mb.fill(0)
}, this.ms = function(player) {
var ef = this.mc,
aIG = ak.hF(am.dn[0]),
aIH = this.mb[player],
aII = (player << 3) + aIH;
a6.jS[player] = 2, this.yE[ef] = aII, this.aHg[ef] = aIG, this.aHV[ef] = aIG, this.aHh[ef] = ak.hF(am.dn[1]), this.aHi[ef] = 0, this.yF[ef] = am.dj[0], this.aHe[ef] = al.hI.ms(ef, ak.hH(aIG)), this.aHR[ef] = this.jU, this.aHj[ef] = am.dn[
2], this.jU = this.jU + 1 & 1023, this.aHQ[aII] = ef, this.mb[player] = aIH + 1, this.mc++
}, this.lt = function() {
var aHP = am.dn[3];
this.aHg[aHP] = this.aHV[aHP], this.aHh[aHP] = ak.hF(am.dn[1]), this.aHi[aHP] = 0, this.aHj[aHP] = am.dn[2]
}, this.iE = function() {
if (b4.iS() % 5 == 3) {
al.aH8.iE(), ! function(xM) {
var eJ, aIM, aIN, aIO, aIP, aIG, aIT, aIU, eo, en, aHg = xM.aHg,
aHh = xM.aHh,
aHV = xM.aHV,
yF = xM.yF,
aHi = xM.aHi,
aHe = xM.aHe,
xM = xM.mc,
aI9 = aq.eE << 4;
for (eJ = xM - 1; 0 <= eJ; eJ--) aIN = aHV[eJ], aIM = aHh[eJ], aIN !== aIM && (aIG = aHg[eJ], aIT = aIM % aI9 - (aIP = aIG % aI9), aIU = ~~((aIM + .5) / aI9) - (aIG = ~~((aIG + .5) / aI9)), eo = ~~Math.sqrt(aIT * aIT + aIU *
aIU + .5), en = 4e5 + 2e4 * ~~Math.sqrt(.5 + (Math.sqrt(yF[eJ] + .5) << 4)), 65535 <= (en = aHi[eJ] + Math.max(~~((.5 + en) / eo), 1)) ? aHV[eJ] = aIO = aIM : (aHi[eJ] = en, aHV[eJ] = aIO = aIP + aj.fK(en * aIT,
65536) + aI9 * (aIG + aj.fK(en * aIU, 65536))), aHe[eJ] = al.hI.aIW(aHe[eJ], aIN, aIO))
}(this), ! function(xM) {
var eJ, pz, pW, hp, iT, aIX, re, aIY, pu, ge, jj, jk, aIZ, aHU, aIa, pv, aIG, aId, ef = xM.mc,
aHV = xM.aHV,
yE = xM.yE,
yF = xM.yF,
hI = al.hI.hI,
aIe = hI.length,
aIf = al.hI.aIf,
aI9 = aq.eE << 4,
aIg = b.hT,
aIh = b5.iU,
en = (ef - 1) * (b4.iS() % 2);
for (eJ = 0; eJ < ef; eJ++) {
for (pz = Math.abs(eJ - en), aIG = aHV[pz], pW = ak.hH(aIG), pu = yE[pz] >> 3, jj = aIG % aI9, jk = ~~((aIG + .5) / aI9), aIG = yF[pz], aId = 80 + ~~Math.sqrt(.5 + (Math.sqrt(aIG + .5) << 8)), aHU = Math.min(aId * aId,
262144), aIa = -1, hp = 0; hp < 9; hp++)
if (!((aIX = pW + aIf[hp]) < 0 || aIe <= aIX))
for (aIY = hI[aIX], re = aIY.length, iT = 0; iT < re; iT++) aIZ = aIY[iT], pv = yE[aIZ] >> 3, pu == pv || aIg && aIh[pu] === aIh[pv] || (pv = aHV[aIZ], (pv = (ge = jj - pv % aI9) * ge + (ge = jk - ~~((pv + .5) /
aI9)) * ge) < aHU && (aIa = aIZ, aHU = pv)); - 1 !== aIa && (aIG = Math.min(Math.max(1, aj.fK(aIG * (aId - Math.floor(Math.sqrt(aHU + .5))), 5 * aId)), yF[aIa]), yF[pz] -= aIG >> 4, yF[aIa] -= aIG)
}
}(this);
var eJ, ha, yF = (xM = this).yF,
xM = xM.mc;
for (eJ = xM - 1; 0 <= eJ; eJ--) ha = yF[eJ], 0 < (ha -= Math.max(1, ha >> 7)) ? yF[eJ] = ha : al.a7j.aHZ(eJ)
}
}
}
function aH6() {
this.aIi = 32, this.fO = 0, this.fP = 0, this.hJ = 0, this.aIj = 0, this.aIk = 4, this.hI = null, this.aIf = new Int16Array(9), this.ct = function() {
this.hJ = 1 + aj.fK(aq.eE - 1, this.aIi), this.aIj = 1 + aj.fK(aq.eF - 1, this.aIi), this.hI = new Array(this.hJ * this.aIj), aZ.pk.v0(this.hI);
var fO, fP, aIf = this.aIf,
gA = this.hJ;
for (fO = -1; fO <= 1; fO++)
for (fP = -1; fP <= 1; fP++) aIf[3 * (1 + fP) + 1 + fO] = fP * gA + fO
}, this.ms = function(aIm, eJ) {
return this.hI[eJ].push(aIm), this.hI[eJ].length - 1
}, this.aIW = function(aIn, aIG, aIM) {
var aIo, aIp, aIG = ak.hH(aIG),
aIM = ak.hH(aIM);
return aIG === aIM ? aIn : (aIo = this.hI[aIG].pop(), this.hI[aIG].length === aIn ? this.ms(aIo, aIM) : (aIp = this.hI[aIG][aIn], this.hI[aIG][aIn] = aIo, al.j4.aHe[aIo] = aIn, this.ms(aIp, aIM)))
}
}
function aHB() {
function tl(aIM, aIq) {
if (function(aIM, aHN) {
var gd = ak.hG(aIM),
aIt = Math.abs(ak.gf(aHN) - ak.gf(gd)),
gd = Math.abs(ak.gh(aHN) - ak.gh(gd));
return 0 !== Math.max(aIt, gd) && (function(aIG, aIM, aIt, aIu) {
var aIw = ak.h3(aIG),
aIG = ak.h6(aIG),
aIy = ak.h3(aIM),
aIM = ak.h6(aIM),
aIy = aIy - aIw,
aIM = aIM - aIG,
aJ2 = Math.abs(aIy),
aJ3 = Math.abs(aIM),
aIy = 0 < aIy ? 1 : 3,
aIM = 0 < aIM ? 2 : 0;
aJ3 < aJ2 ? aJ6(aIw, aIG, aIw + aJ2, aIG + aJ3, aIy, aIM, aIt) : aJ6(aIG, aIw, aIG + aJ3, aIw + aJ2, aIM, aIy, aIu)
}(aIM, ak.hF(aHN), aIt, gd), !0)
}(aIM, aIq)) {
if (0 === am.di[0]) return !!a1.fn(aIq << 2);
if (function(aHN) {
if (a1.fn(aHN << 2)) return 1;
return function(aHN) {
var eJ, gm, aIF = al.j4.aIF,
aJA = ak,
ef = am.di[0],
aJB = 4 * aHN;
for (eJ = ef - 1; 0 <= eJ; eJ--)
if (gm = aIF[eJ], aJB = aJA.hL(aJB, gm + 2 & 3), a1.fn(aJB)) return am.di[0] = eJ, am.dn[1] = aJB >> 2, am.dn[2] = 1 + gm, 1;
return
}(aHN)
}(aIq)) {
var eJ, aIq = ak.hG(aIM),
pm = a2t,
aIF = al.j4.aIF,
ef = am.di[0] - 1,
aJB = 4 * aIq,
ga = ak.ga;
for (eJ = 0; eJ < ef; eJ++)
if (aJB += ga[aIF[eJ]], 0 !== pm[aJB + 3] || 2 !== pm[aJB + 2]) return !!void 0;
return !!1
}
}
return !1
}
function aJ6(aIw, aIx, aIy, aIz, aJ4, aJ5, aIt) {
for (var fP, aIF = al.j4.aIF, en = 0, aJ7 = 0, gF = aIz - aIx, gA = aIy - aIw, aJ8 = aIw % 16, eJ = 1; eJ <= aIt; eJ++) aIF[en++] = aJ4, aIF[en] = aJ5, en += (fP = (gF * (aJ8 + (eJ << 4)) + .5) / gA >> 4) - aJ7, aJ7 = fP;
am.dr(am.di, en)
}
this.mr = function(player, aIq) {
var gm, gd, gc = ak.go(player, aIq);
return gc !== aIq && (gm = ak.gb(gc, aIq), gd = ak.hK(gc, gm), !(!a1.fn(gd << 2) && (gm = ak.gl(gc, aIq, gm), gd = ak.hK(gc, gm), a1.pw(gd << 2) || !a1.fn(gd << 2)) || (am.dn[0] = gd, am.dn[1] = aIq, am.dn[2] = 0, !tl(ak.hF(gd), aIq)) ||
0 !== am.dn[2] && ak.gw(player, am.dn[1] + ak.gZ[am.dn[2] - 1] << 2)))
}, this.mu = function(aIq) {
var aIG = al.j4.aHV[am.dn[3]];
return am.dn[1] = aIq, am.dn[2] = 0, tl(aIG, aIq)
}
}
function aH7() {
var rI = 32,
rH = new Array(2);
function pa(iT) {
var fO, fP, fe, h4, h1, gP = rI,
vE = aZ.g5.pa(gP, gP),
gW = aZ.g5.getContext(vE, !0),
gS = aZ.g5.getImageData(gW, gP, gP),
pm = gS.data,
pW = (gP >> 1) - .5,
aJD = Math.sqrt(pW * pW);
for (pm.fill(255), fP = 0; fP < gP; fP++)
for (fO = 0; fO < gP; fO++) h1 = fO - pW, h4 = fP - pW, fe = 4 * (fP * gP + fO), h1 = 714 * (aJD - Math.sqrt(h1 * h1 + h4 * h4)) / aJD, pm[2 + fe] = iT, pm[3 + fe] = 255 < h1 ? 0 : h1;
return gW.putImageData(gS, 0, 0), vE
}
this.xA = -1, this.ct = function() {
this.xA = -1, rH[0] || (rH[0] = pa(255), rH[1] = pa(0))
}, this.aJE = function(gW, fg, fO, fP, gY, eJ) {
aZ.fU.fW(b.ea) && (gW.setTransform(fg *= 4 / 3 * .625, 0, 0, fg, fO - (gY *= 4 / 3), fP - gY), gW.drawImage(rH[+(al.j4.aHR[eJ] === this.xA)], 0, 0))
}
}
function bs() {
this.zg = function() {
var aJH, aJI;
return !(iV < 3 || a6.f5[jM[0]] >= b.wL >> 1) && (b.hT ? (aJH = a4.a8w(), aJI = a4.a8x(b6.t9()), !(aJH <= 2 * aJI)) : function() {
var aJH = a4.a8w();
if (2 * a6.eb[jM[0]] >= aJH) return !1;
return !0
}())
}
}
function cl() {
this.size = 501, this.tJ = new Uint32Array(this.size), this.vd = new Uint32Array(this.size), this.a2W = new Uint16Array(this.size), this.aDm = 0, this.aJJ = 1, this.iT = 0, this.max = [0, 0, 0], this.ed = 0, this.aJK = ["Avg. Attack Strength",
"Number Attacks", "Ships sent", "Bots conquered", "Humans conquered", "Attacked by Bots", "Attacked by Humans", "Territorial Loss", "Territorial Income", "Interest Income", "Received Support", "Overall Income", "Commanding Costs",
"Attack Losses", "Defense Losses", "Shipping Losses", "Transmitted Support", "Overall Expenses"
], this.ct = function() {
this.aDm = 0, this.aJJ = 1, this.iT = 0, this.aJL(), this.aJM()
}, this.mm = function(player, h9) {
player === b.ea && (this.ed[0] += h9, this.ed[1]++, this.ed[12] += am.dj[1], this.ed[13] += am.dj[0])
}, this.mC = function(player, lp) {
donationsTracker.logDonation(player, lp, am.dj[0]);
player === b.ea && (l.mC(am.dj[0], am.dj[1], lp), this.ed[12] += am.dj[1], this.ed[16] += am.dj[0]), lp === b.ea && (l.yT(am.dj[0], player), this.ed[10] += am.dj[0])
}, this.iE = function() {
0 < this.iT-- || this.aJN()
}, this.aJN = function() {
0 !== a6.jS[b.ea] && (this.tJ[this.aDm] = a6.f5[b.ea], this.vd[this.aDm] = a6.eb[b.ea], this.a2W[this.aDm] = a4.a2X(b.ea), this.aJO(this.aDm), this.aDm++, this.aDm === this.size && this.aJP(), this.iT = this.aJJ - 1, b3.g7())
}, this.aJP = function() {
this.aJL(), this.aJO(0), this.aDm = 1 + eX(this.size, 2);
for (var eJ = 1; eJ < this.aDm; eJ++) this.tJ[eJ] = this.tJ[2 * eJ], this.vd[eJ] = this.vd[2 * eJ], this.a2W[eJ] = this.a2W[2 * eJ], this.aJO(eJ);
this.aJJ *= 2
}, this.aJL = function() {
this.max[0] = this.max[1] = this.max[2] = 0
}, this.aJM = function() {
this.ed = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
}, this.aJO = function(eJ) {
this.max[0] = this.tJ[eJ] > this.max[0] ? this.tJ[eJ] : this.max[0], this.max[1] = this.vd[eJ] > this.max[1] ? this.vd[eJ] : this.max[1], this.max[2] = this.a2W[eJ] > this.max[2] ? this.a2W[eJ] : this.max[2]
}
}
function cm() {
this.gA = 0, this.gF = 0, this.qw = 0, this.qx = 0, this.a3W = 0, this.a3X = 0, this.zs = 0, this.a6I = 0, this.a63 = 0, this.aJQ = 0, this.aJR = 0, this.aJS = 0, this.zI = 0, this.g4 = 0, this.a2B = ["Territory", "Balance", "Interest",
"Numbers"], this.rD = !1, this.aJT = -1, this.aJU = !1, this.aJV = [0, 0], this.ct = function() {
this.rD = !1, this.aJT = -1, this.aJU = !1, this.resize()
}, this.resize = function() {
this.gA = aL.gA < 1.369 * aL.gF ? aL.gA : 1.369 * aL.gF;
var eo = b8.cy.g0() && aL.gA < aL.gF ? 1 : b8.cy.g0() ? .8 : aL.gA < aL.gF ? .65 : .59;
this.gA = Math.floor(eo * this.gA), this.gA -= b8.cy.g0() && aL.gA < aL.gF ? 2 * b1.gap + 2 : 0, this.gF = Math.floor(this.gA / 1.369), this.zI = Math.floor(this.gF / 150), this.zI = Math.max(this.zI, 1.5), this.qw = Math.floor(1 + .02 *
this.gA), this.qx = Math.floor(1 + .04 * this.gA), this.zs = this.qx, this.a6I = Math.floor(1 + .075 * this.gA), this.aJQ = Math.floor(1 + .1125 * this.gA), this.aJR = Math.floor(this.gA * (b8.cy.g0() ? .03 : .029)), this.aJR =
Math.max(this.aJR, 4), this.aJS = Math.floor(.035 * this.gA), this.aJS = Math.max(this.aJS, 4), this.a63 = this.gF - 2 * this.zs - this.a6I - this.aJQ, this.rD && this.aJW()
}, this.fX = function(gD, gE) {
var qH, qG;
return !!this.rD && (qG = gD, qH = gE, gD -= eX(aL.gA - this.gA, 2), gE -= eX(aL.gF - this.gF, 2), gD < 0 || gE < 0 || gD >= this.gA || gE >= this.gF || gD >= this.gA - this.aJQ && gE < this.aJQ ? 1 < k.fX(qG, qH) || this.oN() : gE < this
.aJQ || (gE < this.gF - this.a6I ? (this.aJU = !0, this.aJT = (gD - 2 * this.qw - this.a3W) / this.a3X, 3 !== this.g4 && (b4.d3 = !0)) : (qG = (qG = Math.floor(gD / (this.gA / this.a2B.length))) < 0 ? 0 : qG >= this.a2B.length ?
this.a2B.length - 1 : qG) !== this.g4 && (this.g4 = qG, this.aJW(), b4.d3 = !0)), !0)
}, this.uh = function() {
var aJX = Math.floor((this.aJV[0] + hA) / hB),
aJY = Math.floor((this.aJV[1] + hC) / hB);
aJX < 1 || aJY < 1 || aJX >= aq.eE - 1 || aJY >= aq.eF - 1 || console.log(aJX + " " + aJY)
}, this.u9 = function(gD, gE) {
return this.aJV[0] = gD, this.aJV[1] = gE, !(!this.rD || !this.aJU || (gD -= eX(aL.gA - this.gA, 2), gE = this.aJT, this.aJT = (gD - 2 * this.qw - this.a3W) / this.a3X, (0 <= this.aJT && this.aJT <= 1 || 0 <= gE && gE <= 1) && (b4.d3 = !
0), 0))
}, this.uY = function() {
this.aJU && (this.aJU = !1)
}, this.ul = function() {
this.rD ? this.oN() : this.show()
}, this.show = function() {
b2.aDm < 2 || (this.rD = !0, this.aJW())
}, this.oN = function() {
this.rD = !1, this.aJT = -1, b4.d3 = !0
}, this.aJW = function() {
this.g4 < 2 ? this.a3W = o.measureText(aZ.jr.js(b2.max[this.g4]), aZ.g5.g6(0, this.aJR)) : 2 === this.g4 && (this.a3W = o.measureText(aZ.jr.w2(6, 2), aZ.g5.g6(0, this.aJR))), this.a3X = this.gA - 2 * this.qw - this.a3W - this.qx
}, this.g7 = function() {
this.rD && this.aJW()
}, this.gL = function() {
this.rD && this.a08()
}, this.a08 = function() {
var fO = eX(aL.gA - this.gA, 2),
fP = eX(aL.gF - this.gF, 2);
gM.setTransform(1, 0, 0, 1, fO, fP), gM.fillStyle = aa.kh, gM.fillRect(0, this.aJQ, this.gA, this.gF - this.aJQ), this.aJZ(), this.aDF(), gM.strokeRect(0, 0, this.gA, this.gF), aZ.g5.textAlign(gM, 2), gM.font = aZ.g5.g6(0, this.aJR),
0 === this.g4 ? this.aJa(b2.tJ, fO, fP) : 1 === this.g4 ? this.aJa(b2.vd, fO, fP) : 2 === this.g4 ? this.aJb(fO, fP) : 3 === this.g4 && (this.aJc(fO, fP), this.aJd(fO, fP)), k.xZ(Math.floor(fO + this.gA - .725 * this.aJQ), Math.floor(
fP + .275 * this.aJQ), Math.floor(.45 * this.aJQ)), gM.setTransform(1, 0, 0, 1, 0, 0)
}, this.aJZ = function() {
var eJ, dd;
for (gM.lineWidth = this.zI, aZ.g5.textBaseline(gM, 1), aZ.g5.textAlign(gM, 1), gM.strokeStyle = aa.gN, gM.font = aZ.g5.g6(1, this.aJS), dd = this.gA / this.a2B.length, gM.fillStyle = aa.l2, gM.fillRect(this.g4 * dd, this.gF - this.a6I,
dd, this.a6I), gM.fillStyle = aa.gN, gM.fillRect(0, this.gF - this.a6I - .5 * this.zI, this.gA, this.zI), eJ = 1; eJ <= 3; eJ++) gM.fillRect(eJ * dd, this.gF - this.a6I, this.zI, this.a6I);
for (eJ = this.a2B.length - 1; 0 <= eJ; eJ--) gM.fillText(this.a2B[eJ], (eJ + .5) * dd, this.gF - .46 * this.a6I)
}, this.aDF = function() {
gM.fillStyle = aa.lM, gM.fillRect(0, 0, this.gA, this.aJQ), gM.fillStyle = aa.gN, gM.fillRect(0, this.aJQ - .5 * this.zI, this.gA, this.zI), gM.font = aZ.g5.g6(1, .39 * this.aJQ), gM.fillText("Statistics", Math.floor(this.gA / 2), Math
.floor(.55 * this.aJQ))
}, this.aJa = function(ds, fO, fP) {
var pW = b2.max[this.g4],
fy = (gM.setTransform(1, 0, 0, 1, fO + 2 * this.qw + this.a3W, fP + this.zs + this.aJQ), gM.lineWidth = 2, this.a63 / Math.sqrt(pW));
gM.beginPath(), gM.moveTo(this.a3X, this.a63 - fy * Math.sqrt(ds[b2.aDm - 1]));
for (var eJ = b2.aDm - 2; 0 <= eJ; eJ--) gM.lineTo(eJ * this.a3X / (b2.aDm - 1), this.a63 - fy * Math.sqrt(ds[eJ]));
gM.stroke();
fO = this.xZ(ds, fy, .5);
fO < .95 && gM.fillText(aZ.jr.js(pW), -this.qw, 0), .05 < Math.abs(fO - .5) && gM.fillText(aZ.jr.js(Math.floor(pW / 4)), -this.qw, Math.floor(this.a63 / 2)), .05 < fO && gM.fillText("0", -this.qw, this.a63)
}, this.aJb = function(fO, fP) {
gM.setTransform(1, 0, 0, 1, fO + 2 * this.qw + this.a3W, fP + this.zs + this.aJQ), gM.lineWidth = 2;
var fy = this.a63 / Math.max(b2.max[this.g4], 1);
gM.beginPath(), gM.moveTo(this.a3X, this.a63 - fy * b2.a2W[b2.aDm - 1]);
for (var eJ = b2.aDm - 2; 0 <= eJ; eJ--) gM.lineTo(eJ * this.a3X / (b2.aDm - 1), this.a63 - fy * b2.a2W[eJ]);
gM.stroke();
fO = this.xZ(b2.a2W, fy, 1), fP = b2.max[this.g4] / 100;
fO < .95 && gM.fillText(aZ.jr.w2(fP, 2), -this.qw, 0), .05 < Math.abs(fO - .5) && gM.fillText(aZ.jr.w2(fP / 2, 2), -this.qw, Math.floor(this.a63 / 2)), .05 < fO && gM.fillText(aZ.jr.w2(0, 2), -this.qw, this.a63)
}, this.aJc = function(fO, fP) {
gM.setTransform(1, 0, 0, 1, fO + .34 * this.gA, fP + 2 * this.zs + this.aJQ), aZ.g5.textAlign(gM, 2);
for (var a1w = this.gF - 4 * this.zs - this.a6I - this.aJQ, eJ = 7; 0 <= eJ; eJ--) gM.fillText(b2.aJK[eJ], 0, eJ * a1w / 7);
gM.setTransform(1, 0, 0, 1, fO + .39 * this.gA, fP + 2 * this.zs + this.aJQ), aZ.g5.textAlign(gM, 0);
fO = b2.ed[1];
for (gM.fillText(aZ.jr.w2(b2.ed[0] / (10 * (fO < 1 ? 1 : fO)), 1), 0, 0), eJ = 6; 1 <= eJ; eJ--) gM.fillText(b2.ed[eJ].toString(), 0, eJ * a1w / 7);
gM.fillText(aZ.jr.w2(100 * (1 - a6.f5[b.ea] / b2.ed[7]), 0), 0, a1w)
}, this.aJd = function(fO, fP) {
gM.setTransform(1, 0, 0, 1, fO + .79 * this.gA, fP + 2 * this.zs + this.aJQ), aZ.g5.textAlign(gM, 2);
var eJ, a1w = this.gF - 4 * this.zs - this.a6I - this.aJQ;
for (gM.fillStyle = aa.kx, eJ = 2; 0 <= eJ; eJ--) gM.fillText(b2.aJK[eJ + 8], 0, eJ * a1w / 9);
for (gM.fillStyle = aa.kw, gM.fillText(b2.aJK[11], 0, 3 * a1w / 9), gM.fillStyle = aa.lD, eJ = 8; 4 <= eJ; eJ--) gM.fillText(b2.aJK[eJ + 8], 0, eJ * a1w / 9);
gM.fillStyle = aa.lC, gM.fillText(b2.aJK[17], 0, 9 * a1w / 9), gM.fillStyle = aa.kx;
var yC = aZ.jr.js(b2.ed[8] + b2.ed[9] + b2.ed[10] + b2.ed[11]),
aJe = gM.measureText(yC).width,
fO = (gM.setTransform(1, 0, 0, 1, fO + .83 * this.gA + aJe, fP + 2 * this.zs + this.aJQ), gM.fillText(aZ.jr.js(b2.ed[8]), 0, 0), gM.fillText(aZ.jr.js(b2.ed[9]), 0, a1w / 9), gM.fillText(aZ.jr.js(b2.ed[10]), 0, 2 * a1w / 9), gM
.fillStyle = aa.kw, gM.fillText(yC, 0, 3 * a1w / 9), gM.fillStyle = aa.lD, b2.ed[13] - a3.a8g(b.ea)),
aJe = (gM.fillText(aZ.jr.js(b2.ed[12]), 0, 4 * a1w / 9), gM.fillText(aZ.jr.js(fO), 0, 5 * a1w / 9), gM.fillText(aZ.jr.js(b2.ed[14]), 0, 6 * a1w / 9), gM.fillText(aZ.jr.js(b2.ed[15]), 0, 7 * a1w / 9), gM.fillText(aZ.jr.js(b2.ed[16]),
0, 8 * a1w / 9), b2.ed[12] + fO + b2.ed[14] + b2.ed[15] + b2.ed[16] + b2.ed[17]);
gM.fillStyle = aa.lC, gM.fillText(aZ.jr.js(aJe), 0, a1w), gM.fillStyle = aa.gN
}, this.xZ = function(ds, fy, a0i) {
var eJ, dI, dt;
return this.aJT < 0 || 1 < this.aJT ? .25 : (eJ = this.aJT * (b2.aDm - 1), dt = ds[dI = Math.floor(eJ)], dt += (eJ - dI) * (ds[dI < b2.aDm - 1 ? dI + 1 : dI] - dt), gM.strokeStyle = aa.km, .04 < this.aJT && this.aJh(0, this.a63 - fy *
Math.pow(dt, a0i), eJ * this.a3X / (b2.aDm - 1), this.a63 - fy * Math.pow(dt, a0i)), .04 < dt / b2.max[this.g4] && this.aJh(eJ * this.a3X / (b2.aDm - 1), this.a63, eJ * this.a3X / (b2.aDm - 1), this.a63 - fy * Math.pow(dt,
a0i)), gM.fillStyle = aa.lF, gM.beginPath(), gM.arc(eJ * this.a3X / (b2.aDm - 1), this.a63 - fy * Math.pow(dt, a0i), Math.max(2, .014 * this.gF), 0, 2 * Math.PI), gM.fill(), ds = this.aJT * b4.a2Y, ds = 0 === a6.jS[b.ea] ?
Math.floor(ds * v.a2f) : Math.floor(ds * b4.iS()), gM.fillStyle = aa.gN, gM.fillText(1 === a0i ? aZ.jr.w2(dt / 100, 2) : aZ.jr.js(Math.floor(dt)), -this.qw, this.a63 - fy * Math.pow(dt, a0i)), aZ.g5.textAlign(gM, 1), gM.fillText(u
.a1I(ds), eJ * this.a3X / (b2.aDm - 1), this.a63 + this.aJR - (b8.cy.g0() ? 2 : 0) - this.zI), aZ.g5.textAlign(gM, 2), fy * Math.pow(dt, a0i) / this.a63)
}, this.aJh = function(jj, jk, jl, jm) {
gM.beginPath(), gM.moveTo(jj, jk), gM.lineTo(jl, jm), gM.stroke()
}
}
function bJ() {
this.aJi = "https://", this.aJj = this.aJi + "territorial.io/", this.aDn = this.aJj + "changelog", this.aDs = this.aJj + "terms", this.aJk = this.aJj + "cookie_policy", this.aDt = this.aJj + "privacy", this.aDr = this.aJj + "tutorial", this.aDq =
this.aJj + "players", this.aDo = this.aJj + "clans", this.aDp = this.aJj + "clan-results", this.a3m = this.aJi + "play.google.com/store/apps/details?id=territorial.io", this.te = this.aJi + "apps.apple.com/app/id1581110913", this.a3n = this
.aJi + "www.youtube.com/watch?v=toZTQ8aRdFc", this.a3o = this.aJi + "discord.gg/pthqvpTXmh", this.a3p = this.aJi + "www.instagram.com/davidtschacher/", this.rY =
"🇦🇫🇦🇽🇦🇱🇩🇿🇦🇸🇦🇩🇦🇴🇦🇮🇦🇶🇦🇬🇦🇷🇦🇲🇦🇼🇦🇺🇦🇹🇦🇿🇧🇸🇧🇭🇧🇩🇧🇧🇧🇾🇧🇪🇧🇿🇧🇯🇧🇲🇧🇹🇧🇴🇧🇦🇧🇼🇧🇷🇮🇴🇻🇬🇧🇳🇧🇬🇧🇫🇧🇮🇨🇻🇰🇭🇨🇲🇨🇦🇮🇨🇰🇾🇨🇫🇹🇩🇨🇱🇨🇳🇨🇽🇨🇨🇨🇴🇰🇲🇨🇬🇨🇩🇨🇷🇭🇷🇨🇺🇨🇼🇨🇾🇨🇿🇩🇰🇩🇯🇩🇲🇩🇴🇪🇨🇪🇬🇸🇻🇬🇶🇪🇷🇪🇪🇸🇿🇪🇹🇪🇺🇫🇰🇫🇴🇫🇯🇫🇮🇫🇷🇬🇫🇵🇫🇹🇫🇬🇦🇬🇲🇬🇪🇩🇪🇬🇭🇬🇮🇬🇷🇬🇱🇬🇩🇬🇵🇬🇺🇬🇹🇬🇬🇬🇳🇬🇼🇬🇾🇭🇹🇭🇳🇭🇰🇭🇺🇮🇸🇮🇳🇮🇩🇮🇷🇮🇶🇮🇪🇮🇲🇮🇱🇮🇹🇨🇮🇯🇲🇯🇵🇯🇪🇯🇴🇰🇿🇰🇪🇰🇮🇽🇰🇰🇼🇰🇬🇱🇦🇱🇻🇱🇧🇱🇸🇱🇷🇱🇾🇱🇮🇱🇹🇱🇺🇲🇴🇲🇰🇲🇬🇲🇼🇲🇾🇲🇻🇲🇱🇲🇹🇲🇭🇲🇶🇲🇷🇲🇺🇾🇹🇲🇽🇫🇲🇲🇩🇲🇨🇲🇳🇲🇪🇲🇸🇲🇦🇲🇿🇲🇲🇳🇦🇳🇷🇳🇵🇳🇱🇳🇨🇳🇿🇳🇮🇳🇪🇳🇬🇳🇺🇳🇫🇰🇵🇲🇵🇳🇴🇴🇲🇵🇰🇵🇼🇵🇸🇵🇦🇵🇬🇵🇾🇵🇪🇵🇭🇵🇱🇵🇹🇵🇷🇶🇦🇷🇴🇷🇺🇷🇼🇼🇸🇸🇲🇸🇹🇸🇦🇸🇳🇷🇸🇸🇨🇸🇱🇸🇬🇸🇽🇸🇰🇸🇮🇸🇧🇸🇴🇿🇦🇬🇸🇰🇷🇸🇸🇪🇸🇱🇰🇧🇱🇸🇭🇰🇳🇱🇨🇲🇫🇵🇲🇻🇨🇸🇩🇸🇷🇸🇪🇸🇾🇨🇭🇹🇼🇹🇯🇹🇿🇹🇭🇹🇱🇹🇬🇹🇰🇹🇴🇹🇹🇹🇳🇹🇷🇹🇲🇹🇨🇹🇻🇺🇬🇺🇦🇦🇪🇬🇧🇺🇳🇺🇸🇻🇮🇺🇾🇺🇿🇻🇺🇻🇦🇻🇪🇻🇳🇼🇫🇪🇭🇾🇪🇿🇲🇿🇼"
}
function cT() {
this.j4 = new aJl, this.qo = new aJm, this.ct = function() {
this.j4.ct()
}, this.iE = function() {
0 !== this.j4.yd && this.j4.yd--
}
}
function aJm() {
this.gL = function() {
if (0 !== an.j4.yd && (gM.globalAlpha = Math.min(an.j4.yd / 580, 1), gM.drawImage(an.j4.aJp, 1 + q.jn(), 1 + q.gK()), gM.globalAlpha = 1, b.fj)) {
var jj = hA / hB,
jk = hC / hB,
jl = (aL.gA + hA) / hB,
jm = (aL.gF + hC) / hB,
en = an.j4.aJq * hB,
aJr = an.j4.aJr;
for (let eJ = b.ht - 1; 0 <= eJ; eJ--) ! function(eJ, en, jj, jk, jl, jm, aJr) {
0 === a6.jS[eJ] || 0 === a6.f5[eJ] || (jl = aL.gA * ((a6.i2[eJ] + a6.i1[eJ] + 1) / 2 - jj) / (jl - jj) - .5 * en, jj = aL.gF * ((a6.i5[eJ] + a6.i4[eJ] + 1) / 2 - jk) / (jm - jk) - .5 * en, jl > aL.gA) || jj > aL.gF || jl < -
en || jj < -en || (gM.setTransform(hB, 0, 0, hB, jl, jj), gM.drawImage(aJr[b.hT ? b5.iU[eJ] : 1], 0, 0))
}(eJ, en, jj, jk, jl, jm, aJr);
gM.setTransform(hB, 0, 0, hB, 0, 0)
}
}
}
function aJl() {
this.aJq = 28, this.yd = 0, this.aJp = null;
var aJt = this.aJr = null;
function aJw(gP, aJy) {
var fO, fP, fe, h1, vE = aZ.g5.pa(gP, gP),
gW = aZ.g5.getContext(vE, !0),
gS = aZ.g5.getImageData(gW, gP, gP),
pm = gS.data,
pW = (gP >> 1) - .5,
aJz = .5 + pW;
for (aJz *= aJz, fP = 0; fP < gP; fP++)
for (fO = 0; fO < gP; fO++) h1 = (h1 = fO - pW) * h1 + (h1 = fP - pW) * h1, pm[fe = 4 * (fP * gP + fO)] = aJy[0], pm[1 + fe] = aJy[1], pm[2 + fe] = aJy[2], pm[3 + fe] = (aJz - h1) * aJy[3] / aJz;
return gW.putImageData(gS, 0, 0), vE
}
function aJE(eJ, gW, vE, gP) {
var fO;
0 !== a6.jS[eJ] && 0 !== a6.f5[eJ] && (fO = a6.i2[eJ] + a6.i1[eJ] + 1 - gP - 2 >> 1, gP = a6.i5[eJ] + a6.i4[eJ] + 1 - gP - 2 >> 1, gW.drawImage(vE[b.hT ? b5.iU[eJ] : eJ < b.ht ? 1 : 0], fO, gP))
}
this.ct = function() {
var xM;
this.yd = 700,
function(xM) {
var gP = xM.aJq;
if (xM.aJr = [], aJt = [], b.hT)
for (let eJ = 0; eJ <= b.wN; eJ++) xM.aJr.push(aJw(gP, b5.aJx[b5.t8[eJ]])), aJt.push(aJw(gP >> 1, b5.aJx[b5.t8[eJ]]));
else xM.aJr.push(aJw(gP, b5.aJx[0])), xM.aJr.push(aJw(gP, b5.aJx[4])), aJt.push(aJw(gP >> 1, b5.aJx[0]))
}(this),
function(xM, aK0) {
var eJ, aJp = xM.aJp,
gW = aZ.g5.getContext(aJp, !0),
ef = b.ej,
gP = xM.aJq >> 1;
gW.imageSmoothingEnabled = !1, gW.setTransform(1, 0, 0, 1, 0, 0), aK0 && gW.clearRect(0, 0, aJp.width, aJp.height);
for (eJ = b.ht; eJ < ef; eJ++) aJE(eJ, gW, aJt, gP)
}(this, null !== (xM = this).aJp && xM.aJp.width === aq.eE - 2 && xM.aJp.height === aq.eF - 2 || (xM.aJp = aZ.g5.pa(aq.eE - 2, aq.eF - 2), !1)), b.fj || this.wH()
}, this.wH = function() {
var ef = b.ht,
gP = this.aJq,
aJr = this.aJr,
gW = aZ.g5.getContext(this.aJp, !0);
for (let eJ = 0; eJ < ef; eJ++) aJE(eJ, gW, aJr, gP)
}
}
function cU() {
this.aK1 = -1, this.ct = function() {
this.aK1 = -1
}, this.iE = function() {
-1 !== this.aK1 && ap.sH.sZ(this.aK1)
}, this.m6 = function(player) {
return !!k.xY(player) && (1 === iV ? (this.aK1 = player, b.iv && b.fj && b.mg.iE()) : (l.sX(player, player === b.ea ? 21 : 22), 8 === b.it ? this.aK1 = 1 - player : b.iv ? (a7f(player), aAU(), b.fj && b.mg.iE()) : this.aK2(player)), !0)
}, this.md = function(player) {
1 === b.sh && 0 !== a6.jS[player] && 2 !== a6.vZ[player] && (8 === b.it ? this.aK1 = 1 - player : this.aK2(player)), b.sk--, b.sj--, l.sX(player, 4), aZ.fU.fV(2) && u.jC(!0)
}, this.aK2 = function(player) {
b.fj ? (a7f(player), aAU()) : aR.aAQ(player)
}
}
function cf() {
this.a5Z = ["rgba(130,130,130,0.88)", "rgba(130,12,12,0.88)", "rgba(12,130,12,0.88)", "rgba(12,12,130,0.88)", "rgba(130,130,12,0.88)", "rgba(130,12,130,0.88)", "rgba(12,130,130,0.88)", "rgba(130,130,130,0.88)", "rgba(0,0,0,0.88)"], this.a1u = [aa
.gN, "rgb(255,120,120)", "rgb(0,230,0)", "rgb(150,150,255)", "rgb(240,240,25)", "rgb(255,70,255)", "rgb(25,240,240)", aa.gN, "rgb(170,170,170)"
], this.aK3 = [aa.gN, "rgb(255,0,0)", "rgb(0,255,0)", "rgb(0,0,255)", "rgb(255,255,0)", "rgb(255,0,255)", "rgb(0,255,255)", aa.gN, aa.jp], this.aK4 = [aa.jp, aa.gN, aa.gN, aa.gN, aa.jp, aa.jp, aa.jp, aa.jp, aa.gN];
var aK5 = ["255,255,255", "0,0,0", "255,4,4", "200,4,4", "4,255,4", "4,180,4", "255,195,195", "90,3,3", "200,255,200", "3,84,3"],
aK6 = (this.a9v = ["rgba(" + aK5[0] + ",", "rgba(" + aK5[1] + ",", "rgba(" + aK5[2] + ",", "rgba(" + aK5[3] + ",", "rgba(" + aK5[4] + ",", "rgba(" + aK5[5] + ",", "rgba(" + aK5[6] + ",", "rgba(" + aK5[7] + ",", "rgba(" + aK5[8] + ",",
"rgba(" + aK5[9] + ","
], this.a9w = ["rgb(" + aK5[0] + ")", "rgb(" + aK5[1] + ")", "rgb(" + aK5[2] + ")", "rgb(" + aK5[3] + ")", "rgb(" + aK5[4] + ")", "rgb(" + aK5[5] + ")", "rgb(" + aK5[6] + ")", "rgb(" + aK5[7] + ")", "rgb(" + aK5[8] + ")", "rgb(" + aK5[
9] + ")"
], this.fz = ["White", "Red", "Green", "Blue", "Yellow", "Magenta", "Cyan", "White", "Black"], this.aJx = [
[255, 255, 255, 180],
[255, 0, 0, 180],
[0, 255, 0, 180],
[50, 50, 255, 180],
[255, 255, 0, 180],
[255, 0, 255, 180],
[0, 255, 255, 180],
[255, 255, 255, 180],
[0, 0, 0, 180]
], [
[255, 255, 255],
[255, 0, 0],
[0, 255, 0],
[0, 0, 255],
[255, 255, 0],
[255, 0, 255],
[0, 255, 255],
[255, 255, 255],
[0, 0, 0]
]);
this.t8 = [0, 1, 2, 3, 4, 5, 6, 7, 8], this.iU = new Uint8Array(b.ej), this.tD = null, this.aK7 = null, this.ct = function(r0) {
this.iU.fill(0), this.aK8(), b.hT && (aV.iq && aV.ir.a8P ? this.a6z() : 9 === b.it ? this.aK9() : this.iE(r0))
}, this.a6z = function() {
var eJ, ef = b.qI;
for (this.t8 = [0, 1, 2, 3, 4, 5, 6, 7, 8], eJ = 0; eJ < ef; eJ++) this.iU[eJ] = aV.ir.a8P[eJ]
}, this.aK8 = function() {
for (var eJ = this.t8.length - 1; 0 <= eJ; eJ--) this.t8[eJ] = eJ;
this.tD = [], this.aK7 = []
}, this.aK9 = function() {
for (var eJ = b.ht + aN.aAG - 1; 0 <= eJ; eJ--) this.iU[eJ] = 1;
for (eJ = b.ht + aN.aAG; eJ < b.ej; eJ++) this.iU[eJ] = 2;
this.t8[1] = 7, this.t8[2] = 8
}, this.iE = function(r0) {
var gi = new Uint8Array(b.ht),
gj = new Uint8Array(b.ht),
aKA = new Uint16Array(8),
aKB = new Uint16Array(this.t8.length);
this.aKC(r0, gi, gj, aKA), this.a6x(aKA), b.iv || this.aKD(aKB, gi, gj), this.aKE(gi, gj, aKB), b.iv ? this.aKF() : this.aKG()
}, this.aKC = function(r0, gi, gj, aKH) {
for (var hp, dI, aKI, ef = this.t8.length - 1, ds = new Uint16Array(ef), eJ = b.ht - 1; 0 <= eJ; eJ--) {
for (hp = ef; 1 <= hp; hp--) ds[hp - 1] = Math.abs(4 * r0[eJ].a6E[0] - aK6[hp][0]) + Math.abs(4 * r0[eJ].a6E[1] - aK6[hp][1]) + Math.abs(4 * r0[eJ].a6E[2] - aK6[hp][2]);
for (aKI = 768, hp = ef - 1; 0 <= hp; hp--) ds[dI = (hp + eJ) % ef] < aKI && (aKI = ds[dI], gi[eJ] = dI);
for (aKH[gi[eJ]] += 4, aKI = 768, hp = ef - 1; 0 <= hp; hp--) ds[dI = (hp + eJ) % ef] < aKI && dI !== gi[eJ] && (aKI = ds[dI], gj[eJ] = dI);
aKH[gj[eJ]]++
}
}, this.a6x = function(aKH) {
for (var hp, wv, ef = this.t8.length - 1, eJ = ef; 0 <= eJ; eJ--) this.t8[eJ] = eJ;
for (eJ = ef - 1; 0 <= eJ; eJ--) aKH[eJ]++;
for (eJ = 1; eJ <= ef; eJ++) {
for (wv = 0, hp = 1; hp < ef; hp++) aKH[hp] > aKH[wv] && (wv = hp);
aKH[wv] = 0, this.t8[eJ] = wv + 1
}
}, this.aKD = function(aKB, gi, gj) {
var eJ, hp, aKJ, iT, eo, dI, kO, vK, aKK = this.t8.length - 1,
nc = new Uint16Array(aKK),
aKL = [],
zs = Math.max(b.ht + 1 >> 1, 6);
loop: for (eJ = 0; eJ < b.ht; eJ++)
if (null !== (aKJ = aZ.jr.tN(a6.tL[eJ]))) {
for (hp = this.tD.length - 1; 0 <= hp; hp--)
if (aKJ === this.tD[hp] && this.aK7[hp].length < zs) {
this.aK7[hp].push(eJ);
continue loop
} this.tD.push(aKJ), aKL.push(!1), this.aK7.push([eJ])
}
for (hp = this.tD.length - 1; 0 <= hp; hp--) {
for (eo = -1, iT = this.tD.length - 1; 0 <= iT; iT--) !aKL[iT] && (-1 === eo || this.aK7[iT].length > this.aK7[eo].length) && (eo = iT);
for (iT = aKK - 1; 0 <= iT; iT--) nc[iT] = 1;
for (iT = this.aK7[eo].length - 1; 0 <= iT; iT--) nc[gi[this.aK7[eo][iT]]] += 3, nc[gj[this.aK7[eo][iT]]]++;
for (eJ = aKK - 1; 0 <= eJ; eJ--) {
for (dI = eo % aKK, iT = aKK - 1; 0 <= iT; iT--) nc[iT] > nc[dI] && (dI = iT);
for (kO = -1, iT = b.wN; 0 < iT; iT--)
if (this.t8[iT] === dI + 1) {
kO = iT;
break
} if (nc[dI] = 0, -1 !== kO) {
for (vK = 0, iT = b.wN; 0 < iT; iT--) aKB[kO] > aKB[iT] && vK++;
if (vK !== b.wN - 1) {
for (iT = this.aK7[eo].length - 1; 0 <= iT; iT--) aKB[kO]++, this.iU[this.aK7[eo][iT]] = kO;
break
}
}
}
aKL[eo] = !0
}
}, this.aKE = function(gi, gj, aKB) {
for (var eJ, h0, ef = this.t8.length - 1, border = eX(b.ht, b.wN), aKM = (0 < b.ht % b.wN && border++, new Uint8Array(1 + ef)), hp = ef; 1 <= hp; hp--) aKM[this.t8[hp]] = hp;
for (eJ = 0; eJ < b.ht; eJ++) h0 = aKM[gi[eJ] + 1], 0 === this.iU[eJ] && h0 <= b.wN && aKB[h0] < border && (aKB[h0]++, this.iU[eJ] = h0);
for (eJ = 0; eJ < b.ht; eJ++) h0 = aKM[gj[eJ] + 1], 0 === this.iU[eJ] && h0 <= b.wN && aKB[h0] < border && (aKB[h0]++, this.iU[eJ] = h0);
for (hp = b.wN; 1 <= hp; hp--)
for (eJ = b.ht - 1; 0 <= eJ && !(aKB[hp] >= border); eJ--) 0 === this.iU[eJ] && (aKB[hp]++, this.iU[eJ] = hp)
}, this.aKF = function() {
var eJ, hg, aKH = new Uint16Array(b.wN);
for (aKH[b.wN - 1] = b.ej, eJ = b.wN - 2; 0 <= eJ; eJ--) aKH[eJ] = z.iw[eJ].rf;
for (aKH[0]--, hg = 0 === aKH[0] ? 1 : 0, eJ = b.ht; eJ < b.ej; eJ++) this.iU[eJ] = hg + 1, aKH[hg]--, aKH[hg] <= 0 && hg++
}, this.aKG = function() {
for (var eJ = b.ht; eJ < b.ej; eJ++) this.iU[eJ] = 1 + eJ % b.wN
}
}
function f6() {
for (var fO, fP, eJ = e5 - 1; 0 <= eJ; eJ--) fO = eX(e7[eJ], 4) % aq.eE, fP = eX(e7[eJ], 4 * aq.eE), a6.i2[e1] = a6.i2[e1] > fO ? fO : a6.i2[e1], a6.i5[e1] = a6.i5[e1] > fP ? fP : a6.i5[e1], a6.i1[e1] = a6.i1[e1] < fO ? fO : a6.i1[e1], a6.i4[
e1] = a6.i4[e1] < fP ? fP : a6.i4[e1]
}
function eO() {
var eo, em, eJ, ef = a6.eg[e1].length;
loop: for (eJ = ef - 1; 0 <= eJ; eJ--) {
for (eo = 3; 0 <= eo; eo--)
if (em = a6.eg[e1][eJ] + eA[eo], a1.er(em) || a1.ep(em) && a1.eq(em) !== e1) {
a1.hd(a6.eg[e1][eJ], e1);
continue loop
} a6.eg[e1][eJ] = a6.eg[e1][ef - 1], a6.eg[e1].pop(), ef--
}
}
function eP() {
var eo, em, aKN, aKO, ef = a6.ex[e1].length;
loop: for (var eJ = ef - 1; 0 <= eJ; eJ--) {
for (aKN = aKO = !1, eo = 3; 0 <= eo; eo--) {
if (em = a6.ex[e1][eJ] + eA[eo], a1.a78(em, e1)) continue loop;
aKN = aKN || a1.fn(em), aKO = aKO || a1.pw(em)
}
aKN ? a6.ey[e1].push(a6.ex[e1][eJ]) : aKO ? a6.f1[e1].push(a6.ex[e1][eJ]) : a1.qb(a6.ex[e1][eJ], e1), a6.ex[e1][eJ] = a6.ex[e1][ef - 1], a6.ex[e1].pop(), ef--
}
}
function ev() {
a6.f5[e4] -= e5
}
function ew(border) {
for (var ef = border.length, eJ = ef - 1; 0 <= eJ; eJ--) a1.qj(e4, border[eJ]) || (border[eJ] = border[ef - 1], border.pop(), ef--)
}
function ez(border) {
for (var ef = border.length, eJ = ef - 1; 0 <= eJ; eJ--) !a1.qj(e4, border[eJ]) && a1.eh(border[eJ]) && (border[eJ] = border[ef - 1], border.pop(), ef--)
}
function f0(border) {
for (var eo, em, ef = border.length, eJ = ef - 1; 0 <= eJ; eJ--)
for (eo = 3; 0 <= eo; eo--)
if (em = border[eJ] + eA[eo], a1.a78(em, e4)) {
a6.ex[e4].push(border[eJ]), border[eJ] = border[ef - 1], border.pop(), ef--;
break
}
}
function f2() {
for (var eo, em, eJ = e5 - 1; 0 <= eJ; eJ--)
for (eo = 3; 0 <= eo; eo--) em = e7[eJ] + eA[eo], a1.a79(e4, em) && a1.a7A(em) && (a6.ex[e4].push(em), a1.ei(em, e4))
}
function f3() {
var fO, fP;
loop: for (; a6.i5[e4] < a6.i4[e4];) {
for (fO = a6.i1[e4]; fO >= a6.i2[e4]; fO--)
if (a1.qj(e4, 4 * (a6.i5[e4] * aq.eE + fO))) break loop;
a6.i5[e4]++
}
loop: for (; a6.i5[e4] < a6.i4[e4];) {
for (fO = a6.i1[e4]; fO >= a6.i2[e4]; fO--)
if (a1.qj(e4, 4 * (a6.i4[e4] * aq.eE + fO))) break loop;
a6.i4[e4]--
}
loop: for (; a6.i2[e4] < a6.i1[e4];) {
for (fP = a6.i4[e4]; fP >= a6.i5[e4]; fP--)
if (a1.qj(e4, 4 * (fP * aq.eE + a6.i2[e4]))) break loop;
a6.i2[e4]++
}
loop: for (; a6.i2[e4] < a6.i1[e4];) {
for (fP = a6.i4[e4]; fP >= a6.i5[e4]; fP--)
if (a1.qj(e4, 4 * (fP * aq.eE + a6.i1[e4]))) break loop;
a6.i1[e4]--
}
}
function fw(player, hZ) {
return 0 === b5.iU[player] || b5.iU[player] !== b5.iU[hZ]
}
function fu(player, hZ) {
for (var dI, aKP = a3.eK(player), eJ = 0; eJ < aKP; eJ++)
if (0 === a3.eL(player, eJ))
if ((dI = a3.eQ(player, eJ)) === b.ej) {
if (hZ === b.ej) return !1;
if (fs(hZ)) return !0
} else if (hZ === b.ej) {
if (fs(dI)) return !0
} else if (fx(hZ, dI)) return !0;
return !1
}
function fs(player) {
for (var eJ, en, ef = a6.ex[player].length, eo = 3; 0 <= eo; eo--)
for (en = eA[eo], eJ = 0; eJ < ef; eJ++)
if (a1.er(a6.ex[player][eJ] + en)) return !0;
return !1
}
function fx(va, vb) {
var eJ, dd, eo, en, em, aIH = a6.ex[va].length,
aII = a6.ex[vb].length;
for (aII < aIH && (dd = va, va = vb, vb = dd, dd = aIH, aIH = aII, 0), eo = 3; 0 <= eo; eo--)
for (en = eA[eo], eJ = 0; eJ < aIH; eJ++)
if (em = a6.ex[va][eJ] + en, a1.ep(em) && a1.eq(em) === vb) return !0;
return !1
}
function aKQ() {
this.iE = function() {
m.iE(), x.iE(), aL.iE(), aO.j4.iE(), aK.a54(), b4.d3 && (b4.d3 = !1, y.gL(), at.gL())
}
}
function aKR() {
this.dc = b4.dc, this.g4 = 0, this.aKS = 0, this.a4z = 0, this.aKT = null, this.aKU = 7, this.ye = 0, this.ct = function() {
this.a4z = 0, this.aKT = [], this.g4 = 0, this.aKS = 0
}, this.aEu = function(mP) {
var eJ;
if (b.fj) this.a2Z(mP);
else if (this.aKT.push(mP), 2 === b.sh) {
for (eJ = 0; eJ < this.aKT.length; eJ++) aX.lh.iE(this.aKT[eJ]);
this.aKT = []
}
}, this.a2Z = function(mP) {
aX.lh.iE(mP), aY.iE(), u.a2Z(this.a4z), this.a4z === b.wO ? (b.mg.iE(), this.a4z = 0, this.g4 = 0, this.aKS = 0, this.dc = b4.dc) : (this.a4z++, a5.wG(), a5.jC(!0), b0.a2r())
}, this.iE = function() {
aL.iE(), b.fj ? (b4.d3 = u.a2Z(-1) || b4.d3, jD()) : (0 !== this.g4 || b4.dc >= this.dc && (this.dc += b4.a2Y * Math.floor(1 + (b4.dc - this.dc) / b4.a2Y), 2 === b.sh ? j2() : this.aKV(), this.g4++, 27 < b4.dc - this.ye)) && this.aKW(),
j9(), b4.d3 && (b4.d3 = !1, qm()), this.ye = b4.dc
}, this.aKW = function() {
b4.d3 = !0, jB(), this.g4 = 0
}, this.aKV = function() {
var aKX, eJ;
if (this.aKS !== 7 * this.a4z) j5(), b0.a2r();
else {
for (aKX = !1; this.aKY() && (aKX = !0, j5(), 0 < this.aKT.length);)
for (eJ = this.aKU - 2; 0 <= eJ; eJ--) j5();
aKX ? b0.a2r() : (j2(), b0.wJ())
}
}, this.aKY = function() {
return 0 < this.aKT.length && (this.a4z++, aX.lh.iE(this.aKT[0]), this.aKT.shift(), !0)
}
}
function aKZ() {
var aKa, aKb, aKc, a4z, aKd, g4 = 0,
dc = b4.dc;
function aKg() {
! function() {
if (!b.fj) return;
if (b.iv) return;
return aKd % 7 != 0 ? aKd++ : a4z === b.wO ? (aKj(), u.a2Z(a4z), b.mg.iE()) : (aKj(), aKd++, a4z++, a5.wG(), a5.jC(!0)), 1
}() && (aKj(), j5())
}
function aKh() {
g4 = 0, (b.fj ? (b4.d3 = u.a2Z(a4z - (aKd % 7 == 0 ? 0 : 1) + aKd % 7 / 7) || b4.d3, jD) : k.fT || !ab.wj ? jD : (b4.d3 = !0, jB))()
}
function aKj() {
var eJ, ef, aKk = aY.me.aFm,
dt = aY.me.aFn,
dv = aY.me.aFo,
dx = aY.me.aFp,
aKl = aY.me.aFq,
aKm = aY.me.aFr;
if (aKa >= aKm.length) l.tq("Replay file smaller than expected."), ap.sH.sZ(-1);
else if (aKm = aKm[aKa], aKl[aKa]) {
for (ef = aKb + aKm, eJ = aKb; eJ < ef; eJ++) aX.lh.mR(aKk[eJ], dt[eJ], dv[eJ], dx[eJ]);
aKb += aKm, aKa++
} else ++aKc >= aKm && (aKa++, aKc = 0)
}
this.aKS = 0, this.ct = function() {
aKd = a4z = aKc = aKb = aKa = 0
}, this.iE = function() {
var aIe;
aL.iE(), ab.a03() < 1.7 ? 0 === g4 ? b4.dc >= dc && (aIe = b4.a2Y / ab.a03(), dc += aIe * Math.floor(1 + (b4.dc - dc) / aIe), 2 === b.sh || k.fT || !ab.wj ? j2() : (aKg(), b0.a2r()), g4++) : aKh() : function() {
var aIe;
if (b4.dc >= dc)
if (2 === b.sh || k.fT || !ab.wj) j2(), dc = b4.dc;
else {
for (aIe = b4.a2Y / ab.a03(), 16 < (b4.dc - dc) / aIe && (dc = b4.dc - 16 * aIe); b4.dc >= dc && 2 !== b.sh;) dc += aIe, aKg();
b0.a2r()
} aKh()
}(), j9(), b4.d3 && (b4.d3 = !1, qm())
}, this.sq = function() {
aKa !== aY.me.aFr.length && aKa + 1 !== aY.me.aFr.length && l.tq("Replay file larger than expected.")
}
}
function aKn() {
var g4 = 0,
dc = b4.dc;
this.aKS = 0, this.iE = function() {
aL.iE(), b.fj ? jD() : 0 === g4 ? b4.dc >= dc && (dc += b4.a2Y * Math.floor(1 + (b4.dc - dc) / b4.a2Y), 2 === b.sh || k.fT ? j2() : (j5(), b0.a2r()), g4++) : ((k.fT ? jD : (b4.d3 = !0, jB))(), g4 = 0), j9(), b4.d3 && (b4.d3 = !1, qm())
}
}
function cn() {
this.sp = null, this.d3 = !1, this.dc = 0, this.a2Y = 56;
var aKo = 0;
function aKp() {
b4.dc = aKo = performance.now(), b4.sp.iE(), window.requestAnimationFrame(aKp)
}
this.ct = function() {
this.wh(), window.requestAnimationFrame(aKp), this.dc = performance.now()
}, this.wd = function() {
b.fS ? (this.sp = new aKZ, this.sp.ct()) : b.iv ? this.sp = new aKn : (this.sp = new aKR, this.sp.ct())
}, this.wh = function() {
this.sp = new aKQ, this.d3 = !0
}, this.iE = function() {
this.sp.aKS++
}, this.iS = function() {
return this.sp.aKS
}, this.aEd = function() {
var dd = performance.now();
dd < aKo + 1e3 || (this.dc = dd, this.sp.iE())
}
}
function cD() {
var k5 = 0,
aKq = !0;
function aKs(g3) {
8 !== y.tk() || 2 !== a6.vZ[b.ea] && (0 !== a6.jS[b.ea] || b.fj) || l.yK(g3)
}
this.iE = function() {
var dd, yh;
b4.dc > k5 && (k5 = b4.dc + 2500, dd = new Date, yh = dd.getUTCSeconds(), aKq ? yh < 45 && (aKq = !1) : yh < 45 || (aKq = !0, (yh = dd.getUTCMinutes() + 1) % 15 == 0 && aKs(30 === yh ? "Upcoming Battle Royale Contest!" :
"Upcoming Alliance Contest!")))
}
}
function c5() {
var jj, jk, jl, jm, aKt = 0,
aKu = 0;
function aKw() {
return Math.pow(Math.pow(jl - jj, 2) + Math.pow(jm - jk, 2), .5)
}
function aKv(dI) {
jj = aL.nN * dI.touches[0].clientX, jk = aL.nN * dI.touches[0].clientY, jl = aL.nN * dI.touches[1].clientX, jm = aL.nN * dI.touches[1].clientY
}
this.uD = function(dI) {
return 1 < dI.touches.length ? (aKu = b4.dc, aKt = 3, aKv(dI), j.oN(), !0) : (aKt = 0, !1)
}, this.uE = function(dI) {
var aBC, gy, gz;
return 0 !== b.sh && 1 < dI.touches.length && (aKt = Math.max(aKt - 1, 0), g.kT() && (aBC = aKw(), aKv(dI), dI = aKw(), gy = Math.floor((jj + jl) / 2), gz = Math.floor((jk + jm) / 2), q.a0T(gy, gz, Math.max(.125, dI) / Math.max(.125,
aBC)), b4.d3 = !0), !0)
}, this.ub = function() {
var fO, fP;
return !!(aKt && (aKt = 0, b4.dc < aKu + 500)) && (fO = (jj + jl) / 2, fP = (jk + jm) / 2, j.uV(fO, fP), j.click(fO, fP, !0) && (b4.d3 = !0), !0)
}
}
function cN() {
this.size = 0, this.g4 = 0, this.mP = null, this.ct = function(mP) {
this.g4 = 0, this.mP = mP, this.size = mP.length
}, this.tw = function() {
this.mP = null
}, this.mQ = function(size) {
for (var df = 0, mP = this.mP, kT = this.g4 + size - 1, eJ = this.g4; eJ <= kT; eJ++) df |= (mP[eJ >> 3] >> 7 - (7 & eJ) & 1) << kT - eJ;
return this.g4 += size, this.g4 > 8 * this.size && console.log("error unwrapper"), df
}, this.aF3 = function(size) {
var hp = size >> 1;
return (1 << hp) * this.mQ(size - hp) + this.mQ(hp)
}, this.aKx = function(size) {
for (var ds = new Array(size), eJ = 0; eJ < size; eJ++) ds[eJ] = this.mQ(10);
return i.pU(ds)
}, this.aF2 = function(aGC) {
return this.size === ac.aF0(aGC)
}
}
function ci() {
this.aH0 = 0, this.aH1 = 0, this.aGw = 0, this.aGx = 0, this.aGy = 0, this.aGz = 0, this.a2s = [0, 0, 0, 0], this.kS = function() {
this.aH0 = q.jn(), this.aH1 = q.gK(), this.aGw = -this.aH0, this.aGx = -this.aH1, this.aGy = aL.gA / hB, this.aGz = aL.gF / hB, this.a2s[0] = Math.floor(this.aGw), this.a2s[1] = Math.floor(this.aGx), this.a2s[2] = Math.floor(this.a2s[0] +
this.aGy + 1), this.a2s[3] = Math.floor(this.a2s[1] + this.aGz + 1), b0.a2p = !0
}
}
function c6() {
var zE, k5;
this.ct = function() {
zE = 1, k5 = 0
}, this.iE = function() {
0 < zE && (k5 = 0 === k5 ? b4.dc + 16 : k5, zE = (zE -= .001 * (b4.dc - k5)) < 0 ? 0 : zE, k5 = b4.dc, b4.d3 = !0)
}, this.gL = function() {
0 < zE && (gM.fillStyle = "rgba(0,0,0," + zE + ")", gM.fillRect(0, 0, aL.gA, aL.gF))
}
}
function c9() {
function aL1(map, fO, fP, gA, gF) {
map >= aq.a8J || (aq.q6 === map && (gM.fillStyle = aa.lN, gM.fillRect(fO, fP, gA, gF), gM.fillStyle = aa.gN), gM.strokeRect(fO, fP, gA, gF), gM.fillText(aq.ir.q5[map].name, Math.floor(fO + .5 * gA), Math.floor(fP + .55 * gF)))
}
this.rD = !1, this.a64 = [0, 0, 0, 0], this.show = function() {
this.rD = !0, this.resize(), b4.d3 = !0
}, this.resize = function() {
var aIH = eX(aq.a8J + aq.a8J % 2, 2),
aIH = aL.gF - aIH * b1.gap;
b8.cy.g0() ? this.a64[2] = Math.floor(.75 * aL.min) : this.a64[2] = Math.floor(.5 * aL.min), this.a64[3] = Math.floor(1.25 * this.a64[2]), this.a64[3] > aIH && (this.a64[3] = aIH, this.a64[2] = Math.floor(aIH / 1.2)), this.a64[0] = Math
.floor((aL.gA - this.a64[2]) / 2), this.a64[1] = Math.floor((aL.gF - this.a64[3]) / 2)
}, this.u9 = function(fO, fP) {
return !(fO < this.a64[0] || fP < this.a64[1] || fO > this.a64[0] + this.a64[2] || fP > this.a64[1] + this.a64[3])
}, this.fX = function(fO, fP) {
var zs, aIH = eX(aq.a8J + aq.a8J % 2, 2);
return b4.d3 = !0, fO < this.a64[0] || fP < this.a64[1] || fO > this.a64[0] + this.a64[2] || fP > this.a64[1] + this.a64[3] ? !(this.rD = !1) : (zs = Math.floor(.17 * this.a64[3]), fP < this.a64[1] + zs ? fO > this.a64[0] + this.a64[2] -
zs && (this.rD = !1) : (fP = (fP = Math.floor(aIH * (fP - this.a64[1] - zs - .00576 * aL.g1) / (this.a64[3] - zs - .01152 * aL.g1))) < 0 ? 0 : aIH - 1 < fP ? aIH - 1 : fP, fO > this.a64[0] + this.a64[2] / 2 && (fP += aIH), fP >=
aq.a8J || aq.d4(fP, Math.floor(16384 * Math.random()))), !0)
}, this.gL = function() {
var eJ, jk, zs = Math.floor(.17 * this.a64[3]),
aIH = eX(aq.a8J + aq.a8J % 2, 2),
gap = .6 * .01152 * aL.g1,
a6I = (this.a64[3] - zs - (aIH + 1) * gap) / aIH,
qw = Math.floor((this.a64[2] - 3 * gap) / 2);
for (gM.lineWidth = b1.ri, aZ.g5.textAlign(gM, 1), aZ.g5.textBaseline(gM, 1), gM.fillStyle = aa.kh, gM.fillRect(this.a64[0], this.a64[1] + zs, this.a64[2], this.a64[3] - zs), gM.fillStyle = aa.lN, gM.fillRect(this.a64[0], this.a64[1],
this.a64[2], zs), gM.strokeStyle = aa.gN, gM.strokeRect(this.a64[0], this.a64[1], this.a64[2], this.a64[3]), gM.fillStyle = aa.gN, gM.fillRect(this.a64[0], this.a64[1] + zs, this.a64[2], 2), gM.font = aZ.g5.g6(1, .48 * zs), gM
.fillText("Maps", Math.floor(this.a64[0] + this.a64[2] / 2), Math.floor(this.a64[1] + .55 * zs)), gM.font = aZ.g5.g6(1, .48 * a6I), eJ = aIH - 1; 0 <= eJ; eJ--) jk = Math.floor(this.a64[1] + zs + gap + eJ * (a6I + gap)), aL1(eJ, this
.a64[0] + gap, jk, qw, a6I), aL1(eJ + aIH, this.a64[0] + qw + 2 * gap, jk, qw, a6I);
k.xZ(Math.floor(this.a64[0] + this.a64[2] - .7 * zs), Math.floor(this.a64[1] + .3 * zs), Math.floor(.4 * zs)), gM.setTransform(1, 0, 0, 1, 0, 0)
}
}
function cM() {
this.size = 0, this.g4 = 0, this.mP = null, this.ct = function(mP) {
this.g4 = 0, this.mP = mP, this.size = mP.length
}, this.d4 = function(aGC) {
return this.ct(new Uint8Array(this.aF0(aGC))), this.mP
}, this.tw = function() {
this.mP = null
}, this.pP = function(size, yj) {
for (var mP = this.mP, kT = this.g4 + size - 1, eJ = this.g4; eJ <= kT; eJ++) mP[eJ >> 3] |= (yj >> kT - eJ & 1) << 7 - (7 & eJ);
this.g4 += size, this.g4 > 8 * this.size && console.log("error wrapper")
}, this.aL2 = function(size, yj) {
var hp = size >> 1,
eo = 1 << hp;
this.pP(size - hp, aj.fK(yj, eo)), this.pP(hp, yj % eo)
}, this.aL3 = function(size) {
for (var mP = this.mP, kT = this.g4 + size, eJ = this.g4; eJ < kT; eJ++) mP[eJ >> 3] &= 255 ^ 128 >>> (7 & eJ)
}, this.aF0 = function(aGC) {
return aGC + 7 >> 3
}, this.aL4 = function(ds, hi, kT, aL5) {
for (var eJ = hi; eJ < kT; eJ++) this.pP(aL5, ds[eJ])
}
}
setTimeout(bE, 1e4), window.onload = function() {
bE()
};