FXclient-mirror/game.js

8690 lines
687 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 = 1045, this.ct = function() {
dA = 2, dC = 23, dB = "25 Jun 2024 [1.96.1]", dD = 0 <= window.location.hostname.toLowerCase().indexOf("territorial.io") || Math.random() >= 0.5, 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, zZ, jM, a1Q, iW, iV, uD, gM, qu, a2z, wi, wj, 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, nV = !0) {
let nW = document.createElement("button");
this.button = nW, this.nX = nU;
let nY;
function na() {
if (nV) {
var nd = aZ.color.ne(nY);
if (0 < nd[0] && nd[0] < 255 && nd[0] === nd[1] && nd[0] === nd[2]) return
}
this.style.backgroundColor = aZ.color.na(nY, 50)
}
function nc() {
this.style.backgroundColor = nY
}
function nb() {
this.style.backgroundColor = nY, this.blur()
}
var self;
this.nZ = function(iT) {
nY = iT, nW.style.backgroundColor = iT
}, self = this, nW.innerHTML = title, nW.style.color = aa.gN, nW.style.userSelect = "none", nW.style.outline = "none", nW.style.overflowWrap = "break-word", self.nZ(backgroundColor), nW.style.border = "none", nW.style.font = "inherit", nW
.style.fontSize = "1em", nW.style.padding = "0em 0.3em", nW.onclick = nU, nW.addEventListener("mouseover", na), nW.addEventListener("mouseout", nb), nW.addEventListener("focus", na), nW.addEventListener("blur", nc)
}
function nf(ng, nE) {
var n2, eJ;
for (this.resize = function() {
for (var eJ = 0; eJ < ng.length; eJ++) aZ.g5.nS(ng[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 < ng
.length; eJ++) ng[eJ].button.style.fontSize = "1.2em", n2.appendChild(ng[eJ].button);
nE.appendChild(n2)
}
function ni(nj, nk, nl = .5) {
this.fO = 0, this.fP = 0, this.gA = 0, this.gF = 0, this.resize = function() {
this.gF = Math.min(aZ.g5.nJ(nl) * nj[1] * aL.g1, aL.gF - 2 * b1.gap), this.gA = Math.min(this.gF * (nj[0] / nj[1]), aL.gA - 2 * b1.gap), this.gF = nj[1] * this.gA / nj[0], this.fO = b1.gap + nk[0] * (aL.gA - this.gA - 2 * b1.gap), this
.fP = b1.gap + nk[1] * (aL.gF - this.gF - 2 * b1.gap)
}, this.nm = function() {
return this.fO + .5 * this.gA
}
}
function nn(no, title = aW.np[121], nX = function() {}) {
function click() {
var value = 1 - no.value;
this.textContent = (value ? "🟢 " : "⚪ ") + title, bA.nq.nr(no.g4, value), nX(value)
}
var dI;
this.dI = document.createElement("p"), (dI = this.dI).textContent = (no.value ? "🟢 " : "⚪ ") + title, dI.style.margin = "0", dI.style.marginBottom = "0.5em", dI.style.cursor = "pointer", dI.addEventListener("click", click)
}
function ns(nE, n7) {
var n2 = document.createElement("div");
this.nt = n2, this.resize = function() {
n2.style.padding = aZ.g5.nR(b1.nP), n2.style.lineHeight = aZ.g5.nR(aZ.g5.nu(.035))
}, nE.style.overflowX = "hidden", nE.style.overflowY = "auto", n2.innerHTML = n7, nE.appendChild(n2)
}
function nv(nw) {
var n2 = document.createElement("div");
this.dI = n2, this.nx = nw, this.resize = function() {
for (var ef = nw.length, eJ = 1; eJ < ef; eJ++) aZ.g5.nS(nw[eJ], 4)
};
var eJ, ef = nw.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++) nw[eJ].style.verticalAlign = "top", nw[eJ].style.width = (100 / ef).toFixed(2) + "%", nw[eJ].style.height =
"100%", nw[eJ].style.fontSize = "0.75em", n2.appendChild(nw[eJ])
}
function ny(no, type = "text") {
var dI;
this.dI = document.createElement("input"), (dI = this.dI).type = type, dI.id = "input" + no.title, dI.value = no.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 !== no.g4 && (dI.addEventListener("blur", function() {
bA.nq.nr(no.g4, dI.value.trim())
}), dI.addEventListener("keypress", function(event) {
"Enter" === event.key && (event.preventDefault(), bA.nq.nr(no.g4, dI.value.trim()))
}))
}
function nz(no) {
var dI;
this.dI = document.createElement("input"), (dI = this.dI).type = "color", dI.id = "input" + no.title, dI.value = aZ.color.o0(aZ.color.o1(bA.j4.o2())), 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.nq.nr(no.g4, aZ.color.o3(aZ.color.ne(aZ.color.o4(dI.value))))
})
}
function o5(nE, o6, h9) {
var o7, eJ, o8 = new Array(o6.length),
nF = new Array(o6.length);
for (this.resize = function() {
for (var ef = o6.length, eJ = 0; eJ < ef; eJ++) 0 < eJ && aZ.g5.nS(o8[eJ], 8)
}, o7 = document.createElement("div"), nE.style.overflowX = "hidden", nE.style.overflowY = "auto", ! function() {
var eJ, eo, ef = o6.length;
for (eJ = 0; eJ < ef; eJ++) {
o8[eJ] = document.createElement("div"), o8[eJ].style.display = "flex", o8[eJ].style.width = "100%", o8[eJ].style.height = "2.5em", o8[eJ].style.backgroundColor = eJ % 2 == 0 ? aa.ks : aa.kj, nF[eJ] = new Array(o6[0].length);
for (let hg = 0; hg < o6[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 = o6[eJ][hg], 0 < hg && aZ.g5.nS(eo, 4), o8[eJ].appendChild(eo)
}
}(), eJ = 0; eJ < o6.length; eJ++) o7.appendChild(o8[eJ]);
nE.appendChild(o7)
}
function oA(no, oB = function() {}) {
this.nA = [];
let oC = this.nA;
function click() {
for (let eJ = 0; eJ < oC.length; eJ++) oC[eJ].textContent = oC[eJ].textContent.replace("🟢", "⚪");
this.textContent = this.textContent.replace("⚪", "🟢");
var g4 = parseInt(this.name);
bA.nq.nr(no.g4, g4), oB(g4)
}
var oD, ef = no.oE.length;
for (let eJ = 0; eJ < ef; eJ++)(oD = document.createElement("p")).textContent = "⚪ " + no.oE[eJ], oD.style.margin = "0", oD.name = "" + eJ, oD.style.cursor = "pointer", oD.style.fontSize = "1em", oD.addEventListener("click", click), oC.push(oD);
oC[no.value].textContent = oC[no.value].textContent.replace("⚪", "🟢")
}
function oF(title, oG, oH = !0) {
let o7 = document.createElement("div"),
oI = document.createElement("div"),
oJ = document.createElement("div"),
oK = document.createElement("div");
this.oL = oJ, this.show = function() {
oH ? document.body.appendChild(o7) : (document.body.appendChild(oI), document.body.appendChild(oK))
}, this.oP = function() {
oH ? document.body.removeChild(o7) : (document.body.removeChild(oI), document.body.removeChild(oK))
}, this.oQ = function() {
var oR = aZ.g5.nu(.1),
oS = aZ.g5.nu(.08 + .04 * (aL.oT < 1));
return {
oR: oR,
oS: oS,
oU: aL.gF / aL.nN - oR - oS
}
}, this.resize = function() {
let eJ, dI;
var ef = oG.length,
oV = this.oQ(),
oR = oV.oR,
oS = oV.oS;
for (oI.style.height = aZ.g5.nR(oR), aZ.g5.nS(oI, 2), oK.style.top = aZ.g5.nR(aL.gF / aL.nN - oS), oK.style.height = aZ.g5.nR(oS), aZ.g5.nS(oK, 8), oJ.style.top = aZ.g5.nR(oR), oJ.style.height = oJ.style.maxHeight = aZ.g5.nR(oV.oU), oK
.style.font = oI.style.font = aZ.g5.g6(0, aZ.g5.nu(.02, .25)), oJ.style.font = aZ.g5.g6(0, aZ.g5.nu(.02, .4)), eJ = 0; eJ < ef; eJ++)(dI = oG[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)
}, this.gL = function() {
var oV = this.oQ(),
iT = aL.nN;
gM.fillStyle = aa.kg, gM.fillRect(0, iT * oV.oR, aL.gA, iT * oV.oU)
}, o7.style.position = "absolute", o7.style.top = "0", o7.style.left = "0", o7.style.width = "100%", o7.style.height = "100%", oI.style.position = "absolute", oI.style.top = "0", oI.style.left = "0", oI.style.width = "100%", oI.style
.display = "flex", oI.style.backgroundColor = aa.kg, oK.style.position = "absolute", oK.style.left = "0", oK.style.width = "100%", oJ.style.position = "absolute", oJ.style.width = "100%", oJ.style.backgroundColor = aa.kg;
for (let eJ = 0; eJ < oG.length; eJ++) oG[eJ].button.style.position = "absolute", oG[eJ].button.style.fontSize = "1.2em";
for (let eJ = 0; eJ < oG.length; eJ++) oK.appendChild(oG[eJ].button);
oI.appendChild(function() {
var oO = document.createElement("h1");
return oO.textContent = title, oO.style.margin = "auto", oO.style.fontSize = "2.3em", oO
}()), oH && (o7.appendChild(oJ), o7.appendChild(oI), o7.appendChild(oK))
}
function oW(name, oX) {
var oY = document.createElement("textarea"),
oa = (this.oZ = oY, !0);
function oh() {
oY.select(), document.execCommand("copy")
}
this.resize = function() {
oY.style.padding = aZ.g5.nR(b1.nP)
}, this.ob = function(oc) {
oY.value = oc
}, this.od = function() {
return oY.value
}, this.oe = function() {
oY.select()
}, this.clear = function() {
oY.value = ""
}, this.og = function() {
oa && navigator.clipboard ? (oY.select(), navigator.clipboard.writeText(oY.value).catch(function() {
oa = !1, oh()
})) : oh()
}, oY.setAttribute("name", name), oY.setAttribute("id", name + "Field"), oY.setAttribute("autocomplete", "off"), oY.setAttribute("placeholder", oX), oY.style.top = "0", oY.style.left = "0", oY.style.width = "100%", oY.style.height = "100%",
oY.style.userSelect = "none", oY.style.outline = "none", oY.style.resize = "none", oY.style.border = "none", oY.style.color = aa.gN, oY.style.backgroundColor = aa.kd, oY.style.fontSize = "1.2em"
}
function ce() {
this.nX = new oi, this.dK = new oj, this.nq = new ok, this.j4 = new ol, this.ct = function() {
this.dK.ct(), (new om).ct()
}
}
function oj() {
function on(eJ, title, type = 0, oE = null, ot = 0, dg = 0) {
bA.dK.data.push({
g4: eJ,
title: title,
type: type,
oE: oE,
value: ot,
ot: ot,
dg: dg
})
}
function oo(eJ, title, type, oE = null, ot = "", dg = 0) {
bA.dK.data.push({
g4: eJ,
title: title,
type: type,
oE: oE,
value: ot,
ot: ot,
dg: dg
})
}
function op(kT) {
for (var eJ = bA.dK.data.length; eJ < kT; eJ++) bA.dK.data.push(null)
}
this.data = [], this.ct = function() {
on(0, "", 1, ["English", "Русский", "Türkçe", "Española", "Deutsch", "Polski"], 0, 5), on(1, "", 1, null, 1), on(2, "", 0, [0, 1]), oo(3, "Username", 2), on(4, "Font5", 1, ["Default", "Custom"]), oo(5, "", 2, null, "Trebuchet MS", 1), on(
6, "", 0, [0, 1]), on(7, "", 0, [0, 1], 1), on(8, "", 0, [0, 1]), on(9, "", 1, null, 1), on(10, "", 1, null), on(11, "", 1, null, 1), op(100), oo(100, "Username", 2), oo(101, "Password", 2), oo(102, "Emojis", 2), oo(103, "Colors",
2), oo(104, "Clan", 2), oo(105, "AccountName", 2), oo(106, "Password", 2), on(107), on(108), on(109), oo(110, null, 2), on(111), on(112), on(113), oo(114, null, 2), on(115), oo(116, null, 2), on(117, null, 1), oo(118, null, 2,
null, "", 2), on(119, null, 1, null, 0, 1), oo(120, null, 2), on(121, "CountryColor", 1, null, -1), oo(122, "Username", 2), on(123, "Same as MP Username"), oo(124, null, 2, null, "Player " + Math.floor(1e3 * Math.random())), op(
180), on(180, "R0", 0), on(181, "R1", 0)
}, this.translate = function() {
this.data[0].title = "🌐 " + aW.np[101], this.data[1].title = aW.np[102], this.data[2].title = aW.np[103], this.data[5].title = aW.np[104], this.data[6].title = aW.np[105], this.data[7].title = aW.np[106], this.data[8].title = aW.np[107],
this.data[9].title = aW.np[108], this.data[10].title = aW.np[109], this.data[11].title = aW.np[110], this.data[1].oE = [aW.np[111], aW.np[112], aW.np[113], aW.np[114]], this.data[9].oE = [aW.np[112], aW.np[115], aW.np[116]], this
.data[10].oE = [aW.np[109] + " 1", aW.np[117] + " 1", aW.np[109] + " 2", aW.np[117] + " 2"], this.data[11].oE = [aW.np[118], aW.np[119], aW.np[120]]
}, this.nr = function(g4, value) {
this.data[g4].value = value
}, this.dL = function(g4, value) {
this.nr(g4, value), bA.nX.save(g4, String(value)), bA.nX.save(g4, String(this.data[g4].dg), !0)
}, this.oq = function() {
for (var eJ = 0; eJ < this.data.length; eJ++) this.data[eJ] && (bA.nX.save(eJ, String(this.data[eJ].value)), bA.nX.save(eJ, String(this.data[eJ].dg), !0))
}, this.or = function(g4) {
return Number(this.data[g4].value)
}, this.os = function(g4) {
return String(this.data[g4].value)
}
}
function oi() {
this.ou = function(g4, dg = !1) {
return Number(this.ov(g4, dg))
}, this.ov = function(g4, dg = !1) {
var df = null;
return 0 === b8.id ? b8.ow && (df = b8.ow.getItem((dg ? "v" : "d") + g4)) : 1 === b8.id ? df = b8.ox.loadString((dg ? 1e3 : 2e3) + g4) : 2 === b8.id && (df = b8.oy[(dg ? "v" : "d") + g4]), df && 0 !== df.length ? df : null
}, this.save = function(g4, value, dg = !1) {
0 === b8.id ? b8.ow && b8.ow.setItem((dg ? "v" : "d") + g4, value) : 1 === b8.id ? b8.ox.saveString((dg ? 1e3 : 2e3) + g4, value) : 2 === b8.id && (b8.oy["d" + g4] = value, b8.oz.postMessage((dg ? "v" : "d") + g4 + " " + value))
}
}
function om() {
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].ot = 1);
0 === data[100].dg && (data[100].value = data[100].ot = (0 === b8.id ? "Player " : 1 === b8.id ? "Android User " : "iOS User ") + Math.floor(1e3 * Math.random()));
data[0].value = data[0].ot = aW.p2()
}();
var eJ, df, data = bA.dK.data,
ef = data.length;
for (eJ = 0; eJ < ef; eJ++) data[eJ] && data[eJ].dg === bA.nX.ou(eJ, !0) && (df = bA.nX.ov(eJ), data[eJ].value = null === df ? data[eJ].ot : 2 === data[eJ].type ? df : Number(df));
bA.dK.data[10].value = bA.dK.data[10].ot
}
}
function ol() {
function p6(ds) {
if (0 === ds.length) bA.nq.nr(116, "");
else {
let pA = ds[0];
for (let eJ = 1; eJ < ds.length; eJ++) pA += ";" + ds[eJ];
bA.nq.nr(116, pA)
}
}
this.p3 = function() {
bA.dK.data[110].value.length && (bA.dK.data[106].value = bA.dK.data[110], bA.nq.nr(110, ""), this.p4())
}, this.p4 = 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 p5 = [];
for (let eJ = 0; eJ < ds.length; eJ += 2) p5.push(ds[eJ]);
p6(ds), bA.dK.data[117].value = 0, bA.dK.data[117].oE = p5
}, this.p7 = function(g4) {
bA.dK.data[117].oE.splice(g4, 1), bA.dK.data[117].value = Math.min(g4, bA.dK.data[117].oE.length - 1);
var ds = bA.dK.data[116].value.split(";");
ds.splice(2 * g4, 2), p6(ds)
}, this.p8 = function(g4) {
var ds = bA.dK.data[116].value.split(";");
return {
p9: ds[2 * g4],
password: ds[2 * g4 + 1]
}
}, this.o2 = function() {
let df = aj.mx(bA.dK.data[121].value, -1, 262143);
return df = -1 === df ? ~~(262144 * Math.random()) : df
}
}
function ok() {
this.nr = function(g4, value) {
bA.dK.data[g4].value !== value && (bA.dK.dL(g4, value), 0 === g4 ? (at.pB(), aW.ct(), at.d5(2)) : 1 === g4 ? aL.d8(1) : 2 === g4 ? aL.d8(0) : 5 === g4 && (aZ.g5.pC(), aL.d8(0)))
}, this.pD = function() {
for (var data = bA.dK.data, eJ = 0; eJ < 100; eJ++) data[eJ] && bA.dK.dL(eJ, data[eJ].ot);
aZ.g5.pC(), aL.d8(1), aW.ct()
}, this.pE = function() {
var data = bA.dK.data;
for (let eJ = 0; eJ < data.length; eJ++) data[eJ] && bA.dK.nr(eJ, data[eJ].ot)
}
}
function bO() {
this.pF = new pG, this.pH = new pI, this.ct = function() {
this.pF.ct()
}
}
function pI() {
this.pJ = function(size) {
var pK = af,
ds = [];
for (let eJ = 0; eJ < size; eJ++) ds.push(String.fromCharCode(pK.mQ(16)));
return ds.join("")
}, this.pL = function(g3) {
return 20 < (g3 = g3.trim()).length ? g3.substring(0, 20) : g3
}
}
function pG() {
var pM = new Uint8Array(78);
this.ct = function() {
var eJ;
for (pM[50] = 37, eJ = 0; eJ < 10; eJ++) pM[eJ + 3] = eJ + 1;
for (eJ = 0; eJ < 26; eJ++) pM[eJ + 20] = eJ + 11, pM[eJ + 52] = eJ + 38
}, this.pN = function(g3) {
return g3.trim().replace(new RegExp("[^a-zA-Z0-9_\\-]", "g"), "_")
}, this.pO = function(g3, size) {
if ((g3 = this.pN(g3)).length > size) return g3.substring(0, size);
for (; g3.length < size;) g3 += "_";
return g3
}, this.pP = function(g3) {
for (var pQ = pM, ef = g3.length, ds = new Uint8Array(ef), eJ = 0; eJ < ef; eJ++) ds[eJ] = pQ[g3.charCodeAt(eJ) - 45];
return ds
}, this.pR = function(pS) {
ac.d4(6 * pS.length), this.pT(pS), af.ct(ac.mP)
}, this.pT = function(pS) {
var ef = pS.length,
gA = ac;
for (let eJ = 0; eJ < ef; eJ++) gA.pU(6, pS[eJ])
}, this.pV = function(g3) {
this.pT(this.pP(g3))
}, this.pW = function(g3, size) {
this.pT(this.pP(this.pO(g3, size)))
}
}
function pX() {
var gA, gF, pY;
function py(pz, eo, pw, pe, pr) {
eo = px(pz, eo + 1 + 2 * pe & 3);
! function(pz, q0) {
return 1 < Math.abs(pz % gA - q0 % gA) || 1 < Math.abs(q3(pz) - q3(q0))
}(pz, eo) && 0 === pr[eo << 2] && (pr[eo << 2] = pw)
}
function q3(em) {
return Math.floor((em + .5) / gA) % gF
}
function px(em, eo) {
return em + pY[eo]
}
this.pZ = function(g3) {
var eJ, pa, ef, pc, pK = af;
for (ae.pF.pR(ae.pF.pP(g3)), aq.eE = gA = pK.mQ(12), aq.eF = gF = pK.mQ(12), pY = [-gA, -1, gA, 1], aq.pn = document.createElement("canvas"), aq.pn.width = aq.eE, aq.pn.height = aq.eF, aq.pj = aq.pn.getContext("2d", {
alpha: !1
}), aq.pk = aq.pj.getImageData(0, 0, aq.eE, aq.eF), aq.po = aq.pk.data, aZ.pp.pq(aq.po), ef = pK.mQ(12), pa = pK.mQ(5), pc = pg(gA * gF - 1), eJ = 0; eJ < ef; eJ++) ! function(pb, em, pd, pe) {
var eJ, eo, pK = af,
pr = aq.po,
ps = em,
pt = em,
pu = 0,
pv = 1 + pd,
pw = 2 - pd;
for (pr[em << 2] = pv, eJ = 0; eJ < pb; eJ++) eo = pK.mQ(2), em = px(em, eo), pr[em << 2] === pv ? pu % 2 == 1 && py(pt, pu + 2 * pe + 3, pw, pe, pr) : pr[em << 2] = pv, py(em, eo, pw, pe, pr), py(pt, eo, pw, pe, pr), pt = em,
pu = eo;
px(em, 0) === ps ? (py(em, 0, pw, pe, pr), py(ps, 0, pw, pe, pr)) : px(em, 1) === ps && (py(em, 0, pw, pe, pr), py(ps, 2, pw, pe, pr));
0 === pb && (py(ps, 0, pw, pe, pr), py(ps, 2, pw, pe, pr))
}(pK.mQ(pa), pK.mQ(pc), 1 === pK.mQ(1), 1 === pK.mQ(1));
var fO, fP, q4, q5, q6, q7, pr = aq.po,
q8 = !0,
q9 = aq.ir.qA[aq.qB].q9,
qC = aq.ir.qA[aq.qB].qC;
for (fP = 0; fP < gF; fP++)
for (q5 = !0, q6 = q8, fO = q7 = 0; fO < gA; fO++) q4 = 4 * fP * gA + 4 * fO, q7 <= fO && 0 < pr[q4] && (q6 = 2 === pr[q4], q5) && (q5 = !1, q6 !== q8) ? (q8 = q6, q7 = fO + 1, fO = -1) : (q6 ? (pr[q4] = qC[0], pr[1 + q4] = qC[1], pr[
2 + q4] = qC[2]) : (pr[q4] = q9[0], pr[1 + q4] = q9[1], pr[2 + q4] = q9[2]), pr[3 + q4] = 255);
aq.pj.putImageData(aq.pk, 0, 0), aq.pl = !0, aq.pm.ct(), b4.d3 = !0
}
}
function bU() {
var fO, fP, gA, gF, qD, qE, qF, qG, player, ds;
function qO() {
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)), qW()) return 1;
return
}() || function() {
var h1, h4, hg, qM, hp, qL;
for (h1 = eX(gA * aM.random(), aM.value(100)), h4 = eX(gF * aM.random(), aM.value(100)), hg = 40; 1 <= hg; hg--)
for (qM = gF - hg; 0 <= qM; qM -= 40)
for (fP = (qM + h4) % gF, hp = 40; 1 <= hp; hp--)
for (qL = gA - hp; 0 <= qL; qL -= 40)
if (fO = (qL + h1) % gA, qW()) return 1;
return
}()
}
function qW() {
for (var em, qY, gap = eX(qD - qG, 2), qZ = qF + fP * qD + gap, qa = qE + fO * qD + gap, qX = qZ + qG - 1; qZ <= qX; qX--)
for (qY = qa + qG - 1; qa <= qY; qY--)
if (em = a1.qU(qY, qX), !a1.eh(em) || a1.hc(em)) return;
return 1
}
function qP(qL, qM) {
qH(), qb(qL - 2, qM - 2)
}
function qH() {
a6.jS[player] = 0, a6.eb[player] = 0, a6.f5[player] = a6.qc[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 qb(qL, qM) {
var em, eJ, qe, qf;
for (a6.jS[player] = 1, player < b.ht ? a6.eb[player] = b.qd : a6.eb[player] = ib[c.ha[player - b.ht]], a6.i2[player] = qL + 10, a6.i5[player] = qM + 10, a6.i4[player] = a6.i1[player] = 0, qe = qL; qe < qL + 4; qe++)
for (qf = qM; qf < qM + 4; qf++)(qL < qe && qe < qL + 3 || qM < qf && qf < qM + 3) && (em = a1.qU(qe, qf), a1.eh(em)) && (a6.i2[player] = qe < a6.i2[player] ? qe : a6.i2[player], a6.i1[player] = qe > a6.i1[player] ? qe : a6.i1[player], a6
.i5[player] = qf < a6.i5[player] ? qf : a6.i5[player], a6.i4[player] = qf > a6.i4[player] ? qf : a6.i4[player], ds[a6.f5[player]] = em, a6.f5[player]++, a1.qg(em, player));
for (a6.qc[player] = a6.f5[player], eJ = a6.f5[player] - 1; 0 <= eJ; eJ--) a1.qh(ds[eJ], player) ? (a1.ei(ds[eJ], player), a6.ex[player].push(ds[eJ])) : a1.qi(ds[eJ]) ? (a1.ei(ds[eJ], player), a6.ey[player].push(ds[eJ])) : a1.qj(ds[eJ]) && (
a1.ei(ds[eJ], player), a6.f1[player].push(ds[eJ]))
}
function qV(qL, qM) {
for (var em, qY, qX = qM; qM - 6 < qX; qX--)
for (qY = qL; qL - 6 < qY; qY--)
if (em = a1.qU(qY, qX), a1.hc(em)) return;
return 1
}
this.ct = function() {
var eJ, qL, qM;
if (ds = new Array(12), qG = 6, qD = 10, gA = eX(aq.eE, qD), gF = eX(aq.eF, qD), qE = eX(aq.eE - qD * gA, 2), qF = eX(aq.eF - qD * gF, 2), b.fj)
for (eJ = 0; eJ < b.ht; eJ++) player = eJ, qH(), a6.jS[player] = 1;
if (aV.iq && aV.ir.qI) {
for (player = 0; player < b.ej; player++)
if (1 !== a6.jS[player]) {
if (player < b.qN) {
if (function() {
var qL = aV.ir.qI[player] + 1,
qM = aV.ir.qT[player] + 1;
if (3 < qL && qL < aq.eE - 5 && 3 < qM && qM < aq.eF - 5 && a1.eh(a1.qU(qL, qM)) && qV(qL + 3, qM + 3)) return qP(qL + 1, qM + 1), 1;
return
}()) continue;
if (qO()) {
qL = qE + fO * qD + eX(qD, 2), qM = qF + fP * qD + eX(qD, 2), qP(qL, qM);
continue
}
}
qH()
}
} else ! function() {
var qL, qM;
for (player = 0; player < b.ej; player++) 1 !== a6.jS[player] && (player < b.qN && qO() ? (qL = qE + fO * qD + eX(qD, 2), qM = qF + fP * qD + eX(qD, 2), qP(qL, qM)) : qH())
}();
b2.ed[7] = a6.f5[b.ea], b2.ed[8] = a6.eb[b.ea]
}, this.qk = function(hZ, ql, qm) {
var eJ, qL, qM, em, fO, fP;
for (player = hZ, eJ = 0; eJ < 20; eJ++)
for (qL = ql + eJ; ql - eJ <= qL; qL--)
for (qM = qm + eJ; qm - eJ <= qM; qM--)
if ((qL === ql + eJ || qL === ql - eJ || qM === qm + eJ || qM === qm - eJ) && 3 < qL && qL < aq.eE - 5 && 3 < qM && qM < aq.eF - 5 && a1.eh(a1.qU(qL, qM)) && qV(qL + 3, qM + 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.qo(player, em) && (a1.qp(em), a6.f5[player]--);
qH()
}
return qb(qL - 1, qM - 1), !0
} return !1
}, this.qq = function(hZ) {
player = hZ, qO() ? qP(qE + fO * qD + eX(qD, 2), qF + fP * qD + eX(qD, 2)) : qH()
}
}
function qr() {
aE.qs(), gM.setTransform(hB, 0, 0, hB, 0, 0), gM.imageSmoothingEnabled = hB < 3, gM.drawImage(aq.pn, q.jn(), q.gK()), an.qt.gL(), gM.drawImage(qu, q.jn(), q.gK()), aE.gL(), gM.imageSmoothingEnabled = !1, gM.setTransform(1, 0, 0, 1, 0, 0), al.qt
.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 qv(qw, gA, gF) {
qw.clearRect(0, 0, gA, gF), qw.fillStyle = aa.kh, qw.fillRect(0, 0, gA, gF)
}
function qx(qw, gA, gF, qy) {
qw.fillStyle = aa.gN, qw.fillRect(0, 0, gA, qy), qw.fillRect(0, 0, qy, gF), qw.fillRect(gA - qy, 0, qy, gF), qw.fillRect(0, gF - qy, gA, qy)
}
function qz(qw, fO, fP, gP, qy, em, r0) {
qw.fillStyle = aa.gN;
var em = Math.floor(gP * em),
r2 = (em += (em - qy) % 2, Math.floor((em - qy) / 2)),
gP = Math.floor((gP - em) / 2);
qw.fillRect(fO + gP, fP + gP + r2, em, qy), r0 && qw.fillRect(fO + gP + r2, fP + gP, qy, em)
}
function r4() {
this.r5 = null, this.ct = function(r5) {
this.r5 = r5, l.r6(this.r5)
}, this.r7 = function(r8) {
var gn = (this.r5[r8].r9 - this.r5[1 - r8].r9) / 10,
gn = 8 / (1 + Math.pow(2, gn / 32)),
gn = Math.floor(10 * gn + .5),
rB = this.rC(this.r5[r8].r9 + gn + 1),
gn = this.rC(this.r5[1 - r8].r9 - gn);
0 === r8 ? l.rE(this.r5, rB, gn, ["rgba(10,140,10,0.75)", "rgba(140,10,10,0.75)"]) : l.rE(this.r5, gn, rB, ["rgba(140,10,10,0.75)", "rgba(10,140,10,0.75)"])
}, this.rC = function(r9) {
return 16e3 <= (r9 = r9 < 0 ? 0 : 16e3 < r9 ? 16e3 : r9) ? "Unknown" : (r9 / 10).toFixed(1)
}
}
function bx() {
this.rF = new rG, this.pr = new rH
}
function rH() {
this.rI = !1;
let jj, jk, gap, gP, zoom, rJ, rL;
this.rM = [], this.rN = 100;
let rP = 0,
rQ = new Array(9),
rR = [],
rS = [],
rT = 0,
rU = 0,
rV = 0,
rW = 0;
function ri() {
rQ.sort((hg, hp) => hp.ic - hg.ic);
let g3 = "" + rQ[0].m0;
for (let eJ = 1; eJ < 9; eJ++) g3 += "," + rQ[eJ].m0;
for (let eJ = 0; eJ < 9; eJ++) g3 += "," + rQ[eJ].ic;
bA.dK.dL(120, g3)
}
this.ct = function() {
var rX = [0, 1, 2, 4, 7, 8, 9, 10, 11, 12, 13, 14, 15, 6];
for (let eJ = 0; eJ < rX.length; eJ++) {
var color = 6 === rX[eJ] ? aa.l6 : aa.ki;
this.rM.push(aZ.gV.rY(a0.get(3), rX[eJ], color))
}
for (let eJ = 0; eJ < a9.rF.rZ; eJ++) rS.push(a9.rF.ra - a9.rF.rZ + eJ);
for (let eJ = 0; eJ < a9.rF.rb; eJ++) rS.push(a9.rF.rc + eJ);
var rd = a9.rF.re(ai.rd);
for (let eJ = 0; eJ < rd.length; eJ++) rS.push(rd[eJ]);
var ds = bA.dK.data[120].value.split(",");
if (18 !== ds.length)
for (let eJ = 0; eJ < 9; eJ++) rQ[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.rF.ra ? df : 0, parseInt(ds[eJ + 9]));
iT = 0 <= iT && iT < 1e3 ? iT : 0, rQ[eJ] = {
m0: df,
ic: iT
}
}
}, this.show = function(gD, gE, rj = 0) {
if (rT = gD, rU = gE, rP = rj, this.rI = !0, rR = [], 0 === rP)
for (let eJ = 0; eJ < 9; eJ++) rR.push(rQ[eJ].m0);
else {
let hp = 49 * rP,
hg = hp - 49;
hg >= rS.length && (rP = 1, hg = 0, hp = 49), hp = Math.min(hp, rS.length);
for (let eJ = hg = hp - 49; eJ < hp; eJ++) rR.push(rS[eJ])
}
rR.push(1024);
rj = rR.length, gP = Math.floor((b8.cy.g0() ? .075 : .0468) * aL.g1), gap = Math.floor(gP / 3), rJ = gP + gap, (rV = 10 * rJ) > aL.gA && (rV = aL.gA, rJ = rV / 10, gP = 3 * rJ / 4, gap = rJ - gP), rL = aj.fK(rj, 10) + !!(rj % 10), (rW =
rL * rJ) > aL.gF && (rW = aL.gF, rJ = rW / rL, gP = 3 * rJ / 4, gap = rJ - gP), zoom = gP / this.rN, rj = .5 * gap;
jj = Math.min(Math.max(gD - .5 * rV + rj, rj), aL.gA - rV + rj), jk = Math.min(Math.max(gE - .5 * rW + rj, rj), aL.gF - rW + rj)
}, this.fX = function(gD, gE, player) {
if (!this.rI) return !1;
if (this.rm(gD, gE)) {
gD = aj.mx(aj.fK(gD - jj + .5 * gap, rJ), 0, 9);
if ((gD += 10 * aj.mx(aj.fK(gE - jk + .5 * gap, rJ), 0, 9)) >= rR.length) return j.oP(), !0;
gE = rR[gD];
if (1024 === gE) return this.show(rT, rU, rP + 1), !0;
! function(m0) {
for (let eJ = 0; eJ < 9; eJ++) rQ[eJ].ic = Math.floor(.99 * rQ[eJ].ic);
for (let eJ = 0; eJ < 9; eJ++)
if (m0 === rQ[eJ].m0) return rQ[eJ].ic = Math.min(rQ[eJ].ic + 30, 999), ri();
rQ.splice(5, 0, {
m0: m0,
ic: Math.max(rQ[4].ic, 30)
}), rQ.pop(), ri()
}(gE), player === b.ea ? aX.fk.lz(gE) : aX.fU.mE(gE, player)
}
return j.oP(), !0
}, this.rm = function(gD, gE) {
return !(gD < jj - .5 * gap || gE < jk - .5 * gap || gD >= jj + rV - .5 * gap || gE >= jk + rW - .5 * gap)
}, this.gL = function() {
gM.fillStyle = aa.kh, gM.fillRect(jj - .5 * gap, jk - .5 * gap, rV, rW);
var q4 = .5 * b1.rn,
ef = (gM.lineWidth = b1.rn, gM.strokeStyle = gM.fillStyle = aa.gN, gM.strokeRect(jj - .5 * gap + q4, jk - .5 * gap + q4, rV - 2 * q4, rW - 2 * q4), gM.imageSmoothingEnabled = !0, rR.length);
for (let eJ = 0; eJ < ef; eJ++) this.ro(rR[eJ], gM, jj + eJ % 10 * rJ, jk + aj.fK(eJ, 10) * rJ, gP);
gM.imageSmoothingEnabled = !1
}, this.ro = function(m0, gW, fO, fP, gP) {
var fg;
m0 >= 1024 - a9.rF.rZ ? (fg = gP / this.rN, gW.setTransform(fg, 0, 0, fg, fO, fP), gW.drawImage(this.rM[m0 - 1024 + a9.rF.rZ], 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.rF.rp(m0), fO + .5 * gP, fP + (.35 - aZ.g5.rq + .56) * gP))
}
}
function rG() {
this.emojis = ["🥰", "😎", "😘", "😜", "🤗", "🥳", "😇", "😊", "🥱", "🙄", "🤔", "🥺", "😡", "😭", "😱", "😞", "💀", "👹", "👋", "🙏", "👏", "💪", "🙋‍♂️", "🤦‍♂️", "⬆️", "➡️", "⬇️", "⬅️", "👀", "❤️", "💔", "💥", "🔥", "🪦", "🥇", "🥈", "🥉",
"🎖️", "🏅", "👑", "🎉", "💯", "✝️", "☪️", "🕉️", "☸️", "✡️", "☦️", "⚛️"
], this.rZ = 13, this.rb = this.emojis.length, this.rc = 676, this.ra = 1024, this.rr = this.emojis.indexOf("💀"), this.rs = this.rr + 1, this.rt = this.emojis.indexOf("🥇"), this.ru = this.emojis.indexOf("😊"), this.rp = function(df) {
return df < this.rc ? String.fromCharCode(55356, 56806 + aj.fK(df, 26), 55356, 56806 + df % 26) : this.emojis[Math.min(df - this.rc, this.rb - 1)]
}, this.re = 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.rv = function(df) {
return df < this.rc
}, this.rw = function(df) {
return df >= 1024 - this.rZ
}, this.rx = function(df) {
return df >= this.rc && df < this.rc + this.rs
}
}
function bN() {
this.pF = new ry, this.pH = new rz, this.ct = function() {
this.pF.ct()
}
}
function rz() {
this.pV = function(g3) {
var ef = g3.length,
gA = ac;
for (let eJ = 0; eJ < ef; eJ++) gA.pU(16, g3.charCodeAt(eJ))
}
}
function ry() {
var s0 = new Uint8Array(64);
this.ct = function() {
var eJ;
for (s0[0] = 45, s0[37] = 95, eJ = 0; eJ < 10; eJ++) s0[eJ + 1] = 48 + eJ;
for (eJ = 0; eJ < 26; eJ++) s0[eJ + 11] = 65 + eJ, s0[eJ + 38] = 97 + eJ
}, this.s1 = function(s2) {
for (var pK = af, pS = new Uint8Array(s2), eJ = 0; eJ < s2; eJ++) pS[eJ] = pK.mQ(6);
return pS
}, this.s3 = function(pS) {
for (var ef = pS.length, s4 = s0, ds = [], eJ = 0; eJ < ef; eJ++) ds.push(String.fromCharCode(s4[pS[eJ]]));
return ds.join("")
}
}
function bV() {
var s5, s6, s7;
s5 = [32, 65, 191, 913, 931], s6 = [64, 127, 688, 930, 1155], s7 = new Array(s5.length + 1);
for (var eJ = 0; eJ < s7.length; eJ++) {
s7[eJ] = 0;
for (var hg = eJ - 1; 0 <= hg; hg--) s7[eJ] += s6[hg] - s5[hg]
}
function sD(iT) {
for (var eJ = s5.length - 1; 0 <= eJ; eJ--)
if (iT >= s5[eJ] && iT < s6[eJ]) return eJ;
return -1
}
this.pL = function(g3) {
return 0 !== (g3 = g3.trim()).indexOf("Bot ") && 0 !== g3.indexOf("[Bot] ") && function(g3, sA, sB) {
var ef = (g3 = g3.trim()).length;
if (ef < sA || sB < ef) return !1;
for (var iT, sC = 0, eJ = 0; eJ < ef; eJ++)
if (iT = g3.charCodeAt(eJ), sC += 65 <= iT && iT <= 90 || 1040 <= iT && iT <= 1071 ? 1 : 0, -1 === sD(iT)) return !1;
if (3 < sC && sC > Math.floor(ef / 2)) return !1;
return !0
}(g3, 3, 20)
}, this.sE = function(g3) {
for (var ef = (g3 = g3.trim()).length, ds = [], eJ = 0; eJ < ef; eJ++) {
var iT, em = sD(iT = g3.charCodeAt(eJ));
ds.push(s7[em] + iT - s5[em])
}
return ds
}, this.pZ = function(ds) {
for (var iT, hp, g3 = "", ef = ds.length, eJ = 0; eJ < ef; eJ++)
for (hp = 1; hp < s7.length; hp++)
if (ds[eJ] < s7[hp]) {
iT = s5[hp - 1] + ds[eJ] - s7[hp - 1], g3 += String.fromCharCode(iT);
break
} return g3
}, this.sF = function(g3) {
for (var ds = this.sE(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.sG = 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.pZ(ds)
}, this.sH = 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.sI = 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.sJ = 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,
pS = [];
for (eJ = 0; eJ < ef; eJ += 3) pS[iT++] = parseInt(ds[eJ] + ds[eJ + 1] + ds[eJ + 2]);
return pS
}, this.sK = function() {
for (var gY, sL = "", eJ = 0; eJ < 6; eJ++) gY = 48 + aM.random() % 36, gY += 58 <= gY ? 39 : 0, sL += String.fromCharCode(gY);
return sL
}
}
function cV() {
this.sM = new sN, this.sO = new sP, this.result = new sQ, this.fo = new sR
}
function sS() {
this.sT = function() {}
}
function sR() {
this.sU = function() {
var ef = iV,
r5 = iW,
sV = [];
for (let eJ = 0; eJ < ef; eJ++) {
var em = r5[eJ];
a1.sW(em) && sV.push(em)
}
return sV
}, this.sX = function() {
var ef = iV,
r5 = iW;
let dd = 0;
var f5 = a6.f5;
for (let eJ = 0; eJ < ef; eJ++) dd += f5[r5[eJ]];
return dd
}
}
function sN() {
function sZ() {
if (2 === b.sm) return 1;
aJ.sn(), b.sm = 2, b.so = b.sp
}
function sd() {
ap.result.sT(), ap.result.sq(), l.sr(!0), l.ss(247, 0), t.jC(!0), u.jC(!0), aJ.jC(), ab.st(), b.fS && b4.su.sv(), b4.d3 = !0, b0.sw(), b8.cy.setState(0)
}
this.sY = function() {
sZ() || (b.sa = 2, ap.result.sb(), l.sc(0, 59), g.kL(2700), v.show(!1, !1, !0), sd())
}, this.se = function(sf) {
sZ() || (b.sa = 1, 8 === b.it ? (b.sg = sf < 0 ? a6.f5[0] >= a6.f5[1] ? 0 : 1 : sf, b.sh = +(b.sg === b.ea), b.sh ? l.sc(b.sg, 2) : l.sc(1 - b.ea, 3), b.si.r7(b.sg)) : b.hT ? (b.sh = +(b5.iU[b.ea] === b6.sj()), 9 === b.it && l.sk()) : (b
.sg = jM[0], b.sh = +(b.sg === b.ea), l.sl(b.sg)), v.show(1 === b.sh, !1), sd())
}
}
function sQ() {
this.sx = 0, this.sV = null;
let sz = this.sy = 0;
this.t0 = 0, this.sb = function() {
0 !== a6.jS[b.ea] && a1.sW(b.ea) && 2 === b.sa && (b.sh = 2)
}, this.sT = function() {
var en, dd;
this.sV = ap.fo.sU(), this.sx = b9.t1.t2(), b.it < 7 && 2 !== b.sa ? this.sy = b6.t3() : this.sy = ap.fo.sX(), 8 === b.it && 1 === b.sa ? (en = 1 - b.sg, dd = a6.f5[en], a6.f5[en] = 0, aX.fU.mN(), a6.f5[en] = dd) : aX.fU.mN(), sz = .01 *
a6.t7[b.ea] / 50, this.t0 = 0, b.it < 7 ? ap.sO.sT(this.sV) : 7 === b.it || 10 === b.it ? aZ.fU.fW(b.ea) && (en = ap.result.sx * (1 + b.tA), 2 === b.sa ? ap.result.t0 += en * a6.f5[b.ea] / ap.result.sy : jM[0] === b.ea && (ap.result
.t0 += en)) : 8 !== b.it || 1 !== b.sh || (ap.result.t0 += 2, 0 === bA.dK.data[107].value) || 200 <= (dd = bA.dK.data[108].value) || (ap.result.t0 += .01 * (200 - dd) * 2 * (1 + (0 === dd)))
}, this.sq = function() {
0 !== sz && 0 !== ap.result.t0 && l.tB(0, "🏆 You earned prize money of 🧈 " + ap.result.t0.toFixed(2) + ".", 40, 0, aa.gN, aa.kh, -1, !1)
}
}
function sP() {
function tK(sV, tI) {
var gn = (b.it + 2) * (1 + b.tA) * sV.length / (1e5 * ap.result.sy);
let tM = "";
for (let eJ = 0; eJ < tI.length; eJ++) {
var tN = tI[eJ].tO * gn;
tM += " " + tI[eJ].name + ": " + aZ.jr.tP(1e6 * tN)
}
tM.length && (l.tB(0, "The following clans won these points:", 45, 0, aZ.color.kc(225, 240, 255), aa.kh, -1, !1), l.tB(0, tM.trim(), 45, 0, aZ.color.kc(225, 240, 255), aa.kh, -1, !1))
}
this.sT = function(sV) {
var tC = b5.tD[b6.tE()],
tF = b5.fz[tC],
tF = (o.tG("Team " + tF, 2, 1, 12), l.tB(0, "Team " + tF + " won the game!", 40, 0, aa.gN, aa.kh, -1, !1), b.sh && aZ.fU.fW(b.ea) && (ap.result.t0 += .125 * ap.result.sx * (1 + b.tA) * (b.it + 2) * a6.f5[b.ea] / ap.result.sy),
function(r5) {
var tI = [],
username = a6.tQ,
ef = r5.length;
loop: for (let eJ = 0; eJ < ef; eJ++) {
var em = r5[eJ],
tR = aZ.jr.tS(username[em]);
if (tR) {
for (let hg = tI.length - 1; 0 <= hg; hg--)
if (tI[hg].name === tR) {
tI[hg].tO += a6.f5[em];
continue loop
} tI.push({
name: tR,
tO: a6.f5[em],
tT: b5.iU[em]
})
}
}
return tI
}(sV));
tF.length && (2 === b.sa ? tK(sV, tF) : tK(sV, function(tI, tC) {
for (let eJ = tI.length - 1; 0 <= eJ; eJ--) b5.tD[tI[eJ].tT] !== tC && tI.splice(eJ, 1);
return tI
}(tF, tC)))
}
}
function cb() {
this.id = 0, this.dg = 0, this.ow = null, this.ox = null, this.oy = null, this.oz = null, this.cy = new tU, this.ct = function() {
var self, dg;
self = this, "undefined" == typeof Android || (dg = Android.getVersion()) < 12 || (self.dg = dg, self.id = 1, self.ox = Android),
function(self) {
var dg;
"undefined" != typeof mwIOSdataX && window.webkit && window.webkit.messageHandlers && window.webkit.messageHandlers.iosCommandA && (self.id = 2, self.oy = mwIOSdataX, self.oz = window.webkit.messageHandlers.iosCommandA, dg = self
.oy.version, self.dg = dg ? Number(dg) : 0)
}(this),
function(self) {
var ow;
if (0 === self.id) {
try {
if (!(ow = window.localStorage)) return;
ow.setItem("tls7", "1"), ow.removeItem("tls7")
} catch (error) {
return
}
self.ow = ow
}
}(this)
}
}
function tU() {
this.tY = function() {
bA.nq.pD(), bA.nq.pE(), aO.j4.close(0, 3255), 0 === b8.id ? b8.ow && b8.ow.clear() : 1 === b8.id ? b8.ox.saveString(199, "") : 2 === b8.id && b8.oz.postMessage("clear")
}, this.tZ = function() {
2 === b8.id ? b8.oz.postMessage("showConsentForm") : 1 === b8.id ? b8.ox.setState(7) : au.dM.showCMPScreen()
}, this.ta = function() {
this.setState(14)
}, this.tb = function() {
var g3 = bA.dK.os(101),
max = ("string" != typeof(g3 = "" === g3 ? function() {
{
if (2 === b8.id) return b8.oy.password;
if (1 === b8.id) return 12 <= b8.dg ? b8.ox.loadString(22) : ""
}
return a2.te(9)
}() : g3) && (g3 = ""), Math.floor(Math.pow(2, 48))),
td = Math.floor(parseInt(i.sI(g3)));
return 0 < td && td < max ? bA.dK.dL(101, g3) : (td = Math.floor(1 + (max - 1) * Math.random()), bA.dK.dL(101, g3)), td
}, this.g0 = function() {
return 1 === bA.dK.or(2)
}, this.tf = function() {
bA.dK.dL(102, "")
}, this.setState = function(db) {
1 === b8.id && 5 <= b8.dg && b8.ox.setState(db)
}, this.tg = function() {
var th;
1 === b8.id && 7 <= b8.dg ? b8.ox.setState(5) : ((th = new URL(window.location)).searchParams.set("v", "" + Math.floor(1e3 * Math.random())), window.location.href = th.toString())
}, this.cz = function() {
1 !== b8.id || b8.dg < 17 || b8.ox.saveString(23, document.documentElement.outerHTML)
}, this.dQ = function() {
0 === b8.id ? au.dM.ct() : 1 === b8.id ? b8.ox.prepareAd("1688441405") : 2 === b8.id && (0 === b8.dg ? b8.oz.postMessage("prepare ad 4500876070") : b8.oz.postMessage("loadAds 4500876070"))
}, this.de = function(dd) {
return 0 === b8.id ? !!au.dM.dZ() : 1 === b8.id ? 12 <= b8.dg && (b8.ox.presentAd(dd), !0) : 2 === b8.id && (0 === b8.dg ? b8.oz.postMessage("show ad " + dd) : b8.oz.postMessage("showAd"), !0)
}, this.d7 = function() {
2 === b8.id && b8.dg < 23 && at.d5(4, 1, new ti("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.tj + "' target='_blank'>" +
ai.tj + "</a>", !0, [new nT("❌ " + aW.np[92], function() {
at.d5(0)
}, aa.lJ)]))
}
}
function cq() {
function tw(title, tM, dI) {
tq(dI), at.d5(4, 5, new ti("⚠️ " + title, tM, !0))
}
function tq(dI) {
! function(dI) {
var db = y.tp();
0 !== db && (6 === db ? aO.j4.u0(dI) : 7 === db ? (aH.u1(), aO.j4.close(aO.j4.tt, 3256)) : 8 === db && b.u2(!0))
}(dI), at.j4.tz()
}
this.tk = function(tl, dI) {
if (8 === at.tm && 0 === tl) at.d5(4, 0, new ti("⚠️ " + aW.tn(64), aW.to(dI), !0));
else {
var db = y.tp();
if (6 === db) {
if (4211 === dI) return tq(dI), void at.d5(4, 5, new ti("🚀 " + aW.np[122], aW.np[123], !0, [new nT("❌ " + aW.np[92], function() {
at.tr()
}, aa.lJ), new nT("🔄 " + aW.np[124], function() {
b8.cy.tg()
}, aa.l3)]));
if (4214 !== dI) return void x.ts(tl)
} else {
if (7 !== db) return 8 === db ? void(tl !== aO.j4.tu || b.iv || 1 !== b.sm || l.tv(aW.to(dI))) : void 0;
if (tl !== aO.j4.tt) return
}
tw(aW.tn(64), aW.to(dI), dI)
}
}, this.tx = function(dI) {
8 === y.tp() ? b.iv || 1 !== b.sm || l.tv(aW.to(dI)) : tw(aW.tn(64), aW.to(dI), dI)
}
}
function bG() {
var u3, u4;
function u5() {
var gA = new cM;
gA.d4(1612), gA.pU(1, 0), gA.pU(6, 7), gA.pU(2, b8 ? b8.id : 3), gA.pU(1, dD ? 1 : 0), gA.pU(1, dF ? 1 : 0), gA.pU(1, a ? a.d9 : 0);
for (let eJ = 0; eJ < u4.length && eJ < 100; eJ++) gA.pU(16, u4.charCodeAt(eJ));
u3.send(gA.mP), u6()
}
function u6() {
u3 && (u3.onclose = null, u3.onopen = null, u3 = 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), u4 = dI.lineno + " " + dI.colno + " " + dI.message, (u3 = new WebSocket("wss://territorial.io/s52/")).onopen = u5, u3.onclose = function() {
u6()
}, 0 === dI.lineno && 0 === dI.colno || (b8 && 1 === b8.id ? b8.ox.showToast(u4) : alert(u4))
})
}
function cP() {
var u7, u8, u9 = -15e3,
uA = !1;
function fX(dI) {
uT() || (uA = !0, uU(dI, 1), aO.j4.uV(aO.j4.tu), uW(Math.floor(aL.nN * dI.clientX), Math.floor(aL.nN * dI.clientY)))
}
function uI(dI) {
u9 = b4.dc, uU(dI, 1), aO.j4.uV(aO.j4.tu), 0 < dI.touches.length && (u7 = Math.floor(aL.nN * dI.touches[0].clientX), u8 = Math.floor(aL.nN * dI.touches[0].clientY), aF.uI(dI) || uW(u7, u8))
}
function uW(fO, fP) {
at.fX(fO, fP), 0 === b.sm ? y.fX(fO, fP) : ab.uX(fO, fP) || b3.fX(fO, fP) || v.fX(fO, fP) || j.uY(fO, fP) || n.fX(fO, fP) || k.fX(fO, fP) || ah.uZ(fO, fP) || aJ.fX(fO, fP) || j.ua(fO, fP)
}
function uE(dI) {
uT() || (uA = !0, uU(dI, 1), ub(Math.floor(aL.nN * dI.clientX), Math.floor(aL.nN * dI.clientY)))
}
function uJ(dI) {
u9 = b4.dc, uU(dI, 1), 0 < dI.touches.length && (u7 = Math.floor(aL.nN * dI.touches[0].clientX), u8 = Math.floor(aL.nN * dI.touches[0].clientY), aF.uJ(dI) || ub(u7, u8))
}
function ub(fO, fP) {
at.uE(fO, fP), 0 === b.sm ? y.uE(fO, fP) : (ar.fN(fO, fP), b3.uE(fO, fP) || (k.uE(fO, fP), j.rI() ? j.uE(fO, fP) : p.fY ? p.uE(fO) && (b4.d3 = !0) : (t.uE(fO, fP), q.kH && q.uE(fO, fP) && (b4.d3 = !0))))
}
function uG(dI) {
uT() || (uU(dI, 1), uc(), 0 === b.sm ? (y.click(-1024, -1024), r.ud()) : (t.ue(-1024, -1024), k.uE(-1024, -1024), p.uf(), q.kH && (q.kH = !1)))
}
function uF(dI) {
uT() || (uU(dI, 1), ug(Math.floor(aL.nN * dI.clientX), Math.floor(aL.nN * dI.clientY), 2 === dI.button))
}
function click(dI) {
uT() || uU(dI, 1)
}
function uK(dI) {
u9 = b4.dc, uU(dI, 1), dI && dI.touches && 0 < dI.touches.length && 0 !== b.sm ? q.kH = !1 : aF.uh() || ug(u7, u8, !1)
}
function uL(dI) {
u9 = b4.dc, uU(dI, 1), ug(u7, u8, !1)
}
function uM(dI) {
aU.uM(dI)
}
function uN(dI) {
aU.uN(dI)
}
function uO(dI) {
uT() || uU(dI, 0)
}
function ug(fO, fP, ui) {
uc(), 0 === b.sm ? y.click(fO, fP) : (t.ue(fO, fP), b3.ue(), p.uf(), q.kH = !1, j.click(fO, fP, ui) && (b4.d3 = !0))
}
function uc() {
at.uc()
}
function uH(dI) {
var fO, fP, deltaY;
uT() || (uU(dI, 1), aO.j4.uV(aO.j4.tu), fO = Math.floor(aL.nN * dI.clientX), fP = Math.floor(aL.nN * dI.clientY), deltaY = dI.deltaY, 1 === dI.deltaMode && (deltaY *= 16), at.uH(fO, fP, deltaY), 0 === b.sm ? y.uH(fO, fP, deltaY) : t.uH(fO,
fP, deltaY) || (p.uj(fO, fP) ? p.uH(deltaY) && (b4.d3 = !0) : q.uH(fO, fP, deltaY)))
}
function uP(dI) {
uU(dI, 0)
}
function uU(dI, id) {
0 === id && at.rI() || (id = window.innerWidth / document.documentElement.clientWidth) < .999 || 1.001 < id || 0 !== y.tp() && dI.preventDefault()
}
function uR(dI) {
if (keybindHandler(dI.key)) return;
uT() || ("ArrowLeft" === dI.key ? aC.ul(3) : "ArrowUp" === dI.key ? aC.ul(0) : "ArrowRight" === dI.key ? aC.ul(1) : "ArrowDown" === dI.key ? aC.ul(2) : "a" === dI.key ? p.um(.9375) : "d" === dI.key ? p.um(16 / 15) : "s" === dI.key ? p.um(7 /
8) : "w" === dI.key ? p.um(8 / 7) : "1" === dI.key ? p.um(.75) : "2" === dI.key ? p.um(7 / 8) : "3" === dI.key ? p.um(.9375) : "4" === dI.key ? p.um(31 / 32) : "5" === dI.key ? p.um(32 / 31) : "6" === dI.key ? p.um(16 / 15) :
"7" === dI.key ? p.um(8 / 7) : "8" === dI.key ? p.um(4 / 3) : "+" === dI.key ? 0 !== b.sm && q.uH(Math.floor(aL.gA / 2), Math.floor(aL.gF / 2), -200) : "-" === dI.key ? 0 !== b.sm && q.uH(Math.floor(aL.gA / 2), Math.floor(aL.gF / 2),
200) : "c" === dI.key ? 0 !== b.sm && b3.un() : " " === dI.key ? b.sm && ar.fQ(!1) : "b" === dI.key && b.sm && ar.fQ(!0))
}
function uQ(dI) {
uT() || b4.dc < 400 || at.uo(dI) || (8 !== y.tp() && y.uo(dI) ? b4.d3 = !0 : "Escape" === dI.key ? y.dh() : "ArrowLeft" === dI.key || "a" === dI.key ? aC.up(3) : "ArrowUp" === dI.key || "w" === dI.key ? aC.up(0) : "ArrowRight" === dI.key ||
"d" === dI.key ? aC.up(1) : "ArrowDown" === dI.key || "s" === dI.key ? aC.up(2) : "h" === dI.key ? 1 <= b.sm && ab.uq(!b.kG) : " " === dI.key && b.sm && (k.fT && k.ur(), b.fS) && ab.us(!1))
}
function uS() {
"hidden" === document.visibilityState ? 1 === b.sm && (b.fS ? ab.ut() : !b.iv || k.fT || b.fj || k.ur()) : b4.d3 = !0
}
function uT() {
return u9 + 15e3 > b4.dc
}
function resize() {
aL.uw()
}
this.uB = 0, this.uC = "", this.ct = function() {
uD.addEventListener("mousedown", fX, {
passive: !1
}), uD.addEventListener("mousemove", uE, {
passive: !1
}), uD.addEventListener("mouseup", uF, {
passive: !1
}), uD.addEventListener("click", click, {
passive: !1
}), uD.addEventListener("mouseleave", uG, {
passive: !1
}), uD.addEventListener("wheel", uH, {
passive: !1
}), uD.addEventListener("touchstart", uI, {
passive: !1
}), uD.addEventListener("touchmove", uJ, {
passive: !1
}), uD.addEventListener("touchend", uK, {
passive: !1
}), uD.addEventListener("touchcancel", uL, {
passive: !1
}), uD.addEventListener("dragover", uM), uD.addEventListener("drop", uN), uD.addEventListener("dblclick", uO), document.addEventListener("contextmenu", uP), document.addEventListener("keyup", uQ), document.addEventListener("keydown",
uR), document.addEventListener("visibilitychange", uS), window.addEventListener("resize", resize)
}, this.uZ = 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.uu = uT, this.uv = function() {
return !uA || 0 < u9
}
}
function bK() {
this.g5 = new ux, this.pp = new uy, this.fU = new uz, this.jr = new v0, this.qw = new v1, this.v2 = new v3, this.gV = new v4, this.color = new v5, this.ct = function() {
this.g5.pC()
}
}
function uy() {
this.pq = function(ds) {
ds.fill(0)
}, this.v6 = function(ds) {
for (var ef = ds.length, eJ = 0; eJ < ef; eJ++) ds[eJ] = []
}, this.v7 = function(gi, fy) {
for (var gj = am.dm, eJ = 0; eJ < 3; eJ++) gj[eJ] = fy * gi[eJ];
return gj
}, this.v8 = function(gi, gj, v9) {
for (var gn = 0, eJ = 0; eJ < 3; eJ++) gn += Math.abs(gi[eJ] - gj[eJ]);
return v9 <= gn
}, this.vA = function(gi, vB) {
for (var eJ = 0; eJ < 3; eJ++) gi[eJ] = aj.mx(gi[eJ] + vB, 0, 255);
return gi
}, this.vC = function(ds, gI = 0, gJ = ds.length - 1) {
for (var vD = 0, eJ = gI; eJ <= gJ; eJ++) vD += ds[eJ];
return vD
}, this.vE = function(ds, vF) {
for (var eJ, vG, ef = ds.length, vH = [], hg = ef - 1; 0 <= hg; hg--) {
for (eJ = vG = 0; eJ < ef; eJ++) vF(ds[eJ]) < vF(ds[vG]) && (vG = eJ);
ef--, vH.push(ds[vG]), ds[vG] = ds[ef], ds.pop()
}
return vH
}
}
function v4() {
this.rY = function(vI, g4, vJ) {
var gP = vI.height,
vK = aZ.g5.pf(gP, gP),
gW = aZ.g5.getContext(vK);
return function(gA, gW, vJ) {
gW.fillStyle = vJ, gW.beginPath(), gW.arc(gA / 2, gA / 2, .47 * gA, 0, 2 * Math.PI), gW.fill()
}(gP, gW, vJ), gW.drawImage(vI, -g4 * gP, 0), vK
}, this.vM = function(vN) {
var gP = vN.height,
gW = aZ.g5.getContext(vN, !0),
gS = gW.getImageData(0, 0, gP, gP);
return aZ.v2.vO(gS.data, gP, gP, .9), gW.putImageData(gS, 0, 0), vN
}
}
function v5() {
this.vP = function(df) {
return [df >> 12 & 63, df >> 6 & 63, 63 & df]
}, this.o1 = function(df) {
var ds = this.vP(df);
for (let eJ = 0; eJ < 3; eJ++) ds[eJ] = ~~(4.05 * ds[eJ]);
return ds
}, this.vQ = function(df) {
df = this.o1(df);
return aZ.color.kc(df[0], df[1], df[2])
}, this.o3 = 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, vR, hp) {
return "rgb(" + gY + "," + vR + "," + hp + ")"
}, this.ke = function(gY, vR, hp, hg) {
return "rgba(" + gY + "," + vR + "," + hp + "," + hg.toFixed(3) + ")"
}, this.ne = 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.na = function(vS, eo) {
var ds = vS.slice(vS.indexOf("(") + 1, vS.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.o0 = 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.o4 = function(g3) {
var gY, vR;
return g3.length < 7 ? aa.jp : (gY = parseInt(g3.slice(1, 3), 16), vR = parseInt(g3.slice(3, 5), 16), g3 = parseInt(g3.slice(5, 7), 16), this.kc(gY, vR, g3))
}
}
function v1() {
this.vT = 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 ux() {
var vU = null;
this.rq = 0, this.pC = function() {
var df = bA.dK.data[5].value;
vU = "px " + df, "Trebuchet MS" !== df && (vU += ", Trebuchet MS"), this.rq = gO(32, 32, ["a", "b", "m"], 200, vU)
}, this.pf = 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(qw, gA, gF) {
return qw.getImageData(0, 0, gA, gF)
}, this.g6 = function(type, size) {
return size = size.toFixed(2), 0 === type ? size + vU : 1 === type ? "bold " + size + vU : 2 === type ? "lighter " + size + vU : 3 === type ? "italic " + size + vU : 4 === type ? "oblique " + size + vU : 5 === type ? "small-caps " +
size + vU : "small-caps bold " + size + vU
}, 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.vV) + " 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.vW = function(dI, fO, fP, gA, gF) {
dI = dI.style;
dI.left = this.vX(fO), dI.top = this.vX(fP), dI.width = this.vX(gA), dI.height = this.vX(gF)
}, this.nJ = function(df) {
return 1 + df * b8.cy.g0()
}, this.nu = function(kO, en = .5) {
return kO * this.nJ(en) * aL.g1 / aL.nN
}, this.nR = function(df) {
return df.toFixed(1) + "px"
}, this.vX = function(df) {
return this.vY(df).toFixed(1) + "px"
}, this.vY = function(df) {
return df / aL.nN
}, this.vZ = function(va, vb) {
for (var g3 = "<ul>", ef = va.length, eJ = 0; eJ < ef; eJ++) g3 += "<li>" + va[eJ] + ": <a href='" + vb[eJ] + "' target='_blank'>" + vb[eJ] + "</a></li>";
return g3 += "</ul>"
}, this.vc = function(vd) {
return "<a href='" + vd + "' target='_blank'>" + vd + "</a>"
}, this.ve = function(dI) {
navigator.clipboard && navigator.clipboard.writeText(dI.value)
}, this.vf = function(dI) {
dI.innerText.startsWith("✅ ") || (dI.innerText = "✅ " + dI.innerText, setTimeout(function() {
dI.innerText = dI.innerText.substring(dI.innerText.indexOf(" ") + 1)
}, 500))
}
}
function uz() {
this.fV = function(db) {
return 0 === db ? 1 === b.sm && b.fj : 1 === db ? 1 === b.sm && !b.fj : 2 === b.sm
}, this.fW = function(player) {
return 0 !== a6.jS[player] && 2 !== a6.vg[player]
}, this.mi = function(vh, vi) {
return vh !== vi
}, this.mB = function(player, df) {
return df = this.vj(player, df), a6.eb[player] += df, df
}, this.vj = function(player, df) {
var vk = a6.eb[player];
return df = Math.min(df, a6.f5[player] * b.vl - vk), df = Math.min(df, b.vm - vk), Math.max(df, 0)
}, this.mj = function(player, h9, vn, vo) {
var vk = a6.eb[player],
h9 = aj.fK(vk * (h9 + 1), 1024),
vn = aj.fK(vn * vk, 1024),
h9 = Math.min(h9, vk - vn);
return 10 === b.it && (h9 = aS.vq(player, h9)), am.dj[0] = h9, am.dj[1] = vn, vo <= h9
}, this.m8 = function(player, lq, lp) {
var player = a6.eb[player],
vp = aj.fK(64 * player, 1024);
return lq = Math.min(lq, player - vp), vp += player = this.vs(lq), lq = this.vj(lp, lq -= player), am.dj[0] = lq, am.dj[1] = vp, 1 <= lq
}, this.mA = function(lq, lp) {
var vr = this.vs(lq);
return lq = this.vj(lp, lq -= vr), am.dj[0] = lq, am.dj[1] = vr, 1 <= lq
}, this.h8 = function(player, vt) {
return aj.fK(a6.eb[player] * (vt + 1), 1024)
}, this.vs = function(vu) {
return aj.fK(Math.max(2142 - b4.iS(), 0) * vu, 2142)
}, this.mv = function(player, vn) {
a6.eb[player] -= aj.fK(vn * 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 v3() {
this.vv = function(gV, vw, vx) {
var gA = gV.width,
gF = gV.height,
iT = aZ.g5.pf(gA, gF),
gW = aZ.g5.getContext(iT, !0),
gV = (gW.drawImage(gV, 0, 0), gW.getImageData(0, 0, gA, gF));
return vw(gV.data, gA, gF, vx), gW.putImageData(gV, 0, 0), iT
}, this.vy = function(pr, gA, gF) {
for (let fO = gA - 1; 0 <= fO; fO--)
for (let fP = gF - 1; 0 <= fP; fP--) {
var eJ = 4 * (fO + fP * gA);
pr[3 + eJ] = pr[eJ], pr[eJ] = pr[1 + eJ] = pr[2 + eJ] = 255
}
}, this.vz = function(pr, gA, gF) {
for (let fO = gA - 1; 0 <= fO; fO--)
for (let fP = gF - 1; 0 <= fP; fP--) {
var eJ = 4 * (fO + fP * gA);
pr[1 + eJ] > pr[2 + eJ] + 10 && (pr[3 + eJ] = pr[eJ], pr[1 + eJ] = pr[2 + eJ])
}
}, this.w0 = function(pr, gA, gF, vx) {
var eJ, gap = Math.floor(Math.min(gA, gF) * vx);
for (let fO = 0; fO < gA; fO++)
for (let fP = 0; fP < gF; fP++)(fO < gap || fP < gap || fO >= gA - gap || fP >= gF - gap) && (pr[3 + (eJ = 4 * (fO + fP * gA))] = 255 - 255 * (pr[1 + eJ] - pr[eJ]) / (255 - pr[eJ]))
}, this.w1 = function(pr, gA, gF, vx) {
for (let fO = gA - 1; 0 <= fO; fO--)
for (let fP = gF - 1; 0 <= fP; fP--) {
var eJ = 4 * (fO + fP * gA);
pr[eJ] = vx[0], pr[1 + eJ] = vx[1], pr[2 + eJ] = vx[2]
}
}, this.w2 = function(pr, gA, gF, vx) {
var eJ, gap = Math.floor(gA * vx);
for (let fO = 0; fO < gA; fO++)
for (let fP = 0; fP < gF; fP++)(fO < gap || fP < gap || fO >= gA - gap || fP >= gF - gap) && (pr[eJ = 4 * (fO + fP * gA)] = pr[1 + eJ] = pr[2 + eJ] = 0)
}, this.w3 = function(pr, gA, gF) {
for (var fP, eJ, fO = gA - 1; 0 <= fO; fO--)
for (fP = gF - 1; 0 <= fP; fP--) 200 < pr[1 + (eJ = 4 * (fO + fP * gA))] && pr[1 + eJ] - 20 > pr[eJ] && pr[1 + eJ] - 20 > pr[2 + eJ] ? pr[eJ] + pr[2 + eJ] < 40 ? pr[3 + eJ] = 0 : (pr[3 + eJ] = pr[eJ], pr[eJ] = 255, pr[1 + eJ] = 255,
pr[2 + eJ] = 255) : pr[eJ] < 50 && pr[1 + eJ] < 50 && pr[2 + eJ] < 50 && (pr[eJ] + pr[1 + eJ] + pr[2 + eJ] < 50 ? pr[3 + eJ] = 180 : pr[3 + eJ] = 180 + Math.floor(75 * (pr[eJ] + pr[1 + eJ] + pr[2 + eJ] - 50) / 100))
}, this.w4 = function(pr, gA, gF) {
for (var fP, eJ, fO = gA - 1; 0 <= fO; fO--)
for (fP = gF - 1; 0 <= fP; fP--) pr[1 + (eJ = 4 * (fO + fP * gA))] > pr[eJ] + 20 && pr[1 + eJ] > pr[2 + eJ] + 20 && pr[eJ] + pr[2] < 40 && (pr[3 + eJ] = 255 - pr[1 + eJ], pr[eJ] = pr[1 + eJ] = pr[2 + eJ] = pr[eJ])
}, this.vO = function(pr, gA, gF, vx) {
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)) > vx * gY && (pr[4 * (fO + fP * gA) + 3] = 0)
}
}
function v0() {
this.js = function(df) {
var eJ, w5, w6, w7, w8;
if (df < 0) return "-" + this.js(Math.abs(df));
if (df < 1e3) return df.toString();
for (w5 = Math.floor(Math.log(df + .5) / Math.log(10)) + 1, w6 = Math.floor((w5 - 1) / 3), w8 = (w7 = df.toString()).substring(w5 - 3, w5), eJ = 1; eJ < w6; eJ++) w8 = w7.substring(w5 - 3 * (eJ + 1), w5 - 3 * eJ) + " " + w8;
return w7.substring(0, w5 - 3 * w6) + " " + w8
}, this.w9 = function(em, w5) {
return em.toFixed(w5) + "%"
}, this.tP = function(df, wA = 3) {
return df.toFixed(Math.max(Math.floor(wA - Math.log10(df)), 0))
}, this.wB = function(df, kO, w5) {
return (df * kO).toFixed(w5)
}, this.tS = function(username) {
var wD, wC = username.indexOf("[");
return !(wC < 0) && 1 < (wD = username.indexOf("]")) - wC && wD - wC <= 8 ? username.substring(wC + 1, wD).toUpperCase().trim() : null
}, leaderboardFilter.parseClanFromPlayerName = this.tS;
this.wE = 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.wF(g3.substring(0, iT)), this.wG(g3.substring(iT))]
}
return [g3.substring(0, hg), g3.substring(hg)]
}, this.wG = function(g3) {
var ef = g3.length;
for (let eJ = 0; eJ < ef; eJ++)
if (" " !== g3[eJ]) return g3.substring(eJ);
return g3
}, this.wF = function(g3) {
for (let eJ = g3.length - 1; 0 <= eJ; eJ--)
if (" " !== g3[eJ]) return g3.substring(0, eJ + 1);
return g3
}, this.wH = function(g3, wI) {
return g3.split("(")[0] + "(🧈 " + wI.toFixed(2) + ")"
}
}
function wJ() {
this.hW = function(player, fe) {
h.qk(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.qq(eJ);
0 !== a6.jS[b.ea] ? (b2.ed[7] = a6.f5[b.ea], b2.ed[8] = a6.eb[b.ea], p.wK(), u.wL(), 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.wM(18), a5.wN(), a5.jC(!0), an.j4
.wO(), b.mg = null, b0.wP = !0, b0.wQ(), b.iv && b8.cy.setState(1)
}
}
function bM() {
this.ej = 512, this.vm = 15e8, this.wR = 1e9, this.qd = 512, this.eY = 2, this.ea = 0, this.ht = 0, this.sp = 0, this.ip = 0, this.so = 0, this.qN = 512, this.vl = 150, this.iv = !0, this.fS = !1, this.sm = 0, this.wS = 0, this.kG = !1, this
.fj = !1, this.wT = !1, this.hT = !1, this.wU = 0, this.it = 0, this.tA = !1, this.mg = null, this.si = null, this.wV = 30, this.sa = 0, this.sh = 0, this.sg = 0, this.wW = function(wX, wY, r5, wZ, wa, wb) {
this.kG = !1, this.fS = wb, this.it = wZ, this.tA = wa, this.hT = this.it < 7 || 9 === this.it, this.sp = this.ht = r5.length, this.iv = 1 === this.sp, this.it = 10 === this.it && this.iv ? 7 : this.it, this.it = 8 === this.it && 2 !==
this.ht ? 7 : this.it, this.wU = 9 === this.it ? 2 : this.it + 2, this.wV = this.ht <= 2 ? 30 : this.ht <= 50 ? 40 : 50, aV.iq && !aV.ir.wc ? this.wT = this.fj = !1 : this.wT = this.fj = this.hT || this.ht < 100, this.mg = this.fj ?
new wJ : null, this.iv ? this.qN = z.wd() : this.qN = this.ej, this.ip = this.qN - this.ht, this.so = 0, this.ea = wY, this.sa = 0, this.sh = 0, this.sg = 0, aM.we(wX), aN.ct(), a6.ct(r5), aX.lh.mS = [], b5.ct(r5), this.sm = 1, b2
.ct(), wf(), aA.wg(), b0.ct(), a4.ct(), i9(), a1.ct(r5), aE.ct(), ak.ct(), al.ct(), c.ct(), a8.d4(), h.ct(), wh(), aY.ct(wX, r5, wZ, wa), b6.ct(), ao.ct(), an.ct(), b3.ct(), wi.putImageData(wj, 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.si = new r4, this.si.ct(r5)) : this.si = null, b4.wk(),
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.u2 = function(wm) {
aO.j4.wn(), this.sm = 0, b4.wo(), b8.cy.setState(0), wm || au.dO.show(), y.setState(0), at.d5(5, 5)
}, this.wp = function() {
return this.fS ? k.fT || !ab.wq : this.iv && (k.fT || this.fj)
}, this.wr = function() {
return 1 === this.sm && !this.fj
}
}
function cp() {
this.rn = 0, this.gap = 0, this.vV = 0, this.nP = 0, this.ct = function() {
this.resize()
}, this.resize = function() {
this.rn = .0022 * aZ.g5.nJ(.5) * aL.g1, this.vV = this.rn / 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.ws = function() {
return 2 === b8.id ? 4 : b8.cy.g0() ? 2 : 1
}
}
function bW() {
var fO, fP, wt, wu, wv, dc, player, ww, gap, zoom, mK, wx, ng = new Array(10);
function x8(player) {
for (var eJ = mK.length - 1; 0 <= eJ; eJ--)
if (mK[eJ] === player) return 1
}
function x6(x3) {
var eJ, ef;
if (-1 !== x3)
for (ef = ng.length, eJ = 0; eJ < ef; eJ++)
if (ng[eJ].rI && ng[eJ].fO + 1 === x3 % 4 && ng[eJ].fP + 1 === x3 >> 2) return eJ;
return -1
}
function x4(gD, gE) {
var vR = gap / 2;
return gD < fO - wt - 3 * vR || fO + 3 * wt + 5 * vR < gD || gE < fP - wt - 3 * vR || fP + 2 * wt + 3 * vR < gE ? -1 : 4 * (gE < fP - vR ? 0 : gE < fP + wt + vR ? 1 : 2) + (gD < fO - vR ? 0 : gD < fO + wt + vR ? 1 : gD < fO + 2 * wt + 3 *
vR ? 2 : 3)
}
this.wy = function() {
var eJ, hp, x1 = [aa.l6, aa.lI, aa.ki, aa.lX, aa.lQ];
for (ng = new Array(8), eJ = 0; eJ < 8; eJ++) ng[eJ] = {
id: eJ,
rI: !1,
x2: 0,
gV: [],
fO: 0,
fP: 0
};
for (ng[0].colors = [0, 1, 2, 3], ng[0].fO = 0, ng[0].fP = 0, ng[1].colors = [0, 1, 4], ng[1].fO = 1, ng[1].fP = 0, ng[2].colors = [0, 2], ng[2].fO = -1, ng[2].fP = 0, ng[3].colors = [0], ng[3].fO = 0, ng[3].fP = 0, ng[4].colors = [0, 2],
ng[4].fO = 1, ng[4].fP = 1, ng[5].colors = [3], ng[5].fO = 0, ng[5].fP = -1, ng[6].id = 20, ng[6].colors = [0], ng[6].fO = 1, ng[6].fP = -1, ng[7].id = 21, ng[7].colors = [0], ng[7].fO = 0, ng[7].fP = 1, eJ = 0; eJ < 8; eJ++)
for (hp = 0; hp < ng[eJ].colors.length; hp++) ng[eJ].gV.push(function(id, vJ) {
if (id < 20) return aZ.gV.rY(a0.get(3), id, vJ);
var vJ = a0.get(3).height,
vK = aZ.g5.pf(vJ, vJ),
gW = aZ.g5.getContext(vK);
20 === id ? gW.drawImage(a0.get(18), 0, 0) : 21 === id && a9.pr.ro(a9.rF.rc + a9.rF.ru, gW, 0, 0, vJ);
return vK
}(ng[eJ].id, x1[ng[eJ].colors[hp]]))
}, this.x0 = function() {
return ng
}, this.ct = function() {
mK = [], fO = fP = dc = 0, wu = wv = -1e3, this.resize()
}, this.resize = function() {
wt = Math.floor((b8.cy.g0() ? .075 : .0468) * aL.g1), zoom = wt / a0.get(3).height, gap = Math.floor(wt / 3)
}, this.uY = function(gD, gE) {
return !!this.rI() && (b4.d3 = !0, !!a9.pr.fX(gD, gE, player) || (gD = function(gD, gE) {
wv = wu = -1e3;
var x3 = x4(gD, gE),
x3 = x6(x3);
if (-1 === x3) return 0;
if (1 !== ng[x3].colors[ng[x3].x2])
if (5 === x3) {
if (! function() {
var dd = performance.now();
wx + 4e3 < dd && (mK = []);
wx = dd
}(), x8(player)) return 1;
mK.push(player), 16 < mK.length && mK.shift()
} else if (6 === x3) {
for (let eJ = mK.length - 1; 0 <= eJ; eJ--) 0 === a6.jS[mK[eJ]] && mK.splice(eJ, 1);
0 < mK.length && (aT.x9(1, mK, !0) && aX.fU.mJ(mK, player), mK = [])
} else if (2 === x3) aX.fk.lo(p.fr(), player);
else if (3 === x3) b.fj && aX.fk.fl(ww);
else if (0 === x3)
if (0 === ng[0].x2) {
if (b.wT && u.xA() < 300) return 1;
aX.fk.ft(p.fr(), player)
} else aP.fv(player, p.fr());
else if (1 === x3) av.xB(), aX.fk.fq(p.fr(), ww);
else {
if (7 === x3) return av.xC(), a9.pr.show(gD, gE), 2;
if (4 !== x3) return 0;
aT.x9(0, [player], !0) && aX.fU.mG(player)
}
return 1
}(gD, gE), this.oP(), 2 === gD && (a9.pr.rI = !0), 0 < gD))
}, this.ua = function(gD, gE) {
this.rI() || (wu = gD, wv = 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.xP(gD, gE)) ? l.xO(fg) : l.xQ(gD)
}(mouseX, mouseY, point))
}
this.click = function(gD, gE, ui) {
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 - wu) > fa) || Math.abs(gE - wv) > fa || dc + 500 < fc) && (dc = fc, ui ? (function(gD, gE, fg) {
a1.eh(fg) || -1 === (gD = al.fo.xP(gD, gE)) ? l.xO(fg) : l.xQ(gD)
}(gD, gE, fg), !1) : k.fT || this.rI() || !aZ.fU.fW(b.ea) || b.fS ? (this.oP(), !1) : b.fj ? !!a1.eh(fg) && (ww = fe, ng[3].rI = !0, this.xF(gD, gE)) : (al.fo.lt(fe) ? al.xG.xH = -1 : al.fo.xI(gD, gE) || (2 === b.sm ? a1.ep(fg) &&
(player = a1.eq(fg), a1.sW(player)) && (ng[0].rI = !0, ng[0].x2 = 1, ng[7].rI = !0) : a1.fm(fg) || (ww = fe, al.fo.fp(b.ea, fe) && (ng[0].rI = !0, ng[0].x2 = 1, ng[1].rI = !0, ng[1].x2 = am.dn[2] ? 0 : 2), a1.fn(fg)) || (
a1.er(fg) ? (player = b.ej, fs(b.ea) ? (ng[0].rI = !0, ng[0].x2 = 0) : fu(b.ea, player) && (ng[0].rI = !0, ng[0].x2 = 3)) : (player = a1.eq(fg)) === b.ea ? (ng[0].rI = !0, ng[0].x2 = 1, ng[7].rI = !0) : (ng[0].x2 = 1,
ng[5].rI = function(player) {
return a1.sW(player) && !x8(player) && aT.x9(1, [player], !1)
}(player), ng[7].rI = a1.sW(player), fw(player, b.ea) ? (ng[4].rI = a1.sW(player) && !a5.xK(player) && aT.x9(0, [player], !1), ng[6].rI = function(player) {
if (0 === mK.length) return !1;
if (performance.now() > wx + 4e3) return !(mK = []);
return !x8(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) ? (ng[0].x2 = 0, ng[0].rI = !0) : fu(b.ea, player) && (ng[0].x2 = 3, ng[0].rI = !0), ng[0].rI = this.xM()) : (ng[2].rI = !0, ng[0].rI = !0)))), this.xF(gD, gE)))
}, this.xF = function(gD, gE) {
return fO = gD - Math.floor(wt / 2), fP = gE - Math.floor(wt / 2), !!this.rI()
}, this.uE = function(gD, gE) {
return !!this.rI() && (a9.pr.rI ? !a9.pr.rm(gD, gE) && (a9.pr.rI = !1, b4.d3 = !0) : function(xT, gD, gE) {
gD = x4(gD, gE);
if (0 <= x6(gD)) return !1;
if ((1 === gD || 6 === gD) && 0 <= x6(2)) return !1;
if ((6 === gD || 9 === gD) && 0 <= x6(10)) return !1;
return xT.oP(), b4.d3 = !0
}(this, gD, gE))
}, this.oP = function() {
for (let eJ = ng.length - 1; 0 <= eJ; eJ--) ng[eJ].rI = !1, ng[eJ].x2 = 0;
a9.pr.rI = !1
}, this.rI = function() {
return this.xM() || a9.pr.rI
}, this.xM = function() {
for (var ef = ng.length, eJ = 0; eJ < ef; eJ++)
if (ng[eJ].rI) return !0;
return !1
}, this.gL = function() {
if (this.rI())
if (a9.pr.rI) a9.pr.gL();
else {
var eJ, gW = gM,
hp = ng,
ef = hp.length,
xV = (wt + gap) / zoom;
for (gW.imageSmoothingEnabled = !0, gW.setTransform(zoom, 0, 0, zoom, fO, fP), eJ = 0; eJ < ef; eJ++) hp[eJ].rI && gM.drawImage(hp[eJ].gV[hp[eJ].x2], hp[eJ].fO * xV, hp[eJ].fP * xV);
gW.imageSmoothingEnabled = !1, gW.setTransform(1, 0, 0, 1, 0, 0)
}
}
}
function bX() {
var gF, gV, g9, xW, xX;
function xY() {
var xZ, qw = gV.getContext("2d", {
alpha: !0
});
qw.clearRect(0, 0, gF, gF), qw.fillStyle = aa.kf, qw.fillRect(0, 0, gF, gF), 0 === xW && (qw.fillStyle = aa.kk, qw.fillRect(0, 0, gF, gF)), qw.fillStyle = aa.gN, qw.fillRect(0, 0, gF, 1), qw.fillRect(0, 0, 1, gF), qw.fillRect(0, gF - 1, gF,
1), qw.fillRect(gF - 1, 0, 1, gF), xZ = .9 * gF / a0.get(0).width, qw.imageSmoothingEnabled = !0, qw.setTransform(xZ, 0, 0, xZ, Math.floor((gF - xZ * a0.get(0).width) / 2), Math.floor((gF - xZ * a0.get(0).height) / 2)), qw.drawImage(
a0.get(0), 0, 0), qw.setTransform(1, 0, 0, 1, 0, 0)
}
function xb(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 - xX * b1.gap) return 2
} else if (gD <= 7 * gF + b1.gap && gE >= p.fP - gF - xX * b1.gap) return 1;
return -1
}
this.fT = !1, this.ct = function() {
xW = -1, this.fT = !1, xX = 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), xY()
}, this.ur = function() {
this.fT = !this.fT, this.fT ? (au.dM.hideCMPButton(), ab.uq(!1), b.fS && ab.wq && ab.us(!0), this.xa()) : (xW = -1, xY(), b.iv && 1 === b.sm && !b.fj && b8.cy.setState(1)), b4.d3 = !0
}, this.xa = function() {
(b.iv || b.fS) && 1 === b.sm && (t.jC(!0), b.fj || setTimeout(function() {
b0.sw()
}, 0), b8.cy.setState(0))
}, this.fX = function(gD, gE) {
var x2 = xb(gD, gE);
if (this.fT) {
if (b.kG) return 0 <= x2 && ab.uq(!1), !b.fS;
if (0 === x2) b.u2();
else if (1 === x2) this.ur();
else if (2 === x2) at.d5(1, 0);
else {
if (!(b.iv || 1 !== b.sm || b.fS || b3.rI) && (k.ur(), 1)) return !1;
ah.uZ(gD, gE) || j.ua(gD, gE)
}
return !0
}
return 0 === x2 && (this.ur(), !0)
}, this.uE = function(gD, gE) {
gD = xb(gD, gE);
gD !== xW && (xW = gD, this.fT || xY(), 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 === xW ? (gM.fillStyle = aa.kk, gM.fillRect(0, 0, 4 * gF, gF)) : 1 === xW && (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.np[79], 2 * gF, .54 * gF), gA = .4 * gF, k.xg(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 * xX * b1.gap - gA * gF), gM.fillStyle = aa.kf, gM.fillRect(0, 0, 4 * gF, gF), xW === 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.np[79 + gA], 2 * gF, .54 * gF), gM.setTransform(1, 0, 0, 1, 0, 0)) : gM.drawImage(gV, b1.gap, p.fP)
}, this.xf = function(player) {
return 0 !== a6.jS[player] && 2 !== b.sm && a1.sW(player)
}, this.xg = function(fO, fP, ef) {
gM.setTransform(1, 0, 0, 1, fO, fP), gM.lineWidth = b1.rn, 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 xi, gF, xj, xk, xl, xm, xn, xo, xp;
function gK() {
return p.y8(l.y4()) ? aJ.rI ? p.fP - p.gF - 2 * xj : p.fP - xj : ab.y8(l.y7()) ? aJ.rI ? ab.gK() - p.gF - 2 * xj : ab.gK() - xj : aJ.rI ? aL.gF - p.gF - (bB.ws() + 1) * xj : aL.gF - bB.ws() * b1.gap
}
function xv(dd, g3, id, em, xz, y0, q0, y1, y2) {
var eJ, qw, vK, nC, ds, yC = void 0 !== y2,
gA = Math.floor(o.measureText(g3, l.g9) + 1.5 * xk + (yC ? gF : 1.5 * xk));
if (b4.d3 = !0, gA + xj > aL.gA && !yC && 50 !== id && 20 < g3.length) xv(dd, (ds = aZ.jr.wE(g3))[0], id, em, xz, y0, q0, y1, y2), xv(dd, ds[1], id, em, xz, y0, q0, y1, y2);
else if (ds = gA + (50 === id ? xl : 0), (vK = document.createElement("canvas")).width = gA, vK.height = gF, (qw = vK.getContext("2d", {
alpha: !0
})).font = l.g9, aZ.g5.textBaseline(qw, 1), aZ.g5.textAlign(qw, 0), qw.clearRect(0, 0, gA, gF), qw.fillStyle = y0, qw.fillRect(0, 0, gA, gF), qw.fillStyle = xz, qw.fillText(g3, Math.floor(1.5 * xk), Math.floor(gF / 2)), yC && (qw
.imageSmoothingEnabled = !0, a9.pr.ro(y2, qw, gA - gF, 0, gF)), 0 === (nC = {
dc: dd,
g3: g3,
id: id,
player: em,
gV: vK,
xz: xz,
y0: y0,
gA: gA,
y5: ds,
q0: q0,
y1: y1,
y2: y2
}).dc || 0 < xi.length && 0 < xi[0].dc) xi.unshift(nC);
else {
for (eJ = 1; eJ < xi.length; eJ++)
if (0 < xi[eJ].dc) return void xi.splice(eJ, 0, nC);
xi.push(nC)
}
}
function xx(gY, vR, hp) {
return "rgb(" + gY + "," + vR + "," + hp + ")"
}
function yD(id, rk) {
for (var ef = xi.length, eJ = 0; eJ < ef; eJ++) xi[eJ].id === id && rk-- <= 0 && (xi.splice(eJ, 1), eJ--, ef--)
}
function yE(id, player) {
for (var yV = !1, eJ = xi.length - 1; 0 <= eJ; eJ--) xi[eJ].id !== id || player !== b.ej && xi[eJ].player !== player || (xi.splice(eJ, 1), yV = !0);
return yV
}
function ya(g3) {
xv(340, g3, 6, 0, xx(215, 245, 255), aa.kh, -1, !1)
}
this.xq = "", this.ct = function() {
var self;
xo = 0, xn = b8.cy.g0() ? 7 : 12, xm = {
r5: [0, 0, 0],
xr: [0, 0, 0],
kA: [220, 180, 180],
oV: [0, 0, 0],
iT: [0, 0, 0]
}, xi = [], this.resize(), b.fj && this.sc(0, 18), ya(aW.tn(37, [aq.ir.qA[aq.qB].name])), ya(aW.tn(38, [aq.eE - 2, aq.eF - 2])), ya(aW.tn(39, [aA.yb], {
yM: [0]
})), aA.yb !== aA.yc && ya(aW.tn(40, [aA.yc, aA.yc / aA.yb], {
yM: [0],
yd: [1]
})), 0 < aA.ye && ya(aW.tn(41, [aA.ye, aA.ye / aA.yb], {
yM: [0],
yd: [1]
})), 0 < aA.yf && ya(aW.tn(42, [aA.yf, aA.yf / aA.yb], {
yM: [0],
yd: [1]
})), 10 === b.it && xv(120, aW.tn(43), 6, 0, xx(235, 255, 120), aa.kh, -1, !1), 0 !== (self = this).xq.length && (xv(200, self.xq, 0, 0, aa.gN, aa.kh, -1, !1), self.xq = ""), this.xu()
}, this.xu = function() {
var eJ, ef;
if (aV.iq)
for (ef = aV.ir.xw.length, eJ = 0; eJ < ef; eJ++) xv(400, aV.ir.xw[eJ], 6, 0, xx(255, 255, 255), aa.kh, -1, !1)
}, this.resize = function() {
var xy, 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), xj = b1.gap, xk = Math.floor(gF / 5), 0 < xi.length)
for (xy = xi, xi = [], eJ = xy.length - 1; 0 <= eJ; eJ--) xv(xy[eJ].dc, xy[eJ].g3, xy[eJ].id, xy[eJ].player, xy[eJ].xz, xy[eJ].y0, xy[eJ].q0, xy[eJ].y1, xy[eJ].y2);
this.y3()
}, this.y3 = function() {
xp = document.createElement("canvas");
var g3 = aW.tn(0),
qw = (xl = o.measureText(g3, this.g9) + 5 * xk, xp.height = gF, xp.width = xl, xp.getContext("2d", {
alpha: !0
}));
qw.font = this.g9, aZ.g5.textBaseline(qw, 1), aZ.g5.textAlign(qw, 1), qw.clearRect(0, 0, xl, gF), qw.fillStyle = aa.l3, qw.fillRect(0, 0, xl, gF), qw.fillStyle = aa.gN, qw.fillText(g3, Math.floor(xl / 2), Math.floor(gF / 2))
}, this.y4 = function() {
var ef;
return aJ.rI ? aJ.gA : 0 === (ef = xi.length) ? 0 : 1 === ef ? xi[0].y5 : y6(xi[0].y5, xi[1].y5)
}, this.y7 = function() {
var ef = xi.length;
return aJ.rI ? ef ? y6(aJ.gA, xi[0].y5) : aJ.gA : 0 === ef ? 0 : 1 === ef ? xi[0].y5 : 2 === ef ? y6(xi[0].y5, xi[1].y5) : y6(y6(xi[0].y5, xi[1].y5), xi[2].y5)
}, this.fX = function(fO, fP) {
for (var y9, yA = gK(), eJ = xi.length - 1; 0 <= eJ; eJ--)
if ((y9 = yA - (eJ + 1) * gF) <= fP && fP < y9 + gF) return 50 === xi[eJ].id ? fO >= aL.gA - xl - xj - xi[eJ].gA && (fO >= aL.gA - xl - xj ? aX.fU.mG(xi[eJ].player) : g.kE(xi[eJ].player, 800, !1, 0), !0) : fO >= aL.gA - xi[eJ].gA -
xj && (736 === xi[eJ].id ? window.open("https://" + xi[eJ].g3, "_blank") : xi[eJ].y1 && (g.kE(xi[eJ].player, 800, !1, 0), 0 <= xi[eJ].q0) && (y9 = xi[eJ].q0, xi[eJ].q0 = xi[eJ].player, xi[eJ].player = y9), !0);
return !1
}, this.tB = function(dd, g3, id, em, xz, y0, q0, y1, y2) {
xv(dd, g3, id, em, xz, y0, q0, y1, y2)
}, this.yB = function(tM) {
xv(300, tM, 252, 0, aa.gN, aa.kh, -1, !1)
}, this.wM = function(id) {
for (var eJ = xi.length - 1; 0 <= eJ; eJ--) xi[eJ].id === id && (xi[eJ].dc = 1)
}, this.sc = function(player, id) {
0 === id ? (b2.ed[player < b.ht ? 4 : 3]++, o.hW(player, 0), yD(423, 0), xv(160, aW.tn(1, [a6.jt[player]]), 423, player, "rgb(10,220,10)", aa.kh, -1, !1)) : 1 === id ? (yE(50, b.ej), o.hW(player, 1), xv(360, aW.tn(2, [a6.jt[player]]), 0,
player, aa.lK, aa.kh, -1, !0), g.kE(player, 2700, !1, 0)) : 2 === id ? (o.hW(player, 2), xv(0, aW.tn(3), 0, player, "rgb(10,255,255)", aa.kh, -1, !0), g.kE(player, 2700, !1, 0)) : 3 === id ? (o.hW(player, 2), xv(0, aW.tn(4, [a6
.jt[player]
]), 0, player, aa.gN, aa.kh, -1, !0), g.kE(player, 2700, !1, 0)) : 4 === id ? this.yF(1, player, player) : 5 === id ? 2 !== a6.vg[player] && a1.sW(b.ea) && (function(id, jP) {
var eJ, yP = 0,
ef = xi.length;
for (eJ = 0; eJ < ef; eJ++)
if (xi[eJ].id === id && jP <= ++yP) return xi.splice(eJ, 1)
}(1, 5), a5.yH(player) ? xv(180, aW.tn(5, [a6.jt[player]]), 1, player, xx(255, 200, 180), aa.kh, -1, !0) : (yD(573, 0), xv(180, aW.tn(6, [a6.jt[player]]), 573, player, aa.lK, aa.kh, -1, !0))) : 18 === id ? xv(255, aW.tn(7), 18, 0, aa
.gN, aa.kh, -1, !1) : 21 === id ? xv(220, aW.tn(8), id, 0, aa.gN, aa.kh, -1, !1) : 22 === id ? this.yF(2, player, player) : 59 === id && xv(0, aW.tn(9), id, 0, aa.lW, aa.kh, 0, !1)
}, this.tv = function(tM) {
xv(200, aW.tn(10, [tM]), 94, 0, aa.gN, aa.lG, -1, !1)
}, this.sl = function(sf) {
if (b.ea === sf && !b.iv)
wins_counter++, window.localStorage.setItem("fx_winCount", wins_counter),
xv(0, "Your Win Count is now " + wins_counter, 3, sf, aa.gN, aa.kh, -1, !0);
o.hW(sf, 2), b.ht < 100 ? xv(0, aW.tn(4, [a6.jt[sf]]), 3, sf, aa.gN, aa.kh, -1, !0) : xv(0, aW.tn(12, [a6.jt[sf]]), 3, sf, aa.gN, aa.kh, -1, !0), g.kE(sf, 2700, !1, 0)
}, this.xO = function(fg) {
var yI = "(" + ak.gf(fg >> 2) + ", " + ak.gh(fg >> 2) + ")",
y1 = !1,
player = 0;
a1.eh(fg) ? a1.er(fg) ? yI = aW.tn(13, [yI]) : (player = a1.eq(fg), yI = aW.tn(14, [aZ.qw.vT(a6.tQ[player], aZ.g5.g6(0, 10), 150), aZ.jr.js(a6.eb[player]), aZ.jr.js(a6.f5[player]), yI]), y1 = !0) : yI = a1.fm(fg) ? aW.tn(15, [yI]) : aW
.tn(16, [yI]), b4.d3 = !0, yD(55, 0), xv(220, yI, 55, player, aa.gN, aa.kh, -1, y1)
}, this.xQ = function(yJ) {
var pb = al.j4,
player = pb.yK[yJ] >> 3;
b4.d3 = !0, yD(55, 0), xv(220, aW.tn(17, [a6.jt[player], pb.yL[yJ]], {
yM: [1]
}), 55, player, aa.gN, aa.kh, -1, !0)
}, this.lz = function(lk, yN, m0) {
lk === b.ea ? xv(175, aW.tn(18, [a6.jt[yN]]), 1001, yN, xx(200, 255, 210), aa.kh, -1, !0, m0) : this.yO(lk, m0)
}, this.yO = function(lk, m0) {
yD(1e3, 0), xv(175, aW.tn(19, [a6.jt[lk]]), 1e3, lk, aa.gN, "rgba(5,60,25,0.9)", -1, !0, m0)
}, this.sk = function() {
var tM;
b.sh ? (tM = aW.tn(20), o.tG(aW.tn(21), 2, 1, 12), xv(0, tM, 40, 0, "rgb(10,220,10)", aa.kh, -1, !1)) : (tM = aW.tn(22), o.tG(aW.tn(23), 2, 0, 16), xv(0, tM, 41, 0, aa.gN, aa.kh, -1, !1)), g.kL(2700)
}, this.r6 = function(r5) {
xv(300, r5[0].name + " [" + b.si.rC(r5[0].r9) + "] vs " + r5[1].name + " [" + b.si.rC(r5[1].r9) + "]", 65, 0, aa.jp, "rgba(100,255,255,0.75)", -1, !1)
}, this.yQ = function(tM) {
xv(200, tM, 0, 0, "rgb(40,255,200)", "rgba(10,60,40,0.9)", -1, !1)
}, this.yR = function(yS) {
xv(0, aW.tn(yS ? 24 : 129), 247, 0, aa.lV, aa.kh, -1, !1)
}, this.rE = function(r5, rB, rD, yT) {
xv(0, r5[0].name + ": " + b.si.rC(r5[0].r9) + " -> " + rB, 66, 0, aa.gN, yT[0], -1, !1), xv(0, r5[1].name + ": " + b.si.rC(r5[1].r9) + " -> " + rD, 66, 1, aa.gN, yT[1], -1, !1)
}, this.mH = function(player, id) {
0 === id ? yE(50, player) ? (xv(128, aW.tn(25, [a6.jt[player]]), 52, player, xx(180, 255, 180), aa.kh, -1, !0), a5.my(player, 2, 255)) : xv(384, aW.tn(26, [a6.jt[player]]), 51, player, xx(210, 210, 255), aa.kh, -1, !0) : yE(51, player) ?
(xv(128, aW.tn(27, [a6.jt[player]]), 52, player, aa.gN, "rgba(60,120,10,0.9)", -1, !0), a5.my(player, 2, 255)) : (xv(384, aW.tn(28, [a6.jt[player]]), 50, player, aa.gN, "rgba(90,90,90,0.9)", -1, !0), a5.my(player, 2, 96))
}, this.mL = function(r5, target) {
var color = xx(210, 255, 210);
1 < r5.length ? xv(230, aW.tn(29, [r5.length, a6.jt[target]]), 66, target, color, aa.kh, -1, !0) : xv(230, aW.tn(30, [a6.jt[r5[0]], a6.jt[target]]), 66, r5[0], color, aa.kh, target, !0)
}, this.yU = function(player, target) {
xv(230, aW.tn(31, [a6.jt[player], a6.jt[target]]), 66, player, aa.gN, "rgba(75,65,5,0.9)", target, !0)
}, this.ss = function(id, player) {
yE(id, player)
}, this.lm = function() {
var g4;
100 <= a6.eb[b.ea] || (-1 === (g4 = function(id) {
for (var eJ = xi.length - 1; 0 <= eJ; eJ--)
if (xi[eJ].id === id) return eJ;
return -1
}(143)) ? xv(80, aW.tn(32), 143, 0, aa.gN, aa.kh, -1, !1) : xi[g4].dc = 80)
}, this.mC = function(yX, yY, player) {
2 !== a6.vg[b.ea] && (xv(200, aW.tn(33, [yX, a6.jt[player]], {
yM: [0]
}), 30, player, "rgb(190,255,190)", aa.kh, -1, !0), yY) && xv(30, aW.tn(34, [yY], {
yM: [0]
}), 30, 0, aa.gN, aa.kh, -1, !1)
}, this.yZ = function(yX, player) {
2 !== a6.vg[b.ea] && (yD(31, 0), 2 === a6.vg[player] || player >= b.ht ? xv(150, aW.tn(36, [a6.jt[player], yX], {
yM: [1]
}), 31, player, aa.jp, "rgba(205,205,205,0.9)", -1, !0) : xv(150, aW.tn(35, [a6.jt[player], yX], {
yM: [1]
}), 31, player, aa.jp, "rgba(205,255,205,0.9)", -1, !0))
}, this.sr = function(yg) {
for (var iT = b4.iS(), eJ = 2; 0 <= eJ; eJ--) 0 < xm.oV[eJ] && (yg || xm.iT[eJ] < iT - 220) && this.yh(eJ)
}, this.yh = function(id) {
var g3, ef = xm.oV[id],
player = xm.r5[id];
xm.oV[id] = 0, 1 === ef ? (g3 = 0 === id ? aW.tn(47, [a6.jt[player], a6.jt[xm.xr[0]]]) : aW.tn(47 + id, [a6.jt[player]]), yD(7, 0), xv(xm.kA[id], g3, 7, xm.xr[id], aa.gN, aa.kh, -1, !0)) : 2 <= ef && (g3 = aW.tn(44 + id, [a6.jt[player],
ef - 1
]), yD(7, 0), xv(xm.kA[id], g3, 7, player, aa.gN, aa.kh, -1, !1))
}, this.yF = function(id, pz, q0) {
var iT = b4.iS(),
ef = xm.oV[id] + 1;
xm.oV[id]++, xm.r5[id] = pz, xm.xr[id] = q0, 1 === ef && (xm.iT[id] = iT), (1 === ef && (b.sp < 32 || 2 === b.sm) || 1 < ef && (xm.iT[id] < iT - 140 || 2 === b.sm)) && this.yh(id)
}, this.iE = function() {
for (var gn = (gn = xi.length - xn) <= 1 ? 1 : gn * gn, eJ = xi.length - 1; 0 <= eJ; eJ--) 0 < xi[eJ].dc && (xi[eJ].dc -= gn, xi[eJ].dc <= 0) && (b4.d3 = !0, xi.splice(eJ, 1));
! function() {
var rk, eJ;
if (128 !== xo && !(++xo < 128))
for (rk = 5, eJ = iV - 1; 0 <= eJ; eJ--) 1 === a6.vg[iW[eJ]] && 0 < rk-- && xv(240, aW.tn(50, [a6.jt[iW[eJ]]]), 1, iW[eJ], aa.jp, "rgba(255,255,255,0.75)", -1, !0)
}(), this.sr(!1)
}, this.gL = function() {
for (var qM, fP = gK(), eJ = xi.length - 1; 0 <= eJ; eJ--) qM = fP - (eJ + 1) * gF, 50 === xi[eJ].id ? (gM.drawImage(xi[eJ].gV, aL.gA - xi[eJ].gA - xl - xj, qM), gM.drawImage(xp, aL.gA - xl - xj, qM)) : gM.drawImage(xi[eJ].gV, aL.gA - xi[
eJ].gA - xj, qM)
}
}
function bZ() {
var np, yj, yk, gA, gF, font;
function yo(yp) {
return yp < 10 ? "0" + yp : String(yp)
}
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)), yk--, this.setTime()
}, this.iE = function() {
this.setTime() && (b4.d3 = !0)
}, this.setTime = function() {
var dd = new Date,
ym = dd.getUTCMinutes(),
dd = dd.getUTCSeconds();
return yj = 3600 - 60 * ym - dd, yj %= 900, np = "Next Contest: " + yo(Math.floor(yj / 60)) + ":" + yo(yj % 60), yk !== (yk = 60 * ym + dd) && (gA = o.measureText(np, font), gA += Math.floor(.4 * gF), !0)
}, this.gL = function() {
gM.lineWidth = 1 + Math.floor(gF / 15), 7 === y.tp() && aH.yq() + 2 * b1.gap > .5 * (aL.gF - gA) ? gM.translate(aL.gA - gF, Math.floor(aH.yq() + 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(np, Math
.floor(gA / 2), Math.floor(.59 * gF)), gM.setTransform(1, 0, 0, 1, 0, 0)
}
}
function ba() {
var xi, yr, g9, gF, ys;
function yu(eJ) {
let yw = !0,
gi = aa.gN;
xi[eJ].hZ === b.ej ? xi[eJ].qw.fillStyle = aa.kt : (a1.yx(xi[eJ].hZ), xi[eJ].qw.fillStyle = aZ.color.ke(am.dl[0], am.dl[1], am.dl[2], .87), 400 < aZ.pp.vC(am.dl, 0, 2) && (yw = !1, gi = aa.jp));
var gA = xi[eJ].gV.width,
r1 = (xi[eJ].qw.clearRect(0, 0, gA, gF), xi[eJ].qw.fillRect(0, 0, gA, gF), xi[eJ].qw.fillStyle = gi, ! function(qw, gA, gF) {
qw.fillRect(0, 0, gA, 1), qw.fillRect(0, gF - 1, gA, 1), qw.fillRect(0, 0, 1, gF), qw.fillRect(gA - 1, 0, 1, gF)
}(xi[eJ].qw, gA, gF), yr + 2 * gF < gA && (xi[eJ].qw.fillRect(gA - yr - gF, 0, 1, gF), xi[eJ].qw.fillText(a6.jt[xi[eJ].hZ], Math.floor((gA - yr) / 2), Math.floor(.57 * gF))), 0 !== xi[eJ].id ? 0 : gF);
xi[eJ].qw.fillText(aZ.jr.js(xi[eJ].ha), Math.floor(gA - yr / 2 - r1), Math.floor(.57 * gF)),
function(eJ, gA, r1, yw) {
xi[eJ].qw.fillStyle = yw ? aa.kl : aa.ki;
yw = Math.floor(yr * xi[eJ].ha / xi[eJ].z3);
xi[eJ].qw.fillRect(Math.floor(gA - yr - r1), gF - ys, yw, ys)
}(eJ, gA, r1, yw), 0 === xi[eJ].id ? (z0(eJ, gA, yw, gi), function(eJ, gA, yw) {
xi[eJ].qw.strokeStyle = yw ? aa.ky : aa.l8, xi[eJ].qw.fillRect(gF, 0, 1, gF);
yw = gA - gF;
xi[eJ].qw.beginPath(), xi[eJ].qw.moveTo(Math.floor(.3 * gF + yw), Math.floor(gF / 2)), xi[eJ].qw.lineTo(Math.floor(gF - .3 * gF + 0 + yw), Math.floor(gF / 2)), xi[eJ].qw.stroke(), xi[eJ].qw.beginPath(), xi[eJ].qw.moveTo(Math
.floor(gF / 2 + yw), Math.floor(.3 * gF)), xi[eJ].qw.lineTo(Math.floor(gF / 2 + yw), Math.floor(gF - .3 * gF + 0)), xi[eJ].qw.stroke()
}(eJ, gA, yw)) : z0(eJ, 2 * gF, yw, gi)
}
function z0(eJ, gA, yw, gi) {
xi[eJ].qw.strokeStyle = xi[eJ].z4 ? aa.kr : yw ? aa.lC : aa.lD, xi[eJ].qw.fillStyle = gi, xi[eJ].qw.fillRect(gA - gF, 0, 1, gF), xi[eJ].qw.lineWidth = Math.max(Math.floor(gF / 12), 3), xi[eJ].qw.lineCap = "round";
yw = .35;
gA = gF + 1, xi[eJ].qw.beginPath(), xi[eJ].qw.moveTo(Math.floor(gA - yw * gF + 0), Math.floor(yw * gF)), xi[eJ].qw.lineTo(Math.floor(gA - gF + yw * gF), Math.floor(gF - yw * gF + 0)), xi[eJ].qw.stroke(), xi[eJ].qw.beginPath(), xi[eJ].qw
.moveTo(Math.floor(gA - gF + yw * gF), Math.floor(yw * gF)), xi[eJ].qw.lineTo(Math.floor(gA - yw * gF + 0), Math.floor(gF - yw * gF + 0)), xi[eJ].qw.stroke()
}
function zF(ef) {
for (var ha, eJ = ef - 1; 0 <= eJ; eJ--) ha = a3.eR(b.ea, eJ), xi[eJ].ha !== ha && (xi[eJ].ha = ha, xi[eJ].z3 = ha > xi[eJ].z3 ? ha : xi[eJ].z3, xi[eJ].yv = !0)
}
function yt(zH) {
zH.gV = document.createElement("canvas"), aq.pj.font = g9;
var gA = yr;
zH.hZ < b.ej && 0 === zH.id && (gA += Math.floor(aq.pj.measureText(a6.jt[zH.hZ] + "000").width)), gA += gF, 0 === zH.id && (gA += gF), zH.gV.width = gA, zH.gV.height = gF, zH.qw = zH.gV.getContext("2d", {
alpha: !0
}), zH.qw.font = g9, aZ.g5.textBaseline(zH.qw, 1), aZ.g5.textAlign(zH.qw, 1)
}
function zB(eJ) {
return s.zJ() ? aL.gA - xi[eJ].gV.width - b1.gap : s.fO
}
function zC(eJ) {
return Math.floor(2 * b1.gap + (s.zJ() ? u.gF + b1.gap : 0) + s.gF + eJ * (1.3 * gF))
}
this.ct = function() {
xi = [], 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)), ys = Math.floor(.15 * gF), aq.pj.font = g9, yr = Math.floor(aq.pj.measureText("02 000 000 0000").width);
for (var eJ = xi.length - 1; 0 <= eJ; eJ--) yt(xi[eJ]), yu(eJ)
}, this.jC = function() {
for (var eJ = xi.length - 1; 0 <= eJ; eJ--) xi[eJ].yv && (xi[eJ].yv = !1, yu(eJ))
}, this.fX = function(gD, fP) {
if (2 !== b.sm && 0 !== a6.jS[b.ea] && !b.fS && a1.sW(b.ea))
for (var z6, z7, z8, z9 = b8.cy.g0() ? gF : 0, zA = b8.cy.g0() ? Math.floor(.15 * gF) : 0, eJ = xi.length - 1; 0 <= eJ; eJ--)
if (z6 = zB(eJ), z7 = zC(eJ), z8 = xi[eJ].gV.width, z7 - zA <= fP && fP <= z7 + gF + zA) {
if (z6 - z9 <= gD && gD <= z6 + gF + z9) return xi[eJ].z4 || (xi[eJ].yv = !0, xi[eJ].z4 = !0, 0 === xi[eJ].id && aX.fk.lx(xi[eJ].hZ)), !0;
if (0 === xi[eJ].id && z6 + z8 - gF - z9 <= gD && gD <= z6 + z8 + z9) return aX.fk.ft(p.fr(), xi[eJ].hZ), !0
} return !1
}, this.iE = function() {
var ef;
2 !== b.sm && 0 !== a6.jS[b.ea] && !b.fS && a1.sW(b.ea) && (function(ef) {
if (xi.length !== ef) return 1;
for (var eJ = ef - 1; 0 <= eJ; eJ--)
if (xi[eJ].id !== a3.eL(b.ea, eJ) || xi[eJ].hZ !== a3.eQ(b.ea, eJ)) return 1;
return
}(ef = a3.eK(b.ea)) && function(ef) {
var eJ, id, hZ, hp, ha, xy = [];
loop: for (eJ = 0; eJ < ef; eJ++) {
for (id = a3.eL(b.ea, eJ), hZ = a3.eQ(b.ea, eJ), hp = 0; hp < xi.length; hp++)
if (xi[hp].id === id && xi[hp].hZ === hZ) {
xy.push(xi.splice(hp, 1)[0]);
continue loop
} ha = a3.eR(b.ea, eJ), yt(ha = {
hZ: hZ,
ha: ha,
z3: ha,
id: id,
yv: !0,
z4: !1,
gV: null,
qw: null
}), xy.push(ha)
}
xi = xy
}(ef), zF(ef))
}, this.zI = function(em) {
for (var ef = Math.min(xi.length, a3.eK(b.ea)), eJ = 0; eJ < ef; eJ++)
if (xi[eJ].hZ === em) return void(xi = [])
}, this.gL = function() {
if (0 !== a6.jS[b.ea] && a1.sW(b.ea) && !b.fS)
for (var eJ = xi.length - 1; 0 <= eJ; eJ--) gM.drawImage(xi[eJ].gV, zB(eJ), zC(eJ))
}
}
function bb() {
var xi, ic, zK, zL, gF, g9, fontSize, zM, zN, zO, zP, gV, qw, k5, zQ;
function zX() {
gM.drawImage(gV, b1.gap + (b.hT ? b1.gap + b6.zY() : 0), zZ + 2 * b1.gap)
}
function zR() {
gV.width = xi[0].width + zO, gV.height = gF + zO, (qw = gV.getContext("2d", {
alpha: !0
})).clearRect(0, 0, xi[0].width + zO, gF + zO), qw.translate(Math.floor(zO / 2), Math.floor(zO / 2)), qw.lineWidth = zO, qw.fillStyle = 1 === xi[0].zW ? aa.ko : aa.kh, za(), qw.fill(), qw.strokeStyle = 1 === xi[0].zW ? aa.jp : aa.gN,
za(), qw.stroke(), aZ.g5.textAlign(qw, 1), aZ.g5.textBaseline(qw, 1), qw.fillStyle = 1 === xi[0].zW ? aa.jp : aa.gN, qw.font = g9[0], qw.fillText(aW.np[66 + xi[0].zV], Math.floor(xi[0].width / 2), Math.floor(.72 * zM[0] * gF)), qw.font = g9[
1], qw.fillText(xi[0].g3, Math.floor(xi[0].width / 2), Math.floor((zM[0] + .48 * zM[1]) * gF))
}
function za() {
qw.beginPath(), qw.moveTo(zP, 0), qw.lineTo(xi[0].width - zP, 0), qw.lineTo(xi[0].width, zP), qw.lineTo(xi[0].width, gF - zP), qw.lineTo(xi[0].width - zP, gF), qw.lineTo(zP, gF), qw.lineTo(0, gF - zP), qw.lineTo(0, zP), qw.closePath()
}
this.ct = function() {
ic = 4, zK = zL = k5 = 0, xi = [], g9 = new Array(2), fontSize = new Array(2), (zM = new Array(2))[0] = .3, zM[1] = .7, zN = new Array(4), gV = document.createElement("canvas"), zQ = 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 * zM[0] * gF), fontSize[1] = Math.floor(.85 * zM[1] * gF), g9[0] = aZ.g5.g6(1, fontSize[0]), g9[1] = aZ.g5.g6(1, fontSize[1]), eJ = zN.length -
1; 0 <= eJ; eJ--) zN[eJ] = this.measureText(aW.np[66 + eJ] + "000", g9[0]);
if (zO = Math.floor(1 + .05 * gF), zP = Math.floor(.2 * gF), 0 < xi.length) {
for (eJ = xi.length - 1; 0 <= eJ; eJ--) gA = this.measureText(xi[eJ].g3 + "00", g9[1]), xi[eJ].width = gA < zN[eJ] ? zN[eJ] : gA;
zR()
}
}, this.iE = function() {
0 !== ic && (4 === ic ? b4.dc > zQ && (ic = 0, 1 === b.sm) && o.tG(aq.ir.qA[aq.qB].name, 3, 1, 9) : (1 === ic ? (0 === zK && (zR(), zK = 1e-4), 1 <= (zK += .002 * (b4.dc - k5)) && (zL = 0, ic = 2, zK = 1), b4.d3 = !0) : 2 === ic ? ((zL +=
(b4.dc - k5) / 1e3) > xi[0].kA || 1 < zL && 1 < xi.length) && (ic = 3) : 3 === ic && ((zK -= .002 * (b4.dc - k5)) <= 0 && (zK = 0, xi.shift(), ic = 0 < xi.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(zU, eJ) {
this.tG(a6.jt[zU], eJ, 1, 0 === eJ ? 3 : 7)
}, this.tG = function(g3, zV, zW, kA) {
var gA = (gA = this.measureText(g3 + "00", g9[1])) < zN[zV] ? zN[zV] : gA;
xi.push({
g3: g3,
width: gA,
zV: zV,
zW: zW,
kA: kA
}), 0 === ic && (zK = 0, ic = 1, k5 = b4.dc)
}, this.gL = function() {
0 !== ic && 0 !== zK && (zK < 1 ? (gM.globalAlpha = zK, zX(), gM.globalAlpha = 1) : zX())
}
}
function cA() {
var gF, gV, qw, zb, zc, zd, ze, yv, zf, zg, zh, zi, yS = !1,
vK = (this.rI = !1, this.gA = 0, new Array(2));
function g7() {
var gA = aJ.gA,
pb = (yv = !1, qv(qw, gA, gF), Math.floor(gA / 2));
1 === zb ? (qw.fillStyle = aa.l0, qw.fillRect(pb, 0, pb, gF)) : -1 === zb && (qw.fillStyle = aa.lE, qw.fillRect(0, 0, pb, gF)), qx(qw, gA, gF, 2);
var pb = (pb = Math.floor(.25 * gF)) < 2 ? 2 : pb,
yb = (qw.fillStyle = aa.kp, Math.floor((gF - 4) * zc[1] / zd[1]));
0 < yb && qw.fillRect(2, gF - 2 - yb, pb, yb), 0 < (yb = Math.floor((gF - 4) * zc[0] / zd[0])) && qw.fillRect(gA - 2 - pb, gF - 2 - yb, pb, yb);
pb = (pb = Math.floor(gF / 8)) < 2 ? 2 : pb, qz(qw, Math.floor(.4 * gF), 0, gF, pb, .5, !1), qz(qw, Math.floor(gA - 1.4 * gF), 0, gF, pb, .5, !0), yb = 1.1 * gF / vK[0].width;
qw.imageSmoothingEnabled = !0, qw.setTransform(yb, 0, 0, yb, (gA - yb * vK[0].width) / 2, -.05 * gF), qw.drawImage(vK[+yS], 0, 0), qw.setTransform(1, 0, 0, 1, 0, 0)
}
function zj() {
yv = !0, zf = 140, zb = 0, ze = [], aJ.rI = !1, l.ss(247, 0), zc[0] = zc[1] = 0
}
function gK() {
return p.y8(l.y4()) ? p.fP - gF - b1.gap : ab.y8(l.y7()) ? ab.gK() - gF - b1.gap : aL.gF - gF - bB.ws() * b1.gap
}
this.cu = function() {
for (let eJ = 0; eJ < 2; eJ++) vK[eJ] = aZ.gV.rY(a0.get(3), 8 - eJ, aa.lc), vK[eJ] = aZ.gV.vM(vK[eJ])
}, this.ct = function() {
zh = zi = 0, this.rI = !1, yv = yS = !1, zf = 140, zc = [zb = 0, 0], zd = [1, 1], ze = [], zg = 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, qw = gV.getContext("2d", {
alpha: !0
}), g7()
}, this.jC = function() {
yv && g7()
}, this.fX = function(fO, fP) {
var jk;
return !!this.rI && !(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 < zi) 0 === --zi && zj();
else if (this.rI) 270 == --zf && 2 <= zh && function() {
var eJ;
for (eJ = iV - 1; 0 <= eJ; eJ--)
if (a1.sW(iW[eJ])) return;
return 1
}() && (yv = !0, zc[0] += zd[0]), 180 === zf && 3 * zc[0] < zd[0] ? zj() : zc[0] >= zd[0] ? yS ? ap.sM.sY() : ap.sM.se(-1) : zc[1] >= zd[1] ? zi = 4 : zf <= 0 && zj();
else if (function() {
var eJ;
for (eJ = 9; 0 <= eJ; eJ--) 12 < Math.abs(zg[eJ] - a6.f5[jM[eJ]]) && (zf = 140), zg[eJ] = a6.f5[jM[eJ]];
if (--zf <= 0) return 1;
return
}()) {
yS = a7.zm(), l.yR(yS), this.rI = !0, yv = !0, zf = 360;
{
let dd = 0;
for (let eJ = iV - 1; 0 <= eJ; eJ--) a1.sW(iW[eJ]) && (dd += a6.f5[iW[eJ]]);
{
var df;
yS ? zd[0] = Math.max(eX(3 * dd, 4), 1) : b.hT ? (df = aj.fK(100 * b6.t3(), b.wS), df += 2 * Math.max(df - 75, 0), df = aj.mx(df = 150 - df, 0, 100), df = aj.fK(df * dd, 100), zd[0] = Math.max(df, 1)) : zd[0] = Math.max(eX(3 *
dd, 5), 1)
}
zd[1] = Math.max(dd - zd[0], 1)
}
zh++
}
}, this.sn = function() {
this.rI && zc[0] < zd[0] && zj()
}, this.mz = function(player, zp) {
var eJ, dd;
if (this.rI) {
for (eJ = ze.length - 1; 0 <= eJ; eJ--)
if (ze[eJ] === player) return;
l.tB(200, a6.jt[player] + (zp ? " voted for" : " rejected") + " peace.", 257, player, zp ? aa.ky : aa.lB, aa.kh, -1, !0), ze.push(player), yv = !0, dd = b.iv ? zd[0] : a6.f5[player], zp ? zc[0] += dd : zc[1] += dd, player === b.ea &&
(zb = zp ? 1 : -1)
}
}, this.gL = function() {
var fP;
this.rI && (fP = gK(), gM.drawImage(gV, aL.gA - this.gA - b1.gap, fP))
}
}
function bc() {
var gA, fO, zq, gV, qw, rI, h9, wI, g9, yv, zr = 11 / 12;
function zt() {
var z2 = Math.floor(h9 * (gA - 2 * zq)),
zw = 1 + Math.floor(.0625 * p.gF),
zx = 1 + Math.floor(.3 * p.gF),
zy = Math.floor(.55 * p.gF);
qw.clearRect(0, 0, gA, p.gF), qw.fillStyle = aa.kg, qw.fillRect(0, 0, zq, p.gF), qw.fillRect(zq + z2, 0, gA - zq - z2, p.gF), qw.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)", qw.fillRect(zq, 0, z2, p.gF), qw.fillStyle = aa.gN, qw.fillRect(0, 0, gA, 1), qw.fillRect(0, p.gF - 1, gA, 1), qw
.fillRect(0, 0, 1, p.gF), qw.fillRect(zq, 0, 1, p.gF), qw.fillRect(zq + z2, 0, 1, p.gF), qw.fillRect(gA - zq, 0, 1, p.gF), qw.fillRect(gA - 1, 0, 1, p.gF), qw.fillRect(Math.floor(.25 * p.gF) + zx, Math.floor((p.gF - zw) / 2), p.gF - 2 *
zx, zw), qw.fillRect(Math.floor(gA - 1.25 * p.gF) + zx, Math.floor((p.gF - zw) / 2), p.gF - 2 * zx - zx % 2, zw), qw.fillRect(Math.floor(gA - 1.25 * p.gF) + Math.floor((p.gF - zw) / 2), zx, zw, p.gF - 2 * zx - zx % 2), wI = aZ.fU.h8(b
.ea, p.fr()), qw.fillText(aZ.jr.js(wI) + " (" + aZ.jr.w9(100 * h9, +(h9 < .1)) + ")", Math.floor(.5 * gA), zy)
}
this.setAbsolutePercentage = function(newPercentage) {
h9 = newPercentage;
};
keybindFunctions.setAbsolute = this.setAbsolutePercentage;
keybindFunctions.setRelative = (arg1) => p.um(arg1);
function a02(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), zt(), 0))
}
function a03(gD) {
return h9 !== (h9 = aj.mx((gD - fO - zq) / (gA - 2 * zq), 1 / 1024, 1)) && (zt(), !0)
}
this.fP = 0, this.fY = !1, this.ct = function() {
rI = !b.fj && !b.fS, yv = !1, h9 = .5, wI = 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)), zq = 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, (qw = gV.getContext("2d", {
alpha: !0
})).font = g9, aZ.g5.textBaseline(qw, 1), aZ.g5.textAlign(qw, 1), this.zs(), zt()
}, this.zs = 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.ws() * b1.gap
}, this.jC = function() {
yv && (yv = !1, zt())
}, this.rI = function() {
return !(!rI || k.fT && fO < Math.floor(b1.gap + 5.5 * this.gF))
}, this.y8 = function(gB) {
return !!this.rI() && fO + gA > aL.gA - gB - b1.gap
}, this.wK = function() {
rI = !b.fS
}, this.zj = function() {
rI = !1
}, this.fr = function() {
return aj.mx(Math.floor(1024 * h9 + .5) - 1, 0, 1023)
}, this.uj = function(gD, gE) {
return this.rI() && fO < gD && gD < fO + gA && gE > this.fP
}, this.fX = function(gD, gE) {
return !!this.rI() && !!p.uj(gD, gE) && (q.kH = !1, function(xT, gD, gE) {
if (function(gD, gE) {
return fO < gD && gD < fO + zq && gE > p.fP
}(gD, gE)) return a02(zr);
if (function(gD, gE) {
return fO + gA - zq < gD && gD < fO + gA && gE > p.fP
}(gD, gE)) return a02(1 / zr);
return xT.fY = !0, a03(gD)
}(this, gD, gE) && (b4.d3 = !0), !0)
}, this.um = function(kO) {
0 !== b.sm && this.rI() && a02(kO) && (b4.d3 = !0)
}, this.uH = function(deltaY) {
var kO;
return !(0 === deltaY || !this.rI()) && a02(kO = 0 < deltaY ? (kO = 400 / (400 + deltaY)) < zr ? zr : kO : 1 / zr < (kO = (400 - deltaY) / 400) ? 1 / zr : kO)
}, this.uE = function(gD) {
return !!this.fY && a03(gD)
}, this.uf = function() {
this.fY = !1
}, this.iE = function() {
this.rI() && wI !== aZ.fU.h8(b.ea, this.fr()) && (yv = !0)
}, this.gL = function() {
this.rI() && gM.drawImage(gV, fO, this.fP)
}
}
function cL() {
var gV, qw, a04, font, a05 = 0,
a06 = !1,
a07 = [10, 5, 3, 2, 1.5, 1, .75, .5, .25],
a08 = 5;
function a0E() {
if (a06) {
var eJ, ef = a07.length,
zy = Math.floor(.5 * a04.gF),
gF = ef * zy,
fO = Math.floor(Math.floor(a04.fO) + .3 * a04.gA - .5),
fP = Math.floor(Math.floor(a04.fP) - gF),
gA = Math.floor(.4 * a04.gA + 2.5);
for (gM.fillStyle = aa.kg, gM.fillRect(fO, fP, gA, gF), gM.fillStyle = aa.l5, gM.fillRect(fO, fP + a08 * zy, gA, zy), 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 * zy, gA, 2);
for (gM.fillStyle = aa.gN, aZ.g5.textAlign(gM, 1), aZ.g5.textBaseline(gM, 1), gM.font = aZ.g5.g6(0, .6 * zy), fO += .5 * gA, eJ = 0; eJ < ef; eJ++) gM.fillText(a0M(eJ), fO, fP + (eJ + .6) * zy)
}
gM.drawImage(gV, Math.floor(a04.fO), Math.floor(a04.fP))
}
function g7(xT) {
var fO, jj, jk, zy;
qw.clearRect(0, 0, Math.floor(a04.gA), Math.floor(a04.gF)), qw.fillStyle = aa.kg, qw.fillRect(0, 0, Math.floor(a04.gA), Math.floor(a04.gF)), b.kG && (qw.fillStyle = aa.l5, qw.fillRect(0, 0, Math.floor(.3 * a04.gA), Math.floor(a04.gF))), qw
.fillStyle = aa.gN, qw.fillText("Hide UI", .15 * a04.gA, .5 * a04.gF), qw.fillRect(Math.floor(.3 * a04.gA - .5), 0, 2, Math.floor(a04.gF)), fO = .5 * a04.gA, qw.fillText("Replay Speed", fO, .31 * a04.gF), qw.fillText(a0M(a08), fO, .69 *
a04.gF), qw.fillRect(Math.floor(.7 * a04.gA - .5), 0, 2, Math.floor(a04.gF)), xT.wq ? (fO = Math.floor(.02 * a04.gA), xT = Math.floor(.025 * a04.gA), jj = Math.floor(.85 * a04.gA - fO - .5 * xT), jk = Math.floor(.25 * a04.gF), zy =
Math.floor(a04.gF) - 2 * jk, qw.fillRect(jj, jk, fO, zy), qw.fillRect(jj + fO + xT, jk, fO, zy)) : function() {
var gA = Math.floor(.46 * a04.gF),
gF = Math.floor(.23 * a04.gF),
fO = Math.floor(.85 * a04.gA - .5 * gA + gA / 12),
fP = Math.floor(.5 * a04.gF - gF);
qw.beginPath(), qw.moveTo(fO, fP), qw.lineTo(fO + gA, fP + gF), qw.lineTo(fO, fP + (gF << 1)), qw.fill()
}(), qw.fillRect(0, 0, Math.floor(a04.gA), 2), qw.fillRect(0, 0, 2, Math.floor(a04.gF)), qw.fillRect(0, Math.floor(a04.gF) - 2, Math.floor(a04.gA), 2), qw.fillRect(Math.floor(a04.gA - 2), 0, 2, Math.floor(a04.gF))
}
function a0M(eJ) {
return 5 === eJ ? "Normal" : "" + a07[eJ]
}
this.wq = !1, this.ct = function() {
b.fS && (a08 = 5, this.wq = !1, a06 = !1, a04 = new ni([.3, .3 / 6], [.5, 1]), this.resize())
}, this.a09 = function() {
return a07[a08]
}, this.gK = function() {
return a04.fP
}, this.y8 = function(gB) {
return !!b.fS && a04.fO + a04.gA > aL.gA - gB - b1.gap
}, this.resize = function() {
b.fS && (a04.resize(), a04.fP -= (bB.ws() - 1) * b1.gap, font = aZ.g5.g6(0, .3 * a04.gF), (gV = document.createElement("canvas")).width = Math.floor(a04.gA), gV.height = Math.floor(a04.gF), (qw = gV.getContext("2d", {
alpha: !0
})).font = font, aZ.g5.textAlign(qw, 1), aZ.g5.textBaseline(qw, 1), g7(this))
}, this.uq = function(a0A) {
a0A !== b.kG && (b.kG = a0A, b6.resize(), b4.d3 = !0, b.fS) && (a05 = b4.dc + 2e3, g7(this))
}, this.fX = function(fO, fP) {
if (!b.fS) return !1;
if (fO < a04.fO || fP < a04.fP || fO > a04.fO + a04.gA) return a06 && function(xT, fO, fP) {
var ef = a07.length,
zy = Math.floor(.5 * a04.gF),
gF = ef * zy,
jj = Math.floor(Math.floor(a04.fO) + .3 * a04.gA - .5),
gF = Math.floor(Math.floor(a04.fP) - gF),
gA = Math.floor(.4 * a04.gA + 2.5);
return a06 = !1, b4.d3 = !0, fO < jj || jj + gA < fO || fP < gF || (a08 = a0D(0, Math.floor((fP - gF) / zy), ef - 1), g7(xT)), !0
}(this, fO, fP);
if ((fO -= a04.fO) < .3 * a04.gA) a06 = !1, this.uq(!b.kG);
else {
if (fO < .7 * a04.gA) return a06 = !a06, b4.d3 = !0;
this.us(!1)
}
return !0
}, this.us = function(a0C) {
2 === b.sm ? (this.uq(!1), at.d5(3)) : (a06 = !1, this.wq = !this.wq, this.wq ? k.fT ? k.ur() : b8.cy.setState(1) : a0C || k.xa(), b4.d3 = !0, g7(this))
}, this.ut = function() {
this.wq = !1, k.xa(), b4.d3 = !0, g7(this)
}, this.uX = function(fO, fP) {
return !!b.kG && (k.fX(fO, fP) || (b.fS ? ((b4.dc > a05 || !this.fX(fO, fP)) && q.fX(fO, fP), b4.d3 = !0, a05 = b4.dc + 2e3) : q.fX(fO, fP)), !0)
}, this.iE = function() {
b.fS && b.kG && b4.dc > a05 - 1e3 && b4.dc < a05 && (b4.d3 = !0)
}, this.st = function() {
b.fS && (this.wq = !1, b4.d3 = !0, g7(this))
}, this.gL = function() {
if (b.fS) {
if (b.kG) {
if (b4.dc > a05) return;
if (b4.dc > a05 - 1e3) return gM.globalAlpha = a0D(0, (1e3 - (b4.dc - (a05 - 1e3))) / 1e3, 1), a0E(), void(gM.globalAlpha = 1)
}
a0E()
}
}
}
function bd() {
var a0N, a0O, gA, fO, fP, a0P, a0Q;
this.ct = function() {
a0N = new Array(2), a0O = new Array(2), this.kH = !1, a0Q = a0P = 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--) a0N[eJ] = document.createElement("canvas"), a0N[eJ].width = gA, a0N[eJ].height = gA, a0O[eJ] = a0N[eJ].getContext("2d", {
alpha: !0
});
this.zs(),
function() {
for (var a0f = Math.floor(1 + gA / 20), eJ = 1; 0 <= eJ; eJ--) a0O[eJ].clearRect(0, 0, gA, gA), a0O[eJ].fillStyle = aa.kd, a0O[eJ].beginPath(), a0O[eJ].arc(gA / 2, gA / 2, gA / 2 - a0f, 0, 2 * Math.PI), a0O[eJ].fill(), a0O[eJ]
.lineWidth = a0f, a0O[eJ].fillStyle = aa.gN, a0O[eJ].strokeStyle = aa.gN, a0O[eJ].beginPath(), a0O[eJ].arc(gA / 2, gA / 2, gA / 2 - a0f, 0, 2 * Math.PI), a0O[eJ].stroke(), qz(a0O[eJ], 0, 0, gA, a0f, .3, 0 === eJ)
}()
}, this.jn = function() {
return -hA / hB
}, this.gK = function() {
return -hC / hB
}, this.kQ = function(a0U, gy) {
hA = hB * a0U - gy
}, this.kR = function(a0V, gz) {
hC = hB * a0V - gz
}, this.fX = function(a0T, y9) {
return b.kG || ! function(a0T, y9) {
return Math.pow(a0T - (fO + gA / 2), 2) + Math.pow(y9 - (fP + gA / 2), 2) < gA * gA / 4 || Math.pow(a0T - (fO + gA / 2), 2) + Math.pow(y9 - (fP + 2 * gA), 2) < gA * gA / 4
}(a0T, y9) || bA.dK.data[8].value ? (g.kT() && (this.kH = !0, a0P = a0T, a0Q = y9), !1) : y9 < fP + 1.25 * gA ? this.uH(Math.floor(aL.gA / 2), Math.floor(aL.gF / 2), -200) : this.uH(Math.floor(aL.gA / 2), Math.floor(aL.gF / 2), 200)
}, this.uE = function(a0T, y9) {
var a0W, a0X, h1, h4;
return !g.kT() || (a0W = hA, a0X = hC, hA += h1 = a0P - a0T, hC += h4 = a0Q - y9, a5.uE(h1, h4), this.a0Y(), a0P = a0T, a0Q = y9, a0W !== hA) || a0X !== hC
}, this.uH = 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.a0Z(gD, gE, kO), b4.d3 = !0
}
return !0
}, this.a0Z = 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.a0Y()
}(fg, fO, fP)
}, this.a0Y = function() {
var a0c = aL.gA / 16,
ge = 0,
a0d = aL.gF / 16,
gg = 0;
hA < -aL.gA + a0c && (ge = -aL.gA + a0c - hA), hA > hB * aq.eE - a0c && (ge = hB * aq.eE - a0c - hA), hC < -aL.gF + a0d && (gg = -aL.gF + a0d - hC), hC > hB * aq.eF - a0d && (gg = hB * aq.eF - a0d - hC), hA += ge, hC += gg, az.kS(), a5
.a0e(ge, gg)
}, this.zs = 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(a0N[0], fO, fP), gM.drawImage(a0N[1], fO, Math.floor(fP + 3 * gA / 2)))
}
}
function be() {
var ds, qE, a0g, a0h, gap, a0i, a0j, a0k, a0l, a0m, g9, a0n, fL, a0o, z2, a0p, a0q, a0r;
function a0v() {
a0h = Math.floor(.2 * (b8.cy.g0() ? .07 : .035) * aL.g1), a0h = y6(b8.cy.g0() ? 3 : 1, a0h);
var a0y = aL.gA / (ds.length + gap);
a0h = a0h < a0y ? a0y : a0h, z2 = Math.floor((1 - gap) * a0h), qE = 0, a0z()
}
function a0z() {
qE = (qE = qE < -20 ? -20 : qE) > (ds.length - 15) * a0h ? (ds.length - 15) * a0h : qE, a0j = Math.floor(qE / a0h), a0k = (a0k = a0j + Math.floor(aL.gA / a0h)) > ds.length - 1 ? ds.length - 1 : a0k, a0j = (a0j = a0k < a0j ? a0k : a0j) < 0 ?
0 : a0j;
var pb = a0k;
a0i = a0g / ds[pb];
for (var eJ = a0k - 1; a0j <= eJ; eJ--) ds[eJ] > ds[pb] && (pb = eJ, a0i = a0g / Math.pow(ds[eJ], a0o))
}
function a12(fO) {
fO = Math.floor((qE + aL.gA - fO - gap * a0h) / a0h);
return (fO = fO < -1 ? -1 : -1 === fO ? 0 : fO > ds.length - 1 ? -1 : fO) !== a0l && (a0l = fO, -1 === a0p && 0 === a0l && r.a0s && (a0p = setInterval(a13, 100)), 1)
}
function a14(eJ) {
var ys = Math.floor(a0i * Math.pow(ds[eJ], a0o));
gM.fillRect(qE + aL.gA - (eJ + 1) * a0h, aL.gF - ys, z2, ys)
}
function a13() {
var em;
0 !== (a0l = 8 === y.tp() ? -1 : a0l) ? (a0q = (new Date).getTime(), clearInterval(a0p), a0p = -1) : (em = ds[1] / 864e3, -1 !== a0q && (em += ((new Date).getTime() - a0q) * ds[1] / 864e5, a0q = -1), 0 < em && (ds[0] += Math.floor(em), b4
.d3 = !0))
}
this.a0s = !1, this.ct = function() {
a0q = a0p = -1, a0l = -(a0o = 1), this.a0t = !1, fL = 0, a0n = new Date, qE = 0, gap = .3, (a0r = []).push({
rk: "Plateau A",
ef: 0,
dI: 57
}), a0r.push({
rk: "Max A",
ef: 1,
dI: 1
}), a0r.push({
rk: "Black Friday",
ef: 15,
dI: 15
}), a0r.push({
rk: "Max B",
ef: 19,
dI: 19
}), a0r.push({
rk: "Max C",
ef: 44,
dI: 44
}), a0r.push({
rk: "First Android Version",
ef: 58,
dI: 58
}), a0r.push({
rk: "Max D",
ef: 67,
dI: 67
}), a0r.push({
rk: "The iFrame Explosion",
ef: 98,
dI: 99
}), a0r.push({
rk: "The 155-Day Uptrend",
ef: 58,
dI: 213
}), a0r.push({
rk: "Max E",
ef: 213,
dI: 213
}), a0r.push({
rk: "Plateau B",
ef: 214,
dI: 259
}), a0r.push({
rk: "Turbulent Times",
ef: 260,
dI: 344
}), a0r.push({
rk: "Max F",
ef: 262,
dI: 262
}), a0r.push({
rk: "Max G",
ef: 282,
dI: 282
}), a0r.push({
rk: "Max H",
ef: 333,
dI: 333
}), a0r.push({
rk: "The 19-Day Downtrend",
ef: 283,
dI: 301
}), a0r.push({
rk: "Plateau C",
ef: 345,
dI: 385
}), a0r.push({
rk: "The Alliance Ascent",
ef: 386,
dI: 395
}), a0r.push({
rk: "Max I",
ef: 395,
dI: 395
}), a0r.push({
rk: "First iOS Version",
ef: 411,
dI: 411
}), a0r.push({
rk: "Plateau D",
ef: 396,
dI: 453
}), a0r.push({
rk: "The TikTok Revolution",
ef: 454,
dI: 470
}), a0r.push({
rk: "Max J",
ef: 456,
dI: 456
}), a0r.push({
rk: "Max K",
ef: 472,
dI: 472
}), a0r.push({
rk: "Max L",
ef: 478,
dI: 478
}), a0r.push({
rk: "YT Drew",
ef: 471,
dI: 485
}), a0r.push({
rk: "Plateau E",
ef: 485,
dI: 600
}), a0r.push({
rk: "Uptrend A",
ef: 600,
dI: 613
}), a0r.push({
rk: "Max M",
ef: 613,
dI: 613
}), a0r.push({
rk: "Downtrend A",
ef: 614,
dI: 635
}), a0r.push({
rk: "Plateau F",
ef: 636,
dI: 737
}), a0r.push({
rk: "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() {
a0g = Math.floor(.15 * aL.gF), a0m = (a0m = Math.floor((b8.cy.g0() ? .018 : .0137) * aL.g1)) < 2 ? 2 : a0m, g9 = aZ.g5.g6(1, a0m), a0v()
}, this.a0w = function(a0x) {
var eJ;
for (this.a0s = !0, eJ = 0; eJ < a0x.length; eJ++) ds.unshift(a0x[eJ]);
a0v(), b4.d3 = !0
}, this.a10 = function() {
a0z()
}, this.uE = function(fO, fP) {
fP > aL.gF - .6 * a0g ? this.a0t ? fO !== fL && (qE += fO - fL, fL = fO, a0z(), a12(fO), this.a0t = -1 !== a0l, b4.d3 = !0) : a12(fO) && (b4.d3 = !0) : this.ud()
}, this.ud = function() {
-1 !== a0l && (this.a0t = !1, a0l = -1, b4.d3 = !0)
}, this.uH = function(fO, deltaY) {
-1 !== a0l && (qE += Math.floor(deltaY), a0z(), a12(fO), b4.d3 = !0)
}, this.fX = function(fO, fP) {
this.uE(fO, fP), -1 !== a0l && (fL = fO, this.a0t = !0)
}, this.ue = function() {
-1 !== a0l && (this.a0t = !1)
}, this.gL = function() {
gM.fillStyle = aa.km;
for (var a16, month, dd, r2, a19, a1A, jk, a1B, a1C, eJ = a0k; a0j <= eJ; eJ--) a14(eJ);
this.a0s && 0 === a0j && (gM.fillStyle = aa.lE, a14(0)), -1 !== a0l && (gM.fillStyle = aa.kl, a14(a0l)), -1 !== a0l && (gM.font = g9, aZ.g5.textBaseline(gM, 2), (dd = new Date).setTime(a0n.getTime() - 1e3 * a0l * 60 * 60 * 24), month =
"month", a16 = "day", "undefined" != typeof Intl && (month = new Intl.DateTimeFormat("en-US", {
month: "long"
}).format(dd), a16 = new Intl.DateTimeFormat("en-US", {
weekday: "long"
}).format(dd)), a16 = a16 + ", " + dd.getUTCDate() + " " + month + " " + dd.getFullYear(), month = 1 === ds[a0l] ? " second played" : " seconds played", month = aZ.jr.js(ds[a0l]) + month, dd = Math.floor(gM.measureText(a16)
.width), r2 = Math.floor(gM.measureText(month).width), a19 = Math.floor(.5 * (dd + a0m)), a1A = (a1A = qE + aL.gA - (a0l + 1) * a0h) < a19 ? a19 : a1A > aL.gA - a19 ? aL.gA - a19 : a1A, jk = aL.gF - Math.floor(a0i * Math.pow(ds[
a0l], a0o)), a1B = Math.floor(1.1 * a0m), a1C = jk > aL.gF - a1B ? aL.gF - a1B : jk, gM.fillStyle = aa.kh, gM.fillRect(aL.gA - r2 - a0m, a1C - a1B, r2 + a0m, a1B), gM.fillRect(a1A - a19, aL.gF - a1B, dd + a0m, a1B), gM
.fillStyle = aa.gN, aZ.g5.textAlign(gM, 2), gM.fillText(month, Math.floor(aL.gA - .5 * a0m), a1C),
function(jk, a1B) {
for (var r1, x2 = -1, g4 = ds.length - a0l - 1, eJ = a0r.length - 1; 0 <= eJ; eJ--) g4 >= a0r[eJ].ef && g4 <= a0r[eJ].dI && (-1 === x2 || a0r[eJ].dI - a0r[eJ].ef < a0r[x2].dI - a0r[x2].ef) && (x2 = eJ); - 1 !== x2 && (r1 =
Math.floor(gM.measureText(a0r[x2].rk).width), gM.fillStyle = aa.kh, gM.fillRect(aL.gA - r1 - a0m, jk, r1 + a0m, a1B), gM.fillStyle = aa.gN, gM.fillText(a0r[x2].rk, Math.floor(aL.gA - .5 * a0m), jk + a1B))
}(a1C - 2 * a1B, a1B), aZ.g5.textAlign(gM, 1), gM.fillText(a16, a1A, 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, a1E, a1F, gV, qw, yv, vk, a1G, a1H, a1I, a1J;
this.fO = 0, this.gF = 0, this.ct = function() {
a1F = b.qd, a1H = "rgba(0,100,0,0.8)", a1I = "rgba(150,0,0,0.8)", yv = !(a1G = !0), vk = 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)), a1J = Math.floor(.5 * this.gF), aq.pj.font = g9, fP = b1.gap, a1E = Math
.floor(1 + .13 * this.gF), (gV = document.createElement("canvas")).width = gA, gV.height = this.gF, (qw = gV.getContext("2d", {
alpha: !0
})).font = g9, aZ.g5.textBaseline(qw, 1), aZ.g5.textAlign(qw, 1), this.a1K()
}, this.zJ = function() {
return b8.cy.g0() && aL.gA < 1.2 * aL.gF
}, this.zs = function() {
this.zJ() ? this.fO = aL.gA - gA - b1.gap : this.fO = Math.floor(t.a1L() + (aL.gA - t.a1L() - u.gA - gA) / 2 - .5 * b1.gap)
}, this.jC = function() {
yv && (yv = !1, this.a1K())
}, this.a1K = function() {
qw.clearRect(0, 0, gA, this.gF), qw.fillStyle = a1G ? a1H : a1I, qw.fillRect(0, 0, gA, this.gF), qw.fillStyle = aa.kl, this.a1M(), this.a1N(), qw.fillStyle = a6.eb[b.ea] >= a4.iH(b.ea) ? aa.lB : aa.gN, qw.fillText(aZ.jr.js(vk), Math
.floor(gA / 2), a1J), qw.fillStyle = aa.gN, qw.fillRect(0, 0, gA, 1), qw.fillRect(0, 0, 1, this.gF), qw.fillRect(0, this.gF - 1, gA, 1), qw.fillRect(gA - 1, 0, 1, this.gF)
}, this.a1M = function() {
var qM = a1P(Math.floor((a4.a1O() - 1) * this.gF / 9), this.gF - a1E);
qw.fillRect(0, qM, a1E, this.gF - qM), qw.fillRect(gA - a1E, qM, a1E, this.gF - qM)
}, this.a1N = function() {
qw.fillRect(a1E, this.gF - a1E, Math.floor((gA - 2 * a1E) * a6.eb[b.ea] / a1F), a1E)
}, this.iE = function() {
0 !== a6.jS[b.ea] && 2 !== a6.vg[b.ea] && vk !== a6.eb[b.ea] && (a1F = y6(a6.eb[b.ea], a1F), a1G = a6.eb[b.ea] > vk && 10 <= a6.eb[b.ea], vk = a6.eb[b.ea], yv = !0)
}, this.gL = function() {
0 === a6.jS[b.ea] || b.fj || 2 === a6.vg[b.ea] || gM.drawImage(gV, this.fO, fP)
}
}
function bg() {
var a1R, a1S, a1T, a1U, a1V, a1W, a1X, a1Y, a1Z, a1a, a1b, a1c, a1d, a1e, a1f, a1g, a1h, a1i, a1j, a1k, a1l, a1m, position, a1n, a1o, a1p, a1q, a1r = 1,
a1s = 1;
var leaderboardHasChanged = true;
this.playerPos = b.ea;
leaderboardFilter.setUpdateFlag = () => leaderboardHasChanged = true;
function updateFilteredLb() {
if (!leaderboardHasChanged) return;
leaderboardFilter.filteredLeaderboard = leaderboardFilter.playersToInclude
.map(id => a1Q[id]).sort((a, b) => a - b);
leaderboardHasChanged = false;
this.playerPos = leaderboardFilter.filteredLeaderboard.indexOf(a1Q[b.ea]);
}
function a1u() {
a1X.clearRect(0, 0, a1R, zZ),
a1X.fillStyle = aa.lP,
a1X.fillRect(0, 0, a1R, a1c),
a1X.fillStyle = aa.kg,
a1X.fillRect(0, a1c, a1R, zZ - a1c);
if (leaderboardFilter.enabled) updateFilteredLb();
var playerPos = (leaderboardFilter.enabled ?
this.playerPos :
a1Q[b.ea]
);
if (leaderboardFilter.hoveringOverTabs) a1m = -1;
if (leaderboardFilter.enabled && a1m >= leaderboardFilter.filteredLeaderboard.length) a1m = -1;
playerPos >= position && a1v(playerPos - position, aa.l5),
0 !== a1Q[b.ea] && 0 === position && a1v(0, aa.lU),
-1 !== a1m && a1v(a1m, aa.kk),
a1X.fillStyle = aa.kg,
//console.log("drawing", a1m),
a1X.clearRect(0, zZ - leaderboardFilter.tabBarOffset, a1R, leaderboardFilter.tabBarOffset);
a1X.fillRect(0, zZ - leaderboardFilter.tabBarOffset, a1R, leaderboardFilter.tabBarOffset);
a1X.fillStyle = aa.gN,
a1X.fillRect(0, a1c, a1R, 1),
a1X.fillRect(0, zZ - leaderboardFilter.tabBarOffset, a1R, 1),
leaderboardFilter.drawTabs(a1X, a1R, zZ - leaderboardFilter.tabBarOffset, aa.l5),
a1X.fillRect(0, 0, a1R, b1.rn),
a1X.fillRect(0, 0, b1.rn, zZ),
a1X.fillRect(a1R - b1.rn, 0, b1.rn, zZ),
a1X.fillRect(0, zZ - b1.rn, a1R, b1.rn), a1X.font = a1S, aZ.g5.textBaseline(a1X, 1), aZ.g5.textAlign(a1X, 1), a1X.fillText(aW.np[65], Math.floor((a1R + a1c - 22) / 2), Math.floor(a1a + a1T / 2));
playerList.drawButton(a1X, 12, 12, a1c - 22);
var hg, en = playerPos < position + a1V - 1 ? 1 : 2;
if (leaderboardFilter.enabled) {
let result = leaderboardFilter.filteredLeaderboard;
if (position !== 0 && position >= result.length - a1V)
position = (result.length > a1V ? result.length : a1V) - a1V;
//if (position >= result.length) position = result.length - 1;
for (a1X.font = a1U, aZ.g5.textAlign(a1X, 0), hg = a1V - en; 0 <= hg; hg--) {
const pos = result[hg + position];
if (pos !== undefined)
a1w(jM[pos]), a1x(hg, pos, jM[pos]);
}
for (aZ.g5.textAlign(a1X, 2), hg = a1V - en; 0 <= hg; hg--) {
const pos = result[hg + position];
if (pos !== undefined)
a1w(jM[pos]), a1y(hg, jM[pos]);
}
} else {
for (a1X.font = a1U, aZ.g5.textAlign(a1X, 0), hg = a1V - en; 0 <= hg; hg--)
a1w(jM[hg + position]), a1x(hg, hg + position, jM[hg + position]);
for (aZ.g5.textAlign(a1X, 2), hg = a1V - en; 0 <= hg; hg--)
a1w(jM[hg + position]), a1y(hg, jM[hg + position]);
}
2 == en && (a1w(b.ea), aZ.g5.textAlign(a1X, 0), a1x(a1V - 1, a1Q[b.ea], b.ea), aZ.g5.textAlign(a1X, 2), a1y(a1V - 1, b.ea)), 0 === position && (en = .7 * a1d / a0.get(4).height, a1X.setTransform(en, 0, 0, en, Math.floor(a1e + .58 * a1d + .5 *
en * a0.get(4).width), Math.floor(a1a + a1T + .4 * a1d)), a1X.imageSmoothingEnabled = !0, a1X.drawImage(a0.get(4), -Math.floor(a0.get(4).width / 2), -Math.floor(a0.get(4).height / 2)), a1X.setTransform(1, 0, 0, 1, 0, 0))
}
function a1w(player) {
b.hT && (a1X.fillStyle = b5.a20[b5.tD[b5.iU[player]]])
}
function a1v(eJ, a21) {
a1X.fillStyle = a21, eJ = a1V - 1 < eJ ? a1V - 1 : eJ;
a21 = Math.floor((eJ === a1V - 1 ? 2 : 0 === eJ ? 1.15 : 1) * a1d), a21 = eJ === a1V - 2 ? Math.floor(a1c + 9.15 * a1d) - Math.floor(a1c + 8.15 * a1d) : a21;
a1X.fillRect(0, Math.floor(a1c + (eJ + (0 === eJ ? 0 : .15)) * a1d), a1R, a21)
}
function a1x(a23, t8, eJ) {
a1X.fillText(a1i[t8], a1e, Math.floor(a1a + a1T + (a23 + .5) * a1d)), 1 === a6.vg[eJ] && (a1X.font = "italic " + a1U);
t8 = Math.floor(a1a + a1T + (a23 + .5) * a1d);
a1X.fillText(a6.jt[eJ], a1f, t8), 0 !== a6.vg[eJ] && (a1X.font = a1U), eJ < b.ht && 2 !== a6.vg[eJ] || a1X.fillRect(a1f, t8 + .35 * a1r, a1h[eJ], Math.max(1, .1 * a1r))
}
function a1y(a23, eJ) {
a1X.fillText(a6.f5[eJ], a1g, Math.floor(a1a + a1T + (a23 + .5) * a1d))
}
function a2C(fP) {
return (fP -= b1.gap + a1c) < 0 ? Math.floor(fP / a1d) - 1 : fP < (a1V - 1) * a1d ? Math.floor(fP / a1d) : fP < zZ - a1c ? a1V - 1 : (fP -= zZ - a1c, a1V + Math.floor(fP / a1d))
}
function rm(fO, fP) {
return fO >= b1.gap && fO < b1.gap + a1R && fP >= b1.gap && fP < b1.gap + zZ
}
this.ct = function() {
var eJ;
for (a1o = !1, a1q = a1p = a1n = 0, a1m = -1, a1V = b8.cy.g0() ? 6 : 10, a1s = (position = 0) === (a1s = bA.dK.data[11].value) ? 10 : 1 === a1s ? 5 : 1, a1l = !1, a1j = new Uint16Array(a1V + 1), a1k = new Uint32Array(a1V + 1), a1Z = b.ej,
jM = new Uint16Array(a1Z), a1Q = new Uint16Array(a1Z), eJ = a1Z - 1; 0 <= eJ; eJ--) jM[eJ] = eJ, a1Q[eJ] = eJ;
this.resize(!0), a1h = new Uint16Array(b.ej);
var a1t = Math.floor(a1R - a1f - a1e - a1Y);
for (a1i = new Array(b.ej), a1X.font = a1U, eJ = b.ej - 1; 0 <= eJ; eJ--) a1i[eJ] = eJ + 1 + ".", a6.jt[eJ] = aZ.qw.vT(a6.tQ[eJ], a1U, a1t), a1h[eJ] = Math.floor(a1X.measureText(a6.jt[eJ]).width);
a1u()
}, this.resize = function(ct) {
if (zZ = b8.cy.g0() ? (a1R = Math.floor(.335 * aL.g1), Math.floor(a1V * a1R / 8)) : (a1R = Math.floor(.27 * aL.g1), Math.floor(a1V * a1R / 10)), a1R = Math.floor(.97 * a1R), (a1W = document.createElement("canvas")).width = a1R, a1W
.height = zZ, a1X = a1W.getContext("2d", {
alpha: !0
}), a1a = .025 * a1R, a1T = .16 * a1R, a1b = 0 * a1R, a1c = Math.floor(.45 * a1a + a1T), a1d = (zZ - a1T - 2 * a1a - a1b) / a1V,
a1W.height = zZ += a1d, leaderboardFilter.tabBarOffset = Math.floor(a1d * 1.3), leaderboardFilter.verticalClickThreshold = zZ - leaderboardFilter.tabBarOffset, leaderboardFilter.windowWidth = a1R,
a1S = aZ.g5.g6(1, Math.floor(.55 * a1T)), a1r = Math.floor((b8.cy.g0() ? .67 : .72) * a1d), a1U = aZ.g5.g6(0, a1r), a1X.font = a1U, a1e = Math.floor(.04 * a1R), a1f = Math.floor((b8.cy.g0() ? .195 : .18) * a1R), a1Y = Math.floor(a1X
.measureText("00920600").width), a1X.font = a1S, a1g = a1R - a1e, !ct) {
a1X.font = a1U;
for (var eJ = b.ej - 1; 0 <= eJ; eJ--) a1h[eJ] = Math.floor(a1X.measureText(a6.jt[eJ]).width);
a1u()
}
}, this.a1L = function() {
return a1R
}, this.jC = function(yg) {
a1l && (yg || b4.iS() % a1s == 0) && (a1l = !1, a1u())
}, this.iE = function() {
! function() {
for (var hg = a1Z - 1; 0 <= hg; hg--) 0 === a6.jS[jM[hg]] && ! function(hg) {
var a2A = jM[hg];
a1Z--;
for (var eJ = hg; eJ < a1Z; eJ++) jM[eJ] = jM[eJ + 1], a1Q[jM[eJ]] = eJ;
jM[a1Z] = a2A, a1Q[jM[a1Z]] = a1Z
}(hg)
}();
for (var a28, kT = a1Z - 1, hg = 0; hg < kT; hg++) a6.f5[jM[hg]] < a6.f5[jM[hg + 1]] && (a28 = jM[hg], jM[hg] = jM[hg + 1], jM[hg + 1] = a28, a1Q[jM[hg]] = hg, a1Q[jM[hg + 1]] = hg + 1);
! function() {
for (var dd = a1l, en = (a1l = !0, a1Q[b.ea] >= a1V - 1 ? a1V - 2 : a1V - 1), eJ = en; 0 <= eJ; eJ--)
if (a1j[eJ] !== jM[eJ] || a1k[eJ] !== a6.f5[jM[eJ]]) return;
(en != a1V - 2 || a1j[a1V] === a1Q[b.ea] && a1k[a1V] === a6.f5[b.ea]) && (a1l = dd)
}();
for (var eJ = a1V - 1; 0 <= eJ; eJ--) a1j[eJ] = jM[eJ], a1k[eJ] = a6.f5[jM[eJ]];
a1j[a1V] = a1Q[b.ea], a1k[a1V] = a6.f5[b.ea];
leaderboardHasChanged = true;
}, leaderboardFilter.scrollToTop = function() {
position = 0;
}, this.fX = function(fO, fP) {
return !!rm(fO, fP) && ((utils.isPointInRectangle(fO, fP, b1.gap + 12, b1.gap + 12, a1c - 22, a1c - 22) && playerList.display(a6.tQ), true) &&
!(fP - b1.gap > leaderboardFilter.verticalClickThreshold && leaderboardFilter.handleMouseDown(fO - b1.gap)) && (a1n = b4.dc, a1o = !0, a1p = a1q = a2C(fP), ah.uu() && (fO = a0D(-1, a1q, a1V), a1m !== (fO = fO === a1V ? -1 :
fO)) && (a1m = fO, a1u(), b4.d3 = !0)), !0)
}, leaderboardFilter.repaintLeaderboard = function() {
a1u(), b4.d3 = !0;
},
this.uE = function(fO, fP) {
if (utils.isPointInRectangle(fO, fP, b1.gap + 12, b1.gap + 12, a1c - 22, a1c - 22)) {
playerList.hoveringOverButton === false && (playerList.hoveringOverButton = true, a1u(), b4.d3 = !0);
} else {
playerList.hoveringOverButton === true && (playerList.hoveringOverButton = false, a1u(), 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, a2B = a2C(fP);
return a1o ? (dd = position, (position = a0D(0, position += a1p - a2B, b.ej - a1V)) !== dd && (a2B = (a2B = a0D(-1, a1p = a2B, a1V)) !== a1V && rm(fO, fP) ? a2B : -1, a1m = a2B, a1u(), b4.d3 = !0), !0) : (a2B = (a2B = a0D(-1, a2B,
a1V)) === a1V || !rm(fO, fP) || ah.uu() ? -1 : a2B, a1m !== a2B && (a1m = a2B, a1u(), b4.d3 = !0))
}, this.ue = function(fO, fP) {
if (!a1o) return !1;
a1o = !1;
var a2B = a2C(fP);
var isEmptySpace = false;
return ah.uu() && -1 !== a1m && (a1m = -1, a1u(), b4.d3 = !0), b4.dc - a1n < 350 && a1q === a2B && -1 !== (a2B = (a2B = a0D(-1, a2B, a1V)) !== a1V && rm(fO, fP) ? a2B : -1) && (fO = (leaderboardFilter.enabled ? (updateFilteredLb(), jM[
leaderboardFilter.filteredLeaderboard[a2B + position] ?? (isEmptySpace = true, a1Q[b.ea])]) : jM[a2B + position]), a2B === a1V - 1 && (leaderboardFilter.enabled ? this.playerPos : a1Q[b.ea]) >=
position + a1V - 1 && (fO = b.ea), !isEmptySpace && b.hT && donationsTracker.displayHistory(fO, a6.tQ, b.iv), 0 !== a6.jS[fO] && !isEmptySpace) && g.kE(fO, 800, !1, 0), !0
}, this.uH = function(fO, fP, deltaY) {
var a2D;
return !(a1o || b.kG || (a2D = Math.max(Math.floor(Math.abs(deltaY) / 40), 1), !rm(fO, fP)) || (fO = (fO = a0D(-1, a2C(fP), a1V)) === a1V || ah.uu() ? -1 : fO, 0 < deltaY ? position < b.ej - a1V && (position += Math.min(b.ej - a1V -
position, a2D), a1m = fO, a1u(), b4.d3 = !0) : 0 < position && (position -= Math.min(position, a2D), a1m = fO, a1u(), b4.d3 = !0), 0))
}, this.gL = function() {
gM.drawImage(a1W, b1.gap, b1.gap)
}
}
function bh() {
var gV, qw, fO, fP, ys, a2E, gap, a2F, fontSize, a2G, a2H, ed, a2I, a2J, a2K, a2L, a2M, a2N;
function a2Q() {
qw.clearRect(0, 0, u.gA, u.gF), qw.fillStyle = aa.kh, qw.fillRect(0, 0, u.gA, u.gF), qw.fillStyle = aa.l0, fg = 0 < a2K ? a2K : Math.sqrt(ed[4] / 1e4), qw.fillRect(0, u.gF - ys - 1, Math.floor(fg * u.gA), ys), qw.fillStyle = aa.gN, qw
.fillRect(0, 0, u.gA, 1), qw.fillRect(0, 0, 1, u.gF), qw.fillRect(u.gA - 1, 0, 1, u.gF), qw.fillRect(0, u.gF - 1, u.gA, 1), qw.fillRect(0, u.gF - ys - 1, u.gA, 1);
for (var fg, a2S, dd = 0, eJ = 0; eJ < a2H.length; eJ++) a2I[eJ] ? (aZ.g5.textAlign(qw, 0), a2S = Math.floor((a2E - ys + 2 * a2F) * (eJ - dd + 1) / (a2H.length + 1) - .7 * a2F), qw.fillText(a2H[eJ], gap, a2S), aZ.g5.textAlign(qw, 2), 5 ===
eJ && 0 !== a6.jS[b.ea] && a6.eb[b.ea] >= a4.iH(b.ea) ? (qw.fillStyle = aa.lS, qw.fillText(a2P(eJ), u.gA - gap, a2S), qw.fillStyle = aa.gN) : qw.fillText(a2P(eJ), u.gA - gap, a2S)) : dd++
}
function a2P(eJ) {
return eJ < 3 ? ed[eJ].toString() : 3 === eJ || 4 === eJ || 5 === eJ ? aZ.jr.w9(ed[eJ] / 100, 2) : eJ < 7 ? aZ.jr.js(ed[eJ]) : eJ === 7 ? u.a1O(ed[7]) : eJ === 8 ? utils.getMaxTroops(a6.f5, b.ea) : utils.getDensity(b.ea)
}
function a2O() {
a6.f5[b.ea] !== ed[6] && (ed[6] = a6.f5[b.ea], a2G++)
}
this.ct = function() {
a2K = a2L = 0, (a2H = new Array(8))[0] = aW.np[70], a2H[1] = b.iv ? aW.np[71] : aW.np[72], a2H[2] = aW.np[73], a2H[3] = aW.np[74], a2H[4] = aW.np[75], a2H[5] = aW.np[76], a2H[6] = aW.np[77], a2H[7] = aW.np[78],
a2H.push("Max Troops", "Density"), // add a2H
a2N = b.wS - eX(b.wS, 100), (ed = new Array(a2H.length))[0] = b.iv ? 0 : b.ht, ed[1] = b.iv ? iV : b.ip, ed[2] = b.so, ed[3] = 0, ed[4] = eX(1e4 * a6.f5[0], b.wS), ed[5] = 700, ed[6] = 0, a2O(), ed[7] = 0, a2J = a2P(6), a2I =
new Array(a2H.length);
for (var eJ = a2H.length - 1; 0 <= eJ; eJ--) a2I[eJ] = !0;
a2M = 0, a2M = b.iv ? (a2I[0] = !1, a2I[2] = !1, a2I[3] = !1, 3) : (a2I[3] = !1, 1), a2G = 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), ys = Math.floor(.04 * this.gA), gap = Math.floor(.035 * this.gA), a2F = .04 * this.gA, a2E = this.gF, this.gF -= Math.floor(a2M * (
this.gF - 2 * ys) / a2H.length), fontSize = Math.floor(.7 * (a2E - ys) / a2H.length), fontSize = aZ.g5.g6(1, fontSize), (gV = document.createElement("canvas")).width = this.gA, gV.height = this.gF, (qw = gV.getContext("2d", {
alpha: !0
})).font = fontSize, aZ.g5.textBaseline(qw, 1), qw.lineWidth = 1, this.wL(), this.zs(), s.zs(), a2Q()
}, this.zs = function() {
fO = aL.gA - this.gA - b1.gap
}, this.a2R = function() {
fP = b1.gap
}, this.wL = function() {
fP = b1.gap + (s.zJ() && 0 !== a6.jS[b.ea] && !b.fj ? s.gF + b1.gap : 0)
}, this.jC = function(yg) {
(yg || 100 <= a2G) && (a2G = 0, a2Q())
}, this.xA = function() {
return ed[7]
}, this.a1O = function(value) {
var pb = Math.floor(value / 1e3 / 60),
value = Math.floor((value - 6e4 * pb) / 1e3);
return value < 10 ? pb + ":0" + value : pb + ":" + value
}, this.iE = function() {
var a2c, per;
a2I[0] && b.sp - b.so !== ed[0] && (ed[0] = b.sp - b.so, a2G++), iV - ed[0] !== ed[1] && (ed[1] = iV - ed[0], a2G++), this.j3(), (a2c = a4.a2d(b.ea)) !== ed[5] && (ed[5] = a2c, a2G++), a2O(), ed[7] += b4.a2e, a2c = a2P(7), a2J !== a2c &&
(a2J = a2c, a2G += 100), a2c = b.hT ? b6.t3() : a6.f5[jM[0]], per = eX(1e4 * a2c, b.wS), ed[3] = a2c, ed[4] !== per && (a2G++, ed[4] = per), 8 === b.it && function() {
if (0 === a6.jS[0]) ap.sM.se(1);
else {
if (0 !== a6.jS[1]) return;
ap.sM.se(0)
}
return 1
}() || ed[3] < a2N || ed[3] !== b.wS && ! function() {
for (var eJ = iV - 1; 0 <= eJ; eJ--)
if (0 < a6.eg[iW[eJ]].length) return;
return 1
}() || ap.sM.se(-1)
}, this.j3 = function() {
a2I[2] && b.so !== ed[2] && (ed[2] = b.so, a2G++)
}, this.a2f = function(eJ) {
var vR, a2g, dd;
return 2 !== b.sm && (eJ === b.wV ? (a2K = 0, a2Q(), !1) : (-1 !== eJ || 0 !== a2L) && (a2g = a2K, a2K = b.fS ? eJ / b.wV : (dd = performance.now(), 0 <= eJ && (vR = dd - 392 * eJ, a2L = 0 === eJ || vR < a2L ? vR : a2L), 1 < (a2K = (dd -
a2L) / (392 * b.wV)) ? 1 : a2K), a2Q(), a2K !== a2g))
}, this.gL = function() {
gM.drawImage(gV, fO, fP)
}
}
function bi() {
var rI, a2h, gA, gF, zy, a2i, a2j, zK, gV, k5, a2k;
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.a2l = -1, this.ct = function() {
a2k = rI = !1, zy = .61, a2i = .07, a2j = .09, k5 = zK = gF = 0, this.a2l = -1
}, this.resize = function() {
var qw, jj, iT, a2p, a2q, xZ;
rI && (gA = a1P(gA = b8.cy.g0() ? Math.floor(.69 * aL.g1) : Math.floor(.5 * aL.g1), y6(aL.gA - 2 * b1.gap, 10)), gA = a1P(gA, Math.floor(3.57 * y6(aL.gF - 2 * b1.gap, 3))), gF = Math.floor(.28 * gA), (gV = document.createElement(
"canvas")).width = gA, gV.height = gF, qw = gV.getContext("2d", {
alpha: !0
}), jj = Math.floor(1 + gF / 40), qw.clearRect(0, 0, gA, gF), qw.fillStyle = aa.kh, qw.fillRect(jj, jj, gA - 2 * jj, gF - 2 * jj), qw.lineJoin = "bevel", qw.lineWidth = 2 * jj, qw.strokeStyle = aa.gN, qw.strokeRect(jj, jj, gA -
2 * jj, gF - 2 * jj), qw.imageSmoothingEnabled = !1, iT = a0.get(a2h), a2p = iT.width, a2q = iT.height, xZ = (1 === a2h ? .85 : 21 === a2h ? .666 : .9) * zy * gF / a2q, qw.setTransform(xZ, 0, 0, xZ, Math.floor((gA - xZ *
a2p) / 2), Math.floor((gF - xZ * a2q) / 2)), qw.drawImage(iT, 0, 0), qw.setTransform(1, 0, 0, 1, Math.floor(gA - a2j * gF - a2i * gF - jj), Math.floor(jj + a2i * gF)), function(qw, ef) {
qw.lineWidth = Math.floor(1 + gF / 80), qw.strokeStyle = aa.gN, qw.beginPath(), qw.moveTo(0, 0), qw.lineTo(ef, ef), qw.moveTo(0, ef), qw.lineTo(ef, 0), qw.stroke()
}(qw, Math.floor(a2j * gF)), qw.setTransform(1, 0, 0, 1, 0, 0))
}, this.show = function(df, a2n, zm, a2o) {
rI || a2o && a2k || (a2h = zm ? 21 : df ? 1 : 2, rI = a2k = !0, this.resize(), j.oP(), p.zj(), k5 = b4.dc, -1 === this.a2l && (this.a2l = b4.iS()), zK = a2n ? 1 : 0)
}, this.iE = function() {
!rI || 1 <= zK || (zK = 1 < (zK += 5e-4 * (b4.dc - k5)) ? 1 : zK, k5 = b4.dc, b4.d3 = !0)
}, this.fX = function(fO, fP) {
return !(!rI || zK <= 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 && (rI = !1, b4.d3 = !0), 0))
}, this.gL = function() {
!rI || zK <= 0 || (gM.globalAlpha = zK, gM.drawImage(gV, Math.floor((aL.gA - gA) / 2), gK()), gM.globalAlpha = 1)
}
}
function ck() {
let a2s = [0, 0],
a2t = [0, 0];
function a2u(g4) {
return 3 !== a2s[g4] && 1 !== a2t[g4] && (a2t[g4] = 1, a2s[g4]++, bA.nq.nr(119, (a2s[0] << 2) + a2s[1]), 1)
}
this.ct = function() {
var df = bA.dK.data[119].value;
a2s[0] = df >> 2, a2s[1] = 3 & df
}, this.xB = function() {
a2u(0) && l.yB(aW.tn(130))
}, this.xC = function() {
a2u(1) && l.yB(aW.tn(131))
}
}
function cj() {
this.a2v = !1, this.kb = !1, this.wP = !1, this.a2w = [0, 0, 0, 0], this.a2x = function() {
var jj, jk, jl, jm;
this.wP = this.wP || this.kb, (this.kb || this.a2v && this.wP) && (jj = az.a2y[0], jk = az.a2y[1], jl = az.a2y[2], jm = az.a2y[3], jj = jj < this.a2w[0] ? this.a2w[0] : jj, jk = jk < this.a2w[1] ? this.a2w[1] : jk, jl = jl > this.a2w[2] ?
this.a2w[2] : jl, jm = jm > this.a2w[3] ? this.a2w[3] : jm, this.kb = !1, this.a2v = !1, jj === this.a2w[0] && jk === this.a2w[1] && jl === this.a2w[2] && jm === this.a2w[3] ? this.wQ() : jj <= jl && jk <= jm && wi.putImageData(
wj, 0, 0, jj, jk, jl - jj + 1, jm - jk + 1))
}, this.wQ = function() {
this.wP && this.a2w[2] >= this.a2w[0] && this.a2w[3] >= this.a2w[1] && wi.putImageData(wj, 0, 0, this.a2w[0], this.a2w[1], this.a2w[2] - this.a2w[0] + 1, this.a2w[3] - this.a2w[1] + 1), this.wP = !1
}, this.sw = function() {
this.a2w[2] >= this.a2w[0] && this.a2w[3] >= this.a2w[1] && wi.putImageData(wj, 0, 0, this.a2w[0], this.a2w[1], this.a2w[2] - this.a2w[0] + 1, this.a2w[3] - this.a2w[1] + 1), this.wP = !1
}, this.ct = function() {
var fO, fP;
this.a2v = !1, this.kb = !1, this.wP = !1, this.a2w[0] = aq.eE, this.a2w[1] = aq.eF, this.a2w[2] = this.a2w[3] = 0;
loop: for (fO = 1; fO < aq.eE - 1; fO++)
for (fP = aq.eF - 2; 1 < fP; fP--)
if (1 === a2z[a1.qU(fO, fP) + 2]) {
this.a2w[0] = fO;
break loop
} loop: for (fP = 1; fP < aq.eF - 1; fP++)
for (fO = aq.eE - 2; 1 < fO; fO--)
if (1 === a2z[a1.qU(fO, fP) + 2]) {
this.a2w[1] = fP;
break loop
} loop: for (fO = aq.eE - 2; 0 < fO; fO--)
for (fP = aq.eF - 2; 1 < fP; fP--)
if (1 === a2z[a1.qU(fO, fP) + 2]) {
this.a2w[2] = fO;
break loop
} loop: for (fP = aq.eF - 2; 0 < fP; fP--)
for (fO = aq.eE - 2; 1 < fO; fO--)
if (1 === a2z[a1.qU(fO, fP) + 2]) {
this.a2w[3] = fP;
break loop
}
}
}
function ca() {
this.np = null;
var a30, a31 = new a32;
this.ct = function() {
a30 = 1 === bA.dK.data[0].value ? new a33 : 2 === bA.dK.data[0].value ? new a34 : 3 === bA.dK.data[0].value ? new a35 : 4 === bA.dK.data[0].value ? new a36 : 5 === bA.dK.data[0].value ? new a37 : a31;
var eJ, ef = a31.np.length,
pb = a30.np.length;
for (eJ = 0; eJ < ef; eJ++) pb === eJ ? (a30.np.push(a31.np[eJ]), pb++) : 0 === a30.np[eJ].length && (a30.np[eJ] = a31.np[eJ]);
this.np = a30.np, bA.dK.translate()
}, this.p2 = 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.to = function(iT) {
for (var en, ef = this.np.length, eJ = 0; eJ < ef; eJ++)
if (this.np[eJ].startsWith("{") && (en = this.np[eJ].replace("{" + iT + "}", "")).length < this.np[eJ].length) return en;
return iT
}, this.tn = function(g4, a39, oE) {
var eJ, hp, ef, g3;
if (!a39) return this.np[g4];
for (ef = a39.length, g3 = this.np[g4], eJ = 0; eJ < ef; eJ++)
if (Number.isInteger(a39[eJ]))
for (hp = a30.a3A.length - 1; 0 <= hp; hp--) g3 = g3.replace("{" + (20 * (hp + 1) + eJ) + "}", (2 === hp ? 1 !== a39[eJ] : 1 === a39[eJ]) ? "" : a30.a3A[hp]);
if (oE) {
if (oE.yM)
for (eJ = 0; eJ < oE.yM.length; eJ++) a39[oE.yM[eJ]] = aZ.jr.js(a39[oE.yM[eJ]]);
if (oE.yd)
for (eJ = 0; eJ < oE.yd.length; eJ++) a39[oE.yd[eJ]] = aZ.jr.w9(100 * a39[oE.yd[eJ]], 1)
}
for (eJ = 0; eJ < ef; eJ++) g3 = g3.replace("{" + eJ + "}", a39[eJ]);
return g3
}
}
function a32() {
this.a3A = ["s"], this.np = ["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 a36() {
this.a3A = ["n", "en", "r"], this.np = ["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 a37() {
this.a3A = [], this.np = ["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 a33() {
this.a3A = [], this.np = ["Принять", "Вы стерли {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 a35() {
this.a3A = ["", ""], this.np = ["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 a34() {
this.a3A = ["", ""], this.np = ["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.rI = !1, this.xi = null, this.a3B = 0, this.gA = null, this.gF = null, this.a3C = .013, this.a3D = .022, this.a3E = .025;
this.a3G = 3, this.a3H = 1.2, this.a3I = .2, this.a3J = .235, this.a3K = .9, this.a3L = .08;
var a3M, va = ["Best Players", "Best Clans", "LEGENDS NEVER DIE", "THE NEVER ENDING WAR"],
a3N = [-1e6, -1e6];
this.position = [0, 0], this.a3P = [0, 0], this.ct = function() {
this.xi = [null, null], this.rI = !1, this.a3B = 0
}, this.wK = function(id) {
this.a3B = id, aO.lk.a3Q(0, this.a3B)
}, this.iE = function() {
this.rI && this.g7()
}, this.g7 = function() {
b4.dc - 12e4 >= a3N[this.a3B] && (a3N[this.a3B] = b4.dc, this.a3P = [0, 0], aO.lk.a3Q(0, this.a3B))
}, this.resize = function() {
if (this.rI) {
var eJ;
for (this.gA = this.a3R(b8.cy.g0() ? .85 : .66, .75, aL.gA, aL.gF), this.gF = Math.floor(this.gA / .75), eJ = 1; 0 <= eJ; eJ--) this.xi[eJ] && (this.xi[eJ][4] = aZ.g5.g6(1, this.xi[eJ][5] * this.gF / 10));
a3M = aZ.g5.g6(1, .1 * this.gF)
}
}, this.a3R = function(fy, gU, gA, gF) {
return gA < gU * gF ? Math.floor(fy * gA) : Math.floor(gU * fy * gF)
}, this.a3S = function(g4, a3T, a3U, w5, a3V, a3W, a23) {
this.position[g4] = a23;
var zH, size = a3T.length,
g9 = aZ.g5.g6(1, a3V * this.gF / 10),
ds = (this.a3X(a3T, g9, a3W * this.gA), [
[], size, -1, w5, g9, a3V, 10 * a23
]);
for (let eJ = 0; eJ < size; eJ++) zH = {
name: a3T[eJ].name,
value: a3T[eJ].r9 / a3U,
colorIndex: a3T[eJ].colorIndex
}, ds[0].push(zH);
this.xi[g4] = ds, this.a3Y(g4);
let name = this.xi[g4][0][0].name;
1 === g4 && (name = "[" + name + "]"), 0 === a23 && 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.tm, new a3Z(g4 ? "Clan Ranking" : "1v1 Player Ranking", data))
}, this.a3Y = function(eJ) {
this.xi[eJ][0].sort(function(hg, hp) {
return hp.value - hg.value
})
}, this.nr = function(g4, name, a3a, a3b) {
if (this.xi && this.xi[g4]) {
var eJ, yV = !1;
if (0 === g4) {
for (eJ = 0; eJ < this.xi[g4][0].length; eJ++)
if (name === this.xi[g4][0][eJ].name && a3a > .99 * this.xi[g4][0][eJ].value && a3a < 1.01 * this.xi[g4][0][eJ].value) {
this.xi[g4][0][eJ].value = a3b, yV = !0;
break
} yV || this.xi[g4][0].push({
name: name,
value: a3b
})
} else {
for (eJ = 0; eJ < this.xi[g4][0].length; eJ++)
if (name === this.xi[g4][0][eJ].name) {
this.xi[g4][0][eJ].value += 32 < this.xi[g4][0][eJ].value ? (64 - this.xi[g4][0][eJ].value) / 256 : .25, this.xi[g4][0][eJ].value *= 1 / (383 / 384), yV = !0;
break
} for (eJ = 0; eJ < this.xi[g4][0].length; eJ++) this.xi[g4][0][eJ].value *= 383 / 384;
yV || this.xi[g4][0].push({
name: name,
value: .25
})
}
this.a3Y(g4)
}
}, this.a3X = function(a3T, g9, gB) {
for (var eJ = a3T.length - 1; 0 <= eJ; eJ--)
for (; 3 < a3T[eJ].name.length && o.measureText(a3T[eJ].name, g9) > gB;) a3T[eJ].name = a3T[eJ].name.substring(0, a3T[eJ].name.length - 4) + "..."
}, this.fX = function(gy, gz) {
return !!this.rI && (gy -= (aL.gA - this.gA) / 2, gz -= (aL.gF - this.gF) / 2, gy < 0 || gy > this.gA || gz < 0 || gz > this.gF ? (this.rI = !1, b4.d3 = !0) : (gz = gz < .3 * this.gF ? 1 : gz < .85 * this.gF ? (gz = (0 === this.a3B ?
14.1 : 3) * (gz - .3 * this.gF) / (.55 * this.gF), Math.floor(1 + gz * gz)) : 0 === this.a3B ? 200 : 10, gy < this.gA / 2 ? this.a3P[this.a3B] = -gz : this.a3P[this.a3B] = gz, a3N[this.a3B] + 50 > b4.dc || (a3N[this.a3B] =
b4.dc, aO.lk.a3Q(0, this.a3B)), !0))
}, this.gL = function() {
var jj, jk, r1, r2, a3c, a3d, a3e, xj;
this.rI && (jj = (aL.gA - this.gA) / 2, jk = (aL.gF - this.gF) / 2, r1 = this.a3C * this.gA, r2 = this.a3G * r1, a3c = this.a3D * this.gA, a3d = this.a3H * a3c, a3e = this.a3E * this.gA, xj = Math.floor(.25 * this.gF), gM.setTransform(1,
0, 0, 1, jj, jk), gM.fillStyle = 0 === this.a3B ? aa.lL : aa.lH, gM.fillRect(0, 0, this.gA, xj), gM.fillStyle = aa.kg, gM.fillRect(0, xj, this.gA, this.gF - xj), gM.fillStyle = aa.gN, gM.font = a3M, aZ.g5.textBaseline(gM, 1),
aZ.g5.textAlign(gM, 1), gM.fillText(va[this.a3B], Math.floor(this.gA / 2), Math.floor(.135 * this.gF)), gM.font = aZ.g5.g6(1, .025 * this.gF), gM.fillText(va[this.a3B + 2], Math.floor(this.gA / 2), Math.floor(.2125 * this.gF)), gM
.beginPath(), gM.moveTo(this.gA / 4, 0), gM.lineTo(this.gA / 2 - r1, 0), gM.lineTo(this.gA / 2, -r2), gM.lineTo(this.gA / 2 + r1, 0), gM.lineTo(this.gA - a3c, 0), gM.lineTo(this.gA + a3d, -a3d), gM.lineTo(this.gA, a3c), gM.lineTo(
this.gA, this.gF / 2 - r1), gM.lineTo(this.gA + r2, this.gF / 2), gM.lineTo(this.gA, this.gF / 2 + r1), gM.lineTo(this.gA, this.gF - a3c), gM.lineTo(this.gA + a3d, this.gF + a3d), gM.lineTo(this.gA - a3c, this.gF), gM.lineTo(
this.gA / 2 + r1, this.gF), gM.lineTo(this.gA / 2, this.gF + r2), gM.lineTo(this.gA / 2 - r1, this.gF), gM.lineTo(a3c, this.gF), gM.lineTo(-a3d, this.gF + a3d), gM.lineTo(0, this.gF - a3c), gM.lineTo(0, this.gF / 2 + r1), gM
.lineTo(-r2, this.gF / 2), gM.lineTo(0, this.gF / 2 - r1), gM.lineTo(0, a3c), gM.lineTo(-a3d, -a3d), gM.lineTo(a3c, 0), gM.lineTo(this.gA / 4, 0), gM.lineTo(this.gA / 4, a3e), gM.lineTo(a3e, a3e), gM.lineTo(a3e, this.gF - a3e), gM
.lineTo(this.gA - a3e, this.gF - a3e), gM.lineTo(this.gA - a3e, a3e), gM.lineTo(this.gA / 4, a3e), gM.fill(), this.xi[this.a3B] && this.a3f(xj), this.a3g(xj), gM.setTransform(1, 0, 0, 1, 0, 0))
}, this.a3g = function(xj) {
var r1 = y6(2, Math.floor(.06 * this.gA)),
zy = (r1 -= r1 % 2, y6(2, Math.floor(.01 * this.gA))),
xj = (zy -= zy % 2, Math.floor(.82 * xj));
gM.fillRect(r1, xj, r1, zy), gM.fillRect(this.gA - r1 - r1, xj, r1, zy), gM.fillRect(Math.floor(this.gA - r1 - r1 + (r1 - zy) / 2), Math.floor(xj - (r1 - zy) / 2), zy, r1)
}, this.a3f = function(xj) {
var fP;
gM.font = this.xi[this.a3B][4];
for (var eJ = this.xi[this.a3B][1] - 1; 0 <= eJ; eJ--) aZ.g5.textAlign(gM, 2), fP = Math.floor(this.a3L * this.gF + xj + eJ * ((1 - 2 * this.a3L) * this.gF - xj) / 9), gM.fillText(this.xi[this.a3B][0][eJ].value.toFixed(this.xi[this.a3B][
3]), Math.floor(this.a3K * this.gA), fP), gM.fillText(eJ + 1 + this.xi[this.a3B][6] + ".", Math.floor(this.a3I * this.gA), fP), aZ.g5.textAlign(gM, 0), gM.fillText(this.xi[this.a3B][0][eJ].name, Math.floor(this.a3J * this.gA), fP)
}
}
function d1() {
var fO, fP, gF, a3h, a3i, a3j, a3k, a3l, a3m, gA, vd, a3n;
this.rI = !1, this.ct = function(g3, a3o) {
if (1 === b8.id && 13 <= b8.dg && b8.dg < 18) return a3o ? void(vd = g3) : vd !== g3 ? void 0 : void b8.ox.saveString(200, g3);
a3o && (vd = g3, (a3n = document.createElement("a")).appendChild(document.createTextNode(vd)), this.rI = !0, a3n.title = vd, a3n.target = "_blank", a3n.href = vd, a3n.style.textAlign = "center", a3n.style.color = aa.gN, a3n.style
.position = "absolute", a3n.style.padding = "0px", a3n.style.margin = "0px", this.resize(), document.body.appendChild(a3n), b4.d3 = !0)
}, this.oP = function() {
return !(!this.rI || (document.body.removeChild(a3n), this.rI = !1))
}, this.fX = function(gy, gz) {
return !!this.rI && ((gy < fO || gz < fP || fO + gA < gy || fP + gF < gz || fO + gA - a3h < gy && gz < fP + a3h) && (b4.d3 = !0, this.rI = !1, document.body.removeChild(a3n)), !0)
}, this.resize = function() {
var g9, a3p;
this.rI && (a3l = Math.floor(.8 * (b8.cy.g0() ? aL.gA > aL.gF ? .6 : .55 : .4) * aL.g1), a3h = Math.floor(.15 * a3l), a3i = Math.floor(.35 * a3h), a3j = Math.floor(.5 * a3h), a3k = Math.floor(2.5 * a3j), gF = a3h + a3i + 3 * a3j, g9 = aZ
.g5.g6(1, a3i / aL.nN), a3m = Math.floor(aL.nN * o.measureText(vd, g9)), a3p = gA = (a3l < a3m ? a3m : a3l) + 2 * a3k, gA = Math.min(gA, aL.gA - 2 * (b8.cy.g0() ? 2 : 1) * b1.gap), g9 = aZ.g5.g6(1, gA / a3p * a3i / aL.nN), a3m =
Math.floor(aL.nN * o.measureText(vd, g9)), fO = Math.floor((aL.gA - gA) / 2), fP = Math.floor((aL.gF - gF) / 2), a3n.style.font = g9, a3n.style.top = Math.floor((fP + 1.4 * a3j + a3h) / aL.nN) + "px", a3n.style.left = Math.floor((
fO + (gA - a3m) / 2) / aL.nN) + "px")
}, this.gL = function() {
this.rI && (gM.fillStyle = aa.kh, gM.fillRect(fO, fP + a3h, gA, gF - a3h), gM.fillStyle = aa.lb, gM.fillRect(fO, fP, gA, a3h), gM.fillStyle = aa.gN, gM.lineWidth = b1.rn, gM.strokeStyle = aa.gN, gM.strokeRect(fO, fP, gA, gF), gM.fillRect(
fO, fP + a3h, gA, b1.rn), gM.font = aZ.g5.g6(1, .48 * a3h), aZ.g5.textAlign(gM, 1), aZ.g5.textBaseline(gM, 1), gM.fillText("You are leaving Territorial.io!", Math.floor(fO + (gA - .5 * a3h) / 2), Math.floor(fP + .55 * a3h)), k
.xg(Math.floor(fO + gA - .8 * a3h), Math.floor(fP + .25 * a3h), Math.floor(.5 * a3h)), gM.setTransform(1, 0, 0, 1, 0, 0))
}
}
function cx() {
var gap, a2H, 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.a3q = function(vK, a3r) {
iT = vK, df = a3r, a2H = [ai.a3s, ai.tj, ai.a3t, ai.a3u, ai.a3v], this.ct()
}, this.ct = function() {
if (a0.g8()) {
var eJ, r1 = Math.floor((b8.cy.g0() ? .261 : .195) * aL.g1),
r2 = Math.floor(.9 * r1),
zy = Math.floor(.17 * r2);
if (gap = b8.cy.g0() ? 2 * b1.gap : b1.gap, kO[0] = r1 / iT[0].width, kO[1] = r2 / iT[1].width, kO[2] = zy / iT[2].height, kO[3] = zy / iT[3].height, kO[4] = zy / 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.rI = function() {
return !(7 === y.tp() && b8.cy.g0())
}, this.fX = function(gy, gz, a3o) {
if (iT && this.rI())
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.tm, new a3w("You are leaving Territorial.io.", aZ.g5.vc(a2H[eJ]))), !0;
return !1
}, this.gL = function() {
if (iT && this.rI()) {
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 a3B, a3x, a3y;
function a43(eJ) {
var button = w.ng[eJ],
fO = button.fO,
fP = button.fP,
gA = button.gA,
gF = button.gF;
gM.fillStyle = button.a41, gM.fillRect(fO, fP, gA, gF), eJ === a3B && (gM.fillStyle = a3y, gM.fillRect(fO, fP, gA, gF)), gM.lineWidth = b1.rn, gM.strokeStyle = a3x, 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 = a3x, gM.fillText(button.np, 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() {
a3B = -1, a3x = aa.gN, a3y = "rgba(255,255,255,0.16)", this.ng = 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 a3z = Math.floor(.26 * this.gF),
a40 = aZ.g5.g6(1, a3z);
this.ng[0] = {
fO: 0,
fP: 0,
gA: Math.floor(.6 * this.gA - this.gap / 2),
gF: this.gF,
np: "Multiplayer",
font: a40,
a41: "rgba(22,88,22,0.8)",
fontSize: a3z
}, a3z = Math.floor(.18 * this.gF), a40 = aZ.g5.g6(1, a3z), this.ng[1] = {
fO: 0,
fP: 0,
gA: this.gA - this.ng[0].gA - this.gap,
gF: this.gF,
np: "Single Player",
font: a40,
a41: "rgba(22,88,88,0.8)",
fontSize: a3z
}, this.ng[2] = {
fO: 0,
fP: 0,
gA: this.gA,
gF: Math.floor(.3 * this.gF),
np: "",
font: this.ng[1].font,
a41: "rgba(100,0,0,0.8)",
fontSize: this.ng[1].fontSize
}, this.ng[3] = {
fO: 0,
fP: 0,
gA: this.gA,
gF: this.gF,
np: "Back",
font: this.ng[0].font,
a41: "rgba(0,0,0,0.8)",
fontSize: this.ng[0].fontSize
}, this.ng[4] = {
fO: 0,
fP: 0,
gA: this.gA,
gF: Math.floor(.3 * this.gF),
np: "The game was updated!",
font: this.ng[1].font,
a41: "rgba(100,0,0,0.8)",
fontSize: this.ng[1].fontSize
}, this.ng[5] = {
fO: 0,
fP: 0,
gA: this.ng[0].gA,
gF: Math.floor(.8 * this.gF),
np: "Reload",
font: this.ng[0].font,
a41: "rgba(0,100,0,0.8)",
fontSize: this.ng[0].fontSize
}, this.ng[6] = {
fO: 0,
fP: 0,
gA: this.ng[1].gA,
gF: this.ng[5].gF,
np: "Back",
font: this.ng[0].font,
a41: "rgba(0,0,0,0.8)",
fontSize: this.ng[0].fontSize
}, this.a10()
}, this.a10 = function() {
this.fP = Math.floor(.54 * aL.gF), this.ng[0].fO = Math.floor(.5 * aL.gA - .5 * this.gA), this.ng[1].fO = this.ng[0].fO + this.ng[0].gA + this.gap, this.ng[2].fO = this.ng[3].fO = this.ng[0].fO, this.ng[4].fO = this.ng[5].fO = this.ng[0]
.fO, this.ng[6].fO = this.ng[1].fO, this.ng[0].fP = Math.floor(.54 * aL.gF), this.ng[1].fP = this.ng[0].fP, this.ng[2].fP = Math.floor((aL.gF - this.ng[2].gF - this.ng[3].gF - this.gap) / 2), this.ng[3].fP = this.ng[2].fP + this.ng[2]
.gF + this.gap, this.ng[4].fP = Math.floor((aL.gF - this.ng[4].gF - this.ng[5].gF - this.gap) / 2), this.ng[5].fP = this.ng[6].fP = this.ng[4].fP + this.ng[4].gF + this.gap
}, this.a42 = function() {
a43(0), a43(1)
}, this.a44 = function() {
a43(2), a43(3)
}, this.a45 = function() {
a43(4), a43(5), a43(6)
}, this.uE = function(fO, fP, jC) {
var eJ = -1;
return 0 === y.tp() ? eJ = this.uj(fO, fP, 0, 2) : 3 === y.tp() ? eJ = this.uj(fO, fP, 3, 1) : 5 === y.tp() && (eJ = this.uj(fO, fP, 5, 2)), a3B !== eJ && (a3B = eJ, jC) && (b4.d3 = !0), -1 !== eJ && (r.ud(), !0)
}, this.uj = function(fO, fP, a46, size) {
for (var eJ = a46; eJ < a46 + size; eJ++)
if (fO >= this.ng[eJ].fO && fP >= this.ng[eJ].fP && fO <= this.ng[eJ].fO + this.ng[eJ].gA && fP <= this.ng[eJ].fP + this.ng[eJ].gF) return eJ;
return -1
}
}
function a48() {
function a4F(a21) {
return a21 < 0 ? 0 : 255 < a21 ? 255 : Math.floor(a21)
}
this.gA = 0, this.gF = 0, this.rI = !1, this.a49 = 0, this.gap = 0, this.a4A = 0, this.a3h = 0, this.a4B = 0, this.a4C = 0, this.a4D = 0, this.colors = null, this.ct = function() {
this.rI = !0, this.a49 = 0, this.resize()
}, this.resize = function() {
this.rI && (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.a3h = Math.floor(.25 * this.gF), this.a4B = (this.gF - this.a3h - 3 * this.gap) / 2, this.a4C = this.gA - 3 * this.gap - this.a4B, this.a4D = (this.gF - this.a3h - 4 * this.gap) / 3)
}, this.a4E = 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] = a4F(256 * Math.random());
else
for (var eJ = 2; 0 <= eJ; eJ--) this.colors[0][eJ] = a4F(4 * (10 * parseInt(g3[2 * eJ]) + parseInt(g3[2 * eJ + 1])));
this.a4G()
}, this.a4H = function() {
return [eX(this.colors[0][0], 4), eX(this.colors[0][1], 4), eX(this.colors[0][2], 4)]
}, this.uH = function(gD, gE, deltaY) {
var jj = (aL.gA - this.gA) / 2;
gE -= (aL.gF - this.gF) / 2 + this.a3h, (gD -= jj) < 0 || gE < 0 || gD >= this.gA || gE >= this.gF - this.a3h || (jj = Math.floor(3 * gE / (this.gF - this.a3h)), this.colors[this.a4A][jj] = a4F(this.colors[this.a4A][jj] + (deltaY < 0 ?
1 : -1) * Math.max(Math.abs(.05 * deltaY), 1)), b4.d3 = !0)
}, this.fX = function(gD, gE) {
this.a49 = 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.a3h + 3 * this.gap) && gE < this.a3h ? (this.rI = !1, !(b4.d3 = !0)) : gD < this.gap || gE < this.gap +
this.a3h || gD >= this.gA || gE >= this.gF - this.gap || (gD < this.gap + this.a4B ? (gE < this.gap + this.a3h + this.a4B && 0 !== this.a4A && (this.a4A = 0, b4.d3 = !0), !0) : gD < this.gap + this.a4B || (gD -= 2 * this.gap + this
.a4B, gE < this.gap + this.a3h + this.a4D ? (this.a49 = 1, this.colors[this.a4A][0] = a4F(256 * gD / this.a4C), b4.d3 = !0) : gE < 2 * this.gap + this.a3h + this.a4D || (gE < 2 * this.gap + this.a3h + 2 * this.a4D ? (this
.a49 = 2, this.colors[this.a4A][1] = a4F(256 * gD / this.a4C), b4.d3 = !0) : !(gE >= 3 * this.gap + this.a3h + 2 * this.a4D) || (this.a49 = 3, this.colors[this.a4A][2] = a4F(256 * gD / this.a4C), b4.d3 = !0))))
}, this.a4G = function() {
for (var hp = 2; 0 <= hp; hp--) this.colors[0][hp] = a4F(this.colors[0][hp])
}, this.a4I = 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.uE = function(gD) {
0 !== this.a49 && (gD -= 2 * this.gap + this.a4B + (aL.gA - this.gA) / 2, this.colors[this.a4A][this.a49 - 1] = a4F(256 * gD / this.a4C), b4.d3 = !0)
}, this.uc = function() {
0 < this.a49 && (this.a49 = 0, this.a4G(), bA.nq.nr(103, this.a4I()), 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.a3h, this.gA, this.gF - this.a3h), gM.fillStyle = aa.ks, gM.fillRect(0, 0, this.gA, this.a3h), gM.fillStyle = aa.gN, gM.lineWidth = b1.rn, gM.strokeStyle = aa
.gN, gM.strokeRect(-1, -1, this.gA + 2, this.gF + 2), gM.fillRect(0, this.a3h, this.gA, b1.rn), gM.font = aZ.g5.g6(1, .31 * this.a3h), 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.a3h) / 2), Math.floor(.55 * this.a3h)), this.a4J(0), gM.lineWidth = b1.rn, this.a4K(0), this.a4K(1), this.a4K(2), k.xg(Math.floor(jj + this.gA - .4 * this.a3h - this.gap), Math.floor(jk +
.3 * this.a3h), Math.floor(.4 * this.a3h)), gM.setTransform(1, 0, 0, 1, 0, 0)
}, this.a4J = function(eJ) {
var gY = this.colors[eJ][0],
vR = this.colors[eJ][1],
eJ = this.colors[eJ][2];
gM.fillStyle = "rgb(" + gY + "," + vR + "," + eJ + ")", gM.fillRect(this.gap, this.a3h + this.gap, this.a4B, 2 * this.a4B + this.gap), gM.lineWidth = b1.rn, gM.strokeStyle = aa.gN, gM.strokeRect(this.gap, this.a3h + this.gap, this.a4B,
2 * this.a4B + this.gap), gM.fillStyle = gY + vR + eJ < 306 && vR < 150 ? aa.gN : aa.jp, gM.font = aZ.g5.g6(1, .32 * this.a4D), 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.a3h - this.a4B), Math.floor(this.gap + .5 * this.a4B)), gM.rotate(Math.PI / 2)
}, this.a4K = 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.a4B, this.a3h + this.gap + eJ * (this.gap + this.a4D), Math
.floor(this.colors[this.a4A][eJ] * this.a4C / 255), this.a4D), gM.strokeStyle = aa.gN, gM.strokeRect(2 * this.gap + this.a4B, this.a3h + this.gap + eJ * (this.gap + this.a4D), this.a4C, this.a4D), gM.fillStyle = aa.gN, gM.font =
aZ.g5.g6(1, .32 * this.a4D), 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.a4B, Math.floor(this.a3h + this
.gap + eJ * (this.gap + this.a4D) + .53 * this.a4D))
}
}
function bk() {
var a4L, a4M, ys, z2, zq, a4N, a4O, a4P, a4Q, g9, fontSize, k5, a4R, a4T, a4S = 0;
function a4W() {
return aO.j4.a4X[(a4R + a4S) % aO.j4.a4Y]
}
function a4U() {
a4R++, k5 = b4.dc, aO.j4.a4Z(a4W(), 4) && (a4T = !0, aO.a4a.a4b(a4W()))
}
function a4c() {
0 === a4R ? bC.tx(3249) : (a4R === aO.j4.a4Y - 1 && (a4R = -1), a4U())
}
function a4k(fP, a0h, a4j) {
var jj = Math.floor((aL.gA - z2) / 2) + a4O,
jl = jj + Math.floor(a4j * (z2 - 2 * a4O));
gM.lineWidth = a0h, gM.beginPath(), gM.moveTo(jj, fP), gM.lineTo(jl, fP), gM.lineTo(Math.floor(jj - a4O + a4j * z2), fP + ys), gM.lineTo(jj - a4O, fP + ys), gM.closePath()
}
this.ct = function() {
y.setState(6), a4L = 0, a4M = 1, a4P = "rgba(0,220,120,0.4)", a4Q = "rgba(0,0,0,0.8)", this.resize(), b4.d3 = !0, a4R = 0, a4T = !1, a4U()
}, this.resize = function() {
z2 = Math.floor((b8.cy.g0() ? .5 : .25) * aL.g1), zq = z2 + 12, ys = Math.floor(.125 * z2), a4O = 3 * ys, a4N = Math.floor(.225 * z2), fontSize = Math.floor(.3 * ys), g9 = aZ.g5.g6(0, fontSize)
}, this.a4V = function(hg) {
a4S = hg
}, this.ts = function(tl) {
tl === a4W() && (a4T = !1, a4c())
}, this.a4d = function(tl) {
6 !== y.tp() || a4T || (k5 = b4.dc, a4T = !0)
}, this.fX = function(fO, fP) {
var jj = Math.floor((aL.gA - zq) / 2),
jk = Math.floor(.5 * (aL.gF - b1.gap - ys - a4N)) + ys + b1.gap;
return jj < fO && fO < jj + zq && jk < fP && fP < jk + a4N && (this.a4f(), w.uE(fO, fP, !1), !0)
}, this.a4f = function() {
aO.j4.u0(3260), at.j4.tz()
}, this.iE = function() {
6 === y.tp() && (a4T ? b4.dc > k5 + 12e3 && bC.tx(3250) : b4.dc > k5 + 12e3 && a4c(), 100 < (a4L += .07 * a4M * (a4L < 16 ? 5 + a4L : 84 < a4L ? 105 - a4L : 17)) ? (a4L = 100, a4M = -1) : a4L < 0 && (a4L = 0, a4M = 1), a4P = "rgba(0," +
Math.floor(190 - 1.9 * a4L) + "," + Math.floor(120 - 1.2 * a4L) + "," + (.4 + .004 * a4L) + ")", a4Q = "rgba(0," + Math.floor(1.9 * a4L) + "," + Math.floor(1.2 * a4L) + "," + (.8 - .004 * a4L) + ")", b4.d3 = !0)
}, this.gL = function() {
var fO = Math.floor((aL.gA - zq) / 2),
fP = Math.floor(.5 * (aL.gF - b1.gap - ys - a4N));
! function(title, fP, a0h, a4j) {
gM.fillStyle = a4Q, a4k(fP, a0h, 1), gM.fill(), gM.fillStyle = a4P, a4k(fP, a0h, a4j), gM.fill(), gM.strokeStyle = aa.gN, a4k(fP, a0h, 1), gM.stroke(),
function(a4m, fP) {
aZ.g5.textAlign(gM, 1), aZ.g5.textBaseline(gM, 1), gM.font = g9, gM.fillStyle = aa.gN, gM.fillText(a4m, Math.floor(.5 * aL.gA), Math.floor(fP + .58 * ys))
}(title, fP)
}("Loading", fP, 3, a4L / 100),
function(fO, fP, gA, gF, np) {
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(np, Math.floor(fO + gA / 2), Math.floor(fP + gF / 2 + .1 * ef))
}(fO, fP + ys + b1.gap, zq, a4N, "Back")
}
}
function bl() {
var db = 0;
this.ct = function() {
w.ct(), db = 0
}, this.setState = function(a4n) {
db = a4n
}, this.tp = function() {
return db
}, this.a4o = function() {
this.setState(8), aH.u1(), at.pB()
}, this.uo = function(dI) {
if (!aq.pl) return !1;
if (!(b4.dc < 400)) {
if ("Enter" === dI.key || "Escape" === dI.key) {
if (this.a4p()) return !0;
if ("Enter" === dI.key) {
if (0 === db) return !0;
if (7 === db) return !0
}
}
return !1
}
}, this.a4q = function() {
ax.resize()
}, this.a4p = function() {
return !!ax.oP()
}, this.dh = function() {
b4.d3 = !0, 8 === db ? b.kG ? ab.uq(!1) : (b3.rI ? b3 : k).ur() : 7 === db ? aH.a4r() : 6 === db ? x.a4f() : 2 === db && z.a4s()
}, this.fX = function(fO, fP) {
!aq.pl || 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.uE = function(fO, fP) {
if (!r.a0t) {
if (2 === db && z.uE(fO, fP)) return void r.ud();
if (w.uE(fO, fP, !0)) return
}
r.uE(fO, fP)
}, this.click = function(fO, fP) {
r.ue(), aw.fX(fO, fP, !1)
}, this.uH = function(fO, fP, deltaY) {}, this.a4t = function() {
w.a10(), 0 !== db && 7 === db && aH.resize(), b4.d3 = !0
}, this.gL = function() {
8 !== db && 10 !== db && (gM.imageSmoothingEnabled = !0, this.qs(), 0 !== db && (r.gL(), m.gL(), this.a4u(), aw.gL(), ay.gL()), 0 !== db && (2 === db ? z.gL() : 6 === db ? x.gL() : 7 === db && aH.gL()), ax.gL())
}, this.qs = function() {
var a4w, a4v;
if (makeMainMenuTransparent) gM.clearRect(0, 0, aL.gA, aL.gF);
else aq.pl ? (a4v = aL.gA / aq.eE, a4w = aL.gF / aq.eF, gM.setTransform(a4v = a4w < a4v ? a4v : a4w, 0, 0, a4v, Math.floor((aL.gA - a4v * aq.eE) / 2), Math.floor((aL.gF - a4v * aq.eF) / 2)), gM.drawImage(aq.pn, 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.a4u = function() {
var fP = Math.floor(.3 * aL.gF),
gV = a0.a4x("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, a50, a51, a52;
this.a4y = 0, this.a4z = 0, this.ct = function() {
var gV, kO;
7 === y.tp() && (mP = af.mP, a50 = 0, a51 = b4.dc + 4500, a52 = aO.yN.a53() ? 2 : 0, y.setState(10), gM.imageSmoothingEnabled = !0, y.qs(), gV = a0.a4x("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 < a52 && b4.dc > a51 && (a52--, a51 += 4500, 0 === b4.a54) && 0 === b4.iS() && (0 === a52 && aO.j4.tu < aO.j4.a55 && (aO.j4.tu += aO.j4.a56), aO.j4.a4Z(aO.j4.tu, 5))
}, this.a57 = function() {
var em, eJ;
return 10 === y.tp() && (em = af.mP, eJ = af.g4, aO.yN.a58(mP), mP = null, af.ct(em), af.g4 = eJ, !0)
}, this.a59 = function() {
10 === y.tp() && 2 <= ++a50 && (aO.yN.a58(mP), mP = null)
}
}
function c8() {
var a5B, a5C, a5D, a5E, a5F, a5G, a5H, nF, a5J, a5L, a5M, a5N, a5Q, a5R, a5S, a5T, a5U, a5I = 48,
a5O = ["Joined", "Skipped", "Multiplayer", "Singleplayer"],
a5P = [0, 0, 0, 0];
function a5Y(eJ, m0) {
eJ = a5H[eJ].getContext("2d", {
alpha: !0
});
eJ.clearRect(0, 0, a5I, a5I), a9.pr.ro(m0, eJ, 0, 0, a5I)
}
function a5X(eJ, vK) {
var eJ = a5H[eJ].getContext("2d", {
alpha: !0
}),
zoom = (eJ.clearRect(0, 0, a5I, a5I), a5I / vK.width),
dd = a5I / vK.height,
zoom = dd < zoom ? dd : zoom;
eJ.imageSmoothingEnabled = !0, eJ.setTransform(zoom, 0, 0, zoom, Math.floor((a5I - zoom * vK.width) / 2), Math.floor((a5I - zoom * vK.height) / 2)), eJ.drawImage(vK, 0, 0), eJ.setTransform(1, 0, 0, 1, 0, 0)
}
function a5c(iT, gY, a5f, gW) {
gW.beginPath(), gW.moveTo(iT, iT), gW.lineTo(iT + Math.cos(a5f) * gY, iT + Math.cos(a5f + 1.5 * Math.PI) * gY), gW.stroke()
}
function a5v() {
if (7 === y.tp()) {
for (var gi, vK, gW, zoom, dd, hg = -1, eJ = nF.length - 1; 0 <= eJ; eJ--)
if (null === nF[eJ].gV) {
hg = eJ;
break
} - 1 !== hg && (null !== (gi = a5j(nF[hg].a5n, nF[hg].a5o)) ? nF[hg].gV = gi : (gi = {
eE: aq.eE,
eF: aq.eF,
pn: aq.pn,
pj: aq.pj,
pk: aq.pk,
po: aq.po,
qB: aq.qB,
a5k: aq.a5k
}, aq.d4(nF[hg].a5n, nF[hg].a5o), aq.pm.a5w(), (vK = document.createElement("canvas")).width = 128, vK.height = 128, gW = vK.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.pn, 0, 0), aq.eE = gi.eE, aq
.eF = gi.eF, aq.pn = gi.pn, aq.pj = gi.pj, aq.pk = gi.pk, aq.po = gi.po, aq.qB = gi.qB, aq.a5k = gi.a5k, nF[hg].gV = vK), b4.d3 = !0)
}
}
function a5j(a5n, a5o) {
for (var eJ = nF.length - 1; 0 <= eJ; eJ--)
if (null !== nF[eJ].gV && nF[eJ].a5n === a5n && nF[eJ].a5o === a5o) return nF[eJ].gV;
return null
}
this.ct = function() {
var eJ;
for (a5U = 0, a5L = -1, y.setState(7), nF = [], this.resize(), a5H = new Array(13), eJ = a5H.length; 0 <= eJ; eJ--) a5H[eJ] = document.createElement("canvas"), a5H[eJ].width = a5I, a5H[eJ].height = a5I;
for (eJ = 0; eJ < 7; eJ++) ! function(rk) {
var a5a, gW = a5H[rk - 2].getContext("2d", {
alpha: !0
}),
a5Z = 1.5 * Math.PI,
iT = Math.floor(.5 * a5I),
gY = Math.floor(.48 * a5I);
gW.lineWidth = 2, gW.strokeStyle = aa.gN, gW.clearRect(0, 0, a5I, a5I);
for (var eJ = 0; eJ < rk; eJ++) a5a = a5Z + 2 * Math.PI / rk,
function(eJ, iT, gY, a5Z, a5a, gW) {
gW.fillStyle = b5.a5e[eJ], gW.beginPath(), gW.arc(iT, iT, gY, a5Z, a5a), gW.lineTo(iT, iT), gW.fill()
}(eJ + 1, iT, gY, a5Z, a5a, gW), 0 !== eJ && a5c(iT, gY, a5Z, gW), a5Z = a5a;
a5c(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);
a5X(7, a0.get(4)), a5Y(8, a9.rF.rc + a9.rF.rt), a5Y(9, a9.rF.rc + a9.rF.rr), a5Y(10, 1024 - a9.rF.rZ), a5X(11, a0.get(19)), a5X(12, a0.get(20)), b4.d3 = !0
}, this.a4r = function() {
this.u1(), aO.j4.u0(3240), y.setState(0), at.d5(5, 5)
}, this.u1 = function() {
nF = [], a5H = []
}, this.yq = function() {
return a5N
}, this.resize = function() {
var a5g, pa, a05, a5h;
for (a5D = [0, 0], a5J = [0, 0, 0, 0], a5T = b8.cy.g0() ? (a5M = Math.floor(.8 * .4 * aL.g1), a5N = Math.floor(.56 * a5M), a5J[0] = b1.gap, aL.gA < aL.gF ? (a5J[1] = a5N + 2 * b1.gap, a5J[2] = aL.gA - 3 * a5J[0], a5J[3] = ay.gK() - 3 * b1
.gap - a5N, a5R = Math.floor(.95 * a5N), a5S = Math.floor((aL.gA - a5M - b1.gap) / 2), Math.floor(b1.gap + a5N / 2)) : (a5J[1] = b1.gap, a5J[2] = aL.gA - 3 * b1.gap - a5M, a5J[3] = ay.gK() - 2 * b1.gap, a5R = Math.floor(.8 *
a5M), a5J[3] - a5N < a5M && (a5R = Math.floor(.8 * (a5J[3] - a5N)), a5R = y6(a5N, a5R)), a5S = Math.floor(aL.gA - a5M / 2 - b1.gap), y6(a5T = Math.floor(b1.gap + a5N + (a5J[3] - a5N) / 2), Math.floor(a5N + 2 * b1.gap +
a5R / 2)))) : (a5M = Math.floor(.2016 * aL.g1), a5N = Math.floor(.56 * a5M), a5J[2] = Math.floor(.5 * aL.gA), a5J[3] = Math.floor(.5 * aL.gF), a5J[1] = Math.floor(.45 * (aL.gF - a5J[3])), a5J[0] = Math.floor((aL.gA - a5J[2]) / 2),
a5R = Math.floor(.75 * a5N), a5S = Math.floor(aL.gA / 2), Math.floor(a5J[1] + a5J[3] + (aL.gF - a5J[3] - a5J[1]) / 2)), a5Q = aZ.g5.g6(1, .65 * a5N / 4), a5g = pa = 1; a5g * pa < nF.length;) a5J[3] / (pa + 1) < a5J[2] / (a5g +
1) ? a5g++ : pa++;
a05 = (a5J[2] - (a5g - 1) * b1.gap) / a5g, a5h = (a5J[3] - (pa - 1) * b1.gap) / pa, a5B = a05 < a5h ? a05 : a5h, a5C = Math.floor(a5B), a5G = aZ.g5.g6(1, .5 * a5B / 5), a5D[0] = a5g, a5D[1] = pa, a5E = a5J[0] + Math.floor((a5J[2] - a5D[
0] * a5B - (a5D[0] - 1) * b1.gap) / 2), a5F = a5J[1] + Math.floor((a5J[3] - a5D[1] * a5B - (a5D[1] - 1) * b1.gap) / 2)
}, this.nr = function(a5i, em) {
var eJ, dd, gV, ef = nF.length;
for (a5P = a5i, eJ = 0; eJ < em.length; eJ++) gV = a5j(em[eJ].qB, em[eJ].a5k), nF.push({
a5l: em[eJ].id,
wZ: em[eJ].wZ,
wa: em[eJ].a5m,
a5n: em[eJ].qB,
a5o: em[eJ].a5k,
joined: em[eJ].a5p,
yn: em[eJ].a4j,
a5q: em[eJ].a5q,
gV: gV,
a5r: em[eJ].a5r,
a5s: em[eJ].a5s,
a5t: em[eJ].a5t
});
for (eJ = ef - 1; 0 <= eJ; eJ--) nF.shift();
if (-1 !== a5L)
for (dd = a5L, a5L = -1, eJ = nF.length - 1; 0 <= eJ; eJ--)
if (nF[eJ].a5l === dd) {
a5L = dd;
break
}(nF.length > a5U || nF.length < a5U) && (a5U = nF.length, this.resize()), this.a5u(), b4.d3 = !0
}, this.a5u = function() {
for (var eJ = nF.length - 1; 0 <= eJ; eJ--) null === nF[eJ].gV && setTimeout(a5v, 0)
}, this.fX = function(fO, fP) {
return 4 * ((fO - a5S) * (fO - a5S) + (fP - a5T) * (fP - a5T)) <= a5R * a5R ? (this.a4r(), w.uE(fO, fP, !1), !0) : function(fO, fP) {
var hg, hp, jj, jk;
if (0 !== nF.length) {
var eJ = 0;
for (jk = a5F, hp = 0; hp < a5D[1]; hp++) {
for (jj = a5E, hg = 0; hg < a5D[0]; hg++) {
if (jj < fO && fO < jj + a5B && jk < fP && fP < jk + a5B) return aO.a4a.a5y(nF[eJ].a5l), a5L = nF[eJ].a5l !== a5L ? nF[eJ].a5l : -1, b4.d3 = !0;
if (++eJ >= nF.length) return !1;
jj += a5B + b1.gap
}
jk += a5B + b1.gap
}
}
return !1
}(fO, fP)
}, this.gL = function() {
var hg, hp, fO, gY, zoom, eJ = 0,
fP = a5F;
if (gM.imageSmoothingEnabled = !0, gM.lineWidth = 3, gY = Math.floor(.5 * a5R), gM.fillStyle = aa.kf, gM.beginPath(), gM.arc(a5S, a5T, gY, 0, 2 * Math.PI), gM.fill(), gM.strokeStyle = aa.gN, gM.beginPath(), gM.arc(a5S, a5T, gY, 0, 2 *
Math.PI), gM.stroke(), gY = a0.get(0).height, zoom = .6 * a5R / gY, gM.setTransform(zoom, 0, 0, zoom, Math.floor(a5S - .56 * zoom * a0.get(0).width), Math.floor(a5T - .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 - a5M - b1.gap, b1.gap, a5M, a5N), 0 <= a5L ? (gM.fillStyle = aa.l1, gM.fillRect(aL.gA - a5M - b1.gap, b1.gap, a5M, Math.floor(.25 * a5N))) : (gM.fillStyle = aa.lT, gM.fillRect(aL.gA - a5M -
b1.gap, b1.gap + Math.floor(.25 * a5N), a5M, Math.floor(.25 * a5N)));
gM.strokeStyle = aa.gN, gM.strokeRect(aL.gA - a5M - b1.gap, b1.gap, a5M, a5N), gM.fillStyle = aa.gN, gM.font = a5Q, aZ.g5.textBaseline(gM, 1);
for (var fP, a3e = Math.floor(.04 * a5M), xj = Math.floor(.08 * a5N), eJ = 3; 0 <= eJ; eJ--) fP = Math.floor(b1.gap + (eJ + 1) * (a5N + 2 * xj) / 5 - xj), aZ.g5.textAlign(gM, 0), gM.fillText(a5O[eJ], aL.gA - a5M - b1.gap + a3e,
fP), aZ.g5.textAlign(gM, 2), gM.fillText(aZ.jr.js(a5P[eJ]), aL.gA - b1.gap - a3e, fP)
}(), 0 !== nF.length)
for (hp = 0; hp < a5D[1]; hp++) {
for (fO = a5E, hg = 0; hg < a5D[0]; hg++) {
if (! function(eJ, fO, fP) {
var zoom, hp, a62, a64, a65;
null === nF[eJ].gV ? (gM.fillStyle = aa.kf, gM.fillRect(fO, fP, a5C, a5C)) : (zoom = a5C / 128, gM.setTransform(zoom, 0, 0, zoom, fO, fP), gM.drawImage(nF[eJ].gV, 0, 0), gM.setTransform(1, 0, 0, 1, 0, 0));
a5L === nF[eJ].a5l ? (function(fO, fP) {
var r1 = Math.floor(.2 * a5C),
r2 = Math.floor(.3 * r1);
gM.fillStyle = aa.l4, gM.fillRect(fO + a5C - r1, fP, r1, r1), gM.fillStyle = aa.jp, gM.fillRect(fO + a5C - r1, fP, 2, r1), gM.fillRect(fO + a5C - r1, fP + r1 - 2, r1, 2), k.xg(fO + a5C - r1 + r2, fP + r2,
r1 - 2 * r2), gM.setTransform(1, 0, 0, 1, 0, 0)
}(fO, fP), gM.lineWidth = 3, gM.fillStyle = aa.l4) : gM.fillStyle = aa.kd;
a64 = Math.floor(a5B / 4), gM.fillRect(fO, fP, a64, a64), a65 = Math.floor(fP + .8 * a5B), gM.fillRect(fO, a65, a5C, Math.floor(a5B / 5)),
function(eJ, fO, fP) {
var zoom;
nF[eJ].wa && (eJ = a0.get(4), zoom = .5 * a5B / eJ.width, gM.setTransform(zoom, 0, 0, zoom, Math.floor(fO + (a5B - zoom * eJ.width) / 2), Math.floor(fP + (a5B - 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 a67 = new Array(nF[eJ].a5r);
if (nF[eJ].a5r) {
for (hp = a62 = 0; hp < nF[eJ].a5r; hp++) nF[eJ].a5s[hp] = aZ.qw.vT(nF[eJ].a5s[hp], a5G, .4 * a5B), a67[hp] = ("" === nF[eJ].a5s[hp] ? "other: " : "[" + nF[eJ].a5s[hp] + "]: ") + nF[eJ].a5t[hp];
for (hp = 0; hp < nF[eJ].a5r; hp++) a62 = Math.max(a62, o.measureText(a67[hp], a5G));
a62 += .05 * a5B, hp = 5 === nF[eJ].a5r, a64 = hp ? fP + a64 : Math.max(fP + .8 * a5B - .11 * nF[eJ].a5r * a5B, fP + a64), a65 = hp ? a65 : Math.min(a64 + .11 * nF[eJ].a5r * a5B + .05 * a5B, a65), gM.fillRect(fO,
a64, a62, a65 - a64)
}
for (gM.font = a5G, aZ.g5.textBaseline(gM, 1), aZ.g5.textAlign(gM, 0), gM.fillStyle = aa.lO, gM.fillText(nF[eJ].joined.toString(), Math.floor(fO + .22 * a5B), Math.floor(fP + .9 * a5B)), gM.fillStyle = aa.gN, hp =
0; hp < nF[eJ].a5r; hp++) gM.fillText(a67[nF[eJ].a5r - hp - 1], Math.floor(fO + .03 * a5B), Math.floor(fP + .77 * a5B - .11 * hp * a5B));
aZ.g5.textAlign(gM, 2), gM.fillStyle = aa.lA, gM.fillText(nF[eJ].yn.toString(), Math.floor(fO + .81 * a5B), Math.floor(fP + .9 * a5B)), gM.strokeStyle = a5L === nF[eJ].a5l ? aa.l2 : aa.kl, gM.strokeRect(fO, fP, a5C,
a5C), a65 = Math.floor(.16 * a5B), zoom = a65 / a5I, gM.setTransform(zoom, 0, 0, zoom, Math.floor(fO + .33 * a65), Math.floor(fP + .33 * a65)), a5H.length > nF[eJ].wZ && gM.drawImage(a5H[nF[eJ].wZ], 0, 0);
gM.setTransform(zoom, 0, 0, zoom, Math.floor(fO + .15 * a65), Math.floor(fP + a5B - 1.08 * a65)), gM.drawImage(a5H[11], 0, 0), gM.setTransform(zoom, 0, 0, zoom, Math.floor(fO + a5B - 1.05 * a65), Math.floor(fP + a5B -
1.15 * a65)), gM.drawImage(a5H[12], 0, 0), gM.setTransform(1, 0, 0, 1, 0, 0)
}(eJ, Math.floor(fO), Math.floor(fP)), ++eJ >= nF.length) return;
fO += a5B + b1.gap
}
fP += a5B + b1.gap
}
}
}
function bm() {
var a69 = [0, 0, 0, 0];
function a3g(fO, fP, gP, a6P) {
gM.fillStyle = aa.gN;
var r1 = y6(2, Math.floor((a6P ? .5 : .35) * gP)),
zy = (r1 -= r1 % 2, y6(2, Math.floor(.1 * gP))),
gP = (zy -= zy % 2, Math.floor((gP - r1) / 2)),
jl = Math.floor(gP + (r1 - zy) / 2);
gM.fillRect(fO + gP, fP + jl, r1, zy), a6P && gM.fillRect(fO + jl, fP + gP, zy, r1)
}
function a4i(fO, fP, gA, gF, a21, fy, np, ha, rk) {
gM.fillStyle = a21, 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 < rk && function(fO, fP, gA, gF, rk) {
gM.fillStyle = "rgba(255,255,255,0.3)", gM.fillRect(fO, fP, rk * gA / b.ej, gF)
}(fO, fP, gA, gF, rk), 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(np, Math.floor(fO + gA / 2), Math.floor(fP + .52 * gF)))
}
this.iw = [{
eo: 0,
rk: 512
}], this.ct = function() {
aI.rI = !1, y.setState(2), this.resize(), b4.d3 = !0
}, this.u1 = function() {}, this.resize = function() {
a69[2] = Math.floor((b8.cy.g0() ? .49 : .4) * aL.g1), a69[1] = Math.floor((aL.gF - a69[2] / 6 - this.iw.length * (b1.gap + a69[2] / 10)) / 2), a69[0] = Math.floor((aL.gA - a69[2]) / 2), aI.rI && aI.resize()
}, this.a6A = function(wZ) {
var eJ;
if (6 < wZ) this.iw = [{
eo: 0,
rk: 512
}];
else {
for (this.iw = [], eJ = 0; eJ < wZ + 2; eJ++) this.iw.push({
eo: 0,
rk: 0
});
this.a6B()
}
aO.j4.tu = 0
}, this.a6C = function(a6D, a6E) {
for (var ef = a6D.length, eJ = 0; eJ < ef; eJ++) this.iw[eJ].eo = a6D[eJ], this.iw[eJ].rk = a6E[eJ]
}, this.a6F = function(vR) {
var eJ, ef;
if (1 === vR.r5.length)
for (ef = this.iw.length, vR.a6D = new Array(ef), vR.a6E = new Array(ef), eJ = 0; eJ < ef; eJ++) vR.a6D[eJ] = this.iw[eJ].eo, vR.a6E[eJ] = this.iw[eJ].rk
}, this.a4s = function() {
b4.d3 = !0, aI.rI ? aI.rI = !1 : (this.u1(), y.setState(0), at.d5(5, 5))
}, this.wd = function() {
var eJ, rk;
if (aV.iq) return aV.ir.a6G;
for (rk = 0, eJ = this.iw.length - 1; 0 <= eJ; eJ--) rk += this.iw[eJ].rk;
return rk
}, this.uE = function(fO, fP) {
return !(!aI.rI || !aI.uE(fO, fP)) || -1 !== this.uj(fO, fP)
}, this.a6H = function() {
var hg;
aO.j4.tu = 0, y.a4o(), aV.iq ? aV.a6I() : (hg = (hg = this.iw.length - 2) < 0 ? 7 : hg, b.wW(Math.floor(16384 * Math.random()), 0, [{
name: bA.dK.data[122].value,
a6J: aZ.color.vP(bA.j4.o2()),
a6K: 0
}], hg, !1, !1))
}, this.fX = function(fO, fP) {
if (aI.rI && !aV.iq) return aI.fX(fO, fP);
var eJ, hg, max, r1, fP = this.uj(fO, fP);
if (-1 === fP) return !1;
if (0 === fP) this.a4s();
else if (1 === fP) aV.iq ? (aV.ud(), b4.d3 = !0) : aI.show();
else if (100 === fP) aU.a6L();
else if (2 === fP) this.u1(), this.a6H();
else {
if (aV.iq) return !1;
if (27 === fP) this.iw.length < 8 && (this.iw.push({
eo: 0,
rk: b.ej
}), this.a6B(), 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 (r1 = (a69[2] - a69[2] / 10 - 2 * b1.gap) / 2, fP % 3 == 1) 0 === eJ && 1 === this.iw[eJ].rk || (fO < a69[0] + a69[2] - 1.5 * r1 - 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 - (a69[0] + a69[2] - r1)) / r1 - .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].rk);
if (fP < 0) {
if (1 === this.iw[eJ].rk) return this.iw[eJ].rk = max, !0
} else if (this.iw[eJ].rk === max) return this.iw[eJ].rk = 1, !0;
this.iw[eJ].rk += fP, this.iw[eJ].rk < 1 ? this.iw[eJ].rk = 1 : this.iw[eJ].rk > max && (this.iw[eJ].rk = max)
}
}
return !0
}, this.a6B = function() {
for (var rk = Math.floor(b.ej / this.iw.length), a6M = b.ej % this.iw.length, eJ = this.iw.length - 1; 0 <= eJ; eJ--) this.iw[eJ].rk = rk;
this.iw[0].rk += a6M
}, this.uj = function(fO, fP) {
var r1 = (a69[2] - 3 * b1.gap) / 4,
zy = a69[2] / 6;
if (fO < a69[0] || fP < a69[1] || a69[0] + a69[2] <= fO) return -1;
if (fP < a69[1] + zy) return fO < a69[0] + r1 ? 0 : fO < a69[0] + r1 + b1.gap ? -1 : fO < a69[0] + 2 * r1 + b1.gap ? 100 : fO < a69[0] + 2 * (r1 + b1.gap) ? -1 : fO < a69[0] + 3 * r1 + 2 * b1.gap ? 1 : fO < a69[0] + 3 * (r1 + b1.gap) ? -
1 : 2;
for (var jk, a6N = a69[2] / 10, r1 = (a69[2] - a6N - 2 * b1.gap) / 2, eJ = 0; eJ < this.iw.length; eJ++) {
if (fP < (jk = a69[1] + zy + b1.gap + eJ * (a6N + b1.gap))) return -1;
if (!(jk + a6N < fP)) return fO < a69[0] + a6N ? 3 + 3 * eJ : fO < a69[0] + a6N + b1.gap ? -1 : fO < a69[0] + a69[2] - r1 - b1.gap ? 4 + 3 * eJ : fO < a69[0] + a69[2] - r1 ? -1 : 5 + 3 * eJ
}
return !(this.iw.length < 8) || fP < (jk = a69[1] + zy + b1.gap + this.iw.length * (a6N + b1.gap)) || jk + a6N < fP || a69[0] + a6N < fO ? -1 : 27
}, this.gL = function() {
gM.lineWidth = b1.rn, aZ.g5.textAlign(gM, 1), aZ.g5.textBaseline(gM, 1);
var r1 = (a69[2] - 3 * b1.gap) / 4,
zy = a69[2] / 6;
if (a4i(a69[0], a69[1], r1, zy, "rgba(128,0,0,0.75)", .34, "Back", -1, -1), a4i(a69[0] + r1 + b1.gap, a69[1], r1, zy, "rgba(128,0,128,0.75)", .31, "Custom", -1, -1), a4i(a69[0] + 2 * (r1 + b1.gap), a69[1], r1, zy, "rgba(" + (aV.iq ? 128 :
0) + ",128,128,0.75)", .34, aV.iq ? "Reset" : "Maps", -1, -1), a4i(a69[0] + a69[2] - r1, a69[1], r1, zy, "rgba(0,128,0,0.75)", .34, "Start", -1, -1), !aV.iq) {
for (var jk, a6N = a69[2] / 10, r1 = (a69[2] - a6N - 2 * b1.gap) / 2, eJ = 0; eJ < this.iw.length; eJ++) jk = a69[1] + zy + b1.gap + eJ * (a6N + b1.gap), a4i(a69[0], jk, a6N, a6N, 1 < this.iw.length ? "rgba(128,0,0,0.75)" :
"rgba(90,90,90,0.75)", 0, null, -1), 1 < this.iw.length && a3g(a69[0], jk, a6N, !1), a4i(a69[0] + a6N + b1.gap, jk, r1, a6N, aa.kh, .4, this.a6O(eJ), this.iw[eJ].eo, -1), a4i(a69[0] + a69[2] - r1, jk, r1, a6N, aa.kh, .4, this
.yM(eJ), -1, this.iw[eJ].rk);
this.iw.length < 8 && (jk = a69[1] + zy + b1.gap + this.iw.length * (a6N + b1.gap), a4i(a69[0], jk, a6N, a6N, "rgba(0,128,20,0.75)", 0, null, -1, -1), a3g(a69[0], jk, a6N, !0)), aI.rI && aI.gL()
}
}, this.a6O = function(eJ) {
return 0 === eJ && 1 === this.iw[eJ].rk ? "You" : c.ik[this.iw[eJ].eo]
}, this.yM = function(eJ) {
return 1 === this.iw[eJ].rk ? "1 Player" : this.iw[eJ].rk + " Players"
}
}
function a6S() {
this.ef = 0, this.gA = 0, this.xi = null, this.ct = function() {
this.xi = [], this.xi.push({
fO: 0,
fP: 0,
x2: b8.cy.g0(),
a6T: null
}), this.xi.push({
fO: 0,
fP: 0,
x2: !1,
a6T: new a48
}), this.xi[1].a6T.a4E(), this.ef = this.xi.length, this.gA = 0
}, this.a10 = function() {
this.gA = Math.floor((b8.cy.g0() ? .063 : .04) * aL.g1), this.gA += 4 - this.gA % 4, this.xi[0].fO = b1.gap, this.xi[0].fP = aL.gF - this.gA - b1.gap;
for (var eJ = 1; eJ < this.ef; eJ++) this.xi[eJ].fO = this.xi[eJ - 1].fO + Math.floor(b8.cy.g0() ? 1.5 * b1.gap : 3.7 * b1.gap) + this.gA, this.xi[eJ].fP = this.xi[0].fP
}, this.uj = function(gD, gE) {
if (a0.g8())
for (var eJ = this.ef - 1; 0 <= eJ; eJ--)
if (gD >= this.xi[eJ].fO && gE >= this.xi[eJ].fP && gD < this.xi[eJ].fO + this.gA && gE < this.xi[eJ].fP + this.gA) return eJ;
return -1
}, this.a6U = function() {
for (var eJ = 1; 1 <= eJ; eJ--)
if (this.xi[eJ].a6T.rI) return !0;
return !1
}, this.resize = function() {
for (var eJ = 1; 1 <= eJ; eJ--) this.xi[eJ].a6T.resize()
}, this.uo = function() {
return !!this.xi[1].a6T.rI && (this.xi[1].a6T.fX(-5e3, -5e3), !0)
}, this.fX = function(gD, gE, a3o) {
if (a3o && this.xi[1].a6T.rI) return this.xi[1].a6T.fX(gD, gE), !0;
gD = this.uj(gD, gE);
if (a3o) {
if (0 === gD) return this.xi[gD].x2 = !this.xi[gD].x2, bA.dK.dL(2, this.xi[gD].x2 ? 1 : 0), aL.d8(0), !0;
if (1 <= gD && gD < 2) return this.xi[gD].a6T.ct(), b4.d3 = !0
}
return !1
}, this.uE = function(gD, gE) {
return !!this.xi[1].a6T.rI && (this.xi[1].a6T.uE(gD), !0)
}, this.uc = function() {
for (var eJ = 1; 1 <= eJ; eJ--)
if (this.xi[eJ].a6T.rI) return this.xi[eJ].a6T.uc(), !0;
return !1
}, this.gL = function() {
if (a0.g8()) {
gM.imageSmoothingEnabled = !0;
for (var eJ = this.ef - 1; 0 <= eJ; eJ--) gM.fillStyle = this.xi[eJ].x2 ? aa.l3 : aa.kh, gM.fillRect(this.xi[eJ].fO, this.xi[eJ].fP, this.gA, this.gA), 0 === eJ ? this.a6V(eJ, a0.get(15)) : 1 === eJ && this.a6W(), gM.setTransform(1,
0, 0, 1, 0, 0), gM.lineWidth = b1.rn, gM.strokeStyle = aa.gN, gM.strokeRect(this.xi[eJ].fO, this.xi[eJ].fP, this.gA, this.gA);
gM.imageSmoothingEnabled = !1
}
}, this.a6V = function(eJ, vK) {
var gap = .08 * this.gA,
zoom = (this.gA - 2 * gap) / vK.width;
gM.setTransform(zoom, 0, 0, zoom, this.xi[eJ].fO + gap, this.xi[eJ].fP + (this.gA - zoom * vK.height) / 2), gM.drawImage(vK, 0, 0)
}, this.a6W = function() {
gM.setTransform(1, 0, 0, 1, this.xi[1].fO, this.xi[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),
vR = Math.floor(687 * (fO + 1) * (fP + 1) % 256),
hp = Math.floor(651 * (fO + 1) * (fP + 1) % 256);
gM.fillStyle = "rgb(" + gY + "," + vR + "," + hp + ")", gM.fillRect(fO * eo, fP * eo, eo, eo)
}
}, this.a6X = function() {
for (var eJ = 1; 1 <= eJ; eJ--)
if (this.xi[eJ].a6T.rI) return void this.xi[eJ].a6T.gL()
}
}
function bn() {
var a6Y, gV, fz, a6Z;
function a6e(g4, name, a6f, g3) {
fz[g4] = name, gV[g4] = new Image, gV[g4].onload = function() {
! function(g4, a6f) {
let vx = null,
vw;
7 === a6f ? vw = aZ.v2.vz : 8 === a6f ? (vw = aZ.v2.w2, vx = .1) : 3 === a6f ? (vw = aZ.v2.w0, vx = .06) : 5 === a6f ? vw = aZ.v2.w3 : 6 === a6f ? vw = aZ.v2.vy : 4 === a6f && (vw = aZ.v2.w4);
gV[g4] = aZ.v2.vv(gV[g4], vw, vx)
}(g4, a6f), a6h()
}, gV[g4].onerror = function(dI) {
console.error("Error loading image at index", g4, "Error:", dI), a6h()
}, gV[g4].src = "data:image/png;base64," + g3
}
function a6h() {
a6Y--, a6c()
}
function a6c() {
0 === a6Y && (a6Y = -1, ay.g7(), j.wy(), aw.a3q([gV[8], gV[16], gV[7], gV[9], gV[10]], [2 !== b8.id, 1 !== b8.id, !0, !0, !0]), a9.pr.ct(), aJ.cu(), b4.d3 = !0, gV[7] = a6Z, gV[8] = a6Z, gV[9] = a6Z, gV[10] = a6Z)
}
this.ct = function() {
if (void 0 === gV) {
a6Y = 23, gV = new Array(a6Y), fz = new Array(a6Y), (a6Z = document.createElement("canvas")).width = 1, a6Z.height = 1;
for (var eJ = a6Y - 1; 0 <= eJ; eJ--) gV[eJ] = a6Z;
a6e(0, "exit", 6,
"iVBORw0KGgoAAAANSUhEUgAAAFYAAABGBAMAAACkrn5fAAAAHlBMVEUAAAAiJCI4OjdcXltoameIioejpqPExsPY29j///9xarZIAAAAyUlEQVRIx+3WQQqCQBTG8TdOB5DUI+S6nRcoPIFhu1bBHGGO4Any3TYxAkWTv1DSYr71D4b5mOE9kWmszkeC/ZptT6Ocl+xj5qgtbVR1iZn9VE2wU2uO2Jryhm2h2OaKbdZgu/NKrXVK7f6q1JpaqTWFYpvrUtqhPTTYpst0aBOv2Drltlxh392iu0U1t5I4biX13PZvF7+zvOFWihXWlNy+aqZ/M3LcivXcds1xK9kKK3GYAVtYe+8CZ/c/7Br9blSNcgn75O/tE26TasUvH0ImAAAAAElFTkSuQmCC"
), a6e(1, "victory", 6,
"iVBORw0KGgoAAAANSUhEUgAAADYAAAAKAQMAAADFMz9IAAAABlBMVEUAAAD///+l2Z/dAAAASUlEQVQI12M4lvj+++efLQzHkoH0jxaGI+yMbcIcZxiOpEHoMyD6xx+GHBB9oIIhA0Q/MGCoSAfSBQYMBskP2z9bAOlEIC1hAADJYSFMvxXXTAAAAABJRU5ErkJggg=="), a6e(2, "defeat", 6,
"iVBORw0KGgoAAAANSUhEUgAAADAAAAAKAQMAAADILU8PAAAABlBMVEUAAAD///+l2Z/dAAAAOklEQVQI12P48efPH5v/DEDyT81/hjMHDhxIkWA4AqV+/PgBpf5JgOWA1B0gdUyC4cefA3+A1AcwBQAlGyu1reW1ZgAAAABJRU5ErkJggg=="), a6e(3, "orders", 6,
"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
), a6e(4, "crown", 4,
"iVBORw0KGgoAAAANSUhEUgAAANIAAADSCAIAAACw+wkVAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAF0WlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDUgNzkuMTYzNDk5LCAyMDE4LzA4LzEzLTE2OjQwOjIyICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDIyLTEyLTIzVDE0OjA0OjQ3KzAzOjMwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDIyLTEyLTIzVDE0OjA0OjQ3KzAzOjMwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAyMi0xMi0yM1QxNDowNDo0NyswMzozMCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo1ZmFkNDE3NC03OWNiLTUwNDgtYWIyMi04NThmMGExODUzZTEiIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDo4ZDQ1NTIyYS02MDRlLWYxNDUtYWM3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
), a6e(5, "arena", 6, "iVBORw0KGgoAAAANSUhEUgAAACsAAAAKAQMAAAAXYzUQAAAABlBMVEUAAAD///+l2Z/dAAAARklEQVQI12OwqbdXOHyAoabe3uD4AYaURAOLYw4gygZE1dvpAKl/FXZq/g8Y/tUYGAOpY3kGxj4JDMfS7Q3PAKlke4MzCQCHpxoxsfTs8gAAAABJRU5ErkJggg=="),
a6e(6, "territorial.io", 6,
"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
), a6e(7, "youtube", 7, "iVBORw0KGgoAAAANSUhEUgAAADAAAAAKAQMAAADILU8PAAAABlBMVEUAAAD///+l2Z/dAAAAOklEQVQI12P48efPH5v/DEDyT81/hjMHDhxIkWA4AqV+/PgBpf5JgOWA1B0gdUyC4cefA3+A1AcwBQAlGyu1reW1ZgAAAABJRU5ErkJggg=="), a6e(8,
"googleplay", 3,
"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"
), a6e(9, "discord", 7, "iVBORw0KGgoAAAANSUhEUgAAADAAAAAKAQMAAADILU8PAAAABlBMVEUAAAD///+l2Z/dAAAAOklEQVQI12P48efPH5v/DEDyT81/hjMHDhxIkWA4AqV+/PgBpf5JgOWA1B0gdUyC4cefA3+A1AcwBQAlGyu1reW1ZgAAAABJRU5ErkJggg=="), a6e(10, "insta",
3, "iVBORw0KGgoAAAANSUhEUgAAADAAAAAKAQMAAADILU8PAAAABlBMVEUAAAD///+l2Z/dAAAAOklEQVQI12P48efPH5v/DEDyT81/hjMHDhxIkWA4AqV+/PgBpf5JgOWA1B0gdUyC4cefA3+A1AcwBQAlGyu1reW1ZgAAAABJRU5ErkJggg=="), a6e(11, "emojis", 4,
"iVBORw0KGgoAAAANSUhEUgAAADAAAAAKAQMAAADILU8PAAAABlBMVEUAAAD///+l2Z/dAAAAOklEQVQI12P48efPH5v/DEDyT81/hjMHDhxIkWA4AqV+/PgBpf5JgOWA1B0gdUyC4cefA3+A1AcwBQAlGyu1reW1ZgAAAABJRU5ErkJggg=="), a6e(12, "flags", 3,
"iVBORw0KGgoAAAANSUhEUgAAADAAAAAKAQMAAADILU8PAAAABlBMVEUAAAD///+l2Z/dAAAAOklEQVQI12P48efPH5v/DEDyT81/hjMHDhxIkWA4AqV+/PgBpf5JgOWA1B0gdUyC4cefA3+A1AcwBQAlGyu1reW1ZgAAAABJRU5ErkJggg=="), a6e(13, "bestTeam", 5,
"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
), a6e(14, "bestPlayer", 5,
"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
), a6e(15, "zoom", 6,
"iVBORw0KGgoAAAANSUhEUgAAAC4AAAAuBAMAAACllzYEAAAAHlBMVEUAAAAhIyA3ODZTVVJrbWqEhoOkpqO8v7vX2tb///8goTJXAAABaElEQVQ4y32Tu1ODQBDGL8QAdlg5dml8dZTa2TijXQpnIh2TwoQOxwehi2PB0flKYP/b7HFv5nALBn5337d7ewshXZyuKX2PST8egUW76OE7EJFa+BhJ9bSsUWFaeTV3GKHbn8EvlB79bjSv4VO8jUr4VdiHNnK938MHPie0Yh+ZLqmGuNsJ7CNURgewI5qPoRE86GwkJyWIBIfcUfJrmMm0sclDyDnPWmLyADacl8jnRbEGKIoiJRP4EmU2LJmIDfLvAf7z/37mv6IUm08pzbV/rx5f1pPA1Fn/iX3eS3nekAslz7gcGw9bg3uqn6Rup5oH+uaTLpO4r0SmZVuUFE2lfTc+z1qr9+BVtGJqzq1RHNfQdAtnrEW75UwuXOFgvj3crpCyDu6UIpP9fPHZU5XkiYVXvsXIPcc+VwspzY2pPorE/NgCfYK+QJ5+QFA6fjQt2A4IWuIWODixe2ELcuIUNJGL+zQle92exY5pfDIaAAAAAElFTkSuQmCC"
), a6e(16, "apple", 3,
"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"
), a6e(17, "loading", 6,
"iVBORw0KGgoAAAANSUhEUgAAAEEAAAAKAQMAAADRpqGpAAAABlBMVEUAAAD///+l2Z/dAAAATklEQVQI12M48E/OzoinjoGB4cA/O3tjnn8g1iEjY+aeAxCWofGZBijLCMqqNzRKmQdhGRubNINZyeYQ1p9/yXbGMv9yG0AsG2OemtwGAJcsIuxbPF7gAAAAAElFTkSuQmCC"), a6e(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=="
), a6e(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"
), a6e(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"
), a6e(21, "stalemate", 6,
"iVBORw0KGgoAAAANSUhEUgAAAEoAAAAKAQMAAAApRlpeAAAABlBMVEUAAAD///+l2Z/dAAAAX0lEQVQI12P4/afiwJ+G9vnvDzD8/vPjwJ+D/SDmgYQTBw487mnmYYAwv4OZBUDmj/89zfwNDBWJfw78uDv/MJApAWQeODn/MFABR2LPgQMHZ4CYPxJ7/vwBMvkPIDEB8vo+S3L7oMwAAAAASUVORK5CYII="
), a6e(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.a4x = function(name) {
for (var eJ = fz.length - 1; 0 <= eJ; eJ--)
if (fz[eJ] === name) return gV[eJ];
return a6Z
}, this.g8 = function() {
return a6Y <= 0
}, this.a6b = function() {
a6Y = 0, a6c()
}
}
function bo() {
var a6m, a6n, a6o, a6p, a6q, a6r, a6s, a6t, a6u, a6v, a6w, a6j = [224, 224, 224],
a6k = [
[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]
],
a6l = [
[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 a7I(em, a7K) {
a2z[em] = 0, a2z[em + 1] = 0, a2z[em + 2] = a7K, a2z[em + 3] = 0, a7L(em)
}
function a7L(em) {
var fO;
b0.kb || (fO = a1.jn(em), em = a1.gK(em), b0.kb = fO >= az.a2y[0] && fO <= az.a2y[2] && em >= az.a2y[1] && em <= az.a2y[3])
}
this.ct = function(r5) {
if (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), a6r = new Uint8Array(b.ej), a6s = new Uint8Array(b.ej), a6t = new Uint8Array(b.ej), a6u =
new Uint8Array(b.ej), a6v = new Uint8Array(b.ej), this.zv = new Uint8Array(b.ej), (a6w = new Int32Array(4))[0] = -4 * aq.eE, a6w[1] = 4, a6w[2] = -a6w[0], a6w[3] = -a6w[1], b.hT)
for (var pb, iT, eJ = b.ej - 1; 0 <= eJ; eJ--) iT = b5.tD[b5.iU[eJ]], pb = eX((a6l[iT][3] + 1) * aM.random(), aM.value(100)), a6m[eJ] = a6k[iT][0] + pb * a6l[iT][0], a6n[eJ] = a6k[iT][1] + pb * a6l[iT][1], a6o[eJ] = a6k[iT][2] + pb *
a6l[iT][2];
else aV.iq && aV.ir.a73 ? function(ds) {
var eJ;
for (eJ = b.qN - 1; 0 <= eJ; eJ--) a6m[eJ] = 4 * ds[eJ][0], a6n[eJ] = 4 * ds[eJ][1], a6o[eJ] = 4 * ds[eJ][2]
}(aV.ir.a73) : (function() {
for (var eJ = b.ej - 1; eJ >= b.ht; eJ--) a6m[eJ] = 4 * eX(64 * aM.random(), aM.value(100)), a6n[eJ] = 4 * eX(64 * aM.random(), aM.value(100)), a6o[eJ] = 4 * eX(64 * aM.random(), aM.value(100))
}(), function(r5) {
for (var eJ = b.ht - 1; 0 <= eJ; eJ--) a6m[eJ] = 4 * r5[eJ].a6J[0], a6n[eJ] = 4 * r5[eJ].a6J[1], a6o[eJ] = 4 * r5[eJ].a6J[2]
}(r5));
! function() {
var eJ, eo;
for (eJ = b.ej - 1; 0 <= eJ; eJ--) eo = eX(a6m[eJ] + a6n[eJ] + a6o[eJ], 3), a6m[eJ] += a7C(eo - a6m[eJ], 2), a6n[eJ] += a7C(eo - a6n[eJ], 2), a6o[eJ] += a7C(eo - a6o[eJ], 2), a6m[eJ] -= a6m[eJ] % 4, a6n[eJ] -= a6n[eJ] % 4, a6o[eJ] -=
a6o[eJ] % 4
}(),
function() {
for (var eJ = b.ej - 1; 0 <= eJ; eJ--) a6m[eJ] += eX(eJ, 128), a6n[eJ] += eX(eJ % 128, 32), a6o[eJ] += eX(eJ % 32, 8), a6p[eJ] = eJ % 8
}(), this.a79(),
function() {
for (var eJ = b.ej - 1; 0 <= eJ; eJ--) a6q[eJ] = a6m[eJ] < 32 ? a6m[eJ] + 32 : a6m[eJ] - 32, a6r[eJ] = a6n[eJ] < 32 ? a6n[eJ] + 32 : a6n[eJ] - 32, a6s[eJ] = a6o[eJ] < 32 ? a6o[eJ] + 32 : a6o[eJ] - 32
}(),
function() {
for (var eJ = b.ej - 1; 0 <= eJ; eJ--) a6t[eJ] = 235 < a6m[eJ] ? a6m[eJ] - 20 : a6m[eJ] + 20, a6u[eJ] = 235 < a6n[eJ] ? a6n[eJ] - 20 : a6n[eJ] + 20, a6v[eJ] = 235 < a6o[eJ] ? a6o[eJ] - 20 : a6o[eJ] + 20
}()
}, this.yx = function(player) {
var ds = am.dl;
return ds[0] = a6m[player], ds[1] = a6n[player], ds[2] = a6o[player], ds
}, this.a79 = function() {
for (var eJ = b.ej - 1; 0 <= eJ; eJ--) this.zv[eJ] = a6m[eJ] + a6n[eJ] + a6o[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.qU = function(fO, fP) {
return Math.floor(4 * (fP * aq.eE + fO))
}, this.qj = function(em) {
return this.q1(em + a6w[0]) || this.q1(em + a6w[1]) || this.q1(em + a6w[2]) || this.q1(em + a6w[3])
}, this.qh = function(em, player) {
return this.a7D(em + a6w[0], player) || this.a7D(em + a6w[1], player) || this.a7D(em + a6w[2], player) || this.a7D(em + a6w[3], player)
}, this.sW = function(player) {
return player < b.ht && 2 !== a6.vg[player]
}, this.ep = function(em) {
return 208 <= a2z[em + 3]
}, this.qo = function(player, em) {
return this.ep(em) && this.a7E(player, em)
}, this.a7E = function(player, em) {
return player === this.eq(em)
}, this.a7F = function(em) {
return 208 <= a2z[em + 3] && a2z[em + 3] < 224
}, this.hc = function(em) {
return 224 <= a2z[em + 3] && a2z[em + 3] < 248
}, this.qi = function(em) {
for (var eJ = 3; 0 <= eJ; eJ--)
if (this.fn(em + a6w[eJ])) return !0;
return !1
}, this.a7G = function(em) {
return 192 <= a2z[em + 3] && a2z[em + 3] < 208
}, this.a7H = function(em, player) {
return this.a7G(em) && player === this.eq(em)
}, this.eh = function(em) {
return this.ep(em) || this.er(em)
}, this.fn = function(em) {
return 0 === a2z[em + 3] && 2 === a2z[em + 2]
}, this.er = function(em) {
return 0 === a2z[em + 3] && 1 === a2z[em + 2]
}, this.q1 = function(em) {
return 0 === a2z[em + 3] && 3 === a2z[em + 2]
}, this.fm = function(em) {
return this.q1(em)
}, this.a7D = function(em, player) {
return this.er(em) || this.ep(em) && player !== this.eq(em)
}, this.eq = function(em) {
return a2z[em] % 4 * 128 + a2z[em + 1] % 4 * 32 + a2z[em + 2] % 4 * 8 + a2z[em + 3] % 8
}, this.qp = function(em) {
a7I(em, 1)
}, this.a7J = function(em) {
a7I(em, 2)
}, this.qg = function(em, player) {
a2z[em] = a6m[player], a2z[em + 1] = a6n[player], a2z[em + 2] = a6o[player], a2z[em + 3] = 208 + a6p[player], a7L(em)
}, this.ei = function(em, player) {
a2z[em] = a6q[player], a2z[em + 1] = a6r[player], a2z[em + 2] = a6s[player], a2z[em + 3] = 224 + a6p[player], a7L(em)
}, this.hd = function(em, player) {
a2z[em] = a6t[player], a2z[em + 1] = a6u[player], a2z[em + 2] = a6v[player], a2z[em + 3] = 248 + a6p[player], a7L(em)
}, this.a7M = function(em, player) {
a2z[em] = a6j[0] + a6m[player] % 4, a2z[em + 1] = a6j[1] + a6n[player] % 4, a2z[em + 2] = a6j[2] + a6o[player] % 4, a2z[em + 3] = 192 + a6p[player], a7L(em)
}
}
function bp() {
var fz, ed, ef, a7N, a7O;
function a7T() {
for (var a7b = 0, eJ = 1; eJ < 5; eJ++) a7b += ed[eJ] % 1024;
return a7b
}
function a7S() {
for (var eJ = 1; eJ < ef - a7O; eJ++) ed[eJ] = parseInt(ed[eJ])
}
function a7U() {
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.a7V()
}
function a7R() {
for (var eJ = ef - a7O - 1; 0 <= eJ; eJ--) ed[eJ] = i.sI(ed[eJ]);
ed[0] = i.sG(ed[0])
}
function a7e(name, value, a7f) {
var a7g = new Date,
a7f = (a7g.setTime(a7g.getTime() + Math.floor(31536e6 * a7f)), name + "=" + value + ";expires=" + a7g.toUTCString() + ";SameSite=Strict;Secure;path=/");
document.cookie = a7f
}
this.ct = function() {
if (0 === b8.id) {
a7O = 4, fz = [], ef = 10;
for (var eJ = a7N = 0; eJ < ef; eJ++) fz.push("u" + eJ);
ed = new Array(ef), ! function(a7c) {
for (var hg, em, a7d = a7c.split(";"), eJ = a7d.length - 1; 0 <= eJ; eJ--) {
for (a7d[eJ] = a7d[eJ].trim(), hg = 2; 0 <= hg; hg--) a7d[eJ] = a7d[eJ].replace(" ", "");
3 < a7d[eJ].length && (hg = fz.indexOf(a7d[eJ].substring(0, 2)), em = a7d[eJ].indexOf("="), 0 <= hg && 2 === em ? ed[hg] = a7d[eJ].substring(em + 1, a7d[eJ].length) : 0 < em && a7e(a7d[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
}() || (a7N = 2, a7R(), a7S(), a7T() !== ed[5])) && a7U()
}
}, this.a7V = function() {
if (2 === a7N) {
ed[1] = 0 === ed[1] ? Math.floor(1 + Math.random() * (Math.pow(2, 30) - 1)) : ed[1], ed[5] = a7T(), ! function() {
for (var eJ = 1; eJ < ef - a7O; eJ++) ed[eJ] = ed[eJ].toString()
}(), ! function() {
ed[0] = i.sF(ed[0]);
for (var eJ = ef - a7O - 1; 0 <= eJ; eJ--) ed[eJ] = i.sH(ed[eJ])
}();
for (var eJ = ef - 1; 0 <= eJ; eJ--) a7e(fz[eJ], ed[eJ], 1);
a7R(), a7S()
}
}, this.a7N = function() {
return a7N
}, this.a7Z = function(hg) {
a7N = hg, this.a7V()
}, this.a7a = function(eJ, value) {
0 === b8.id && (ed[eJ] = value)
}, this.te = function(eJ) {
return 0 !== b8.id ? 0 : ed[eJ]
}
}
function cC() {
var g4 = 0,
a7h = new Uint16Array(32);
function remove(x3) {
var eJ;
for (g4 -= 2, eJ = x3; eJ < g4; eJ += 2) a7h[eJ] = a7h[eJ + 2], a7h[eJ + 1] = a7h[eJ + 3]
}
this.ct = function() {
g4 = 0
}, this.iE = function() {
var eJ, hZ, h9;
if (0 !== g4)
if (0 === a6.jS[b.ea] || a3.a7i(b.ea) === a3.eK(b.ea)) g4 = 0;
else
for (eJ = g4 - 2; 0 <= eJ; eJ -= 2)(hZ = a7h[eJ]) < b.ej && 0 === a6.jS[hZ] ? remove(eJ) : (h9 = a7h[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 (a7h[eJ] === hZ) return a7h[eJ + 1] = Math.min(a7h[eJ + 1] + h9, 1023), 1;
return
}(hZ, h9) && 32 !== g4 && (a7h[g4] = hZ, a7h[g4 + 1] = h9, g4 += 2)
}
}
function a7k(player) {
a7l(player), a7m(player), a7n(player), d.eZ(player), f.jb(player), a3.clear(player), al.a7o.a7p(player)
}
function a7l(player) {
a1.sW(player) && (a6.t7[player] = b9.t1.a7q(), b.so++);
var a7r = a3.a7s(player);
0 === a7r.length ? player === b.ea && a7t() : (a7u(player, a7r), a7v(player, a7r))
}
function a7t() {
b2.ed[17] += a6.eb[b.ea] + a3.a7w(b.ea), v.show(!1, !1, !1, !0), u.a2R()
}
function a7u(player, a7r) {
for (var eJ = a7r.length - 1; 0 <= eJ; eJ--) a3.a7x(a7r[eJ], player)
}
function a7y(a7r) {
for (var g4 = 0, eJ = a7r.length - 1; 1 <= eJ; eJ--) a6.f5[a7r[eJ]] > a6.f5[a7r[g4]] && (g4 = eJ);
return g4
}
function a7v(player, a7r) {
var eJ, yV, a7z = a7r[a7y(a7r)];
if (9 === b.it && 1 === b5.iU[player] && aM.iN(8) && aN.a80(a7z), player === b.ea) 2 !== a6.vg[player] && l.sc(a7z, 1), a7t();
else {
for (yV = !1, eJ = a7r.length - 1; 0 <= eJ; eJ--)
if (a7r[eJ] === b.ea) return yV = !0, void l.sc(player, 0);
!yV && player < b.ht && 2 !== a6.vg[player] && l.yF(0, player, a7z)
}
}
function a7n(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.a81(player)
}
function a7m(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.qo(player, em) && (a1.qp(em), a6.f5[player]--)
}
function cH() {
var input;
function a82(dI) {
a84(dI.target.files)
}
function a84(files) {
files && 0 < files.length && aU.a85(files[0])
}
function a8A(dI) {
var iT = new Image;
iT.onload = a8B, iT.src = dI.target.result
}
function a8B(dI) {
var a8C, dI = dI.target,
gA = dI.width,
gF = dI.height;
4096 < gA || 4096 < gF || gA < 10 || gF < 10 ? (a8C = "Image w & h must be between 10 and 4096.", b8.ox ? b8.ox.showToast(a8C) : alert(a8C)) : (aV.ud(), aq.qB = aq.a89(), aq.a5k = 0, aq.eE = gA, aq.eF = gF, aq.pn.width = aq.eE, aq.pn.height =
aq.eF, aq.pj.drawImage(dI, 0, 0), a8C = aq.pj.getImageData(0, 0, aq.eE, aq.eF), aq.po = a8C.data)
}
function a8D(dI) {
dI.stopPropagation(), dI.preventDefault()
}
function a8E() {
return 0 === y.tp() || 2 === y.tp()
}
this.ct = function() {
(input = document.createElement("input")).type = "file", input.setAttribute("accept", ".json, .png, .jpg, .gif, .jpeg"), input.onchange = a82
}, this.a6L = function() {
input.click()
}, this.a83 = function(dI) {
a82(dI)
}, this.a85 = function(a86) {
var ds = a86.name.split("."),
a87 = ds[ds.length - 1].toLowerCase();
"json" === a87 ? aV.ov(a86) : "gif" !== a87 && "jpg" !== a87 && "jpeg" !== a87 && "png" !== a87 || (aq.ir.qA[aq.a89()].name = ds[0], (a87 = new FileReader).onload = a8A, a87.readAsDataURL(a86))
}, this.uM = function(dI) {
a8E() && (a8D(dI), dI.dataTransfer.dropEffect = "copy")
}, this.uN = function(dI) {
a8E() && (a8D(dI), a84(dI.dataTransfer.files))
}
}
function cF() {
this.a8F = null, this.ct = function() {
10 !== b.it ? this.a8F = null : this.a8F = new Uint32Array(b.ej)
}, this.iE = function() {
10 === b.it && this.tq()
}, this.tq = function() {
for (var em, target, a2c, a8F = this.a8F, r5 = iW, vk = a6.eb, eJ = iV - 1; 0 <= eJ; eJ--)(em = r5[eJ]) >= b.ht || (target = Math.max(eX(vk[em], 4), 2048), a2c = Math.max(a4.a2d(em), 100), a8F[em] += eX(a2c * target, 1e4), a8F[em] >
target && (a8F[em] = target))
}, this.vq = function(player, ha) {
return ha > this.a8F[player] ? (ha = this.a8F[player], this.a8F[player] = 0) : this.a8F[player] -= ha, ha
}
}
function cI() {
function a8A(dI) {
aV.iq = !0, aV.a8L(JSON.parse(dI.target.result)), aV.sT()
}
function a8R(g3, min, max, a8a) {
return "string" != typeof g3 || g3.length < min ? a8a : g3.length > max ? g3.substring(0, max) : g3
}
function a8M(df, min, max) {
return df = "number" == typeof df ? Math.floor(df) : min, Math.min(Math.max(df, min), max)
}
function a8P(df, ot) {
return "boolean" == typeof df ? df : ot
}
function a8T(df, ef, max, a8c) {
var eJ, ds, pb;
if (!Array.isArray(df) || df.length < 1) return null;
for (ds = new(8 === a8c ? Uint8Array : Uint16Array)(ef), pb = df.length, eJ = 0; eJ < ef; eJ++) ds[eJ] = a8M(df[eJ % pb], 0, max);
return ds
}
this.iq = !1, this.ir = null, this.ud = function() {
this.iq = !1, this.ir = null
}, this.a6I = function() {
this.ir.a73 && this.ir.a8G && (this.ir.a73[0] = aZ.color.vP(bA.j4.o2())), b.wW(this.ir.a8H, 0, this.a8I(), this.ir.wZ, !1, !1)
}, this.a8I = function() {
return [{
name: this.ir.a8J ? bA.dK.data[122].value : this.ir.a8K[0],
a6J: [0, 0, 0],
a6K: 0
}]
}, this.ov = function(a86) {
var a88 = new FileReader;
a88.onload = a8A, a88.readAsText(a86)
}, this.a8L = function(nC) {
this.ir = {}, this.ir.a6G = a8M(nC.numberPlayers, 1, 512), this.ir.a8N = a8M(nC.modeID, 0, 1), this.ir.qB = a8M(nC["gMap.mapID"], 0, aq.a8O - 1), this.ir.a5o = a8M(nC.seedMap, 0, 16383), this.ir.a8H = a8M(nC.seedSpawn, 0, 16383), this.ir
.wc = a8P(nC.selectableSpawn, !1), this.ir.a8J = a8P(nC.selectableName, !1), this.ir.a8G = a8P(nC.selectableColor, !1), aq.ir.qA[aq.a89()].name = this.ir.a8Q = a8R(nC.mapName, 1, 25, "Custom Map"), this.ir.xw = function(df) {
var eJ, ef;
if (!Array.isArray(df) || df.length < 1) return [];
for (ef = df.length, eJ = 0; eJ < ef; eJ++) df[eJ] = a8R(df[eJ], 0, 100, "");
return df
}(nC.description), this.ir.qI = a8T(nC.playerX, this.ir.a6G, 4096, 16), this.ir.qT = a8T(nC.playerY, this.ir.a6G, 4096, 16), this.ir.a8U = a8T(nC.playerTeam, this.ir.a6G, 8, 8), this.ir.is = a8T(nC.playerStrength, this.ir.a6G, 5, 8),
this.ir.a73 = function(df, ef) {
var eJ, ds, pb;
if (!Array.isArray(df) || df.length < 1) return null;
for (ds = new Array(ef), pb = df.length, eJ = 0; eJ < ef; eJ++) ds[eJ] = a8T(df[eJ % pb], 3, 63, 8);
return ds
}(nC.playerColor, this.ir.a6G), this.ir.a8K = function(df, ef) {
var eJ, ds, pb;
if (!Array.isArray(df) || df.length < 1) return null;
for (ds = new Array(ef), pb = df.length, eJ = 0; eJ < ef; eJ++) ds[eJ] = a8R(df[eJ % pb], 3, 26, "Bot");
return ds
}(nC.playerName, this.ir.a6G), this.ir.a8X = "string" == typeof nC.mapBase64 ? nC.mapBase64 : "", this.ir.a8J = this.ir.a8J || !this.ir.a8K, this.ir.wZ = 0 === this.ir.a8N ? 7 : 2 === this.ir.a8N ? 9 : 6, this.ir.qI = this.ir.qT ?
this.ir.qI : null
}, this.sT = function() {
! function(g3) {
var gV, gS, a8Z = "data:image/png;base64,";
if (g3.length <= a8Z.length) return;
aV.ir.qB = 0, aV.ir.a5o = 0, aq.d4(0, 0), g3.substring(0, a8Z.length) !== a8Z && (g3 = a8Z + 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.qB = aq.a89(), aq.a5k = 0, aq.pn.width = aq.eE, aq.pn
.height = aq.eF, aq.pj.drawImage(gV, 0, 0), gS = aq.pj.getImageData(0, 0, aq.eE, aq.eF), aq.po = gS.data)
}, gV.src = g3, aV.ir.a8X = "", 1
}(this.ir.a8X) && aq.d4(this.ir.qB, this.ir.a5o)
}, this.a8d = function() {
for (var max = 0, ef = this.ir.a6G, eJ = 0; eJ < ef; eJ++) this.ir.a8U[eJ] > max && (max = this.ir.a8U[eJ]);
return Math.max(0, max - 1)
}
}
function bq() {
var a8e, a8f, size, hZ, ha, id;
function a8g(player) {
return player < b.ht ? a8e * player : a8e * b.ht + a8f * (player - b.ht)
}
this.ct = function() {
a8e = b.ht < 16 ? 12 : 8, a8f = 4;
var ef = a8g(b.ej);
size = new Uint8Array(b.ej), hZ = new Uint16Array(ef), ha = new Uint32Array(ef), id = new Uint16Array(ef)
}, this.mw = function(zU, a8h) {
var a8i = this.fJ(zU, a8h);
this.fI(zU, a8h, 0), a8i = aZ.fU.mB(zU, a8i), zU === b.ea && (b2.ed[13] -= a8i)
}, this.clear = function(player) {
size[player] = 0
}, this.a7x = function(player, a8h) {
var ia, a8h = function(player, a8h) {
var eJ, pb = a8g(player);
for (eJ = size[player] - 1; 0 <= eJ; eJ--)
if (0 === id[pb + eJ] && hZ[pb + eJ] === a8h) return eJ;
return size[player]
}(player, a8h);
a8h !== size[player] && (ia = ha[a8g(player) + a8h], this.ee(player, a8h), this.hW(player, ia, b.ej))
}, this.hr = function(player, a8h) {
for (var pb = a8g(player), eJ = size[player] - 1; 0 <= eJ; eJ--)
if (0 === id[pb + eJ] && hZ[pb + eJ] === a8h) return !0;
return !1
}, this.iC = function(player) {
return player < b.ht ? size[player] < a8e : size[player] < a8f
}, this.eK = function(player) {
return size[player]
}, this.eQ = function(player, eJ) {
return hZ[a8g(player) + eJ]
}, this.eL = function(player, eJ) {
return id[a8g(player) + eJ]
}, this.jq = function(player, a8k) {
for (var pb = a8g(player), eJ = size[player] - 1; 0 <= eJ; eJ--)
if (id[pb + eJ] === a8k) return eJ;
return -1
}, this.eR = function(player, eJ) {
return ha[a8g(player) + eJ]
}, this.fJ = function(player, a8h) {
for (var pb = a8g(player), eJ = size[player] - 1; 0 <= eJ; eJ--)
if (0 === id[pb + eJ] && hZ[pb + eJ] === a8h) return ha[pb + eJ];
return 0
}, this.a7w = function(player) {
for (var pb = a8g(player), df = 0, eJ = size[player] - 1; 0 <= eJ; eJ--) df += ha[pb + eJ];
return df
}, this.a8l = function(player) {
for (var pb = a8g(player), df = 0, eJ = size[player] - 1; 0 <= eJ; eJ--) 0 === id[pb + eJ] && (df += ha[pb + eJ]);
return df
}, this.a7i = function(player) {
for (var pb = a8g(player), rk = 0, eJ = size[player] - 1; 0 <= eJ; eJ--) 0 < id[pb + eJ] && rk++;
return rk
}, this.fI = function(player, a8h, ia) {
for (var pb = a8g(player), eJ = size[player] - 1; 0 <= eJ; eJ--) 0 === id[pb + eJ] && hZ[pb + eJ] === a8h && (ha[pb + eJ] = ia)
}, this.f4 = function(player, eJ, ia) {
ha[a8g(player) + eJ] = ia
}, this.hW = function(player, ia, a8h) {
var eJ, pb = a8g(player);
for (a8h === b.ea && b2.ed[player < b.ht ? 6 : 5]++, eJ = size[player] - 1; 0 <= eJ; eJ--)
if (0 === id[pb + eJ] && hZ[pb + eJ] === a8h) return ha[pb + eJ] += ia, void(ha[pb + eJ] = ha[pb + eJ] > b.vm ? b.vm : ha[pb + eJ]);
hZ[pb + size[player]] = a8h, ha[pb + size[player]] = ia, id[pb + size[player]] = 0, size[player]++, player < b.ht && (a8h === b.ea ? l.sc(player, 5) : player === b.ea && a5.yH(a8h))
}, this.a8m = function(player, ia, a8k) {
var pb = a8g(player);
a6.jS[player] = 2, hZ[pb + size[player]] = 0, ha[pb + size[player]] = ia, id[pb + size[player]] = a8k, size[player]++
}, this.ee = function(player, g4) {
var hg, pb;
if (0 !== size[player])
for (pb = a8g(player), size[player]--, hg = g4; hg < size[player]; hg++) hZ[pb + hg] = hZ[pb + hg + 1], ha[pb + hg] = ha[pb + hg + 1], id[pb + hg] = id[pb + hg + 1]
}, this.a7s = function(player) {
for (var hg, pb, a7r = [], eJ = iV - 1; 0 <= eJ; eJ--)
for (pb = a8g(iW[eJ]), hg = size[iW[eJ]] - 1; 0 <= hg; hg--)
if (0 === id[pb + hg] && hZ[pb + hg] === player) {
a7r.push(iW[eJ]);
break
} return a7r
}
}
function br() {
var a8n, a8o, a8p, a8q, a8r, a8s;
this.ct = function() {
a8p = a8n = 10, a8q = a8o = 10
}, this.d2 = function() {
a8s = 512, a8r = new Uint16Array(a8s);
for (var eJ = 0; eJ < a8s; eJ++) a8r[eJ] = 100 + a8t(eX(25600 * eJ, a8s - 4), 9)
}, this.a1O = function() {
return a8q
}, this.iE = function() {
if (--a8p <= 0 && (a8p = a8n, function() {
var eJ, a8y, 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--) a8y = eX(a4.a2d(iW[eJ]) * a6.eb[iW[eJ]], 1e4), a6.eb[iW[eJ]] += a8y < 1 ? 1 : a8y, a4.ec(iW[eJ]);
b2.ed[9] += a6.eb[b.ea] - dd
}(), --a8q <= 0)) {
a8q = a8o;
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.a2d = function(player) {
var gY = a8r[eX((a8s - 1) * a6.f5[player], b.wS)],
a8x = (b4.iS() < 1920 && (gY = gY < (a8x = eX(100 * (13440 - 6 * b4.iS()), 1920)) ? a8x : gY), this.iH(player));
return a6.eb[player] > a8x && (gY -= eX(2 * gY * (a6.eb[player] - a8x), a8x)), gY < 0 ? 0 : 700 < gY ? 700 : gY
}, this.iH = function(player) {
player = 100 * a6.f5[player];
return player > b.wR ? b.wR : player
}, this.ec = function(player) {
var df = a6.f5[player] * b.vl;
a6.eb[player] = Math.min(Math.min(a6.eb[player], b.vm), df)
}, this.lo = function(player, lp) {
aZ.fU.mB(lp, am.dj[0]), b2.mC(player, lp), a5.a90(player, am.dj[0] + am.dj[1]), a5.mD(lp, am.dj[0]), aZ.fU.ml(player)
}, this.a91 = function() {
var ef = iV,
r5 = iW;
let pb = 0;
var vk = a6.eb;
for (let eJ = 0; eJ < ef; eJ++) pb += vk[r5[eJ]];
return pb
}, this.a92 = function(tT) {
var ef = iV,
r5 = iW;
let pb = 0;
var em, vk = a6.eb,
iU = b5.iU;
for (let eJ = 0; eJ < ef; eJ++) iU[em = r5[eJ]] === tT && (pb += vk[em]);
return pb
}
}
function bt() {
var a93, a94, a95, a96, a97, a98, a99, a9A, a9B, a9C, a9D, a9E, a9F, a9G, a9H, a9I, a9J, a9K, a9M, a9N, a9O, a9P, a9Q, a9W, a9X, a9L = null,
a9S = 0,
a9T = !1,
a9U = new Float32Array(4),
a9V = 0,
a1s = 400;
function nL() {
a9B = Math.floor(+aL.g1), a9C = Math.floor(.5 * a9B), a9L.width = aL.gA, a9L.height = aL.gF, a9M = a9L.getContext("2d", {
alpha: !0
}), aZ.g5.textAlign(a9M, 1), aZ.g5.textBaseline(a9M, 1), a9M.imageSmoothingEnabled = !0
}
function a9Y() {
var eJ, a9d;
for (gM.font = aZ.g5.g6(1, 100 * a9D), a9d = 80 / Math.floor(gM.measureText(aZ.jr.js(b.vm)).width), gM.font = aZ.g5.g6(1, 100), eJ = b.ej - 1; 0 <= eJ; eJ--) a9A[eJ] = 100 / Math.floor(gM.measureText(a6.jt[eJ]).width), a99[eJ] = Math.min(a9d,
a9A[eJ])
}
function a9e(eJ) {
return !bA.dK.data[7].value || a6.eb[eJ] < 1e6 ? 1 : a6.eb[eJ] < 1e7 ? a9U[0] : a9U[Math.min(Math.floor(Math.log10(a6.eb[eJ])) - 6, 3)]
}
function a9c(gW) {
a9K = !1, a9J = 1, a9H = a9I = 0, gW.clearRect(0, 0, aL.gA, aL.gF);
for (var jg, jh, eJ, a9j, fontSize, ji, jj = hA / hB, jk = hC / hB, jl = (aL.gA + hA) / hB, jm = (aL.gF + hC) / hB, a9k = 0 !== a6.jS[b.ea] && a1.sW(b.ea), hg = iV - 1; 0 <= hg; hg--) eJ = iW[hg], (fontSize = Math.floor(a9G * hB * a9e(eJ) *
a99[eJ] * a97[eJ])) < a9F || a9B <= fontSize || a95[eJ] + a97[eJ] > jj && a95[eJ] < jl && a96[eJ] + a98[eJ] > jk && a96[eJ] < jm && (jg = Math.floor(aL.gA * (a95[eJ] + a97[eJ] / 2 - jj) / (jl - jj)), jh = Math.floor(aL.gF * (a96[eJ] +
a98[eJ] / 2 - jk) / (jm - jk) - .1 * fontSize), a9j = a1.zv[eJ], gW.font = aZ.g5.g6(1 === a6.vg[eJ] ? 4 : 1, fontSize), gW.fillStyle = a9l(fontSize, a9j % 2), bA.dK.data[7].value ? a9m(gW, eJ, fontSize, jg, jh, a9j) : a9n(eJ,
fontSize, jg, jh, gW), a9K = !0, 0 < a9O[eJ] ? function(jg, jh, fontSize, eJ, gW) {
0 === a1Q[eJ] ? a9.rF.rv(a9N[eJ]) ? (function(jg, jh, fontSize, player, m0, gW) {
for (var qM = jh, gU = (gW.globalAlpha = a9v(fontSize), a9e(player) * (bA.dK.data[7].value ? a9V : a9A[player])), qL = jg - .5 * fontSize / gU - .9 * fontSize, hp = 0; hp < 2; hp++) gW.fillText(a9.rF.rp(m0), qL, qM),
qL = jg + .5 * fontSize / gU + .9 * fontSize;
gW.globalAlpha = 1
}(jg, jh, fontSize, eJ, a9N[eJ], gW), a9p(jg, jh, fontSize, 0, 0, gW)) : a9.rF.rx(a9N[eJ]) ? (a9y(jg, jh, fontSize, a9N[eJ], 0, gW), a9p(jg, jh, fontSize, 0, 1, gW)) : (a9y(jg, jh, fontSize, a9N[eJ], 1, gW), a9p(jg, jh,
fontSize, 1, 0, gW)) : a9y(jg, jh, fontSize, a9N[eJ], 0, gW)
}(jg, jh, fontSize, eJ, gW) : 0 === a1Q[eJ] && a9p(jg, jh, fontSize, 0, 0, gW), a9k && (0 < a9O[eJ + b.ej] || 0 < a9O[eJ + 2 * b.ej] || 0 < a9O[eJ + 3 * b.ej] || 0 < a9O[eJ + 4 * b.ej]) && function(jg, jh, fontSize, eJ, gW) {
var iT, rk = -1;
for (iT = 4; 1 <= iT; iT--) 0 < a9O[eJ + iT * b.ej] && rk++;
for (iT = 1; iT < 5; iT++) 0 < a9O[eJ + iT * b.ej] && (! function(jg, jh, fontSize, iT, eJ, a9t, dd, gW) {
let vK;
if (1 === iT) {
eJ = a9N[eJ + b.ej];
if (!a9.rF.rw(eJ)) return function(jg, jh, fontSize, m0, a9t, gW) {
gW.globalAlpha = a9v(fontSize);
jg -= .534 * a9t * fontSize, a9t = jh + 1.59 * fontSize;
gW.font = aZ.g5.g6(0, .785 * fontSize), gW.fillText(a9.rF.rp(m0), jg, a9t), gW.globalAlpha = 1
}(jg, jh, fontSize, eJ, a9t, gW);
vK = a9.pr.rM[eJ - 1024 + a9.rF.rZ]
} else vK = 2 === iT ? j.x0()[4].gV[+(dd < 255)] : (3 === iT ? j.x0()[5] : j.x0()[6]).gV[0];
eJ = a9.pr.rN, dd = .8 * fontSize / eJ, iT = jg - .5 * dd * eJ - .534 * a9t * fontSize, jg = jh + 1.4 * dd * eJ;
gW.setTransform(dd, 0, 0, dd, iT, jg), gW.globalAlpha = a9v(fontSize), gW.drawImage(vK, 0, 0), gW.globalAlpha = 1, gW.setTransform(1, 0, 0, 1, 0, 0)
}(jg, jh, fontSize, iT, eJ, rk, a9O[eJ + iT * b.ej], gW), rk -= 2)
}(jg, jh, fontSize, eJ, gW), (ji = a9D * fontSize) < a9F || (gW.font = aZ.g5.g6(1, ji), jh += Math.floor(.78 * fontSize), bA.dK.data[7].value ? a9n(eJ, ji, jg, jh, gW) : a9m(gW, eJ, ji, jg, jh, a9j)))
}
function a9n(eJ, fontSize, fO, fP, gW) {
var ___id = eJ;
gW.fillText(a6.jt[eJ], fO, fP), eJ < b.ht && 2 !== a6.vg[eJ] || (eJ = fontSize / a9A[eJ], gW.fillRect(fO - .5 * eJ, fP + aZ.g5.rq * 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 a9m(gW, eJ, fontSize, jg, jh, a9j) {
var ___id = eJ;
eJ = aZ.jr.js(a6.eb[eJ]);
a9j >> 1 & 1 ? (gW.lineWidth = .05 * fontSize, gW.strokeStyle = a9l(fontSize, a9j % 2), gW.strokeText(eJ, jg, jh)) : (1 < a9j && (gW.lineWidth = .12 * fontSize, gW.strokeStyle = a9l(fontSize, a9j), 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 a9p(jg, jh, fontSize, a9t, a9u, gW) {
var xZ = .95 * fontSize / a9Q,
jg = jg - .5 * xZ * a9P + .8 * a9t * fontSize,
a9t = jh - 1.76 * xZ * a9Q - (.35 - aZ.g5.rq + .7) * a9u * fontSize;
gW.setTransform(xZ, 0, 0, xZ, jg, a9t), gW.globalAlpha = a9v(fontSize), gW.drawImage(a0.get(4), 0, 0), gW.globalAlpha = 1, gW.setTransform(1, 0, 0, 1, 0, 0)
}
function a9y(jg, jh, fontSize, m0, a9t, gW) {
if (gW.globalAlpha = a9v(fontSize), a9.rF.rw(m0)) {
var gP = a9.pr.rN,
xZ = 1.1 * fontSize / gP;
gW.setTransform(xZ, 0, 0, xZ, jg - .5 * xZ * gP - .8 * a9t * fontSize, jh - 1.55 * xZ * gP), gW.drawImage(a9.pr.rM[m0 - 1024 + a9.rF.rZ], 0, 0), gW.setTransform(1, 0, 0, 1, 0, 0)
} else {
let qL = jg - .8 * a9t * fontSize,
qM = jh - (.35 - aZ.g5.rq + 1) * fontSize;
gW.fillText(a9.rF.rp(m0), qL, qM)
}
gW.globalAlpha = 1
}
function a9l(fontSize, a9j) {
return a9C <= fontSize && fontSize < a9B ? b5.aA0[a9j] + a9v(fontSize).toFixed(3) + ")" : b5.aA1[a9j]
}
function a9v(fontSize) {
return a9C <= fontSize && fontSize < a9B ? 1 - (fontSize - a9C) / (a9B - a9C) : 1
}
function aAA(gU, gA) {
return 1 + Math.floor(a9E * gU * gA)
}
function aA7(eJ) {
for (var left = a95[eJ], hg = a95[eJ] - a6.i2[eJ] - 1; 0 <= hg; hg--)
if (!aAC(eJ, --left, a96[eJ], a98[eJ])) {
left++;
break
} var right = a95[eJ];
for (hg = a6.i1[eJ] - a95[eJ] - a97[eJ]; 0 <= hg; hg--)
if (!aAC(eJ, ++right + a97[eJ] - 1, a96[eJ], a98[eJ])) {
right--;
break
} var fO = Math.floor((left + right) / 2),
top = a96[eJ];
for (hg = a96[eJ] - a6.i5[eJ] - 1; 0 <= hg; hg--)
if (!aAD(eJ, fO, --top, a97[eJ])) {
top++;
break
} var bottom = a96[eJ];
for (hg = a6.i4[eJ] - a96[eJ] - a98[eJ]; 0 <= hg; hg--)
if (!aAD(eJ, fO, ++bottom + a98[eJ] - 1, a97[eJ])) {
bottom--;
break
} var fP = Math.floor((top + bottom) / 2);
aA4(eJ, fO, fP, a97[eJ], a98[eJ]) && (a95[eJ] = fO, a96[eJ] = fP)
}
function aA4(player, fO, fP, gA, gF) {
eo = Math.floor(.2 * gA);
for (var eo, iT = fO + gA - 1; fO <= iT; iT--)
if (!aAC(player, iT, fP, gF)) return;
for (iT = fP + gF - 1 - (eo = (eo = Math.floor(.25 * gF)) < 1 ? 1 : eo); fP + eo <= iT; iT--)
if (!aAD(player, fO, iT, gA)) return;
return 1
}
function aAC(player, fO, fP, gF) {
return a1.qo(player, 4 * (fP * aq.eE + fO)) && a1.qo(player, 4 * ((fP + gF - 1) * aq.eE + fO))
}
function aAD(player, fO, fP, gA) {
return a1.qo(player, 4 * (fP * aq.eE + fO)) && a1.qo(player, 4 * (fP * aq.eE + fO + gA - 1))
}
this.ct = function() {
if (a1s = 0 === (a1s = bA.dK.data[11].value) ? 280 : 1 === a1s ? 187 : 112, a9K = !1, a9G = .88, a9D = .5, a9E = 1.8, a9F = 12 - 3 * bA.dK.data[9].value, a94 = a93 = 0, a95 = new Uint16Array(b.ej), a96 = new Uint16Array(b.ej), a97 =
new Uint16Array(b.ej), a98 = new Uint16Array(b.ej), a99 = new Float32Array(b.ej), a9A = new Float32Array(b.ej), a9N = new Uint16Array(2 * b.ej), a9O = new Uint8Array(5 * b.ej), a9W = new Uint8Array(b.ej), a9X = new Uint8Array(b.ej),
a9L = a9L || document.createElement("canvas"), nL(), a9I = a9H = 0, a9J = 1, bA.dK.data[7].value) {
var eJ, a9d;
for (a9Y(), gM.font = aZ.g5.g6(1, 100), a9d = 100 / Math.floor(gM.measureText("900 000").width), eJ = b.ej - 1; 0 <= eJ; eJ--) a99[eJ] = Math.min(a9d, 2 * a9A[eJ]);
a9V = a9d, a9U[0] = 100 / (a9d * Math.floor(gM.measureText("5 000 000").width)), a9U[1] = 100 / (a9d * Math.floor(gM.measureText("50 000 000").width)), a9U[2] = 100 / (a9d * Math.floor(gM.measureText("500 000 000").width)), a9U[3] =
100 / (a9d * Math.floor(gM.measureText("1 000 000 000").width))
} else a9Y();
! function() {
var eJ;
for (eJ = b.ej - 1; 0 <= eJ; eJ--) a6.f5[eJ] < 12 ? (a95[eJ] = a6.i2[eJ] + 1, a96[eJ] = a6.i5[eJ] + 1, a97[eJ] = 1, a98[eJ] = 1) : (a95[eJ] = a6.i2[eJ], a96[eJ] = a6.i5[eJ] + 1, a97[eJ] = 4, a98[eJ] = 2);
if (b.fj)
for (eJ = 0; eJ < b.ht; eJ++) a97[eJ] = 0;
a9P = a0.get(4).width, a9Q = a0.get(4).height
}()
}, this.a90 = function(em, yX) {
yX > 18 * a6.f5[em] ? (a9X[em] = 6, a1.zv[em] = 2 + a1.zv[em] % 2) : (a9W[em] = 4, (a1.zv[em] < 2 || 3 < a1.zv[em]) && (a1.zv[em] = 6 + a1.zv[em] % 2))
}, this.mD = function(em, yX) {
yX > 6 * a6.f5[em] ? (a9X[em] = 6, a1.zv[em] = 4 + a1.zv[em] % 2) : (a9W[em] = 4, (a1.zv[em] < 4 || 5 < a1.zv[em]) && (a1.zv[em] = 8 + a1.zv[em] % 2))
}, this.resize = function() {
nL(), a9c(a9M)
}, this.wN = function() {
for (var eJ = 0; eJ < b.ht; eJ++) a6.i1[eJ] - a6.i2[eJ] != 3 || a6.i4[eJ] - a6.i5[eJ] != 3 ? (a95[eJ] = a6.i2[eJ] + (a6.i1[eJ] !== a6.i2[eJ] ? 1 : 0), a96[eJ] = a6.i5[eJ], a97[eJ] = 1, a98[eJ] = 1) : (a95[eJ] = a6.i2[eJ], a96[eJ] = a6.i5[
eJ] + 1, a97[eJ] = 4, a98[eJ] = 2)
}, this.my = function(player, g4, a9f) {
! function(player, g4, a9f) {
player += g4 * b.ej;
0 === g4 ? a9N[player] === a9f && 0 < a9O[player] ? a9O[player] = 0 : (a9N[player] = a9f, a9O[player] = a9.rF.rv(a9f) ? 255 : 64) : 1 === g4 ? (a9O[player] = 64, a9N[player] = a9f) : a9O[player] = a9f
}(player, g4, a9f), 2 === b.sm && this.jC(!0)
}, this.gL = function() {
a9K && (1 !== a9J ? (gM.imageSmoothingEnabled = !0, gM.setTransform(a9J, 0, 0, a9J, 0, 0), gM.drawImage(a9L, -a9H / a9J, -a9I / a9J), gM.setTransform(1, 0, 0, 1, 0, 0), gM.imageSmoothingEnabled = !1) : gM.drawImage(a9L, -a9H, -a9I))
}, this.a0e = function(h1, h4) {
a9H += h1, a9I += h4
}, this.uE = function(h1, h4) {
a5.a0e(h1, h4)
}, this.zoom = function(fy, gD, gE) {
a9J *= fy, a9H = (a9H + gD) * fy - gD, a9I = (a9I + gE) * fy - gE
}, this.jC = function(yg) {
return !(!a9T && !yg && b4.dc < a9S + (1 === a9J && 0 === a9H && 0 === a9I && (b.wp() || b.fj || 2 === b.sm) ? 1e3 : a1s) || (a9T = !1, a9S = b4.dc, a9c(a9M), 0))
}, this.jo = function(eJ) {
return a9e(eJ) * a99[eJ]
}, this.a9i = function(player) {
return a99[player]
}, this.iE = function() {
b4.iS() % 10 == 9 && (a9T = b.wr() && !b.wp()), !b.wp() && 4 <= ++a94 && function() {
var eJ, hg, hp;
for (a94 = 0, hp = 4; 1 <= hp; hp--)
for (hg = iV - 1; 0 <= hg; hg--) eJ = iW[hg] + hp * b.ej, 0 < a9O[eJ] && a9O[eJ] < 255 && a9O[eJ]--;
if (2 !== b.sm)
for (hg = iV - 1; 0 <= hg; hg--) eJ = iW[hg], 0 < a9O[eJ] && a9O[eJ] < 255 && a9O[eJ]--
}();
for (var ef = Math.floor(.1 * iV), eJ = a93 + (ef = iV < (ef = ef < 8 ? 8 : ef) ? iV : ef) - 1; a93 <= eJ; eJ--) ! function(eJ) {
var gU = a9e(eJ) * a99[eJ];
0 < a97[eJ] && aA4(eJ, a95[eJ], a96[eJ], a97[eJ], a98[eJ]) ? ! function(eJ) {
for (var fO, fP, gA, gF, fg = !1, hp = 0; hp < 8; hp++) {
if (gA = a97[eJ] + 2, gF = a98[eJ] + 2, gA > a6.i1[eJ] - a6.i2[eJ] + 1 || gF > a6.i4[eJ] - a6.i5[eJ] + 1) return fg;
if (fO = a95[eJ] - 1, fP = a96[eJ] - 1, !aA4(eJ, fO, fP, gA, gF)) return fg;
a95[eJ] = fO, a96[eJ] = fP, a97[eJ] = gA, a98[eJ] = gF, fg = !0
}
return fg
}(eJ) && function(eJ, gU) {
for (var fO, fP, gA, gF, fg = !1, a3p = a97[eJ], kO = 1 + Math.floor(.02 * a3p), hp = 1; hp < 5; hp++) {
if ((gA = a3p + hp * kO) > a6.i1[eJ] - a6.i2[eJ] + 1) return fg;
if ((gF = aAA(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)), aA4(eJ, fO, fP, gA, gF) && (a95[eJ] = fO, a96[eJ] = fP, a97[
eJ] = gA, a98[eJ] = gF, fg = !0)
}
return fg
}(eJ, gU) && aA7(eJ) : ! function(eJ, gU) {
var gF, fO = a95[eJ] + 1,
fP = a96[eJ] + 1,
gA = a97[eJ] - 2;
for (;;) {
if (gA < 1) {
a97[eJ] = 0;
break
}
if (gF = aAA(gU, gA), aA4(eJ, fO, fP, gA, gF)) return a95[eJ] = fO, a96[eJ] = fP, a97[eJ] = gA, a98[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,
aAB = Math.floor(.02 * hi);
for (kT = -6 * (aAB = aAB < 1 ? 1 : aAB), hp = hi; kT <= hp; hp -= aAB)
if (gF = aAA(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)), aA4(eJ, fO, fP, gA,
gF)) return a95[eJ] = fO, a96[eJ] = fP, a97[eJ] = gA, a98[eJ] = gF
}(eJ, gU) : aA7(eJ)
}(iW[eJ % iV]);
a93 = (a93 + 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.zv[em] < 2 || ((gi = Math.max(a9W[em] - 1, 0)) === (gj = Math.max(a9X[em] - 1, 0)) ? 0 === gi && (a1.zv[em] %= 2) : 0 === gj && a1.zv[em] < 6 && (a1.zv[em] += 4), a9W[em] = gi, a9X[
em] = gj)
}, this.yH = function(player) {
var eJ = player + 2 * b.ej,
dd = a9O[eJ];
return 0 < dd && (l.ss(50, player), a9O[eJ] = 0, 255 === dd)
}, this.xK = function(player) {
return 255 === a9O[player + 2 * b.ej]
}
}
function bv() {
var fz, aAE;
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, aAF = ["K ", " Y", "E ", " Z", " z", " s", "S "],
aAG = ["Kingdom of ", " Kingdom", "Empire of ", " Empire", " Dynasty", " Sultanate", "Sultanate of "];
for (aAE =
"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 = aAF.length - 1; 0 <= hg; hg--) fz[eJ] = fz[eJ].replace(aAF[hg], aAG[hg]);
if (settings.realisticNames) fz = realisticNames;
}, this.d4 = function() {
var eJ;
if (aV.iq && aV.ir.a8K)
for (eJ = b.ht; eJ < b.ej; eJ++) a6.jt[eJ] = a6.tQ[eJ] = aV.ir.a8K[eJ % b.qN];
else(9 === b.it ? function() {
var eJ, gY = aM.random(),
ef = fz.length,
pb = b.ht + aN.aAL;
for (eJ = pb - 1; eJ >= b.ht; eJ--) a6.jt[eJ] = a6.tQ[eJ] = fz[(eJ + gY) % ef];
for (ef = aAE.length, eJ = pb; eJ < b.ej; eJ++) a6.jt[eJ] = a6.tQ[eJ] = aAE[eJ % ef]
} : b.iv ? function() {
var eJ, gY = aM.random();
for (eJ = b.ht; eJ < b.ej; eJ++) a6.jt[eJ] = a6.tQ[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.tQ[eJ] = fz[(eJ + gY) % ef]
})()
}
}
function cG() {
this.aAM = [], this.aAN = [], this.ct = function() {
this.aAM = [], this.aAN = []
}, this.iE = function() {
0 <= this.aAM.length && this.aAO(this.aAM), 0 <= this.aAN.length && this.aAO(this.aAN)
}, this.aAO = 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.x9 = function(id, r5, aAP) {
return this.aAQ(this.aAM, id, r5, aAP)
}, this.aAR = function(id, r5, aAP) {
return this.aAQ(this.aAN, id, r5, aAP)
}, this.aAQ = function(ds, id, r5, aAP) {
return ! function(ds, id, r5) {
var eJ, q4;
for (eJ = r5.length - 1; 0 <= eJ; eJ--)
for (q4 = ds.length - 1; 0 <= q4; q4--)
if (ds[q4].player === r5[eJ] && id === ds[q4].id) return 1;
return
}(ds, id, r5) && (aAP && function(ds, id, r5) {
var eJ;
for (eJ = r5.length - 1; 0 <= eJ; eJ--) ds.push({
player: r5[eJ],
id: id,
dc: 384
})
}(ds, id, r5), !0)
}
}
function bu() {
this.tQ = new Array(b.ej), this.jt = new Array(b.ej), this.vg = 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.qc = 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.t7 = new Uint16Array(b.ej), this.aAU = new Uint8Array(b.ej), this.ct = function(r5) {
for (let eJ = r5.length - 1; 0 <= eJ; eJ--) this.jt[eJ] = this.tQ[eJ] = r5[eJ].name, this.vg[eJ] = r5[eJ].a6K;
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.qc.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.t7.fill(0), this.aAU.fill(0)
}
}
function cE() {
this.yj = 0, this.r5 = null, this.ct = function() {
this.yj = 0, this.r5 = []
}, this.aAV = function(player) {
this.r5.push(player), b.so++, a6.vg[player] = 2, a6.t7[player] = b9.t1.a7q(), player === b.ea && (v.show(!1, !1), u.a2R()), a5.yH(player)
}, this.a81 = function(player) {
var eJ, r5;
if (2 !== a6.vg[player])
for (eJ = (r5 = this.r5).length - 1; 0 <= eJ; eJ--)
if (r5[eJ] === player) return void r5.splice(eJ, 1)
}, this.iE = function() {
b.iv || (30 === this.yj && 2140 <= b4.iS() && this.aAW(), this.yj = (this.yj + 1) % 60)
}, this.aAW = function() {
for (var r5 = this.r5, eJ = r5.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))
}(r5[eJ], 12)
}
}
function wh() {
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() {
aAY(), aAZ()
}
function aAZ() {
for (var eJ = iV - 1; 0 <= eJ; eJ--) 0 === a6.jS[iW[eJ]] && aAa(eJ)
}
function aAa(eJ) {
iV--;
for (var hg = eJ; hg < iV; hg++) iW[hg] = iW[hg + 1]
}
function aAY() {
for (let eJ = iV - 1; 0 <= eJ; eJ--) {
var dd, em = iW[eJ];
a6.f5[em] <= eX(a6.qc[em], 4) ? a6.f5[em] <= 1e3 && (2 !== a6.jS[em] || 0 === a6.f5[em]) && a7k(em) : a6.f5[em] >= a6.qc[em] ? (dd = a6.f5[em], 250 <= (a6.qc[em] = dd) && (a6.aAU[em] = 1)) : a6.qc[em] -= Math.max(1, eX(a6.qc[em] - a6.f5[em],
1e3))
}
}
function aAb() {
for (var a7b = 0, eJ = iV - 1; 0 <= eJ; eJ--) a7b += a6.eb[iW[eJ]];
return a7b % 4096
}
function bw() {
var aAc;
this.iy = null, this.ct = function() {
aAc = [], 9 === b.it && this.aAd()
}, this.aAd = function() {
var eJ, aAe = [50, 74, 95, 150, 190, 333];
if (this.aAL = 0, this.iy = [0, 0, 0, 0, 0, 0], b.ht <= aAe[0]) this.iy[0] = Math.max(aj.fK(b.ht * (512 - b.ht), aAe[0]), 13), b.ip = this.iy[0];
else
for (b.ip = b.ej - b.ht, eJ = 1; eJ < 6; eJ++)
if (b.ht <= aAe[eJ]) {
this.iy[eJ - 1] = 512 - aAe[eJ - 1] - eX((512 - aAe[eJ - 1]) * (b.ht - aAe[eJ - 1]), aAe[eJ] - aAe[eJ - 1]), this.iy[eJ] = 512 - b.ht - this.iy[eJ - 1];
break
} b.qN = b.ht + b.ip
}, this.a80 = function(player) {
aAc.push({
player: player,
rk: 14 + aM.hj(20)
})
}, this.iE = function() {
var eJ;
if (9 === b.it)
for (eJ = aAc.length - 1; 0 <= eJ; eJ--) --aAc[eJ].rk <= 0 && (a5.my(aAc[eJ].player, 0, a9.rF.rc + a9.rF.rr), aAc.splice(eJ))
}
}
function cW() {
function aAk(eJ) {
return void 0 !== aq.ir.qA[eJ].aAs
}
function aAi(eJ) {
return 1 !== eJ && !aAk(eJ) && eJ !== aq.a89()
}
this.a8O = 21, this.eE = 0, this.eF = 0, this.pn = null, this.pj = null, this.pk = null, this.po = null, this.qB = 0, this.a5k = 0, this.pl = !1, this.pm = new aAg, this.ir = new aAh, this.ct = function() {
this.ir.ct()
}, this.d4 = function(map, a5o) {
((map %= this.a8O) !== this.qB || aAi(this.qB) && a5o !== this.a5k) && (this.pl = !1, this.pm.a5w(), aM.we(map), this.qB = map, this.a5k = a5o, aAi(map) && (aq.ir.qA[map].aAj = a5o), aAk(this.qB) ? aAl() : (map = aq.ir.qA[this.qB], this
.eE = map.gA, this.eF = map.gF, aM.we(map.aAj), aB.d4([this.eE, this.eF, map.jx, map.ju]), aAm(), aA.aAn(), aB.aAo()))
}, this.aAp = function(eJ) {
return 3 === eJ || 7 === eJ || 9 === eJ || eJ === this.a89()
}, this.aAq = function(eJ) {
return 2 === eJ || 7 === eJ || 9 === eJ
}, this.aAr = function(eJ) {
return 1 === eJ
}, this.a89 = function() {
return this.a8O
}
}
function aAg() {
function aB1() {
aq.pm.iE()
}
function aB7(em, aB6) {
0 < aB6 && (aq.po[em] += aB6, aq.po[em + 1] += aB6, aq.po[em + 2] += aB6)
}
function fn(em) {
return aq.po[em + 2] > aq.po[em] && aq.po[em + 2] > aq.po[em + 1]
}
this.a0p = -1, this.db = 0, this.aAt = 0, this.aAu = 8, this.aAv = 32, this.aAw = 8, this.aAx = 32, this.aAy = [0, 0], this.zv = [0, 0, 0, 0], this.hI = null, this.aAz = !0, this.aB0 = !1, this.a5w = function() {
-1 !== this.a0p && clearTimeout(this.a0p), this.a0p = -1, this.hI = null, aB.aAo()
}, this.ct = function() {
7 === y.tp() || this.aB0 || (this.aAz = !0, this.db = 0, this.aAt = 1, this.aAy = [aq.ir.qA[aq.qB].q9[0], aq.ir.qA[aq.qB].qC[0]], this.zv = [aq.ir.qA[aq.qB].aAs[3], aq.ir.qA[aq.qB].aAs[4], aq.ir.qA[aq.qB].aAs[5], aq.ir.qA[aq.qB].aAs[6]],
this.aAu = aq.ir.qA[aq.qB].aAs[7], this.aAv = aq.ir.qA[aq.qB].aAs[8], this.aAw = aq.ir.qA[aq.qB].aAs[9], this.aAx = aq.ir.qA[aq.qB].aAs[10], this.aAz ? this.a0p = setTimeout(aB1, 16) : this.iE())
}, this.iE = function() {
if (8 === y.tp() && g.kB()) this.a0p = setTimeout(aB1, 16);
else {
if (0 === this.db) {
var aAj = aM.aB2();
if (aM.we(aq.ir.qA[aq.qB].aAs[2]), aB.d4([aq.eE, aq.eF, aq.ir.qA[aq.qB].aAs[0], aq.ir.qA[aq.qB].aAs[1]]), aM.we(aAj), this.hI = aB.aB3(), this.db++, this.aAz) return void(this.a0p = setTimeout(aB1, 16))
}
for (var em, fe, aAj = this.aAz ? 10 : 1e6, aAj = aq.eF - this.aAt - 1 < aAj ? aq.eF - this.aAt - 1 : aAj, qZ = this.aAt + aAj, fP = this.aAt; fP < qZ; fP++)
for (var fO = 1; fO < aq.eE - 1; fO++) fn(em = 4 * (fe = fO + fP * aq.eE)) ? this.aB4(em, fe, 1) : (this.aB4(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.aB5(fO, fP));
this.aAt = qZ, this.aAt >= aq.eF - 1 ? (aq.pj.putImageData(aq.pk, 0, 0, 1, 1, aq.eE - 2, aq.eF - 2), b4.d3 = !0, this.a5w()) : this.aAz && (this.a0p = setTimeout(aB1, 16))
}
}, this.aB4 = function(em, fe, g4) {
aB7(em, Math.floor(this.aAy[g4] + this.zv[g4] * this.hI[fe] / 1e4) - aq.po[em])
}, this.aB8 = function(em, gY, aB9, g4, zv) {
aB7(em, Math.floor(this.aAy[g4] + (1 - gY / aB9) * zv) - aq.po[em])
}, this.aB5 = function(gD, gE) {
for (var em, gY, aB9, qE = gD - this.aAv, qF = gE - this.aAv, qa = gD + this.aAv, qZ = gE + this.aAv, qE = qE < 1 ? 1 : qE, qa = qa > aq.eE - 2 ? aq.eE - 2 : qa, qZ = qZ > aq.eF - 2 ? aq.eF - 2 : qZ, fP = qF < 1 ? 1 : qF; fP <= qZ; fP++)
for (var fO = qE; fO <= qa; fO++) fn(em = 4 * (fO + fP * aq.eE)) ? (aB9 = this.aAu + (this.aAv - this.aAu) * this.hI[fO + aq.eE * fP] / 1e4, Math.abs(gD - fO) > aB9 || Math.abs(gE - fP) > aB9 || aB9 <= (gY = Math.sqrt((gD - fO) * (
gD - fO) + (gE - fP) * (gE - fP))) || this.aB8(em, gY, aB9, 1, this.zv[3])) : (aB9 = this.aAw + (this.aAx - this.aAw) * this.hI[fO + aq.eE * fP] / 1e4, Math.abs(gD - fO) > aB9 || Math.abs(gE - fP) > aB9 || aB9 <= (gY = Math
.sqrt((gD - fO) * (gD - fO) + (gE - fP) * (gE - fP))) || this.aB8(em, gY, aB9, 0, this.zv[2]))
}
}
function aAm() {
2 === aq.qB ? aBA([256], [256], [0, 205, 256], [500, 500, 0], [0, 0, 0]) : 7 === aq.qB ? aBA([512], [512], [0, 380, 512], [500, 500, 0], [0, 0, 0]) : 8 === aq.qB ? aBA([410], [410], [0, 120, 210], [0, 80, 640], [0, 0, 0]) : 9 === aq.qB && aBA([
512
], [512], [0, 70, 180, 200, 290, 420, 512], [500, 500, 0, 0, 500, 500, 0], [0, 0, 0, 0, 0, 0, 0])
}
function aBA(aBB, aBC, aBD, aBE, aBF) {
for (var fO, fP, aBH, aBI, fy, aBJ, h0 = aBB.length - 1, aBG = aq.eE + aq.eF, ef = (aBG *= aBG, aBD.length), eJ = ef - 1; 0 <= eJ; eJ--) aBD[eJ] *= aBD[eJ];
var aBK = new Array(ef),
aBL = new Array(ef),
aBM = new Array(ef),
df = aB.aB3();
if (void 0 === aBF)
for (aBF = new Array(ef), eJ = ef - 1; 0 <= eJ; eJ--) aBF[eJ] = 0;
for (eJ = 1; eJ < ef; eJ++) aBK[eJ] = aBD[eJ] - aBD[eJ - 1], aBL[eJ] = aBE[eJ] - aBE[eJ - 1], aBM[eJ] = aBF[eJ] - aBF[eJ - 1];
for (fO = aq.eE - 1; 0 <= fO; fO--)
for (fP = aq.eF - 1; 0 <= fP; fP--) {
for (aBH = aBG, eJ = h0; 0 <= eJ; eJ--) aBH = (aBI = (fO - aBB[eJ]) * (fO - aBB[eJ]) + (fP - aBC[eJ]) * (fP - aBC[eJ])) < aBH ? aBI : aBH;
for (fy = aBE[ef - 1], aBJ = aBF[ef - 1], eJ = 1; eJ < ef; eJ++)
if (aBH < aBD[eJ]) {
fy = aBE[eJ - 1] + a7C((aBH - aBD[eJ - 1]) * aBL[eJ], aBK[eJ]), aBJ = aBF[eJ - 1] + a7C((aBH - aBD[eJ - 1]) * aBM[eJ], aBK[eJ]);
break
} aBN(aq.eE * fP + fO, fy, aBJ, df)
}
}
function aBN(g4, fy, aBJ, 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(aBJ * (10 * fy - df[g4]), 1e3)
}
function by() {
var aBO;
function aBY(vK, gU, fO, fP, globalAlpha) {
aq.pj.save(), aq.pj.globalAlpha = globalAlpha, aq.pj.imageSmoothingEnabled = !1, aq.pj.scale(gU, gU), aq.pj.drawImage(vK, Math.floor(fO * (aq.eE / gU - vK.width)), Math.floor(fP * (aq.eF / gU - vK.height))), aq.pj.restore()
}
this.yb = 0, this.yc = 0, this.ye = 0, this.yf = 0, this.ct = function() {
(aBO = new Array(aq.a8O))[0] = {
gA: [0, 5e3, 8e3, 1e4],
gY: [220, 250, 255, 220],
vR: [190, 220, 0, 0],
hp: [170, 200, 0, 0]
}, aBO[1] = {
gA: [0, 4e3, 5e3, 6e3, 1e4],
gY: [25, 0, 100, 0, 25],
vR: [25, 0, 0, 0, 25],
hp: [25, 0, 0, 0, 25]
}, aBO[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],
vR: [80, 80, 190, 90, 46, 46, 248, 180, 180, 90, 140],
hp: [120, 120, 220, 110, 37, 37, 217, 10, 10, 10, 10]
}, aBO[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],
vR: [10, 10, 40, 50, 100, 40, 80, 120, 55, 230, 230],
hp: [80, 80, 200, 10, 60, 10, 16, 40, 55, 230, 230]
}, aBO[4] = {
gA: [0, 300, 1400, 1700, 3e3, 4e3, 1e4],
gY: [10, 10, 20, 10, 10, 170, 212],
vR: [20, 20, 60, 100, 100, 110, 170],
hp: [70, 70, 160, 30, 30, 60, 120]
}, aBO[5] = {
gA: [0, 1e3, 3e3, 3500, 4e3, 4500, 7e3, 7500, 8e3, 1e4],
gY: [10, 10, 20, 10, 5, 10, 20, 5, 20, 25],
vR: [30, 30, 50, 100, 30, 100, 140, 60, 140, 200],
hp: [80, 80, 200, 10, 5, 10, 20, 5, 20, 25]
}, aBO[6] = {
gA: [0, 700, 2650, 3200, 5e3, 8e3, 1e4],
gY: [10, 10, 60, 255, 255, 200, 200],
vR: [10, 10, 60, 255, 255, 200, 200],
hp: [80, 80, 255, 255, 255, 200, 200]
}, aBO[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],
vR: [10, 10, 90, 245, 245, 170, 80, 190, 20, 155, 255],
hp: [80, 80, 255, 235, 235, 55, 26, 10, 20, 155, 255]
}, aBO[8] = {
gA: [0, 700, 1300, 1900, 1901, 2500, 3400, 6e3, 1e4],
gY: [25, 30, 30, 30, 255, 255, 30, 40, 20],
vR: [25, 30, 150, 150, 245, 245, 80, 150, 70],
hp: [60, 170, 170, 170, 235, 235, 30, 40, 40]
}, aBO[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],
vR: [10, 10, 90, 245, 245, 170, 60, 160, 20, 155, 255],
hp: [80, 80, 255, 235, 235, 55, 9, 72, 20, 155, 255]
}, aBO[20] = {
gA: [0, 5500, 6700, 6999, 7e3, 7300, 7600, 8200, 1e4],
gY: [5, 5, 70, 70, 255, 255, 252, 10, 8],
vR: [20, 28, 190, 190, 255, 255, 248, 90, 60],
hp: [60, 80, 220, 220, 220, 220, 217, 10, 8]
}
}, this.aAn = function() {
var aBX, eJ, hg, dt, gS = function() {
var gS;
return aq.pn = document.createElement("canvas"), aq.pn.width = aq.eE, aq.pn.height = aq.eF, aq.pj = aq.pn.getContext("2d", {
alpha: !1
}), gS = aq.pj.getImageData(0, 0, aq.eE, aq.eF), aq.po = gS.data, gS
}(),
gA = aBO[aq.qB].gA,
gY = aBO[aq.qB].gY,
vR = aBO[aq.qB].vR,
hp = aBO[aq.qB].hp,
df = aB.aB3(),
ef = gA.length - 2,
aBS = new Array(1 + ef),
aBT = new Array(1 + ef),
aBU = new Array(1 + ef),
aBV = new Array(1 + ef);
for (hg = ef; 0 <= hg; hg--) aBS[hg] = gA[hg + 1] - gA[hg], aBT[hg] = gY[hg + 1] - gY[hg], aBU[hg] = vR[hg + 1] - vR[hg], aBV[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.po[4 * eJ] = gY[hg] + a7C(aBT[hg] * dt, aBS[hg]), aq.po[4 * eJ + 1] = vR[hg] + a7C(aBU[hg] * dt, aBS[hg]), aq.po[4 * eJ + 2] = hp[hg] + a7C(aBV[hg] * dt, aBS[hg]), aq.po[4 * eJ + 3] = 255;
break
} aq.pj.putImageData(gS, 0, 0), aq.aAr(aq.qB) && a0.g8() && aq.aAr(aq.qB) && (gS = a0.a4x("arena"), aBX = a0.a4x("territorial.io"), aBY(gS, 5, .5, .5, .1), aBY(aBX, 2, .5, .45, .1)), aq.pl = !0, b4.d3 = !0
}, this.wg = function() {
for (var em, fO, fP, aBZ, aBa, dv, yc = 0, gA = aq.eE, gF = aq.eF, dt = gA * gF * 4, aBb = a2z, aBc = aq.po, eJ = gA - 1; 0 <= eJ; eJ--) aBb[(em = eJ << 2) + 2] = aBb[dt - em - 2] = 3;
for (dt = 4 * gA, eJ = gF - 1; 0 <= eJ; eJ--) aBb[(em = eJ * dt) + 2] = aBb[em + dt - 2] = 3;
for (aBZ = gA - 1, aBa = gF - 1, fP = 1; fP < aBa; fP++)
for (dt = fP * gA, fO = 1; fO < aBZ; fO++) dv = 1 - (aBc[(em = dt + fO << 2) + 2] > aBc[em + 1] && aBc[em + 2] > aBc[em]), aBb[em + 2] = 2 - dv, yc += dv;
this.yb = (gA - 2) * (gF - 2), this.yf = 0, aq.aAp(aq.qB) && function() {
var em, fO, fP, dt, aBb = a2z,
aBc = aq.po,
gA = aq.eE,
aBZ = gA - 1,
aBa = aq.eF - 1,
rk = 0;
for (fP = 1; fP < aBa; fP++)
for (dt = fP * gA, fO = 1; fO < aBZ; fO++) aBc[em = dt + fO << 2] === aBc[1 + em] && aBc[em] === aBc[2 + em] && (rk++, aBb[2 + em] = 3);
aA.yf = rk
}(), this.yc = b.wS = yc - this.yf, this.ye = this.yb - this.yc - this.yf
}
}
function aAl() {
var g3;
10 === aq.qB ? 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.qB ? 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.qB ? 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.qB ? 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.qB ? 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.qB ? 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.qB ? 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.qB ? 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.qB ? 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.qB && (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 pX).pZ(g3)
}
function aAh() {
this.qA = null, this.ct = function() {
var aBe = [120, 105, 92],
cos = [12, 12, 60],
aBf = [300, 300, 9827, 26, 18, 36, 36, 8, 32, 3, 9],
aBg = [140, 130, 120],
aBh = [12, 12, 76],
aBi = [240, 120, 1024, 30, 19, 30, 70, 8, 20, 3, 9],
aBj = [130, 117, 106],
aBk = [12, 12, 68],
aBl = [270, 210, 1024, 28, 19, 33, 50, 8, 26, 3, 9];
this.qA = new Array(aq.a8O + 1), this.qA[0] = {
name: "White Arena",
gA: 230,
gF: 230,
jx: 1e3,
ju: 2e3,
aAj: 173
}, this.qA[1] = {
name: "Black Arena",
gA: 800,
gF: 800,
jx: 100,
ju: 50,
aAj: 43
}, this.qA[2] = {
name: "Island",
gA: 512,
gF: 512,
jx: 128,
ju: 32,
aAj: 0
}, this.qA[3] = {
name: "Mountains",
gA: 960,
gF: 960,
jx: 60,
ju: 8,
aAj: 0
}, this.qA[4] = {
name: "Desert",
gA: 900,
gF: 900,
jx: 100,
ju: 5,
aAj: 0
}, this.qA[5] = {
name: "Swamp",
gA: 1e3,
gF: 1e3,
jx: 100,
ju: 40,
aAj: 0
}, this.qA[6] = {
name: "Snow",
gA: 1e3,
gF: 1e3,
jx: 100,
ju: 20,
aAj: 0
}, this.qA[7] = {
name: "Cliffs",
gA: 1024,
gF: 1024,
jx: 128,
ju: 32,
aAj: 0
}, this.qA[8] = {
name: "Pond",
gA: 820,
gF: 820,
jx: 200,
ju: 100,
aAj: 0
}, this.qA[9] = {
name: "Halo",
gA: 1024,
gF: 1024,
jx: 128,
ju: 32,
aAj: 0
}, this.qA[10] = {
name: "Europe",
q9: aBg,
qC: aBh,
aAs: aBi
}, this.qA[11] = {
name: "World",
q9: aBj,
qC: aBk,
aAs: aBl
}, this.qA[12] = {
name: "Caucasia",
q9: aBj,
qC: aBk,
aAs: aBl
}, this.qA[13] = {
name: "Africa",
q9: aBe,
qC: cos,
aAs: aBf
}, this.qA[14] = {
name: "Middle East",
q9: aBe,
qC: cos,
aAs: aBf
}, this.qA[15] = {
name: "Scandinavia",
q9: aBg,
qC: aBh,
aAs: aBi
}, this.qA[16] = {
name: "North America",
q9: aBg,
qC: aBh,
aAs: aBi
}, this.qA[17] = {
name: "South America",
q9: aBe,
qC: cos,
aAs: aBf
}, this.qA[18] = {
name: "Asia",
q9: aBj,
qC: aBk,
aAs: aBl
}, this.qA[19] = {
name: "Australia",
q9: aBe,
qC: cos,
aAs: aBf
}, this.qA[20] = {
name: "Island Kingdom",
gA: 1024,
gF: 1024,
jx: 128,
ju: 32,
aAj: 0
}, this.qA[aq.a8O] = {}
}
}
function wf() {
(qu = void 0 === qu ? document.createElement("canvas") : qu).width = aq.eE, qu.height = aq.eF, wi = qu.getContext("2d", {
alpha: !0
}), wj = wi.getImageData(0, 0, aq.eE, aq.eF), a2z = wj.data, aZ.pp.pq(a2z)
}
function bz() {
var df, gA, gF, max, aBm, ju, aBo, aBp, aBq, aBr, aBs, aBt, aBu, aBv, aBn = 1e4;
function aC2(aC1, jx, ef) {
var eJ;
for (aBo[0] = aC1, eJ = 1; eJ < ef; eJ++) aBo[eJ] = aBo[eJ - 1] + jx, jx = aBo[eJ] >= aBn ? (aBo[eJ] = aBn - 1, -jx) : aBo[eJ] < 0 ? (aBo[eJ] = 0, -jx) : (jx += 16384 <= aM.random() ? ju : -ju) < -aBm ? -aBm : aBm < jx ? aBm : jx
}
function aC4(fO, fP, aC5, ef) {
(aC5 ? function(fO, fP, ef) {
var eJ;
for (eJ = 0; eJ < ef; eJ++) df[fP * gA + fO + eJ] = aBo[eJ]
} : function(fO, fP, ef) {
var eJ;
for (eJ = 0; eJ < ef; eJ++) df[fP * gA + fO + eJ * gA] = aBo[eJ]
})(fO, fP, ef)
}
function aC8(value, ef) {
var eJ, aAB, fg, gn = value - aBo[ef - 1];
if (0 != gn) {
for (aAB = 1 + eX(Math.abs(gn), ef - 1), aAB = gn < 0 ? -aAB : aAB, aBo[ef - 1] = value, fg = (fg = ef - 1 - eX(Math.abs(gn), Math.abs(aAB))) < 1 ? 1 : ef - 2 < fg ? ef - 2 : fg, eJ = ef - 2; fg <= eJ; eJ--) aBo[eJ] += gn - (ef - 1 -
eJ) * aAB;
(gn < 0 ? function(ef) {
var eJ;
for (eJ = ef - 2; 1 <= eJ; eJ--) aBo[eJ] < 0 && (aBo[eJ] = -aBo[eJ] - 1)
} : function(ef) {
var eJ;
for (eJ = ef - 2; 1 <= eJ; eJ--) aBo[eJ] >= aBn && (aBo[eJ] = 2 * aBn - aBo[eJ] - 1)
})(ef)
}
}
function aCB(aCC, aCD, ef) {
for (var eJ = 0; eJ < ef; eJ++) aCC[eJ] = aCD[eJ]
}
function aCE(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 aCF(x3, gap, gm) {
aBp.push(x3), aBq.push(gap), aBr.push(gm)
}
this.d4 = function(vx) {
! function(vx) {
var eJ;
for (gA = vx[0], gF = vx[1], aBm = vx[2], ju = vx[3], df = new Int16Array(gA * gF), max = gF < gA ? gA : gF, aBo = new Int16Array(max), aBp = [], aBq = [], aBr = [], aBs = new Array(gA), aBt = new Array(gF), eJ = gA - 1; 0 <=
eJ; eJ--) aBs[eJ] = !1;
for (eJ = gF - 1; 0 <= eJ; eJ--) aBt[eJ] = !1;
aBu = new Int16Array(gA), aBv = new Int16Array(gF)
}(vx),
function(ef) {
var aC1 = aM.random() % aBn,
jx = aM.random() % (2 * aBm + 1) - aBm;
aC2(aC1, jx, ef)
}(max), aCB(aBv, aBo, gF), aC4(0, 0, !0, gA);
var fO, fP, vx = df[0],
ef = max,
jx = aM.random() % (2 * aBm + 1) - aBm;
for (aC2(vx, jx, ef), aCB(aBu, aBo, gA), aC4(0, 0, !1, gF), aCE(aBu), aCE(aBv), aC2(df[gA - 1], aBu[gA - 1], gF), aC4(gA - 1, 0, !1, gF), aC2(df[gA * (gF - 1)], aBv[gF - 1], gA), aC8(df[gA * gF - 1], gA), aC4(0, gF - 1, !0, gA), aBs[gA -
1] = aBs[0] = !0, aBt[gF - 1] = aBt[0] = !0, aCF(0, gA, !0), aCF(0, gF, !1), ! function() {
var aCH, x3;
for (;;) {
if (aCH = function() {
var eJ, aCH = aBp.length - 1;
for (eJ = aCH - 1; 0 <= eJ; eJ--) aBq[eJ] > aBq[aCH] && (aCH = eJ);
return aCH
}(), aBq[aCH] < 5) return;
x3 = aBp[aCH] + eX(aBq[aCH], 2), (aBr[aCH] ? function(fO) {
var ef, aCK, eJ, a46 = 0,
aCL = 0;
for (; aCL < gF - 1;) {
for (eJ = a46 + 1; eJ < gF; eJ++)
if (aBt[eJ]) {
aCL = eJ;
break
} ef = aCL - a46 + 1, aC2(df[fO + gA * a46], 0 === a46 ? aBu[fO] : aBo[aCK - 1] - aBo[aCK - 2], ef), aC8(df[aCL * gA + fO], ef), aC4(fO, a46, !1, ef), aCK = ef, a46 = aCL
}
aBs[fO] = !0
} : function(fP) {
var ef, aCK, eJ, a46 = 0,
aCL = 0;
for (; aCL < gA - 1;) {
for (eJ = a46 + 1; eJ < gA; eJ++)
if (aBs[eJ]) {
aCL = eJ;
break
} ef = aCL - a46 + 1, aC2(df[fP * gA + a46], 0 === a46 ? aBv[fP] : aBo[aCK - 1] - aBo[aCK - 2], ef), aC8(df[fP * gA + aCL], ef), aC4(a46, fP, !0, ef), aCK = ef, a46 = aCL
}
aBt[fP] = !0
})(x3), aCF(x3, aBp[aCH] + aBq[aCH] - x3, aBr[aCH]), aBq[aCH] = x3 - aBp[aCH] + 1
}
}(), fO = 0; fO < gA; fO++)
if (!aBs[fO])
for (fP = 0; fP < gF; fP++) aBt[fP] || ! function(fO, fP) {
var value = df[fP * gA + fO - 1] + df[(fP - 1) * gA + fO],
yp = 2;
aBs[fO + 1] && (yp++, value += df[fP * gA + fO + 1]);
aBt[fP + 1] && (yp++, value += df[(fP + 1) * gA + fO]);
df[fP * gA + fO] = eX(value, yp)
}(fO, fP)
}, this.aB3 = function() {
return df
}, this.aAo = function() {
df = null
}
}
function eX(hg, hp) {
return Math.floor(hg / hp + 1 / (2 * hp))
}
function a7C(hg, hp) {
return 0 <= hg ? eX(hg, hp) : -eX(-hg, hp)
}
function i7(df) {
return df * df
}
function y6(hg, hp) {
return hp < hg ? hg : hp
}
function a1P(hg, hp) {
return hg < hp ? hg : hp
}
function a0D(hg, df, hp) {
return df < hg ? hg : hp < df ? hp : df
}
function aCN(df, ef) {
for (var iT = eX(df + 1, 2), eJ = 0; eJ < ef; eJ++) iT = eX(iT + eX(df, iT), 2);
return iT
}
function a8t(df, ef) {
return df < 1 ? 0 : aCN(df, ef)
}
function aCO(jj, jk, r1, zy, jl, jm, r2, a6N) {
return !(jj + r1 <= jl || jk + zy <= jm || jl + r2 <= jj || jm + a6N <= jk)
}
function aCP(jj, jk, r1, zy, jl, jm, r2, a6N) {
return jj <= jl && jk <= jm && jl + r2 <= jj + r1 && jm + a6N <= jk + zy
}
function pg(df) {
return Math.floor(!!df * (1 + Math.log2(df + .5)))
}
function bI() {
this.fK = function(hg, hp) {
return Math.floor((hg + .5) / hp)
}, this.aCQ = 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.aCR = function(dt, dv, dx) {
return Math.max(Math.min(dt, dv), dx)
}, this.aCS = function(aCT, aCU, fO, fP) {
fO -= aCT, aCT = fP - aCU, fP = 0;
return 0 == fO ? fP = 0 <= aCT ? Math.PI : 0 : (fP = Math.atan(aCT / 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 aCW, this.tm = 0;
let map = new Map;
this.d5 = function(g4, aCX = this.tm, vx = void 0) {
b4.d3 = !0, 0 === g4 && 0 === y.tp() && (g4 = 5), this.oP(), this.tm = g4;
let pb = map.get(g4);
if (!pb || 4 === g4 || 7 === g4 || 8 === g4 || 9 === g4 || 10 === g4 || 11 === g4) {
if (0 === g4) return void map.clear();
1 === g4 ? pb = new aCY : 2 === g4 ? pb = new aCZ : 3 === g4 ? pb = new aCa : 4 === g4 || 9 === g4 || 10 === g4 || 11 === g4 ? pb = vx : 5 === g4 ? pb = new aCb : 6 === g4 ? pb = new aCc : 7 === g4 ? pb = new aCd : 8 === g4 ? pb =
vx : 12 === g4 && (pb = new aCe), pb.aCX = aCX, map.set(g4, pb)
}
pb.show(vx)
}, this.tr = function() {
this.rI() && this.d5(map.get(this.tm).aCX)
}, this.aCf = function(g4) {
this.rI() && (this.oP(), b4.d3 = !0, this.tm = g4, map.get(g4).show())
}, this.oP = function() {
this.rI() && map.get(this.tm).oP()
}, this.pB = function() {
this.rI() && (map.get(this.tm).oP(), map.clear(), this.tm = 0)
}, this.gL = function() {
var pb;
this.rI() && (pb = map.get(this.tm)).gL && pb.gL()
}, this.resize = function() {
if (!this.rI()) return !1;
map.get(this.tm).resize()
}, this.fX = function(fO, fP) {
var pb;
this.rI() && (pb = map.get(this.tm)).fX && pb.fX(fO, fP)
}, this.uE = function(fO, fP) {
var pb;
this.rI() && (pb = map.get(this.tm)).uE && pb.uE(fO, fP)
}, this.uc = function() {
var pb;
this.rI() && (pb = map.get(this.tm)).uc && pb.uc()
}, this.uH = function(gD, gE, deltaY) {
var pb;
this.rI() && (pb = map.get(this.tm)).uH && pb.uH(gD, gE, deltaY)
}, this.uo = function(dI) {
return !!this.rI() && ("Enter" === dI.key ? map.get(this.tm).uo(1) : "Escape" === dI.key && map.get(this.tm).uo(2), !0)
}, this.iE = function() {
var pb;
this.rI() && (pb = map.get(this.tm)) && pb.iE && pb.iE()
}, this.rI = function() {
return 0 < this.tm
}, this.aCg = function() {
return map.get(this.tm)
}, this.aCh = function(g4) {
return map.get(g4)
}
}
function aCd() {
var aCi, aCj, nF;
this.show = function() {
aCi.show(), this.resize()
}, this.oP = function() {
aCi.oP()
}, this.resize = function() {
aCi.resize(), aCj.resize()
}, this.uo = function(iT) {
1 !== iT && at.d5(this.aCX)
}, aCi = new oF("🔑 " + aW.np[125], [new nT("💾 " + aW.np[97], function() {
at.tr()
}, aa.l3)]), aCj = new nD(aCi.oL, ((nF = []).push(function() {
var aCr = new n0;
return aCr.n3("🧈 Gold"), aCr.n6("Balance: " + aZ.jr.wB(bA.dK.data[113].value, .01, 2)), aCr.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."), aCr
}()), nF.push(function() {
var aCr = new n0;
return aCr.n3("1v1 Rating"), aCr.n6("Elo: " + aZ.jr.wB(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), aCr
}()), nF.push(function() {
let aCr = new n0,
aCs = (aCr.n3("Account Name"), new ny(bA.dK.data[105]));
return aCs.dI.readOnly = !0, aCr.nB(aCs), aCr.nB(new nv([new nT("Copy", function() {
aZ.g5.ve(aCs.dI), aZ.g5.vf(this)
}).button])), aCr
}()), nF.push(function() {
let aCr = new n0,
aCt = (aCr.n3("Password"), new ny(bA.dK.data[106]));
return aCt.dI.readOnly = !0, aCt.dI.type = "password", aCr.nB(aCt), aCr.nB(new nv([new nT("Show", function() {
"Show" === this.innerText ? (this.innerText = "Hide", aCt.dI.type = "text") : (this.innerText = "Show", aCt.dI.type = "password")
}).button, new nT("Copy", function() {
aZ.g5.ve(aCt.dI), aZ.g5.vf(this)
}).button])), aCr.nB(new nv([new nT("Request New Password", function() {
at.d5(8, at.aCg().aCX, new gG("⏳ Connecting...", 15))
}).button])), aCr
}()), nF.push(function() {
var aCr = new n0;
return aCr.n3("Account Options"), aCr.nB(new nv([new nT("Log in to a Different Account", function() {
at.d5(6, at.aCg().aCX)
}).button])), aCr.nB(new nv([new nT("Create New Account", function() {
bA.nq.nr(105, ""), at.d5(8, at.aCg().aCX, new gG("⏳ Connecting...", 18))
}).button])), aCr.nB(new nv([new nT("Delete Account: " + bA.dK.data[105].value, function() {
at.d5(4, 0, new ti("🗑️ Account Deletion", "Your account will start the deletion process but may be restored if you log in within 3 weeks.", !0, [new nT("❌ " + aW.np[92], function() {
at.d5(7, at.aCh(7).aCX)
}), new nT("🗑️ Delete Account", function() {
at.d5(8, at.aCh(7).aCX, new gG("⏳ Connecting...", 17))
}, aa.lJ)]))
}, aa.lJ).button])), aCr
}()), nF.push(function() {
var aCr = new n0;
aCr.n3("Saved Accounts"), bA.j4.p4();
function aCv(g4) {
for (let eJ = 0; eJ < 2; eJ++) aCu[eJ].nZ(0 === g4 ? aa.ku : 0 === eJ ? aa.lJ : aa.l3)
}
let n9, aCu;
return aCu = [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.p7(g4), g4 = bA.dK.data[117].value, n9.nA[g4].textContent = n9.nA[g4].textContent.replace("⚪", "🟢"), aCv(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.p8(g4), bA.nq.nr(105, g4.p9), bA.nq.nr(106, g4.password), at.d5(8, at.aCg().aCX, new gG("⏳ Connecting...", 18)))
}, aa.ku)], n9 = new oA(bA.dK.data[117], aCv), aCr.n8(n9), aCr.nB(new nv([aCu[0].button])), aCr.nB(new nv([aCu[1].button])), aCr
}()), nF))
}
function aCe() {
let aCi, aCz, a4B, aD0, a4C, a4D, colors = [0, 0, 0],
aD1 = -1;
function a4K(eJ) {
var gY = 0 === eJ ? 150 : 2 === eJ ? 30 : 0,
vR = 1 === eJ ? 130 : 2 === eJ ? 30 : 0,
hp = 2 === eJ ? 220 : 0,
aD5 = aCz.fP + eJ * (b1.gap + a4D);
gM.fillStyle = "rgb(" + gY + "," + vR + "," + hp + ")", gM.fillRect(aD0, aD5, colors[eJ] * a4C, a4D), gM.strokeStyle = aa.gN, gM.strokeRect(aD0, aD5, a4C, a4D), gM.fillStyle = aa.gN, gM.font = aZ.g5.g6(0, .32 * a4D), aZ.g5.textBaseline(gM,
1), aZ.g5.textAlign(gM, 0), gM.fillText((0 === eJ ? "Red: " : 1 === eJ ? "Green: " : "Blue: ") + aD3(eJ), aD0 + b1.gap, aD5 + .53 * a4D)
}
function aD3(eJ, aD6 = 256) {
return aj.mx(Math.floor(aD6 * colors[eJ]), 0, aD6 - 1)
}
function uj(gD, gE) {
return !(gD < aD0 || gE < aCz.fP || gD > aCz.fO + aCz.gA || gE > aCz.fP + aCz.gF)
}
this.show = function() {
var df = bA.dK.data[121].value;
colors[0] = (df >> 12) / 63, colors[1] = (df >> 6 & 63) / 63, colors[2] = (63 & df) / 63, aCi.show(), this.resize()
}, this.oP = function() {
bA.nq.nr(121, (aD3(0, 64) << 12) + (aD3(1, 64) << 6) + aD3(2, 64)), aCi.oP()
}, this.resize = function() {
aCi.resize(), aCz.resize();
var iT = aL.nN,
oV = aCi.oQ(),
aD4 = (aCz.fP = Math.max(aCz.fP, iT * oV.oR + b1.gap), iT * oV.oU - 2 * b1.gap);
aCz.gF = Math.min(aCz.gF, aD4), aCz.gA = 2 * aCz.gF, aCz.fP = iT * oV.oR + .5 * (iT * oV.oU - aCz.gF), aCz.fO = .5 * (aL.gA - aCz.gA), a4B = .25 * aCz.gA, aD0 = aCz.fO + a4B + b1.gap, a4C = aCz.gA - a4B - b1.gap, a4D = (aCz.gF - 2 * b1
.gap) / 3
}, this.gL = function() {
var gY, vR, hp;
aCi.gL(), gM.lineWidth = b1.rn, gY = aD3(0), vR = aD3(1), hp = aD3(2), gM.fillStyle = "rgb(" + gY + "," + vR + "," + hp + ")", gM.fillRect(aCz.fO, aCz.fP, a4B, aCz.gF), gM.strokeStyle = aa.gN, gM.strokeRect(aCz.fO, aCz.fP, a4B, aCz.gF),
gM.fillStyle = gY + vR + hp < 306 && vR < 150 ? aa.gN : aa.jp, aZ.g5.textBaseline(gM, 1), aZ.g5.textAlign(gM, 1), gM.font = aZ.g5.g6(0, .1 * aCz.gF), gM.rotate(-Math.PI / 2), gM.fillText("National Color", -aCz.fP - .5 * aCz.gF, aCz
.fO + .5 * a4B), gM.setTransform(1, 0, 0, 1, 0, 0), a4K(0), a4K(1), a4K(2)
}, this.fX = function(gD, gE) {
uj(gD, gE) && (aD1 = aj.mx(Math.floor((gE - aCz.fP) / (a4D + .75 * b1.gap)), 0, 2), colors[aD1] = aj.mx((gD - aD0) / a4C, 0, 1), b4.d3 = !0)
}, this.uE = function(gD) {
-1 !== aD1 && (colors[aD1] = aj.mx((gD - aD0) / a4C, 0, 1), b4.d3 = !0)
}, this.uH = function(gD, gE, deltaY) {
uj(gD, gE) && (gD = aj.mx(Math.floor((gE - aCz.fP) / (a4D + .75 * b1.gap)), 0, 2), colors[gD] = aj.mx(colors[gD] + (1 - 2 * (0 < deltaY)) / 256, 0, 1), b4.d3 = !0)
}, this.uc = function() {
0 <= aD1 && (aD1 = -1, b4.d3 = !0)
}, this.uo = function(iT) {
1 !== iT && at.j4.aD2()
}, aCi = new oF("Choose Your Nation's Color!", [new nT("❌ " + aW.np[92], function() {
at.j4.aD2()
})], !1), aCz = new ni([.5, .25], [.5, .5], 1)
}
function gG(title, id, vx) {
let aCi, aD7;
function aDA() {
aD7.nt.innerHTML += "<br>New Connection..."
}
this.aD8 = !0, this.show = function() {
aCi.show(), this.resize(), 15 === id ? aO.j4.a4Z(0, id) ? this.aD9() : aDA() : 16 === id ? aO.j4.a4Z(0, id) ? aO.aDB.aDC(2) : aDA() : 17 === id ? aO.j4.a4Z(0, id) ? aO.aDB.aDC(3) : aDA() : 18 === id ? (aO.j4.close(0, 3253), aO.j4.a4Z(0,
id), aDA()) : 20 === id ? aO.j4.a4Z(0, id) ? aO.aDD.aDE(vx) : aDA() : 21 === id ? aO.j4.a4Z(0, id) ? aO.aDB.aDF(vx.gH, vx.gI, vx.gJ) : aDA() : 22 === id && (aO.j4.a4Z(0, id) ? aO.aDB.aDG(vx.gH, vx.aDH, vx.aDI) : aDA())
}, this.aDJ = function() {
15 === id ? this.aD9() : 16 === id ? aO.aDB.aDC(2) : 17 === id ? aO.aDB.aDC(3) : 18 === id ? at.d5(8, this.aCX, new gG("⏳ Connecting...", 16)) : 20 === id ? aO.aDD.aDE(vx) : 21 === id ? aO.aDB.aDF(vx.gH, vx.gI, vx.gJ) : 22 === id && aO
.aDB.aDG(vx.gH, vx.aDH, vx.aDI)
}, this.aDK = function(code, yg = !1, data) {
if (yg || code === id)
if (15 === code) at.d5(7, this.aCX);
else if (16 === code) at.d5(7, this.aCX);
else if (17 === code)
if (aO.j4.close(0, 3252), bA.j4.p7(0), 0 < bA.dK.data[117].oE.length) {
let data = bA.j4.p8(0);
bA.nq.nr(105, data.p9), bA.nq.nr(106, data.password), at.d5(8, this.aCX, new gG("⏳ Connecting...", 16))
} else bA.nq.nr(105, ""), at.j4.aD2();
else 20 === code ? at.d5(7, this.aCX) : 21 !== code && 22 !== code || at.d5(10, 0, new a3Z(data))
}, this.aD9 = function() {
ac.d4(48), ac.pU(24, Math.floor(aj.pow(24) * Math.random())), ac.pU(24, Math.floor(aj.pow(24) * Math.random())), af.ct(ac.mP), bA.nq.nr(110, ad.pF.s3(ad.pF.s1(8))), aO.aDD.aDL()
}, this.oP = function() {
aCi.oP()
}, this.resize = function() {
aCi.resize(), aD7.resize()
}, this.uo = function(iT) {
2 === iT && at.j4.aD2()
}, aCi = new oF(title, [new nT("❌ " + aW.np[92], function() {
at.j4.aD2()
})]), aD7 = new ns(aCi.oL, "Find Server...")
}
function aCb() {
let aDM, aDN, aCz, aCs, aDO;
aCz = new ni([.45, .27], [.5, .5], 2 / 3), aDN = [new nT("⚔️<br>Multiplayer", function() {
aDP(0)
}, aa.l9), new nT("🗡️<br>Single Player", function() {
aDP(1)
}, aa.lL), new nT("🔑<br>My Account", function() {
aDP(2)
}, aa.la), new nT("⚙️<br>Menu", function() {
aDP(3)
}, aa.kv), new nT("", function() {
at.d5(12)
}, aa.kg, !1),
new nT("FX Client settings", function() {
WindowManager.openWindow("settings");
}, "rgba(0, 0, 20, 0.5")
], aCs = new ny(bA.dK.data[122]);
for (let eJ = 0; eJ < aDN.length; eJ++) aDN[eJ].button.style.position = "absolute";
function aDP(g4) {
b8.cy.setState(10), b8.cy.setState(13), aV.ud(), a0.g8() || a0.a6b(), 0 === g4 ? at.j4.aDQ() : 1 === g4 ? at.j4.aDR() : 2 === g4 ? at.d5(8, at.tm, new gG("⏳ Connecting...", 16)) : 3 === g4 && at.d5(1, at.tm)
}
aCs.dI.style.position = "absolute", aCs.dI.style.textAlign = "center", this.show = function() {
y.setState(0), b8.cy.setState(12), aDN[4].nZ(aZ.color.vQ(bA.dK.data[121].value)), this.resize(), document.body.appendChild(aCs.dI);
for (let eJ = 0; eJ < aDN.length; eJ++) document.body.appendChild(aDN[eJ].button);
1 !== b8.id || b8.dg < 5 || (aDO && b4.dc > aDO + 144e5 ? b8.ox.setState(14) : aDO = b4.dc)
}, this.oP = function() {
document.body.removeChild(aCs.dI);
for (let eJ = 0; eJ < aDN.length; eJ++) document.body.removeChild(aDN[eJ].button)
}, this.resize = function() {
aCz.resize();
var gap = .5 * b1.gap,
a3h = 10 / 99 * .84 * aCz.gA,
aDT = 3 * gap,
aDU = .16 * aCz.gF,
a0c = .19 * aCz.gA,
fO = aCz.fO + a0c,
a3h = aCz.fP + a3h + aDT,
aDT = .5 * (aCz.gA - gap) - a0c,
a0c = aCz.gA - 2 * a0c - aDU - gap,
a0c = (aZ.g5.vW(aCs.dI, fO, a3h, a0c, aDU), aZ.g5.vW(aDN[4].button, fO + a0c + gap, a3h, aDU, aDU), a3h += aDU + gap, .5 * (aCz.fP + aCz.gF - a3h - gap));
aZ.g5.vW(aDN[0].button, fO, a3h, aDT, a0c), aZ.g5.vW(aDN[1].button, fO + aDT + gap, a3h, aDT, a0c), aZ.g5.vW(aDN[2].button, fO, a3h + a0c + gap, aDT, a0c), aZ.g5.vW(aDN[3].button, fO + aDT + gap, a3h + a0c + gap, aDT, a0c);
aZ.g5.vW(aDN[5].button, fO, a3h + a0c * 2 + gap * 2, aDT * 2 + gap, a0c / 3);
for (let eJ = 0; eJ < aDN.length; eJ++) aDN[eJ].button.style.font = aZ.g5.g6(0, aZ.g5.vY(.065 * aCz.gF)), aZ.g5.nS(aDN[eJ].button, 5);
aCs.dI.style.font = aZ.g5.g6(0, aZ.g5.vY(.08 * aCz.gF)), aZ.g5.nS(aCs.dI, 5)
}, this.gL = function() {
if (y.a4u(), r.gL(), m.gL(), aw.gL(), ay.gL(), a0.g8()) {
if (settings.displayWinCounter) {
const size = Math.floor(aCz.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.a4x("territorial.io"),
kO = .84 * aCz.gA / iT.width;
gM.setTransform(kO, 0, 0, kO, aCz.fO + .08 * aCz.gA, aCz.fP), aDM = aDM || aZ.v2.vv(iT, aZ.v2.w1, [0, 0, 0]);
for (let fO = -1; fO <= 1; fO += 2)
for (let fP = -1; fP <= 1; fP += 2) gM.drawImage(aDM, fO, fP);
gM.drawImage(iT, 0, 0), gM.imageSmoothingEnabled = !0;
var gj = a0.a4x("logo"),
aDX = .6666 * kO * iT.height / gj.height,
jl = .5 * aL.gA,
jm = aCz.fP + .5 * kO * iT.height - .5 * aDX * gj.height;
gM.setTransform(aDX, 0, 0, aDX, jl - .6 * kO * iT.width, jm), gM.drawImage(gj, 0, 0), gM.setTransform(aDX, 0, 0, aDX, jl + .6 * kO * iT.width - aDX * 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.uo = function(iT) {}
}
function a3w(title, n7, aDY = [new nT("❌ " + aW.np[92], function() {
at.tr()
}, aa.lJ)]) {
let aCi, aD7;
this.show = function() {
aCi.show(), this.resize()
}, this.oP = function() {
aCi.oP()
}, this.resize = function() {
aCi.resize(), aD7.resize()
}, this.uo = function(iT) {
2 === iT && aDY[0].nX()
}, aCi = new oF(title, aDY), aD7 = new ns(aCi.oL, n7), aZ.g5.textAlign(aCi.oL.style, 1)
}
function a3Z(data) {
let aCi, aDZ, aDY;
function aDa(gn) {
let gI;
gI = gn < 0 ? parseInt(data.data[0][0]) - 1 + gn : parseInt(data.data[data.data.length - 1][0]), at.d5(8, 0, new gG("⏳ Connecting...", 21, {
gH: data.gH,
gI: gI,
gJ: gI + Math.abs(gn) - 1
}))
}
this.show = function() {
aCi.show(), this.resize()
}, this.oP = function() {
aCi.oP()
}, this.resize = function() {
aCi.resize(), aDZ.resize()
}, this.uo = function(iT) {
2 === iT && aDY[0].nX()
}, aDY = [new nT("❌ " + aW.np[92], function() {
at.tr()
}), new nT("⬆️ Prev 100 (🧈 1.01)", function() {
aDa(-100)
}), new nT("⬆️ Prev 10 (🧈 0.11)", function() {
aDa(-10)
}), new nT("⬇️ Next 10 (🧈 0.11)", function() {
aDa(10)
}), new nT("⬇️ Next 100 (🧈 1.01)", function() {
aDa(100)
}), new nT("🛠️ Custom", function() {
at.d5(11, 10, new aDb({
gH: data.gH
}))
})], aCi = new oF(data.title, aDY), aDZ = new o5(aCi.oL, data.data)
}
function aDb(vx) {
let aCi, aCj;
var nF;
this.show = function() {
aCi.show(), this.resize()
}, this.oP = function() {
aCi.oP()
}, this.resize = function() {
aCi.resize(), aCj.resize()
}, this.uo = function(iT) {
1 !== iT && at.aCf(10)
}, aCi = new oF("🛠️ List Options", [new nT("❌ " + aW.np[92], function() {
at.aCf(10)
})]), aCj = new nD(aCi.oL, ((nF = []).push(function() {
function aDg() {
var gI = Math.floor(aDe.dI.value),
gJ = Math.floor(aDf.dI.value);
return {
vG: Math.min(gI, gJ),
aCH: Math.max(gI, gJ)
}
}
function aDi() {
var nC = ((nC = aDg()).aCH - nC.vG + 2) / 100;
aDh.button.innerHTML = aZ.jr.wH(aDh.button.innerHTML, nC)
}
let aCr = new n0,
aDe = new ny({
title: "startIndex",
value: 0,
g4: -1
}, "number"),
aDf = new ny({
title: "endIndex",
value: 199,
g4: -1
}, "number"),
aDh = (aCr.n3("Start Index"), aCr.nB(aDe), aDe.dI.style.marginBottom = "0.5em", aCr.n3("End Index"), aCr.nB(aDf), new nT("Go (🧈 2.01)", function() {
var nC = aDg();
at.d5(8, at.aCg().aCX, new gG("⏳ Connecting...", 21, {
gH: vx.gH,
gI: nC.vG,
gJ: nC.aCH
}))
}));
return aDe.dI.addEventListener("input", aDi), aDf.dI.addEventListener("input", aDi), aCr.nB(new nv([aDh.button])), aCr
}()), nF.push(function() {
let aCr = new n0,
aDe = new ny({
title: "sValue",
value: "",
g4: -1
}),
aDf = new ny({
title: "matches",
value: 5,
g4: -1
}, "number"),
aDh = (aCr.n3("Search"), aCr.nB(aDe), aDe.dI.style.marginBottom = "0.5em", aCr.n3("Matches"), aCr.nB(aDf), new nT("Go (🧈 0.10)", function() {
var aDH = aDe.dI.value.slice(0, 20),
aDI = Math.abs(Math.floor(aDf.dI.value));
at.d5(8, at.aCg().aCX, new gG("⏳ Connecting...", 22, {
gH: vx.gH,
aDH: aDH,
aDI: aDI
}))
}));
return aDf.dI.addEventListener("input", function() {
var wI = (5 + Math.max(Math.abs(Math.floor(aDf.dI.value)), 1)) / 100;
aDh.button.innerHTML = aZ.jr.wH(aDh.button.innerHTML, wI)
}), aCr.nB(new nv([aDh.button])), aCr
}()), nF))
}
function aCc() {
var aCi, aCj, nF;
this.show = function() {
aCi.show(), this.resize()
}, this.oP = function() {
aCi.oP()
}, this.resize = function() {
aCi.resize(), aCj.resize()
}, this.uo = function(iT) {
2 === iT && at.d5(7, at.aCh(7).aCX)
}, aCi = new oF("Login", [new nT("❌ " + aW.np[92], function() {
at.d5(7, at.aCh(7).aCX)
}, aa.lJ), new nT("➡️ Login", function() {
bA.nq.nr(105, ae.pF.pO(aCj.nG[0].n1[0].dI.value, 5)), bA.nq.nr(106, ae.pF.pO(aCj.nG[1].n1[0].dI.value, 8)), at.d5(8, at.aCh(7).aCX, new gG("⏳ Connecting...", 18))
}, aa.l3)]), aCj = new nD(aCi.oL, ((nF = []).push(function() {
var aCr = new n0;
return aCr.n3("Account Name"), aCr.nB(new ny({
title: "AccountName",
value: "",
g4: -1
})), aCr
}()), nF.push(function() {
let aCr = new n0,
aCt = (aCr.n3("Password"), new ny({
title: "Password",
value: "",
g4: -1
}));
return aCt.dI.type = "password", aCr.nB(aCt), aCr.nB(new nv([new nT("Show", function() {
"Show" === this.innerText ? (this.innerText = "Hide", aCt.dI.type = "text") : (this.innerText = "Show", aCt.dI.type = "password")
}).button])), aCr
}()), nF))
}
function aCW() {
this.dK = {}, this.tz = function() {
at.d5(5, 5)
}, this.aDR = function() {
at.pB(), z.ct()
}, this.aDQ = function() {
at.pB(), x.a4V(bA.dK.data[10].value), x.ct()
}, this.aD2 = function() {
at.d5(0 === y.tp() ? 5 : 0)
}
}
function ti(title, n7, aDk = !1, aDY = [new nT("❌ " + aW.np[92], function() {
at.tr()
}, aa.lJ)]) {
var aCi, aD7;
this.show = function() {
aCi.show(), this.resize()
}, this.oP = function() {
aCi.oP()
}, this.resize = function() {
aCi.resize(), aD7.resize()
}, this.uo = function(iT) {
2 === iT && aDY[0].nX()
}, aCi = new oF(title, aDY), aD7 = new ns(aCi.oL, n7), aDk && aZ.g5.textAlign(aCi.oL.style, 1)
}
function aCa() {
let aCi, oY;
function aDl() {
au.dM.hideCMPButton(), at.d5(0);
var g3 = aY.aDr(oY.od());
(0 < g3.length && g3 === aY.me.aDo || aY.aDt.pZ(g3)) && aY.aDs()
}
this.show = function(aDm) {
this.aDn(aDm), aCi.show(), this.resize()
}, this.aDn = function(aDm) {
0 === b.sm ? (aDm = aDm || oY.od(), oY.ob(aDm)) : (b.fS || (aY.me.aDo = aY.aDp.sE()), oY.ob(aY.aDq(aY.me.aDo)))
}, this.oP = function() {
aCi.oP()
}, this.resize = function() {
aCi.resize(), oY.resize()
}, this.uo = function(iT) {
1 === iT ? aDl() : at.tr()
}, aCi = new oF("▶️ " + aW.np[82], [new nT("❌ " + aW.np[92], function() {
at.tr()
}, aa.lJ), new nT("🔲 " + aW.np[93], function() {
oY.oe()
}), new nT("📋 " + aW.np[94], function() {
oY.og()
}), new nT("🗑️ " + aW.np[95], function() {
oY.clear()
}), new nT("▶️ " + aW.np[96], function() {
aDl()
}, aa.l7)]), oY = new oW("replayData", "Insert the replay link here!"), aCi.oL.appendChild(oY.oZ)
}
function aCZ() {
var aCi, aCj, nF, aDu, aCr;
this.show = function() {
aCi.show(), this.resize()
}, this.oP = function() {
aCi.oP()
}, this.resize = function() {
aCi.resize(), aCj.resize()
}, this.uo = function(iT) {
1 === iT ? aDu.dI.blur() : at.d5(1)
}, aCi = new oF("⚙️ " + aW.np[81], [new nT("💾 " + aW.np[97], function() {
at.d5(1)
}, aa.l3), new nT("🔄 " + aW.np[98], function() {
at.pB(), bA.nq.pD(), at.d5(2)
})]), nF = [], (aCr = new n0).n3(aW.np[99]), aCr.n4(aW.np[100]), nF.push(aCr), (aCr = new n0).n3(bA.dK.data[0].title), aCr.n8(new oA(bA.dK.data[0])), nF.push(aCr), (aCr = new n0).n3(bA.dK.data[10].title), aCr.n8(new oA(bA.dK.data[10])), nF
.push(aCr), (aCr = new n0).n3(bA.dK.data[1].title), aCr.n8(new oA(bA.dK.data[1])), nF.push(aCr), (aCr = new n0).n3(bA.dK.data[9].title), aCr.n8(new oA(bA.dK.data[9])), nF.push(aCr), (aCr = new n0).n3(bA.dK.data[11].title), aCr.n8(new oA(bA.dK
.data[11])), nF.push(aCr), (aCr = new n0).n3(bA.dK.data[2].title), aCr.nB(new nn(bA.dK.data[2])), nF.push(aCr), (aCr = new n0).n3(bA.dK.data[7].title), aCr.nB(new nn(bA.dK.data[7])), nF.push(aCr), (aCr = new n0).n3(bA.dK.data[8].title),
aCr.nB(new nn(bA.dK.data[8])), nF.push(aCr), (aCr = new n0).n3(bA.dK.data[5].title), aDu = new ny(bA.dK.data[5]), aCr.nB(aDu), nF.push(aCr), aCj = new nD(aCi.oL, nF)
}
function aCY() {
var aCi, aDv, aDx, oG, aDw = !1;
this.show = function() {
aCi.show(), this.resize(), this.iE()
}, this.oP = function() {
aCi.oP()
}, this.resize = function() {
aCi.resize(), aDv.resize()
}, this.uo = function(iT) {
2 === iT && at.j4.aD2()
}, this.iE = function() {
!aDw || k.xf(b.ea) || (at.pB(), at.d5(1))
}, aDx = [new nT("🔑 " + aW.np[125], function() {
at.d5(8, 1, new gG("⏳ Connecting...", 16))
}), new nT("⚙️ " + aW.np[81], function() {
at.d5(2)
}), new nT("▶️ " + aW.np[82], function() {
at.d5(3, 1, "")
}), new nT("🔗 " + aW.np[83], function() {
at.d5(4, 1, new ti("🔗 " + aW.np[83], aZ.g5.vZ(["Android App", "iOS App", "Discord", "Changelog", "Clans", "Clan Results", "Players", "Tutorial", "Terms", "Privacy"], [ai.a3s, ai.tj, ai.a3u, ai.aE2, ai.aE3, ai.aE4, ai.aE5, ai.aE6,
ai.aE7, ai.aE8
]), !1, [new nT("❌ " + aW.np[92], function() {
at.d5(1)
}, aa.lJ)]))
}), new nT(" " + aW.np[84], function() {
at.d5(4, 1, new ti(" " + aW.np[84], dB + "<br><a href='" + ai.aE2 + "' target='_blank'>" + ai.aE2 + "</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.np[92], function() {
at.d5(1)
}, aa.lJ)]))
}), new nT("🗑️ " + aW.np[85], function() {
at.d5(4, 1, new ti("🗑️ " + aW.np[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.np[92], function() {
at.d5(1)
}), new nT("🗑️ Delete", function() {
b8.cy.tY(), at.d5(1)
})]))
}), new nT(aW.np[86], function() {
b8.cy.tZ(), at.d5(4, 1, new ti("User Privacy", "If the privacy window doesn't open, please deactivate all your adblockers.<br>Additionally, check out our Privacy Policy: <a href='" + ai.aE8 + "' target='_blank'>" + ai.aE8 +
"</a>", !1, [new nT("❌ " + aW.np[92], function() {
at.d5(1)
}, aa.lJ)]))
})], oG = [new nT("❌ " + aW.np[87], function() {
at.j4.aD2()
})], 8 === y.tp() && aDx.unshift(new nT("📈 " + aW.np[88], function() {
at.pB(), 2 <= b2.aE1 && (b3.ur(), b4.d3 = !0)
})), 8 === y.tp() && !b.fS && k.xf(b.ea) && (aDw = !0, aDx.unshift(new nT("🏳️ " + aW.np[89], function() {
aX.fk.m6(), at.pB(), k.fT && k.ur()
}))), 1 === b8.id && 5 <= b8.dg && aDx.push(new nT(aW.np[90], function() {
b8.cy.ta()
})), aCi = new oF("📙 " + aW.np[91], oG), aDv = new nf(aDx, aCi.oL)
}
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 a0p, aEA, aEB, aEC, aE9 = !1;
function aED() {
aE9 = !0, a0p = -1, aEA = new Array(4);
for (var eJ = 3; 0 <= eJ; eJ--) aEA[eJ] = !1;
var aEE = Math.floor(1 + .02 * aL.min);
aEB = new Array(4), (aEC = new Array(4))[1] = aEC[3] = aEB[0] = aEB[2] = 0, aEC[0] = aEB[3] = -aEE, aEB[1] = aEC[2] = aEE
}
function aEF() {
if (-1 !== a0p)
if (0 !== b.sm && g.kT()) {
for (var aEG = !1, eJ = 3; 0 <= eJ; eJ--) aEA[eJ] && (aEG = !0, hA += aEB[eJ], hC += aEC[eJ], a5.uE(aEB[eJ], aEC[eJ]), q.a0Y());
aEG ? b4.d3 = !0 : aC.kK()
} else aC.kK()
}
this.ul = function(g4) {
0 !== b.sm && g.kT() && (aE9 || aED(), aEA[g4] = !0, -1 === a0p) && (a0p = setInterval(aEF, 20), aEF())
}, this.up = function(g4) {
if (0 !== b.sm && (aE9 || aED(), aEA[g4] = !1, -1 !== a0p)) {
for (var aEG = !1, eJ = 3; 0 <= eJ; eJ--) aEG = aEG || aEA[eJ];
aEG || this.kK()
}
}, this.kK = function() {
if (aE9 && -1 !== a0p) {
for (var eJ = 3; 0 <= eJ; eJ--) aEA[eJ] = !1;
clearInterval(a0p), a0p = -1
}
}
}
function c1() {
this.j4 = new aEH, this.j8 = new aEI, this.lk = new aEJ, this.a4a = new aEK, this.aDB = new aEL, this.aDD = new aEM, this.mO = new aEN, this.yN = new aEO, this.aEP = new aEQ, this.aER = new aES, this.aET = new aEU, this.ct = function() {
this.j4.ct()
}
}
function aEH() {
var aEV, aEX;
this.a55 = 5, this.a56 = this.a55 - 1, this.a4Y = this.a55 + this.a56, this.a4X = [0, 1, 5, 2, 6, 3, 7, 4, 8], this.aEW = null;
function dT(eJ) {
return aEX[eJ].aE9 && aEV[eJ].dT()
}
function aEf(tl) {
aEX[tl].dc = b4.dc, aEX[tl].aEZ = !1
}
this.tu = 0, this.tt = 0, this.ct = function() {
this.aEW = new Array(this.a55);
this.aEW[0] = "territorial.io";
var eJ, aAj = aM.aB2(0);
for (aM.we(0), eJ = 1; eJ < this.a55; eJ++) this.aEW[eJ] = i.sK() + ".territorial.io";
for (aM.we(aAj), aEV = new Array(this.a4Y), aEX = new Array(this.a4Y), eJ = this.a4Y - 1; 0 <= eJ; eJ--) aEX[eJ] = {
aE9: !1,
dc: 0,
aEZ: !1
};
this.a4Z(0, 0)
}, this.aEa = function(eJ) {
return aEV[eJ]
}, this.aEb = function() {
return this.tt < this.a55 ? this.tt : this.tt - this.a56
}, this.iE = function() {
for (let eJ = this.a4Y - 1; 0 <= eJ; eJ--) this.a4T(eJ) && b4.dc > aEX[eJ].dc + 15e3 && aO.lk.aEc(eJ, aEX[eJ].aEZ);
!this.a4T(0) && b4.dc > aEX[0].dc + 8e3 && (aEX[0].dc = b4.dc, this.a4Z(0, 0))
}, this.a4Z = function(tl, aCX) {
if (aEX[tl].aE9) {
if (aEV[tl].dT()) return aEV[tl].aEe(aCX), aEV[tl].a4T();
aEV[tl].oP()
}
return this.aEd(tl, aCX), !1
}, this.aEd = function(tl, aCX) {
aEX[tl].aE9 = !0, aEf(tl), aEV[tl] = new aEg, aEV[tl].ct(tl, aCX)
}, this.aEe = function(tl, aCX) {
dT(tl) && aEV[tl].aEe(aCX)
}, this.aEh = function(tl, aCX) {
aO.aDB.aEi(tl)
}, this.a4T = function(eJ) {
return aEX[eJ].aE9 && aEV[eJ].a4T()
}, this.send = function(tl, mP) {
aEf(tl), aEV[tl].send(mP)
}, this.uV = function(tl) {
8 === y.tp() && (aEX[tl].aEZ = !0, aO.j8.iq = !0)
}, this.close = function(tl, aEj) {
dT(tl) && aEV[tl].close(aEj)
}, this.aEk = function(tl, aEj) {
bC.tx(aEj), dT(tl) && aEV[tl].close(aEj)
}, this.u0 = function(aEj) {
for (let eJ = this.a4Y - 1; 0 <= eJ; eJ--) this.close(eJ, aEj)
}, this.aEl = function(tl, aEj) {
for (var eJ = this.a4Y - 1; 0 <= eJ; eJ--) eJ !== tl && this.close(eJ, aEj)
}, this.wn = function() {
this.close(this.tu, 3246)
}, this.aEm = function(tl, dI) {
aEV[tl].oP(), bC.tk(tl, dI.code)
}
}
function aEI() {
this.iq = !1, this.iE = function() {
b4.iS() % 250 != 249 || b.fS || (aO.aDB.aEn(+(this.iq && 0 < a6.jS[b.ea]), iV + al.j4.mc), this.iq = !1)
}
}
function aEO() {
this.aEp = function(tl, mP) {
af.ct(mP), 0 === af.size ? aO.j4.aEk(tl, 3205) : ((0 === af.mQ(1) ? function(tl) {
var aEt = af.mQ(6);
0 === aEt ? function(tl) {
if (0 === tl && 8 !== y.tp()) {
ay.g2(0, ae.pH.pJ(af.mQ(5))), ay.g2(1, "[" + ae.pH.pJ(af.mQ(3)) + "]");
var aF2 = af.mQ(12),
aF3 = af.mQ(6),
ds = new Array(aF2);
for (let eJ = 0; eJ < aF2; eJ++) ds[eJ] = af.mQ(aF3);
r.a0w(ds)
}
}(tl) : 1 === aEt ? function() {
var eJ;
if (8 !== y.tp()) {
var r9, id = af.mQ(1),
position = af.mQ(16),
yp = af.mQ(4),
ds = [];
for (eJ = 0; eJ < yp; eJ++) r9 = af.mQ(14), ds.push({
name: ae.pH.pJ(af.mQ(5)),
r9: r9
});
0 === id ? b7.a3S(0, ds, 10, 1, .36, .55, position) : b7.a3S(1, ds, 100, 2, .47, .5, position)
}
}() : 2 === aEt ? aO.aEP.aEw(tl) : 3 === aEt || 4 === aEt ? aK.ct() : 5 !== aEt && 6 !== aEt && 7 !== aEt && 8 !== aEt && (9 === aEt ? aO.aER.aEx(tl) : 10 === aEt ? aO.aET.aEy() : 11 === aEt ? aO.aER.aEz() : 12 ===
aEt ? aO.aET.aF0() : 13 === aEt && aO.aER.aF1())
} : function(tl) {
if (8 !== y.tp() && !aK.a57()) return;
if (tl !== aO.j4.tu) aO.j4.aEk(tl, 3244);
else if (0 === af.mQ(1)) b4.su.aF9(af.mP);
else {
var eJ, m0, tl = af.mQ(2);
if (0 === tl) {
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 === tl) ! function() {
var lk = af.mQ(9);
0 !== a6.jS[lk] && 0 !== a6.jS[b.ea] && aT.aAR(0, [lk], !0) && l.mH(lk, 1)
}();
else if (2 === tl) ! function() {
var lk = af.mQ(9),
target = af.mQ(9);
0 !== a6.jS[lk] && 0 !== a6.jS[target] && 0 !== a6.jS[b.ea] && aT.aAR(1, [lk], !0) && (a5.my(lk, 3, 96), a5.my(target, 4, 96), l.yU(lk, target))
}();
else if (dD && !dF) {
var ef = 720;
for (ac.d4(14407), ac.pU(1, 0), ac.pU(6, 10), ef = Math.min(aX.lh.mS.length, 720), eJ = 0; eJ < ef; eJ++) ac.pU(20, aX.lh.mS[eJ]);
aO.j4.send(aO.j4.tu, ac.mP)
}
}
})(tl), b4.aEs())
}, this.a58 = function(mP) {
if (af.ct(mP), af.g4 = 1, 3 === af.mQ(6)) {
af.g4 += 20;
for (var a6K, a6J, name, mP = af.mQ(9), wX = af.mQ(14), wZ = af.mQ(4), a5m = 1 === af.mQ(1), a5n = af.mQ(6), a5o = af.mQ(14), aF8 = af.mQ(9) + 1, r5 = [], eJ = 0; eJ < aF8; eJ++) a6K = af.mQ(1), a6J = [af.mQ(6), af.mQ(6), af.mQ(6)],
name = ae.pH.pJ(af.mQ(5)), r5.push({
name: name,
a6J: a6J,
a6K: a6K
});
y.a4o(), aq.d4(a5n, a5o), 1 === r5.length && z.a6A(wZ), b.wW(wX, mP, r5, wZ, a5m, !1)
} else ! function() {
af.g4 += 20;
for (var a6K, a6J, r9, name, a4z = af.mQ(1), wX = af.mQ(14), wZ = af.mQ(4), a5m = 1 === af.mQ(1), a5n = af.mQ(6), a5o = af.mQ(14), r5 = [], eJ = 0; eJ < 2; eJ++) a6K = af.mQ(1), a6J = [af.mQ(6), af.mQ(6), af.mQ(6)], r9 = af.mQ(
14), name = ae.pH.pJ(af.mQ(5)), r5.push({
name: name,
a6J: a6J,
r9: r9,
a6K: a6K
});
y.a4o(), aq.d4(a5n, a5o), b.wW(wX, a4z, r5, wZ, a5m, !1)
}()
}, this.a53 = function() {
af.g4 = 1;
var aEt = af.mQ(6),
aF6 = af.mQ(10);
return aO.j4.tt > aO.j4.a56 && (aF6 += aO.j4.a56), aO.j4.tt === aF6 ? (aO.j4.tu = aF6, !1) : (aO.j4.close(aO.j4.tt, 3247), aO.j4.tu = aF6, aK.a4y = af.mQ(10), aK.a4z = af.mQ(3 === aEt ? 9 : 1), aO.j4.a4Z(aF6, 5) && aO.lk.aF7(), !0)
}
}
function aEU() {
this.aEy = function() {
bA.j4.p3(), bA.nq.nr(105, ad.pF.s3(ad.pF.s1(5))), bA.nq.nr(106, ad.pF.s3(ad.pF.s1(8))), bA.nq.nr(109, af.mQ(30)), bA.nq.nr(108, bA.dK.data[109].value), bA.nq.nr(111, bA.dK.data[109].value + 1), bA.nq.nr(107, 0), bA.nq.nr(110, "")
}, this.aF0 = function() {
var aFG;
!(af.size < ac.aFF(180)) && (af.g4 = 175, aFG = af.mQ(5), af.aFH(180 + 16 * aFG)) ? (af.g4 = 7, bA.nq.nr(109, af.mQ(30)), bA.nq.nr(107, af.mQ(16)), bA.nq.nr(108, af.mQ(30)), bA.nq.nr(112, af.mQ(30)), bA.nq.nr(111, af.mQ(30)), bA.nq.nr(
113, af.aFI(32)), af.g4 += 5, bA.nq.nr(122, ae.pH.pJ(aFG)), bA.dK.data[123].value && bA.nq.nr(124, bA.dK.data[122].value), 8 === at.tm && at.aCg().aDK(16, !0)) : aO.j4.aEk(0, 3254)
}
}
function aEQ() {
this.aEw = function(tl) {
var eJ, a5P, aFK, aFL, aFM;
if (tl !== aO.j4.tt) aO.j4.close(tl, 3239);
else if (6 === y.tp() && aH.ct(), 7 !== y.tp()) aO.j4.close(tl, 3251);
else {
for (a5P = [0, 0, 0, 0], aFK = af.mQ(6), eJ = 0; eJ < 4; eJ++) a5P[eJ] = af.mQ(aFK);
for (aFL = af.mQ(4), aFM = [], eJ = 0; eJ < aFL; eJ++) {
aFM.push({
id: af.mQ(5),
wZ: af.mQ(4),
a5m: 1 === af.mQ(1),
qB: af.mQ(6),
a5k: af.mQ(14),
a5p: af.mQ(aFK),
a5q: af.mQ(9) + 1,
a4j: af.mQ(10)
});
for (var a5r = af.mQ(3), a5s = new Array(a5r), a5t = new Array(a5r), hg = 0; hg < a5r; hg++) a5t[hg] = af.mQ(9) + 1, a5s[hg] = ae.pH.pJ(af.mQ(3));
aFM[eJ].a5r = a5r, aFM[eJ].a5s = a5s, aFM[eJ].a5t = a5t
}
aH.nr(a5P, aFM)
}
}
}
function aES() {
this.aEx = function(tl) {
var aFB = af.mQ(3),
aFN = b9.aFO.iE(af.mQ(16), af.mQ(20));
aO.aDB.aFP(tl, aFN, aFB), 0 < aFB || (0 === tl && 0 === bA.dK.data[105].value.length ? aO.aDB.aDC(0) : aO.aDD.aFQ(tl), 4 === aO.j4.aEa(tl).aFR() ? 6 === y.tp() && aO.a4a.a4b(tl) : 5 !== aO.j4.aEa(tl).aFR() || 8 !== y.tp() && 10 !== y
.tp() || aO.lk.aF7())
}, this.aEz = function() {
var id = af.mQ(6);
0 === id ? (r.a0s || aO.aDB.aDC(1), 8 === at.tm && at.aCg().aDJ()) : 21 === id ? 8 === at.tm && at.aCg().aDK(17) : 22 === id && (bA.nq.nr(106, bA.dK.data[110].value), bA.nq.nr(110, ""), 8 === at.tm) && at.aCg().aDK(15)
}, this.aF1 = function() {
if (af.size < ac.aFF(38)) aO.j4.aEk(0, 3259);
else {
var gH = af.mQ(6),
ef = af.mQ(10),
gQ = af.mQ(15);
if (af.aFH(38 + 51 * ef + 16 * gQ)) {
var data = [];
let kO, w5;
w5 = 0 === gH ? (kO = .1, 1) : (kO = .001, 3);
for (let eJ = 0; eJ < ef; eJ++) data.push(["" + (af.mQ(30) + 1), ae.pH.pJ(af.mQ(5)), (kO * af.mQ(16)).toFixed(w5)]);
8 === at.tm && at.aCg().aDK(21, !0, {
gH: gH,
title: gH ? "Clan Ranking" : "1v1 Player Ranking",
data: data
})
} else aO.j4.aEk(0, 3260)
}
}
}
function aEJ() {
this.a3Q = function(tl, id) {
ac.d4(24), ac.pU(1, 0), ac.pU(6, 6), ac.pU(1, id), ac.pU(16, Math.abs(4096 + b7.position[id] + b7.a3P[id]) % 65536), aO.j4.send(tl, ac.mP)
}, this.aEc = function(tl, aEZ) {
ac.d4(8), ac.pU(1, 0), ac.pU(6, 4), ac.pU(1, aEZ ? 1 : 0), aO.j4.send(tl, ac.mP)
}, this.aF7 = function() {
ac.d4(58), ac.pU(1, 0), ac.pU(6, 5), ac.pU(8, aO.j4.aEb()), ac.pU(10, aK.a4y), ac.pU(9, aK.a4z), ac.pU(10, dE), ac.pU(14, a.dG), aO.j4.send(aO.j4.tu, ac.mP)
}, this.ll = function(fe) {
ac.d4(27), ac.pU(1, 1), ac.pU(4, 0), ac.pU(22, fe), aO.j4.send(aO.j4.tu, ac.mP)
}, this.ln = function(h9, hZ) {
ac.d4(25), ac.pU(1, 1), ac.pU(4, 1), ac.pU(10, h9), ac.pU(10, hZ), aO.j4.send(aO.j4.tu, ac.mP)
}, this.lr = function(h9, lp) {
ac.d4(24), ac.pU(1, 1), ac.pU(4, 2), ac.pU(10, h9), ac.pU(9, lp), aO.j4.send(aO.j4.tu, ac.mP)
}, this.ls = function(h9, fe) {
ac.d4(37), ac.pU(1, 1), ac.pU(4, 3), ac.pU(10, h9), ac.pU(22, fe), aO.j4.send(aO.j4.tu, ac.mP)
}, this.lw = function(lu, fe) {
ac.d4(37), ac.pU(1, 1), ac.pU(4, 4), ac.pU(10, lu), ac.pU(22, fe), aO.j4.send(aO.j4.tu, ac.mP)
}, this.ly = function(hZ) {
ac.d4(15), ac.pU(1, 1), ac.pU(4, 5), ac.pU(10, hZ), aO.j4.send(aO.j4.tu, ac.mP)
}, this.m2 = function(g4) {
ac.d4(15), ac.pU(1, 1), ac.pU(4, 6), ac.pU(10, g4), aO.j4.send(aO.j4.tu, ac.mP)
}, this.m5 = function(m4) {
ac.d4(6), ac.pU(1, 1), ac.pU(4, 7), ac.pU(1, m4), aO.j4.send(aO.j4.tu, ac.mP)
}, this.m7 = function() {
ac.d4(5), ac.pU(1, 1), ac.pU(4, 8), aO.j4.send(aO.j4.tu, ac.mP)
}, this.mF = function(aFS, aFT) {
ac.d4(24), ac.pU(1, 1), ac.pU(4, 15), ac.pU(9, aFT), ac.pU(10, aFS), aO.j4.send(aO.j4.tu, ac.mP)
}, this.mI = function(yN) {
ac.d4(14), ac.pU(1, 1), ac.pU(4, 14), ac.pU(9, yN), aO.j4.send(aO.j4.tu, ac.mP)
}, this.mM = function(aFU, target) {
var eJ, ef = aFU.length;
for (ac.d4(14 + 9 * ef), ac.pU(1, 1), ac.pU(4, 13), ac.pU(9, target), eJ = 0; eJ < ef; eJ++) ac.pU(9, aFU[eJ]);
aO.j4.send(aO.j4.tu, ac.mP)
}
}
function aEM() {
this.aFW = function() {
ac.d4(39), ac.pU(1, 0), ac.pU(6, 16), aO.aDB.aFV(), aO.j4.send(0, ac.mP)
}, this.aFQ = function(tl) {
ac.d4(115), ac.pU(1, 0), ac.pU(6, 17), ae.pF.pW(bA.dK.data[105].value, 5), ae.pF.pW(bA.dK.data[106].value, 8), ac.pU(30, bA.dK.data[109].value), aO.j4.send(tl, ac.mP)
}, this.aDL = function() {
ac.d4(55), ac.pU(1, 0), ac.pU(6, 18), ae.pF.pV(bA.dK.data[110].value), aO.j4.send(0, ac.mP)
}, this.aDE = function(username) {
ac.d4(12 + 16 * username.length), ac.pU(1, 0), ac.pU(6, 20), aO.aDB.aFY(username), aO.j4.send(0, ac.mP)
}
}
function aEN() {
this.mN = function() {
var ef = b.ht,
sV = ap.result.sV,
aFZ = sV.length,
t7 = (ac.d4(40 + 16 * ef + aFZ * (33 + 3 * (b.it < 7))), ac.pU(1, 1), ac.pU(4, 10), ac.pU(10, aFZ), ac.pU(1, +(2 === b.sa)), ac.pU(24, ap.result.sy), a6.t7);
for (let eJ = 0; eJ < ef; eJ++) ac.pU(16, t7[eJ]);
var f5 = a6.f5;
for (let eJ = 0; eJ < aFZ; eJ++) {
var em = sV[eJ];
ac.pU(9, em), ac.pU(24, f5[em])
}
if (b.it < 7) {
var iU = b5.iU;
for (let eJ = 0; eJ < aFZ; eJ++) ac.pU(3, 7 & iU[sV[eJ]])
}
aO.j4.send(aO.j4.tu, ac.mP)
}
}
function aEK() {
this.a4b = function(tl) {
var username = bA.dK.data[122].value.slice(0, 20),
username = (ac.d4(22 + 16 * username.length + 18), ac.pU(1, 0), ac.pU(6, 1), ac.pU(10, dE), aO.aDB.aFY(username), aZ.color.vP(bA.j4.o2()));
ac.pU(6, username[0]), ac.pU(6, username[1]), ac.pU(6, username[2]), aO.j4.tt = tl, aO.j4.send(tl, ac.mP)
}, this.a5y = function(a5l) {
return ac.d4(11), ac.pU(1, 0), ac.pU(6, 2), ac.pU(4, a5l), aO.j4.send(aO.j4.tt, ac.mP), !0
}
}
function aEL() {
this.aEi = function(tl) {
ac.d4(39), ac.pU(1, 0), ac.pU(6, 13), ac.pU(14, a.dG), ac.pU(4, b8.id), ac.pU(7, b8.dg), ac.pU(1, +dD), ac.pU(1, +dF), ac.pU(5, (new Date).getHours() % 24), aO.j4.send(tl, ac.mP)
}, this.aFP = function(tl, aFN, aFB) {
ac.d4(26), ac.pU(1, 0), ac.pU(6, 14), ac.pU(3, aFB), ac.pU(16, aFN), aO.j4.send(tl, ac.mP)
}, this.aDC = function(id) {
ac.d4(13), ac.pU(1, 0), ac.pU(6, 15), ac.pU(6, id), aO.j4.send(0, ac.mP)
}, this.aDF = function(gH, gI, gJ) {
ac.d4(75), ac.pU(1, 0), ac.pU(6, 21), ac.pU(6, gH), ac.pU(1, +(gI < 0)), ac.pU(1, +(gJ < 0)), ac.pU(30, Math.abs(gI)), ac.pU(30, Math.abs(gJ)), aO.j4.send(0, ac.mP)
}, this.aDG = function(gH, aDH, aDI) {
ac.d4(18 + 16 * aDH.length + 30), ac.pU(1, 0), ac.pU(6, 22), ac.pU(6, gH), this.aFY(aDH), ac.pU(30, aDI), aO.j4.send(0, ac.mP)
}, this.aFa = function(aF6, nC) {
ac.d4(7 + 26 * nC.length), ac.pU(1, 0), ac.pU(6, 9);
for (let eJ = 0; eJ < nC.length; eJ++) ac.pU(16, nC[eJ][0]), ac.pU(10, nC[eJ][1]);
aO.j4.send(aF6, ac.mP)
}, this.aEn = function(aFb, a7b) {
ac.d4(20), ac.pU(1, 0), ac.pU(6, 19), ac.pU(1, aFb), ac.pU(12, a7b), aO.j4.send(aO.j4.tu, ac.mP)
}, this.aFY = function(username) {
ac.pU(5, username.length), ad.pH.pV(username)
}
}
function aEg() {
var tl, aCX, u3, aFc = ["wss://", "/s50/", "/s51/", "/s52/"];
function aEh() {
aO.j4.aEh(tl, aCX)
}
function aFh(dI) {
aO.yN.aEp(tl, new Uint8Array(dI.data))
}
function aFi() {}
function aEm(dI) {
aO.j4.aEm(tl, dI)
}
this.ct = function(g4, aFd) {
tl = g4, aCX = aFd;
g4 = aFc[0];
tl < aO.j4.a55 ? g4 += aO.j4.aEW[tl] + aFc[1 + dA] : g4 += aO.j4.aEW[0] + "/i" + (1 + dA) + (tl - aO.j4.a56) + "/", (u3 = new WebSocket(g4)).binaryType = "arraybuffer", u3.onopen = aEh, u3.onmessage = aFh, u3.onclose = aEm, u3.onerror =
aFi
}, this.aFf = function() {
return u3.readyState === u3.CONNECTING
}, this.a4T = function() {
return u3.readyState === u3.OPEN
}, this.dT = function() {
return this.aFf() || this.a4T()
}, this.aEe = function(aFd) {
aCX = aFd
}, this.aFR = function() {
return aCX
}, this.send = function(mP) {
this.a4T() && u3.send(mP)
}, this.close = function(aEj) {
this.dT() && (u3.close(aEj), this.oP())
}, this.oP = function() {
u3.onopen = null, u3.onmessage = null, u3.onclose = null, u3.onerror = null
}
}
function cg() {
var aFj = !1,
yj = 0,
gA = 0,
r1 = 0,
gap = 0,
gV = null,
qw = null,
vD = null;
function aFl() {
for (var a5a, aFo = 0, ef = 0, iT = Math.floor(gA / 2), gY = Math.floor(r1 / 2), a5Z = 1.5 * Math.PI, eJ = b.wU; 0 <= eJ; eJ--) ef += vD[eJ], 0 === vD[eJ] && aFo++;
if (aFj = !1, qw.clearRect(0, 0, gA, gA), qw.fillStyle = aa.kh, qw.fillRect(0, 0, gA, gA), qw.fillStyle = aa.gN, qw.fillRect(0, 0, gA, gap), qw.fillRect(0, 0, gap, gA), qw.fillRect(gA - gap, 0, gap, gA), qw.fillRect(0, gA - gap, gA, gap), 0 <
ef)
if (aFo === b.wU) {
for (eJ = b.wU; 0 <= eJ; eJ--)
if (0 < vD[eJ]) {
! function(eJ, iT, gY) {
qw.fillStyle = b5.a5e[b5.tD[eJ]], qw.beginPath(), qw.arc(iT, iT, gY, 0, 2 * Math.PI), qw.fill()
}(eJ, iT, gY);
break
}!
function(iT) {
var fontSize = iT / 3;
qw.font = aZ.g5.g6(1, fontSize), qw.fillStyle = aa.gN, qw.fillText("100%", iT, iT + .1 * fontSize)
}(iT)
} else {
for (eJ = 0; eJ <= b.wU; eJ++) 0 < vD[eJ] && (! function(eJ, iT, gY, a5Z, a5a) {
qw.fillStyle = b5.a5e[b5.tD[eJ]], qw.beginPath(), qw.arc(iT, iT, gY, a5Z, a5a), qw.lineTo(iT, iT), qw.fill()
}(eJ, iT, gY, a5Z, a5a = a5Z + 2 * Math.PI * vD[eJ] / ef), function(iT, gY, a5Z, a5a) {
var df = (a5a - a5Z) / (2 * Math.PI),
fontSize = +gY * Math.min(df, .37);
fontSize < 8 || (a5Z = (a5Z + a5a) / 2, a5a = Math.floor(100 * df + .5) + "%", gY *= .525 - Math.max(.6 * (df - .7), 0), qw.font = aZ.g5.g6(1, fontSize), qw.fillStyle = aa.gN, qw.fillText(a5a, iT + Math.cos(a5Z) * gY, iT +
Math.cos(a5Z + 1.5 * Math.PI) * gY))
}(iT, gY, a5Z, a5a), 0 !== eJ && a5c(iT, gY, a5Z), a5Z = a5a);
a5c(iT, gY, 1.5 * Math.PI)
}!
function(iT, gY) {
qw.beginPath(), qw.arc(iT, iT, gY, 0, 2 * Math.PI), qw.stroke()
}(iT, gY)
}
function a5c(iT, gY, a5f) {
qw.beginPath(), qw.moveTo(iT, iT), qw.lineTo(iT + Math.cos(a5f) * gY, iT + Math.cos(a5f + 1.5 * Math.PI) * gY), qw.stroke()
}
this.ct = function() {
if (b.hT) {
var eJ;
for (yj = 0, vD = new Uint32Array(b.wU + 1), eJ = b.wU; 0 <= eJ; eJ--) vD[eJ] = 0;
for (eJ = iV - 1; 0 <= eJ; eJ--) vD[b5.iU[iW[eJ]]] += 1;
this.resize()
} else vD = qw = gV = null
}, this.zY = 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, r1 = Math.floor(7 * gA / 8), (gV = gV || document.createElement("canvas")).width = gA, gV.height = gA,
qw = gV.getContext("2d", {
alpha: !0
}), gap = Math.max(1, .015 * gA), qw.lineWidth = gap, qw.strokeStyle = aa.gN, aZ.g5.textAlign(qw, 1), aZ.g5.textBaseline(qw, 1), aFl())
}, this.t3 = function() {
return vD[this.tE()]
}, this.sj = function() {
return yj = 31, this.iE(), this.tE()
}, this.tE = function() {
let aFm = 0;
for (let eJ = b.wU; 0 < eJ; eJ--) vD[eJ] > vD[aFm] && (aFm = eJ);
return aFm
}, this.iE = function() {
if (b.hT && 32 <= ++yj) {
var eJ;
for (yj = 0, eJ = b.wU; 0 <= eJ; eJ--) vD[eJ] = 0;
for (eJ = iV - 1; 0 <= eJ; eJ--) vD[b5.iU[iW[eJ]]] += a6.f5[iW[eJ]];
aFj = !0
}
}, this.g7 = function() {
b.hT && aFj && aFl()
}, this.gL = function() {
b.hT && (b.kG ? gM.drawImage(gV, b1.gap, b1.gap) : gM.drawImage(gV, b1.gap, zZ + 2 * b1.gap))
}
}
function cO() {
this.d6 = function() {
var value, th;
0 === b8.id && (value = function(key) {
if ("undefined" == typeof URLSearchParams) return null;
var aDm = window.location.search,
aDm = new URLSearchParams(aDm).get(key);
if ("string" != typeof aDm || aDm.length < 1) return null;
return aDm
}("replay"), (th = new URL(window.location.href)).search = "", history.replaceState(null, "", th.toString()), value) && at.d5(3, 0, value)
}
}
function c2() {
var aFt, ds;
this.ct = function() {
for (var eJ = (ds = new Uint16Array(101)).length - 1; 0 <= eJ; eJ--) ds[eJ] = eX(32768 * eJ, 100);
this.we(0)
}, this.value = function(em) {
return ds[em]
}, this.aB2 = function() {
return eX(aFt - 1, 2)
}, this.we = function(aAj) {
aFt = 2 * aAj % 32768 + 1
}, this.random = function() {
return aFt = 167 * aFt % 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 aFu, this.aDp = new aFv, this.aDt = new aFw, this.ct = function(wX, r5, wZ, wa) {
var aFx;
b.fS || ((aFx = {}).wY = b.ea, aFx.wX = wX, aFx.r5 = r5, aFx.wZ = wZ, aFx.wa = wa, aFx.a5n = aq.qB, aFx.a5o = aq.a5k, z.a6F(aFx), this.me.ct(aFx))
}, this.iE = function() {
b.fS || (this.me.iE(), 3 !== at.tm) || b4.iS() % 15 != 5 && 2 !== b.sm || at.aCg().aDn()
}, this.aDs = function() {
var vR = this.me.aFx;
0 === b.sm && y.a4o(), aq.d4(vR.a5n, vR.a5o), 1 === vR.r5.length && (z.a6A(vR.wZ), z.a6C(vR.a6D, vR.a6E)), aO.j4.close(aO.j4.tu, 3257), aO.j4.tu = 0, b.wW(vR.wX, vR.wY, vR.r5, vR.wZ, vR.wa, !0)
}, this.aDr = function(g3) {
var eJ = g3.indexOf("=");
return 0 <= eJ ? g3.substring(eJ + 1) : g3
}, this.aDq = function(g3) {
return "https://territorial.io/?replay=" + g3
}
}
function aFu() {
this.aFz = null, this.aG0 = null, this.aG1 = null, this.aG2 = null, this.aG3 = null, this.aG4 = null;
var aG5 = 0;
this.aFx = null, this.aDo = "", this.ct = function(aFx) {
this.aFz = [], this.aG0 = [], this.aG1 = [], this.aG2 = [], this.aG3 = [0], this.aG4 = [0], aG5 = 0, this.aFx = aFx, this.aDo = ""
}, this.mf = function(id, dt, dv, dx) {
b.fS || 2 === b.sm || (0 === this.aG3[aG5] && (this.aG4[aG5] ? (this.aG3.push(1), this.aG4.push(0), aG5++) : this.aG3[aG5] = 1), this.aFz.push(id), this.aG0.push(dt), this.aG1.push(void 0 === dv ? 0 : dv), this.aG2.push(void 0 === dx ?
0 : dx), this.aG4[aG5]++)
}, this.iE = function() {
0 === this.aG3[aG5] ? this.aG4[aG5]++ : (this.aG3.push(0), this.aG4.push(0), aG5++)
}
}
function aFw() {
function aGB(g3, aGD = !1) {
aGD ? l.xq = "Replay Error: " + g3 : at.d5(4, 3, new ti("⚠️ Replay Error", g3, !0))
}
this.pZ = function(g3) {
if (ae.pF.pR(ae.pF.pP(ae.pF.pN(g3))), l.xq = "", ! function() {
if (af.size < 10) aGB("File Too Small");
else if (af.mQ(9) !== dC && aGB("Incompatible Version Error", !0), af.mQ(31) !== af.size) aGB("Size Error");
else {
if (function(gF) {
var eJ, em = af.mP,
ef = af.size,
a7b = 0;
for (eJ = 7; eJ < ef; eJ++) a7b = a7b + em[eJ] & 65535;
return a7b === gF
}(af.mQ(16))) return 1;
aGB("Hash Error")
}
return
}()) return !1;
var aFx;
(aFx = {}).wY = af.mQ(9), aFx.wX = af.mQ(14), aFx.wZ = af.mQ(4), aFx.wa = 1 === af.mQ(1), aFx.a5n = af.mQ(6), aFx.a5o = af.mQ(14), aFx.aGE = af.mQ(10), aY.me.aFx = aFx,
function() {
var eJ, a6K, a6J, name, ef = aY.me.aFx.aGE,
r5 = [];
for (eJ = 0; eJ < ef; eJ++) a6K = af.mQ(1), a6J = [af.mQ(6), af.mQ(6), af.mQ(6)], name = ae.pH.pJ(af.mQ(5)), r5.push({
name: name,
a6J: a6J,
a6K: a6K
});
if (aY.me.aFx.r5 = r5, 8 === aY.me.aFx.wZ)
for (eJ = 0; eJ < ef; eJ++) r5[eJ].r9 = af.mQ(14)
}();
var eJ, ef, aGF = aY.me.aFx;
if (1 === aGF.r5.length)
for (ef = 6 < aGF.wZ ? 1 : aGF.wZ + 2, aGF.a6D = new Array(ef), aGF.a6E = new Array(ef), eJ = 0; eJ < ef; eJ++) aGF.a6D[eJ] = af.mQ(3), aGF.a6E[eJ] = af.mQ(9) + 1;
return !! function() {
var pa = af.mQ(5),
aGG = af.mQ(30),
aGH = af.mQ(30);
if (aGG + aGH > 8 * af.size) return void aGB("Corrupted File");
return function(ef) {
var eJ, id, aGK = new Uint8Array(ef),
aGL = new Uint16Array(ef),
aGM = new Uint32Array(ef),
aGN = new Uint32Array(ef);
for (aY.me.aFz = aGK, aY.me.aG0 = aGL, aY.me.aG1 = aGM, aY.me.aG2 = aGN, eJ = 0; eJ < ef; eJ++) aGK[eJ] = id = af.mQ(4), aGL[eJ] = af.mQ(9), 0 === id ? aGM[eJ] = af.mQ(22) : 1 === id ? (aGM[eJ] = af.mQ(10), aGN[eJ] = af
.mQ(10)) : 2 === id ? (aGM[eJ] = af.mQ(10), aGN[eJ] = af.mQ(9)) : 3 === id || 4 === id ? (aGM[eJ] = af.mQ(10), aGN[eJ] = af.mQ(22)) : 5 === id || 6 === id ? aGM[eJ] = af.mQ(10) : 7 === id && (aGM[eJ] = af.mQ(1))
}(aGG),
function(ef, pa) {
var eJ, aG3 = new Uint8Array(ef),
aG4 = new Array(ef);
for (aG4.fill(0), aY.me.aG3 = aG3, aY.me.aG4 = aG4, eJ = 0; eJ < ef; eJ++) aG3[eJ] = af.mQ(1), aG4[eJ] = af.mQ(pa)
}(aGH, pa), 1
}() && (af.g4 < 8 * af.size - 13 || af.g4 > 8 * af.size ? (aGB("Out Of Bounds Error: " + af.g4 + " " + 8 * af.size), !1) : (aY.me.aDo = g3, !0))
}
}
function aFv() {
this.sE = function() {
var aGF, pa = function() {
var eJ, aG4 = aY.me.aG4,
ef = aG4.length,
max = 0;
for (eJ = 0; eJ < ef; eJ++) max = Math.max(max, aG4[eJ]);
return pg(Math.max(max, 1))
}(),
aGP = function(pa) {
return 179 + function() {
var eJ, r5 = aY.me.aFx.r5,
ef = r5.length,
aGP = 24 * ef;
for (eJ = 0; eJ < ef; eJ++) aGP += 16 * r5[eJ].name.length;
8 === aY.me.aFx.wZ && (aGP += 14 * ef);
return aGP
}() + (1 === aY.me.aFx.r5.length ? 12 * aY.me.aFx.a6D.length : 0) + function() {
var eJ, aFz = aY.me.aFz,
ef = aFz.length,
aGP = 13 * ef,
aGa = [22, 20, 19, 32, 32, 10, 10, 1, 0, 0];
for (eJ = 0; eJ < ef; eJ++) aGP += aGa[aFz[eJ]];
return aGP
}() + function(pa) {
return aY.me.aG4.length * (1 + pa)
}(pa)
}(pa);
ac.d4(aGP + (6 - aGP % 6) % 6), aGF = aY.me.aFx, ac.pU(9, dC), ac.pU(31, ac.size), ac.g4 += 16, ac.pU(9, aGF.wY), ac.pU(14, aGF.wX), ac.pU(4, aGF.wZ), ac.pU(1, aGF.wa), ac.pU(6, aGF.a5n), ac.pU(14, aGF.a5o), ac.pU(10, aGF.r5.length);
var eJ, r5 = aY.me.aFx.r5,
ef = r5.length;
for (eJ = 0; eJ < ef; eJ++) ac.pU(1, r5[eJ].a6K), ac.pU(18, (r5[eJ].a6J[0] << 12) + (r5[eJ].a6J[1] << 6) + r5[eJ].a6J[2]), ac.pU(5, r5[eJ].name.length), ad.pH.pV(r5[eJ].name);
if (8 === aY.me.aFx.wZ)
for (eJ = 0; eJ < ef; eJ++) ac.pU(14, r5[eJ].r9);
return function() {
var eJ, aGF = aY.me.aFx;
if (1 === aGF.r5.length)
for (eJ = 0; eJ < aGF.a6D.length; eJ++) ac.pU(3, aGF.a6D[eJ]), ac.pU(9, aGF.a6E[eJ] - 1)
}(),
function(pa) {
var eJ, aFz = aY.me.aFz,
dt = aY.me.aG0,
dv = aY.me.aG1,
dx = aY.me.aG2,
ef = aFz.length;
for (ac.pU(5, pa), ac.pU(30, ef), ac.pU(30, aY.me.aG4.length), eJ = 0; eJ < ef; eJ++) ac.pU(4, aFz[eJ]), ac.pU(9, dt[eJ]), 0 === aFz[eJ] ? ac.pU(22, dv[eJ]) : 1 === aFz[eJ] ? (ac.pU(10, dv[eJ]), ac.pU(10, dx[eJ])) : 2 === aFz[
eJ] ? (ac.pU(10, dv[eJ]), ac.pU(9, dx[eJ])) : 3 === aFz[eJ] || 4 === aFz[eJ] ? (ac.pU(10, dv[eJ]), ac.pU(22, dx[eJ])) : 5 === aFz[eJ] || 6 === aFz[eJ] ? ac.pU(10, dv[eJ]) : 7 === aFz[eJ] && ac.pU(1, dv[eJ])
}(pa),
function(pa) {
var eJ, aG3 = aY.me.aG3,
aG4 = aY.me.aG4,
ef = aG3.length;
for (eJ = 0; eJ < ef; eJ++) ac.pU(1, aG3[eJ]), ac.pU(pa, aG4[eJ])
}(pa), ac.g4 !== aGP && l.tv("Encoder Index Error: " + ac.g4 + " " + aGP), ac.g4 = 40, ac.pU(16, function() {
var eJ, em = ac.mP,
ef = ac.size,
a7b = 0;
for (eJ = 7; eJ < ef; eJ++) a7b = a7b + em[eJ] & 65535;
return a7b
}()), af.ct(ac.mP), ad.pF.s3(ad.pF.s1(eX(aGP - 1, 6) + 1))
}
}
function c7() {
var iT, yg = !1,
aGb = !1,
aGc = -1e4;
function resize(gn) {
iT = 0, a0.g8() && (aGe(gn) || yg) && (yg = !1, b1.resize(), ay.ct(), w.ct(), aw.ct(), x.resize(), r.resize(), m.resize(), b7.resize(), at.resize(), 1 <= b.sm ? (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.a0Y()) : (2 === y.tp() && z.resize(), y.a4q(), y.a4t()), b4.d3 = !0)
}
function aGd(df) {
return df && 128 < df ? Math.floor(df) : 128
}
function aGe(gn) {
var gA, gF, aGg, r1 = aGd(document.documentElement.clientWidth),
zy = aGd(window.visualViewport && 2 !== b8.id ? window.visualViewport.height : document.documentElement.clientHeight);
return gA = r1, gF = zy, aGg = 0 !== b8.id || gA < gF ? 700 : 1200, aGg = Math.min(aGg / ((gA + gF) / 2), 1), aGg = 0 === bA.dK.data[1].value ? 2 * aGg / 3 : Math.min(aGg + (bA.dK.data[1].value - 1) * (1 - aGg) / 2, 1), aL.nN = (window
.devicePixelRatio || 1) * aGg, hoveringTooltip.canvasPixelScale = aL.nN, gn && !aGb ? (aGb = !0, document.body.removeChild(uD)) : aGb && (aGb = !1, document.body.appendChild(uD)), gA = Math.floor(.5 + r1 * aL.nN), gF = Math.floor(.5 +
zy * aL.nN), (gA !== aL.gA || gF !== aL.gF) && (aL.gA = gA, aL.gF = gF, aL.min = a1P(gA, gF), aL.max = y6(gA, gF), aL.g1 = eX(gA + gF, 2), aL.oT = gA / gF, uD.width = gA, uD.height = gF, uD.style.width = r1 + "px", uD.style.height =
zy + "px", 1)
}
this.gA = 0, this.gF = 0, this.min = 0, this.max = 0, this.g1 = 0, this.oT = 1, this.nN = 1, this.cu = function() {
this.gA = aGd(document.documentElement.clientWidth) + 2, this.gF = aGd(document.documentElement.clientHeight) + 2
}, this.ct = function() {
iT = 1, uD = document.getElementById("canvasA"), (gM = uD.getContext("2d", {
alpha: makeMainMenuTransparent
})).imageSmoothingEnabled = !1, aGe(0)
}, this.iE = function() {
aQ.iE(), 50 <= ++iT && resize(0)
}, this.d8 = function(gn) {
yg = !0, resize(gn)
}, this.uw = function() {
aGc + 1e3 > b4.dc || (aGc = b4.dc, resize(0))
}
}
function c3() {
var player, ha, pz, pt, jj, jk, jl, jm, g4, aGi, id;
function aGo() {
var hZ;
if (a1.er(pz)) hZ = b.ej;
else {
if ((hZ = a1.eq(pz)) === player) return void aGq(!0);
if (!fw(player, hZ)) return function(hZ) {
var max = a6.f5[hZ] * b.vl - 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.yZ(max, player), b2.ed[10] += max), a6.eb[hZ] += max, a5.mD(hZ, max))
}(hZ), void aGq(!0)
}
player === b.ea && (b2.ed[13] += ha), f.eZ(player, id), a3.ee(player, aGi), a6.eg[player].push(pt), a3.hW(player, ha, hZ), d.hX(player, !0)
}
function aGq(aGt) {
f.eZ(player, id), a3.ee(player, aGi), aGt && (a6.eb[player] += ha)
}
function aGk() {
a1.a7H(pz, player) && a1.a7J(pz)
}
function aGj(eJ, a8k, zU, hi, kT) {
if (g4 = eJ, id = a8k, player = zU, jj = a1.jn(hi), jk = a1.gK(hi), jl = a1.jn(kT), jm = a1.gK(kT), pt = pz = a1.qU(jj, jk), -1 !== (aGi = a3.jq(player, id))) return ha = a3.eR(player, aGi), 1;
aGk(), f.eZ(player, id)
}
this.iE = function(eJ, id, zU, hi, kT) {
aGj(eJ, id, zU, hi, kT) && (aGk(), function() {
var aGu = eX(ha, 128);
ha -= aGu = aGu < 1 ? 1 : aGu, player === b.ea && (b2.ed[15] += aGu);
if (ha <= b.eY) return player === b.ea && (b2.ed[15] += ha), void aGq(!1);
return a3.f4(player, aGi, ha), 1
}()) && (eJ = a1.qU(jj, jk), pz = Math.abs(jl - jj) >= Math.abs(jm - jk) ? eJ + eA[jj < jl ? 1 : 3] : eJ + eA[jk < jm ? 2 : 0], jj = a1.jn(pz), jk = a1.gK(pz), f.jZ(g4, pz), ! function() {
if (a1.eh(pz)) return;
return 1
}() ? aGo() : a1.fn(pz) && a1.a7M(pz, player))
}, this.jc = function(zU, hi) {
player = zU, pz = a1.qU(a1.jn(hi), a1.gK(hi)), aGk()
}
}
function cd() {
this.aFO = new aGv, this.t1 = new aGw
}
function aGw() {
this.t2 = function() {
let ef = iV;
var r5 = iW,
t7 = a6.t7,
a50 = this.a7q();
for (let eJ = 0; eJ < ef; eJ++) {
var em = r5[eJ];
a1.sW(em) && (t7[em] = a50)
}
var mh = a6.mh,
hQ = a6.hQ,
hR = a6.hR,
aAU = a6.aAU;
ef = b.ht;
for (let eJ = 0; eJ < ef; eJ++)(0 === aAU[eJ] || hR[eJ] < 1 || 2 * mh[eJ] > 3 * (hQ[eJ] + hR[eJ])) && (t7[eJ] = 0);
let sx = 0;
for (let eJ = 0; eJ < ef; eJ++) sx += 0 < t7[eJ];
return sx
}, this.a7q = function() {
return Math.min(65535, b4.iS())
}
}
function aGv() {
function aH2(df, aAj, min, max) {
return min + (df * aAj + 137) % (max - min)
}
this.iE = function(aGx, aGy) {
let aH0 = 1;
for (let eJ = 0; eJ <= 10; eJ++) aH0 = function(aH0, aGx, aGy, fg) {
var ef = 65536 + (aH0 * fg + 7 & 16383);
for (let eJ = 0; eJ < ef; eJ++) aH0 = 1 + aH0 * aGx % aGy;
return aH0
}(aH0, aGx, aGy, eJ), aGx = aH2(aGx, aH0, 16384, 65536), aGy = aH2(aGy, aH0, 1 << 18, 1 << 20);
return aH0 - 1 & 65535
}
}
function c4() {
var aH3, aH4, fn, aH5;
this.ct = function() {
var eJ, fO, fP, a6J, aH6, gA, gF, qw, gS, pr, df, em, i6, hg, xG;
if (function() {
if (fn = !0, aH5 = "rgb(" + aq.po[0] + "," + aq.po[1] + "," + aq.po[2] + ")", aq.aAq(aq.qB)) return 1;
return fn = !1, 0
}()) aH4 = null;
else {
for (aH3 = eX(96, 4), aH6 = 1 === aq.qB ? (a6J = 0, 160) : (a6J = 128, 32), aH5 = "rgb(" + a6J + "," + a6J + "," + a6J + ")", aH4 = new Array(4), eJ = 3; 0 <= eJ; eJ--) {
if (aH4[eJ] = document.createElement("canvas"), gA = eJ % 2 == 0 ? aq.eE : aH3, gF = eJ % 2 == 0 ? aH3 : aq.eF + 2 * aH3, aH4[eJ].width = gA, aH4[eJ].height = gF, pr = (gS = (qw = aH4[eJ].getContext("2d", {
alpha: !1
})).getImageData(0, 0, gA, gF)).data, eJ % 2 == 0)
for (fP = aH3 - 1; 0 <= fP; fP--)
for (df = aH6 + Math.floor((fP + 1) * (a6J - aH6) / (aH3 + 1)), fO = gA - 1; 0 <= fO; fO--) pr[em = 4 * ((0 === eJ ? aH3 - fP - 1 : fP) * gA + fO)] = df, pr[em + 1] = df, pr[em + 2] = df, pr[em + 3] = 255;
else {
for (fO = aH3 - 1; 0 <= fO; fO--)
for (df = aH6 + Math.floor((fO + 1) * (a6J - aH6) / (aH3 + 1)), fP = gF - 1 - aH3; aH3 <= fP; fP--) pr[em = 4 * (fP * gA + (3 === eJ ? aH3 - fO - 1 : fO))] = df, pr[em + 1] = df, pr[em + 2] = df, pr[em + 3] = 255;
for (hg = 1; 0 <= hg; hg--)
for (fO = aH3 - 1; 0 <= fO; fO--)
for (fP = aH3 - 1; 0 <= fP; fP--) i6 = (Math.pow(fO * fO + fP * fP, .5) + 1) / (aH3 + 1), df = aH6 + Math.floor((1 < i6 ? 1 : i6) * (a6J - aH6)), pr[em = 4 * ((0 === hg ? aH3 - fP - 1 : fP + hg * (gF - aH3)) * gA + (
1 === eJ ? fO : aH3 - fO - 1))] = df, pr[em + 1] = df, pr[em + 2] = df, pr[em + 3] = 255
}
qw.putImageData(gS, 0, 0)
}
xG = aH6, aq.pj.fillStyle = "rgb(" + xG + "," + xG + "," + xG + ")", aq.pj.fillRect(0, 0, aq.eE, 1), aq.pj.fillRect(0, aq.eF - 1, aq.eE, 1), aq.pj.fillRect(0, 0, 1, aq.eF), aq.pj.fillRect(aq.eE - 1, 0, 1, aq.eF)
}
}, this.qs = function() {
var hg = fn ? 0 : -aH3;
aCP(hg, hg, aq.eE - 2 * hg, aq.eF - 2 * hg, az.aH9, az.aHA, az.aHB, az.aHC) || (gM.fillStyle = aH5, gM.fillRect(0, 0, aL.gA, aL.gF))
}, this.gL = function() {
fn || (aCO(0, -aH3, aq.eE, aH3, az.aH9, az.aHA, az.aHB, az.aHC) && gM.drawImage(aH4[0], az.aHD, az.aHE - aH3), aCO(aq.eE, -aH3, aH3, aq.eF + 2 * aH3, az.aH9, az.aHA, az.aHB, az.aHC) && gM.drawImage(aH4[1], az.aHD + aq.eE, az.aHE - aH3),
aCO(0, aq.eF, aq.eE, aH3, az.aH9, az.aHA, az.aHB, az.aHC) && gM.drawImage(aH4[2], az.aHD, az.aHE + aq.eF), aCO(-aH3, -aH3, aH3, aq.eF + 2 * aH3, az.aH9, az.aHA, az.aHB, az.aHC) && gM.drawImage(aH4[3], az.aHD - aH3, az.aHE - aH3))
}
}
function cR() {
this.fo = new aHF, this.a7o = new aHG, this.qt = new aHH, this.j4 = new aHI, this.hI = new aHJ, this.xG = new aHK, this.aHL = new aHM, this.iD = new aHN, this.mq = new aHO, this.ct = function() {
this.qt.ct(), this.j4.ct(), this.hI.ct(), this.xG.ct()
}
}
function aHN() {
function aHU(player, hi, aHW, aHX) {
for (var jj, jk, gA, gF, gY, aHY, jl, jm, ef = hi + aHX, eJ = hi; eJ < ef; eJ += aHW)
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) ? (aHY = jj + gY, jk) : gY <= gA + gF ? (aHY = jl, jk + gY - gA) : gY <= 2 * gA + gF ? (aHY = jj + gY - gA - gF, jm) : (aHY = jj, jk + gY - 2 *
gA - gF), aHV(player, jm = a1.qU(aHY, jl))) return jm;
return -1
}
function aHV(vh, en) {
return a1.eh(en) && (a1.er(en) || vh !== (en = a1.eq(en)) && fw(vh, 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, qY, qX, 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 (qY = jj + aj.fK(aM.random() * h1, df), qX = jk + aj.fK(aM.random() * h4, df), qY = a1.qU(qY, qX), aHV(player, qY)) return qY;
return -1
}(player);
if (0 <= en) return al.mq.mr(player, en >> 2);
if (0 <= (en = aHU(player, 1, 4, 40))) return al.mq.mr(player, en >> 2);
if (0 <= (en = aHU(player, 40, 8, 200))) return al.mq.mr(player, en >> 2);
return
}(player) && !! function(vh) {
if (0 === am.dn[2]) return void console.log("error 325234");
var aHS = am.dn[1] + ak.gZ[am.dn[2] - 1] << 2;
if (a1.er(aHS)) return 1;
return aHS = a1.eq(aHS), vh !== aHS && !!fw(vh, aHS)
}(player) && function(player) {
return aZ.fU.ml(player), al.j4.ms(player), !0
}(player) : void 0)
}
}
function aHF() {
function aHb(aHa) {
var aHl = 4 + .03 * (1 + 1.5 * b8.cy.g0()) * aL.g1 / hB;
return ak.h7(aHa, am.dn[1]) < aHl
}
this.fp = function(player, aHa) {
return !!ak.hD(aHa) && al.j4.mc !== al.j4.mo && al.j4.mb[player] !== al.j4.mp && 0 !== a6.ey[player].length && !!al.mq.mr(player, aHa) && !!aHb(aHa)
}, this.lv = function(player, lu, aHa) {
return !!(ak.hD(aHa) && this.mt(player, lu) && al.mq.mu(aHa) && aHb(aHa))
}, this.mt = function(player, id) {
for (var aHc, gI = player << 3, gJ = gI + al.j4.mb[player], aHd = al.j4.aHd, aHe = al.j4.aHe, eJ = gI; eJ < gJ; eJ++)
if (id === aHe[aHc = aHd[eJ]]) return am.dn[3] = aHc, !0;
return !1
}, this.lt = function(fe) {
var xH = al.xG.xH;
return !!this.mt(b.ea, xH) && (aX.fk.lt(xH, fe), !0)
}, this.xI = function(gD, gE, aHf = !1) {
var eJ, gJ, aHg, aHd, aHh, aHi, aHj, i6, yL, aHk, player = b.ea,
ef = al.j4.mb[player];
if (0 === ef) return !1;
for (aHd = al.j4.aHd, aHi = al.j4.aHi, yL = al.j4.yL, gJ = (player = player << 3) + ef, aHh = .4 * aZ.g5.nJ(.5) * aL.g1 / hB, aHg = -1, eJ = player; eJ < gJ; eJ++) aHk = aHd[eJ], aHj = 16 * (.625 + .125 * Math.sqrt(Math.sqrt(yL[aHk]))), (
i6 = ak.gx(gD, gE, aHi[aHk])) - aHj < aHh && (aHh = i6, aHg = aHk);
return !(aHg < 0 || (aHf ? am.dk[0] = al.j4.aHe[aHg] : al.xG.xH = al.j4.aHe[aHg], 0))
}, this.xP = function(gD, gE) {
var eJ, aHg, aHh, aHi, aHj, i6, yL, ef = al.j4.mc;
if (ef < 1) return -1;
for (aHi = al.j4.aHi, yL = al.j4.yL, aHh = 1e3, aHg = -1, eJ = 0; eJ < ef; eJ++) aHj = 16 * aZ.g5.nJ(.5) * (.625 + .125 * Math.sqrt(Math.sqrt(yL[eJ]))), (i6 = ak.gx(gD, gE, aHi[eJ])) < aHh && i6 < aHj && (aHh = i6, aHg = eJ);
return aHg
}
}
function aHG() {
this.a7p = function(player) {
for (var aHd = al.j4.aHd, gI = player << 3, eJ = gI + al.j4.mb[player] - 1; gI <= eJ; eJ--) this.aHm(aHd[eJ])
}, this.aHm = function(aHn) {
var j4 = al.j4,
aHo = j4.mc - 1,
aHp = j4.yK[aHn],
aHq = j4.aHr[aHn],
aHs = j4.aHi[aHn];
j4.mc = aHo, j4.yK[aHn] = j4.yK[aHo], j4.aHt[aHn] = j4.aHt[aHo], j4.aHu[aHn] = j4.aHu[aHo], j4.aHi[aHn] = j4.aHi[aHo], j4.aHv[aHn] = j4.aHv[aHo], j4.yL[aHn] = j4.yL[aHo], j4.aHr[aHn] = j4.aHr[aHo], j4.aHe[aHn] = j4.aHe[aHo], j4.aHw[aHn] =
j4.aHw[aHo], j4.aHd[j4.yK[aHn]] = aHn,
function(a5f) {
var player = a5f >> 3,
j4 = al.j4,
ef = j4.mb[player] - 1,
aHz = (player << 3) + ef;
j4.mb[player] = ef, aHz !== a5f && (j4.aHd[a5f] = j4.aHd[aHz], j4.yK[j4.aHd[a5f]] = a5f)
}(aHp), al.hI.hI[ak.hH(j4.aHi[aHn])][j4.aHr[aHn]] = aHn, aHo = ak.hH(aHs), aHp = aHq, aHo = al.hI.hI[aHo], j4 = aHo.pop(), aHp !== aHo.length && (aHo[aHp] = j4, al.j4.aHr[j4] = aHp)
}
}
function aHH() {
var aI1, rN = 8,
aI2 = new Array(2);
function aI3(g4) {
var gP = rN + 4,
vK = aZ.g5.pf(gP, gP),
gW = aZ.g5.getContext(vK, !0),
gS = aZ.g5.getImageData(gW, gP, gP),
pr = gS.data;
return aI4(pr, gP + 1, g4), aI4(pr, gP + 2, g4), aI4(pr, 2 * gP + 1, g4), aI4(pr, 2 * gP - 3, g4), aI4(pr, 2 * gP - 2, g4), aI4(pr, 3 * gP - 2, g4), aI4(pr, gP * (gP - 3) + 1, g4), aI4(pr, gP * (gP - 2) + 1, g4), aI4(pr, gP * (gP - 2) + 2,
g4), aI4(pr, gP * (gP - 2) - 2, g4), aI4(pr, gP * (gP - 1) - 3, g4), aI4(pr, gP * (gP - 1) - 2, g4), gW.putImageData(gS, 0, 0), vK
}
function aI4(pr, fe, g4) {
fe *= 4;
pr[fe] = 255, pr[1 + fe] = 255, pr[2 + fe] = g4, pr[3 + fe] = 255
}
function pf(player) {
var vK = aZ.g5.pf(rN, rN);
return function(gW, player) {
var fO, fP, h1, fe, aI6, a5g, gP = rN,
gS = aZ.g5.getImageData(gW, gP, gP),
pr = gS.data,
pb = (gP >> 1) - .5,
aH5 = a1.yx(player),
aI8 = aZ.pp.v7(aH5, .5);
aZ.pp.v8(aH5, aI8, 300) || aZ.pp.vA(aH5, 100);
for (fP = 0; fP < gP; fP++)
for (fO = 0; fO < gP; fO++) a5g = (gP - 1.5) * (gP - 1.5) / 4, aI6 = (h1 = (h1 = fO - pb) * h1 + (h1 = fP - pb) * h1) <= (gP - 4.5) * (gP - 4.5) / 4 ? aI8 : aH5, pr[fe = 4 * (fP * gP + fO)] = aI6[0], pr[1 + fe] = aI6[1], pr[2 +
fe] = aI6[2], pr[3 + fe] = a5g < h1 ? 0 : 255;
gW.putImageData(gS, 0, 0)
}(aZ.g5.getContext(vK, !0), player), vK
}
this.ct = function() {
aI1 = new Array(b.ej), aI2[0] = aI3(255), aI2[1] = aI3(0)
}, this.gL = function() {
var eJ, player, aI9, ha, aIA, h0, aID, aIF, aIG, aHi = al.j4.aHi,
yK = al.j4.yK,
yL = al.j4.yL,
aIH = aI1,
aII = b.ea,
aIJ = -1,
ef = al.j4.mc,
aIK = aL.gA,
aIL = aL.gF,
aIM = aq.eE << 4,
wC = hB,
fg = wC / rN,
jj = hA / wC,
jk = hC / wC,
h1 = (aIK + hA) / wC - jj,
h4 = (aIL + hC) / wC - jk,
gW = gM;
for (al.fo.mt(b.ea, al.xG.xH) && (aIJ = am.dn[3]), gW.fillStyle = aa.gN, aZ.g5.textAlign(gW, 1), aZ.g5.textBaseline(gW, 1), eJ = 0; eJ < ef; eJ++) player = yK[eJ] >> 3, ha = yL[eJ], aI9 = .625 + .125 * Math.sqrt(Math.sqrt(ha)), aIA = (
h0 = aHi[eJ]) % aIM / 16 - aI9, h0 = aIL * (Math.floor(h0 / aIM) / 16 - aI9 - jk) / h4, aID = -2 * (aIG = wC * aI9) * (1 + (aIF = +(player === aII)) / 8), aIF = aIF * aIG / 4, (aIG = aIK * (aIA - jj) / h1) < aID || h0 < aID ||
aIK + aIF < aIG || aIL + aIF < h0 || (aIA = aI9 * wC, gW.imageSmoothingEnabled = (aID = 2 * aI9 * fg) < 3, void 0 === (aIF = aIH[player]) && (aIH[player] = aIF = pf(player)), player === aII && (gW.setTransform(aID, 0, 0, aID, aIG -
2 * aID, h0 - 2 * aID), gW.drawImage(aI2[+(eJ === aIJ)], 0, 0)), gW.setTransform(aID, 0, 0, aID, aIG, h0), gW.drawImage(aIF, 0, 0), (aI9 = 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) * aIA)) < 6) || (gW.setTransform(1, 0, 0, 1, 0, 0), gW.font = aZ.g5.g6(1, aI9), gW.fillText(aZ.jr.js(ha), aIG + aIA, h0 + aIA + .1 * aI9));
gW.imageSmoothingEnabled = !1, gW.setTransform(1, 0, 0, 1, 0, 0)
}
}
function aHM() {
this.iE = function() {
for (var aIP, aHL, aHw = al.j4.aHw, aHi = al.j4.aHi, aHu = al.j4.aHu, eJ = al.j4.mc - 1; 0 <= eJ; eJ--) aIP = aHi[eJ], 0 !== (aHL = aHw[eJ]) && aIP === aHu[eJ] && (! function(eJ, aIR, gm) {
var hZ, player = al.j4.yK[eJ] >> 3,
gm = aIR + ak.gZ[gm] << 2,
eJ = al.j4.yL[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(aIR << 2), a3.hW(player, eJ, hZ), d.hX(player, !0)
}(eJ, ak.hG(aIP), aHL - 1), al.a7o.aHm(eJ))
}
}
function aHI() {
this.aIS = null, this.mo = 512, this.mp = 8, this.mc = 0, this.jU = 0, this.yK = new Uint16Array(this.mo), this.aHt = new Uint32Array(this.mo), this.aHu = new Uint32Array(this.mo), this.aHi = new Uint32Array(this.mo), this.aHv = new Uint16Array(
this.mo), this.yL = new Uint32Array(this.mo), this.aHr = new Uint16Array(this.mo), this.aHe = new Uint16Array(this.mo), this.aHw = new Uint8Array(this.mo), this.mb = new Uint8Array(b.ej), this.aHd = new Uint16Array(this.mp * b.ej), this
.ct = function() {
this.jU = 0, this.mc = 0, this.aIS = new Uint8Array(aq.eE + aq.eF), this.mb.fill(0)
}, this.ms = function(player) {
var ef = this.mc,
aIT = ak.hF(am.dn[0]),
aIU = this.mb[player],
aIV = (player << 3) + aIU;
a6.jS[player] = 2, this.yK[ef] = aIV, this.aHt[ef] = aIT, this.aHi[ef] = aIT, this.aHu[ef] = ak.hF(am.dn[1]), this.aHv[ef] = 0, this.yL[ef] = am.dj[0], this.aHr[ef] = al.hI.ms(ef, ak.hH(aIT)), this.aHe[ef] = this.jU, this.aHw[ef] = am.dn[
2], this.jU = this.jU + 1 & 1023, this.aHd[aIV] = ef, this.mb[player] = aIU + 1, this.mc++
}, this.lt = function() {
var aHc = am.dn[3];
this.aHt[aHc] = this.aHi[aHc], this.aHu[aHc] = ak.hF(am.dn[1]), this.aHv[aHc] = 0, this.aHw[aHc] = am.dn[2]
}, this.iE = function() {
if (b4.iS() % 5 == 3) {
al.aHL.iE(), ! function(xT) {
var eJ, aIZ, aIa, aIb, aIc, aIT, aIg, aIh, eo, en, aHt = xT.aHt,
aHu = xT.aHu,
aHi = xT.aHi,
yL = xT.yL,
aHv = xT.aHv,
aHr = xT.aHr,
xT = xT.mc,
aIM = aq.eE << 4;
for (eJ = xT - 1; 0 <= eJ; eJ--) aIa = aHi[eJ], aIZ = aHu[eJ], aIa !== aIZ && (aIT = aHt[eJ], aIg = aIZ % aIM - (aIc = aIT % aIM), aIh = ~~((aIZ + .5) / aIM) - (aIT = ~~((aIT + .5) / aIM)), eo = ~~Math.sqrt(aIg * aIg + aIh *
aIh + .5), en = 4e5 + 2e4 * ~~Math.sqrt(.5 + (Math.sqrt(yL[eJ] + .5) << 4)), 65535 <= (en = aHv[eJ] + Math.max(~~((.5 + en) / eo), 1)) ? aHi[eJ] = aIb = aIZ : (aHv[eJ] = en, aHi[eJ] = aIb = aIc + aj.fK(en * aIg,
65536) + aIM * (aIT + aj.fK(en * aIh, 65536))), aHr[eJ] = al.hI.aIj(aHr[eJ], aIa, aIb))
}(this), ! function(xT) {
var eJ, q4, pb, hp, iT, aIk, rj, aIl, pz, ge, jj, jk, aIm, aHh, aIn, q0, aIT, aIq, ef = xT.mc,
aHi = xT.aHi,
yK = xT.yK,
yL = xT.yL,
hI = al.hI.hI,
aIr = hI.length,
aIs = al.hI.aIs,
aIM = aq.eE << 4,
aIt = b.hT,
aIu = b5.iU,
en = (ef - 1) * (b4.iS() % 2);
for (eJ = 0; eJ < ef; eJ++) {
for (q4 = Math.abs(eJ - en), aIT = aHi[q4], pb = ak.hH(aIT), pz = yK[q4] >> 3, jj = aIT % aIM, jk = ~~((aIT + .5) / aIM), aIT = yL[q4], aIq = 80 + ~~Math.sqrt(.5 + (Math.sqrt(aIT + .5) << 8)), aHh = Math.min(aIq * aIq,
262144), aIn = -1, hp = 0; hp < 9; hp++)
if (!((aIk = pb + aIs[hp]) < 0 || aIr <= aIk))
for (aIl = hI[aIk], rj = aIl.length, iT = 0; iT < rj; iT++) aIm = aIl[iT], q0 = yK[aIm] >> 3, pz == q0 || aIt && aIu[pz] === aIu[q0] || (q0 = aHi[aIm], (q0 = (ge = jj - q0 % aIM) * ge + (ge = jk - ~~((q0 + .5) /
aIM)) * ge) < aHh && (aIn = aIm, aHh = q0)); - 1 !== aIn && (aIT = Math.min(Math.max(1, aj.fK(aIT * (aIq - Math.floor(Math.sqrt(aHh + .5))), 5 * aIq)), yL[aIn]), yL[q4] -= aIT >> 4, yL[aIn] -= aIT)
}
}(this);
var eJ, ha, yL = (xT = this).yL,
xT = xT.mc;
for (eJ = xT - 1; 0 <= eJ; eJ--) ha = yL[eJ], 0 < (ha -= Math.max(1, ha >> 7)) ? yL[eJ] = ha : al.a7o.aHm(eJ)
}
}
}
function aHJ() {
this.aIv = 32, this.fO = 0, this.fP = 0, this.hJ = 0, this.aIw = 0, this.aIx = 4, this.hI = null, this.aIs = new Int16Array(9), this.ct = function() {
this.hJ = 1 + aj.fK(aq.eE - 1, this.aIv), this.aIw = 1 + aj.fK(aq.eF - 1, this.aIv), this.hI = new Array(this.hJ * this.aIw), aZ.pp.v6(this.hI);
var fO, fP, aIs = this.aIs,
gA = this.hJ;
for (fO = -1; fO <= 1; fO++)
for (fP = -1; fP <= 1; fP++) aIs[3 * (1 + fP) + 1 + fO] = fP * gA + fO
}, this.ms = function(aIz, eJ) {
return this.hI[eJ].push(aIz), this.hI[eJ].length - 1
}, this.aIj = function(aJ0, aIT, aIZ) {
var aJ1, aJ2, aIT = ak.hH(aIT),
aIZ = ak.hH(aIZ);
return aIT === aIZ ? aJ0 : (aJ1 = this.hI[aIT].pop(), this.hI[aIT].length === aJ0 ? this.ms(aJ1, aIZ) : (aJ2 = this.hI[aIT][aJ0], this.hI[aIT][aJ0] = aJ1, al.j4.aHr[aJ1] = aJ0, this.ms(aJ2, aIZ)))
}
}
function aHO() {
function tq(aIZ, aJ3) {
if (function(aIZ, aHa) {
var gd = ak.hG(aIZ),
aJ6 = Math.abs(ak.gf(aHa) - ak.gf(gd)),
gd = Math.abs(ak.gh(aHa) - ak.gh(gd));
return 0 !== Math.max(aJ6, gd) && (function(aIT, aIZ, aJ6, aJ7) {
var aJ9 = ak.h3(aIT),
aIT = ak.h6(aIT),
aJB = ak.h3(aIZ),
aIZ = ak.h6(aIZ),
aJB = aJB - aJ9,
aIZ = aIZ - aIT,
aJF = Math.abs(aJB),
aJG = Math.abs(aIZ),
aJB = 0 < aJB ? 1 : 3,
aIZ = 0 < aIZ ? 2 : 0;
aJG < aJF ? aJJ(aJ9, aIT, aJ9 + aJF, aIT + aJG, aJB, aIZ, aJ6) : aJJ(aIT, aJ9, aIT + aJG, aJ9 + aJF, aIZ, aJB, aJ7)
}(aIZ, ak.hF(aHa), aJ6, gd), !0)
}(aIZ, aJ3)) {
if (0 === am.di[0]) return !!a1.fn(aJ3 << 2);
if (function(aHa) {
if (a1.fn(aHa << 2)) return 1;
return function(aHa) {
var eJ, gm, aIS = al.j4.aIS,
aJN = ak,
ef = am.di[0],
aJO = 4 * aHa;
for (eJ = ef - 1; 0 <= eJ; eJ--)
if (gm = aIS[eJ], aJO = aJN.hL(aJO, gm + 2 & 3), a1.fn(aJO)) return am.di[0] = eJ, am.dn[1] = aJO >> 2, am.dn[2] = 1 + gm, 1;
return
}(aHa)
}(aJ3)) {
var eJ, aJ3 = ak.hG(aIZ),
pr = a2z,
aIS = al.j4.aIS,
ef = am.di[0] - 1,
aJO = 4 * aJ3,
ga = ak.ga;
for (eJ = 0; eJ < ef; eJ++)
if (aJO += ga[aIS[eJ]], 0 !== pr[aJO + 3] || 2 !== pr[aJO + 2]) return !!void 0;
return !!1
}
}
return !1
}
function aJJ(aJ9, aJA, aJB, aJC, aJH, aJI, aJ6) {
for (var fP, aIS = al.j4.aIS, en = 0, aJK = 0, gF = aJC - aJA, gA = aJB - aJ9, aJL = aJ9 % 16, eJ = 1; eJ <= aJ6; eJ++) aIS[en++] = aJH, aIS[en] = aJI, en += (fP = (gF * (aJL + (eJ << 4)) + .5) / gA >> 4) - aJK, aJK = fP;
am.dr(am.di, en)
}
this.mr = function(player, aJ3) {
var gm, gd, gc = ak.go(player, aJ3);
return gc !== aJ3 && (gm = ak.gb(gc, aJ3), gd = ak.hK(gc, gm), !(!a1.fn(gd << 2) && (gm = ak.gl(gc, aJ3, gm), gd = ak.hK(gc, gm), a1.q1(gd << 2) || !a1.fn(gd << 2)) || (am.dn[0] = gd, am.dn[1] = aJ3, am.dn[2] = 0, !tq(ak.hF(gd), aJ3)) ||
0 !== am.dn[2] && ak.gw(player, am.dn[1] + ak.gZ[am.dn[2] - 1] << 2)))
}, this.mu = function(aJ3) {
var aIT = al.j4.aHi[am.dn[3]];
return am.dn[1] = aJ3, am.dn[2] = 0, tq(aIT, aJ3)
}
}
function aHK() {
var rN = 32,
rM = new Array(2);
function pf(iT) {
var fO, fP, fe, h4, h1, gP = rN,
vK = aZ.g5.pf(gP, gP),
gW = aZ.g5.getContext(vK, !0),
gS = aZ.g5.getImageData(gW, gP, gP),
pr = gS.data,
pb = (gP >> 1) - .5,
aJQ = Math.sqrt(pb * pb);
for (pr.fill(255), fP = 0; fP < gP; fP++)
for (fO = 0; fO < gP; fO++) h1 = fO - pb, h4 = fP - pb, fe = 4 * (fP * gP + fO), h1 = 714 * (aJQ - Math.sqrt(h1 * h1 + h4 * h4)) / aJQ, pr[2 + fe] = iT, pr[3 + fe] = 255 < h1 ? 0 : h1;
return gW.putImageData(gS, 0, 0), vK
}
this.xH = -1, this.ct = function() {
this.xH = -1, rM[0] || (rM[0] = pf(255), rM[1] = pf(0))
}, this.aJR = 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(rM[+(al.j4.aHe[eJ] === this.xH)], 0, 0))
}
}
function bs() {
this.zm = function() {
var aJU, aJV;
return !(iV < 3 || a6.f5[jM[0]] >= b.wS >> 1) && (b.hT ? (aJU = a4.a91(), aJV = a4.a92(b6.tE()), !(aJU <= 2 * aJV)) : function() {
var aJU = a4.a91();
if (2 * a6.eb[jM[0]] >= aJU) return !1;
return !0
}())
}
}
function cl() {
this.size = 501, this.tO = new Uint32Array(this.size), this.vk = new Uint32Array(this.size), this.a2c = new Uint16Array(this.size), this.aE1 = 0, this.aJW = 1, this.iT = 0, this.max = [0, 0, 0], this.ed = 0, this.aJX = ["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.aE1 = 0, this.aJW = 1, this.iT = 0, this.aJY(), this.aJZ()
}, 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.yZ(am.dj[0], player), this.ed[10] += am.dj[0])
}, this.iE = function() {
0 < this.iT-- || this.aJa()
}, this.aJa = function() {
0 !== a6.jS[b.ea] && (this.tO[this.aE1] = a6.f5[b.ea], this.vk[this.aE1] = a6.eb[b.ea], this.a2c[this.aE1] = a4.a2d(b.ea), this.aJb(this.aE1), this.aE1++, this.aE1 === this.size && this.aJc(), this.iT = this.aJW - 1, b3.g7())
}, this.aJc = function() {
this.aJY(), this.aJb(0), this.aE1 = 1 + eX(this.size, 2);
for (var eJ = 1; eJ < this.aE1; eJ++) this.tO[eJ] = this.tO[2 * eJ], this.vk[eJ] = this.vk[2 * eJ], this.a2c[eJ] = this.a2c[2 * eJ], this.aJb(eJ);
this.aJW *= 2
}, this.aJY = function() {
this.max[0] = this.max[1] = this.max[2] = 0
}, this.aJZ = function() {
this.ed = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
}, this.aJb = function(eJ) {
this.max[0] = this.tO[eJ] > this.max[0] ? this.tO[eJ] : this.max[0], this.max[1] = this.vk[eJ] > this.max[1] ? this.vk[eJ] : this.max[1], this.max[2] = this.a2c[eJ] > this.max[2] ? this.a2c[eJ] : this.max[2]
}
}
function cm() {
this.gA = 0, this.gF = 0, this.r1 = 0, this.r2 = 0, this.a3c = 0, this.a3d = 0, this.zy = 0, this.a6N = 0, this.a68 = 0, this.aJd = 0, this.aJe = 0, this.aJf = 0, this.zO = 0, this.g4 = 0, this.a2H = ["Territory", "Balance", "Interest",
"Numbers"], this.rI = !1, this.aJg = -1, this.aJh = !1, this.aJi = [0, 0], this.ct = function() {
this.rI = !1, this.aJg = -1, this.aJh = !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.zO = Math.floor(this.gF / 150), this.zO = Math.max(this.zO, 1.5), this.r1 = Math.floor(1 + .02 *
this.gA), this.r2 = Math.floor(1 + .04 * this.gA), this.zy = this.r2, this.a6N = Math.floor(1 + .075 * this.gA), this.aJd = Math.floor(1 + .1125 * this.gA), this.aJe = Math.floor(this.gA * (b8.cy.g0() ? .03 : .029)), this.aJe =
Math.max(this.aJe, 4), this.aJf = Math.floor(.035 * this.gA), this.aJf = Math.max(this.aJf, 4), this.a68 = this.gF - 2 * this.zy - this.a6N - this.aJd, this.rI && this.aJj()
}, this.fX = function(gD, gE) {
var qM, qL;
return !!this.rI && (qL = gD, qM = 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.aJd && gE < this.aJd ? 1 < k.fX(qL, qM) || this.oP() : gE < this
.aJd || (gE < this.gF - this.a6N ? (this.aJh = !0, this.aJg = (gD - 2 * this.r1 - this.a3c) / this.a3d, 3 !== this.g4 && (b4.d3 = !0)) : (qL = (qL = Math.floor(gD / (this.gA / this.a2H.length))) < 0 ? 0 : qL >= this.a2H.length ?
this.a2H.length - 1 : qL) !== this.g4 && (this.g4 = qL, this.aJj(), b4.d3 = !0)), !0)
}, this.un = function() {
var aJk = Math.floor((this.aJi[0] + hA) / hB),
aJl = Math.floor((this.aJi[1] + hC) / hB);
aJk < 1 || aJl < 1 || aJk >= aq.eE - 1 || aJl >= aq.eF - 1 || console.log(aJk + " " + aJl)
}, this.uE = function(gD, gE) {
return this.aJi[0] = gD, this.aJi[1] = gE, !(!this.rI || !this.aJh || (gD -= eX(aL.gA - this.gA, 2), gE = this.aJg, this.aJg = (gD - 2 * this.r1 - this.a3c) / this.a3d, (0 <= this.aJg && this.aJg <= 1 || 0 <= gE && gE <= 1) && (b4.d3 = !
0), 0))
}, this.ue = function() {
this.aJh && (this.aJh = !1)
}, this.ur = function() {
this.rI ? this.oP() : this.show()
}, this.show = function() {
b2.aE1 < 2 || (this.rI = !0, this.aJj())
}, this.oP = function() {
this.rI = !1, this.aJg = -1, b4.d3 = !0
}, this.aJj = function() {
this.g4 < 2 ? this.a3c = o.measureText(aZ.jr.js(b2.max[this.g4]), aZ.g5.g6(0, this.aJe)) : 2 === this.g4 && (this.a3c = o.measureText(aZ.jr.w9(6, 2), aZ.g5.g6(0, this.aJe))), this.a3d = this.gA - 2 * this.r1 - this.a3c - this.r2
}, this.g7 = function() {
this.rI && this.aJj()
}, this.gL = function() {
this.rI && this.a0E()
}, this.a0E = 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.aJd, this.gA, this.gF - this.aJd), this.aJm(), this.aDW(), gM.strokeRect(0, 0, this.gA, this.gF), aZ.g5.textAlign(gM, 2), gM.font = aZ.g5.g6(0, this.aJe),
0 === this.g4 ? this.aJn(b2.tO, fO, fP) : 1 === this.g4 ? this.aJn(b2.vk, fO, fP) : 2 === this.g4 ? this.aJo(fO, fP) : 3 === this.g4 && (this.aJp(fO, fP), this.aJq(fO, fP)), k.xg(Math.floor(fO + this.gA - .725 * this.aJd), Math.floor(
fP + .275 * this.aJd), Math.floor(.45 * this.aJd)), gM.setTransform(1, 0, 0, 1, 0, 0)
}, this.aJm = function() {
var eJ, dd;
for (gM.lineWidth = this.zO, aZ.g5.textBaseline(gM, 1), aZ.g5.textAlign(gM, 1), gM.strokeStyle = aa.gN, gM.font = aZ.g5.g6(1, this.aJf), dd = this.gA / this.a2H.length, gM.fillStyle = aa.l2, gM.fillRect(this.g4 * dd, this.gF - this.a6N,
dd, this.a6N), gM.fillStyle = aa.gN, gM.fillRect(0, this.gF - this.a6N - .5 * this.zO, this.gA, this.zO), eJ = 1; eJ <= 3; eJ++) gM.fillRect(eJ * dd, this.gF - this.a6N, this.zO, this.a6N);
for (eJ = this.a2H.length - 1; 0 <= eJ; eJ--) gM.fillText(this.a2H[eJ], (eJ + .5) * dd, this.gF - .46 * this.a6N)
}, this.aDW = function() {
gM.fillStyle = aa.lM, gM.fillRect(0, 0, this.gA, this.aJd), gM.fillStyle = aa.gN, gM.fillRect(0, this.aJd - .5 * this.zO, this.gA, this.zO), gM.font = aZ.g5.g6(1, .39 * this.aJd), gM.fillText("Statistics", Math.floor(this.gA / 2), Math
.floor(.55 * this.aJd))
}, this.aJn = function(ds, fO, fP) {
var pb = b2.max[this.g4],
fy = (gM.setTransform(1, 0, 0, 1, fO + 2 * this.r1 + this.a3c, fP + this.zy + this.aJd), gM.lineWidth = 2, this.a68 / Math.sqrt(pb));
gM.beginPath(), gM.moveTo(this.a3d, this.a68 - fy * Math.sqrt(ds[b2.aE1 - 1]));
for (var eJ = b2.aE1 - 2; 0 <= eJ; eJ--) gM.lineTo(eJ * this.a3d / (b2.aE1 - 1), this.a68 - fy * Math.sqrt(ds[eJ]));
gM.stroke();
fO = this.xg(ds, fy, .5);
fO < .95 && gM.fillText(aZ.jr.js(pb), -this.r1, 0), .05 < Math.abs(fO - .5) && gM.fillText(aZ.jr.js(Math.floor(pb / 4)), -this.r1, Math.floor(this.a68 / 2)), .05 < fO && gM.fillText("0", -this.r1, this.a68)
}, this.aJo = function(fO, fP) {
gM.setTransform(1, 0, 0, 1, fO + 2 * this.r1 + this.a3c, fP + this.zy + this.aJd), gM.lineWidth = 2;
var fy = this.a68 / Math.max(b2.max[this.g4], 1);
gM.beginPath(), gM.moveTo(this.a3d, this.a68 - fy * b2.a2c[b2.aE1 - 1]);
for (var eJ = b2.aE1 - 2; 0 <= eJ; eJ--) gM.lineTo(eJ * this.a3d / (b2.aE1 - 1), this.a68 - fy * b2.a2c[eJ]);
gM.stroke();
fO = this.xg(b2.a2c, fy, 1), fP = b2.max[this.g4] / 100;
fO < .95 && gM.fillText(aZ.jr.w9(fP, 2), -this.r1, 0), .05 < Math.abs(fO - .5) && gM.fillText(aZ.jr.w9(fP / 2, 2), -this.r1, Math.floor(this.a68 / 2)), .05 < fO && gM.fillText(aZ.jr.w9(0, 2), -this.r1, this.a68)
}, this.aJp = function(fO, fP) {
gM.setTransform(1, 0, 0, 1, fO + .34 * this.gA, fP + 2 * this.zy + this.aJd), aZ.g5.textAlign(gM, 2);
for (var a22 = this.gF - 4 * this.zy - this.a6N - this.aJd, eJ = 7; 0 <= eJ; eJ--) gM.fillText(b2.aJX[eJ], 0, eJ * a22 / 7);
gM.setTransform(1, 0, 0, 1, fO + .39 * this.gA, fP + 2 * this.zy + this.aJd), aZ.g5.textAlign(gM, 0);
fO = b2.ed[1];
for (gM.fillText(aZ.jr.w9(b2.ed[0] / (10 * (fO < 1 ? 1 : fO)), 1), 0, 0), eJ = 6; 1 <= eJ; eJ--) gM.fillText(b2.ed[eJ].toString(), 0, eJ * a22 / 7);
gM.fillText(aZ.jr.w9(100 * (1 - a6.f5[b.ea] / b2.ed[7]), 0), 0, a22)
}, this.aJq = function(fO, fP) {
gM.setTransform(1, 0, 0, 1, fO + .79 * this.gA, fP + 2 * this.zy + this.aJd), aZ.g5.textAlign(gM, 2);
var eJ, a22 = this.gF - 4 * this.zy - this.a6N - this.aJd;
for (gM.fillStyle = aa.kx, eJ = 2; 0 <= eJ; eJ--) gM.fillText(b2.aJX[eJ + 8], 0, eJ * a22 / 9);
for (gM.fillStyle = aa.kw, gM.fillText(b2.aJX[11], 0, 3 * a22 / 9), gM.fillStyle = aa.lD, eJ = 8; 4 <= eJ; eJ--) gM.fillText(b2.aJX[eJ + 8], 0, eJ * a22 / 9);
gM.fillStyle = aa.lC, gM.fillText(b2.aJX[17], 0, 9 * a22 / 9), gM.fillStyle = aa.kx;
var yI = aZ.jr.js(b2.ed[8] + b2.ed[9] + b2.ed[10] + b2.ed[11]),
aJr = gM.measureText(yI).width,
fO = (gM.setTransform(1, 0, 0, 1, fO + .83 * this.gA + aJr, fP + 2 * this.zy + this.aJd), gM.fillText(aZ.jr.js(b2.ed[8]), 0, 0), gM.fillText(aZ.jr.js(b2.ed[9]), 0, a22 / 9), gM.fillText(aZ.jr.js(b2.ed[10]), 0, 2 * a22 / 9), gM
.fillStyle = aa.kw, gM.fillText(yI, 0, 3 * a22 / 9), gM.fillStyle = aa.lD, b2.ed[13] - a3.a8l(b.ea)),
aJr = (gM.fillText(aZ.jr.js(b2.ed[12]), 0, 4 * a22 / 9), gM.fillText(aZ.jr.js(fO), 0, 5 * a22 / 9), gM.fillText(aZ.jr.js(b2.ed[14]), 0, 6 * a22 / 9), gM.fillText(aZ.jr.js(b2.ed[15]), 0, 7 * a22 / 9), gM.fillText(aZ.jr.js(b2.ed[16]),
0, 8 * a22 / 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(aJr), 0, a22), gM.fillStyle = aa.gN
}, this.xg = function(ds, fy, a0o) {
var eJ, dI, dt;
return this.aJg < 0 || 1 < this.aJg ? .25 : (eJ = this.aJg * (b2.aE1 - 1), dt = ds[dI = Math.floor(eJ)], dt += (eJ - dI) * (ds[dI < b2.aE1 - 1 ? dI + 1 : dI] - dt), gM.strokeStyle = aa.km, .04 < this.aJg && this.aJu(0, this.a68 - fy *
Math.pow(dt, a0o), eJ * this.a3d / (b2.aE1 - 1), this.a68 - fy * Math.pow(dt, a0o)), .04 < dt / b2.max[this.g4] && this.aJu(eJ * this.a3d / (b2.aE1 - 1), this.a68, eJ * this.a3d / (b2.aE1 - 1), this.a68 - fy * Math.pow(dt,
a0o)), gM.fillStyle = aa.lF, gM.beginPath(), gM.arc(eJ * this.a3d / (b2.aE1 - 1), this.a68 - fy * Math.pow(dt, a0o), Math.max(2, .014 * this.gF), 0, 2 * Math.PI), gM.fill(), ds = this.aJg * b4.a2e, ds = 0 === a6.jS[b.ea] ?
Math.floor(ds * v.a2l) : Math.floor(ds * b4.iS()), gM.fillStyle = aa.gN, gM.fillText(1 === a0o ? aZ.jr.w9(dt / 100, 2) : aZ.jr.js(Math.floor(dt)), -this.r1, this.a68 - fy * Math.pow(dt, a0o)), aZ.g5.textAlign(gM, 1), gM.fillText(u
.a1O(ds), eJ * this.a3d / (b2.aE1 - 1), this.a68 + this.aJe - (b8.cy.g0() ? 2 : 0) - this.zO), aZ.g5.textAlign(gM, 2), fy * Math.pow(dt, a0o) / this.a68)
}, this.aJu = function(jj, jk, jl, jm) {
gM.beginPath(), gM.moveTo(jj, jk), gM.lineTo(jl, jm), gM.stroke()
}
}
function bJ() {
this.aJv = "https://", this.aJw = this.aJv + "territorial.io/", this.aE2 = this.aJw + "changelog", this.aE7 = this.aJw + "terms", this.aJx = this.aJw + "cookie_policy", this.aE8 = this.aJw + "privacy", this.aE6 = this.aJw + "tutorial", this.aE5 =
this.aJw + "players", this.aE3 = this.aJw + "clans", this.aE4 = this.aJw + "clan-results", this.a3s = this.aJv + "play.google.com/store/apps/details?id=territorial.io", this.tj = this.aJv + "apps.apple.com/app/id1581110913", this.a3t = this
.aJv + "www.youtube.com/watch?v=toZTQ8aRdFc", this.a3u = this.aJv + "discord.gg/pthqvpTXmh", this.a3v = this.aJv + "www.instagram.com/davidtschacher/", this.rd =
"🇦🇫🇦🇽🇦🇱🇩🇿🇦🇸🇦🇩🇦🇴🇦🇮🇦🇶🇦🇬🇦🇷🇦🇲🇦🇼🇦🇺🇦🇹🇦🇿🇧🇸🇧🇭🇧🇩🇧🇧🇧🇾🇧🇪🇧🇿🇧🇯🇧🇲🇧🇹🇧🇴🇧🇦🇧🇼🇧🇷🇮🇴🇻🇬🇧🇳🇧🇬🇧🇫🇧🇮🇨🇻🇰🇭🇨🇲🇨🇦🇮🇨🇰🇾🇨🇫🇹🇩🇨🇱🇨🇳🇨🇽🇨🇨🇨🇴🇰🇲🇨🇬🇨🇩🇨🇷🇭🇷🇨🇺🇨🇼🇨🇾🇨🇿🇩🇰🇩🇯🇩🇲🇩🇴🇪🇨🇪🇬🇸🇻🇬🇶🇪🇷🇪🇪🇸🇿🇪🇹🇪🇺🇫🇰🇫🇴🇫🇯🇫🇮🇫🇷🇬🇫🇵🇫🇹🇫🇬🇦🇬🇲🇬🇪🇩🇪🇬🇭🇬🇮🇬🇷🇬🇱🇬🇩🇬🇵🇬🇺🇬🇹🇬🇬🇬🇳🇬🇼🇬🇾🇭🇹🇭🇳🇭🇰🇭🇺🇮🇸🇮🇳🇮🇩🇮🇷🇮🇶🇮🇪🇮🇲🇮🇱🇮🇹🇨🇮🇯🇲🇯🇵🇯🇪🇯🇴🇰🇿🇰🇪🇰🇮🇽🇰🇰🇼🇰🇬🇱🇦🇱🇻🇱🇧🇱🇸🇱🇷🇱🇾🇱🇮🇱🇹🇱🇺🇲🇴🇲🇰🇲🇬🇲🇼🇲🇾🇲🇻🇲🇱🇲🇹🇲🇭🇲🇶🇲🇷🇲🇺🇾🇹🇲🇽🇫🇲🇲🇩🇲🇨🇲🇳🇲🇪🇲🇸🇲🇦🇲🇿🇲🇲🇳🇦🇳🇷🇳🇵🇳🇱🇳🇨🇳🇿🇳🇮🇳🇪🇳🇬🇳🇺🇳🇫🇰🇵🇲🇵🇳🇴🇴🇲🇵🇰🇵🇼🇵🇸🇵🇦🇵🇬🇵🇾🇵🇪🇵🇭🇵🇱🇵🇹🇵🇷🇶🇦🇷🇴🇷🇺🇷🇼🇼🇸🇸🇲🇸🇹🇸🇦🇸🇳🇷🇸🇸🇨🇸🇱🇸🇬🇸🇽🇸🇰🇸🇮🇸🇧🇸🇴🇿🇦🇬🇸🇰🇷🇸🇸🇪🇸🇱🇰🇧🇱🇸🇭🇰🇳🇱🇨🇲🇫🇵🇲🇻🇨🇸🇩🇸🇷🇸🇪🇸🇾🇨🇭🇹🇼🇹🇯🇹🇿🇹🇭🇹🇱🇹🇬🇹🇰🇹🇴🇹🇹🇹🇳🇹🇷🇹🇲🇹🇨🇹🇻🇺🇬🇺🇦🇦🇪🇬🇧🇺🇳🇺🇸🇻🇮🇺🇾🇺🇿🇻🇺🇻🇦🇻🇪🇻🇳🇼🇫🇪🇭🇾🇪🇿🇲🇿🇼"
}
function cT() {
this.j4 = new aJy, this.qt = new aJz, this.ct = function() {
this.j4.ct()
}, this.iE = function() {
0 !== this.j4.yj && this.j4.yj--
}
}
function aJz() {
this.gL = function() {
if (0 !== an.j4.yj && (gM.globalAlpha = Math.min(an.j4.yj / 580, 1), gM.drawImage(an.j4.aK2, 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.aK3 * hB,
aK4 = an.j4.aK4;
for (let eJ = b.ht - 1; 0 <= eJ; eJ--) ! function(eJ, en, jj, jk, jl, jm, aK4) {
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(aK4[b.hT ? b5.iU[eJ] : 1], 0, 0))
}(eJ, en, jj, jk, jl, jm, aK4);
gM.setTransform(hB, 0, 0, hB, 0, 0)
}
}
}
function aJy() {
this.aK3 = 28, this.yj = 0, this.aK2 = null;
var aK6 = this.aK4 = null;
function aK9(gP, aKB) {
var fO, fP, fe, h1, vK = aZ.g5.pf(gP, gP),
gW = aZ.g5.getContext(vK, !0),
gS = aZ.g5.getImageData(gW, gP, gP),
pr = gS.data,
pb = (gP >> 1) - .5,
aKC = .5 + pb;
for (aKC *= aKC, fP = 0; fP < gP; fP++)
for (fO = 0; fO < gP; fO++) h1 = (h1 = fO - pb) * h1 + (h1 = fP - pb) * h1, pr[fe = 4 * (fP * gP + fO)] = aKB[0], pr[1 + fe] = aKB[1], pr[2 + fe] = aKB[2], pr[3 + fe] = (aKC - h1) * aKB[3] / aKC;
return gW.putImageData(gS, 0, 0), vK
}
function aJR(eJ, gW, vK, 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(vK[b.hT ? b5.iU[eJ] : eJ < b.ht ? 1 : 0], fO, gP))
}
this.ct = function() {
var xT;
this.yj = 700,
function(xT) {
var gP = xT.aK3;
if (xT.aK4 = [], aK6 = [], b.hT)
for (let eJ = 0; eJ <= b.wU; eJ++) xT.aK4.push(aK9(gP, b5.aKA[b5.tD[eJ]])), aK6.push(aK9(gP >> 1, b5.aKA[b5.tD[eJ]]));
else xT.aK4.push(aK9(gP, b5.aKA[0])), xT.aK4.push(aK9(gP, b5.aKA[4])), aK6.push(aK9(gP >> 1, b5.aKA[0]))
}(this),
function(xT, aKD) {
var eJ, aK2 = xT.aK2,
gW = aZ.g5.getContext(aK2, !0),
ef = b.ej,
gP = xT.aK3 >> 1;
gW.imageSmoothingEnabled = !1, gW.setTransform(1, 0, 0, 1, 0, 0), aKD && gW.clearRect(0, 0, aK2.width, aK2.height);
for (eJ = b.ht; eJ < ef; eJ++) aJR(eJ, gW, aK6, gP)
}(this, null !== (xT = this).aK2 && xT.aK2.width === aq.eE - 2 && xT.aK2.height === aq.eF - 2 || (xT.aK2 = aZ.g5.pf(aq.eE - 2, aq.eF - 2), !1)), b.fj || this.wO()
}, this.wO = function() {
var ef = b.ht,
gP = this.aK3,
aK4 = this.aK4,
gW = aZ.g5.getContext(this.aK2, !0);
for (let eJ = 0; eJ < ef; eJ++) aJR(eJ, gW, aK4, gP)
}
}
function cU() {
this.aKE = -1, this.ct = function() {
this.aKE = -1
}, this.iE = function() {
-1 !== this.aKE && ap.sM.se(this.aKE)
}, this.m6 = function(player) {
return !!k.xf(player) && (1 === iV ? (this.aKE = player, b.iv && b.fj && b.mg.iE()) : (l.sc(player, player === b.ea ? 21 : 22), 8 === b.it ? this.aKE = 1 - player : b.iv ? (a7k(player), aAZ(), b.fj && b.mg.iE()) : this.aKF(player)), !0)
}, this.md = function(player) {
1 === b.sm && 0 !== a6.jS[player] && 2 !== a6.vg[player] && (8 === b.it ? this.aKE = 1 - player : this.aKF(player)), b.sp--, b.so--, l.sc(player, 4), aZ.fU.fV(2) && u.jC(!0)
}, this.aKF = function(player) {
b.fj ? (a7k(player), aAZ()) : aR.aAV(player)
}
}
function cf() {
this.a5e = ["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.a20 = [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.aKG = [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.aKH = [aa.jp, aa.gN, aa.gN, aa.gN, aa.jp, aa.jp, aa.jp, aa.jp, aa.gN];
var aKI = ["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"],
aKJ = (this.aA0 = ["rgba(" + aKI[0] + ",", "rgba(" + aKI[1] + ",", "rgba(" + aKI[2] + ",", "rgba(" + aKI[3] + ",", "rgba(" + aKI[4] + ",", "rgba(" + aKI[5] + ",", "rgba(" + aKI[6] + ",", "rgba(" + aKI[7] + ",", "rgba(" + aKI[8] + ",",
"rgba(" + aKI[9] + ","
], this.aA1 = ["rgb(" + aKI[0] + ")", "rgb(" + aKI[1] + ")", "rgb(" + aKI[2] + ")", "rgb(" + aKI[3] + ")", "rgb(" + aKI[4] + ")", "rgb(" + aKI[5] + ")", "rgb(" + aKI[6] + ")", "rgb(" + aKI[7] + ")", "rgb(" + aKI[8] + ")", "rgb(" + aKI[
9] + ")"
], this.fz = ["White", "Red", "Green", "Blue", "Yellow", "Magenta", "Cyan", "White", "Black"], this.aKA = [
[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.tD = [0, 1, 2, 3, 4, 5, 6, 7, 8], this.iU = new Uint8Array(b.ej), this.tI = null, this.aKK = null, this.ct = function(r5) {
this.iU.fill(0), this.aKL(), b.hT && (aV.iq && aV.ir.a8U ? this.a74() : 9 === b.it ? this.aKM() : this.iE(r5))
}, this.a74 = function() {
var eJ, ef = b.qN;
for (this.tD = [0, 1, 2, 3, 4, 5, 6, 7, 8], eJ = 0; eJ < ef; eJ++) this.iU[eJ] = aV.ir.a8U[eJ]
}, this.aKL = function() {
for (var eJ = this.tD.length - 1; 0 <= eJ; eJ--) this.tD[eJ] = eJ;
this.tI = [], this.aKK = []
}, this.aKM = function() {
for (var eJ = b.ht + aN.aAL - 1; 0 <= eJ; eJ--) this.iU[eJ] = 1;
for (eJ = b.ht + aN.aAL; eJ < b.ej; eJ++) this.iU[eJ] = 2;
this.tD[1] = 7, this.tD[2] = 8
}, this.iE = function(r5) {
var gi = new Uint8Array(b.ht),
gj = new Uint8Array(b.ht),
aKN = new Uint16Array(8),
aKO = new Uint16Array(this.tD.length);
this.aKP(r5, gi, gj, aKN), this.a72(aKN), b.iv || this.aKQ(aKO, gi, gj), this.aKR(gi, gj, aKO), b.iv ? this.aKS() : this.aKT()
}, this.aKP = function(r5, gi, gj, aKU) {
for (var hp, dI, aKV, ef = this.tD.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 * r5[eJ].a6J[0] - aKJ[hp][0]) + Math.abs(4 * r5[eJ].a6J[1] - aKJ[hp][1]) + Math.abs(4 * r5[eJ].a6J[2] - aKJ[hp][2]);
for (aKV = 768, hp = ef - 1; 0 <= hp; hp--) ds[dI = (hp + eJ) % ef] < aKV && (aKV = ds[dI], gi[eJ] = dI);
for (aKU[gi[eJ]] += 4, aKV = 768, hp = ef - 1; 0 <= hp; hp--) ds[dI = (hp + eJ) % ef] < aKV && dI !== gi[eJ] && (aKV = ds[dI], gj[eJ] = dI);
aKU[gj[eJ]]++
}
}, this.a72 = function(aKU) {
for (var hp, x2, ef = this.tD.length - 1, eJ = ef; 0 <= eJ; eJ--) this.tD[eJ] = eJ;
for (eJ = ef - 1; 0 <= eJ; eJ--) aKU[eJ]++;
for (eJ = 1; eJ <= ef; eJ++) {
for (x2 = 0, hp = 1; hp < ef; hp++) aKU[hp] > aKU[x2] && (x2 = hp);
aKU[x2] = 0, this.tD[eJ] = x2 + 1
}
}, this.aKQ = function(aKO, gi, gj) {
var eJ, hp, aKW, iT, eo, dI, kO, vR, aKX = this.tD.length - 1,
nd = new Uint16Array(aKX),
aKY = [],
zy = Math.max(b.ht + 1 >> 1, 6);
loop: for (eJ = 0; eJ < b.ht; eJ++)
if (null !== (aKW = aZ.jr.tS(a6.tQ[eJ]))) {
for (hp = this.tI.length - 1; 0 <= hp; hp--)
if (aKW === this.tI[hp] && this.aKK[hp].length < zy) {
this.aKK[hp].push(eJ);
continue loop
} this.tI.push(aKW), aKY.push(!1), this.aKK.push([eJ])
}
for (hp = this.tI.length - 1; 0 <= hp; hp--) {
for (eo = -1, iT = this.tI.length - 1; 0 <= iT; iT--) !aKY[iT] && (-1 === eo || this.aKK[iT].length > this.aKK[eo].length) && (eo = iT);
for (iT = aKX - 1; 0 <= iT; iT--) nd[iT] = 1;
for (iT = this.aKK[eo].length - 1; 0 <= iT; iT--) nd[gi[this.aKK[eo][iT]]] += 3, nd[gj[this.aKK[eo][iT]]]++;
for (eJ = aKX - 1; 0 <= eJ; eJ--) {
for (dI = eo % aKX, iT = aKX - 1; 0 <= iT; iT--) nd[iT] > nd[dI] && (dI = iT);
for (kO = -1, iT = b.wU; 0 < iT; iT--)
if (this.tD[iT] === dI + 1) {
kO = iT;
break
} if (nd[dI] = 0, -1 !== kO) {
for (vR = 0, iT = b.wU; 0 < iT; iT--) aKO[kO] > aKO[iT] && vR++;
if (vR !== b.wU - 1) {
for (iT = this.aKK[eo].length - 1; 0 <= iT; iT--) aKO[kO]++, this.iU[this.aKK[eo][iT]] = kO;
break
}
}
}
aKY[eo] = !0
}
}, this.aKR = function(gi, gj, aKO) {
for (var eJ, h0, ef = this.tD.length - 1, border = eX(b.ht, b.wU), aKZ = (0 < b.ht % b.wU && border++, new Uint8Array(1 + ef)), hp = ef; 1 <= hp; hp--) aKZ[this.tD[hp]] = hp;
for (eJ = 0; eJ < b.ht; eJ++) h0 = aKZ[gi[eJ] + 1], 0 === this.iU[eJ] && h0 <= b.wU && aKO[h0] < border && (aKO[h0]++, this.iU[eJ] = h0);
for (eJ = 0; eJ < b.ht; eJ++) h0 = aKZ[gj[eJ] + 1], 0 === this.iU[eJ] && h0 <= b.wU && aKO[h0] < border && (aKO[h0]++, this.iU[eJ] = h0);
for (hp = b.wU; 1 <= hp; hp--)
for (eJ = b.ht - 1; 0 <= eJ && !(aKO[hp] >= border); eJ--) 0 === this.iU[eJ] && (aKO[hp]++, this.iU[eJ] = hp)
}, this.aKS = function() {
var eJ, hg, aKU = new Uint16Array(b.wU);
for (aKU[b.wU - 1] = b.ej, eJ = b.wU - 2; 0 <= eJ; eJ--) aKU[eJ] = z.iw[eJ].rk;
for (aKU[0]--, hg = 0 === aKU[0] ? 1 : 0, eJ = b.ht; eJ < b.ej; eJ++) this.iU[eJ] = hg + 1, aKU[hg]--, aKU[hg] <= 0 && hg++
}, this.aKT = function() {
for (var eJ = b.ht; eJ < b.ej; eJ++) this.iU[eJ] = 1 + eJ % b.wU
}
}
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, aKa, aKb, ef = a6.ex[e1].length;
loop: for (var eJ = ef - 1; 0 <= eJ; eJ--) {
for (aKa = aKb = !1, eo = 3; 0 <= eo; eo--) {
if (em = a6.ex[e1][eJ] + eA[eo], a1.a7D(em, e1)) continue loop;
aKa = aKa || a1.fn(em), aKb = aKb || a1.q1(em)
}
aKa ? a6.ey[e1].push(a6.ex[e1][eJ]) : aKb ? a6.f1[e1].push(a6.ex[e1][eJ]) : a1.qg(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.qo(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.qo(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.a7D(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.a7E(e4, em) && a1.a7F(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.qo(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.qo(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.qo(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.qo(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, aKc = a3.eK(player), eJ = 0; eJ < aKc; 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(vh, vi) {
var eJ, dd, eo, en, em, aIU = a6.ex[vh].length,
aIV = a6.ex[vi].length;
for (aIV < aIU && (dd = vh, vh = vi, vi = dd, dd = aIU, aIU = aIV, 0), eo = 3; 0 <= eo; eo--)
for (en = eA[eo], eJ = 0; eJ < aIU; eJ++)
if (em = a6.ex[vh][eJ] + en, a1.ep(em) && a1.eq(em) === vi) return !0;
return !1
}
function aKd() {
this.iE = function() {
m.iE(), x.iE(), aL.iE(), aO.j4.iE(), aK.a59(), b4.d3 && (b4.d3 = !1, y.gL(), at.gL())
}
}
function aKe() {
this.dc = b4.dc, this.g4 = 0, this.aKf = 0, this.a54 = 0, this.aKg = null, this.aKh = 7, this.yk = 0, this.ct = function() {
this.a54 = 0, this.aKg = [], this.g4 = 0, this.aKf = 0
}, this.aF9 = function(mP) {
var eJ;
if (b.fj) this.a2f(mP);
else if (this.aKg.push(mP), 2 === b.sm) {
for (eJ = 0; eJ < this.aKg.length; eJ++) aX.lh.iE(this.aKg[eJ]);
this.aKg = []
}
}, this.a2f = function(mP) {
aX.lh.iE(mP), aY.iE(), u.a2f(this.a54), this.a54 === b.wV ? (b.mg.iE(), this.a54 = 0, this.g4 = 0, this.aKf = 0, this.dc = b4.dc) : (this.a54++, a5.wN(), a5.jC(!0), b0.a2x())
}, this.iE = function() {
aL.iE(), b.fj ? (b4.d3 = u.a2f(-1) || b4.d3, jD()) : (0 !== this.g4 || b4.dc >= this.dc && (this.dc += b4.a2e * Math.floor(1 + (b4.dc - this.dc) / b4.a2e), 2 === b.sm ? j2() : this.aKi(), this.g4++, 27 < b4.dc - this.yk)) && this.aKj(),
j9(), b4.d3 && (b4.d3 = !1, qr()), this.yk = b4.dc
}, this.aKj = function() {
b4.d3 = !0, jB(), this.g4 = 0
}, this.aKi = function() {
var aKk, eJ;
if (this.aKf !== 7 * this.a54) j5(), b0.a2x();
else {
for (aKk = !1; this.aKl() && (aKk = !0, j5(), 0 < this.aKg.length);)
for (eJ = this.aKh - 2; 0 <= eJ; eJ--) j5();
aKk ? b0.a2x() : (j2(), b0.wQ())
}
}, this.aKl = function() {
return 0 < this.aKg.length && (this.a54++, aX.lh.iE(this.aKg[0]), this.aKg.shift(), !0)
}
}
function aKm() {
var aKn, aKo, aKp, a54, aKq, g4 = 0,
dc = b4.dc;
function aKt() {
! function() {
if (!b.fj) return;
if (b.iv) return;
return aKq % 7 != 0 ? aKq++ : a54 === b.wV ? (aKw(), u.a2f(a54), b.mg.iE()) : (aKw(), aKq++, a54++, a5.wN(), a5.jC(!0)), 1
}() && (aKw(), j5())
}
function aKu() {
g4 = 0, (b.fj ? (b4.d3 = u.a2f(a54 - (aKq % 7 == 0 ? 0 : 1) + aKq % 7 / 7) || b4.d3, jD) : k.fT || !ab.wq ? jD : (b4.d3 = !0, jB))()
}
function aKw() {
var eJ, ef, aKx = aY.me.aFz,
dt = aY.me.aG0,
dv = aY.me.aG1,
dx = aY.me.aG2,
aKy = aY.me.aG3,
aKz = aY.me.aG4;
if (aKn >= aKz.length) l.tv("Replay file smaller than expected."), ap.sM.se(-1);
else if (aKz = aKz[aKn], aKy[aKn]) {
for (ef = aKo + aKz, eJ = aKo; eJ < ef; eJ++) aX.lh.mR(aKx[eJ], dt[eJ], dv[eJ], dx[eJ]);
aKo += aKz, aKn++
} else ++aKp >= aKz && (aKn++, aKp = 0)
}
this.aKf = 0, this.ct = function() {
aKq = a54 = aKp = aKo = aKn = 0
}, this.iE = function() {
var aIr;
aL.iE(), ab.a09() < 1.7 ? 0 === g4 ? b4.dc >= dc && (aIr = b4.a2e / ab.a09(), dc += aIr * Math.floor(1 + (b4.dc - dc) / aIr), 2 === b.sm || k.fT || !ab.wq ? j2() : (aKt(), b0.a2x()), g4++) : aKu() : function() {
var aIr;
if (b4.dc >= dc)
if (2 === b.sm || k.fT || !ab.wq) j2(), dc = b4.dc;
else {
for (aIr = b4.a2e / ab.a09(), 16 < (b4.dc - dc) / aIr && (dc = b4.dc - 16 * aIr); b4.dc >= dc && 2 !== b.sm;) dc += aIr, aKt();
b0.a2x()
} aKu()
}(), j9(), b4.d3 && (b4.d3 = !1, qr())
}, this.sv = function() {
aKn !== aY.me.aG4.length && aKn + 1 !== aY.me.aG4.length && l.tv("Replay file larger than expected.")
}
}
function aL0() {
var g4 = 0,
dc = b4.dc;
this.aKf = 0, this.iE = function() {
aL.iE(), b.fj ? jD() : 0 === g4 ? b4.dc >= dc && (dc += b4.a2e * Math.floor(1 + (b4.dc - dc) / b4.a2e), 2 === b.sm || k.fT ? j2() : (j5(), b0.a2x()), g4++) : ((k.fT ? jD : (b4.d3 = !0, jB))(), g4 = 0), j9(), b4.d3 && (b4.d3 = !1, qr())
}
}
function cn() {
this.su = null, this.d3 = !1, this.dc = 0, this.a2e = 56;
var aL1 = 0;
function aL2() {
b4.dc = aL1 = performance.now(), b4.su.iE(), window.requestAnimationFrame(aL2)
}
this.ct = function() {
this.wo(), window.requestAnimationFrame(aL2), this.dc = performance.now()
}, this.wk = function() {
b.fS ? (this.su = new aKm, this.su.ct()) : b.iv ? this.su = new aL0 : (this.su = new aKe, this.su.ct())
}, this.wo = function() {
this.su = new aKd, this.d3 = !0
}, this.iE = function() {
this.su.aKf++
}, this.iS = function() {
return this.su.aKf
}, this.aEs = function() {
var dd = performance.now();
dd < aL1 + 1e3 || (this.dc = dd, this.su.iE())
}
}
function cD() {
var k5 = 0,
aL3 = !0;
function aL5(g3) {
8 !== y.tp() || 2 !== a6.vg[b.ea] && (0 !== a6.jS[b.ea] || b.fj) || l.yQ(g3)
}
this.iE = function() {
var dd, yn;
b4.dc > k5 && (k5 = b4.dc + 2500, dd = new Date, yn = dd.getUTCSeconds(), aL3 ? yn < 45 && (aL3 = !1) : yn < 45 || (aL3 = !0, (yn = dd.getUTCMinutes() + 1) % 15 == 0 && aL5(30 === yn ? "Upcoming Battle Royale Contest!" :
"Upcoming Alliance Contest!")))
}
}
function c5() {
var jj, jk, jl, jm, aL6 = 0,
aL7 = 0;
function aL9() {
return Math.pow(Math.pow(jl - jj, 2) + Math.pow(jm - jk, 2), .5)
}
function aL8(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.uI = function(dI) {
return 1 < dI.touches.length ? (aL7 = b4.dc, aL6 = 3, aL8(dI), j.oP(), !0) : (aL6 = 0, !1)
}, this.uJ = function(dI) {
var aBH, gy, gz;
return 0 !== b.sm && 1 < dI.touches.length && (aL6 = Math.max(aL6 - 1, 0), g.kT() && (aBH = aL9(), aL8(dI), dI = aL9(), gy = Math.floor((jj + jl) / 2), gz = Math.floor((jk + jm) / 2), q.a0Z(gy, gz, Math.max(.125, dI) / Math.max(.125,
aBH)), b4.d3 = !0), !0)
}, this.uh = function() {
var fO, fP;
return !!(aL6 && (aL6 = 0, b4.dc < aL7 + 500)) && (fO = (jj + jl) / 2, fP = (jk + jm) / 2, j.ua(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.u1 = 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.aFI = function(size) {
var hp = size >> 1;
return (1 << hp) * this.mQ(size - hp) + this.mQ(hp)
}, this.aLA = function(size) {
for (var ds = new Array(size), eJ = 0; eJ < size; eJ++) ds[eJ] = this.mQ(10);
return i.pZ(ds)
}, this.aFH = function(aGP) {
return this.size === ac.aFF(aGP)
}
}
function ci() {
this.aHD = 0, this.aHE = 0, this.aH9 = 0, this.aHA = 0, this.aHB = 0, this.aHC = 0, this.a2y = [0, 0, 0, 0], this.kS = function() {
this.aHD = q.jn(), this.aHE = q.gK(), this.aH9 = -this.aHD, this.aHA = -this.aHE, this.aHB = aL.gA / hB, this.aHC = aL.gF / hB, this.a2y[0] = Math.floor(this.aH9), this.a2y[1] = Math.floor(this.aHA), this.a2y[2] = Math.floor(this.a2y[0] +
this.aHB + 1), this.a2y[3] = Math.floor(this.a2y[1] + this.aHC + 1), b0.a2v = !0
}
}
function c6() {
var zK, k5;
this.ct = function() {
zK = 1, k5 = 0
}, this.iE = function() {
0 < zK && (k5 = 0 === k5 ? b4.dc + 16 : k5, zK = (zK -= .001 * (b4.dc - k5)) < 0 ? 0 : zK, k5 = b4.dc, b4.d3 = !0)
}, this.gL = function() {
0 < zK && (gM.fillStyle = "rgba(0,0,0," + zK + ")", gM.fillRect(0, 0, aL.gA, aL.gF))
}
}
function c9() {
function aLD(map, fO, fP, gA, gF) {
map >= aq.a8O || (aq.qB === 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.qA[map].name, Math.floor(fO + .5 * gA), Math.floor(fP + .55 * gF)))
}
this.rI = !1, this.a69 = [0, 0, 0, 0], this.show = function() {
this.rI = !0, this.resize(), b4.d3 = !0
}, this.resize = function() {
var aIU = eX(aq.a8O + aq.a8O % 2, 2),
aIU = aL.gF - aIU * b1.gap;
b8.cy.g0() ? this.a69[2] = Math.floor(.75 * aL.min) : this.a69[2] = Math.floor(.5 * aL.min), this.a69[3] = Math.floor(1.25 * this.a69[2]), this.a69[3] > aIU && (this.a69[3] = aIU, this.a69[2] = Math.floor(aIU / 1.2)), this.a69[0] = Math
.floor((aL.gA - this.a69[2]) / 2), this.a69[1] = Math.floor((aL.gF - this.a69[3]) / 2)
}, this.uE = function(fO, fP) {
return !(fO < this.a69[0] || fP < this.a69[1] || fO > this.a69[0] + this.a69[2] || fP > this.a69[1] + this.a69[3])
}, this.fX = function(fO, fP) {
var zy, aIU = eX(aq.a8O + aq.a8O % 2, 2);
return b4.d3 = !0, fO < this.a69[0] || fP < this.a69[1] || fO > this.a69[0] + this.a69[2] || fP > this.a69[1] + this.a69[3] ? !(this.rI = !1) : (zy = Math.floor(.17 * this.a69[3]), fP < this.a69[1] + zy ? fO > this.a69[0] + this.a69[2] -
zy && (this.rI = !1) : (fP = (fP = Math.floor(aIU * (fP - this.a69[1] - zy - .00576 * aL.g1) / (this.a69[3] - zy - .01152 * aL.g1))) < 0 ? 0 : aIU - 1 < fP ? aIU - 1 : fP, fO > this.a69[0] + this.a69[2] / 2 && (fP += aIU), fP >=
aq.a8O || aq.d4(fP, Math.floor(16384 * Math.random()))), !0)
}, this.gL = function() {
var eJ, jk, zy = Math.floor(.17 * this.a69[3]),
aIU = eX(aq.a8O + aq.a8O % 2, 2),
gap = .6 * .01152 * aL.g1,
a6N = (this.a69[3] - zy - (aIU + 1) * gap) / aIU,
r1 = Math.floor((this.a69[2] - 3 * gap) / 2);
for (gM.lineWidth = b1.rn, aZ.g5.textAlign(gM, 1), aZ.g5.textBaseline(gM, 1), gM.fillStyle = aa.kh, gM.fillRect(this.a69[0], this.a69[1] + zy, this.a69[2], this.a69[3] - zy), gM.fillStyle = aa.lN, gM.fillRect(this.a69[0], this.a69[1],
this.a69[2], zy), gM.strokeStyle = aa.gN, gM.strokeRect(this.a69[0], this.a69[1], this.a69[2], this.a69[3]), gM.fillStyle = aa.gN, gM.fillRect(this.a69[0], this.a69[1] + zy, this.a69[2], 2), gM.font = aZ.g5.g6(1, .48 * zy), gM
.fillText("Maps", Math.floor(this.a69[0] + this.a69[2] / 2), Math.floor(this.a69[1] + .55 * zy)), gM.font = aZ.g5.g6(1, .48 * a6N), eJ = aIU - 1; 0 <= eJ; eJ--) jk = Math.floor(this.a69[1] + zy + gap + eJ * (a6N + gap)), aLD(eJ, this
.a69[0] + gap, jk, r1, a6N), aLD(eJ + aIU, this.a69[0] + r1 + 2 * gap, jk, r1, a6N);
k.xg(Math.floor(this.a69[0] + this.a69[2] - .7 * zy), Math.floor(this.a69[1] + .3 * zy), Math.floor(.4 * zy)), 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(aGP) {
return this.ct(new Uint8Array(this.aFF(aGP))), this.mP
}, this.u1 = function() {
this.mP = null
}, this.pU = function(size, yp) {
for (var mP = this.mP, kT = this.g4 + size - 1, eJ = this.g4; eJ <= kT; eJ++) mP[eJ >> 3] |= (yp >> kT - eJ & 1) << 7 - (7 & eJ);
this.g4 += size, this.g4 > 8 * this.size && console.log("error wrapper")
}, this.aLE = function(size, yp) {
var hp = size >> 1,
eo = 1 << hp;
this.pU(size - hp, aj.fK(yp, eo)), this.pU(hp, yp % eo)
}, this.aLF = 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.aFF = function(aGP) {
return aGP + 7 >> 3
}, this.aLG = function(ds, hi, kT, aLH) {
for (var eJ = hi; eJ < kT; eJ++) this.pU(aLH, ds[eJ])
}
}
setTimeout(bE, 1e4), window.onload = function() {
bE()
};