FXclient-mirror/game.js

8179 lines
715 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, d6, d7, d8, d9, dA, dB, du, dv, dw, dx, dy, dz, e0, e1, e2, e3, e4, e5, e6, hf, hd, he, hN;
function bD() {
var ct;
a || (bF(), bG(), ai = new bH, ah = new bI, aY = new bJ, aZ = new bK, ac = new bL, ad = new bM, b = new bN, c = new bO, d = new bP, e = new bQ, f = new bR, g = new bS, h = new bT, i = new bU, j = new bV, k = new bW, l = new bX, m = new bY, n =
new bZ, o = new ba, p = new bb, q = new bc, r = new bd, s = new be, t = new bf, u = new bg, v = new bh, w = new bi, x = new bj, y = new bk, z = new bl, a0 = new bm, a1 = new bn, a2 = new bo, a3 = new bp, a4 = new bq, a5 = new br, a6 =
new bs, a7 = new bt, aM = new bu, a9 = new bv, aA = new bw, aB = new bx, aN = new by, aL = new bz, aC = new c0, aD = new c1, aE = new c2, aF = new c3, aK = new c4, aG = new c5, aH = new c6, aI = new c7, aJ = new c8, aO = new c9, aP =
new cA, aQ = new cB, aR = new cC, aS = new cD, aT = new cE, aU = new cF, aW = new cG, aX = new cH, aa = new cI, ab = new cJ, ae = new cK, af = new cL, ag = new cM, aj = new cN, ak = new cO, al = new cP, am = new cQ, an = new cR, ao =
new cS, ap = new cT, aq = new cU, ar = new cV, at = new cW, aV = new cX, b7 = new cY, a = new cZ, b8 = new ca, b9 = new cb, b4 = new cc, b5 = new cd, aw = new ce, ax = new cf, ay = new cg, az = new ch, b1 = new ci, b2 = new cj, b3 =
new ck, bA = new cl, b0 = new cm, bB = new cn, bC = new co, a.cq(), b7.cq(), aK.cr(), b9.cq(), aV.cq(), bC.cq(), aY.cq(), a3.cq(), aN.cq(), ac.cq(), ad.cq(), ap.cq(), cs(), (ct = document.getElementById("usernameField")) && document.body
.removeChild(ct), au = new cu, aK.cq(), b7.cv.cw(), b3.cq(), b0.cq(), aw.cq(), (b6 = new cx).cq(), av = new cy, (a8 = new cz).cq(), aL.cq(), a5.d0(), at.cq(), a9.cq(), x.cq(), aT.cq(), q.cq(), a7.cq(), ag.cq(), a1.cq(), b3.d1 = !0,
setTimeout(function() {
ap.d2(2, 14071)
}, 0), af.d3(), b7.cv.d4(), a.d5 = 1)
}
function cZ() {
this.dC = 1038, this.cq = function() {
d6 = 2, d8 = 18, d7 = "13 May 2024 [1.94.5]", d9 = 0 <= window.location.hostname.toLowerCase().indexOf("territorial.io"), dB = function() {
try {
return window.self !== window.top
} catch (dE) {
return !0
}
}(), dA = (new Date).getTime() % 1024
}, this.d5 = 0
}
function co() {
this.id = new dF, this.cq = function() {
this.id.cq()
}
}
function dF() {
this.cq = function() {
0 === b9.dG.data[181].value && (b9.dG.dH(180, Math.floor(Math.random() * ai.pow(30))), b9.dG.dH(181, Math.floor((new Date).getTime() / 36e5)))
}
}
function cW() {
this.dI = new dJ, this.dK = new dL, this.cq = function() {
b7.cv.dM()
}
}
function dJ() {
function dW() {}
this.cq = function() {}, this.dV = function() {
return !!dW() && (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() {
dW() && aipAPItag.showCMPScreen()
}
}
function dL() {
var dY = 2e4;
this.show = function() {
if (b3.dY < dY) return !1;
dY = b3.dY + 135e4, b7.cv.da(Math.floor(135e4))
}
}
function cP() {
this.de = new Uint16Array(2), this.df = new Uint32Array(2), this.dg = new Uint8Array(4), this.dh = new Uint8Array(4), this.di = new Uint32Array(5), this.dj = new Uint32Array(8), this.dk = function(dl, dm) {
return dl[0] = dm, dl
}, this.dn = function(dl, dm, dp) {
return dl[0] = dm, dl[1] = dp, dl
}, this.dq = function(dl, dm, dp, dr) {
return dl[0] = dm, dl[1] = dp, dl[2] = dr, dl
}, this.ds = function(dl, dm, dp, dr, dt) {
return dl[0] = dm, dl[1] = dp, dl[2] = dr, dl[3] = dt, dl
}
}
function e7() {
dz = 0, e0 = 2048, e1 = new Uint32Array(4 * e0), e2 = 0, e3 = new Uint32Array(e0), (e4 = new Int32Array(4))[0] = -4 * ap.e8, e4[1] = 4, e4[2] = -e4[0], e4[3] = -e4[1], e5 = new Uint8Array(ap.e8 * ap.e9)
}
function eA(player) {
dv = player, e6 = !1, eB(), eC();
for (var eD = a4.eE(dv) - 1; 0 <= eD; eD--) 0 === a4.eF(dv, eD) && (du = eD, eG());
e6 && eH()
}
function eH() {
eI(), eJ()
}
function eG() {
dy = a4.eK(dv, du), dw = a4.eL(dv, du), eM(), (0 !== dz && (eO(), eP()) ? eQ : eN)()
}
function eP() {
return dx = eR(dw, dz), eS < dx
}
function eO() {
for (var eD = dz - 1; 0 <= eD; eD--) e5[eR(e1[eD], 4)] = 0
}
function eN() {
var dZ;
1 === a4.eE(dv) && c.eT(dv), dv !== eU ? (eV[dv] += dw, a5.eW(dv)) : (dZ = eV[dv], eV[dv] += dw, a5.eW(dv), b1.eX[13] -= eV[dv] - dZ), a4.eY(dv, du)
}
function eB() {
var eD, eZ = ea[dv].length;
for (e2 = 0, eD = (e0 < eZ ? e0 : eZ) - 1; 0 <= eD; eD--) e3[e2++] = ea[dv][eD]
}
function eC() {
for (var eD = ea[dv].length - 1; 0 <= eD; eD--) a2.eb(ea[dv][eD]) && a2.ec(ea[dv][eD], dv);
ea[dv] = []
}
function eM() {
dz = 0, (dy === ed ? ee : ef)()
}
function ef() {
for (var eg, eh, eD, ei = 3; 0 <= ei; ei--)
for (eD = e2 - 1; 0 <= eD; eD--) eh = eR(eg = e3[eD] + e4[ei], 4), 0 === e5[eh] && a2.ej(eg) && a2.ek(eg) === dy && (e5[eh] = 1, e1[dz++] = eg)
}
function ee() {
for (var eg, eh, eD, ei = 3; 0 <= ei; ei--)
for (eD = e2 - 1; 0 <= eD; eD--) eh = eR(eg = e3[eD] + e4[ei], 4), 0 === e5[eh] && a2.el(eg) && (e5[eh] = 1, e1[dz++] = eg)
}
function eQ() {
em() ? (en(), dy !== ed && eo()) : eN()
}
function eo() {
ep(), eq(er[dy]), eq(es[dy]), et(ea[dy]), eu(es[dy]), eu(ev[dy]), ew(), ex()
}
function en() {
e6 = !0, a4.ey(dv, du, dw), ez[dv] += dz, f0(), f1()
}
function em() {
return (dy === ed ? f2 : f3)()
}
function f3() {
var f4 = dz * eS,
f5 = f6(),
f7 = f8(),
f5 = f4 + 2 * f5 + f7,
fA = dx * dz;
return f5 < fA ? (dw -= f5, fB(f5 - f4, f7), !0) : (dw -= fA, fB(fA - f4, f7), !1)
}
function fB(fA, f7) {
if (0 < f7) {
if (!(f7 <= fA)) return a4.fC(dy, dv, f7 - fA), void(fA = 0);
a4.fC(dy, dv, 0), fA -= f7
}
fA = eR(fA, 2), eV[dy] >= fA ? eV[dy] -= fA : eV[dy] = 0
}
function f8() {
return a4.fD(dy, dv)
}
function f6() {
return ai.fE(dz * eV[dy], 1 + ai.fE(10 * ez[dy], 16))
}
function f2() {
return dw -= dz * eS, !0
}
function f1() {
for (var eD = dz - 1; 0 <= eD; eD--) ea[dv].push(e1[eD]), er[dv].push(e1[eD]), a2.ec(e1[eD], dv)
}
function cU() {
var fF = 0,
fG = 0;
this.fH = function(fI, fJ) {
fF = fI, fG = fJ
}, this.fK = function() {
var fT, fV, fX, fZ;
fL || j.fM || (aY.fN.fO(0) || aY.fN.fO(1)) && aY.fN.fP(eU) && (o.fQ(fF, fG) ? o.fR = !1 : (fT = aj.fU(fF), fV = aj.fW(fG), fX = aj.fY(fT, fV), fZ = aj.fa(fX), aj.fb(fT, fV) && (fc ? a2.eb(fZ) && aW.fd.fe(fX) : ak.ff.fg(fX) || ak.ff.fh(fF,
fG) || a2.fi(fZ) || (a2.fj(fZ) ? ak.ff.fk(eU, fX) && aW.fd.fl(o.fm(), fX) : a2.el(fZ) ? fn(eU) ? aW.fd.fo(o.fm(), ed) : fp(eU, ed) ? aO.fq(ed, o.fm()) : ak.ff.fk(eU, fX) && aW.fd.fl(o.fm(), fX) : (fT = a2.ek(fZ)) !==
eU && (fr(fT, eU) ? fs(eU, fT) ? aW.fd.fo(o.fm(), fT) : fp(eU, fT) ? aO.fq(fT, o.fm()) : ak.ff.fk(eU, fX) && aW.fd.fl(o.fm(), fX) : ak.ff.fk(eU, fX) && aW.fd.fl(o.fm(), fX))))))
}
}
function ce() {
var ft = 1,
fu = [null, null];
this.cq = function() {
ft = .72 * (b7.cv.fv() ? .0011 : .001) * aK.fw;
for (var eD = 1; 0 <= eD; eD--) fu[eD] && this.fx(eD, fu[eD].fy)
}, this.fx = function(fz, fy) {
fu[fz] = {
fy: fy,
font: aY.g0.g1(1, 10)
}, this.g2(fz)
}, this.g2 = function(fz) {
var fy, fontSize, g4, g5, g6;
a1.g3() && fu[fz] && (fy = fu[fz].fy, fontSize = Math.floor(.15 * ft * a1.get(13).height), g4 = aY.g0.g1(1, fontSize), g5 = n.measureText(fy, g4), (g6 = .8 * ft * a1.get(13).width) < g5 && (fontSize = Math.floor(fontSize * g6 / g5), g4 =
aY.g0.g1(1, fontSize)), fu[fz] = {
fy: fy,
font: g4
}, b3.d1 = !0)
}, this.g7 = function() {
return Math.floor(ft * a1.get(13).height)
}, this.fQ = function(g8, g9) {
return !!a1.g3() && !(g8 < b0.gap || g9 < aK.gA - a8.g5 - ft * a1.get(13).height - 2 * b0.gap || g9 > aK.gA - a8.g5 - 2 * b0.gap || (g8 < b0.gap + ft * a1.get(13).width ? (b6.gB(0), 0) : g8 < 2 * b0.gap + ft * a1.get(13).width || !(g8 <
2 * b0.gap + 2 * ft * a1.get(13).width) || (b6.gB(1), 0)))
}, this.gC = function() {
return Math.floor(aK.gA - a8.g5 - ft * a1.get(13).height - 2 * b0.gap)
}, this.gD = function() {
if (a1.g3()) {
gE.imageSmoothingEnabled = !0, gE.setTransform(ft, 0, 0, ft, b0.gap, this.gC()), gE.drawImage(a1.get(14), 0, 0), gE.setTransform(ft, 0, 0, ft, 2 * b0.gap + ft * a1.get(13).width, this.gC()), gE.drawImage(a1.get(13), 0, 0);
for (var eD = 1; 0 <= eD; eD--) fu[eD] && (gE.setTransform(1, 0, 0, 1, (1 + eD) * b0.gap + eD * ft * a1.get(13).width, this.gC()), gE.font = fu[eD].font, aY.g0.textBaseline(gE, 1), aY.g0.textAlign(gE, 1), gE.fillStyle = aZ.gF, gE
.fillText(fu[eD].fy, .5 * ft * a1.get(13).width, .86 * ft * a1.get(13).height));
gE.setTransform(1, 0, 0, 1, 0, 0)
}
}
}
function gG(gH, size, gI, gJ, font) {
var eD, gM = .2,
gN = document.createElement("canvas"),
gO = gN.getContext("2d", {
alpha: !1
});
for (gN.width = gH, gN.height = gH, gO.font = size + font, gO.textAlign = "center", gO.textBaseline = "middle", gO.fillStyle = "red", eD = 0; eD < gI.length; eD++) gO.fillText(gI[eD], .5 * gH, .5 * gH);
return -1 < (gN = function(gK) {
var eD, gQ;
for (eD = gK.data.length - 4; 0 <= eD; eD -= 4)
if (gQ = gK.data[eD], gJ <= gQ) return Math.floor(eD / (4 * gH));
return -1
}(gO.getImageData(0, 0, gH, gH))) && (gM = (gN - .5 * gH + .1 * size) / size), Math.max(gM, 0)
}
function cN() {
this.gR = new Int16Array(4), this.gS = new Int16Array(4), this.cq = function() {
var eD;
for (this.gR[0] = -ap.e8, this.gR[1] = 1, this.gR[2] = ap.e8, this.gR[3] = -1, eD = 0; eD < 4; eD++) this.gS[eD] = 4 * this.gR[eD]
}, this.gT = function(gU, gV) {
var gW = this.gX(gV) - this.gX(gU),
gV = this.gZ(gV) - this.gZ(gU),
gU = gW >>> 31 << 1;
return 5 + gU + (1 - gU) * (1 - (gV >>> 31 << 1)) * (Math.abs(gW) - Math.abs(gV) >>> 31) & 3
}, this.gd = function(gU, gV, ge) {
return ge % 2 == 0 ? ge + (1 - ge) * (1 - (this.gX(gV) - this.gX(gU) >>> 31 << 1)) + 4 & 3 : ge + (2 - ge) * (1 - (this.gZ(gV) - this.gZ(gU) >>> 31 << 1)) + 4 & 3
}, this.gg = function(eg, fX) {
for (var gV, gh, gj = es[eg], eZ = gj.length, g5 = ap.e8, gk = this.gX(fX), gl = this.gZ(fX), gm = gj[0] >> 2, min = this.gn(gk, gl, gm), eD = 1; eD < eZ; eD++)(gh = (gh = gk - (gV = gj[eD] >> 2) % g5) * gh + (gh = gl - ~~((.5 + gV) /
g5)) * gh) < min && (min = gh, gm = gV);
return gm
}, this.go = function(player, fZ) {
return !a2.el(fZ) && player === a2.ek(fZ)
}, this.gn = function(fT, fV, fX) {
return (fT -= this.gX(fX)) * fT + (fV -= this.gZ(fX)) * fV
}, this.gp = function(gq, gr, gs) {
gq = this.gu(gq) - this.gv(gs), gr = this.gx(gr) - this.gy(gs);
return Math.sqrt(gq * gq + gr * gr)
}, this.gz = function(gU, gV) {
var gt = this.gX(gU) - this.gX(gV),
gU = this.gZ(gU) - this.gZ(gV);
return Math.sqrt(gt * gt + gU * gU)
}, this.h0 = function(eg) {
return eg < h1 && 0 !== h2[eg] && 2 !== h3[eg]
}, this.h4 = function(eg, h5) {
return ai.fE(h5 * eV[eg], 1e3)
}, this.gu = function(gq) {
return 16 * (gq + h6) / h7
}, this.gx = function(gr) {
return 16 * (gr + h8) / h7
}, this.fU = function(gq) {
return Math.floor((gq + h6) / h7)
}, this.fW = function(gr) {
return Math.floor((gr + h8) / h7)
}, this.fb = function(fT, fV) {
return 1 <= fT && 1 <= fV && fT < ap.e8 - 1 && fV < ap.e9 - 1
}, this.gX = function(fX) {
return fX % ap.e8
}, this.gZ = function(fX) {
return ai.fE(fX, ap.e8)
}, this.fY = function(fT, fV) {
return fV * ap.e8 + fT
}, this.h9 = function(fX) {
var fT = this.gX(fX),
fX = this.gZ(fX);
return 0 < fT && fT < ap.e8 - 1 && 0 < fX && fX < ap.e9 - 1
}, this.fa = function(fX) {
return fX << 2
}, this.hA = function(fX) {
return ap.e8 * this.gZ(fX) * 256 + (this.gX(fX) << 4)
}, this.hB = function(fX) {
return this.hA(fX) + 8 + (ap.e8 << 7)
}, this.hC = function(gs) {
return ap.e8 * (this.gy(gs) >> 4) + (this.gv(gs) >> 4)
}, this.hD = function(gs) {
gs = this.hC(gs);
return (this.gX(gs) >> 5) + ak.hE.hF * (this.gZ(gs) >> 5)
}, this.gv = function(gs) {
return gs % (ap.e8 << 4)
}, this.gy = function(gs) {
return ai.fE(gs, ap.e8 << 4)
}, this.hG = function(fX, ge) {
return fX + this.gR[ge]
}, this.hH = function(fZ, ge) {
return fZ + this.gS[ge]
}
}
function hI(player) {
return al.dj[1] = ea[player].length, al.dj[0] === ed ? hJ(player) : hK(player, al.dj[0]), 0 !== al.dj[1] || 0 !== ea[player].length
}
function hL(player) {
hM && (hN[player] = 1), hO(al.dj[1], player), a4.hP(player, al.df[0], al.dj[0]), c.hQ(player, !1)
}
function hR(player, hS, eZ, hT) {
var hU = eR(3 * eV[player], 256);
hT -= hT >= eR(eV[player], 2) ? hU : 0, hO(eZ, player), a4.hP(player, hT, hS), eV[player] -= hT + hU, c.hQ(player, !1)
}
function hK(player, hS) {
for (var ge, eD = er[player].length - 1; 0 <= eD; eD--)
if (a2.hV(er[player][eD]))
for (ge = 3; 0 <= ge; ge--)
if (a2.ej(er[player][eD] + e4[ge]) && a2.ek(er[player][eD] + e4[ge]) === hS) {
ea[player].push(er[player][eD]);
break
}
}
function hO(size, player) {
for (var eD = ea[player].length - 1; size <= eD; eD--) a2.hW(ea[player][eD], player)
}
function hJ(player) {
for (var ge, eD = er[player].length - 1; 0 <= eD; eD--)
if (a2.hV(er[player][eD]))
for (ge = 3; 0 <= ge; ge--)
if (a2.el(er[player][eD] + e4[ge])) {
ea[player].push(er[player][eD]);
break
}
}
function hX(player, hY) {
var eD, hZ, ge, ha, eZ = er[player].length,
gf = 256 <= eZ ? 12 : 32 <= eZ ? 6 : 1,
hb = eZ - 1 - aL.hc(gf);
hd = 0;
loop: for (eD = hb; 0 <= eD; eD -= gf)
for (ge = 3; 0 <= ge; ge--)
if ((ha = a2.el(er[player][eD] + e4[ge]) ? ed : a2.ek(er[player][eD] + e4[ge])) === ed || a2.ej(er[player][eD] + e4[ge]) && ha !== player && (hY || fr(player, ha))) {
for (hZ = hd - 1; 0 <= hZ; hZ--)
if (he[hZ] === ha) continue loop;
if (he[hd] = ha, ++hd >= hf) return !0
}
return 0 < hd
}
function hg(player, hY) {
var eD, ge, ha;
for (hd = 0, eD = er[player].length - 1; 0 <= eD; eD--)
for (ge = 3; 0 <= ge; ge--)
if ((ha = a2.el(er[player][eD] + e4[ge]) ? ed : a2.ek(er[player][eD] + e4[ge])) === ed || a2.ej(er[player][eD] + e4[ge]) && ha !== player && (hY || fr(player, ha))) return he[hd++] = ha, !0;
return !1
}
function hh() {
for (var hi, eD = hd - 1; 0 <= eD; eD--)
if (he[eD] === ed) {
for (hd--, hi = eD; hi < hd; hi++) he[hi] = he[hi + 1];
return !0
} return !1
}
function hj(player) {
for (var hi, eD = hd - 1; 0 <= eD; eD--)
if (a4.hk(player, he[eD]))
for (hd--, hi = eD; hi < hd; hi++) he[hi] = he[hi + 1];
return 0 === hd
}
function hl() {
for (var eD = hd - 1; 0 <= eD; eD--)
if (he[eD] >= h1) return !0;
return !1
}
function hm() {
for (var eD = hd - 1; 0 <= eD; eD--) he[eD] < h1 && (he[eD] = he[--hd]);
return 0 < hd
}
function hn(player) {
for (var hi, ho = he[0], hp = eV[ho] + a4.fD(ho, player), eD = hd - 1; 1 <= eD; eD--)(hi = eV[he[eD]] + a4.fD(he[eD], player)) < hp && (ho = he[eD], hp = hi);
return ho
}
function hq(player) {
var gA, hr = he[0];
if (1 !== hd)
for (var hs = eR(ht[player] + hu[player], 2), hv = eR(hw[player] + hx[player], 2), hy = hz(hs - eR(ht[hr] + hu[hr], 2)) + hz(hv - eR(hw[hr] + hx[hr], 2)), eD = hd - 1; 1 <= eD; eD--)(gA = hz(hs - eR(ht[he[eD]] + hu[he[eD]], 2)) + hz(hv - eR(
hw[he[eD]] + hx[he[eD]], 2))) < hy && (hy = gA, hr = he[eD]);
return hr
}
function i0() {
return he[aL.hc(hd)]
}
function cs() {
hf = 8, hd = 0, he = new Uint16Array(hf)
}
function i1() {
hN = hM ? new Uint8Array(ed) : null
}
function i2(player, hT) {
var i3;
hM && (hN[player] = 0), !a4.i4(player) || hT < 60 || (0 === er[player].length ? ak.i5.i6(player) || (b.i7(player - h1, 200), i8(player, hT, b.hT[player - h1], a5.i9(player))) : 0 < es[player].length && aL.random() < aL.value(es[player].length >
er[player].length ? 7 : 3) && ak.i5.i6(player) || (i3 = a5.i9(player), eV[player] > i3 && hT < eV[player] - i3 && (hT = eV[player] - i3), hM ? iA(player, hT, b.hT[player - h1], i3) : iB(player, hT, b.hT[player - h1])))
}
function iA(player, hT, iC, i3) {
var hS;
hX(player, !1) || hg(player, !1) ? (hN[player] = 1, hj(player) || (hh() ? (iD(player, hT), iE(player, ed, iC)) : (aL.iF(b.iG[iC]) ? iH(player, hT, hS = hn(player)) : (hl() && aL.iF(b.iI[iC]) && hm(), iH(player, hT, hS = hq(player))), iE(player,
hS, iC)))) : 0 < es[player].length && aL.random() < aL.value(60) && ak.i5.i6(player) || (b.i7(player - h1, 200), i8(player, hT, iC, i3))
}
function iJ(player, hT) {
hX(player, !1) || hg(player, !1) ? (hN[player] = 1, hh() ? iD(player, hT) : iH(player, hT, i0())) : i8(player, hT, 0, 0)
}
function iE(player, hS, iC) {
3 <= iC && 2142 < b3.iK() && (hS === ed || eV[hS] < eR(eV[player], 20)) && b.i7(player - h1, 25)
}
function i8(player, hT, iC, i3) {
var eD, hi, iL;
if (0 !== b4.iM[player] && !(5 === iC && eV[player] < i3 || 4 === iC && eV[player] < eR(i3, 2)))
for (eD = aL.hc(iN), hi = 0; hi < iN; hi++)
if (iL = iO[(hi + eD) % iN], b4.iM[iL] === b4.iM[player] && 1 === hN[iL]) return void aW.iP.iQ(player, iL, hT)
}
function iB(player, hT, iC) {
!hX(player, !0) && !hg(player, !0) || hj(player) || (hh() ? iD(player, hT) : aL.iF(b.iG[iC]) ? iH(player, hT, hn(player)) : (hl() && aL.iF(b.iI[iC]) && hm(), iH(player, hT, hq(player))))
}
function iR(player, hT) {
(hX(player, !0) || hg(player, !0)) && (hh() ? iD(player, hT) : iH(player, hT, i0()))
}
function iH(player, hT, hS) {
eR(eV[player], 8) > eV[hS] && (hT = (iS = eR(11 * eV[hS], 5)) < hT ? hT : iS);
var iS = ea[player].length;
hK(player, hS), hR(player, hS, iS, hT)
}
function iD(player, hT) {
var hS = ed,
eZ = ea[player].length;
return hJ(player), ea[player].length !== eZ && (hR(player, hS, eZ, hT), !0)
}
self.aiCommand746 = function(db) {
0 === db ? bD() : 1 !== db || 1 !== b7.id || b7.dc < 14 || x.dd()
};
var h1, rV, ig, rU, iT = [60, 74, 112, 200, 256, 512];
function bN() {
var iU, iV, iW, iX, iY, iZ;
function ip(eD) {
iU[eD] = 1 + eR(iY[eD] * aL.random(), 10 * aL.value(100))
}
this.ia = ["Very Easy", "Easy", "Normal", "Hard", "Harder", "Very Hard"], this.ib = [97, 95, 93, 90, 87, 84], this.iI = [98, 95, 70, 40, 20, 0], this.ic = [85, 70, 50, 30, 7, 3], this.iG = [0, 0, 5, 25, 50, 90], this.hT = null, this.cq =
function() {
var eD, ie;
if (iU = new Uint8Array(ig), iV = new Uint16Array(ig), iW = new Uint16Array(ig), iX = new Uint8Array(ig), this.hT = new Uint8Array(ig), iY = new Uint16Array(ig), iZ = new Uint16Array(ig), aU.ih) {
if (aU.ii.ij)
for (eD = ig - 1; 0 <= eD; eD--) this.hT[eD] = aU.ii.ij[eD + 1]
} else if (9 === ik) this.il();
else if (im)
if (hM)
for (eD = ig - 1; 0 <= eD; eD--) this.hT[eD] = z.io[b4.iM[eD + h1] - 1].ei;
else
for (eD = ig - 1; 0 <= eD; eD--) this.hT[eD] = z.io[0].ei;
else
for (ie = 8 === ik ? 1 : 0, eD = ig - 1; 0 <= eD; eD--) this.hT[eD] = ie;
for (eD = ig - 1; 0 <= eD; eD--) this.hT[eD] <= 2 ? (iX[eD] = 5, iY[eD] = iZ[eD] = 1040, 0 === this.hT[eD] ? (iV[eD] = 1e3, iW[eD] = 1e3) : 1 === this.hT[eD] ? (iV[eD] = 1e3, iW[eD] = 920, iY[eD] = iZ[eD] = 1100) : (iV[eD] = 825, iW[eD] =
750)) : this.hT[eD] <= 4 ? (iX[eD] = 1 + aL.hc(20), 3 === this.hT[eD] ? (iV[eD] = iW[eD] = 500, iY[eD] = iZ[eD] = 1e3) : (iZ[eD] = 250 + aL.hc(1501), iY[eD] = 500 + aL.hc(501), iV[eD] = 300 + aL.hc(201), iW[eD] = 100 + aL.hc(
201))) : (iY[eD] = 1e3, iZ[eD] = 1e3, iX[eD] = 35 + aL.hc(16), iV[eD] = 300 + aL.hc(201), iW[eD] = 50 + aL.hc(101)), ip(eD)
}, this.il = function() {
for (var eD, fZ = 0, hi = 0; hi < 6; hi++) {
for (eD = fZ + aM.iq[hi] - 1; fZ <= eD; eD--) this.hT[eD] = hi;
fZ += aM.iq[hi]
}
}, this.i7 = function(ir, value) {
0 <= ir && (iU[ir] = value)
}, this.i6 = function(ir) {
0 == --iU[ir] && ! function(ir) {
! function(ir) {
iY[ir] !== iZ[ir] && (iY[ir] += iY[ir] < iZ[ir] ? 3 : -3);
iV[ir] !== iW[ir] && (iV[ir] += iV[ir] < iW[ir] ? iX[ir] : -iX[ir], iV[ir] = (Math.abs(iV[ir] - iW[ir]) <= iX[ir] ? iW : iV)[ir]);
iU[ir] = eR(iY[ir], 10)
}(ir);
var player = ir + h1;
i2(player, eR(iV[ir] * eV[player], 1e3))
}(ir)
}
}
function iu() {
k.i6(), a6.i6(), t.iv(), aN.iw.i6(), ao.ix.iy()
}
function iz() {
aO.i6(), d.i6(), a5.i6(), aR.i6(), aQ.i6(), c.i6(), e.i6(), ak.iw.i6(), j0(), s.i6(), aM.i6(), a6.i6(), a6.j1(), t.i6(), am.i6(), r.i6(), m.i6(), k.i6(), aS.i6(), o.i6(), aI.i6(), b1.i6(), b5.i6(), an.i6(), aN.iw.i6(), aN.j2.i6(), ar.i6(), aX
.i6(), b3.i6()
}
function j3() {
f.i6(), u.i6(), n.i6(), aF.i6(), aa.i6(), aJ.j4()
}
function j5() {
s.j6(!1), m.j6(), t.j6(!1), r.j6(), o.j6(), aI.j6(), a6.j6(!1), b5.g2()
}
function j7() {
a6.j6(!1) && (b3.d1 = !0), aN.iw.i6()
}
function bO() {
var j8, j9, jA, jB, jC, jD;
function jH(jJ) {
for (var eD = j9 - 1; 0 <= eD; eD--) 0 === jB[jA[eD]] && ez[jA[eD]] >= jJ && eA(jA[eD])
}
function jF(player) {
10 === jB[player] ? jB[player] = j8 : ez[player] < 1e3 ? jB[player] = 3 : ez[player] < 1e4 ? jB[player] = 2 : ez[player] < 6e4 ? jB[player] = 1 : jB[player] = 0
}
this.cq = function() {
jC = jD = 0, j8 = 6, j9 = 0, jA = new Uint16Array(ed), jB = new Uint8Array(ed)
}, this.i6 = function() {
var eD;
for (jC = b1.eX[13], jD = eV[eU], eD = j9 - 1; 0 <= eD; eD--) 10 === jB[jA[eD]] ? jF(jA[eD]) : 0 == jB[jA[eD]]-- && (jF(jA[eD]), eA(jA[eD]));
16e4 <= ez[jG[0]] && (jH(16e4), 3e5 <= ez[jG[0]]) && jH(3e5), ez[eU] > b1.eX[7] && (b1.eX[7] = ez[eU]), b1.eX[14] += jD - eV[eU] + jC - b1.eX[13]
}, this.eT = function(player) {
for (var hZ, eD = j9 - 1; 0 <= eD; eD--)
if (player === jA[eD]) {
for (j9--, hZ = eD; hZ < j9; hZ++) jA[hZ] = jA[hZ + 1];
return
}
}, this.hQ = function(player, jK) {
for (var eD = j9 - 1; 0 <= eD; eD--)
if (player === jA[eD]) return;
jA[j9++] = player, jB[player] = jK ? 2 : 10
}
}
function bP() {
var size, i5;
this.cq = function() {
size = ig, i5 = new Uint16Array(ig);
for (var eD = ig - 1; 0 <= eD; eD--) i5[eD] = eD
}, this.i6 = function() {
for (var eD = size - 1; 0 <= eD; eD--) 0 === h2[i5[eD] + h1] ? function(hZ) {
size--;
for (var eD = hZ; eD < size; eD++) i5[eD] = i5[eD + 1]
}(eD) : b.i6(i5[eD])
}
}
function bQ() {
var jN, jO, j9, jA, jB, jP, jQ, jR;
function jT(eD) {
var hZ;
for (j9--, hZ = eD; hZ < j9; hZ++) jA[hZ] = jA[hZ + 1], jB[hZ] = jB[hZ + 1], jP[hZ] = jP[hZ + 1], jQ[hZ] = jQ[hZ + 1], jR[hZ] = jR[hZ + 1]
}
this.cq = function() {
jN = 1, j9 = 0, jO = 2 * ed, jA = new Uint16Array(jO), jB = new Uint8Array(jO), jP = new Uint16Array(jO), jQ = new Uint32Array(jO), jR = new Uint32Array(jO)
}, this.jS = function(fz, position) {
jQ[fz] = position
}, this.i6 = function() {
for (var eD = j9 - 1; 0 <= eD; eD--) 0 == jB[eD]-- && (jB[eD] = 2, aC.i6(eD, jP[eD], jA[eD], jQ[eD], jR[eD]))
}, this.eT = function(player, id) {
for (var eD = j9 - 1; 0 <= eD; eD--)
if (player === jA[eD] && id === jP[eD]) return void jT(eD)
}, this.jU = function(player) {
for (var eD = j9 - 1; 0 <= eD; eD--) player === jA[eD] && (aC.jV(player, jQ[eD]), jT(eD))
}, this.hQ = function(player, hb, jW) {
if (jO <= j9) return 0;
jA[j9] = player, jB[j9] = 0, jP[j9] = jN, jQ[j9] = hb, jR[j9] = jW;
player = jN;
return j9++, jN = 2 * jO < ++jN ? 1 : jN, player
}, this.gD = function() {
if (!(h7 < 40 || 0 === j9)) {
var hZ, fI, fJ, eD, fontSize, jb, hT, jc = h6 / h7,
jd = h8 / h7,
je = (aK.g5 + h6) / h7,
jf = (aK.gA + h8) / h7;
for (aY.g0.textAlign(gE, 1), aY.g0.textBaseline(gE, 1), hZ = j9 - 1; 0 <= hZ; hZ--) fI = a2.jg(jQ[hZ]), fJ = a2.gC(jQ[hZ]), eD = jA[hZ], jc - 1 < fI && fI < je && jd - 1 < fJ && fJ < jf && 0 !== h2[eD] && ((fontSize = Math.floor(.94 *
h7 * a6.jh(eD))) < 6 || (fI = Math.floor(aK.g5 * (fI + .5 - jc) / (je - jc)), fJ = Math.floor(aK.gA * (fJ + .48 - jd) / (jf - jd)), gE.font = aY.g0.g1(1, fontSize), gE.fillStyle = aZ.ji, hT = a4.eL(eD, a4.jj(eD, jP[hZ])),
gE.fillText(b9.dG.data[7].value ? aY.jk.jl(hT) : jm[eD], fI, fJ), (jb = Math.floor(.5 * fontSize)) < 6) || (gE.font = aY.g0.g1(1, jb), gE.fillText(b9.dG.data[7].value ? jm[eD] : aY.jk.jl(hT), fI, fJ + Math.floor(.82 *
fontSize))))
}
}
}
function bR() {
var jn, jo, jp, jq, jr, js, jt, ju, jv, jw, jx, jy, jz, k0 = !1,
k1 = !1;
function k2(k3) {
jy = b3.dY, jp = jq = jo = 0, jr = (jz = 33) / k3, jn = 1 / (k3 / jz / 4), js = (aK.g5 / 2 + h6) / h7, jt = (aK.gA / 2 + h8) / h7, ju = h7
}
function kG(kI) {
Math.abs(Math.log(jx / ju)) < .125 && (jx = kI * ju)
}
function kF(jc, jd, je, jf) {
jv = (jc + je + 1) / 2, jw = (jd + jf + 1) / 2;
je = aK.g5 / (je - jc + 1), jc = aK.gA / (jf - jd + 1);
jx = .9 * (je < jc ? je : jc)
}
this.k4 = function() {
return k0
}, this.k5 = function() {
k2(1), this.k6(0, 0, ap.e8 - 1, ap.e9 - 1), fc || fL || this.k7(eU, 3e3, !0, .3)
}, this.k7 = function(player, k3, k8, zoom) {
k9 || k0 && !k8 && k1 || 0 === ez[player] || (p.kA = !1, k1 = k8, k2(k3), function(player) {
jv = (hu[player] + ht[player] + 1) / 2, jw = (hx[player] + hw[player] + 1) / 2
}(player), function(zoom, player) {
var gt = ht[player] - hu[player] + 1,
player = hw[player] - hx[player] + 1,
hZ = aK.g5 / gt,
hi = aK.gA / player,
hZ = (jx = hZ < hi ? hZ : hi, 0 !== zoom ? zoom : gt < 20 && player < 20 ? .5 : .9);
jx *= hZ, kG(7 / 8)
}(zoom, player), k0 = !0, aB.kD())
}, this.kE = function(k3) {
fL || k9 || (p.kA = !1, k1 = !1, k2(k3), kF(0, 0, ap.e8 - 1, ap.e9 - 1), kG(7 / 8), k0 = !0, aB.kD())
}, this.k6 = function(jc, jd, je, jf) {
kF(jc, jd, je, jf), h7 = jx, p.kJ(jv, aK.g5 / 2), p.kK(jw, aK.gA / 2), ax.kL()
}, this.kM = function() {
return !(k0 && k1 || (k0 = !1))
}, this.i6 = function() {
var kP, kQ, ei, kT;
k0 && (jo < .5 ? jq < jr && (jq += jr * jn, jp = jo) : 1 - jp < jo && (jq = (jq -= jr * jn) < jr * jn ? jr * jn : jq), jy = jy >= b3.dY ? b3.dY - 1 : jy, ei = b3.dY - jy, jo = 1e3 < ei || 1 < (jo += jq * ei / jz) ? 1 : jo, jy = b3.dY,
ei = h7, kP = h6, kQ = h8, ei = (h7 = ju * Math.pow(jx / ju, jo)) / ei, kT = 1 - (ju * Math.pow(jx / ju, 1 - jo) - ju) / (jx - ju), p.kJ(js + kT * (jv - js), aK.g5 / 2), p.kK(jt + kT * (jw - jt), aK.gA / 2), a6.zoom(ei, (kP * ei -
h6) / (1 - ei), (kQ * ei - h8) / (1 - ei)), ax.kL(), 1 <= jo && (k0 = !1, ay.kU = !0), b3.d1 = !0)
}
}
function bK() {
var iL = aY.g0;
this.ji = iL.kV(0, 0, 0), this.kW = iL.kX(0, 0, 0, .7), this.kY = iL.kX(0, 0, 0, .5), this.kZ = iL.kX(0, 0, 0, .85), this.ka = iL.kX(0, 0, 0, .75), this.kb = iL.kX(0, 0, 0, .6), this.kc = iL.kX(0, 0, 0, .35), this.gF = iL.kV(255, 255, 255), this
.kd = iL.kX(255, 255, 255, .3), this.ke = iL.kX(255, 255, 255, .6), this.kf = iL.kX(255, 255, 255, .4), this.kg = iL.kX(255, 255, 255, .25), this.kh = iL.kX(255, 255, 255, .85), this.ki = iL.kX(255, 255, 255, .75), this.kj = iL.kX(255, 255,
255, .15), this.kk = iL.kV(128, 128, 128), this.kl = iL.kX(64, 64, 64, .75), this.km = iL.kX(88, 88, 88, .83), this.kn = iL.kV(30, 255, 30), this.ko = iL.kV(0, 200, 0), this.kp = iL.kV(128, 255, 128), this.kq = iL.kX(10, 65, 10, .75),
this.kr = iL.kX(0, 255, 0, .6), this.ks = iL.kX(0, 255, 0, .5), this.kt = iL.kX(0, 200, 0, .5), this.ku = iL.kX(0, 100, 0, .75), this.kv = iL.kX(0, 60, 0, .8), this.kw = iL.kX(0, 255, 0, .3), this.kx = iL.kX(0, 180, 0, .6), this.ky = iL.kX(0,
120, 0, .85), this.kz = iL.kV(0, 120, 0), this.l0 = iL.kV(255, 120, 120), this.l1 = iL.kV(255, 160, 160), this.l2 = iL.kV(255, 70, 70), this.l3 = iL.kV(230, 0, 0), this.l4 = iL.kX(220, 0, 0, .6), this.l5 = iL.kX(255, 100, 100, .8), this
.l6 = iL.kX(100, 0, 0, .85), this.l7 = iL.kX(60, 0, 0, .85), this.l8 = iL.kX(200, 0, 0, .6), this.l9 = iL.kX(120, 0, 0, .85), this.lA = iL.kX(0, 60, 60, .85), this.lB = iL.kX(10, 60, 60, .9), this.lC = iL.kX(0, 96, 96, .75), this.lD = iL.kV(
160, 160, 255), this.lE = iL.kX(0, 40, 90, .75), this.lF = iL.kX(0, 0, 255, .6), this.lG = iL.kV(200, 200, 255), this.lH = iL.kV(255, 120, 100), this.lI = iL.kX(255, 255, 0, .5), this.lJ = iL.kX(255, 255, 150, .2), this.lK = iL.kV(255,
255, 0), this.lL = iL.kV(255, 255, 200), this.lM = iL.kX(200, 200, 0, .6), this.lN = iL.kX(140, 120, 0, .75), this.lO = iL.kX(180, 160, 40, .75), this.lP = iL.kX(255, 140, 0, .75), iL = null, this.lQ = function(lR, ei) {
for (var dl = lR.slice(lR.indexOf("(") + 1, lR.indexOf(")")).split(","), dg = al.dg, eD = 0; eD < 3; eD++) dg[eD] = ai.lS(parseInt(dl[eD].trim(), 10) + ei, 0, 255);
return 3 === dl.length ? aY.g0.kV(dg[0], dg[1], dg[2]) : aY.g0.kX(dg[0], dg[1], dg[2], parseFloat(dl[3].trim()))
}
}
function cG() {
this.fd = new lT, this.fN = new lU, this.lV = new lW, this.lX = new lY, this.iP = new lZ
}
function lT() {
this.fe = function(fX) {
im ? aW.lV.fe(eU, fX) : aN.la.lb(fX)
}, this.fo = function(h5, hS) {
k.lc(), im ? aW.lV.fo(eU, h5, hS) : aN.la.ld(h5, hS)
}, this.le = function(h5, lf) {
k.lc(), im ? aW.lV.lg(eU, h5, lf) : aN.la.lh(h5, lf)
}, this.fl = function(h5, fX) {
im ? aW.lV.fl(eU, h5, fX) : ak.ff.fk(eU, fX) && aN.la.li(h5, fX)
}, this.fg = function(lj, fX) {
im ? aW.lV.fg(eU, lj, fX) : ak.ff.lk(eU, lj, fX) && aN.la.ll(lj, fX)
}, this.lm = function(hS) {
im ? aW.lV.lm(eU, hS) : aN.la.ln(hS)
}, this.lo = function(lp) {
im ? aW.lV.lq(eU, lp) : aN.la.lr(lp)
}, this.ls = function(lt) {
im ? aW.lV.ls(eU, lt) : aN.la.lu(lt)
}, this.lv = function() {
im ? aW.lV.lv(eU) : aN.la.lw()
}
}
function lZ() {
this.iQ = function(player, lf, hT) {
aY.fN.lx(player, hT, lf) && (a5.le(player, lf), lf < h1) && aL.random() < aL.value(10) && (hN[lf] = 0)
}, this.ly = function(player, lf, hT) {
aY.fN.lz(hT, lf) && (aY.fN.m0(lf, al.df[0]), b1.m1(player, lf), a6.m2(lf, al.df[0]))
}
}
function lU() {
this.m3 = function(lp, player) {
k.lo(eU, player, lp), aN.la.m4(lp, player)
}, this.m5 = function(player) {
k.m6(player, 0), aN.la.m7(player)
}, this.m8 = function(m9, player) {
k.mA(m9, player), aN.la.mB(m9, player)
}, this.mC = function(mD) {
im || fL || aN.la.mE(mF(), mD)
}, this.mG = function() {
im || fL || aN.la.mH(mF(), jG[0], jG[1], jG[2])
}, this.mI = function() {
im || fL || aN.la.mJ(mF())
}
}
function lY() {
this.i6 = function(mK) {
var id, dm, kM;
for (ae.cq(mK), ae.fz += 2, kM = 8 * ae.size; ae.fz + 8 <= kM;) id = ae.mL(4), dm = ae.mL(9), 0 === id ? this.mM(id, dm, ae.mL(22)) : 1 === id ? this.mM(id, dm, ae.mL(10), ae.mL(10)) : 2 === id ? this.mM(id, dm, ae.mL(10), ae.mL(9)) :
3 === id || 4 === id ? this.mM(id, dm, ae.mL(10), ae.mL(22)) : 5 === id ? this.mM(id, dm, ae.mL(10)) : 6 === id ? this.mM(id, dm, ae.mL(7)) : 7 === id ? this.mM(id, dm, ae.mL(1)) : this.mM(id, dm)
}, this.mN = [], this.mO = function() {
for (var mQ = 0, mR = 0, mS = 0, mT = 0, mU = 0, mV = 0, eD = 0; eD < 512; eD++) mQ += h2[eD], mR += ez[eD], mS += eV[eD], mT += ak.iw.mW[eD];
mU += ak.iw.mX, mV += iN, this.mN.push(((255 & mQ + mR + mS + mT + mU + mV) << 12) + ((3 & mQ) << 10) + ((3 & mR) << 8) + ((3 & mS) << 6) + ((3 & mT) << 4) + ((3 & mU) << 2) + (3 & mV))
}, this.mM = function(id, dm, dp, dr) {
0 === id ? aW.lV.fe(dm, dp) : 1 === id ? aW.lV.fo(dm, dp, dr) : 2 === id ? aW.lV.lg(dm, dp, dr) : 3 === id ? aW.lV.fl(dm, dp, dr) : 4 === id ? aW.lV.fg(dm, dp, dr) : 5 === id ? aW.lV.lm(dm, dp) : 6 === id ? aW.lV.lq(dm, dp) : 7 === id ?
aW.lV.ls(dm, dp) : 8 === id ? aW.lV.lv(dm) : aW.lV.mY(dm)
}
}
function lW() {
this.fe = function(player, fX) {
aY.fN.fO(0) && aY.fN.fP(player) && aj.h9(fX) && (aX.mZ.ma(0, player, fX), mb.hP(player, fX))
}, this.fo = function(player, h5, hS) {
aY.fN.fO(1) && aY.fN.fP(player) && aY.fN.mc(player, hS) && aY.fN.md(player, h5, 12, eS) && aY.fN.me(player, hS) && (a4.i4(player) || a4.hk(player, al.dj[0])) && hI(player) && (aX.mZ.ma(1, player, h5, al.dj[0]), aY.fN.mf(player), b1.mg(
player, h5), hL(player))
}, this.lg = function(player, h5, lf) {
aY.fN.fO(1) && aY.fN.fP(player) && hM && aY.fN.mc(player, lf) && aY.fN.mh(player, lf) && aY.fN.lx(player, aY.fN.h4(player, h5), lf) && (aX.mZ.ma(2, player, h5, lf), a5.le(player, lf))
}, this.fl = function(player, h5, fX) {
aY.fN.fO(1) && aY.fN.fP(player) && aj.h9(fX) && ak.iw.mX !== ak.iw.mi && ak.iw.mW[player] !== ak.iw.mj && 0 !== es[player].length && aY.fN.md(player, h5, 32, 16) && ak.mk.ml(player, fX) && (aX.mZ.ma(3, player, h5, fX), aY.fN.mf(player),
ak.iw.mm(player))
}, this.fg = function(player, lj, fX) {
aY.fN.fO(1) && aY.fN.fP(player) && aj.h9(fX) && ak.ff.mn(player, lj) && ak.mk.mo(fX) && (aX.mZ.ma(4, player, lj, fX), aY.fN.mp(player, 8), ak.iw.fg())
}, this.lm = function(player, hS) {
aY.fN.fO(1) && aY.fN.fP(player) && (hS = Math.min(hS, ed), a4.hk(player, hS)) && (aX.mZ.ma(5, player, hS), a4.mq(player, hS))
}, this.lq = function(player, lp) {
(aY.fN.fO(1) || aY.fN.fO(2)) && aY.fN.fP(player) && (lp = Math.min(lp, az.mr - 1), aX.mZ.ma(6, player, lp), a6.ms(player, 0, lp))
}, this.ls = function(player, lt) {
aY.fN.fO(1) && aY.fN.fP(player) && (aX.mZ.ma(7, player, lt), aI.mt(player, lt))
}, this.lv = function(player) {
(aY.fN.fO(0) || aY.fN.fO(1)) && aY.fN.fP(player) && an.lv(player) && aX.mZ.ma(8, player)
}, this.mY = function(player) {
an.mY(player), aX.mZ.ma(9, player)
}
}
function mu() {
var mw;
this.mv = [], this.mw = document.createElement("div"), this.mx = function(fy) {
var title = document.createElement("h2");
title.textContent = fy, title.style.margin = "0", title.style.marginBottom = "0.6em", title.style.fontSize = "1.4em", title.style.overflowWrap = "break-word", this.mw.appendChild(title)
}, this.my = function(fy) {
var mz = document.createElement("p");
mz.textContent = fy, mz.style.fontSize = "0.75em", mz.style.lineHeight = "1.2em", mz.style.marginBottom = "0", this.mw.appendChild(mz)
}, this.n0 = function(n1, fontSize = "1em") {
var mw = document.createElement("div");
mw.innerHTML = n1, mw.style.fontSize = fontSize, mw.style.lineHeight = "1.2em", this.mw.appendChild(mw)
}, this.n2 = function(n3) {
for (var n4 = n3.n4, eZ = n4.length, eD = 0; eD < eZ; eD++) this.mw.appendChild(n4[eD])
}, this.n5 = function(n6) {
this.mv.push(n6), this.mw.appendChild(n6.dE)
}, this.resize = function() {
for (var eZ = this.mv.length, eD = 0; eD < eZ; eD++) this.mv[eD].resize && this.mv[eD].resize()
}, (mw = this.mw).style.position = "absolute", mw.style.height = "auto", mw.style.padding = "0.5em"
}
function n7(n8, n9) {
var eD, mw = document.createElement("div");
function nF() {
var eD, nG, gA, eh, ei, nC = aK.nH * mw.offsetWidth,
nI = new Float64Array(function(nC) {
var g5 = .25 * aY.g0.nD(.6) * aK.fw;
return Math.max(Math.floor(nC / g5), 1)
}(nC)),
nJ = b0.nJ,
nK = (nC - (nI.length + 1) * b0.gap) / (nI.length * aK.nH);
for (nI.fill(nJ), eD = 0; eD < n9.length; eD++) nG = (ei = n9[eD].mw).style, gA = Math.min(...nI), eh = nI.indexOf(gA), nG.top = aY.g0.nL(gA), nG.left = aY.g0.nL(nJ + eh * (nK + nJ)), nG.width = aY.g0.nL(nK), aY.g0.nM(ei, 5), nI[eh] += ei
.offsetHeight + 3 * nJ;
mw.style.height = aY.g0.nL(Math.max(...nI) - 2 * nJ)
}
for (this.nA = n9, this.resize = function() {
var eD;
for (eD = 0; eD < n9.length; eD++) n9[eD].resize();
nF(), nF()
}, mw.style.width = "100%", mw.style.maxWidth = "100%", n8.style.lineHeight = "1.5em", n8.style.overflowX = "hidden", n8.style.overflowY = "auto", eD = 0; eD < n9.length; eD++) mw.appendChild(n9[eD].mw);
n8.appendChild(mw)
}
function nN(title, nO, backgroundColor = aZ.kZ) {
var nP = document.createElement("button");
function lQ() {
this.style.backgroundColor = aZ.lQ(backgroundColor, 50)
}
function nS() {
this.style.backgroundColor = backgroundColor
}
function nR() {
this.style.backgroundColor = backgroundColor, this.blur()
}
this.button = nP, this.nQ = nO, nP.innerText = title, nP.style.color = aZ.gF, nP.style.userSelect = "none", nP.style.outline = "none", nP.style.overflowWrap = "break-word", nP.style.backgroundColor = backgroundColor, nP.style.border = "none", nP
.style.font = "inherit", nP.style.fontSize = "1em", nP.style.padding = "0em 0.3em", nP.onclick = nO, nP.addEventListener("mouseover", lQ), nP.addEventListener("mouseout", nR), nP.addEventListener("focus", lQ), nP.addEventListener("blur", nS)
}
function nT(nU, n8) {
var mw, eD;
for (this.resize = function() {
for (var eD = 0; eD < nU.length; eD++) aY.g0.nM(nU[eD].button);
mw.style.gap = mw.style.padding = aY.g0.nL(b0.nJ)
}, (mw = document.createElement("div")).style.display = "grid", mw.style.gridTemplateColumns = "repeat(auto-fill, minmax(9.5em, 1fr))", mw.style.overflowY = "auto", mw.style.gridAutoRows = "5.3em", mw.style.maxHeight = "100%", eD = 0; eD < nU
.length; eD++) nU[eD].button.style.fontSize = "1.2em", mw.appendChild(nU[eD].button);
n8.appendChild(mw)
}
function nW(nX, nY) {
this.fI = 0, this.fJ = 0, this.g5 = 0, this.gA = 0, this.resize = function() {
this.gA = Math.min(aY.g0.nD(.5) * nX[1] * aK.fw, aK.gA - 2 * b0.gap), this.g5 = Math.min(this.gA * (nX[0] / nX[1]), aK.g5 - 2 * b0.gap), this.gA = nX[1] * this.g5 / nX[0], this.fI = b0.gap + nY[0] * (aK.g5 - this.g5 - 2 * b0.gap), this
.fJ = b0.gap + nY[1] * (aK.gA - this.gA - 2 * b0.gap)
}, this.nZ = function() {
return this.fI + .5 * this.g5
}
}
function na(nb) {
function click() {
var value = 1 - nb.value;
this.textContent = (value ? "🟢 " : "⚪ ") + aV.nc[121], b9.nd.ne(nb.fz, value)
}
var dE;
this.dE = document.createElement("p"), (dE = this.dE).textContent = (nb.value ? "🟢 " : "⚪ ") + aV.nc[121], dE.style.margin = "0", dE.style.cursor = "pointer", dE.addEventListener("click", click)
}
function nf(n8, n1) {
var mw = document.createElement("div");
this.ng = mw, this.resize = function() {
mw.style.padding = aY.g0.nL(b0.nJ), mw.style.lineHeight = aY.g0.nL(aY.g0.nh(.035))
}, n8.style.overflowX = "hidden", n8.style.overflowY = "auto", mw.innerHTML = n1, n8.appendChild(mw)
}
function ni(nj) {
var mw = document.createElement("div");
this.dE = mw, this.resize = function() {
for (var eZ = nj.length, eD = 1; eD < eZ; eD++) aY.g0.nM(nj[eD], 4)
};
var eD, eZ = nj.length;
for (mw.style.width = "100%", mw.style.height = "2.7em", mw.style.marginTop = "0.6em", mw.style.border = "inherit", eD = 0; eD < eZ; eD++) nj[eD].style.verticalAlign = "top", nj[eD].style.width = (100 / eZ).toFixed(2) + "%", nj[eD].style.height =
"100%", nj[eD].style.fontSize = "0.75em", mw.appendChild(nj[eD])
}
function nk(nb) {
var dE;
this.dE = document.createElement("input"), (dE = this.dE).type = "text", dE.id = "input" + nb.title, dE.value = nb.value, dE.style.width = "100%", dE.style.userSelect = "none", dE.style.outline = "none", dE.style.resize = "none", dE.style
.border = "inherit", dE.style.font = "inherit", dE.style.color = aZ.gF, dE.style.backgroundColor = aZ.kW, dE.style.fontSize = "1em", dE.style.padding = "0.1em 0.2em", -1 !== nb.fz && (dE.addEventListener("blur", function() {
b9.nd.ne(nb.fz, dE.value.trim())
}), dE.addEventListener("keypress", function(event) {
"Enter" === event.key && (event.preventDefault(), b9.nd.ne(nb.fz, dE.value.trim()))
}))
}
function nl(n8, nm, h5) {
var nn, eD, no = new Array(nm.length),
n9 = new Array(nm.length);
for (this.resize = function() {
for (var eZ = nm.length, eD = 0; eD < eZ; eD++) 0 < eD && aY.g0.nM(no[eD], 8)
}, nn = document.createElement("div"), n8.style.overflowX = "hidden", n8.style.overflowY = "auto", ! function() {
var eD, ei, eZ = nm.length;
for (eD = 0; eD < eZ; eD++) {
no[eD] = document.createElement("div"), no[eD].style.display = "flex", no[eD].style.width = "100%", no[eD].style.height = "2.5em", no[eD].style.backgroundColor = eD % 2 == 0 ? aZ.kl : aZ.kc, n9[eD] = new Array(nm[0].length);
for (let hZ = 0; hZ < nm[0].length; hZ++) n9[eD][hZ] = ei = document.createElement("div"), ei.style.display = "flex", ei.style.width = "100%", ei.style.height = "100%", ei.style.justifyContent = "center", ei.style.alignItems =
"center", ei.innerHTML = nm[eD][hZ], 0 < hZ && aY.g0.nM(ei, 4), no[eD].appendChild(ei)
}
}(), eD = 0; eD < nm.length; eD++) nn.appendChild(no[eD]);
n8.appendChild(nn)
}
function nq(nb) {
this.n4 = [];
var nr = this.n4;
function click() {
for (var eD = 0; eD < nr.length; eD++) nr[eD].textContent = nr[eD].textContent.replace("🟢", "⚪");
this.textContent = this.textContent.replace("⚪", "🟢"), b9.nd.ne(nb.fz, parseInt(this.name))
}
for (var ns, eZ = nb.nt.length, eD = 0; eD < eZ; eD++)(ns = document.createElement("p")).textContent = "⚪ " + nb.nt[eD], ns.style.margin = "0", ns.name = "" + eD, ns.style.cursor = "pointer", ns.style.fontSize = "1em", ns.addEventListener(
"click", click), nr.push(ns);
nr[nb.value].textContent = nr[nb.value].textContent.replace("⚪", "🟢")
}
function nu(title, nv) {
var eD, nn = document.createElement("div"),
nw = document.createElement("div"),
nx = document.createElement("div"),
ny = document.createElement("div");
for (this.nz = nx, this.show = function() {
document.body.appendChild(nn)
}, this.o3 = function() {
document.body.removeChild(nn)
}, this.resize = function() {
var eD, dE, eZ = nv.length,
o4 = aY.g0.nh(.1),
o5 = aY.g0.nh(.08 + .04 * (aK.o6 < 1));
for (nw.style.height = aY.g0.nL(o4), aY.g0.nM(nw, 2), ny.style.top = aY.g0.nL(aK.gA / aK.nH - o5), ny.style.height = aY.g0.nL(o5), aY.g0.nM(ny, 8), nx.style.top = aY.g0.nL(o4), nx.style.height = nx.style.maxHeight = aY.g0.nL(aK.gA / aK
.nH - o4 - o5), ny.style.font = nw.style.font = nx.style.font = aY.g0.g1(0, aY.g0.nh(.02)), eD = 0; eD < eZ; eD++)(dE = nv[eD].button).style.top = "0", dE.style.left = (100 * eD / eZ).toFixed(2) + "%", dE.style.width = (100 / eZ)
.toFixed(2) + "%", dE.style.height = "100%", 0 < eD && aY.g0.nM(dE, 4)
}, nn.style.position = "absolute", nn.style.top = "0", nn.style.left = "0", nn.style.width = "100%", nn.style.height = "100%", nw.style.position = "absolute", nw.style.top = "0", nw.style.left = "0", nw.style.width = "100%", nw.style
.display = "flex", nw.style.backgroundColor = aZ.kZ, ny.style.position = "absolute", ny.style.left = "0", ny.style.width = "100%", nx.style.position = "absolute", nx.style.width = "100%", nx.style.backgroundColor = aZ.kZ, ! function() {
var eD;
for (eD = 0; eD < nv.length; eD++) nv[eD].button.style.position = "absolute", nv[eD].button.style.fontSize = "1.2em"
}(), eD = 0; eD < nv.length; eD++) ny.appendChild(nv[eD].button);
nw.appendChild(function() {
var o2 = document.createElement("h1");
return o2.textContent = title, o2.style.margin = "auto", o2.style.fontSize = "2.3em", o2
}()), nn.appendChild(nx), nn.appendChild(nw), nn.appendChild(ny)
}
function o7() {
var o8 = document.createElement("textarea"),
oA = (this.o9 = o8, !0);
function oG() {
o8.select(), document.execCommand("copy")
}
this.resize = function() {
o8.style.padding = aY.g0.nL(b0.nJ)
}, this.oB = function(oC) {
o8.value = oC
}, this.oD = function() {
return o8.value
}, this.oE = function() {
o8.select()
}, this.clear = function() {
o8.value = ""
}, this.oF = function() {
oA && navigator.clipboard ? (o8.select(), navigator.clipboard.writeText(o8.value).catch(function() {
oA = !1, oG()
})) : oG()
}, o8.setAttribute("name", "replayData"), o8.setAttribute("id", "replayDataField"), o8.setAttribute("autocomplete", "off"), o8.setAttribute("placeholder", "Insert the replay link here!"), o8.style.top = "0", o8.style.left = "0", o8.style
.width = "100%", o8.style.height = "100%", o8.style.userSelect = "none", o8.style.outline = "none", o8.style.resize = "none", o8.style.border = "none", o8.style.color = aZ.gF, o8.style.backgroundColor = aZ.kW, o8.style.fontSize = "1.2em"
}
function cb() {
this.nQ = new oH, this.dG = new oI, this.nd = new oJ, this.iw = new oK, this.cq = function() {
this.dG.cq(), (new oL).cq()
}
}
function oI() {
function oM(eD, title, type, nt = null, oS = 0, dc = 0) {
b9.dG.data.push({
fz: eD,
title: title,
type: type,
nt: nt,
value: oS,
oS: oS,
dc: dc
})
}
function oN(eD, title, type, nt = null, oS = "", dc = 0) {
b9.dG.data.push({
fz: eD,
title: title,
type: type,
nt: nt,
value: oS,
oS: oS,
dc: dc
})
}
function oO(kM) {
for (var eD = b9.dG.data.length; eD < kM; eD++) b9.dG.data.push(null)
}
this.data = [], this.cq = function() {
oM(0, "", 1, ["English", "Русский", "Türkçe", "Española", "Deutsch"], 0, 4), oM(1, "", 1, null, 1), oM(2, "", 0, [0, 1]), oN(3, "Username", 2), oM(4, "Font5", 1, ["Default", "Custom"]), oN(5, "", 2, null, "Trebuchet MS", 1), oM(6, "", 0,
[0, 1]), oM(7, "", 0, [0, 1], 1), oM(8, "", 0, [0, 1]), oM(9, "", 1, null, 1), oM(10, "", 1, null), oM(11, "", 1, null, 1), oO(100), oN(100, "Username", 2), oN(101, "Password", 2), oN(102, "Emojis", 2), oN(103, "Colors", 2), oN(
104, "Clan", 2), oN(105, "AccountName", 2), oN(106, "Password", 2), oM(107, null, 0), oM(108, null, 0), oM(109, null, 0), oN(110, null, 2), oM(111, null, 0), oM(112, null, 0), oM(113, null, 0), oN(114, null, 2), oM(115, null, 0),
oN(116, null, 2), oM(117, null, 1), oO(180), oM(180, "R0", 0), oM(181, "R1", 0)
}, this.translate = function() {
this.data[0].title = "🌐 " + aV.nc[101], this.data[1].title = aV.nc[102], this.data[2].title = aV.nc[103], this.data[5].title = aV.nc[104], this.data[6].title = aV.nc[105], this.data[7].title = aV.nc[106], this.data[8].title = aV.nc[107],
this.data[9].title = aV.nc[108], this.data[10].title = aV.nc[109], this.data[11].title = aV.nc[110], this.data[1].nt = [aV.nc[111], aV.nc[112], aV.nc[113], aV.nc[114]], this.data[9].nt = [aV.nc[112], aV.nc[115], aV.nc[116]], this
.data[10].nt = [aV.nc[109] + " 1", aV.nc[117] + " 1", aV.nc[109] + " 2", aV.nc[117] + " 2"], this.data[11].nt = [aV.nc[118], aV.nc[119], aV.nc[120]]
}, this.ne = function(fz, value) {
this.data[fz].value = value
}, this.dH = function(fz, value) {
this.ne(fz, value), b9.nQ.save(fz, String(value)), b9.nQ.save(fz, String(this.data[fz].dc), !0)
}, this.oP = function() {
for (var eD = 0; eD < this.data.length; eD++) this.data[eD] && (b9.nQ.save(eD, String(this.data[eD].value)), b9.nQ.save(eD, String(this.data[eD].dc), !0))
}, this.oQ = function(fz) {
return Number(this.data[fz].value)
}, this.oR = function(fz) {
return String(this.data[fz].value)
}
}
function oH() {
this.oT = function(fz, dc = !1) {
return Number(this.oU(fz, dc))
}, this.oU = function(fz, dc = !1) {
var db = null;
return 0 === b7.id ? b7.oV && (db = b7.oV.getItem((dc ? "v" : "d") + fz)) : 1 === b7.id ? db = b7.oW.loadString((dc ? 1e3 : 2e3) + fz) : 2 === b7.id && (db = b7.oX[(dc ? "v" : "d") + fz]), db && 0 !== db.length ? db : null
}, this.save = function(fz, value, dc = !1) {
0 === b7.id ? b7.oV && b7.oV.setItem((dc ? "v" : "d") + fz, value) : 1 === b7.id ? b7.oW.saveString((dc ? 1e3 : 2e3) + fz, value) : 2 === b7.id && (b7.oX["d" + fz] = value, b7.oY.postMessage((dc ? "v" : "d") + fz + " " + value))
}
}
function oL() {
this.cq = function() {
! function() {
var data = b9.dG.data;
0 === data[2].dc && (aK.gA > aK.g5 || 0 !== b7.id) && (data[2].value = data[2].oS = 1);
0 === data[100].dc && (data[100].value = data[100].oS = (0 === b7.id ? "Player " : 1 === b7.id ? "Android User " : "iOS User ") + Math.floor(1e3 * Math.random()));
data[0].value = data[0].oS = aV.ob()
}();
var eD, db, data = b9.dG.data,
eZ = data.length;
for (eD = 0; eD < eZ; eD++) data[eD] && data[eD].dc === b9.nQ.oT(eD, !0) && (db = b9.nQ.oU(eD), data[eD].value = null === db ? data[eD].oS : 2 === data[eD].type ? db : Number(db));
b9.dG.data[10].value = b9.dG.data[10].oS
}
}
function oK() {
function oe(dl) {
let oj = dl[0];
for (let eD = 1; eD < dl.length; eD++) oj += ";" + dl[eD];
b9.nd.ne(116, oj)
}
this.oc = function() {
var dl = b9.dG.data[116].value.split(";");
dl.length % 2 == 1 && dl.pop(), dl.unshift(b9.dG.data[106].value), dl.unshift(b9.dG.data[105].value);
for (let eD = 2; eD < dl.length; eD += 2)
if (dl[eD] === dl[0]) {
dl.splice(eD, 2);
break
} var od = [];
for (let eD = 0; eD < dl.length; eD += 2) od.push(dl[eD]);
oe(dl), b9.dG.data[117].value = 0, b9.dG.data[117].nt = od
}, this.og = function(fz) {
b9.dG.data[117].nt.splice(fz, 1), b9.dG.data[117].value = Math.min(fz, b9.dG.data[117].nt.length - 1);
var dl = b9.dG.data[116].value.split(";");
dl.splice(2 * fz, 2), oe(dl)
}, this.oh = function(fz) {
var dl = b9.dG.data[116].value.split(";");
return {
oi: dl[2 * fz],
password: dl[2 * fz + 1]
}
}
}
function oJ() {
this.ne = function(fz, value) {
b9.dG.data[fz].value !== value && (b9.dG.dH(fz, value), 0 === fz ? (ar.ok(0), aV.cq(), ar.ok(2)) : 1 === fz ? aK.ol(1) : 2 === fz ? aK.ol(0) : 5 === fz && (aY.g0.om(), aK.ol(0)))
}, this.on = function() {
for (var data = b9.dG.data, eD = 0; eD < 100; eD++) data[eD] && b9.dG.dH(eD, data[eD].oS);
aY.g0.om(), aK.ol(1), aV.cq()
}, this.oo = function() {
var data = b9.dG.data;
for (let eD = 0; eD < data.length; eD++) data[eD] && b9.dG.ne(eD, data[eD].oS)
}
}
function bM() {
this.op = new oq, this.or = new os, this.cq = function() {
this.op.cq()
}
}
function os() {
this.ot = function(size) {
for (var ou = ae, dl = [], eD = 0; eD < size; eD++) dl.push(String.fromCharCode(ou.mL(16)));
return dl.join("")
}, this.ov = function(fy) {
return 20 < (fy = fy.trim()).length ? fy.substring(0, 20) : fy
}
}
function oq() {
var ow = new Uint8Array(78);
this.cq = function() {
var eD;
for (ow[50] = 37, eD = 0; eD < 10; eD++) ow[eD + 3] = eD + 1;
for (eD = 0; eD < 26; eD++) ow[eD + 20] = eD + 11, ow[eD + 52] = eD + 38
}, this.ox = function(fy) {
return fy.trim().replace(new RegExp("[^a-zA-Z0-9_\\-]", "g"), "_")
}, this.oy = function(fy, size) {
if ((fy = this.ox(fy)).length > size) return fy.substring(0, size);
for (; fy.length < size;) fy += "_";
return fy
}, this.oz = function(fy) {
for (var p0 = ow, eZ = fy.length, dl = new Uint8Array(eZ), eD = 0; eD < eZ; eD++) dl[eD] = p0[fy.charCodeAt(eD) - 45];
return dl
}, this.p1 = function(p2) {
ab.d2(6 * p2.length), this.p3(p2), ae.cq(ab.mK)
}, this.p3 = function(p2) {
var eZ = p2.length,
g5 = ab;
for (let eD = 0; eD < eZ; eD++) g5.p4(6, p2[eD])
}, this.p5 = function(fy) {
this.p3(this.oz(fy))
}, this.p6 = function(fy, size) {
this.p3(this.oz(this.oy(fy, size)))
}
}
function p7() {
var g5, gA, p8;
function pY(pZ, ei, pW, pE, pR) {
ei = pX(pZ, ei + 1 + 2 * pE & 3);
! function(pZ, pa) {
return 1 < Math.abs(pZ % g5 - pa % g5) || 1 < Math.abs(pd(pZ) - pd(pa))
}(pZ, ei) && 0 === pR[ei << 2] && (pR[ei << 2] = pW)
}
function pd(eg) {
return Math.floor((eg + .5) / g5) % gA
}
function pX(eg, ei) {
return eg + p8[ei]
}
this.p9 = function(fy) {
var eD, pA, eZ, pC, ou = ae;
for (ad.op.p1(ad.op.oz(fy)), ap.e8 = g5 = ou.mL(12), ap.e9 = gA = ou.mL(12), p8 = [-g5, -1, g5, 1], ap.pN = document.createElement("canvas"), ap.pN.width = ap.e8, ap.pN.height = ap.e9, ap.pJ = ap.pN.getContext("2d", {
alpha: !1
}), ap.pK = ap.pJ.getImageData(0, 0, ap.e8, ap.e9), ap.pO = ap.pK.data, aY.pP.pQ(ap.pO), eZ = ou.mL(12), pA = ou.mL(5), pC = pG(g5 * gA - 1), eD = 0; eD < eZ; eD++) ! function(pB, eg, pD, pE) {
var eD, ei, ou = ae,
pR = ap.pO,
pS = eg,
pT = eg,
pU = 0,
pV = 1 + pD,
pW = 2 - pD;
for (pR[eg << 2] = pV, eD = 0; eD < pB; eD++) ei = ou.mL(2), eg = pX(eg, ei), pR[eg << 2] === pV ? pU % 2 == 1 && pY(pT, pU + 2 * pE + 3, pW, pE, pR) : pR[eg << 2] = pV, pY(eg, ei, pW, pE, pR), pY(pT, ei, pW, pE, pR), pT = eg,
pU = ei;
pX(eg, 0) === pS ? (pY(eg, 0, pW, pE, pR), pY(pS, 0, pW, pE, pR)) : pX(eg, 1) === pS && (pY(eg, 0, pW, pE, pR), pY(pS, 2, pW, pE, pR));
0 === pB && (pY(pS, 0, pW, pE, pR), pY(pS, 2, pW, pE, pR))
}(ou.mL(pA), ou.mL(pC), 1 === ou.mL(1), 1 === ou.mL(1));
var fI, fJ, pe, pf, pg, ph, pR = ap.pO,
pi = !0,
pj = ap.ii.pk[ap.pl].pj,
pm = ap.ii.pk[ap.pl].pm;
for (fJ = 0; fJ < gA; fJ++)
for (pf = !0, pg = pi, fI = ph = 0; fI < g5; fI++) pe = 4 * fJ * g5 + 4 * fI, ph <= fI && 0 < pR[pe] && (pg = 2 === pR[pe], pf) && (pf = !1, pg !== pi) ? (pi = pg, ph = fI + 1, fI = -1) : (pg ? (pR[pe] = pm[0], pR[1 + pe] = pm[1], pR[
2 + pe] = pm[2]) : (pR[pe] = pj[0], pR[1 + pe] = pj[1], pR[2 + pe] = pj[2]), pR[3 + pe] = 255);
ap.pJ.putImageData(ap.pK, 0, 0), ap.pL = !0, ap.pM.cq(), b3.d1 = !0
}
}
function bS() {
var fI, fJ, g5, gA, pn, po, pp, pq, player, dl;
function py() {
return function() {
var eD;
for (eD = 0; eD < 8; eD++)
if (fI = eR(g5 * aL.random(), aL.value(100)), fJ = eR(gA * aL.random(), aL.value(100)), q6()) return 1;
return
}() || function() {
var gt, gw, hZ, pw, hi, pv;
for (gt = eR(g5 * aL.random(), aL.value(100)), gw = eR(gA * aL.random(), aL.value(100)), hZ = 40; 1 <= hZ; hZ--)
for (pw = gA - hZ; 0 <= pw; pw -= 40)
for (fJ = (pw + gw) % gA, hi = 40; 1 <= hi; hi--)
for (pv = g5 - hi; 0 <= pv; pv -= 40)
if (fI = (pv + gt) % g5, q6()) return 1;
return
}()
}
function q6() {
for (var eg, q8, gap = eR(pn - pq, 2), q9 = pp + fJ * pn + gap, qA = po + fI * pn + gap, q7 = q9 + pq - 1; q9 <= q7; q7--)
for (q8 = qA + pq - 1; qA <= q8; q8--)
if (eg = a2.q4(q8, q7), !a2.eb(eg) || a2.hV(eg)) return;
return 1
}
function pz(pv, pw) {
pr(), qB(pv - 2, pw - 2)
}
function pr() {
h2[player] = 0, eV[player] = 0, ez[player] = qC[player] = 0, ea[player] = [], er[player] = [], es[player] = [], ev[player] = [], hu[player] = hx[player] = ht[player] = hw[player] = 0
}
function qB(pv, pw) {
var eg, eD, qE, qF;
for (h2[player] = 1, eV[player] = player < h1 ? qD : iT[b.hT[player - h1]], hu[player] = pv + 10, hx[player] = pw + 10, hw[player] = ht[player] = 0, qE = pv; qE < pv + 4; qE++)
for (qF = pw; qF < pw + 4; qF++)(pv < qE && qE < pv + 3 || pw < qF && qF < pw + 3) && (eg = a2.q4(qE, qF), a2.eb(eg)) && (hu[player] = qE < hu[player] ? qE : hu[player], ht[player] = qE > ht[player] ? qE : ht[player], hx[player] = qF <
hx[player] ? qF : hx[player], hw[player] = qF > hw[player] ? qF : hw[player], dl[ez[player]] = eg, ez[player]++, a2.qG(eg, player));
for (qC[player] = ez[player], eD = ez[player] - 1; 0 <= eD; eD--) a2.qH(dl[eD], player) ? (a2.ec(dl[eD], player), er[player].push(dl[eD])) : a2.qI(dl[eD]) ? (a2.ec(dl[eD], player), es[player].push(dl[eD])) : a2.qJ(dl[eD]) && (a2.ec(dl[eD],
player), ev[player].push(dl[eD]))
}
function q5(pv, pw) {
for (var eg, q8, q7 = pw; pw - 6 < q7; q7--)
for (q8 = pv; pv - 6 < q8; q8--)
if (eg = a2.q4(q8, q7), a2.hV(eg)) return;
return 1
}
this.cq = function() {
var eD, pv, pw;
if (dl = new Array(12), pq = 6, pn = 10, g5 = eR(ap.e8, pn), gA = eR(ap.e9, pn), po = eR(ap.e8 - pn * g5, 2), pp = eR(ap.e9 - pn * gA, 2), fc)
for (eD = 0; eD < h1; eD++) player = eD, pr(), h2[player] = 1;
if (aU.ih && aU.ii.ps) {
for (player = 0; player < ed; player++)
if (1 !== h2[player]) {
if (player < px) {
if (function() {
var pv = aU.ii.ps[player] + 1,
pw = aU.ii.q3[player] + 1;
if (3 < pv && pv < ap.e8 - 5 && 3 < pw && pw < ap.e9 - 5 && a2.eb(a2.q4(pv, pw)) && q5(pv + 3, pw + 3)) return pz(pv + 1, pw + 1), 1;
return
}()) continue;
if (py()) {
pv = po + fI * pn + eR(pn, 2), pw = pp + fJ * pn + eR(pn, 2), pz(pv, pw);
continue
}
}
pr()
}
} else ! function() {
var pv, pw;
for (player = 0; player < ed; player++) 1 !== h2[player] && (player < px && py() ? (pv = po + fI * pn + eR(pn, 2), pw = pp + fJ * pn + eR(pn, 2), pz(pv, pw)) : pr())
}();
b1.eX[7] = ez[eU], b1.eX[8] = eV[eU]
}, this.qK = function(hS, qL, qM) {
var eD, pv, pw, eg, fI, fJ;
for (player = hS, eD = 0; eD < 20; eD++)
for (pv = qL + eD; qL - eD <= pv; pv--)
for (pw = qM + eD; qM - eD <= pw; pw--)
if ((pv === qL + eD || pv === qL - eD || pw === qM + eD || pw === qM - eD) && 3 < pv && pv < ap.e8 - 5 && 3 < pw && pw < ap.e9 - 5 && a2.eb(a2.q4(pv, pw)) && q5(pv + 3, pw + 3)) {
if (0 < ez[player]) {
for (fJ = fI = eg = void 0, fI = ht[player]; fI >= hu[player]; fI--)
for (fJ = hw[player]; fJ >= hx[player]; fJ--) eg = 4 * (fJ * ap.e8 + fI), a2.qO(player, eg) && (a2.qP(eg), ez[player]--);
pr()
}
return qB(pv - 1, pw - 1), !0
} return !1
}, this.qQ = function(hS) {
player = hS, py() ? pz(po + fI * pn + eR(pn, 2), pp + fJ * pn + eR(pn, 2)) : pr()
}
}
function qR() {
aD.qS(), gE.setTransform(h7, 0, 0, h7, 0, 0), gE.imageSmoothingEnabled = h7 < 3, gE.drawImage(ap.pN, p.jg(), p.gC()), am.qT.gD(), gE.drawImage(qU, p.jg(), p.gC()), aD.gD(), gE.imageSmoothingEnabled = !1, gE.setTransform(1, 0, 0, 1, 0, 0), ak.qT
.gD(), a6.gD(), e.gD(), (k9 ? (b5.gD(), aa) : (k.gD(), s.gD(), o.gD(), aa.gD(), aI.gD(), t.gD(), p.gD(), n.gD(), b5.gD(), r.gD(), m.gD(), j.gD(), i.gD(), u.gD(), b2.gD(), aF)).gD()
}
function qV(qW, g5, gA) {
qW.clearRect(0, 0, g5, gA), qW.fillStyle = aZ.ka, qW.fillRect(0, 0, g5, gA)
}
function qX(qW, g5, gA, qY) {
qW.fillStyle = aZ.gF, qW.fillRect(0, 0, g5, qY), qW.fillRect(0, 0, qY, gA), qW.fillRect(g5 - qY, 0, qY, gA), qW.fillRect(0, gA - qY, g5, qY)
}
function qZ(qW, fI, fJ, gH, qY, eg, qa) {
qW.fillStyle = aZ.gF;
var eg = Math.floor(gH * eg),
qc = (eg += (eg - qY) % 2, Math.floor((eg - qY) / 2)),
gH = Math.floor((gH - eg) / 2);
qW.fillRect(fI + gH, fJ + gH + qc, eg, qY), qa && qW.fillRect(fI + gH + qc, fJ + gH, qY, eg)
}
function qe() {
this.qf = null, this.cq = function(qf) {
this.qf = qf, k.qg(this.qf)
}, this.qh = function(qi) {
var gf = (this.qf[qi].qj - this.qf[1 - qi].qj) / 10,
gf = 8 / (1 + Math.pow(2, gf / 32)),
gf = Math.floor(10 * gf + .5),
ql = this.qm(this.qf[qi].qj + gf + 1),
gf = this.qm(this.qf[1 - qi].qj - gf);
0 === qi ? k.qo(this.qf, ql, gf, ["rgba(10,140,10,0.75)", "rgba(140,10,10,0.75)"]) : k.qo(this.qf, gf, ql, ["rgba(140,10,10,0.75)", "rgba(10,140,10,0.75)"])
}, this.qm = function(qj) {
return 16e3 <= (qj = qj < 0 ? 0 : 16e3 < qj ? 16e3 : qj) ? "Unknown" : (qj / 10).toFixed(1)
}
}
function bL() {
this.op = new qp, this.or = new qq, this.cq = function() {
this.op.cq()
}
}
function qq() {
this.p5 = function(fy) {
for (var eZ = fy.length, g5 = ab, eD = 0; eD < eZ; eD++) g5.p4(16, fy.charCodeAt(eD))
}
}
function qp() {
var qr = new Uint8Array(64);
this.cq = function() {
var eD;
for (qr[0] = 45, qr[37] = 95, eD = 0; eD < 10; eD++) qr[eD + 1] = 48 + eD;
for (eD = 0; eD < 26; eD++) qr[eD + 11] = 65 + eD, qr[eD + 38] = 97 + eD
}, this.qs = function(qt) {
for (var ou = ae, p2 = new Uint8Array(qt), eD = 0; eD < qt; eD++) p2[eD] = ou.mL(6);
return p2
}, this.qu = function(p2) {
for (var eZ = p2.length, qv = qr, dl = [], eD = 0; eD < eZ; eD++) dl.push(String.fromCharCode(qv[p2[eD]]));
return dl.join("")
}
}
function bT() {
var qw, qx, qy;
qw = [32, 65, 191, 913, 931], qx = [64, 127, 688, 930, 1155], qy = new Array(qw.length + 1);
for (var eD = 0; eD < qy.length; eD++) {
qy[eD] = 0;
for (var hZ = eD - 1; 0 <= hZ; hZ--) qy[eD] += qx[hZ] - qw[hZ]
}
function r4(iL) {
for (var eD = qw.length - 1; 0 <= eD; eD--)
if (iL >= qw[eD] && iL < qx[eD]) return eD;
return -1
}
this.ov = function(fy) {
return 0 !== (fy = fy.trim()).indexOf("Bot ") && 0 !== fy.indexOf("[Bot] ") && function(fy, r1, r2) {
var eZ = (fy = fy.trim()).length;
if (eZ < r1 || r2 < eZ) return !1;
for (var iL, r3 = 0, eD = 0; eD < eZ; eD++)
if (iL = fy.charCodeAt(eD), r3 += 65 <= iL && iL <= 90 || 1040 <= iL && iL <= 1071 ? 1 : 0, -1 === r4(iL)) return !1;
if (3 < r3 && r3 > Math.floor(eZ / 2)) return !1;
return !0
}(fy, 3, 20)
}, this.r5 = function(fy) {
for (var eZ = (fy = fy.trim()).length, dl = [], eD = 0; eD < eZ; eD++) {
var iL, eg = r4(iL = fy.charCodeAt(eD));
dl.push(qy[eg] + iL - qw[eg])
}
return dl
}, this.p9 = function(dl) {
for (var iL, hi, fy = "", eZ = dl.length, eD = 0; eD < eZ; eD++)
for (hi = 1; hi < qy.length; hi++)
if (dl[eD] < qy[hi]) {
iL = qw[hi - 1] + dl[eD] - qy[hi - 1], fy += String.fromCharCode(iL);
break
} return fy
}, this.r6 = function(fy) {
for (var dl = this.r5(fy), result = "", eD = 0; eD < dl.length; eD++) result = (result += dl[eD] < 10 ? "00" : dl[eD] < 100 ? "0" : "") + dl[eD].toString(10);
return result
}, this.r7 = function(fy) {
for (var dl = new Array(Math.floor(fy.length / 3)), eD = 0; eD < fy.length; eD += 3) dl[Math.floor(eD / 3)] = parseInt(fy.substring(eD, eD + 3));
return this.p9(dl)
}, this.r8 = function(fy) {
for (var db, dl = [fy.length], eD = 0; eD < fy.length; eD++) dl[eD] = fy.charCodeAt(eD) - 48;
var result = "";
for (eD = 0; eD < fy.length; eD++) eD === fy.length - 1 || 51 < 10 * dl[eD] + dl[eD + 1] ? result += dl[eD].toString() : (db = 10 * dl[eD] + dl[eD + 1], result += String.fromCharCode(db + (db < 26 ? 65 : 71)), eD++);
return result
}, this.r9 = function(fy) {
for (var iL, result = "", eD = 0; eD < fy.length; eD++) 48 <= (iL = fy.charCodeAt(eD)) && iL < 58 ? result += String.fromCharCode(iL) : 65 <= iL && iL < 75 ? result += "0" + (iL - 65).toString() : 75 <= iL && iL < 91 ? result += (iL - 65)
.toString() : 97 <= iL && iL < 123 && (result += (iL - 71).toString());
return result
}, this.rA = function(fy) {
for (var eZ = fy.length, dl = [], eD = 0; eD < eZ; eD++)(iL = fy.charCodeAt(eD)) < 58 ? dl.push(fy[eD]) : (iL -= iL < 91 ? 65 : 71, dl.push(String(eR(iL, 10))), dl.push(String(iL - 10 * eR(iL, 10))));
var eZ = dl.length - 2,
iL = 0,
p2 = [];
for (eD = 0; eD < eZ; eD += 3) p2[iL++] = parseInt(dl[eD] + dl[eD + 1] + dl[eD + 2]);
return p2
}, this.rB = function() {
for (var gQ, rC = "", eD = 0; eD < 6; eD++) gQ = 48 + aL.random() % 36, gQ += 58 <= gQ ? 39 : 0, rC += String.fromCharCode(gQ);
return rC
}
}
function cS() {
this.rD = new rE, this.ix = new rF, this.cq = function() {
this.ix.cq()
}
}
function rE() {
function rH() {
if (2 === rS) return 1;
aI.rT(), rS = 2, rU = rV
}
function rK() {
k.rW(!0), s.j6(!0), t.j6(!0), aI.j6(), aa.rX(), fL && b3.rY.rZ(), b3.d1 = !0, ay.ra(), b7.cv.setState(0)
}
this.rG = function() {
rH() || (aW.fN.mG(), k.rI(247, 0), k.rJ(0, 59), f.kE(2700), u.show(!1, !1, !0), rK())
}, this.rL = function(rM) {
var mD = 0,
rN = !1;
rH() || (8 === ik ? ((rN = (mD = rM < 0 ? ez[0] >= ez[1] ? 0 : 1 : rM) === eU) ? k.rJ(mD, 2) : k.rJ(1 - eU, 3), rO.qh(mD), aW.fN.mC(mD)) : hM ? (rN = b4.iM[eU] === b5.rP(), 9 === ik ? (aW.fN.mC(rN ? jG[0] : 512), k.rQ(rN)) : ao.ix.i6(
rN)) : (rN = (mD = jG[0]) === eU, k.rR(mD), aW.fN.mC(mD)), u.show(rN, !1), rK())
}
}
function rF() {
var rb;
function rv(rd, eh) {
for (var fy = "", eD = eh; eD < rd.length && eD < eh + 4; eD++) fy += (eD === eh ? "" : " ") + "[" + b4.rn[rd[eD].id] + "]: " + rd[eD].rs.toFixed(Math.max(Math.floor(3 - Math.log10(rd[eD].rs)), 0));
fy.length && k.ru(0, fy, 45, 0, aY.g0.kV(225, 240, 255), aZ.ka, -1, !1)
}
this.rc = 0, this.rd = null, this.cq = function() {
rb = 0, this.rc = 0, this.rd = null
}, this.i6 = function(rN) {
var re = b4.rf[b5.rg()];
this.rc = b5.rh(), this.rd = function(re, rc) {
var eD, hi, eZ, iM = b4.iM,
rf = b4.rf,
rn = b4.rn,
ro = b4.ro,
rp = ez,
rq = h1,
rr = [],
fz = 0;
for (hi = rn.length - 1; 0 <= hi; hi--)
if (rf[iM[ro[hi][0]]] === re) {
for (rr.push({
id: hi,
rp: 0,
player: ro[hi][0],
rs: 0
}), eZ = ro[hi].length, eD = 0; eD < eZ; eD++) rr[fz].rp += rp[ro[hi][eD]];
for (rr[fz].rs = (1 + rt) * rq * rr[fz].rp / rc, eD = 0; eD < fz; eD++)
if (rr[fz].rp > rr[eD].rp) {
rr.splice(eD, 0, rr[fz]), rr.pop();
break
} fz++
} 8 < rr.length && (rr.length = 8);
for (; 0 < rr.length && 0 === rr[rr.length - 1].rp;) rr.pop();
return rr
}(re, this.rc), n.rj("Team " + b4.fu[re], 2, 1, 12),
function(rN, re) {
var color;
rN = rN ? (color = aY.g0.kV(10, 220, 10), "Congratulations! Team " + b4.fu[re] + " won the game!") : (color = aY.g0.kV(200, 80, 80), "Our alliance was defeated! Team " + b4.fu[re] + " won the game.");
k.ru(0, rN, 40, 0, color, aZ.ka, -1, !1)
}(rN, re), 0 !== (rN = this.rd).length && (k.ru(0, "The allied clans of the winning team have earned these glorious points:", 40, 0, aZ.gF, aZ.ka, -1, !1), rv(rN, 0), rv(rN, 4)), aW.fN.mI(), f.kE(2700)
}, this.iy = function() {
2 === rS && -1 !== rb && (0 === rb ? rb = this.rd && 0 !== this.rd.length ? b3.dY + 8e3 : -1 : b3.dY < rb || (rb = -1, k.ru(255, "Clan rankings and results can also be accessed under:", 735, 0, aZ.gF, aZ.ka, -1, !1), k.ru(255,
"territorial.io/clans", 736, 0, aZ.gF, aZ.ka, -1, !1), k.ru(255, "territorial.io/clan-results", 736, 0, aZ.gF, aZ.ka, -1, !1)))
}
}
function cY() {
this.id = 0, this.dc = 0, this.oV = null, this.oW = null, this.oX = null, this.oY = null, this.cv = new rw, this.cq = function() {
var self, dc;
self = this, "undefined" == typeof Android || (dc = Android.getVersion()) < 12 || (self.dc = dc, self.id = 1, self.oW = Android),
function(self) {
var dc;
"undefined" != typeof mwIOSdataX && window.webkit && window.webkit.messageHandlers && window.webkit.messageHandlers.iosCommandA && (self.id = 2, self.oX = mwIOSdataX, self.oY = window.webkit.messageHandlers.iosCommandA, dc = self
.oX.version, self.dc = dc ? Number(dc) : 0)
}(this),
function(self) {
var oV;
if (0 === self.id) {
try {
if (!(oV = window.localStorage)) return;
oV.setItem("tls7", "1"), oV.removeItem("tls7")
} catch (error) {
return
}
self.oV = oV
}
}(this)
}
}
function rw() {
this.s0 = function() {
b9.nd.on(), b9.nd.oo(), aN.iw.close(0, 3255), 0 === x.s1() && (y.get().value = b9.dG.data[100].value), 0 === b7.id ? b7.oV && b7.oV.clear() : 1 === b7.id ? b7.oW.saveString(199, "") : 2 === b7.id && b7.oY.postMessage("clear")
}, this.s2 = function() {
2 === b7.id ? b7.oY.postMessage("showConsentForm") : 1 === b7.id ? b7.oW.setState(7) : at.dI.showCMPScreen()
}, this.s3 = function() {
this.setState(14)
}, this.s4 = function() {
var s5;
return 2 === b7.id && 0 === b7.dc && "string" == typeof(s5 = b7.oX.username) ? s5 : b9.dG.data[100].value
}, this.s6 = function() {
var fy = b9.dG.oR(101),
max = ("string" != typeof(fy = "" === fy ? function() {
{
if (2 === b7.id) return b7.oX.password;
if (1 === b7.id) return 12 <= b7.dc ? b7.oW.loadString(22) : ""
}
return a3.s9(9)
}() : fy) && (fy = ""), Math.floor(Math.pow(2, 48))),
s8 = Math.floor(parseInt(h.r9(fy)));
return 0 < s8 && s8 < max ? b9.dG.dH(101, fy) : (s8 = Math.floor(1 + (max - 1) * Math.random()), b9.dG.dH(101, fy)), s8
}, this.fv = function() {
return 1 === b9.dG.oQ(2)
}, this.sA = function() {
for (var fy = "", eD = 0; eD < az.mr; eD += 2) fy += az.sB[eD] || az.sB[eD + 1] ? az.sB[eD] && !az.sB[eD + 1] ? "1" : !az.sB[eD] && az.sB[eD + 1] ? "2" : "3" : "0";
b9.dG.dH(102, fy)
}, this.setState = function(dX) {
1 === b7.id && 5 <= b7.dc && b7.oW.setState(dX)
}, this.sC = function() {
var sD;
1 === b7.id && 7 <= b7.dc ? b7.oW.setState(5) : ((sD = new URL(window.location)).searchParams.set("v", "" + Math.floor(1e3 * Math.random())), window.location.href = sD.toString())
}, this.cw = function() {
1 !== b7.id || b7.dc < 17 || b7.oW.saveString(23, document.documentElement.outerHTML)
}, this.dM = function() {
0 === b7.id ? at.dI.cq() : 1 === b7.id ? b7.oW.prepareAd("1688441405") : 2 === b7.id && (0 === b7.dc ? b7.oY.postMessage("prepare ad 4500876070") : b7.oY.postMessage("loadAds 4500876070"))
}, this.da = function(dZ) {
return 0 === b7.id ? !!at.dI.dV() : 1 === b7.id ? 12 <= b7.dc && (b7.oW.presentAd(dZ), !0) : 2 === b7.id && (0 === b7.dc ? b7.oY.postMessage("show ad " + dZ) : b7.oY.postMessage("showAd"), !0)
}, this.d4 = function() {
2 === b7.id && b7.dc < 23 && ar.ok(4, 1, new sE("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='" + ah.sF + "' target='_blank'>" +
ah.sF + "</a>", !0, [new nN("❌ " + aV.nc[92], function() {
ar.ok(0)
}, aZ.l9)]))
}
}
function cn() {
function sS(title, sU, dE) {
sN(dE), ar.ok(4, 0, new sE("⚠️ " + title, sU, !0))
}
function sN(dE) {
! function(dE) {
var dX = x.s1();
0 === dX ? a0.sW() : 6 === dX ? aN.iw.sX(dE) : 7 === dX ? (aG.sW(), aN.iw.close(aN.iw.sP, 3240)) : 8 === dX && (sY(!0), a0.sW())
}(dE), a0.cq(), b3.d1 = !0
}
this.sG = function(sH, dE) {
if (8 === ar.sI && 0 === sH) return ar.sJ().sK(dE) ? void 0 : void ar.ok(4, 0, new sE("⚠️ " + aV.sL(64), aV.sM(dE), !0));
var dX = x.s1();
if (6 === dX) {
if (4211 === dE) return sN(dE), void ar.ok(4, 0, new sE("🚀 " + aV.nc[122], aV.nc[123], !0, [new nN("❌ " + aV.nc[92], function() {
ar.ok(0)
}, aZ.l9), new nN("🔄 " + aV.nc[124], function() {
b7.cv.sC()
}, aZ.ku)]));
if (4214 !== dE) return void w.sO(sH)
} else {
if (7 !== dX) return 8 === dX ? void(sH !== aN.iw.sQ || im || k.sR(aV.sM(dE))) : void 0;
if (sH !== aN.iw.sP) return
}
sS(aV.sL(64), aV.sM(dE), dE)
}, this.sT = function(dE) {
8 === x.s1() ? k.sR(aV.sM(dE)) : sS(aV.sL(64), aV.sM(dE), dE)
}
}
function bF() {
var sZ, sa;
function sb() {
var g5 = new cJ;
g5.d2(1612), g5.p4(1, 0), g5.p4(6, 7), g5.p4(2, b7 ? b7.id : 3), g5.p4(1, d9 ? 1 : 0), g5.p4(1, dB ? 1 : 0), g5.p4(1, a ? a.d5 : 0);
for (let eD = 0; eD < sa.length && eD < 100; eD++) g5.p4(16, sa.charCodeAt(eD));
sZ.send(g5.mK), sc()
}
function sc() {
sZ && (sZ.onclose = null, sZ.onopen = null, sZ = null)
}
window.addEventListener("error", function error(dE) {
window.removeEventListener("error", error);
return alert("Error:\n" + dE.filename + " " + dE.lineno + " " + dE.colno + " " + dE.message);
window.removeEventListener("error", error), sa = dE.lineno + " " + dE.colno + " " + dE.message, (sZ = new WebSocket("wss://territorial.io/s52/")).onopen = sb, sZ.onclose = function() {
sc()
}, 0 === dE.lineno && 0 === dE.colno || (b7 && 1 === b7.id ? b7.oW.showToast(sa) : alert(sa))
})
}
function cM() {
var sd, se, sf = -15e3,
sg = !1;
function fQ(dE) {
sz() || (sg = !0, t0(dE, 1), aN.iw.t1(aN.iw.sQ), t2(Math.floor(aK.nH * dE.clientX), Math.floor(aK.nH * dE.clientY)))
}
function so(dE) {
sf = b3.dY, t0(dE, 1), aN.iw.t1(aN.iw.sQ), 0 < dE.touches.length && (sd = Math.floor(aK.nH * dE.touches[0].clientX), se = Math.floor(aK.nH * dE.touches[0].clientY), aE.so(dE) || t2(sd, se))
}
function t2(fI, fJ) {
0 === rS ? x.fQ(fI, fJ) : aa.t3(fI, fJ) || b2.fQ(fI, fJ) || u.fQ(fI, fJ) || i.t4(fI, fJ) || m.fQ(fI, fJ) || j.fQ(fI, fJ) || ag.t5(fI, fJ) || aI.fQ(fI, fJ) || i.t6(fI, fJ)
}
function sk(dE) {
sz() || (sg = !0, t0(dE, 1), t7(Math.floor(aK.nH * dE.clientX), Math.floor(aK.nH * dE.clientY)))
}
function sp(dE) {
sf = b3.dY, t0(dE, 1), 0 < dE.touches.length && (sd = Math.floor(aK.nH * dE.touches[0].clientX), se = Math.floor(aK.nH * dE.touches[0].clientY), aE.sp(dE) || t7(sd, se))
}
function t7(fI, fJ) {
0 === rS ? x.sk(fI, fJ) : (aq.fH(fI, fJ), b2.sk(fI, fJ) || (j.sk(fI, fJ), i.t8() ? i.sk(fI, fJ) : o.fR ? o.sk(fI) && (b3.d1 = !0) : (s.sk(fI, fJ), p.kA && p.sk(fI, fJ) && (b3.d1 = !0))))
}
function sm(dE) {
sz() || (t0(dE, 1), 0 === rS ? (x.click(-1024, -1024), q.t9()) : (s.tA(-1024, -1024), j.sk(-1024, -1024), o.tB(), p.kA && (p.kA = !1)))
}
function sl(dE) {
sz() || (t0(dE, 1), tC(Math.floor(aK.nH * dE.clientX), Math.floor(aK.nH * dE.clientY), 2 === dE.button))
}
function click(dE) {
sz() || t0(dE, 1)
}
function sq(dE) {
sf = b3.dY, t0(dE, 1), dE && dE.touches && 0 < dE.touches.length && 0 !== rS ? p.kA = !1 : aE.tD() || tC(sd, se, !1)
}
function sr(dE) {
sf = b3.dY, t0(dE, 1), tC(sd, se, !1)
}
function ss(dE) {
aT.ss(dE)
}
function st(dE) {
aT.st(dE)
}
function su(dE) {
sz() || t0(dE, 0)
}
function tC(fI, fJ, tE) {
0 === rS ? x.click(fI, fJ) : (s.tA(fI, fJ), b2.tA(), o.tB(), p.kA = !1, i.click(fI, fJ, tE) && (b3.d1 = !0))
}
function sn(dE) {
var fI, fJ, deltaY;
sz() || (t0(dE, 1), aN.iw.t1(aN.iw.sQ), fI = Math.floor(aK.nH * dE.clientX), fJ = Math.floor(aK.nH * dE.clientY), deltaY = dE.deltaY, 1 === dE.deltaMode && (deltaY *= 16), 0 === rS ? x.sn(fI, fJ, deltaY) : s.sn(fI, fJ, deltaY) || (o.tF(fI,
fJ) ? o.sn(deltaY) && (b3.d1 = !0) : p.sn(fI, fJ, +deltaY)))
}
function sv(dE) {
t0(dE, 0)
}
function t0(dE, id) {
0 === id && (av.t8 || y.t8 || ar.t8()) || 1 === id && y.tG || (id = window.innerWidth / document.documentElement.clientWidth) < .999 || 1.001 < id || 0 !== x.s1() && dE.preventDefault()
}
function sx(dE) {
if (keybindHandler(dE.key)) return;
sz() || ("ArrowLeft" === dE.key ? aB.tI(3) : "ArrowUp" === dE.key ? aB.tI(0) : "ArrowRight" === dE.key ? aB.tI(1) : "ArrowDown" === dE.key ? aB.tI(2) : "a" === dE.key ? o.tJ(.9375) : "d" === dE.key ? o.tJ(16 / 15) : "s" === dE.key ? o.tJ(7 /
8) : "w" === dE.key ? o.tJ(8 / 7) : "1" === dE.key ? o.tJ(.75) : "2" === dE.key ? o.tJ(7 / 8) : "3" === dE.key ? o.tJ(.9375) : "4" === dE.key ? o.tJ(31 / 32) : "5" === dE.key ? o.tJ(32 / 31) : "6" === dE.key ? o.tJ(16 / 15) :
"7" === dE.key ? o.tJ(8 / 7) : "8" === dE.key ? o.tJ(4 / 3) : "+" === dE.key ? 0 !== rS && p.sn(Math.floor(aK.g5 / 2), Math.floor(aK.gA / 2), -200) : "-" === dE.key ? 0 !== rS && p.sn(Math.floor(aK.g5 / 2), Math.floor(aK.gA / 2),
200) : "c" === dE.key ? 0 !== rS && b2.tK() : " " === dE.key && rS && aq.fK())
}
function sw(dE) {
sz() || b3.dY < 400 || ar.tL(dE) || (8 !== x.s1() && x.tL(dE) ? b3.d1 = !0 : "Escape" === dE.key ? x.dd() : "ArrowLeft" === dE.key || "a" === dE.key ? aB.tM(3) : "ArrowUp" === dE.key || "w" === dE.key ? aB.tM(0) : "ArrowRight" === dE.key ||
"d" === dE.key ? aB.tM(1) : "ArrowDown" === dE.key || "s" === dE.key ? aB.tM(2) : "h" === dE.key ? 1 <= rS && aa.tN(!k9) : " " === dE.key && rS && (j.fM && j.tO(), fL) && aa.tP(!1))
}
function sy() {
"hidden" === document.visibilityState ? 1 === rS && (fL ? aa.tP(!1) : !im || j.fM || fc || j.tO()) : b3.d1 = !0
}
function sz() {
return sf + 15e3 > b3.dY
}
function resize() {
aK.tS()
}
this.sh = 0, this.si = "", this.cq = function() {
sj.addEventListener("mousedown", fQ, {
passive: !1
}), sj.addEventListener("mousemove", sk, {
passive: !1
}), sj.addEventListener("mouseup", sl, {
passive: !1
}), sj.addEventListener("click", click, {
passive: !1
}), sj.addEventListener("mouseleave", sm, {
passive: !1
}), sj.addEventListener("wheel", sn, {
passive: !1
}), sj.addEventListener("touchstart", so, {
passive: !1
}), sj.addEventListener("touchmove", sp, {
passive: !1
}), sj.addEventListener("touchend", sq, {
passive: !1
}), sj.addEventListener("touchcancel", sr, {
passive: !1
}), sj.addEventListener("dragover", ss), sj.addEventListener("drop", st), sj.addEventListener("dblclick", su), document.addEventListener("contextmenu", sv), document.addEventListener("keyup", sw), document.addEventListener("keydown",
sx), document.addEventListener("visibilitychange", sy), window.addEventListener("resize", resize)
}, this.t5 = function(fI, fJ) {
return !!aa.fQ(fI, fJ) || !!(s.fQ(fI, fJ) || p.fQ(fI, fJ) || o.fQ(fI, fJ) || k.fQ(fI, fJ))
}, this.tQ = sz, this.tR = function() {
return !sg || 0 < sf
}
}
function bJ() {
this.g0 = new tT, this.pP = new tU, this.fN = new tV, this.jk = new tW, this.qW = new tX, this.cq = function() {
this.g0.om()
}
}
function tU() {
this.pQ = function(dl) {
dl.fill(0)
}, this.tY = function(dl) {
for (var eZ = dl.length, eD = 0; eD < eZ; eD++) dl[eD] = []
}, this.tZ = function(ga, ft) {
for (var gb = al.dh, eD = 0; eD < 3; eD++) gb[eD] = ft * ga[eD];
return gb
}, this.ta = function(ga, gb, tb) {
for (var gf = 0, eD = 0; eD < 3; eD++) gf += Math.abs(ga[eD] - gb[eD]);
return tb <= gf
}, this.tc = function(ga, td) {
for (var eD = 0; eD < 3; eD++) ga[eD] = ai.lS(ga[eD] + td, 0, 255);
return ga
}, this.te = function(dl, tf = 0, tg = dl.length - 1) {
for (var th = 0, eD = tf; eD <= tg; eD++) th += dl[eD];
return th
}, this.ti = function(dl, tj) {
for (var eD, tk, eZ = dl.length, tl = [], hZ = eZ - 1; 0 <= hZ; hZ--) {
for (eD = tk = 0; eD < eZ; eD++) tj(dl[eD]) < tj(dl[tk]) && (tk = eD);
eZ--, tl.push(dl[tk]), dl[tk] = dl[eZ], dl.pop()
}
return tl
}
}
function tX() {
this.tm = function(fy, font, maxWidth) {
if (gE.font = font, gE.measureText(fy).width <= maxWidth) return fy;
for (let eD = fy.length - 1; 1 <= eD; eD--)
if (fy = fy.substring(0, eD), gE.measureText(fy + "...").width <= maxWidth) return fy + "...";
return "..."
}
}
function tT() {
var tn = null;
this.to = 0, this.om = function() {
var db = b9.dG.data[5].value;
tn = "px " + db, "Trebuchet MS" !== db && (tn += ", Trebuchet MS"), this.to = gG(32, 32, ["a", "b", "m"], 200, tn)
}, this.pF = function(g5, gA) {
var iL = document.createElement("canvas");
return iL.width = g5, iL.height = gA, iL
}, this.getContext = function(gN, alpha) {
return gN.getContext("2d", {
alpha: alpha
})
}, this.getImageData = function(qW, g5, gA) {
return qW.getImageData(0, 0, g5, gA)
}, this.kV = function(gQ, tp, hi) {
return "rgb(" + gQ + "," + tp + "," + hi + ")"
}, this.kX = function(gQ, tp, hi, hZ) {
return "rgba(" + gQ + "," + tp + "," + hi + "," + hZ.toFixed(3) + ")"
}, this.g1 = function(type, size) {
return size = size.toFixed(2), 0 === type ? size + tn : 1 === type ? "bold " + size + tn : 2 === type ? "lighter " + size + tn : 3 === type ? "italic " + size + tn : 4 === type ? "oblique " + size + tn : 5 === type ? "small-caps " +
size + tn : "small-caps bold " + size + tn
}, this.textAlign = function(gO, id) {
gO.textAlign = 0 === id ? "left" : 1 === id ? "center" : "right"
}, this.textBaseline = function(gO, id) {
gO.textBaseline = 1 === id ? "middle" : "bottom"
}, this.nM = function(dE, code = 5, color = aZ.gF) {
color = this.nL(b0.tq) + " solid " + color;
5 === code ? dE.style.border = color : 4 === code ? dE.style.borderLeft = color : 2 === code ? dE.style.borderBottom = color : 6 === code ? dE.style.borderRight = color : dE.style.borderTop = color
}, this.nD = function(db) {
return 1 + db * b7.cv.fv()
}, this.nh = function(kH, eh = .5) {
return kH * this.nD(eh) * aK.fw / aK.nH
}, this.nL = function(db) {
return db.toFixed(1) + "px"
}, this.tr = function(ts, tt) {
for (var fy = "<ul>", eZ = ts.length, eD = 0; eD < eZ; eD++) fy += "<li>" + ts[eD] + ": <a href='" + tt[eD] + "' target='_blank'>" + tt[eD] + "</a></li>";
return fy += "</ul>"
}, this.tu = function(dE) {
navigator.clipboard && navigator.clipboard.writeText(dE.value)
}, this.tv = function(dE) {
dE.innerText.startsWith("✅ ") || (dE.innerText = "✅ " + dE.innerText, setTimeout(function() {
dE.innerText = dE.innerText.substring(dE.innerText.indexOf(" ") + 1)
}, 500))
}
}
function tV() {
this.fO = function(dX) {
return 0 === dX ? 1 === rS && fc : 1 === dX ? 1 === rS && !fc : 2 === rS
}, this.fP = function(player) {
return 0 !== h2[player] && 2 !== h3[player]
}, this.mc = function(tw, tx) {
return tw !== tx
}, this.m0 = function(player, db) {
return db = this.ty(player, db), eV[player] += db, db
}, this.ty = function(player, db) {
var tz = eV[player];
return db = Math.min(db, ez[player] * u0 - tz), db = Math.min(db, u1 - tz), Math.max(db, 0)
}, this.md = function(player, h5, u2, u3) {
var tz = eV[player],
h5 = ai.fE(tz * (h5 + 1), 1024),
u2 = ai.fE(u2 * tz, 1024),
h5 = Math.min(h5, tz - u2);
return 10 === ik && (h5 = aR.u5(player, h5)), al.df[0] = h5, al.df[1] = u2, u3 <= h5
}, this.lx = function(player, lg, lf) {
var player = eV[player],
u4 = ai.fE(64 * player, 1024);
return lg = Math.min(lg, player - u4), u4 += player = this.u7(lg), lg = this.ty(lf, lg -= player), al.df[0] = lg, al.df[1] = u4, 1 <= lg
}, this.lz = function(lg, lf) {
var u6 = this.u7(lg);
return lg = this.ty(lf, lg -= u6), al.df[0] = lg, al.df[1] = u6, 1 <= lg
}, this.h4 = function(player, u8) {
return ai.fE(eV[player] * (u8 + 1), 1024)
}, this.u7 = function(u9) {
return ai.fE(Math.max(2142 - b3.iK(), 0) * u9, 2142)
}, this.mp = function(player, u2) {
eV[player] -= ai.fE(u2 * eV[player], 1024)
}, this.mf = function(player) {
eV[player] -= al.df[0] + al.df[1]
}, this.me = function(player, hS) {
return (hS = Math.min(hS, ed)) < ed && 0 === h2[hS] && (hS = ed), (al.dj[0] = hS) === ed || fr(player, hS)
}, this.mh = function(player, lf) {
return 0 !== h2[lf] && !fr(player, lf)
}
}
function tW() {
this.jl = function(db) {
var eD, uA, uB, uC, uD;
if (db < 0) return "-" + this.jl(Math.abs(db));
if (db < 1e3) return db.toString();
for (uA = Math.floor(Math.log(db + .5) / Math.log(10)) + 1, uB = Math.floor((uA - 1) / 3), uD = (uC = db.toString()).substring(uA - 3, uA), eD = 1; eD < uB; eD++) uD = uC.substring(uA - 3 * (eD + 1), uA - 3 * eD) + " " + uD;
return uC.substring(0, uA - 3 * uB) + " " + uD
}, this.uE = function(eg, uA) {
return eg.toFixed(uA) + "%"
}, this.uF = function(db, uG = 3) {
return db.toFixed(Math.max(Math.floor(uG - Math.log10(db)), 0))
}, this.uH = function(db, kH, uA) {
return (db * kH).toFixed(uA)
}, this.uI = function(username) {
var uK, uJ = username.indexOf("[");
return !(uJ < 0) && 1 < (uK = username.indexOf("]")) - uJ && uK - uJ <= 8 ? username.substring(uJ + 1, uK).toUpperCase().trim() : null
}
}
function uL() {
this.hP = function(player, fX) {
g.qK(player, aj.gX(fX), aj.gZ(fX)) && (b3.d1 = !0), im && this.i6()
}, this.i6 = function() {
var eD;
for (fc = !1, eD = 0; eD < h1; eD++) 0 !== h2[eD] && 0 === ez[eD] && g.qQ(eD);
0 !== h2[eU] ? (b1.eX[7] = ez[eU], b1.eX[8] = eV[eU], o.gB(), t.uM(), fL || f.k6(hu[eU] - 5, hx[eU] - 5, ht[eU] + 5, hw[eU] + 5), aF.cq()) : u.show(!1, !1, !1, !0), k.uN(18), a6.uO(), a6.j6(!0), am.iw.uP(), mb = null, ay.uQ = !0, ay.uR(),
im && b7.cv.setState(1)
}
}
var im, fL, uS, u1, uT, eU, k9, fc, uU, hM, uV, ik, rt, mb, rO, uW, h7, h6, h8, y9, jG, a03, a0X, jm, h2, hu, hx, ht, hw, ez, qC, eV, ea, er, es, ev, h3, iO, iN, sj, gE, qU, a1b, uk, ul, ed = 512,
px = 512,
u0 = 150,
rS = 0,
qD = 512,
eS = 2;
function uX(uY, uZ, qf, ua, ub, uc) {
k9 = !1, fL = uc, rt = ub, hM = (ik = ua) < 7 || 9 === ik, rV = h1 = qf.length, im = 1 === rV, uV = 9 === (ik = 8 === (ik = 10 === ik && im ? 7 : ik) && 2 !== h1 ? 7 : ik) ? 2 : ik + 2, uW = h1 <= 2 ? 30 : h1 <= 50 ? 40 : 50, uU = fc = !(aU.ih &&
!aU.ii.ud) && (hM || h1 < 100), mb = fc ? new uL : null, qD = 512, px = ed, im && (px = z.ue()), ig = px - h1, rU = 0, eU = uZ, aL.uf(uY), aM.cq(), ug(qf), aW.lX.mN = [], b4.cq(qf), rS = 1, u1 = 15e8, uT = 1e9, b1.cq(), uh(), a9.ui(), ay
.cq(), a5.cq(), i1(), a2.cq(qf), aD.cq(), aj.cq(), ak.cq(), ao.cq(), b.cq(), a7.d2(), g.cq(), uj(), aX.cq(uY, qf, ua, ub), b5.cq(), an.cq(), am.cq(), b2.cq(), uk.putImageData(ul, 0, 0), s.cq(), p.cq(), o.cq(), aa.cq(), aI.cq(), r.cq(), t
.cq(), j.cq(), n.cq(), k.cq(), m.cq(), i.cq(), u.cq(), e.cq(), c.cq(), d.cq(), e7(), a4.cq(), a6.cq(), aR.cq(), aQ.cq(), aS.cq(), aO.cq(), 8 === ik ? (rO = new qe).cq(qf) : rO = null, b3.um(), un(), aF.cq(), b3.d1 = !0, fL || im && fc || b7.cv
.setState(1)
}
function un() {
f.k5(), 0 === h2[eU] && u.show(!1, !0), a6.j6(!0)
}
function sY(uo) {
aN.iw.up(), rS = 0, b3.uq(), b7.cv.setState(0), a0.cq(!uo)
}
function cm() {
this.ur = 0, this.gap = 0, this.tq = 0, this.nJ = 0, this.cq = function() {
this.resize()
}, this.resize = function() {
this.ur = .0022 * aY.g0.nD(.5) * aK.fw, this.tq = this.ur / aK.nH, this.gap = Math.max(Math.floor((b7.cv.fv() ? .0114 : .01296) * aK.fw), 2), this.nJ = this.gap / aK.nH
}
}
function cl() {
this.us = function() {
return 2 === b7.id ? 4 : b7.cv.fv() ? 2 : 1
}
}
function bU() {
var nU, fI, fJ, ut, uu, uv, dY, player, uw, gap, zoom, m9, ux;
function vD(player) {
for (var eD = m9.length - 1; 0 <= eD; eD--)
if (m9[eD] === player) return 1
}
function vB(v8) {
var eD, eZ;
if (-1 !== v8)
for (eZ = nU.length, eD = 0; eD < eZ; eD++)
if (nU[eD].t8 && nU[eD].fI + 1 === v8 % 4 && nU[eD].fJ + 1 === v8 >> 2) return eD;
return -1
}
function v9(g8, g9) {
var tp = gap / 2;
return g8 < fI - ut - 3 * tp || fI + 3 * ut + 5 * tp < g8 || g9 < fJ - ut - 3 * tp || fJ + 2 * ut + 3 * tp < g9 ? -1 : 4 * (g9 < fJ - tp ? 0 : g9 < fJ + ut + tp ? 1 : 2) + (g8 < fI - tp ? 0 : g8 < fI + ut + tp ? 1 : g8 < fI + 2 * ut + 3 *
tp ? 2 : 3)
}
this.uy = function() {
var eD, hi, v1 = [aZ.kx, aZ.l8, aZ.kb, aZ.lM, aZ.lF];
for (nU = new Array(8), eD = 0; eD < 8; eD++) nU[eD] = {
id: eD,
t8: !1,
v2: 0,
gN: [],
fI: 0,
fJ: 0
};
for (nU[0].colors = [0, 1, 2, 3], nU[0].fI = 0, nU[0].fJ = 0, nU[1].colors = [0, 1, 4], nU[1].fI = 1, nU[1].fJ = 0, nU[2].colors = [0, 2], nU[2].fI = -1, nU[2].fJ = 0, nU[3].colors = [0], nU[3].fI = 0, nU[3].fJ = 0, nU[4].colors = [0, 2],
nU[4].fI = 1, nU[4].fJ = 1, nU[5].colors = [3], nU[5].fI = 0, nU[5].fJ = -1, nU[6].id = 20, nU[6].colors = [0], nU[6].fI = 1, nU[6].fJ = -1, nU[7].id = 21, nU[7].colors = [0], nU[7].fI = 0, nU[7].fJ = 1, eD = 0; eD < 8; eD++)
for (hi = 0; hi < nU[eD].colors.length; hi++) nU[eD].gN.push(function(id, v3) {
var gH = a1.get(3).height,
v4 = aY.g0.pF(gH, gH),
gO = aY.g0.getContext(v4);
20 === id ? gO.drawImage(a1.get(18), 0, 0) : 21 === id ? gO.drawImage(a1.v5("emojis"), -4 * gH, 0) : (function(g5, qW, v7) {
qW.fillStyle = v7, qW.beginPath(), qW.arc(Math.floor(g5 / 2), Math.floor(g5 / 2), Math.floor(.47 * g5), 0, 2 * Math.PI), qW.fill()
}(gH, gO, v3), gO.drawImage(a1.get(3), -id * gH, 0));
return v4
}(nU[eD].id, v1[nU[eD].colors[hi]]))
}, this.v0 = function() {
return nU
}, this.cq = function() {
m9 = [], fI = fJ = dY = 0, uu = uv = -1e3, this.resize()
}, this.resize = function() {
ut = Math.floor((b7.cv.fv() ? .075 : .0468) * aK.fw), zoom = ut / a1.get(3).height, gap = Math.floor(ut / 3)
}, this.t4 = function(g8, g9) {
return !!this.t8() && (b3.d1 = !0, !!az.fQ(g8, g9, player) || (g8 = function(g8, g9) {
uv = uu = -1e3;
var v8 = v9(g8, g9),
v8 = vB(v8);
if (-1 === v8) return 0;
if (1 !== nU[v8].colors[nU[v8].v2])
if (5 === v8) {
if (! function() {
var dZ = performance.now();
ux + 4e3 < dZ && (m9 = []);
ux = dZ
}(), vD(player)) return 1;
m9.push(player), 16 < m9.length && m9.shift()
} else if (6 === v8) {
for (let eD = m9.length - 1; 0 <= eD; eD--) 0 === h2[m9[eD]] && m9.splice(eD, 1);
0 < m9.length && (aS.vE(1, m9, !0) && aW.fN.m8(m9, player), m9 = [])
} else if (2 === v8) aW.fd.le(o.fm(), player);
else if (3 === v8) fc && aW.fd.fe(uw);
else if (0 === v8)
if (0 === nU[0].v2) {
if (uU && t.vF() < 300) return 1;
aW.fd.fo(o.fm(), player)
} else aO.fq(player, o.fm());
else if (1 === v8) aW.fd.fl(o.fm(), uw);
else {
if (7 === v8) return az.show(g8, g9), 2;
if (4 !== v8) return 0;
aS.vE(0, [player], !0) && aW.fN.m5(player)
}
return 1
}(g8, g9), this.o3(), 2 === g8 && (az.t8 = !0), 0 < g8))
}, this.t6 = function(g8, g9) {
this.t8() || (uu = g8, uv = g9, dY = performance.now())
}, hoveringTooltip.display = function(mouseX, mouseY) {
var coordX = aj.fU(mouseX),
coordY = aj.fW(mouseY),
coord = aj.fY(coordX, coordY),
point = aj.fa(coord);
if (coordX < 0 || coordY < 0) return;
k.vQ(point);
}
this.click = function(g8, g9, tE) {
var fT = aj.fU(g8),
fV = aj.fW(g9),
fX = aj.fY(fT, fV),
fZ = aj.fa(fX);
return !(!aj.fb(fT, fV) || (fT = (b7.cv.fv() ? .025 : .0144) * aK.fw, fV = performance.now(), Math.abs(g8 - uu) > fT) || Math.abs(g9 - uv) > fT || dY + 500 < fV) && (dY = fV, tE ? (function(g8, g9, fZ) {
a2.eb(fZ) || -1 === (g8 = ak.ff.vR(g8, g9)) ? k.vQ(fZ) : k.vS(g8)
}(g8, g9, fZ), false) : j.fM || this.t8() || !aY.fN.fP(eU) || fL ? (this.o3(), !1) : fc ? !!a2.eb(fZ) && (uw = fX, nU[3].t8 = !0, this.vI(g8, g9)) : (ak.ff.fg(fX) || ak.ff.fh(g8, g9) || (2 === rS ? a2.ej(fZ) && 0 < az.vJ && (
player = a2.ek(fZ), a2.vK(player)) && (nU[0].t8 = !0, nU[0].v2 = 1, nU[7].t8 = !0) : a2.fi(fZ) || (uw = fX, ak.ff.fk(eU, fX) && (nU[0].t8 = !0, nU[0].v2 = 1, nU[1].t8 = !0, nU[1].v2 = al.di[2] ? 0 : 2), a2.fj(fZ)) || (
a2.el(fZ) ? (player = ed, fn(eU) ? (nU[0].t8 = !0, nU[0].v2 = 0) : fp(eU, player) && (nU[0].t8 = !0, nU[0].v2 = 3)) : (player = a2.ek(fZ)) === eU ? 0 !== az.vJ && (nU[0].t8 = !0, nU[0].v2 = 1, nU[7].t8 = !0) : (nU[0]
.v2 = 1, nU[5].t8 = function(player) {
return a2.vK(player) && !vD(player) && aS.vE(1, [player], !1)
}(player), nU[7].t8 = 1 <= az.vJ && a2.vK(player), fr(player, eU) ? (nU[4].t8 = a2.vK(player) && !a6.vM(player) && aS.vE(0, [player], !1), nU[6].t8 = function(player) {
if (0 === m9.length) return !1;
if (performance.now() > ux + 4e3) return !(m9 = []);
return !vD(player) && ! function(player) {
var eD;
if (hM)
for (eD = m9.length - 1; 0 <= eD; eD--)
if (!fr(player, m9[eD])) return 1;
return
}(player)
}(player), fs(eU, player) ? (nU[0].v2 = 0, nU[0].t8 = !0) : fp(eU, player) && (nU[0].v2 = 3, nU[0].t8 = !0), nU[0].t8 = this.vO()) : (nU[2].t8 = !0, nU[0].t8 = !0)))), this.vI(g8, g9)))
}, this.vI = function(g8, g9) {
return fI = g8 - Math.floor(ut / 2), fJ = g9 - Math.floor(ut / 2), !!this.t8()
}, this.sk = function(g8, g9) {
return !!this.t8() && (az.t8 ? !az.vU(g8, g9) && (az.vV(), az.t8 = !1, b3.d1 = !0) : function(vX, g8, g9) {
g8 = v9(g8, g9);
if (0 <= vB(g8)) return !1;
if ((1 === g8 || 6 === g8) && 0 <= vB(2)) return !1;
if ((6 === g8 || 9 === g8) && 0 <= vB(10)) return !1;
return vX.o3(), b3.d1 = !0
}(this, g8, g9))
}, this.o3 = function() {
for (var eD = nU.length - 1; 0 <= eD; eD--) nU[eD].t8 = !1, nU[eD].v2 = 0;
az.t8 = !1
}, this.t8 = function() {
return this.vO() || az.t8
}, this.vO = function() {
for (var eZ = nU.length, eD = 0; eD < eZ; eD++)
if (nU[eD].t8) return !0;
return !1
}, this.gD = function() {
if (this.t8())
if (az.t8) az.gD();
else {
var eD, gO = gE,
hi = nU,
eZ = hi.length,
vZ = (ut + gap) / zoom;
for (gO.imageSmoothingEnabled = !0, gO.setTransform(zoom, 0, 0, zoom, fI, fJ), eD = 0; eD < eZ; eD++) hi[eD].t8 && gE.drawImage(hi[eD].gN[hi[eD].v2], hi[eD].fI * vZ, hi[eD].fJ * vZ);
gO.imageSmoothingEnabled = !1, gO.setTransform(1, 0, 0, 1, 0, 0)
}
}
}
function bV() {
var gA, gN, g4, va, vb;
function vc() {
var vd, qW = gN.getContext("2d", {
alpha: !0
});
qW.clearRect(0, 0, gA, gA), qW.fillStyle = aZ.kY, qW.fillRect(0, 0, gA, gA), 0 === va && (qW.fillStyle = aZ.kd, qW.fillRect(0, 0, gA, gA)), qW.fillStyle = aZ.gF, qW.fillRect(0, 0, gA, 1), qW.fillRect(0, 0, 1, gA), qW.fillRect(0, gA - 1, gA,
1), qW.fillRect(gA - 1, 0, 1, gA), vd = .9 * gA / a1.get(0).width, qW.imageSmoothingEnabled = !0, qW.setTransform(vd, 0, 0, vd, Math.floor((gA - vd * a1.get(0).width) / 2), Math.floor((gA - vd * a1.get(0).height) / 2)), qW.drawImage(
a1.get(0), 0, 0), qW.setTransform(1, 0, 0, 1, 0, 0)
}
function vg(g8, g9) {
if (!j.fM) return g8 <= gA + b0.gap && g9 >= o.fJ ? 0 : -1;
if (g8 <= 4 * gA + b0.gap) {
if (g9 >= o.fJ) return 0;
if (g9 >= o.fJ - gA - vb * b0.gap) return 2
} else if (g8 <= 7 * gA + b0.gap && g9 >= o.fJ - gA - vb * b0.gap) return 1;
return -1
}
this.fM = !1, this.cq = function() {
va = -1, this.fM = !1, vb = b7.cv.fv() ? 1.2 : .6, this.resize()
}, this.resize = function() {
gA = o.gA, (gN = document.createElement("canvas")).width = gA, gN.height = gA, g4 = aY.g0.g1(1, (b7.cv.fv() ? .5 : .45) * gA), vc()
}, this.tO = function() {
this.fM = !this.fM, this.fM ? (at.dI.hideCMPButton(), aa.tN(!1), fL && aa.ve && aa.tP(!0), this.vf()) : (va = -1, vc(), im && 1 === rS && !fc && b7.cv.setState(1)), b3.d1 = !0
}, this.vf = function() {
(im || fL) && 1 === rS && (s.j6(!0), fc || setTimeout(function() {
ay.ra()
}, 0), b7.cv.setState(0))
}, this.fQ = function(g8, g9) {
var v2 = vg(g8, g9);
if (this.fM) {
if (k9) return 0 <= v2 && aa.tN(!1), !fL;
if (0 === v2) sY();
else if (1 === v2) this.tO();
else if (2 === v2) ar.ok(1);
else {
if (!(im || 1 !== rS || fL || b2.t8) && (j.tO(), 1)) return !1;
ag.t5(g8, g9) || i.t6(g8, g9)
}
return !0
}
return 0 === v2 && (this.tO(), !0)
}, this.sk = function(g8, g9) {
g8 = vg(g8, g9);
g8 !== va && (va = g8, this.fM || vc(), b3.d1 = !0)
}, this.gD = function() {
var g5;
this.fM ? (g5 = Math.floor(5.5 * gA), gE.setTransform(1, 0, 0, 1, b0.gap, o.fJ), gE.fillStyle = aZ.kY, gE.fillRect(0, 0, g5, gA), 0 === va ? (gE.fillStyle = aZ.kd, gE.fillRect(0, 0, 4 * gA, gA)) : 1 === va && (gE.fillStyle = aZ.kd, gE
.fillRect(4 * gA, 0, Math.floor(1.5 * gA), gA)), gE.fillStyle = aZ.gF, gE.fillRect(0, 0, g5, 1), gE.fillRect(0, 0, 1, gA), gE.fillRect(4 * gA, 0, 1, gA), gE.fillRect(0, gA - 1, g5, 1), gE.fillRect(g5 - 1, 0, 1, gA), gE.font =
g4, aY.g0.textBaseline(gE, 1), aY.g0.textAlign(gE, 1), gE.fillText(aV.nc[79], 2 * gA, .54 * gA), g5 = .4 * gA, j.vl(b0.gap + 4 * gA + (1.5 * gA - g5) / 2, o.fJ + .3 * gA, g5), g5 = 1, gE.setTransform(1, 0, 0, 1, b0.gap, o.fJ -
g5 * vb * b0.gap - g5 * gA), gE.fillStyle = aZ.kY, gE.fillRect(0, 0, 4 * gA, gA), va === g5 + 1 && (gE.fillStyle = aZ.kd, gE.fillRect(0, 0, 4 * gA, gA)), gE.fillStyle = aZ.gF, gE.fillRect(0, 0, 4 * gA, 1), gE.fillRect(0, 0, 1,
gA), gE.fillRect(4 * gA, 0, 1, gA), gE.fillRect(0, gA - 1, 4 * gA, 1), gE.fillText(aV.nc[79 + g5], 2 * gA, .54 * gA), gE.setTransform(1, 0, 0, 1, 0, 0)) : gE.drawImage(gN, b0.gap, o.fJ)
}, this.vk = function(player) {
return 0 !== h2[player] && 2 !== rS && a2.vK(player)
}, this.vl = function(fI, fJ, eZ) {
gE.setTransform(1, 0, 0, 1, fI, fJ), gE.lineWidth = b0.ur, gE.strokeStyle = aZ.gF, gE.beginPath(), gE.moveTo(0, 0), gE.lineTo(eZ, eZ), gE.moveTo(0, eZ), gE.lineTo(eZ, 0), gE.stroke()
}
}
function bW() {
var vn, gA, vo, vp, vq, vr, vs, vt, vu;
function gC() {
return o.wE(k.wA()) ? aI.t8 ? o.fJ - o.gA - 2 * vo : o.fJ - vo : aa.wE(k.wD()) ? aI.t8 ? aa.gC() - o.gA - 2 * vo : aa.gC() - vo : aI.t8 ? aK.gA - o.gA - (bA.us() + 1) * vo : aK.gA - bA.us() * b0.gap
}
function w1(dZ, fy, id, eg, w5, w6, pa, w7, w8) {
var eD, qW, wB, v4, n6, wH = void 0 !== w8,
g5 = Math.floor(n.measureText(fy, k.g4) + 1.5 * vp + (wH ? gA : 1.5 * vp));
if (b3.d1 = !0, g5 + vo > aK.g5 && !wH && 50 !== id && 20 < fy.length) wB = Math.floor(.5 * fy.length), w1(dZ, fy.substring(0, wB), id, eg, w5, w6, pa, w7, w8), w1(dZ, fy.substring(wB), id, eg, w5, w6, pa, w7, w8);
else if (wB = g5 + (50 === id ? vq : 0), (v4 = document.createElement("canvas")).width = g5, v4.height = gA, (qW = v4.getContext("2d", {
alpha: !0
})).font = k.g4, aY.g0.textBaseline(qW, 1), aY.g0.textAlign(qW, 0), qW.clearRect(0, 0, g5, gA), qW.fillStyle = w6, qW.fillRect(0, 0, g5, gA), qW.fillStyle = w5, qW.fillText(fy, Math.floor(1.5 * vp), Math.floor(gA / 2)), wH && (wH = gA /
az.g5, qW.imageSmoothingEnabled = !0, qW.setTransform(wH, 0, 0, wH, g5 - gA, 0), qW.drawImage(az.v4[w8], 0, 0)), 0 === (n6 = {
dY: dZ,
fy: fy,
id: id,
player: eg,
gN: v4,
w5: w5,
w6: w6,
g5: g5,
wB: wB,
pa: pa,
w7: w7,
w8: w8
}).dY || 0 < vn.length && 0 < vn[0].dY) vn.unshift(n6);
else {
for (eD = 1; eD < vn.length; eD++)
if (0 < vn[eD].dY) return void vn.splice(eD, 0, n6);
vn.push(n6)
}
}
function w3(gQ, tp, hi) {
return "rgb(" + gQ + "," + tp + "," + hi + ")"
}
function wI(id, wa) {
for (var eZ = vn.length, eD = 0; eD < eZ; eD++) vn[eD].id === id && wa-- <= 0 && (vn.splice(eD, 1), eD--, eZ--)
}
function wJ(id, player) {
for (var wb = !1, eD = vn.length - 1; 0 <= eD; eD--) vn[eD].id !== id || player !== ed && vn[eD].player !== player || (vn.splice(eD, 1), wb = !0);
return wb
}
function wg(fy) {
w1(340, fy, 6, 0, w3(215, 245, 255), aZ.ka, -1, !1)
}
this.vv = "", this.cq = function() {
var self;
vt = 0, vs = b7.cv.fv() ? 7 : 12, vr = {
qf: [0, 0, 0],
vw: [0, 0, 0],
k3: [220, 180, 180],
vx: [0, 0, 0],
iL: [0, 0, 0]
}, vn = [], this.resize(), fc && this.rJ(0, 18), wg(aV.sL(37, [ap.ii.pk[ap.pl].name])), wg(aV.sL(38, [ap.e8 - 2, ap.e9 - 2])), wg(aV.sL(39, [a9.wh], {
wR: [0]
})), a9.wh !== a9.wi && wg(aV.sL(40, [a9.wi, a9.wi / a9.wh], {
wR: [0],
wj: [1]
})), 0 < a9.wk && wg(aV.sL(41, [a9.wk, a9.wk / a9.wh], {
wR: [0],
wj: [1]
})), 0 < a9.wl && wg(aV.sL(42, [a9.wl, a9.wl / a9.wh], {
wR: [0],
wj: [1]
})), 10 === ik && w1(120, aV.sL(43), 6, 0, w3(235, 255, 120), aZ.ka, -1, !1), 0 !== (self = this).vv.length && (w1(200, self.vv, 0, 0, aZ.gF, aZ.ka, -1, !1), self.vv = ""), this.w0()
}, this.w0 = function() {
var eD, eZ;
if (aU.ih)
for (eZ = aU.ii.w2.length, eD = 0; eD < eZ; eD++) w1(400, aU.ii.w2[eD], 6, 0, w3(255, 255, 255), aZ.ka, -1, !1)
}, this.resize = function() {
var w4, eD;
if (gA = (gA = Math.floor((b7.cv.fv() ? .031 : .0249) * aK.fw)) < 10 ? 10 : gA, this.fontSize = Math.floor(2 * gA / 3), this.g4 = aY.g0.g1(1, this.fontSize), vo = b0.gap, vp = Math.floor(gA / 5), 0 < vn.length)
for (w4 = vn, vn = [], eD = w4.length - 1; 0 <= eD; eD--) w1(w4[eD].dY, w4[eD].fy, w4[eD].id, w4[eD].player, w4[eD].w5, w4[eD].w6, w4[eD].pa, w4[eD].w7, w4[eD].w8);
this.w9()
}, this.w9 = function() {
vu = document.createElement("canvas");
var fy = aV.sL(0),
qW = (vq = n.measureText(fy, this.g4) + 5 * vp, vu.height = gA, vu.width = vq, vu.getContext("2d", {
alpha: !0
}));
qW.font = this.g4, aY.g0.textBaseline(qW, 1), aY.g0.textAlign(qW, 1), qW.clearRect(0, 0, vq, gA), qW.fillStyle = aZ.ku, qW.fillRect(0, 0, vq, gA), qW.fillStyle = aZ.gF, qW.fillText(fy, Math.floor(vq / 2), Math.floor(gA / 2))
}, this.wA = function() {
var eZ;
return aI.t8 ? aI.g5 : 0 === (eZ = vn.length) ? 0 : 1 === eZ ? vn[0].wB : wC(vn[0].wB, vn[1].wB)
}, this.wD = function() {
var eZ = vn.length;
return aI.t8 ? eZ ? wC(aI.g5, vn[0].wB) : aI.g5 : 0 === eZ ? 0 : 1 === eZ ? vn[0].wB : 2 === eZ ? wC(vn[0].wB, vn[1].wB) : wC(wC(vn[0].wB, vn[1].wB), vn[2].wB)
}, this.fQ = function(fI, fJ) {
for (var wF, wG = gC(), eD = vn.length - 1; 0 <= eD; eD--)
if ((wF = wG - (eD + 1) * gA) <= fJ && fJ < wF + gA) return 50 === vn[eD].id ? fI >= aK.g5 - vq - vo - vn[eD].g5 && (fI >= aK.g5 - vq - vo ? aW.fN.m5(vn[eD].player) : f.k7(vn[eD].player, 800, !1, 0), !0) : fI >= aK.g5 - vn[eD].g5 -
vo && (736 === vn[eD].id ? window.open("https://" + vn[eD].fy, "_blank") : vn[eD].w7 && (f.k7(vn[eD].player, 800, !1, 0), 0 <= vn[eD].pa) && (wF = vn[eD].pa, vn[eD].pa = vn[eD].player, vn[eD].player = wF), !0);
return !1
}, this.ru = function(dZ, fy, id, eg, w5, w6, pa, w7, w8) {
w1(dZ, fy, id, eg, w5, w6, pa, w7, w8)
}, this.uN = function(id) {
for (var eD = vn.length - 1; 0 <= eD; eD--) vn[eD].id === id && (vn[eD].dY = 1)
}, this.rJ = function(player, id) {
0 === id ? (b1.eX[player < h1 ? 4 : 3]++, n.hP(player, 0), wI(423, 0), w1(160, aV.sL(1, [jm[player]]), 423, player, "rgb(10,220,10)", aZ.ka, -1, !1)) : 1 === id ? (wJ(50, ed), n.hP(player, 1), w1(360, aV.sL(2, [jm[player]]), 0, player,
"rgb(255,40,40)", aZ.ka, -1, !0), f.k7(player, 2700, !1, 0)) : 2 === id ? (n.hP(player, 2), w1(0, aV.sL(3), 0, player, "rgb(10,255,255)", aZ.ka, -1, !0), f.k7(player, 2700, !1, 0)) : 3 === id ? (n.hP(player, 2), w1(0, aV.sL(4, [
jm[player]
]), 0, player, aZ.gF, aZ.ka, -1, !0), f.k7(player, 2700, !1, 0)) : 4 === id ? (rV--, rU--, this.wK(1, player, player)) : 5 === id ? 2 !== h3[player] && a2.vK(eU) && (function(id, jJ) {
var eD, wU = 0,
eZ = vn.length;
for (eD = 0; eD < eZ; eD++)
if (vn[eD].id === id && jJ <= ++wU) return vn.splice(eD, 1)
}(1, 5), a6.wM(player) ? w1(180, aV.sL(5, [jm[player]]), 1, player, w3(255, 200, 180), aZ.ka, -1, !0) : (wI(573, 0), w1(180, aV.sL(6, [jm[player]]), 573, player, "rgb(255,70,10)", aZ.ka, -1, !0))) : 18 === id ? w1(255, aV.sL(7), 18,
0, aZ.gF, aZ.ka, -1, !1) : 21 === id ? w1(220, aV.sL(8), id, 0, "rgb(255,40,40)", aZ.ka, -1, !1) : 22 === id ? this.wK(2, player, player) : 59 === id && w1(0, aV.sL(9), id, 0, aZ.lL, aZ.ka, 0, !1)
}, this.sR = function(sU) {
w1(200, aV.sL(10, [sU]), 94, 0, aZ.gF, aZ.l6, -1, !1)
}, this.rR = function(rM) {
if (eU === rM && !im)
wins_counter++, window.localStorage.setItem("fx_winCount", wins_counter),
w1(0, "Your Win Count is now " + wins_counter, 3, rM, aZ.gF, aZ.ka, -1, !0);
n.hP(rM, 2), w1(0, h1 < 100 ? aV.sL(4, [jm[rM]]) : aV.sL(12, [jm[rM]]), 3, rM, aZ.gF, aZ.ka, -1, !0), f.k7(rM, 2700, !1, 0)
}, this.vQ = function(fZ) {
var wN = "(" + aj.gX(fZ >> 2) + ", " + aj.gZ(fZ >> 2) + ")",
w7 = !1,
player = 0;
a2.eb(fZ) ? a2.el(fZ) ? wN = aV.sL(13, [wN]) : (player = a2.ek(fZ), wN = aV.sL(14, [jm[player], aY.jk.jl(eV[player]), aY.jk.jl(ez[player]), wN]), w7 = !0) : wN = a2.fi(fZ) ? aV.sL(15, [wN]) : aV.sL(16, [wN]), b3.d1 = !0, wI(55, 0), w1(
220, wN, 55, player, aZ.gF, aZ.ka, -1, w7)
}, this.vS = function(wO) {
var pB = ak.iw,
player = pB.wP[wO] >> 3;
b3.d1 = !0, wI(55, 0), w1(220, aV.sL(17, [jm[player], pB.wQ[wO]], {
wR: [1]
}), 55, player, aZ.gF, aZ.ka, -1, !0)
}, this.lo = function(la, wS, lp) {
la === eU ? w1(175, aV.sL(18, [jm[wS]]), 1001, wS, w3(200, 255, 210), aZ.ka, -1, !0, lp) : this.wT(la, lp)
}, this.wT = function(la, lp) {
wI(1e3, 0), w1(175, aV.sL(19, [jm[la]]), 1e3, la, aZ.gF, "rgba(5,60,25,0.9)", -1, !0, lp)
}, this.rQ = function(rN) {
var sU;
rN ? (sU = aV.sL(20), n.rj(aV.sL(21), 2, 1, 12), w1(0, sU, 40, 0, "rgb(10,220,10)", aZ.ka, -1, !1)) : (sU = aV.sL(22), n.rj(aV.sL(23), 2, 0, 16), w1(0, sU, 41, 0, "rgb(200,80,80)", aZ.ka, -1, !1)), f.kE(2700)
}, this.qg = function(qf) {
w1(300, qf[0].name + " [" + rO.qm(qf[0].qj) + "] vs " + qf[1].name + " [" + rO.qm(qf[1].qj) + "]", 65, 0, aZ.ji, "rgba(100,255,255,0.75)", -1, !1)
}, this.wV = function(sU) {
w1(200, sU, 0, 0, "rgb(40,255,200)", "rgba(10,60,40,0.9)", -1, !1)
}, this.wW = function() {
w1(0, aV.sL(24), 247, 0, aZ.lK, aZ.ka, -1, !1)
}, this.qo = function(qf, ql, qn, wX) {
1 === aN.iw.wY() && (w1(0, qf[0].name + ": " + rO.qm(qf[0].qj) + " -> " + ql, 66, 0, aZ.gF, wX[0], -1, !1), w1(0, qf[1].name + ": " + rO.qm(qf[1].qj) + " -> " + qn, 66, 1, aZ.gF, wX[1], -1, !1))
}, this.m6 = function(player, id) {
0 === id ? wJ(50, player) ? (w1(128, aV.sL(25, [jm[player]]), 52, player, w3(180, 255, 180), aZ.ka, -1, !0), a6.ms(player, 2, 255)) : w1(384, aV.sL(26, [jm[player]]), 51, player, w3(210, 210, 255), aZ.ka, -1, !0) : wJ(51, player) ? (w1(
128, aV.sL(27, [jm[player]]), 52, player, aZ.gF, "rgba(60,120,10,0.9)", -1, !0), a6.ms(player, 2, 255)) : (w1(384, aV.sL(28, [jm[player]]), 50, player, aZ.gF, "rgba(90,90,90,0.9)", -1, !0), a6.ms(player, 2, 96))
}, this.mA = function(qf, target) {
var color = w3(210, 255, 210);
1 < qf.length ? w1(230, aV.sL(29, [qf.length, jm[target]]), 66, target, color, aZ.ka, -1, !0) : w1(230, aV.sL(30, [jm[qf[0]], jm[target]]), 66, qf[0], color, aZ.ka, target, !0)
}, this.wZ = function(player, target) {
w1(230, aV.sL(31, [jm[player], jm[target]]), 66, player, aZ.gF, "rgba(75,65,5,0.9)", target, !0)
}, this.rI = function(id, player) {
wJ(id, player)
}, this.lc = function() {
var fz;
100 <= eV[eU] || (-1 === (fz = function(id) {
for (var eD = vn.length - 1; 0 <= eD; eD--)
if (vn[eD].id === id) return eD;
return -1
}(143)) ? w1(80, aV.sL(32), 143, 0, aZ.gF, aZ.ka, -1, !1) : vn[fz].dY = 80)
}, this.m1 = function(wd, we, player) {
2 !== h3[eU] && (w1(200, aV.sL(33, [wd, jm[player]], {
wR: [0]
}), 30, player, "rgb(190,255,190)", aZ.ka, -1, !0), we) && w1(30, aV.sL(34, [we], {
wR: [0]
}), 30, 0, aZ.gF, aZ.ka, -1, !1)
}, this.wf = function(wd, player) {
2 !== h3[eU] && (wI(31, 0), 2 === h3[player] || h1 <= player ? w1(150, aV.sL(36, [jm[player], wd], {
wR: [1]
}), 31, player, aZ.ji, "rgba(205,205,205,0.9)", -1, !0) : w1(150, aV.sL(35, [jm[player], wd], {
wR: [1]
}), 31, player, aZ.ji, "rgba(205,255,205,0.9)", -1, !0))
}, this.rW = function(wm) {
for (var iL = b3.iK(), eD = 2; 0 <= eD; eD--) 0 < vr.vx[eD] && (wm || vr.iL[eD] < iL - 220) && this.wn(eD)
}, this.wn = function(id) {
var fy, eZ = vr.vx[id],
player = vr.qf[id];
vr.vx[id] = 0, 1 === eZ ? (fy = 0 === id ? aV.sL(47, [jm[player], jm[vr.vw[0]]]) : aV.sL(47 + id, [jm[player]]), wI(7, 0), w1(vr.k3[id], fy, 7, vr.vw[id], aZ.gF, aZ.ka, -1, !0)) : 2 <= eZ && (fy = aV.sL(44 + id, [jm[player], eZ - 1]), wI(
7, 0), w1(vr.k3[id], fy, 7, player, aZ.gF, aZ.ka, -1, !1))
}, this.wK = function(id, pZ, pa) {
var iL = b3.iK(),
eZ = vr.vx[id] + 1;
vr.vx[id]++, vr.qf[id] = pZ, vr.vw[id] = pa, 1 === eZ && (vr.iL[id] = iL), (1 === eZ && (rV < 32 || 2 === rS) || 1 < eZ && (vr.iL[id] < iL - 140 || 2 === rS)) && this.wn(id)
}, this.i6 = function() {
for (var gf = (gf = vn.length - vs) <= 1 ? 1 : gf * gf, eD = vn.length - 1; 0 <= eD; eD--) 0 < vn[eD].dY && (vn[eD].dY -= gf, vn[eD].dY <= 0) && (b3.d1 = !0, vn.splice(eD, 1));
! function() {
var wa, eD;
if (128 !== vt && !(++vt < 128))
for (wa = 5, eD = iN - 1; 0 <= eD; eD--) 1 === h3[iO[eD]] && 0 < wa-- && w1(240, aV.sL(50, [jm[iO[eD]]]), 1, iO[eD], aZ.ji, "rgba(255,255,255,0.75)", -1, !0)
}(), this.rW(!1)
}, this.gD = function() {
for (var pw, fJ = gC(), eD = vn.length - 1; 0 <= eD; eD--) pw = fJ - (eD + 1) * gA, 50 === vn[eD].id ? (gE.drawImage(vn[eD].gN, aK.g5 - vn[eD].g5 - vq - vo, pw), gE.drawImage(vu, aK.g5 - vq - vo, pw)) : gE.drawImage(vn[eD].gN, aK.g5 - vn[
eD].g5 - vo, pw)
}
}
function bX() {
var nc, wp, wq, g5, gA, font;
function wu(wv) {
return wv < 10 ? "0" + wv : String(wv)
}
this.cq = function() {
void 0 === g5 && this.resize(), this.setTime()
}, this.resize = function() {
g5 = Math.floor((b7.cv.fv() ? .53 : .36) * aK.fw), gA = Math.floor(.065 * g5), font = aY.g0.g1(1, Math.floor(.9 * gA)), wq--, this.setTime()
}, this.i6 = function() {
this.setTime() && (b3.d1 = !0)
}, this.setTime = function() {
var dZ = new Date,
ws = dZ.getUTCMinutes(),
dZ = dZ.getUTCSeconds();
return wp = 3600 - 60 * ws - dZ, wp %= 900, nc = "Next Contest: " + wu(Math.floor(wp / 60)) + ":" + wu(wp % 60), wq !== (wq = 60 * ws + dZ) && (g5 = n.measureText(nc, font), g5 += Math.floor(.4 * gA), !0)
}, this.gD = function() {
gE.lineWidth = 1 + Math.floor(gA / 15), 7 === x.s1() && aG.ww() + 2 * b0.gap > .5 * (aK.gA - g5) ? gE.translate(aK.g5 - gA, Math.floor(aG.ww() + 2 * b0.gap + g5)) : gE.translate(aK.g5 - gA, Math.floor(.5 * (aK.gA + g5))), gE.rotate(-Math
.PI / 2), gE.fillStyle = aZ.gF, gE.fillRect(0, 0, g5, gA), gE.strokeStyle = aZ.ji, gE.strokeRect(0, 0, g5, gA + 10), gE.fillStyle = aZ.ji, gE.font = font, aY.g0.textBaseline(gE, 1), aY.g0.textAlign(gE, 1), gE.fillText(nc, Math
.floor(g5 / 2), Math.floor(.59 * gA)), gE.setTransform(1, 0, 0, 1, 0, 0)
}
}
function ch() {
this.wx = 10, this.wy = 50, this.wz = 50, this.x0 = 8, this.x1 = this.wy + this.wz, this.mr = this.wy + this.wz + this.x0, this.g5 = 72, this.x2 = 0, this.x3 = 0, this.v4 = new Array(this.mr), this.x4 = 8, this.x5 = new Array(this.wy + this.wz),
this.x6 = new Array(this.wy + this.wz), this.je = 0, this.jf = 0, this.zoom = 1, this.x7 = .2, this.vJ = 0, this.sB = null, this.x8 = null, this.t8 = !1, this.cq = function() {
var eD, x9, xA;
for (this.sB = new Array(this.mr), this.x8 = new Array(this.mr), x9 = a1.v5("emojis"), this.xB(), eD = this.vJ = 0; eD < this.wy; eD++) this.xC(eD, eD, x9);
for (xA = a1.v5("flags"), eD = 0; eD < this.wz; eD++) this.xC(eD, this.wy + eD, xA);
this.xD(), this.v4[26] = this.xE(25, 2), this.xF()
}, this.xC = function(eD, hZ, iL) {
this.sB[hZ] = !1, this.x8[hZ] = 0;
var gN = document.createElement("canvas"),
qW = (gN.width = this.g5, gN.height = this.g5, gN.getContext("2d", {
alpha: !0
}));
qW.clearRect(0, 0, this.g5, this.g5), 23 === hZ ? qW.drawImage(i.v0()[4].gN[1], 0, 0) : 36 === hZ ? qW.drawImage(i.v0()[0].gN[2], 0, 0) : 49 === hZ ? qW.drawImage(i.v0()[2].gN[1], 0, 0) : qW.drawImage(iL, this.g5 * eD % (eD === hZ ? this
.wx * this.g5 : 4e3), eD === hZ ? eR(eD, this.wx) * this.g5 : 0, this.g5, this.g5, 0, 0, this.g5, this.g5), this.v4[hZ] = gN
}, this.xD = function() {
this.v4[this.mr - 5] = this.v4[26], this.v4[this.mr - 4] = this.xE(this.mr - 5, 2), this.v4[this.mr - 1] = this.xE(this.mr - 5, 1), this.v4[this.mr - 8] = this.xE(this.mr - 4, 1), this.v4[this.mr - 3] = this.v4[39], this.v4[this.mr - 2] =
this.xE(this.mr - 3, 1), this.v4[this.mr - 7] = this.xE(this.mr - 2, 1), this.v4[this.mr - 6] = this.xE(this.mr - 7, 1)
}, this.xE = function(eD, xG) {
var gN = document.createElement("canvas"),
qW = (gN.width = this.g5, gN.height = this.g5, gN.getContext("2d", {
alpha: !0
}));
return qW.clearRect(0, 0, this.g5, this.g5), qW.rotate(xG * Math.PI / 2), qW.drawImage(this.v4[eD], 1 === xG ? 0 : -this.g5, -this.g5), gN
}, this.xF = function() {
var eD, db, gI = b9.dG.data[102].value.split("");
if (2 * gI.length !== this.mr) this.vJ = 0;
else {
for (eD = 0; eD < this.mr; eD += 2) db = parseInt(gI[Math.floor(eD / 2)]), this.sB[eD] = db % 2 == 1, this.sB[eD + 1] = 1 < db;
this.xH()
}
}, this.xH = function() {
for (var eD = this.vJ = 0; eD < this.mr; eD++) this.sB[eD] && (this.x8[this.vJ++] = eD)
}, this.vV = function() {
8 === this.vJ && this.x8[0] === this.x1 && this.xH()
}, this.xI = function() {
var eD;
for (this.vJ = this.x0, eD = 0; eD < this.x0; eD++) this.x8[eD] = this.x1 + eD
}, this.xB = function() {
this.x2 = Math.floor((b7.cv.fv() ? .075 : .0468) * aK.fw), this.zoom = this.x2 / this.g5, this.x3 = (1 + this.x7) * this.x2
}, this.show = function(g8, g9) {
var eD, xK, xJ, qb, jc, jd;
if (this.vJ < 1) this.t8 = !1;
else {
for (xJ = (xJ = Math.floor(aK.g5 / this.x3)) < 3 ? 3 : xJ > this.x4 ? this.x4 : xJ, xK = this.vJ > xJ ? xJ : this.vJ, xJ = 1 + eR(this.vJ - 1, xK), qb = Math.floor(xK * this.x3), jc = (jc = (jc = Math.floor(g8 - qb / 2)) + qb > aK
.g5 ? aK.g5 - qb : jc) < 0 ? 0 : jc, jd = (jd = (jd = Math.floor(g9 - this.x3 / 2)) + (g8 = Math.floor(xJ * this.x3)) > aK.gA ? aK.gA - g8 : jd) < 0 ? 0 : jd, this.je = jc + qb, this.jf = jd + g8, eD = 0; eD < this.vJ; eD++)
this.x5[eD] = Math.floor(jc + eD % xK * this.x3), this.x6[eD] = Math.floor(jd + eR(eD, xK) * this.x3);
this.t8 = !0
}
}, this.fQ = function(g8, g9, player) {
return !!this.t8 && (this.t8 = !1, this.vU(g8, g9) && this.xN(g8, g9, player) && this.t8 || (this.vV(), i.o3()), !0)
}, this.vU = function(g8, g9) {
return !(g8 < this.x5[0] || g9 < this.x6[0] || g8 >= this.je || g9 >= this.jf)
}, this.xN = function(g8, g9, player) {
for (var eD = this.vJ - 1; 0 <= eD; eD--)
if (g8 >= this.x5[eD] && g9 >= this.x6[eD] && g8 <= this.x5[eD] + this.x3 && g9 <= this.x6[eD] + this.x3) return 39 === this.x8[eD] ? (this.xI(), this.show(g8, g9)) : (player === eU ? aW.fd.lo(this.x8[eD]) : aW.fN.m3(this.x8[eD],
player), this.xH()), !0;
return !1
}, this.xO = function(eD) {
return eD < 16 || 40 <= eD && eD < 47
}, this.xP = function(eD) {
return eD >= this.wy && eD < this.wy + this.wz
}, this.gD = function() {
gE.imageSmoothingEnabled = !0;
for (var gap = this.x7 * this.x2 / 2, eD = this.vJ - 1; 0 <= eD; eD--) gE.setTransform(this.zoom, 0, 0, this.zoom, this.x5[eD] + gap, this.x6[eD] + gap), gE.drawImage(this.v4[this.x8[eD]], 0, 0);
gE.imageSmoothingEnabled = !1, gE.setTransform(1, 0, 0, 1, 0, 0)
}, this.xQ = function(fI, fJ, lp) {
gE.imageSmoothingEnabled = !0, gE.setTransform(this.zoom, 0, 0, this.zoom, fI, fJ), gE.drawImage(this.v4[lp], 0, 0), gE.imageSmoothingEnabled = !1, gE.setTransform(1, 0, 0, 1, 0, 0)
}
}
function bY() {
var vn, xR, g4, gA, xS;
function xU(eD) {
let xW = !0,
ga = aZ.gF;
vn[eD].hS === ed ? vn[eD].qW.fillStyle = aZ.km : (a2.xX(vn[eD].hS), vn[eD].qW.fillStyle = aY.g0.kX(al.dg[0], al.dg[1], al.dg[2], .87), 400 < aY.pP.te(al.dg, 0, 2) && (xW = !1, ga = aZ.ji));
var g5 = vn[eD].gN.width,
qb = (vn[eD].qW.clearRect(0, 0, g5, gA), vn[eD].qW.fillRect(0, 0, g5, gA), vn[eD].qW.fillStyle = ga, ! function(qW, g5, gA) {
qW.fillRect(0, 0, g5, 1), qW.fillRect(0, gA - 1, g5, 1), qW.fillRect(0, 0, 1, gA), qW.fillRect(g5 - 1, 0, 1, gA)
}(vn[eD].qW, g5, gA), xR + 2 * gA < g5 && (vn[eD].qW.fillRect(g5 - xR - gA, 0, 1, gA), vn[eD].qW.fillText(jm[vn[eD].hS], Math.floor((g5 - xR) / 2), Math.floor(.57 * gA))), 0 !== vn[eD].id ? 0 : gA);
vn[eD].qW.fillText(aY.jk.jl(vn[eD].hT), Math.floor(g5 - xR / 2 - qb), Math.floor(.57 * gA)),
function(eD, g5, qb, xW) {
vn[eD].qW.fillStyle = xW ? aZ.ke : aZ.kb;
xW = Math.floor(xR * vn[eD].hT / vn[eD].xd);
vn[eD].qW.fillRect(Math.floor(g5 - xR - qb), gA - xS, xW, xS)
}(eD, g5, qb, xW), 0 === vn[eD].id ? (xa(eD, g5, xW, ga), function(eD, g5, xW) {
vn[eD].qW.strokeStyle = xW ? aZ.kp : aZ.kz, vn[eD].qW.fillRect(gA, 0, 1, gA);
xW = g5 - gA;
vn[eD].qW.beginPath(), vn[eD].qW.moveTo(Math.floor(.3 * gA + xW), Math.floor(gA / 2)), vn[eD].qW.lineTo(Math.floor(gA - .3 * gA + 0 + xW), Math.floor(gA / 2)), vn[eD].qW.stroke(), vn[eD].qW.beginPath(), vn[eD].qW.moveTo(Math
.floor(gA / 2 + xW), Math.floor(.3 * gA)), vn[eD].qW.lineTo(Math.floor(gA / 2 + xW), Math.floor(gA - .3 * gA + 0)), vn[eD].qW.stroke()
}(eD, g5, xW)) : xa(eD, 2 * gA, xW, ga)
}
function xa(eD, g5, xW, ga) {
vn[eD].qW.strokeStyle = vn[eD].xe ? aZ.kk : xW ? aZ.l2 : aZ.l3, vn[eD].qW.fillStyle = ga, vn[eD].qW.fillRect(g5 - gA, 0, 1, gA), vn[eD].qW.lineWidth = Math.max(Math.floor(gA / 12), 3), vn[eD].qW.lineCap = "round";
xW = .35;
g5 = gA + 1, vn[eD].qW.beginPath(), vn[eD].qW.moveTo(Math.floor(g5 - xW * gA + 0), Math.floor(xW * gA)), vn[eD].qW.lineTo(Math.floor(g5 - gA + xW * gA), Math.floor(gA - xW * gA + 0)), vn[eD].qW.stroke(), vn[eD].qW.beginPath(), vn[eD].qW
.moveTo(Math.floor(g5 - gA + xW * gA), Math.floor(xW * gA)), vn[eD].qW.lineTo(Math.floor(g5 - xW * gA + 0), Math.floor(gA - xW * gA + 0)), vn[eD].qW.stroke()
}
function xp(eZ) {
for (var hT, eD = eZ - 1; 0 <= eD; eD--) hT = a4.eL(eU, eD), vn[eD].hT !== hT && (vn[eD].hT = hT, vn[eD].xd = hT > vn[eD].xd ? hT : vn[eD].xd, vn[eD].xV = !0)
}
function xT(xr) {
xr.gN = document.createElement("canvas"), ap.pJ.font = g4;
var g5 = xR;
xr.hS < ed && 0 === xr.id && (g5 += Math.floor(ap.pJ.measureText(jm[xr.hS] + "000").width)), g5 += gA, 0 === xr.id && (g5 += gA), xr.gN.width = g5, xr.gN.height = gA, xr.qW = xr.gN.getContext("2d", {
alpha: !0
}), xr.qW.font = g4, aY.g0.textBaseline(xr.qW, 1), aY.g0.textAlign(xr.qW, 1)
}
function xl(eD) {
return r.xt() ? aK.g5 - vn[eD].gN.width - b0.gap : r.fI
}
function xm(eD) {
return Math.floor(2 * b0.gap + (r.xt() ? t.gA + b0.gap : 0) + r.gA + eD * (1.3 * gA))
}
this.cq = function() {
vn = [], this.resize()
}, this.resize = function() {
g4 = k.g4, gA = k.fontSize + 5, gA = Math.floor(1.25 * gA), b7.cv.fv() && (gA = Math.floor(1.25 * gA)), xS = Math.floor(.15 * gA), ap.pJ.font = g4, xR = Math.floor(ap.pJ.measureText("02 000 000 0000").width);
for (var eD = vn.length - 1; 0 <= eD; eD--) xT(vn[eD]), xU(eD)
}, this.j6 = function() {
for (var eD = vn.length - 1; 0 <= eD; eD--) vn[eD].xV && (vn[eD].xV = !1, xU(eD))
}, this.fQ = function(g8, fJ) {
if (2 !== rS && 0 !== h2[eU] && !fL && a2.vK(eU))
for (var xg, xh, xi, xj = b7.cv.fv() ? gA : 0, xk = b7.cv.fv() ? Math.floor(.15 * gA) : 0, eD = vn.length - 1; 0 <= eD; eD--)
if (xg = xl(eD), xh = xm(eD), xi = vn[eD].gN.width, xh - xk <= fJ && fJ <= xh + gA + xk) {
if (xg - xj <= g8 && g8 <= xg + gA + xj) return vn[eD].xe || (vn[eD].xV = !0, vn[eD].xe = !0, 0 === vn[eD].id && aW.fd.lm(vn[eD].hS)), !0;
if (0 === vn[eD].id && xg + xi - gA - xj <= g8 && g8 <= xg + xi + xj) return aW.fd.fo(o.fm(), vn[eD].hS), !0
} return !1
}, this.i6 = function() {
var eZ;
2 !== rS && 0 !== h2[eU] && !fL && a2.vK(eU) && (function(eZ) {
if (vn.length !== eZ) return 1;
for (var eD = eZ - 1; 0 <= eD; eD--)
if (vn[eD].id !== a4.eF(eU, eD) || vn[eD].hS !== a4.eK(eU, eD)) return 1;
return
}(eZ = a4.eE(eU)) && function(eZ) {
var eD, id, hS, hi, hT, w4 = [];
loop: for (eD = 0; eD < eZ; eD++) {
for (id = a4.eF(eU, eD), hS = a4.eK(eU, eD), hi = 0; hi < vn.length; hi++)
if (vn[hi].id === id && vn[hi].hS === hS) {
w4.push(vn.splice(hi, 1)[0]);
continue loop
} hT = a4.eL(eU, eD), xT(hT = {
hS: hS,
hT: hT,
xd: hT,
id: id,
xV: !0,
xe: !1,
gN: null,
qW: null
}), w4.push(hT)
}
vn = w4
}(eZ), xp(eZ))
}, this.xs = function(eg) {
for (var eZ = Math.min(vn.length, a4.eE(eU)), eD = 0; eD < eZ; eD++)
if (vn[eD].hS === eg) return void(vn = [])
}, this.gD = function() {
if (0 !== h2[eU] && a2.vK(eU) && !fL)
for (var eD = vn.length - 1; 0 <= eD; eD--) gE.drawImage(vn[eD].gN, xl(eD), xm(eD))
}
}
function bZ() {
var vn, iU, xu, xv, gA, g4, fontSize, xw, xx, xy, xz, gN, qW, jy, y0;
function y7() {
gE.drawImage(gN, b0.gap + (hM ? b0.gap + b5.y8() : 0), y9 + 2 * b0.gap)
}
function y1() {
gN.width = vn[0].width + xy, gN.height = gA + xy, (qW = gN.getContext("2d", {
alpha: !0
})).clearRect(0, 0, vn[0].width + xy, gA + xy), qW.translate(Math.floor(xy / 2), Math.floor(xy / 2)), qW.lineWidth = xy, qW.fillStyle = 1 === vn[0].y6 ? aZ.kh : aZ.ka, yA(), qW.fill(), qW.strokeStyle = 1 === vn[0].y6 ? aZ.ji : aZ.gF,
yA(), qW.stroke(), aY.g0.textAlign(qW, 1), aY.g0.textBaseline(qW, 1), qW.fillStyle = 1 === vn[0].y6 ? aZ.ji : aZ.gF, qW.font = g4[0], qW.fillText(aV.nc[66 + vn[0].y5], Math.floor(vn[0].width / 2), Math.floor(.72 * xw[0] * gA)), qW.font = g4[
1], qW.fillText(vn[0].fy, Math.floor(vn[0].width / 2), Math.floor((xw[0] + .48 * xw[1]) * gA))
}
function yA() {
qW.beginPath(), qW.moveTo(xz, 0), qW.lineTo(vn[0].width - xz, 0), qW.lineTo(vn[0].width, xz), qW.lineTo(vn[0].width, gA - xz), qW.lineTo(vn[0].width - xz, gA), qW.lineTo(xz, gA), qW.lineTo(0, gA - xz), qW.lineTo(0, xz), qW.closePath()
}
this.cq = function() {
iU = 4, xu = xv = jy = 0, vn = [], g4 = new Array(2), fontSize = new Array(2), (xw = new Array(2))[0] = .3, xw[1] = .7, xx = new Array(4), gN = document.createElement("canvas"), y0 = b3.dY + 2e3, this.resize()
}, this.resize = function() {
var eD, g5;
for (gA = Math.floor((b7.cv.fv() ? .0725 : .058) * aK.fw), fontSize[0] = Math.floor(.85 * xw[0] * gA), fontSize[1] = Math.floor(.85 * xw[1] * gA), g4[0] = aY.g0.g1(1, fontSize[0]), g4[1] = aY.g0.g1(1, fontSize[1]), eD = xx.length -
1; 0 <= eD; eD--) xx[eD] = this.measureText(aV.nc[66 + eD] + "000", g4[0]);
if (xy = Math.floor(1 + .05 * gA), xz = Math.floor(.2 * gA), 0 < vn.length) {
for (eD = vn.length - 1; 0 <= eD; eD--) g5 = this.measureText(vn[eD].fy + "00", g4[1]), vn[eD].width = g5 < xx[eD] ? xx[eD] : g5;
y1()
}
}, this.i6 = function() {
0 !== iU && (4 === iU ? b3.dY > y0 && (iU = 0, 1 === rS) && n.rj(ap.ii.pk[ap.pl].name, 3, 1, 9) : (1 === iU ? (0 === xu && (y1(), xu = 1e-4), 1 <= (xu += .002 * (b3.dY - jy)) && (xv = 0, iU = 2, xu = 1), b3.d1 = !0) : 2 === iU ? ((xv += (
b3.dY - jy) / 1e3) > vn[0].k3 || 1 < xv && 1 < vn.length) && (iU = 3) : 3 === iU && ((xu -= .002 * (b3.dY - jy)) <= 0 && (xu = 0, vn.shift(), iU = 0 < vn.length ? 1 : 0), b3.d1 = !0), jy = b3.dY))
}, this.measureText = function(fy, g4) {
return gE.font = g4, Math.floor(gE.measureText(fy).width)
}, this.hP = function(y4, eD) {
this.rj(jm[y4], eD, 1, 0 === eD ? 3 : 7)
}, this.rj = function(fy, y5, y6, k3) {
var g5 = (g5 = this.measureText(fy + "00", g4[1])) < xx[y5] ? xx[y5] : g5;
vn.push({
fy: fy,
width: g5,
y5: y5,
y6: y6,
k3: k3
}), 0 === iU && (xu = 0, iU = 1, jy = b3.dY)
}, this.gD = function() {
0 !== iU && 0 !== xu && (xu < 1 ? (gE.globalAlpha = xu, y7(), gE.globalAlpha = 1) : y7())
}
}
function c7() {
var gA, gN, qW, yB, yC, yD, yE, yF, xV, yG, yH, yI, yJ, yK;
function g2() {
var g5 = aI.g5,
pB = (xV = !1, qV(qW, g5, gA), Math.floor(g5 / 2));
1 === yC ? (qW.fillStyle = aZ.kr, qW.fillRect(pB, 0, pB, gA)) : -1 === yC && (qW.fillStyle = aZ.l4, qW.fillRect(0, 0, pB, gA)), qX(qW, g5, gA, 2);
var pB = (pB = Math.floor(.25 * gA)) < 2 ? 2 : pB,
wh = (qW.fillStyle = aZ.ki, Math.floor((gA - 4) * yD[1] / yE[1]));
0 < wh && qW.fillRect(2, gA - 2 - wh, pB, wh), 0 < (wh = Math.floor((gA - 4) * yD[0] / yE[0])) && qW.fillRect(g5 - 2 - pB, gA - 2 - wh, pB, wh);
pB = (pB = Math.floor(gA / 8)) < 2 ? 2 : pB;
qZ(qW, Math.floor(.4 * gA), 0, gA, pB, .5, !1), qZ(qW, Math.floor(g5 - 1.4 * gA), 0, gA, pB, .5, !0), qW.drawImage(yB, Math.floor((g5 - yB.width) / 2), 3)
}
function yM() {
xV = !0, yG = 140, yC = 0, yF = [], aI.t8 = !1, k.rI(247, 0), yD[0] = yD[1] = 0
}
function gC() {
return o.wE(k.wA()) ? o.fJ - gA - b0.gap : aa.wE(k.wD()) ? aa.gC() - gA - b0.gap : aK.gA - gA - bA.us() * b0.gap
}
this.t8 = !1, this.g5 = 0, this.cq = function() {
yI = yJ = 0, this.t8 = !1, xV = yK = !1, yG = 140, yD = [yC = 0, 0], yE = [1, 1], yF = [], yH = new Uint32Array(10), this.resize()
}, this.resize = function() {
gA = o.gA, this.g5 = 4 * gA, this.yL(), (gN = document.createElement("canvas")).width = this.g5, gN.height = gA, qW = gN.getContext("2d", {
alpha: !0
}), g2()
}, this.j6 = function() {
xV && g2()
}, this.yL = function() {
var gO, xy, pB, xM = (xM = gA - 6) < 6 ? 6 : xM;
void 0 !== yB && yB.width === xM || ((yB = document.createElement("canvas")).width = xM, yB.height = xM, (gO = yB.getContext("2d", {
alpha: !0
})).clearRect(0, 0, xM, xM), xy = Math.floor(xM / 8), gO.lineWidth = xy = xy < 1 ? 1 : xy, gO.strokeStyle = aZ.gF, pB = Math.floor(xM / 2), xM = Math.floor((xM - xy) / 2), gO.beginPath(), gO.arc(pB, pB, xM, 0, 2 * Math.PI), gO
.moveTo(pB, pB - xM), gO.lineTo(pB, pB + xM), gO.moveTo(pB + Math.cos(.78 * Math.PI) * xM, pB + Math.cos(.28 * Math.PI) * xM), gO.lineTo(pB, pB), gO.lineTo(pB + Math.cos(.22 * Math.PI) * xM, pB + Math.cos(1.72 * Math.PI) * xM), gO
.stroke())
}, this.fQ = function(fI, fJ) {
var jd;
return !(fI < aK.g5 - this.g5 - b0.gap || fJ < (jd = gC()) || jd + gA < fJ || (fL || aW.fd.ls(fI > aK.g5 - b0.gap - this.g5 / 2 ? 1 : 0), 0))
}, this.i6 = function() {
if (0 < yJ) 0 === --yJ && yM();
else if (this.t8) 270 == --yG && 2 <= yI && function() {
var eD;
for (eD = iN - 1; 0 <= eD; eD--)
if (a2.vK(iO[eD])) return;
return 1
}() && (xV = !0, yD[0] += yE[0]), 180 === yG && 3 * yD[0] < yE[0] ? yM() : yD[0] >= yE[0] ? yK ? ao.rD.rG() : ao.rD.rL(-1) : yD[1] >= yE[1] ? yJ = 4 : yG <= 0 && yM();
else if (function() {
var eD;
for (eD = 9; 0 <= eD; eD--) 12 < Math.abs(yH[eD] - ez[jG[eD]]) && (yG = 140), yH[eD] = ez[jG[eD]];
if (--yG <= 0) return 1;
return
}()) {
(yK = yP()) && k.wW(), this.t8 = !0, yG = 360;
var eD, dZ = 0;
for (eD = iN - 1; 0 <= eD; eD--) a2.vK(iO[eD]) && (dZ += ez[iO[eD]]);
yE[0] = wC(eR(3 * dZ, 5), 1), hM && 9 !== ik && (yE[0] = yR(wC(eR(dZ * (100 - eR(100 * b5.rh(), uS)), 100), 1), yE[0])), yE[1] = wC(dZ - yE[0], 1), yI++
}
}, this.rT = function() {
this.t8 && yD[0] < yE[0] && yM()
}, this.mt = function(player, yT) {
var eD, dZ;
if (this.t8) {
for (eD = yF.length - 1; 0 <= eD; eD--)
if (yF[eD] === player) return;
yF.push(player), xV = !0, dZ = im ? yE[0] : ez[player], yT ? yD[0] += dZ : yD[1] += dZ, player === eU && (yC = yT ? 1 : -1)
}
}, this.gD = function() {
var fJ;
this.t8 && (fJ = gC(), gE.drawImage(gN, aK.g5 - this.g5 - b0.gap, fJ))
}
}
function ba() {
var g5, fI, yU, gN, qW, t8, h5, yV, g4, xV, yW = 11 / 12;
function yY() {
var xc = Math.floor(h5 * (g5 - 2 * yU)),
yb = 1 + Math.floor(.0625 * o.gA),
yc = 1 + Math.floor(.3 * o.gA),
xM = Math.floor(.55 * o.gA);
qW.clearRect(0, 0, g5, o.gA), qW.fillStyle = aZ.kZ, qW.fillRect(0, 0, yU, o.gA), qW.fillRect(yU + xc, 0, g5 - yU - xc, o.gA), qW.fillStyle = h5 < 1 / 3 ? "rgba(" + Math.floor(3 * h5 * 130) + ",130,0,0.85)" : h5 < 2 / 3 ? "rgba(130," + (130 -
Math.floor(3 * (h5 - 1 / 3) * 130)) + ",0,0.85)" : "rgba(130,0," + Math.floor(3 * (h5 - 2 / 3) * 130) + ",0.85)", qW.fillRect(yU, 0, xc, o.gA), qW.fillStyle = aZ.gF, qW.fillRect(0, 0, g5, 1), qW.fillRect(0, o.gA - 1, g5, 1), qW
.fillRect(0, 0, 1, o.gA), qW.fillRect(yU, 0, 1, o.gA), qW.fillRect(yU + xc, 0, 1, o.gA), qW.fillRect(g5 - yU, 0, 1, o.gA), qW.fillRect(g5 - 1, 0, 1, o.gA), qW.fillRect(Math.floor(.25 * o.gA) + yc, Math.floor((o.gA - yb) / 2), o.gA - 2 *
yc, yb), qW.fillRect(Math.floor(g5 - 1.25 * o.gA) + yc, Math.floor((o.gA - yb) / 2), o.gA - 2 * yc - yc % 2, yb), qW.fillRect(Math.floor(g5 - 1.25 * o.gA) + Math.floor((o.gA - yb) / 2), yc, yb, o.gA - 2 * yc - yc % 2), yV = aY.fN.h4(
eU, o.fm()), qW.fillText(aY.jk.jl(yV) + " (" + aY.jk.uE(100 * h5, +(h5 < .1)) + ")", Math.floor(.5 * g5), xM)
}
this.setAbsolutePercentage = function(newPercentage) {
h5 = newPercentage;
};
keybindFunctions.setAbsolute = this.setAbsolutePercentage;
keybindFunctions.setRelative = (arg1) => o.tJ(arg1);
function yg(ft) {
return !(1 < ft && 1 === h5 || (1 < ft && ft * h5 - h5 < 1 / 1024 ? ft = (h5 + 1 / 1024) / h5 : ft < 1 && h5 - ft * h5 < 1 / 1024 && (ft = (h5 - 1 / 1024) / h5), h5 = ai.lS(h5 * ft, 1 / 1024, 1), yY(), 0))
}
function yh(g8) {
return h5 !== (h5 = ai.lS((g8 - fI - yU) / (g5 - 2 * yU), 1 / 1024, 1)) && (yY(), !0)
}
this.fJ = 0, this.fR = !1, this.cq = function() {
t8 = !fc && !fL, xV = !1, h5 = .5, yV = 0, this.fR = !1, this.resize()
}, this.resize = function() {
b7.cv.fv() && aK.g5 < .8 * aK.gA ? (this.gA = Math.floor(.0536 * aK.fw), g5 = aK.g5 - 4 * b0.gap - this.gA) : (g5 = Math.floor((b7.cv.fv() ? .65 : .389) * aK.fw), g5 += 12 - g5 % 12, this.gA = Math.floor(g5 / 12)), yU = Math.floor(3 *
this.gA / 2), g4 = aY.g0.g1(1, Math.floor(.5 * this.gA)), (gN = document.createElement("canvas")).width = g5, gN.height = this.gA, (qW = gN.getContext("2d", {
alpha: !0
})).font = g4, aY.g0.textBaseline(qW, 1), aY.g0.textAlign(qW, 1), this.yX(), yY()
}, this.yX = function() {
fI = b7.cv.fv() && aK.g5 < .8 * aK.gA ? this.gA + 3 * b0.gap : Math.floor((aK.g5 - g5) / 2), this.fJ = aK.gA - this.gA - bA.us() * b0.gap
}, this.j6 = function() {
xV && (xV = !1, yY())
}, this.t8 = function() {
return !(!t8 || j.fM && fI < Math.floor(b0.gap + 5.5 * this.gA))
}, this.wE = function(g6) {
return !!this.t8() && fI + g5 > aK.g5 - g6 - b0.gap
}, this.gB = function() {
t8 = !fL
}, this.yM = function() {
t8 = !1
}, this.fm = function() {
return ai.lS(Math.floor(1024 * h5 + .5) - 1, 0, 1023)
}, this.tF = function(g8, g9) {
return this.t8() && fI < g8 && g8 < fI + g5 && g9 > this.fJ
}, this.fQ = function(g8, g9) {
return !!this.t8() && !!o.tF(g8, g9) && (p.kA = !1, function(vX, g8, g9) {
if (function(g8, g9) {
return fI < g8 && g8 < fI + yU && g9 > o.fJ
}(g8, g9)) return yg(yW);
if (function(g8, g9) {
return fI + g5 - yU < g8 && g8 < fI + g5 && g9 > o.fJ
}(g8, g9)) return yg(1 / yW);
return vX.fR = !0, yh(g8)
}(this, g8, g9) && (b3.d1 = !0), !0)
}, this.tJ = function(kH) {
0 !== rS && this.t8() && yg(kH) && (b3.d1 = !0)
}, this.sn = function(deltaY) {
var kH;
return !(0 === deltaY || !this.t8()) && yg(kH = 0 < deltaY ? (kH = 400 / (400 + deltaY)) < yW ? yW : kH : 1 / yW < (kH = (400 - deltaY) / 400) ? 1 / yW : kH)
}, this.sk = function(g8) {
return !!this.fR && yh(g8)
}, this.tB = function() {
this.fR = !1
}, this.i6 = function() {
this.t8() && yV !== aY.fN.h4(eU, this.fm()) && (xV = !0)
}, this.gD = function() {
this.t8() && gE.drawImage(gN, fI, this.fJ)
}
}
function cI() {
var gN, qW, yi, font, yj = 0,
yk = !1,
yl = [10, 5, 3, 2, 1.5, 1, .75, .5, .25],
ym = 5;
function ys() {
if (yk) {
var eD, eZ = yl.length,
xM = Math.floor(.5 * yi.gA),
gA = eZ * xM,
fI = Math.floor(Math.floor(yi.fI) + .3 * yi.g5 - .5),
fJ = Math.floor(Math.floor(yi.fJ) - gA),
g5 = Math.floor(.4 * yi.g5 + 2.5);
for (gE.fillStyle = aZ.kZ, gE.fillRect(fI, fJ, g5, gA), gE.fillStyle = aZ.kw, gE.fillRect(fI, fJ + ym * xM, g5, xM), gE.fillStyle = aZ.gF, gE.fillRect(fI, fJ, 2, gA), gE.fillRect(fI, fJ, g5, 2), gE.fillRect(fI + g5 - 2, fJ, 2, gA), eD =
1; eD < eZ; eD++) gE.fillRect(fI, fJ + eD * xM, g5, 2);
for (gE.fillStyle = aZ.gF, aY.g0.textAlign(gE, 1), aY.g0.textBaseline(gE, 1), gE.font = aY.g0.g1(0, .6 * xM), fI += .5 * g5, eD = 0; eD < eZ; eD++) gE.fillText(z0(eD), fI, fJ + (eD + .6) * xM)
}
gE.drawImage(gN, Math.floor(yi.fI), Math.floor(yi.fJ))
}
function g2(vX) {
var fI, jc, jd, xM;
qW.clearRect(0, 0, Math.floor(yi.g5), Math.floor(yi.gA)), qW.fillStyle = aZ.kZ, qW.fillRect(0, 0, Math.floor(yi.g5), Math.floor(yi.gA)), k9 && (qW.fillStyle = aZ.kw, qW.fillRect(0, 0, Math.floor(.3 * yi.g5), Math.floor(yi.gA))), qW
.fillStyle = aZ.gF, qW.fillText("Hide UI", .15 * yi.g5, .5 * yi.gA), qW.fillRect(Math.floor(.3 * yi.g5 - .5), 0, 2, Math.floor(yi.gA)), fI = .5 * yi.g5, qW.fillText("Replay Speed", fI, .31 * yi.gA), qW.fillText(z0(ym), fI, .69 * yi.gA),
qW.fillRect(Math.floor(.7 * yi.g5 - .5), 0, 2, Math.floor(yi.gA)), vX.ve ? (fI = Math.floor(.02 * yi.g5), vX = Math.floor(.025 * yi.g5), jc = Math.floor(.85 * yi.g5 - fI - .5 * vX), jd = Math.floor(.25 * yi.gA), xM = Math.floor(yi.gA) -
2 * jd, qW.fillRect(jc, jd, fI, xM), qW.fillRect(jc + fI + vX, jd, fI, xM)) : function() {
var g5 = Math.floor(.46 * yi.gA),
gA = Math.floor(.23 * yi.gA),
fI = Math.floor(.85 * yi.g5 - .5 * g5 + g5 / 12),
fJ = Math.floor(.5 * yi.gA - gA);
qW.beginPath(), qW.moveTo(fI, fJ), qW.lineTo(fI + g5, fJ + gA), qW.lineTo(fI, fJ + (gA << 1)), qW.fill()
}(), qW.fillRect(0, 0, Math.floor(yi.g5), 2), qW.fillRect(0, 0, 2, Math.floor(yi.gA)), qW.fillRect(0, Math.floor(yi.gA) - 2, Math.floor(yi.g5), 2), qW.fillRect(Math.floor(yi.g5 - 2), 0, 2, Math.floor(yi.gA))
}
function z0(eD) {
return 5 === eD ? "Normal" : "" + yl[eD]
}
this.ve = !1, this.cq = function() {
fL && (ym = 5, this.ve = !1, yk = !1, yi = new nW([.3, .3 / 6], [.5, 1]), this.resize())
}, this.yn = function() {
return yl[ym]
}, this.gC = function() {
return yi.fJ
}, this.wE = function(g6) {
return !!fL && yi.fI + yi.g5 > aK.g5 - g6 - b0.gap
}, this.resize = function() {
fL && (yi.resize(), yi.fJ -= (bA.us() - 1) * b0.gap, font = aY.g0.g1(0, .3 * yi.gA), (gN = document.createElement("canvas")).width = Math.floor(yi.g5), gN.height = Math.floor(yi.gA), (qW = gN.getContext("2d", {
alpha: !0
})).font = font, aY.g0.textAlign(qW, 1), aY.g0.textBaseline(qW, 1), g2(this))
}, this.tN = function(yo) {
yo !== k9 && (k9 = yo, b5.resize(), b3.d1 = !0, fL) && (yj = b3.dY + 2e3, g2(this))
}, this.fQ = function(fI, fJ) {
if (!fL) return !1;
if (fI < yi.fI || fJ < yi.fJ || fI > yi.fI + yi.g5) return yk && function(vX, fI, fJ) {
var eZ = yl.length,
xM = Math.floor(.5 * yi.gA),
gA = eZ * xM,
jc = Math.floor(Math.floor(yi.fI) + .3 * yi.g5 - .5),
gA = Math.floor(Math.floor(yi.fJ) - gA),
g5 = Math.floor(.4 * yi.g5 + 2.5);
return yk = !1, b3.d1 = !0, fI < jc || jc + g5 < fI || fJ < gA || (ym = yr(0, Math.floor((fJ - gA) / xM), eZ - 1), g2(vX)), !0
}(this, fI, fJ);
if ((fI -= yi.fI) < .3 * yi.g5) yk = !1, this.tN(!k9);
else {
if (fI < .7 * yi.g5) return yk = !yk, b3.d1 = !0;
this.tP(!1)
}
return !0
}, this.tP = function(yq) {
2 === rS ? (this.tN(!1), ar.ok(3)) : (yk = !1, this.ve = !this.ve, this.ve ? j.fM ? j.tO() : b7.cv.setState(1) : yq || j.vf(), b3.d1 = !0, g2(this))
}, this.t3 = function(fI, fJ) {
return !!k9 && (j.fQ(fI, fJ) || (fL ? ((b3.dY > yj || !this.fQ(fI, fJ)) && p.fQ(fI, fJ), b3.d1 = !0, yj = b3.dY + 2e3) : p.fQ(fI, fJ)), !0)
}, this.i6 = function() {
fL && k9 && b3.dY > yj - 1e3 && b3.dY < yj && (b3.d1 = !0)
}, this.rX = function() {
fL && (this.ve = !1, b3.d1 = !0, g2(this))
}, this.gD = function() {
if (fL) {
if (k9) {
if (b3.dY > yj) return;
if (b3.dY > yj - 1e3) return gE.globalAlpha = yr(0, (1e3 - (b3.dY - (yj - 1e3))) / 1e3, 1), ys(), void(gE.globalAlpha = 1)
}
ys()
}
}
}
function bb() {
var z1, z2, g5, fI, fJ, z3, z4;
this.cq = function() {
z1 = new Array(2), z2 = new Array(2), this.kA = !1, z4 = z3 = h8 = h6 = 0, h7 = 1, this.resize()
}, this.resize = function() {
g5 = (g5 = Math.floor((b7.cv.fv() ? .072 : .0502) * aK.fw)) < 8 ? 8 : g5;
for (var eD = 1; 0 <= eD; eD--) z1[eD] = document.createElement("canvas"), z1[eD].width = g5, z1[eD].height = g5, z2[eD] = z1[eD].getContext("2d", {
alpha: !0
});
this.yX(),
function() {
for (var zJ = Math.floor(1 + g5 / 20), eD = 1; 0 <= eD; eD--) z2[eD].clearRect(0, 0, g5, g5), z2[eD].fillStyle = aZ.kW, z2[eD].beginPath(), z2[eD].arc(g5 / 2, g5 / 2, g5 / 2 - zJ, 0, 2 * Math.PI), z2[eD].fill(), z2[eD].lineWidth =
zJ, z2[eD].fillStyle = aZ.gF, z2[eD].strokeStyle = aZ.gF, z2[eD].beginPath(), z2[eD].arc(g5 / 2, g5 / 2, g5 / 2 - zJ, 0, 2 * Math.PI), z2[eD].stroke(), qZ(z2[eD], 0, 0, g5, zJ, .3, 0 === eD)
}()
}, this.jg = function() {
return -h6 / h7
}, this.gC = function() {
return -h8 / h7
}, this.kJ = function(z8, gq) {
h6 = h7 * z8 - gq
}, this.kK = function(z9, gr) {
h8 = h7 * z9 - gr
}, this.fQ = function(z7, wF) {
return k9 || ! function(z7, wF) {
return Math.pow(z7 - (fI + g5 / 2), 2) + Math.pow(wF - (fJ + g5 / 2), 2) < g5 * g5 / 4 || Math.pow(z7 - (fI + g5 / 2), 2) + Math.pow(wF - (fJ + 2 * g5), 2) < g5 * g5 / 4
}(z7, wF) || b9.dG.data[8].value ? (f.kM() && (this.kA = !0, z3 = z7, z4 = wF), !1) : wF < fJ + 1.25 * g5 ? this.sn(Math.floor(aK.g5 / 2), Math.floor(aK.gA / 2), -200) : this.sn(Math.floor(aK.g5 / 2), Math.floor(aK.gA / 2), 200)
}, this.sk = function(z7, wF) {
var zA, zB, gt, gw;
return !f.kM() || (zA = h6, zB = h8, h6 += gt = z3 - z7, h8 += gw = z4 - wF, a6.sk(gt, gw), this.zC(), z3 = z7, z4 = wF, zA !== h6) || zB !== h8
}, this.sn = function(g8, g9, deltaY) {
var kH;
if (f.kM()) {
if (0 < deltaY) kH = (kH = 500 / (500 + deltaY)) < .5 ? .5 : kH;
else {
if (!(deltaY < 0)) return !1;
kH = 2 < (kH = (500 - deltaY) / 500) ? 2 : kH
}
this.zD(g8, g9, kH), b3.d1 = !0
}
return !0
}, this.zD = function(fI, fJ, fZ) {
var ft;
fZ = ft = (ft = 1024 < (ft = fZ) * h7 ? 1024 / h7 : ft) * h7 < .125 ? .125 / h7 : ft, a6.zoom(fZ, fI, fJ),
function(ft, g8, g9) {
h7 *= ft, h6 = (h6 + g8) * ft - g8, h8 = (h8 + g9) * ft - g9, p.zC()
}(fZ, fI, fJ)
}, this.zC = function() {
var zG = aK.g5 / 16,
gW = 0,
zH = aK.gA / 16,
gY = 0;
h6 < -aK.g5 + zG && (gW = -aK.g5 + zG - h6), h6 > h7 * ap.e8 - zG && (gW = h7 * ap.e8 - zG - h6), h8 < -aK.gA + zH && (gY = -aK.gA + zH - h8), h8 > h7 * ap.e9 - zH && (gY = h7 * ap.e9 - zH - h8), h6 += gW, h8 += gY, ax.kL(), a6.zI(gW, gY)
}, this.yX = function() {
fI = aK.g5 - g5 - b0.gap, fJ = Math.floor(aK.gA / 2 - 1.25 * g5)
}, this.gD = function() {
b9.dG.data[8].value || (gE.drawImage(z1[0], fI, fJ), gE.drawImage(z1[1], fI, Math.floor(fJ + 3 * g5 / 2)))
}
}
function bc() {
var dl, po, zK, zL, gap, zM, zN, zO, zP, zQ, g4, zR, fF, zS, xc, zT, zU, zV;
function zZ() {
zL = Math.floor(.2 * (b7.cv.fv() ? .07 : .035) * aK.fw), zL = wC(b7.cv.fv() ? 3 : 1, zL);
var zc = aK.g5 / (dl.length + gap);
zL = zL < zc ? zc : zL, xc = Math.floor((1 - gap) * zL), po = 0, zd()
}
function zd() {
po = (po = po < -20 ? -20 : po) > (dl.length - 15) * zL ? (dl.length - 15) * zL : po, zN = Math.floor(po / zL), zO = (zO = zN + Math.floor(aK.g5 / zL)) > dl.length - 1 ? dl.length - 1 : zO, zN = (zN = zO < zN ? zO : zN) < 0 ? 0 : zN;
var pB = zO;
zM = zK / dl[pB];
for (var eD = zO - 1; zN <= eD; eD--) dl[eD] > dl[pB] && (pB = eD, zM = zK / Math.pow(dl[eD], zS))
}
function zg(fI) {
fI = Math.floor((po + aK.g5 - fI - gap * zL) / zL);
return (fI = fI < -1 ? -1 : -1 === fI ? 0 : fI > dl.length - 1 ? -1 : fI) !== zP && (zP = fI, -1 === zT && 0 === zP && q.zW && (zT = setInterval(zh, 100)), 1)
}
function zi(eD) {
var xS = Math.floor(zM * Math.pow(dl[eD], zS));
gE.fillRect(po + aK.g5 - (eD + 1) * zL, aK.gA - xS, xc, xS)
}
function zh() {
var eg;
0 !== (zP = 8 === x.s1() ? -1 : zP) ? (zU = (new Date).getTime(), clearInterval(zT), zT = -1) : (eg = dl[1] / 864e3, -1 !== zU && (eg += ((new Date).getTime() - zU) * dl[1] / 864e5, zU = -1), 0 < eg && (dl[0] += Math.floor(eg), b3.d1 = !0))
}
this.zW = !1, this.cq = function() {
zU = zT = -1, zP = -(zS = 1), this.zX = !1, fF = 0, zR = new Date, po = 0, gap = .3, (zV = []).push({
wa: "Plateau A",
eZ: 0,
dE: 57
}), zV.push({
wa: "Max A",
eZ: 1,
dE: 1
}), zV.push({
wa: "Black Friday",
eZ: 15,
dE: 15
}), zV.push({
wa: "Max B",
eZ: 19,
dE: 19
}), zV.push({
wa: "Max C",
eZ: 44,
dE: 44
}), zV.push({
wa: "First Android Version",
eZ: 58,
dE: 58
}), zV.push({
wa: "Max D",
eZ: 67,
dE: 67
}), zV.push({
wa: "The iFrame Explosion",
eZ: 98,
dE: 99
}), zV.push({
wa: "The 155-Day Uptrend",
eZ: 58,
dE: 213
}), zV.push({
wa: "Max E",
eZ: 213,
dE: 213
}), zV.push({
wa: "Plateau B",
eZ: 214,
dE: 259
}), zV.push({
wa: "Turbulent Times",
eZ: 260,
dE: 344
}), zV.push({
wa: "Max F",
eZ: 262,
dE: 262
}), zV.push({
wa: "Max G",
eZ: 282,
dE: 282
}), zV.push({
wa: "Max H",
eZ: 333,
dE: 333
}), zV.push({
wa: "The 19-Day Downtrend",
eZ: 283,
dE: 301
}), zV.push({
wa: "Plateau C",
eZ: 345,
dE: 385
}), zV.push({
wa: "The Alliance Ascent",
eZ: 386,
dE: 395
}), zV.push({
wa: "Max I",
eZ: 395,
dE: 395
}), zV.push({
wa: "First iOS Version",
eZ: 411,
dE: 411
}), zV.push({
wa: "Plateau D",
eZ: 396,
dE: 453
}), zV.push({
wa: "The TikTok Revolution",
eZ: 454,
dE: 470
}), zV.push({
wa: "Max J",
eZ: 456,
dE: 456
}), zV.push({
wa: "Max K",
eZ: 472,
dE: 472
}), zV.push({
wa: "Max L",
eZ: 478,
dE: 478
}), zV.push({
wa: "YT Drew",
eZ: 471,
dE: 485
}), zV.push({
wa: "Plateau E",
eZ: 485,
dE: 600
}), zV.push({
wa: "Uptrend A",
eZ: 600,
dE: 613
}), zV.push({
wa: "Max M",
eZ: 613,
dE: 613
}), zV.push({
wa: "Downtrend A",
eZ: 614,
dE: 635
}), zV.push({
wa: "Plateau F",
eZ: 636,
dE: 737
}), zV.push({
wa: "End of Record",
eZ: 738,
dE: 738
}), dl = [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() {
zK = Math.floor(.15 * aK.gA), zQ = (zQ = Math.floor((b7.cv.fv() ? .018 : .0137) * aK.fw)) < 2 ? 2 : zQ, g4 = aY.g0.g1(1, zQ), zZ()
}, this.za = function(zb) {
var eD;
for (this.zW = !0, eD = 0; eD < zb.length; eD++) dl.unshift(zb[eD]);
zZ(), b3.d1 = !0
}, this.ze = function() {
zd()
}, this.sk = function(fI, fJ) {
fJ > aK.gA - .6 * zK ? this.zX ? fI !== fF && (po += fI - fF, fF = fI, zd(), zg(fI), this.zX = -1 !== zP, b3.d1 = !0) : zg(fI) && (b3.d1 = !0) : this.t9()
}, this.t9 = function() {
-1 !== zP && (this.zX = !1, zP = -1, b3.d1 = !0)
}, this.sn = function(fI, deltaY) {
-1 !== zP && (po += Math.floor(deltaY), zd(), zg(fI), b3.d1 = !0)
}, this.fQ = function(fI, fJ) {
this.sk(fI, fJ), -1 !== zP && (fF = fI, this.zX = !0)
}, this.tA = function() {
-1 !== zP && (this.zX = !1)
}, this.gD = function() {
gE.fillStyle = aZ.kf;
for (var zk, month, dZ, qc, zn, zo, jd, zp, zq, eD = zO; zN <= eD; eD--) zi(eD);
this.zW && 0 === zN && (gE.fillStyle = aZ.l4, zi(0)), -1 !== zP && (gE.fillStyle = aZ.ke, zi(zP)), -1 !== zP && (gE.font = g4, aY.g0.textBaseline(gE, 2), (dZ = new Date).setTime(zR.getTime() - 1e3 * zP * 60 * 60 * 24), month = "month",
zk = "day", "undefined" != typeof Intl && (month = new Intl.DateTimeFormat("en-US", {
month: "long"
}).format(dZ), zk = new Intl.DateTimeFormat("en-US", {
weekday: "long"
}).format(dZ)), zk = zk + ", " + dZ.getUTCDate() + " " + month + " " + dZ.getFullYear(), month = 1 === dl[zP] ? " second played" : " seconds played", month = aY.jk.jl(dl[zP]) + month, dZ = Math.floor(gE.measureText(zk).width),
qc = Math.floor(gE.measureText(month).width), zn = Math.floor(.5 * (dZ + zQ)), zo = (zo = po + aK.g5 - (zP + 1) * zL) < zn ? zn : zo > aK.g5 - zn ? aK.g5 - zn : zo, jd = aK.gA - Math.floor(zM * Math.pow(dl[zP], zS)), zp = Math
.floor(1.1 * zQ), zq = jd > aK.gA - zp ? aK.gA - zp : jd, gE.fillStyle = aZ.ka, gE.fillRect(aK.g5 - qc - zQ, zq - zp, qc + zQ, zp), gE.fillRect(zo - zn, aK.gA - zp, dZ + zQ, zp), gE.fillStyle = aZ.gF, aY.g0.textAlign(gE, 2), gE
.fillText(month, Math.floor(aK.g5 - .5 * zQ), zq),
function(jd, zp) {
for (var qb, v2 = -1, fz = dl.length - zP - 1, eD = zV.length - 1; 0 <= eD; eD--) fz >= zV[eD].eZ && fz <= zV[eD].dE && (-1 === v2 || zV[eD].dE - zV[eD].eZ < zV[v2].dE - zV[v2].eZ) && (v2 = eD); - 1 !== v2 && (qb = Math.floor(
gE.measureText(zV[v2].wa).width), gE.fillStyle = aZ.ka, gE.fillRect(aK.g5 - qb - zQ, jd, qb + zQ, zp), gE.fillStyle = aZ.gF, gE.fillText(zV[v2].wa, Math.floor(aK.g5 - .5 * zQ), jd + zp))
}(zq - 2 * zp, zp), aY.g0.textAlign(gE, 1), gE.fillText(zk, zo, aK.gA), gE.strokeStyle = aZ.kg, gE.lineWidth = 1, gE.beginPath(), gE.moveTo(0, jd), gE.lineTo(aK.g5, jd), gE.closePath(), gE.stroke())
}
}
function bd() {
var g4, g5, fJ, zs, zt, gN, qW, xV, tz, zu, zv, zw, zx;
this.fI = 0, this.gA = 0, this.cq = function() {
zt = qD, zv = "rgba(0,100,0,0.8)", zw = "rgba(150,0,0,0.8)", xV = !(zu = !0), tz = eV[eU], this.resize()
}, this.resize = function() {
g5 = Math.floor((b7.cv.fv() ? .305 : .24) * aK.fw), this.gA = Math.floor(.5 + .13 * g5), g5 = Math.floor(6 * this.gA), g4 = aY.g0.g1(1, Math.floor(.8 * this.gA)), zx = Math.floor(.5 * this.gA), ap.pJ.font = g4, fJ = b0.gap, zs = Math
.floor(1 + .13 * this.gA), (gN = document.createElement("canvas")).width = g5, gN.height = this.gA, (qW = gN.getContext("2d", {
alpha: !0
})).font = g4, aY.g0.textBaseline(qW, 1), aY.g0.textAlign(qW, 1), this.zy()
}, this.xt = function() {
return b7.cv.fv() && aK.g5 < 1.2 * aK.gA
}, this.yX = function() {
this.xt() ? this.fI = aK.g5 - g5 - b0.gap : this.fI = Math.floor(s.zz() + (aK.g5 - s.zz() - t.g5 - g5) / 2 - .5 * b0.gap)
}, this.j6 = function() {
xV && (xV = !1, this.zy())
}, this.zy = function() {
qW.clearRect(0, 0, g5, this.gA), qW.fillStyle = zu ? zv : zw, qW.fillRect(0, 0, g5, this.gA), qW.fillStyle = aZ.ke, this.a00(), this.a01(), qW.fillStyle = eV[eU] >= a5.i9(eU) ? aZ.l1 : aZ.gF, qW.fillText(aY.jk.jl(tz), Math.floor(g5 / 2),
zx), qW.fillStyle = aZ.gF, qW.fillRect(0, 0, g5, 1), qW.fillRect(0, 0, 1, this.gA), qW.fillRect(0, this.gA - 1, g5, 1), qW.fillRect(g5 - 1, 0, 1, this.gA)
}, this.a00 = function() {
var pw = yR(Math.floor((a5.a02() - 1) * this.gA / 9), this.gA - zs);
qW.fillRect(0, pw, zs, this.gA - pw), qW.fillRect(g5 - zs, pw, zs, this.gA - pw)
}, this.a01 = function() {
qW.fillRect(zs, this.gA - zs, Math.floor((g5 - 2 * zs) * eV[eU] / zt), zs)
}, this.i6 = function() {
0 !== h2[eU] && 2 !== h3[eU] && tz !== eV[eU] && (zt = wC(eV[eU], zt), zu = eV[eU] > tz && 10 <= eV[eU], tz = eV[eU], xV = !0)
}, this.gD = function() {
0 === h2[eU] || fc || 2 === h3[eU] || gE.drawImage(gN, this.fI, fJ)
}
}
function be() {
var a04, a05, a06, a07, a08, a09, a0A, a0B, a0C, a0D, a0E, a0F, a0G, a0H, a0I, a0J, a0K, a0L, a0M, a0N, a0O, a0P, position, a0Q, a0R, a0S, a0T, a0U = 1,
a0V = 1;
function a0Y() {
a0A.clearRect(0, 0, a04, y9),
a0A.fillStyle = aZ.lE,
a0A.fillRect(0, 0, a04, a0F),
a0A.fillStyle = aZ.kZ,
a0A.fillRect(0, a0F, a04, y9 - a0F);
if (leaderboardFilter.enabled) {
leaderboardFilter.filteredLeaderboard = leaderboardFilter.playersToInclude
.map(id => a03[id]).sort((a, b) => a - b);
}
var playerPos = (leaderboardFilter.enabled ?
leaderboardFilter.filteredLeaderboard.indexOf(a03[eU]) :
a03[eU]
);
this.playerPos = playerPos;
if (leaderboardFilter.hoveringOverTabs) a0P = -1;
if (leaderboardFilter.enabled && a0P >= leaderboardFilter.filteredLeaderboard.length) a0P = -1;
playerPos >= position && a0Z(playerPos - position, aZ.kw),
0 !== a03[eU] && 0 === position && a0Z(0, aZ.lJ),
-1 !== a0P && a0Z(a0P, aZ.kd),
a0A.fillStyle = aZ.kZ,
//console.log("drawing", a0P),
a0A.clearRect(0, y9 - leaderboardFilter.tabBarOffset, a04, leaderboardFilter.tabBarOffset);
a0A.fillRect(0, y9 - leaderboardFilter.tabBarOffset, a04, leaderboardFilter.tabBarOffset);
a0A.fillStyle = aZ.gF,
a0A.fillRect(0, a0F, a04, 1),
a0A.fillRect(0, y9 - leaderboardFilter.tabBarOffset, a04, 1),
leaderboardFilter.drawTabs(a0A, a04, y9 - leaderboardFilter.tabBarOffset, aZ.kw),
a0A.fillRect(0, 0, a04, b0.ur),
a0A.fillRect(0, 0, b0.ur, y9),
a0A.fillRect(a04 - b0.ur, 0, b0.ur, y9),
a0A.fillRect(0, y9 - b0.ur, a04, b0.ur), a0A.font = a05, aY.g0.textBaseline(a0A, 1), aY.g0.textAlign(a0A, 1), a0A.fillText(aV.nc[65], Math.floor((a04 + a0F - 22) / 2), Math.floor(a0D + a06 / 2));
playerList.drawButton(a0A, 12, 12, a0F - 22);
var hZ, eh = playerPos < position + a08 - 1 ? 1 : 2;
if (leaderboardFilter.enabled) {
let result = leaderboardFilter.filteredLeaderboard;
if (position !== 0 && position >= result.length - a08)
position = (result.length > a08 ? result.length : a08) - a08;
//if (position >= result.length) position = result.length - 1;
for (a0A.font = a07, aY.g0.textAlign(a0A, 0), hZ = a08 - eh; 0 <= hZ; hZ--) {
const pos = result[hZ + position];
if (pos !== undefined)
a0a(jG[pos]), a0b(hZ, pos, jG[pos]);
}
for (aY.g0.textAlign(a0A, 2), hZ = a08 - eh; 0 <= hZ; hZ--) {
const pos = result[hZ + position];
if (pos !== undefined)
a0a(jG[pos]), a0c(hZ, jG[pos]);
}
} else {
for (a0A.font = a07, aY.g0.textAlign(a0A, 0), hZ = a08 - eh; 0 <= hZ; hZ--)
a0a(jG[hZ + position]), a0b(hZ, hZ + position, jG[hZ + position]);
for (aY.g0.textAlign(a0A, 2), hZ = a08 - eh; 0 <= hZ; hZ--)
a0a(jG[hZ + position]), a0c(hZ, jG[hZ + position]);
}
2 == eh && (a0a(eU), aY.g0.textAlign(a0A, 0), a0b(a08 - 1, a03[eU], eU), aY.g0.textAlign(a0A, 2), a0c(a08 - 1, eU)), 0 === position && (eh = .7 * a0G / a1.get(4).height, a0A.setTransform(eh, 0, 0, eh, Math.floor(a0H + .58 * a0G + .5 * eh * a1
.get(4).width), Math.floor(a0D + a06 + .4 * a0G)), a0A.imageSmoothingEnabled = !0, a0A.drawImage(a1.get(4), -Math.floor(a1.get(4).width / 2), -Math.floor(a1.get(4).height / 2)), a0A.setTransform(1, 0, 0, 1, 0, 0))
}
function a0a(player) {
hM && (a0A.fillStyle = b4.a0e[b4.rf[b4.iM[player]]])
}
function a0Z(eD, v7) {
a0A.fillStyle = v7, eD = a08 - 1 < eD ? a08 - 1 : eD;
v7 = Math.floor((eD === a08 - 1 ? 2 : 0 === eD ? 1.15 : 1) * a0G), v7 = eD === a08 - 2 ? Math.floor(a0F + 9.15 * a0G) - Math.floor(a0F + 8.15 * a0G) : v7;
a0A.fillRect(0, Math.floor(a0F + (eD + (0 === eD ? 0 : .15)) * a0G), a04, v7)
}
function a0b(a0g, a0h, eD) {
a0A.fillText(a0L[a0h], a0H, Math.floor(a0D + a06 + (a0g + .5) * a0G)), 1 === h3[eD] && (a0A.font = "italic " + a07);
a0h = Math.floor(a0D + a06 + (a0g + .5) * a0G);
a0A.fillText(jm[eD], a0I, a0h), 0 !== h3[eD] && (a0A.font = a07), eD < h1 && 2 !== h3[eD] || a0A.fillRect(a0I, a0h + .35 * a0U, a0K[eD], Math.max(1, .1 * a0U))
}
function a0c(a0g, eD) {
a0A.fillText(ez[eD], a0J, Math.floor(a0D + a06 + (a0g + .5) * a0G))
}
function a0q(fJ) {
return (fJ -= b0.gap + a0F) < 0 ? Math.floor(fJ / a0G) - 1 : fJ < (a08 - 1) * a0G ? Math.floor(fJ / a0G) : fJ < y9 - a0F ? a08 - 1 : (fJ -= y9 - a0F, a08 + Math.floor(fJ / a0G))
}
function vU(fI, fJ) {
return fI >= b0.gap && fI < b0.gap + a04 && fJ >= b0.gap && fJ < b0.gap + y9
}
this.cq = function() {
var eD;
for (a0R = !1, a0T = a0S = a0Q = 0, a0P = -1, a08 = b7.cv.fv() ? 6 : 10, a0V = (position = 0) === (a0V = b9.dG.data[11].value) ? 10 : 1 === a0V ? 5 : 1, a0O = !1, a0M = new Uint16Array(a08 + 1), a0N = new Uint32Array(a08 + 1), a0C = ed,
jG = new Uint16Array(a0C), a03 = new Uint16Array(a0C), eD = a0C - 1; 0 <= eD; eD--) jG[eD] = eD, a03[eD] = eD;
this.resize(!0), a0K = new Uint16Array(ed);
var a0W = Math.floor(a04 - a0I - a0H - a0B);
for (a0L = new Array(ed), a0A.font = a07, eD = ed - 1; 0 <= eD; eD--) a0L[eD] = eD + 1 + ".", jm[eD] = aY.qW.tm(a0X[eD], a07, a0W), a0K[eD] = Math.floor(a0A.measureText(jm[eD]).width);
a0Y()
}, this.resize = function(cq) {
if (y9 = b7.cv.fv() ? (a04 = Math.floor(.335 * aK.fw), Math.floor(a08 * a04 / 8)) : (a04 = Math.floor(.27 * aK.fw), Math.floor(a08 * a04 / 10)), a04 = Math.floor(.97 * a04), (a09 = document.createElement("canvas")).width = a04, a09
.height = y9, a0A = a09.getContext("2d", {
alpha: !0
}), a0D = .025 * a04, a06 = .16 * a04, a0E = 0 * a04, a0F = Math.floor(.45 * a0D + a06), a0G = (y9 - a06 - 2 * a0D - a0E) / a08,
a09.height = y9 += a0G, leaderboardFilter.tabBarOffset = Math.floor(a0G * 1.3), leaderboardFilter.verticalClickThreshold = y9 - leaderboardFilter.tabBarOffset, leaderboardFilter.windowWidth = a04,
a05 = aY.g0.g1(1, Math.floor(.55 * a06)), a0U = Math.floor((b7.cv.fv() ? .67 : .72) * a0G), a07 = aY.g0.g1(0, a0U), a0A.font = a07, a0H = Math.floor(.04 * a04), a0I = Math.floor((b7.cv.fv() ? .195 : .18) * a04), a0B = Math.floor(a0A
.measureText("00920600").width), a0A.font = a05, a0J = a04 - a0H, !cq) {
a0A.font = a07;
for (var eD = ed - 1; 0 <= eD; eD--) a0K[eD] = Math.floor(a0A.measureText(jm[eD]).width);
a0Y()
}
}, this.zz = function() {
return a04
}, this.j6 = function(wm) {
a0O && (wm || b3.iK() % a0V == 0) && (a0O = !1, a0Y())
}, this.i6 = function() {
! function() {
for (var hZ = a0C - 1; 0 <= hZ; hZ--) 0 === h2[jG[hZ]] && ! function(hZ) {
var a0o = jG[hZ];
a0C--;
for (var eD = hZ; eD < a0C; eD++) jG[eD] = jG[eD + 1], a03[jG[eD]] = eD;
jG[a0C] = a0o, a03[jG[a0C]] = a0C
}(hZ)
}();
for (var a0m, kM = a0C - 1, hZ = 0; hZ < kM; hZ++) ez[jG[hZ]] < ez[jG[hZ + 1]] && (a0m = jG[hZ], jG[hZ] = jG[hZ + 1], jG[hZ + 1] = a0m, a03[jG[hZ]] = hZ, a03[jG[hZ + 1]] = hZ + 1);
! function() {
for (var dZ = a0O, eh = (a0O = !0, a03[eU] >= a08 - 1 ? a08 - 2 : a08 - 1), eD = eh; 0 <= eD; eD--)
if (a0M[eD] !== jG[eD] || a0N[eD] !== ez[jG[eD]]) return;
(eh != a08 - 2 || a0M[a08] === a03[eU] && a0N[a08] === ez[eU]) && (a0O = dZ)
}();
for (var eD = a08 - 1; 0 <= eD; eD--) a0M[eD] = jG[eD], a0N[eD] = ez[jG[eD]];
a0M[a08] = a03[eU], a0N[a08] = ez[eU]
}, leaderboardFilter.scrollToTop = function() {
position = 0;
}, this.fQ = function(fI, fJ) {
return !!vU(fI, fJ) && ((utils.isPointInRectangle(fI, fJ, b0.gap + 12, b0.gap + 12, a0F - 22, a0F - 22) && playerList.display(jm), true) &&
!(fJ - b0.gap > leaderboardFilter.verticalClickThreshold && leaderboardFilter.handleMouseDown(fI - b0.gap)) && (a0Q = b3.dY, a0R = !0, a0S = a0T = a0q(fJ), ag.tQ() && (fI = yr(-1, a0T, a08), a0P !== (fI = fI === a08 ? -1 : fI)) &&
(a0P = fI, a0Y(), b3.d1 = !0)), !0)
}, leaderboardFilter.repaintLeaderboard = function() {
a0Y(), b3.d1 = !0;
},
this.sk = function(fI, fJ) {
if (utils.isPointInRectangle(fI, fJ, b0.gap + 12, b0.gap + 12, a0F - 22, a0F - 22)) {
playerList.hoveringOverButton === false && (playerList.hoveringOverButton = true, a0Y(), b3.d1 = !0);
} else {
playerList.hoveringOverButton === true && (playerList.hoveringOverButton = false, a0Y(), b3.d1 = !0);
}
if (leaderboardFilter.setHovering(
utils.isPointInRectangle(fI, fJ, b0.gap, b0.gap + leaderboardFilter.verticalClickThreshold, leaderboardFilter.windowWidth, leaderboardFilter.tabBarOffset), fI - b0.gap
)) return;
var dZ, a0p = a0q(fJ);
return a0R ? (dZ = position, (position = yr(0, position += a0S - a0p, ed - a08)) !== dZ && (a0p = (a0p = yr(-1, a0S = a0p, a08)) !== a08 && vU(fI, fJ) ? a0p : -1, a0P = a0p, a0Y(), b3.d1 = !0), !0) : (a0p = (a0p = yr(-1, a0p, a08)) ===
a08 || !vU(fI, fJ) || ag.tQ() ? -1 : a0p, a0P !== a0p && (a0P = a0p, a0Y(), b3.d1 = !0))
}, this.tA = function(fI, fJ) {
if (!a0R) return !1;
a0R = !1;
var a0p = a0q(fJ);
var isEmptySpace = false;
return ag.tQ() && -1 !== a0P && (a0P = -1, a0Y(), b3.d1 = !0), b3.dY - a0Q < 350 && a0T === a0p && -1 !== (a0p = (a0p = yr(-1, a0p, a08)) !== a08 && vU(fI, fJ) ? a0p : -1) && (fI = (leaderboardFilter.enabled ? jG[leaderboardFilter
.filteredLeaderboard[a0p + position] ?? (isEmptySpace = true, a03[eU])] : jG[a0p + position]), a0p === a08 - 1 && (leaderboardFilter.enabled ? this.playerPos : a03[eU]) >=
position + a08 - 1 && (fI = eU), !isEmptySpace && hM && donationsTracker.displayHistory(fI, jm, im), 0 !== h2[fI] && !isEmptySpace) && f.k7(fI, 800, !1, 0), !0
}, this.sn = function(fI, fJ, deltaY) {
var a0r;
return !(a0R || k9 || (a0r = Math.max(Math.floor(Math.abs(deltaY) / 40), 1), !vU(fI, fJ)) || (fI = (fI = yr(-1, a0q(fJ), a08)) === a08 || ag.tQ() ? -1 : fI, 0 < deltaY ? position < ed - a08 && (position += Math.min(ed - a08 - position,
a0r), a0P = fI, a0Y(), b3.d1 = !0) : 0 < position && (position -= Math.min(position, a0r), a0P = fI, a0Y(), b3.d1 = !0), 0))
}, this.gD = function() {
gE.drawImage(a09, b0.gap, b0.gap)
}
}
function bf() {
var gN, qW, fI, fJ, xS, a0s, gap, a0t, fontSize, a0u, a0v, eX, a0w, a0x, a0y, a0z, a10, a11;
function a14() {
qW.clearRect(0, 0, t.g5, t.gA), qW.fillStyle = aZ.ka, qW.fillRect(0, 0, t.g5, t.gA), qW.fillStyle = aZ.kr, fZ = 0 < a0y ? a0y : Math.sqrt(eX[4] / 1e4), qW.fillRect(0, t.gA - xS - 1, Math.floor(fZ * t.g5), xS), qW.fillStyle = aZ.gF, qW
.fillRect(0, 0, t.g5, 1), qW.fillRect(0, 0, 1, t.gA), qW.fillRect(t.g5 - 1, 0, 1, t.gA), qW.fillRect(0, t.gA - 1, t.g5, 1), qW.fillRect(0, t.gA - xS - 1, t.g5, 1);
for (var fZ, a16, dZ = 0, eD = 0; eD < a0v.length; eD++) a0w[eD] ? (aY.g0.textAlign(qW, 0), a16 = Math.floor((a0s - xS + 2 * a0t) * (eD - dZ + 1) / (a0v.length + 1) - .7 * a0t), qW.fillText(a0v[eD], gap, a16), aY.g0.textAlign(qW, 2), 5 ===
eD && 0 !== h2[eU] && eV[eU] >= a5.i9(eU) ? (qW.fillStyle = aZ.lH, qW.fillText(a13(eD), t.g5 - gap, a16), qW.fillStyle = aZ.gF) : qW.fillText(a13(eD), t.g5 - gap, a16)) : dZ++
}
function a13(eD) {
return eD < 3 ? eX[eD].toString() : 3 === eD || 4 === eD || 5 === eD ? aY.jk.uE(eX[eD] / 100, 2) : eD < 7 ? aY.jk.jl(eX[eD]) : eD === 7 ? t.a02(eX[7]) : eD === 8 ? utils.getMaxTroops(ez, eU) : utils.getDensity(eU)
}
function a12() {
ez[eU] !== eX[6] && (eX[6] = ez[eU], a0u++)
}
this.cq = function() {
a0y = a0z = 0, (a0v = new Array(8))[0] = aV.nc[70], a0v[1] = im ? aV.nc[71] : aV.nc[72], a0v[2] = aV.nc[73], a0v[3] = aV.nc[74], a0v[4] = aV.nc[75], a0v[5] = aV.nc[76], a0v[6] = aV.nc[77], a0v[7] = aV.nc[78],
a0v.push("Max Troops", "Density"), // add a0v
a11 = uS - eR(uS, 100), (eX = new Array(a0v.length))[0] = im ? 0 : h1, eX[1] = im ? iN : ig, eX[2] = rU, eX[3] = 0, eX[4] = eR(1e4 * ez[0], uS), eX[5] = 700, eX[6] = 0, a12(), eX[7] = 0, a0x = a13(6), a0w = new Array(a0v.length);
for (var eD = a0v.length - 1; 0 <= eD; eD--) a0w[eD] = !0;
a10 = 0, a10 = im ? (a0w[0] = !1, a0w[2] = !1, a0w[3] = !1, 3) : (a0w[3] = !1, 1), a0u = 0, this.resize()
}, this.resize = function() {
this.g5 = Math.floor((b7.cv.fv() ? .1646 : .126) * 1.25 * aK.fw), this.gA = Math.floor(1.18 * this.g5), xS = Math.floor(.04 * this.g5), gap = Math.floor(.035 * this.g5), a0t = .04 * this.g5, a0s = this.gA, this.gA -= Math.floor(a10 * (
this.gA - 2 * xS) / a0v.length), fontSize = Math.floor(.7 * (a0s - xS) / a0v.length), fontSize = aY.g0.g1(1, fontSize), (gN = document.createElement("canvas")).width = this.g5, gN.height = this.gA, (qW = gN.getContext("2d", {
alpha: !0
})).font = fontSize, aY.g0.textBaseline(qW, 1), qW.lineWidth = 1, this.uM(), this.yX(), r.yX(), a14()
}, this.yX = function() {
fI = aK.g5 - this.g5 - b0.gap
}, this.a15 = function() {
fJ = b0.gap
}, this.uM = function() {
fJ = b0.gap + (r.xt() && 0 !== h2[eU] && !fc ? r.gA + b0.gap : 0)
}, this.j6 = function(wm) {
0 < a0u && (wm || 100 <= a0u) && (a0u = 0, a14())
}, this.vF = function() {
return eX[7]
}, this.a02 = 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.i6 = function() {
var a1G, per;
a0w[0] && rV - rU !== eX[0] && (eX[0] = rV - rU, a0u++), iN - eX[0] !== eX[1] && (eX[1] = iN - eX[0], a0u++), this.iv(), (a1G = a5.a1H(eU)) !== eX[5] && (eX[5] = a1G, a0u++), a12(), eX[7] += b3.a1I, a1G = a13(7), a0x !== a1G && (a0x =
a1G, a0u += 100), a1G = hM ? b5.rh() : ez[jG[0]], per = eR(1e4 * a1G, uS), eX[3] = a1G, eX[4] !== per && (a0u++, eX[4] = per), 8 === ik && function() {
if (0 === h2[0]) ao.rD.rL(1);
else {
if (0 !== h2[1]) return;
ao.rD.rL(0)
}
return 1
}() || eX[3] < a11 || eX[3] !== uS && ! function() {
for (var eD = iN - 1; 0 <= eD; eD--)
if (0 < ea[iO[eD]].length) return;
return 1
}() || ao.rD.rL(-1)
}, this.iv = function() {
a0w[2] && rU !== eX[2] && (eX[2] = rU, a0u++)
}, this.a1J = function(eD) {
var tp, a1K, dZ;
return 2 !== rS && (eD === uW ? (a0y = 0, a14(), !1) : (-1 !== eD || 0 !== a0z) && (a1K = a0y, a0y = fL ? eD / uW : (dZ = performance.now(), 0 <= eD && (tp = dZ - 392 * eD, a0z = 0 === eD || tp < a0z ? tp : a0z), 1 < (a0y = (dZ - a0z) / (
392 * uW)) ? 1 : a0y), a14(), a0y !== a1K))
}, this.gD = function() {
gE.drawImage(gN, fI, fJ)
}
}
function bg() {
var t8, a1L, g5, gA, xM, a1M, a1N, xu, gN, jy, a1O;
function gC() {
return Math.floor((aK.g5 - g5) / 2) < o.gA + 2 * b0.gap ? aK.gA - gA - 4 * b0.gap - o.gA : aK.gA - gA - 2 * b0.gap
}
this.a1P = -1, this.cq = function() {
a1O = t8 = !1, xM = .61, a1M = .07, a1N = .09, jy = xu = gA = 0, this.a1P = -1
}, this.resize = function() {
var qW, jc, iL, a1U, a1V, vd;
t8 && (g5 = yR(g5 = b7.cv.fv() ? Math.floor(.69 * aK.fw) : Math.floor(.5 * aK.fw), wC(aK.g5 - 2 * b0.gap, 10)), g5 = yR(g5, Math.floor(3.57 * wC(aK.gA - 2 * b0.gap, 3))), gA = Math.floor(.28 * g5), (gN = document.createElement("canvas"))
.width = g5, gN.height = gA, qW = gN.getContext("2d", {
alpha: !0
}), jc = Math.floor(1 + gA / 40), qW.clearRect(0, 0, g5, gA), qW.fillStyle = aZ.ka, qW.fillRect(jc, jc, g5 - 2 * jc, gA - 2 * jc), qW.lineJoin = "bevel", qW.lineWidth = 2 * jc, qW.strokeStyle = aZ.gF, qW.strokeRect(jc, jc, g5 -
2 * jc, gA - 2 * jc), qW.imageSmoothingEnabled = !0, iL = a1.get(a1L), a1U = iL.width, a1V = iL.height, vd = (21 === a1L ? .666 : 1) * xM * gA / a1V, qW.setTransform(vd, 0, 0, vd, Math.floor((g5 - vd * a1U) / 2), Math.floor((
gA - vd * a1V) / 2)), qW.drawImage(iL, 0, 0), qW.setTransform(1, 0, 0, 1, Math.floor(g5 - a1N * gA - a1M * gA - jc), Math.floor(jc + a1M * gA)),
function(qW, eZ) {
qW.lineWidth = Math.floor(1 + gA / 80), qW.strokeStyle = aZ.gF, qW.beginPath(), qW.moveTo(0, 0), qW.lineTo(eZ, eZ), qW.moveTo(0, eZ), qW.lineTo(eZ, 0), qW.stroke()
}(qW, Math.floor(a1N * gA)), qW.setTransform(1, 0, 0, 1, 0, 0))
}, this.show = function(db, a1R, a1S, a1T) {
t8 || a1T && a1O || (a1L = a1S ? 21 : db ? 1 : 2, t8 = a1O = !0, this.resize(), i.o3(), o.yM(), jy = b3.dY, -1 === this.a1P && (this.a1P = b3.iK()), xu = a1R ? 1 : 0)
}, this.i6 = function() {
!t8 || 1 <= xu || (xu = 1 < (xu += 5e-4 * (b3.dY - jy)) ? 1 : xu, jy = b3.dY, b3.d1 = !0)
}, this.fQ = function(fI, fJ) {
return !(!t8 || xu <= 0 || (fI -= Math.floor((aK.g5 - g5) / 2), fJ -= gC(), fI < 0) || fJ < 0 || g5 < fI || gA < fJ || (g5 - gA / 3 < fI && fJ < gA / 3 && (t8 = !1, b3.d1 = !0), 0))
}, this.gD = function() {
!t8 || xu <= 0 || (gE.globalAlpha = xu, gE.drawImage(gN, Math.floor((aK.g5 - g5) / 2), gC()), gE.globalAlpha = 1)
}
}
function cg() {
this.a1X = !1, this.kU = !1, this.uQ = !1, this.a1Y = [0, 0, 0, 0], this.a1Z = function() {
var jc, jd, je, jf;
this.uQ = this.uQ || this.kU, (this.kU || this.a1X && this.uQ) && (jc = ax.a1a[0], jd = ax.a1a[1], je = ax.a1a[2], jf = ax.a1a[3], jc = jc < this.a1Y[0] ? this.a1Y[0] : jc, jd = jd < this.a1Y[1] ? this.a1Y[1] : jd, je = je > this.a1Y[2] ?
this.a1Y[2] : je, jf = jf > this.a1Y[3] ? this.a1Y[3] : jf, this.kU = !1, this.a1X = !1, jc === this.a1Y[0] && jd === this.a1Y[1] && je === this.a1Y[2] && jf === this.a1Y[3] ? this.uR() : jc <= je && jd <= jf && uk.putImageData(
ul, 0, 0, jc, jd, je - jc + 1, jf - jd + 1))
}, this.uR = function() {
this.uQ && this.a1Y[2] >= this.a1Y[0] && this.a1Y[3] >= this.a1Y[1] && uk.putImageData(ul, 0, 0, this.a1Y[0], this.a1Y[1], this.a1Y[2] - this.a1Y[0] + 1, this.a1Y[3] - this.a1Y[1] + 1), this.uQ = !1
}, this.ra = function() {
this.a1Y[2] >= this.a1Y[0] && this.a1Y[3] >= this.a1Y[1] && uk.putImageData(ul, 0, 0, this.a1Y[0], this.a1Y[1], this.a1Y[2] - this.a1Y[0] + 1, this.a1Y[3] - this.a1Y[1] + 1), this.uQ = !1
}, this.cq = function() {
var fI, fJ;
this.a1X = !1, this.kU = !1, this.uQ = !1, this.a1Y[0] = ap.e8, this.a1Y[1] = ap.e9, this.a1Y[2] = this.a1Y[3] = 0;
loop: for (fI = 1; fI < ap.e8 - 1; fI++)
for (fJ = ap.e9 - 2; 1 < fJ; fJ--)
if (1 === a1b[a2.q4(fI, fJ) + 2]) {
this.a1Y[0] = fI;
break loop
} loop: for (fJ = 1; fJ < ap.e9 - 1; fJ++)
for (fI = ap.e8 - 2; 1 < fI; fI--)
if (1 === a1b[a2.q4(fI, fJ) + 2]) {
this.a1Y[1] = fJ;
break loop
} loop: for (fI = ap.e8 - 2; 0 < fI; fI--)
for (fJ = ap.e9 - 2; 1 < fJ; fJ--)
if (1 === a1b[a2.q4(fI, fJ) + 2]) {
this.a1Y[2] = fI;
break loop
} loop: for (fJ = ap.e9 - 2; 0 < fJ; fJ--)
for (fI = ap.e8 - 2; 1 < fI; fI--)
if (1 === a1b[a2.q4(fI, fJ) + 2]) {
this.a1Y[3] = fJ;
break loop
}
}
}
function cX() {
this.nc = null;
var a1c, a1d = new a1e;
this.cq = function() {
a1c = 0 === b9.dG.data[0].value ? a1d : new(1 === b9.dG.data[0].value ? a1f : 2 === b9.dG.data[0].value ? a1g : 3 === b9.dG.data[0].value ? a1h : a1i);
var eD, eZ = a1d.nc.length,
pB = a1c.nc.length;
for (eD = 0; eD < eZ; eD++) pB === eD ? (a1c.nc.push(a1d.nc[eD]), pB++) : 0 === a1c.nc[eD].length && (a1c.nc[eD] = a1d.nc[eD]);
this.nc = a1c.nc, b9.dG.translate()
}, this.ob = 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 : 0
}, this.sM = function(iL) {
for (var eh, eZ = this.nc.length, eD = 0; eD < eZ; eD++)
if (this.nc[eD].startsWith("{") && (eh = this.nc[eD].replace("{" + iL + "}", "")).length < this.nc[eD].length) return eh;
return iL
}, this.sL = function(fz, a1k, nt) {
var eD, hi, eZ, fy;
if (!a1k) return this.nc[fz];
for (eZ = a1k.length, fy = this.nc[fz], eD = 0; eD < eZ; eD++)
if (Number.isInteger(a1k[eD]))
for (hi = a1c.a1l.length - 1; 0 <= hi; hi--) fy = fy.replace("{" + (20 * (hi + 1) + eD) + "}", (2 === hi ? 1 !== a1k[eD] : 1 === a1k[eD]) ? "" : a1c.a1l[hi]);
if (nt) {
if (nt.wR)
for (eD = 0; eD < nt.wR.length; eD++) a1k[nt.wR[eD]] = aY.jk.jl(a1k[nt.wR[eD]]);
if (nt.wj)
for (eD = 0; eD < nt.wj.length; eD++) a1k[nt.wj[eD]] = aY.jk.uE(100 * a1k[nt.wj[eD]], 1)
}
for (eD = 0; eD < eZ; eD++) fy = fy.replace("{" + eD + "}", a1k[eD]);
return fy
}
}
function a1e() {
this.a1l = ["s"], this.nc = ["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",
"Agreeing to peace concludes the game 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", "Mobile Friendly", "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", "", ""
]
}
function a1i() {
this.a1l = ["n", "en", "r"], this.nc = ["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"
]
}
function a1m() {
this.a1l = ["s", ""], this.nc = ["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}", "New Game Update", "{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",
"Agreeing to peace concludes the game 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", "Mobile Friendly", "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"
]
}
function a1f() {
this.a1l = [], this.nc = ["Принять", "Вы стерли {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 a1h() {
this.a1l = ["", ""], this.nc = ["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"
]
}
function a1g() {
this.a1l = ["", ""], this.nc = ["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"
]
}
function cx() {
this.t8 = !1, this.vn = null, this.a1n = 0, this.g5 = null, this.gA = null, this.a1o = .013, this.a1p = .022, this.a1q = .025;
this.a1s = 3, this.a1t = 1.2, this.a1u = .2, this.a1v = .235, this.a1w = .9, this.a1x = .08;
var a1y, ts = ["Best Players", "Best Clans", "LEGENDS NEVER DIE", "THE NEVER ENDING WAR"],
a1z = [-1e6, -1e6];
this.position = [0, 0], this.a21 = [0, 0], this.cq = function() {
this.vn = [null, null], this.t8 = !1, this.a1n = 0
}, this.gB = function(id) {
this.t8 = !0, this.resize(), this.a1n = id, this.g2(), y.gB(!1), b3.d1 = !0
}, this.i6 = function() {
this.t8 && this.g2()
}, this.g2 = function() {
b3.dY - 12e4 >= a1z[this.a1n] && (a1z[this.a1n] = b3.dY, this.a21 = [0, 0], aN.la.a22(0, this.a1n))
}, this.resize = function() {
if (this.t8) {
var eD;
for (this.g5 = this.a23(b7.cv.fv() ? .85 : .66, .75, aK.g5, aK.gA), this.gA = Math.floor(this.g5 / .75), eD = 1; 0 <= eD; eD--) this.vn[eD] && (this.vn[eD][4] = aY.g0.g1(1, this.vn[eD][5] * this.gA / 10));
a1y = aY.g0.g1(1, .1 * this.gA)
}
}, this.a23 = function(ft, gM, g5, gA) {
return g5 < gM * gA ? Math.floor(ft * g5) : Math.floor(gM * ft * gA)
}, this.a24 = function(fz, a25, a26, uA, a27, a28, a0g) {
this.position[fz] = a0g;
for (var xr, size = a25.length, g4 = aY.g0.g1(1, a27 * this.gA / 10), dl = (this.a29(a25, g4, a28 * this.g5), [
[], size, -1, uA, g4, a27, 10 * a0g
]), eD = 0; eD < size; eD++) xr = {
name: a25[eD].name,
value: a25[eD].qj / a26,
colorIndex: a25[eD].colorIndex
}, dl[0].push(xr);
this.vn[fz] = dl, this.a2A(fz);
a28 = this.vn[fz][0][0].name;
1 === fz && (a28 = "[" + a28 + "]"), 0 === a0g && aw.fx(fz, a28), b3.d1 = !0
}, this.a2A = function(eD) {
this.vn[eD][0].sort(function(hZ, hi) {
return hi.value - hZ.value
})
}, this.ne = function(fz, name, a2B, a2C) {
if (this.vn && this.vn[fz]) {
var eD, wb = !1;
if (0 === fz) {
for (eD = 0; eD < this.vn[fz][0].length; eD++)
if (name === this.vn[fz][0][eD].name && a2B > .99 * this.vn[fz][0][eD].value && a2B < 1.01 * this.vn[fz][0][eD].value) {
this.vn[fz][0][eD].value = a2C, wb = !0;
break
} wb || this.vn[fz][0].push({
name: name,
value: a2C
})
} else {
for (eD = 0; eD < this.vn[fz][0].length; eD++)
if (name === this.vn[fz][0][eD].name) {
this.vn[fz][0][eD].value += 32 < this.vn[fz][0][eD].value ? (64 - this.vn[fz][0][eD].value) / 256 : .25, this.vn[fz][0][eD].value *= 1 / (383 / 384), wb = !0;
break
} for (eD = 0; eD < this.vn[fz][0].length; eD++) this.vn[fz][0][eD].value *= 383 / 384;
wb || this.vn[fz][0].push({
name: name,
value: .25
})
}
this.a2A(fz)
}
}, this.a29 = function(a25, g4, g6) {
for (var eD = a25.length - 1; 0 <= eD; eD--)
for (; 3 < a25[eD].name.length && n.measureText(a25[eD].name, g4) > g6;) a25[eD].name = a25[eD].name.substring(0, a25[eD].name.length - 4) + "..."
}, this.fQ = function(gq, gr) {
return !!this.t8 && (gq -= (aK.g5 - this.g5) / 2, gr -= (aK.gA - this.gA) / 2, gq < 0 || gq > this.g5 || gr < 0 || gr > this.gA ? (this.t8 = !1, 0 === x.s1() && y.gB(!0), b3.d1 = !0) : (gr = gr < .3 * this.gA ? 1 : gr < .85 * this.gA ? (
gr = (0 === this.a1n ? 14.1 : 3) * (gr - .3 * this.gA) / (.55 * this.gA), Math.floor(1 + gr * gr)) : 0 === this.a1n ? 200 : 10, gq < this.g5 / 2 ? this.a21[this.a1n] = -gr : this.a21[this.a1n] = gr, a1z[this.a1n] + 50 > b3
.dY || (a1z[this.a1n] = b3.dY, aN.la.a22(0, this.a1n)), !0))
}, this.gD = function() {
var jc, jd, qb, qc, a2D, a2E, a2F, vo;
this.t8 && (jc = (aK.g5 - this.g5) / 2, jd = (aK.gA - this.gA) / 2, qb = this.a1o * this.g5, qc = this.a1s * qb, a2D = this.a1p * this.g5, a2E = this.a1t * a2D, a2F = this.a1q * this.g5, vo = Math.floor(.25 * this.gA), gE.setTransform(1,
0, 0, 1, jc, jd), gE.fillStyle = 0 === this.a1n ? aZ.lA : aZ.l7, gE.fillRect(0, 0, this.g5, vo), gE.fillStyle = aZ.kZ, gE.fillRect(0, vo, this.g5, this.gA - vo), gE.fillStyle = aZ.gF, gE.font = a1y, aY.g0.textBaseline(gE, 1),
aY.g0.textAlign(gE, 1), gE.fillText(ts[this.a1n], Math.floor(this.g5 / 2), Math.floor(.135 * this.gA)), gE.font = aY.g0.g1(1, .025 * this.gA), gE.fillText(ts[this.a1n + 2], Math.floor(this.g5 / 2), Math.floor(.2125 * this.gA)), gE
.beginPath(), gE.moveTo(this.g5 / 4, 0), gE.lineTo(this.g5 / 2 - qb, 0), gE.lineTo(this.g5 / 2, -qc), gE.lineTo(this.g5 / 2 + qb, 0), gE.lineTo(this.g5 - a2D, 0), gE.lineTo(this.g5 + a2E, -a2E), gE.lineTo(this.g5, a2D), gE.lineTo(
this.g5, this.gA / 2 - qb), gE.lineTo(this.g5 + qc, this.gA / 2), gE.lineTo(this.g5, this.gA / 2 + qb), gE.lineTo(this.g5, this.gA - a2D), gE.lineTo(this.g5 + a2E, this.gA + a2E), gE.lineTo(this.g5 - a2D, this.gA), gE.lineTo(
this.g5 / 2 + qb, this.gA), gE.lineTo(this.g5 / 2, this.gA + qc), gE.lineTo(this.g5 / 2 - qb, this.gA), gE.lineTo(a2D, this.gA), gE.lineTo(-a2E, this.gA + a2E), gE.lineTo(0, this.gA - a2D), gE.lineTo(0, this.gA / 2 + qb), gE
.lineTo(-qc, this.gA / 2), gE.lineTo(0, this.gA / 2 - qb), gE.lineTo(0, a2D), gE.lineTo(-a2E, -a2E), gE.lineTo(a2D, 0), gE.lineTo(this.g5 / 4, 0), gE.lineTo(this.g5 / 4, a2F), gE.lineTo(a2F, a2F), gE.lineTo(a2F, this.gA - a2F), gE
.lineTo(this.g5 - a2F, this.gA - a2F), gE.lineTo(this.g5 - a2F, a2F), gE.lineTo(this.g5 / 4, a2F), gE.fill(), this.vn[this.a1n] && this.a2G(vo), this.a2H(vo), gE.setTransform(1, 0, 0, 1, 0, 0))
}, this.a2H = function(vo) {
var qb = wC(2, Math.floor(.06 * this.g5)),
xM = (qb -= qb % 2, wC(2, Math.floor(.01 * this.g5))),
vo = (xM -= xM % 2, Math.floor(.82 * vo));
gE.fillRect(qb, vo, qb, xM), gE.fillRect(this.g5 - qb - qb, vo, qb, xM), gE.fillRect(Math.floor(this.g5 - qb - qb + (qb - xM) / 2), Math.floor(vo - (qb - xM) / 2), xM, qb)
}, this.a2G = function(vo) {
var fJ;
gE.font = this.vn[this.a1n][4];
for (var eD = this.vn[this.a1n][1] - 1; 0 <= eD; eD--) aY.g0.textAlign(gE, 2), fJ = Math.floor(this.a1x * this.gA + vo + eD * ((1 - 2 * this.a1x) * this.gA - vo) / 9), gE.fillText(this.vn[this.a1n][0][eD].value.toFixed(this.vn[this.a1n][
3]), Math.floor(this.a1w * this.g5), fJ), gE.fillText(eD + 1 + this.vn[this.a1n][6] + ".", Math.floor(this.a1u * this.g5), fJ), aY.g0.textAlign(gE, 0), gE.fillText(this.vn[this.a1n][0][eD].name, Math.floor(this.a1v * this.g5), fJ)
}
}
function cy() {
var fI, fJ, gA, a2I, a2J, a2K, a2L, a2M, a2N, g5, a2O, a2P;
this.t8 = !1, this.cq = function(fy, a2Q) {
if (13 <= b7.dc && b7.dc < 18) return a2Q ? void(a2O = fy) : a2O !== fy ? void 0 : void b7.oW.saveString(200, fy);
a2Q && ((a8.vn[1].rN.t8 || a8.vn[2].rN.t8) && a8.tL(), y.gB(!1), a2O = fy, (a2P = document.createElement("a")).appendChild(document.createTextNode(a2O)), this.t8 = !0, a2P.title = a2O, a2P.target = "_blank", a2P.href = a2O, a2P.style
.textAlign = "center", a2P.style.color = aZ.gF, a2P.style.position = "absolute", a2P.style.padding = "0px", a2P.style.margin = "0px", this.resize(), document.body.appendChild(a2P), b3.d1 = !0)
}, this.o3 = function() {
return !(!this.t8 || (document.body.removeChild(a2P), this.t8 = !1))
}, this.fQ = function(gq, gr) {
return !!this.t8 && ((gq < fI || gr < fJ || fI + g5 < gq || fJ + gA < gr || fI + g5 - a2I < gq && gr < fJ + a2I) && (b3.d1 = !0, this.t8 = !1, document.body.removeChild(a2P), 0 === x.s1()) && y.gB(!0), !0)
}, this.resize = function() {
var g4, a2R;
this.t8 && (a2M = Math.floor(.8 * (b7.cv.fv() ? aK.g5 > aK.gA ? .6 : .55 : .4) * aK.fw), a2I = Math.floor(.15 * a2M), a2J = Math.floor(.35 * a2I), a2K = Math.floor(.5 * a2I), a2L = Math.floor(2.5 * a2K), gA = a2I + a2J + 3 * a2K, g4 = aY
.g0.g1(1, a2J / aK.nH), a2N = Math.floor(aK.nH * n.measureText(a2O, g4)), a2R = g5 = (a2M < a2N ? a2N : a2M) + 2 * a2L, g5 = Math.min(g5, aK.g5 - 2 * (b7.cv.fv() ? 2 : 1) * b0.gap), g4 = aY.g0.g1(1, g5 / a2R * a2J / aK.nH), a2N =
Math.floor(aK.nH * n.measureText(a2O, g4)), fI = Math.floor((aK.g5 - g5) / 2), fJ = Math.floor((aK.gA - gA) / 2), a2P.style.font = g4, a2P.style.top = Math.floor((fJ + 1.4 * a2K + a2I) / aK.nH) + "px", a2P.style.left = Math.floor(
(fI + (g5 - a2N) / 2) / aK.nH) + "px")
}, this.gD = function() {
this.t8 && (gE.fillStyle = aZ.ka, gE.fillRect(fI, fJ + a2I, g5, gA - a2I), gE.fillStyle = aZ.lP, gE.fillRect(fI, fJ, g5, a2I), gE.fillStyle = aZ.gF, gE.lineWidth = b0.ur, gE.strokeStyle = aZ.gF, gE.strokeRect(fI, fJ, g5, gA), gE.fillRect(
fI, fJ + a2I, g5, b0.ur), gE.font = aY.g0.g1(1, .48 * a2I), aY.g0.textAlign(gE, 1), aY.g0.textBaseline(gE, 1), gE.fillText("You are leaving Territorial.io!", Math.floor(fI + (g5 - .5 * a2I) / 2), Math.floor(fJ + .55 * a2I)), j
.vl(Math.floor(fI + g5 - .8 * a2I), Math.floor(fJ + .25 * a2I), Math.floor(.5 * a2I)), gE.setTransform(1, 0, 0, 1, 0, 0))
}
}
function cu() {
var gap, a0v, fI = [0, 0, 0, 0, 0],
fJ = [0, 0, 0, 0, 0],
kH = [1, 1, 1, 1, 1],
db = [!0, !0, !1, !1, !1],
iL = (this.dr = [!0, !0, !1, !1, !1], null);
this.a2S = function(v4, a2T) {
iL = v4, db = a2T, a0v = [ah.a2U, ah.sF, ah.a2V, ah.a2W, ah.a2X], this.cq()
}, this.cq = function() {
if (a1.g3()) {
var eD, qb = Math.floor((b7.cv.fv() ? .261 : .195) * aK.fw),
qc = Math.floor(.9 * qb),
xM = Math.floor(.17 * qc);
if (gap = b7.cv.fv() ? 2 * b0.gap : b0.gap, kH[0] = qb / iL[0].width, kH[1] = qc / iL[1].width, kH[2] = xM / iL[2].height, kH[3] = xM / iL[3].height, kH[4] = xM / iL[4].height, kH[3] *= 1.07, fI[0] = gap, fI[1] = gap, fI[2] = gap, fI[
3] = gap, fI[4] = Math.floor(2 * gap + kH[3] * iL[3].width), fJ[0] = gap, fJ[1] = fJ[0] + gap + kH[0] * iL[0].height, fJ[2] = fJ[1] + gap + kH[1] * iL[1].height, fJ[3] = fJ[2] + gap + kH[2] * iL[2].height, fJ[4] = fJ[3], !db[
0])
for (eD = 0; eD < 5; eD++) fJ[eD] -= kH[0] * iL[0].height + gap;
if (!db[1])
for (eD = 2; eD < 5; eD++) fJ[eD] -= kH[1] * iL[1].height + gap
}
}, this.t8 = function() {
return !(7 === x.s1() && b7.cv.fv())
}, this.fQ = function(gq, gr, a2Q) {
if (iL && this.t8())
for (var eD = db.length - 1; 0 <= eD; eD--)
if (db[eD] && this.dr[eD] && fI[eD] < gq && fJ[eD] < gr && gq < fI[eD] + kH[eD] * iL[eD].width && gr < fJ[eD] + kH[eD] * iL[eD].height) return av.cq(a0v[eD], a2Q), !0;
return !1
}, this.gD = function() {
if (iL && this.t8()) {
var eD;
for (gE.imageSmoothingEnabled = !0, eD = 0; eD < 5; eD++) db[eD] && this.dr[eD] && (gE.setTransform(kH[eD], 0, 0, kH[eD], fI[eD], fJ[eD]), gE.drawImage(iL[eD], 0, 0));
gE.setTransform(1, 0, 0, 1, 0, 0)
}
}
}
function bh() {
var a1n, a2Y, a2Z;
function a2e(eD) {
var button = v.nU[eD],
fI = button.fI,
fJ = button.fJ,
g5 = button.g5,
gA = button.gA;
gE.fillStyle = button.a2c, gE.fillRect(fI, fJ, g5, gA), eD === a1n && (gE.fillStyle = a2Z, gE.fillRect(fI, fJ, g5, gA)), gE.lineWidth = b0.ur, gE.strokeStyle = a2Y, gE.strokeRect(fI, fJ, g5, gA),
function(button) {
var fI = button.fI,
fJ = button.fJ,
g5 = button.g5,
gA = button.gA;
aY.g0.textAlign(gE, 1), aY.g0.textBaseline(gE, 1), gE.font = button.font, gE.fillStyle = a2Y, gE.fillText(button.nc, Math.floor(fI + g5 / 2), Math.floor(fJ + gA / 2 + .1 * button.fontSize))
}(button)
}
this.g5 = 0, this.gA = 0, this.fJ = 0, this.gap = 0, this.cq = function() {
a1n = -1, a2Y = aZ.gF, a2Z = "rgba(255,255,255,0.16)", this.nU = new Array(7), this.gA = Math.floor((b7.cv.fv() ? .123 : .093) * aK.fw), this.g5 = Math.floor((b7.cv.fv() ? 3.96 : 4.2) * this.gA), this.gap = Math.floor(.025 * this.g5);
var a2a = Math.floor(.26 * this.gA),
a2b = aY.g0.g1(1, a2a);
this.nU[0] = {
fI: 0,
fJ: 0,
g5: Math.floor(.6 * this.g5 - this.gap / 2),
gA: this.gA,
nc: "Multiplayer",
font: a2b,
a2c: "rgba(22,88,22,0.8)",
fontSize: a2a
}, a2a = Math.floor(.18 * this.gA), a2b = aY.g0.g1(1, a2a), this.nU[1] = {
fI: 0,
fJ: 0,
g5: this.g5 - this.nU[0].g5 - this.gap,
gA: this.gA,
nc: "Single Player",
font: a2b,
a2c: "rgba(22,88,88,0.8)",
fontSize: a2a
}, this.nU[2] = {
fI: 0,
fJ: 0,
g5: this.g5,
gA: Math.floor(.3 * this.gA),
nc: "",
font: this.nU[1].font,
a2c: "rgba(100,0,0,0.8)",
fontSize: this.nU[1].fontSize
}, this.nU[3] = {
fI: 0,
fJ: 0,
g5: this.g5,
gA: this.gA,
nc: "Back",
font: this.nU[0].font,
a2c: "rgba(0,0,0,0.8)",
fontSize: this.nU[0].fontSize
}, this.nU[4] = {
fI: 0,
fJ: 0,
g5: this.g5,
gA: Math.floor(.3 * this.gA),
nc: "The game was updated!",
font: this.nU[1].font,
a2c: "rgba(100,0,0,0.8)",
fontSize: this.nU[1].fontSize
}, this.nU[5] = {
fI: 0,
fJ: 0,
g5: this.nU[0].g5,
gA: Math.floor(.8 * this.gA),
nc: "Reload",
font: this.nU[0].font,
a2c: "rgba(0,100,0,0.8)",
fontSize: this.nU[0].fontSize
}, this.nU[6] = {
fI: 0,
fJ: 0,
g5: this.nU[1].g5,
gA: this.nU[5].gA,
nc: "Back",
font: this.nU[0].font,
a2c: "rgba(0,0,0,0.8)",
fontSize: this.nU[0].fontSize
}, this.ze()
}, this.ze = function() {
this.fJ = Math.floor(.54 * aK.gA), this.nU[0].fI = Math.floor(.5 * aK.g5 - .5 * this.g5), this.nU[1].fI = this.nU[0].fI + this.nU[0].g5 + this.gap, this.nU[2].fI = this.nU[3].fI = this.nU[0].fI, this.nU[4].fI = this.nU[5].fI = this.nU[0]
.fI, this.nU[6].fI = this.nU[1].fI, this.nU[0].fJ = Math.floor(.54 * aK.gA), this.nU[1].fJ = this.nU[0].fJ, this.nU[2].fJ = Math.floor((aK.gA - this.nU[2].gA - this.nU[3].gA - this.gap) / 2), this.nU[3].fJ = this.nU[2].fJ + this.nU[2]
.gA + this.gap, this.nU[4].fJ = Math.floor((aK.gA - this.nU[4].gA - this.nU[5].gA - this.gap) / 2), this.nU[5].fJ = this.nU[6].fJ = this.nU[4].fJ + this.nU[4].gA + this.gap
}, this.a2d = function() {
a2e(0), a2e(1)
}, this.a2f = function() {
a2e(2), a2e(3)
}, this.a2g = function() {
a2e(4), a2e(5), a2e(6)
}, this.sk = function(fI, fJ, j6) {
var eD = -1;
return 0 === x.s1() ? eD = this.tF(fI, fJ, 0, 2) : 3 === x.s1() ? eD = this.tF(fI, fJ, 3, 1) : 5 === x.s1() && (eD = this.tF(fI, fJ, 5, 2)), a1n !== eD && (a1n = eD, j6) && (b3.d1 = !0), -1 !== eD && (q.t9(), !0)
}, this.tF = function(fI, fJ, a2h, size) {
for (var eD = a2h; eD < a2h + size; eD++)
if (fI >= this.nU[eD].fI && fJ >= this.nU[eD].fJ && fI <= this.nU[eD].fI + this.nU[eD].g5 && fJ <= this.nU[eD].fJ + this.nU[eD].gA) return eD;
return -1
}
}
function a2j() {
function a2p(v7) {
return v7 < 0 ? 0 : 255 < v7 ? 255 : Math.floor(v7)
}
this.g5 = 0, this.gA = 0, this.t8 = !1, this.a2k = 0, this.gap = 0, this.x8 = 0, this.a2I = 0, this.a2l = 0, this.a2m = 0, this.a2n = 0, this.colors = null, this.cq = function() {
this.t8 = !0, this.a2k = 0, this.resize()
}, this.resize = function() {
this.t8 && (aK.g5 < 1.4 * aK.gA ? this.g5 = Math.floor((b7.cv.fv() ? .94 : .43) * aK.g5) : (this.gA = Math.floor((b7.cv.fv() ? .88 : .43) * aK.gA), this.g5 = Math.floor(1.4 * this.gA)), this.gA = this.g5 / 1.4, this.gap = this.g5 / 32,
this.a2I = Math.floor(.25 * this.gA), this.a2l = (this.gA - this.a2I - 3 * this.gap) / 2, this.a2m = this.g5 - 3 * this.gap - this.a2l, this.a2n = (this.gA - this.a2I - 4 * this.gap) / 3)
}, this.a2o = function() {
this.colors = [
[0, 0, 0],
[0, 0, 0]
];
var fy = b9.dG.data[103].value.split("");
if (fy.length < 6)
for (var hi = 2; 0 <= hi; hi--) this.colors[0][hi] = a2p(256 * Math.random());
else
for (var eD = 2; 0 <= eD; eD--) this.colors[0][eD] = a2p(4 * (10 * parseInt(fy[2 * eD]) + parseInt(fy[2 * eD + 1])));
this.a2q()
}, this.a2r = function() {
return [eR(this.colors[0][0], 4), eR(this.colors[0][1], 4), eR(this.colors[0][2], 4)]
}, this.sn = function(g8, g9, deltaY) {
var jc = (aK.g5 - this.g5) / 2;
g9 -= (aK.gA - this.gA) / 2 + this.a2I, (g8 -= jc) < 0 || g9 < 0 || g8 >= this.g5 || g9 >= this.gA - this.a2I || (jc = Math.floor(3 * g9 / (this.gA - this.a2I)), this.colors[this.x8][jc] = a2p(this.colors[this.x8][jc] + (deltaY < 0 ? 1 :
-1) * Math.max(Math.abs(.05 * deltaY), 1)), b3.d1 = !0)
}, this.fQ = function(g8, g9) {
this.a2k = 0;
var jc = (aK.g5 - this.g5) / 2;
return g9 -= (aK.gA - this.gA) / 2, (g8 -= jc) < 0 || g9 < 0 || g8 >= this.g5 - 1 || g9 >= this.gA - 1 || g8 > this.g5 - (.4 * this.a2I + 3 * this.gap) && g9 < this.a2I ? (this.t8 = !1, 0 === x.s1() && y.gB(!0), !(b3.d1 = !0)) : g8 < this
.gap || g9 < this.gap + this.a2I || g8 >= this.g5 || g9 >= this.gA - this.gap || (g8 < this.gap + this.a2l ? (g9 < this.gap + this.a2I + this.a2l && 0 !== this.x8 && (this.x8 = 0, b3.d1 = !0), !0) : g8 < this.gap + this.a2l || (g8 -=
2 * this.gap + this.a2l, g9 < this.gap + this.a2I + this.a2n ? (this.a2k = 1, this.colors[this.x8][0] = a2p(256 * g8 / this.a2m), b3.d1 = !0) : g9 < 2 * this.gap + this.a2I + this.a2n || (g9 < 2 * this.gap + this.a2I + 2 *
this.a2n ? (this.a2k = 2, this.colors[this.x8][1] = a2p(256 * g8 / this.a2m), b3.d1 = !0) : !(g9 >= 3 * this.gap + this.a2I + 2 * this.a2n) || (this.a2k = 3, this.colors[this.x8][2] = a2p(256 * g8 / this.a2m), b3.d1 = !0))
))
}, this.a2q = function() {
for (var hi = 2; 0 <= hi; hi--) this.colors[0][hi] = a2p(this.colors[0][hi])
}, this.a2s = function() {
for (var db, fy = "", eD = 0; eD < 3; eD++)(db = eR(this.colors[0][eD], 4)) < 10 && (fy += "0"), fy += db.toString();
return fy
}, this.sk = function(g8) {
0 !== this.a2k && (g8 -= 2 * this.gap + this.a2l + (aK.g5 - this.g5) / 2, this.colors[this.x8][this.a2k - 1] = a2p(256 * g8 / this.a2m), b3.d1 = !0)
}, this.a2t = function() {
0 < this.a2k && (this.a2k = 0, this.a2q(), b9.nd.ne(103, this.a2s()), b3.d1 = !0)
}, this.gD = function() {
var jc = (aK.g5 - this.g5) / 2,
jd = (aK.gA - this.gA) / 2;
gE.setTransform(1, 0, 0, 1, jc, jd), gE.fillStyle = aZ.ka, gE.fillRect(0, this.a2I, this.g5, this.gA - this.a2I), gE.fillStyle = aZ.kl, gE.fillRect(0, 0, this.g5, this.a2I), gE.fillStyle = aZ.gF, gE.lineWidth = b0.ur, gE.strokeStyle = aZ
.gF, gE.strokeRect(-1, -1, this.g5 + 2, this.gA + 2), gE.fillRect(0, this.a2I, this.g5, b0.ur), gE.font = aY.g0.g1(1, .31 * this.a2I), aY.g0.textBaseline(gE, 1), aY.g0.textAlign(gE, 1), gE.fillText("Choose Your Nation's Color!", Math
.floor((this.g5 - this.gap - .4 * this.a2I) / 2), Math.floor(.55 * this.a2I)), this.a2u(0), gE.lineWidth = b0.ur, this.a2v(0), this.a2v(1), this.a2v(2), j.vl(Math.floor(jc + this.g5 - .4 * this.a2I - this.gap), Math.floor(jd +
.3 * this.a2I), Math.floor(.4 * this.a2I)), gE.setTransform(1, 0, 0, 1, 0, 0)
}, this.a2u = function(eD) {
var gQ = this.colors[eD][0],
tp = this.colors[eD][1],
eD = this.colors[eD][2];
gE.fillStyle = "rgb(" + gQ + "," + tp + "," + eD + ")", gE.fillRect(this.gap, this.a2I + this.gap, this.a2l, 2 * this.a2l + this.gap), gE.lineWidth = b0.ur, gE.strokeStyle = aZ.gF, gE.strokeRect(this.gap, this.a2I + this.gap, this.a2l,
2 * this.a2l + this.gap), gE.fillStyle = gQ + tp + eD < 306 && tp < 150 ? aZ.gF : aZ.ji, gE.font = aY.g0.g1(1, .32 * this.a2n), aY.g0.textAlign(gE, 1), aY.g0.textBaseline(gE, 1), gE.rotate(-Math.PI / 2), gE.fillText(
"National Color", Math.floor(-1.5 * this.gap - this.a2I - this.a2l), Math.floor(this.gap + .5 * this.a2l)), gE.rotate(Math.PI / 2)
}, this.a2v = function(eD) {
gE.fillStyle = "rgb(" + (0 === eD ? 150 : 2 === eD ? 30 : 0) + "," + (1 === eD ? 130 : 2 === eD ? 30 : 0) + "," + (2 === eD ? 220 : 0) + ")", gE.fillRect(2 * this.gap + this.a2l, this.a2I + this.gap + eD * (this.gap + this.a2n), Math
.floor(this.colors[this.x8][eD] * this.a2m / 255), this.a2n), gE.strokeStyle = aZ.gF, gE.strokeRect(2 * this.gap + this.a2l, this.a2I + this.gap + eD * (this.gap + this.a2n), this.a2m, this.a2n), gE.fillStyle = aZ.gF, gE.font = aY
.g0.g1(1, .32 * this.a2n), aY.g0.textBaseline(gE, 1), aY.g0.textAlign(gE, 0), gE.fillText((0 === eD ? "Red: " : 1 === eD ? "Green: " : "Blue: ") + this.colors[0][eD].toString(), 3 * this.gap + this.a2l, Math.floor(this.a2I + this
.gap + eD * (this.gap + this.a2n) + .53 * this.a2n))
}
}
function bi() {
var a2w, a2x, xS, xc, yU, a2y, a2z, a30, a31, g4, fontSize, jy, a32, a34, a33 = 0;
function a37() {
return aN.iw.a38[(a32 + a33) % aN.iw.a39]
}
function a35() {
a32++, jy = b3.dY, aN.iw.a3A(a37(), 4) && (a34 = !0, aN.a3B.a3C(a37()))
}
function a3D() {
0 === a32 ? bB.sT(3249) : (a32 === aN.iw.a39 - 1 && (a32 = -1), a35())
}
function a3L(fJ, zL, a3K) {
var jc = Math.floor((aK.g5 - xc) / 2) + a2z,
je = jc + Math.floor(a3K * (xc - 2 * a2z));
gE.lineWidth = zL, gE.beginPath(), gE.moveTo(jc, fJ), gE.lineTo(je, fJ), gE.lineTo(Math.floor(jc - a2z + a3K * xc), fJ + xS), gE.lineTo(jc - a2z, fJ + xS), gE.closePath()
}
this.cq = function() {
x.setState(6), a2w = 0, a2x = 1, a30 = "rgba(0,220,120,0.4)", a31 = "rgba(0,0,0,0.8)", this.resize(), b3.d1 = !0, a32 = 0, a34 = !1, a35()
}, this.resize = function() {
xc = Math.floor((b7.cv.fv() ? .5 : .25) * aK.fw), yU = xc + 12, xS = Math.floor(.125 * xc), a2z = 3 * xS, a2y = Math.floor(.225 * xc), fontSize = Math.floor(.3 * xS), g4 = aY.g0.g1(0, fontSize)
}, this.a36 = function(hZ) {
a33 = hZ
}, this.sO = function(sH) {
sH === a37() && (a34 = !1, a3D())
}, this.a3E = function(sH) {
6 !== x.s1() || a34 || (jy = b3.dY, a34 = !0)
}, this.fQ = function(fI, fJ) {
var jc = Math.floor((aK.g5 - yU) / 2),
jd = Math.floor(.5 * (aK.gA - b0.gap - xS - a2y)) + xS + b0.gap;
return jc < fI && fI < jc + yU && jd < fJ && fJ < jd + a2y && (this.a3G(), v.sk(fI, fJ, !1), !0)
}, this.a3G = function() {
aN.iw.sX(3260), a0.cq(), b3.d1 = !0
}, this.i6 = function() {
6 === x.s1() && (a34 ? b3.dY > jy + 12e3 && bB.sT(3250) : b3.dY > jy + 12e3 && a3D(), 100 < (a2w += .07 * a2x * (a2w < 16 ? 5 + a2w : 84 < a2w ? 105 - a2w : 17)) ? (a2w = 100, a2x = -1) : a2w < 0 && (a2w = 0, a2x = 1), a30 = "rgba(0," +
Math.floor(190 - 1.9 * a2w) + "," + Math.floor(120 - 1.2 * a2w) + "," + (.4 + .004 * a2w) + ")", a31 = "rgba(0," + Math.floor(1.9 * a2w) + "," + Math.floor(1.2 * a2w) + "," + (.8 - .004 * a2w) + ")", b3.d1 = !0)
}, this.gD = function() {
var fI = Math.floor((aK.g5 - yU) / 2),
fJ = Math.floor(.5 * (aK.gA - b0.gap - xS - a2y));
! function(title, fJ, zL, a3K) {
gE.fillStyle = a31, a3L(fJ, zL, 1), gE.fill(), gE.fillStyle = a30, a3L(fJ, zL, a3K), gE.fill(), gE.strokeStyle = aZ.gF, a3L(fJ, zL, 1), gE.stroke(),
function(a3N, fJ) {
aY.g0.textAlign(gE, 1), aY.g0.textBaseline(gE, 1), gE.font = g4, gE.fillStyle = aZ.gF, gE.fillText(a3N, Math.floor(.5 * aK.g5), Math.floor(fJ + .58 * xS))
}(title, fJ)
}("Loading", fJ, 3, a2w / 100),
function(fI, fJ, g5, gA, nc) {
gE.fillStyle = aZ.kY, gE.fillRect(fI, fJ, g5, gA), gE.lineWidth = 3, gE.strokeStyle = aZ.gF, gE.strokeRect(fI, fJ, g5, gA);
var eZ = Math.floor(.3 * gA);
aY.g0.textAlign(gE, 1), aY.g0.textBaseline(gE, 1), gE.font = aY.g0.g1(0, eZ), gE.fillStyle = aZ.gF, gE.fillText(nc, Math.floor(fI + g5 / 2), Math.floor(fJ + gA / 2 + .1 * eZ))
}(fI, fJ + xS + b0.gap, yU, a2y, "Back")
}
}
function bj() {
var dX;
this.cq = function() {
v.cq(), y.cq(), dX = 0, a0.cq()
}, this.setState = function(a3O) {
dX = a3O
}, this.s1 = function() {
return dX
}, this.a3P = function() {
0 === x.s1() && a0.sW(), this.setState(8), aG.sW(), a8.tL(), b6.t8 = !1, av.fQ(-1e3, -1e3)
}, this.tL = function(dE) {
if (!ap.pL) return !1;
if (!(b3.dY < 400)) {
if ("Enter" === dE.key || "Escape" === dE.key) {
if (this.a3Q()) return 0 === dX && y.gB(!0), !0;
if ("Enter" === dE.key) {
if (0 === dX) return a0.a3R(), !0;
if (7 === dX) return !0
}
}
return !1
}
}, this.a3S = function() {
b6.resize(), av.resize(), a8.resize()
}, this.a3Q = function() {
return !!av.o3() || !!a8.tL() || !!b6.t8 && !(b6.t8 = !1)
}, this.dd = function() {
b3.d1 = !0, 8 === dX ? k9 ? aa.tN(!1) : (b2.t8 ? b2 : j).tO() : 7 === dX ? aG.a3T() : 6 === dX ? w.a3G() : 2 === dX ? z.a3U() : 0 !== dX || this.a3Q() || b7.cv.setState(11)
}, this.fQ = function(fI, fJ) {
if (ap.pL && !av.fQ(fI, fJ) && !(6 === dX && w.fQ(fI, fJ) || 2 === dX && z.fQ(fI, fJ) || b6.fQ(fI, fJ) || au.fQ(fI, fJ, !0) || a8.fQ(fI, fJ, !0))) {
if (q.fQ(fI, fJ), 0 === dX) a0.fQ(fI, fJ);
else if (7 === dX && aG.fQ(fI, fJ)) return;
aw.fQ(fI, fJ)
}
}, this.sk = function(fI, fJ) {
if (!q.zX) {
if (0 <= a8.tF(fI, fJ)) return void q.t9();
if (a8.sk(fI, fJ)) return void q.t9();
if (2 === dX && z.sk(fI, fJ)) return void q.t9();
if (v.sk(fI, fJ, !0)) return
}
q.sk(fI, fJ)
}, this.click = function(fI, fJ) {
q.tA(), a8.a2t() || au.fQ(fI, fJ, !1) || a8.fQ(fI, fJ, !1)
}, this.sn = function(fI, fJ, deltaY) {
a8.vn[1].rN.t8 || (a8.vn[2].rN.t8 ? a8.vn[2].rN.sn(fI, fJ, deltaY) : 0 === dX && q.sn(fI, deltaY))
}, this.a3V = function() {
v.ze(), a8.ze(), 0 === dX ? (y.resize(), q.ze()) : 7 === dX && aG.resize(), b3.d1 = !0
}, this.gD = function() {
var fJ, gN, gM, fI;
8 !== dX && 10 !== dX && (gE.imageSmoothingEnabled = !0, this.qS(), q.gD(), l.gD(), fJ = Math.floor(.3 * aK.gA), gN = a1.v5("territorial.io"), gM = (gM = 1.75 * aK.gA / gN.width) * gN.width < .98 * aK.g5 ? .98 * aK.g5 / gN.width : gM, gE
.globalAlpha = .15, fI = Math.floor(.5 * (aK.g5 - gM * gN.width)), fI = Math.floor(fI / gM), fJ = Math.floor(fJ - .5 * gN.height * gM), fJ = Math.floor(fJ / gM), gE.setTransform(gM, 0, 0, gM, fI, fJ), gE.drawImage(gN, fI, fJ), gE
.setTransform(1, 0, 0, 1, 0, 0), gE.globalAlpha = 1, au.gD(), aw.gD(), a8.gD(), 0 === dX ? a0.gD() : 2 === dX ? z.gD() : 6 === dX ? w.gD() : 7 === dX && aG.gD(), a8.a3X(), b6.gD(), av.gD())
}, this.qS = function() {
var a3Z, a3Y;
if (makeMainMenuTransparent) gE.clearRect(0, 0, aK.g5, aK.gA);
else ap.pL ? (a3Y = aK.g5 / ap.e8, a3Z = aK.gA / ap.e9, gE.setTransform(a3Y = a3Z < a3Y ? a3Y : a3Z, 0, 0, a3Y, Math.floor((aK.g5 - a3Y * ap.e8) / 2), Math.floor((aK.gA - a3Y * ap.e9) / 2)), gE.drawImage(ap.pN, 0, 0), gE.setTransform(1,
0, 0, 1, 0, 0), gE.fillStyle = aZ.kY) : gE.fillStyle = aZ.ji, gE.fillRect(0, 0, aK.g5, aK.gA)
}
}
function a3a() {
this.g5 = 0, this.gA = 0, this.a3b = 0, this.t8 = !1, this.wx = 10, this.eg = .12, this.a2k = !1, this.a3c = !1, this.a3d = !1, this.cq = function() {
this.t8 = !0, this.resize(), this.a2k = !1
}, this.resize = function() {
this.t8 && (1.15 * aK.g5 < aK.gA ? this.g5 = Math.floor((b7.cv.fv() ? .94 : .69) * aK.g5) : this.g5 = Math.floor((b7.cv.fv() ? .94 : .69) * aK.gA / 1.15), this.g5 -= this.g5 % this.wx, this.gA = +this.g5, this.a3b = Math.floor(.15 * this
.g5))
}, this.fQ = function(g8, g9, dX) {
var jc = (aK.g5 - this.g5) / 2;
return g9 -= (aK.gA - this.gA - this.a3b) / 2, (g8 -= jc) < 0 || g9 < 0 || g8 >= this.g5 - 1 || g9 >= this.gA + this.a3b - 1 || g8 >= this.g5 - this.a3b && g9 < this.a3b ? (0 === dX && (this.t8 = !1, 0 === x.s1() && y.gB(!0), b3.d1 = !0),
!1) : (g9 < this.a3b || (g8 = (g8 = eR(g8, jc = Math.floor(this.g5 / this.wx)) + this.wx * eR(g9 - this.a3b, jc)) < 0 ? 0 : g8 >= az.x1 ? az.x1 - 1 : g8, (0 === dX || 1 === dX && !az.sB[g8] || 2 === dX && az.sB[g8]) && (this
.a3c = !az.sB[g8], this.a2k = !0, this.a3d = !0, az.sB[g8] = !az.sB[g8], az.xH(), b3.d1 = !0)), !0)
}, this.sk = function(g8, g9) {
this.a2k && this.fQ(g8, g9, this.a3c ? 1 : 2)
}, this.a2t = function() {
this.a3d && (b7.cv.sA(), this.a3d = !1), this.a3d = !1, this.a2k = !1
}, this.gD = function() {
gE.imageSmoothingEnabled = !0;
for (var jc = (aK.g5 - this.g5) / 2, jd = (aK.gA - this.gA - this.a3b) / 2, qb = (gE.setTransform(1, 0, 0, 1, jc, jd), gE.fillStyle = aZ.ka, gE.fillRect(0, this.a3b, this.g5, this.gA), gE.fillStyle = aZ.kq, gE.fillRect(0, 0, this.g5, this
.a3b), gE.fillStyle = aZ.gF, gE.lineWidth = b0.ur, gE.strokeStyle = aZ.gF, gE.strokeRect(-1, -1, this.g5 + 2, this.gA + this.a3b + 2), gE.fillRect(0, this.a3b - b0.ur, this.g5, b0.ur), gE.font = aY.g0.g1(1, .44 * this
.a3b), aY.g0.textAlign(gE, 1), aY.g0.textBaseline(gE, 1), gE.fillText("Select Your Emojis!", Math.floor((this.g5 - .725 * this.a3b) / 2), Math.floor(.55 * this.a3b)), Math.floor(this.g5 / this.wx)), zoom = (qb - 2 * this.eg *
qb) / az.g5, eD = az.x1 - 1; 0 <= eD; eD--) gE.setTransform(1, 0, 0, 1, Math.floor(jc + eD % this.wx * qb), Math.floor(jd + this.a3b + eR(eD, this.wx) * qb)), az.sB[eD] && (gE.fillStyle = aZ.ks, gE.fillRect(0, 0, qb, qb)), gE
.setTransform(zoom, 0, 0, zoom, Math.floor(jc + eD % this.wx * qb + this.eg * qb), Math.floor(jd + this.a3b + eR(eD, this.wx) * qb + this.eg * qb)), gE.drawImage(az.v4[eD], 0, 0);
j.vl(Math.floor(jc + this.g5 - .725 * this.a3b), Math.floor(jd + .275 * this.a3b), Math.floor(.45 * this.a3b)), gE.setTransform(1, 0, 0, 1, 0, 0), gE.imageSmoothingEnabled = !1
}
}
function bk() {
var input, color;
this.t8 = !1, this.tG = !1, this.cq = function() {
color = aZ.ka, (input = document.createElement("INPUT")).setAttribute("type", "text"), input.setAttribute("name", "username"), input.setAttribute("id", "usernameField"), input.setAttribute("autocomplete", "username"), input.value = "",
input.style.textAlign = "center", input.style.backgroundColor = color, input.style.borderRadius = "0", input.style.color = aZ.gF, input.style.position = "absolute", input.readOnly = !1, input.addEventListener("input", function() {
a0.a3e()
}), input.addEventListener("focus", function() {
y.tG = !0
}), input.addEventListener("blur", function() {
y.tG = !1
})
}, this.resize = function() {
var fontSize, a2F, vo;
this.t8 && (a2F = .3 * (fontSize = .22 * v.gA / aK.nH), vo = b0.ur / aK.nH, input.style.border = vo.toFixed(2) + "px solid " + aZ.gF, input.style.font = aY.g0.g1(1, fontSize), input.style.padding = a2F.toFixed(2) + "px", input.style
.left = (((aK.g5 - v.g5) / aK.nH - vo) / 2).toFixed(2) + "px", input.style.width = (v.g5 / aK.nH).toFixed(2) + "px", input.style.top = ((v.fJ - .52 * v.gA) / aK.nH).toFixed(2) + "px")
}, this.get = function() {
return input
}, this.gB = function(gB) {
this.t8 !== gB && ((this.t8 = gB) ? (this.resize(), document.body.appendChild(input), at.dI.showCMPButton()) : (this.tG = !1, document.body.removeChild(input), at.dI.hideCMPButton()))
}, this.tI = function(a3f) {
a3f && color === aZ.ka || !a3f && color === aZ.l4 || (color = a3f ? aZ.ka : aZ.l4, input.style.backgroundColor = color)
}
}
function c8() {
var mK, a3i, a3j, a3k;
this.a3g = 0, this.a3h = 0, this.cq = function() {
var gN, kH;
7 === x.s1() && (mK = ae.mK, a3i = 0, a3j = b3.dY + 4500, a3k = aN.wS.a3l() ? 2 : 0, x.setState(10), gE.imageSmoothingEnabled = !0, x.qS(), gN = a1.v5("loading"), kH = 1, kH = (b7.cv.fv() ? .396 : .25) * aK.fw / gN.width, gE.setTransform(
kH, 0, 0, kH, Math.floor((aK.g5 - kH * gN.width) / 2), Math.floor((aK.gA - kH * gN.height) / 2)), gE.drawImage(gN, 0, 0), gE.setTransform(1, 0, 0, 1, 0, 0))
}, this.j4 = function() {
0 < a3k && b3.dY > a3j && (a3k--, a3j += 4500, 0 === b3.a3m) && 0 === b3.iK() && (0 === a3k && aN.iw.sQ < aN.iw.a3n && (aN.iw.sQ += aN.iw.a3o), aN.iw.a3A(aN.iw.sQ, 5))
}, this.a3p = function() {
var eg, eD;
return 10 === x.s1() && (eg = ae.mK, eD = ae.fz, aN.wS.a3q(mK), mK = null, ae.cq(eg), ae.fz = eD, !0)
}, this.a3r = function() {
10 === x.s1() && 2 <= ++a3i && (aN.wS.a3q(mK), mK = null)
}
}
function c5() {
var a3t, a3u, a3v, a3w, a3x, a3y, a3z, n9, a41, a43, a44, a45, a48, a49, a4A, a4B, a4C, a40 = 48,
a46 = ["Joined", "Skipped", "Multiplayer", "Singleplayer"],
a47 = [0, 0, 0, 0];
function a4H(eD, v4) {
var eD = a3z[eD].getContext("2d", {
alpha: !0
}),
zoom = (eD.clearRect(0, 0, a40, a40), a40 / v4.width),
dZ = a40 / v4.height,
zoom = dZ < zoom ? dZ : zoom;
eD.imageSmoothingEnabled = !0, eD.setTransform(zoom, 0, 0, zoom, Math.floor((a40 - zoom * v4.width) / 2), Math.floor((a40 - zoom * v4.height) / 2)), eD.drawImage(v4, 0, 0), eD.setTransform(1, 0, 0, 1, 0, 0)
}
function a4L(iL, gQ, a4O, gO) {
gO.beginPath(), gO.moveTo(iL, iL), gO.lineTo(iL + Math.cos(a4O) * gQ, iL + Math.cos(a4O + 1.5 * Math.PI) * gQ), gO.stroke()
}
function a4e() {
if (7 === x.s1()) {
for (var ga, v4, gO, zoom, dZ, hZ = -1, eD = n9.length - 1; 0 <= eD; eD--)
if (null === n9[eD].gN) {
hZ = eD;
break
} - 1 !== hZ && (null !== (ga = a4S(n9[hZ].a4W, n9[hZ].a4X)) ? n9[hZ].gN = ga : (ga = {
e8: ap.e8,
e9: ap.e9,
pN: ap.pN,
pJ: ap.pJ,
pK: ap.pK,
pO: ap.pO,
pl: ap.pl,
a4T: ap.a4T
}, ap.d2(n9[hZ].a4W, n9[hZ].a4X), ap.pM.a4f(), (v4 = document.createElement("canvas")).width = 128, v4.height = 128, gO = v4.getContext("2d", {
alpha: !1
}), (zoom = 128 / ap.e8) < (dZ = 128 / ap.e9) && (zoom = dZ), gO.imageSmoothingEnabled = !0, gO.setTransform(zoom, 0, 0, zoom, (128 - zoom * ap.e8) / 2, (128 - zoom * ap.e9) / 2), gO.drawImage(ap.pN, 0, 0), ap.e8 = ga.e8, ap
.e9 = ga.e9, ap.pN = ga.pN, ap.pJ = ga.pJ, ap.pK = ga.pK, ap.pO = ga.pO, ap.pl = ga.pl, ap.a4T = ga.a4T, n9[hZ].gN = v4), b3.d1 = !0)
}
}
function a4S(a4W, a4X) {
for (var eD = n9.length - 1; 0 <= eD; eD--)
if (null !== n9[eD].gN && n9[eD].a4W === a4W && n9[eD].a4X === a4X) return n9[eD].gN;
return null
}
this.cq = function() {
var eD;
for (a4C = 0, a43 = -1, x.setState(7), n9 = [], this.resize(), a3z = new Array(13), eD = a3z.length; 0 <= eD; eD--) a3z[eD] = document.createElement("canvas"), a3z[eD].width = a40, a3z[eD].height = a40;
for (eD = 0; eD < 7; eD++) ! function(wa) {
var a4J, gO = a3z[wa - 2].getContext("2d", {
alpha: !0
}),
a4I = 1.5 * Math.PI,
iL = Math.floor(.5 * a40),
gQ = Math.floor(.48 * a40);
gO.lineWidth = 2, gO.strokeStyle = aZ.gF, gO.clearRect(0, 0, a40, a40);
for (var eD = 0; eD < wa; eD++) a4J = a4I + 2 * Math.PI / wa,
function(eD, iL, gQ, a4I, a4J, gO) {
gO.fillStyle = b4.a4N[eD], gO.beginPath(), gO.arc(iL, iL, gQ, a4I, a4J), gO.lineTo(iL, iL), gO.fill()
}(eD + 1, iL, gQ, a4I, a4J, gO), 0 !== eD && a4L(iL, gQ, a4I, gO), a4I = a4J;
a4L(iL, gQ, 1.5 * Math.PI, gO),
function(iL, gQ, gO) {
gO.beginPath(), gO.arc(iL, iL, gQ, 0, 2 * Math.PI), gO.stroke()
}(iL, gQ, gO)
}(eD + 2);
a4H(7, a1.get(4)), a4H(8, az.v4[27]), a4H(9, az.v4[46]), a4H(10, az.v4[36]), a4H(11, a1.get(19)), a4H(12, a1.get(20)), b3.d1 = !0
}, this.a3T = function() {
this.sW(), aN.iw.sX(3240), a0.cq(), b3.d1 = !0
}, this.sW = function() {
n9 = [], a3z = [], b8.a4E.a4F()
}, this.ww = function() {
return a45
}, this.resize = function() {
var a4P, pA, yj, a4Q;
for (a3v = [0, 0], a41 = [0, 0, 0, 0], a4B = b7.cv.fv() ? (a44 = Math.floor(.8 * .4 * aK.fw), a45 = Math.floor(.56 * a44), a41[0] = b0.gap, aK.g5 < aK.gA ? (a41[1] = a45 + 2 * b0.gap, a41[2] = aK.g5 - 3 * a41[0], a41[3] = aw.gC() - 3 * b0
.gap - a45, a49 = Math.floor(.95 * a45), a4A = Math.floor((aK.g5 - a44 - b0.gap) / 2), Math.floor(b0.gap + a45 / 2)) : (a41[1] = b0.gap, a41[2] = aK.g5 - 3 * b0.gap - a44, a41[3] = aw.gC() - 2 * b0.gap, a49 = Math.floor(.8 *
a44), a41[3] - a45 < a44 && (a49 = Math.floor(.8 * (a41[3] - a45)), a49 = wC(a45, a49)), a4A = Math.floor(aK.g5 - a44 / 2 - b0.gap), wC(a4B = Math.floor(b0.gap + a45 + (a41[3] - a45) / 2), Math.floor(a45 + 2 * b0.gap +
a49 / 2)))) : (a44 = Math.floor(.2016 * aK.fw), a45 = Math.floor(.56 * a44), a41[2] = Math.floor(.5 * aK.g5), a41[3] = Math.floor(.5 * aK.gA), a41[1] = Math.floor(.45 * (aK.gA - a41[3])), a41[0] = Math.floor((aK.g5 - a41[2]) / 2),
a49 = Math.floor(.75 * a45), a4A = Math.floor(aK.g5 / 2), Math.floor(a41[1] + a41[3] + (aK.gA - a41[3] - a41[1]) / 2)), a48 = aY.g0.g1(1, .65 * a45 / 4), a4P = pA = 1; a4P * pA < n9.length;) a41[3] / (pA + 1) < a41[2] / (a4P +
1) ? a4P++ : pA++;
yj = (a41[2] - (a4P - 1) * b0.gap) / a4P, a4Q = (a41[3] - (pA - 1) * b0.gap) / pA, a3t = yj < a4Q ? yj : a4Q, a3u = Math.floor(a3t), a3y = aY.g0.g1(1, .5 * a3t / 5), a3v[0] = a4P, a3v[1] = pA, a3w = a41[0] + Math.floor((a41[2] - a3v[0] *
a3t - (a3v[0] - 1) * b0.gap) / 2), a3x = a41[1] + Math.floor((a41[3] - a3v[1] * a3t - (a3v[1] - 1) * b0.gap) / 2)
}, this.ne = function(a4R, eg) {
var eD, dZ, gN, eZ = n9.length;
for (a47 = a4R, eD = 0; eD < eg.length; eD++) gN = a4S(eg[eD].pl, eg[eD].a4T), n9.push({
a4U: eg[eD].id,
ua: eg[eD].ua,
ub: eg[eD].a4V,
a4W: eg[eD].pl,
a4X: eg[eD].a4T,
joined: eg[eD].a4Y,
wt: eg[eD].a3K,
a4Z: eg[eD].a4Z,
gN: gN,
a4a: eg[eD].a4a,
a4b: eg[eD].a4b,
a4c: eg[eD].a4c
});
for (eD = eZ - 1; 0 <= eD; eD--) n9.shift();
if (-1 !== a43)
for (dZ = a43, a43 = -1, eD = n9.length - 1; 0 <= eD; eD--)
if (n9[eD].a4U === dZ) {
a43 = dZ;
break
}(n9.length > a4C || n9.length < a4C) && (a4C = n9.length, this.resize()), this.a4d(), b3.d1 = !0
}, this.a4d = function() {
for (var eD = n9.length - 1; 0 <= eD; eD--) null === n9[eD].gN && setTimeout(a4e, 0)
}, this.fQ = function(fI, fJ) {
return 4 * ((fI - a4A) * (fI - a4A) + (fJ - a4B) * (fJ - a4B)) <= a49 * a49 ? (this.a3T(), v.sk(fI, fJ, !1), !0) : function(fI, fJ) {
var hZ, hi, jc, jd;
if (0 !== n9.length) {
var eD = 0;
for (jd = a3x, hi = 0; hi < a3v[1]; hi++) {
for (jc = a3w, hZ = 0; hZ < a3v[0]; hZ++) {
if (jc < fI && fI < jc + a3t && jd < fJ && fJ < jd + a3t) return aN.a3B.a4h(n9[eD].a4U), a43 = n9[eD].a4U !== a43 ? n9[eD].a4U : -1, b3.d1 = !0;
if (++eD >= n9.length) return !1;
jc += a3t + b0.gap
}
jd += a3t + b0.gap
}
}
return !1
}(fI, fJ)
}, this.gD = function() {
var hZ, hi, fI, gQ, zoom, eD = 0,
fJ = a3x;
if (gE.imageSmoothingEnabled = !0, gE.lineWidth = 3, gQ = Math.floor(.5 * a49), gE.fillStyle = aZ.kY, gE.beginPath(), gE.arc(a4A, a4B, gQ, 0, 2 * Math.PI), gE.fill(), gE.strokeStyle = aZ.gF, gE.beginPath(), gE.arc(a4A, a4B, gQ, 0, 2 *
Math.PI), gE.stroke(), gQ = a1.get(0).height, zoom = .6 * a49 / gQ, gE.setTransform(zoom, 0, 0, zoom, Math.floor(a4A - .56 * zoom * a1.get(0).width), Math.floor(a4B - .5 * zoom * gQ)), gE.drawImage(a1.get(0), 0, 0), gE
.setTransform(1, 0, 0, 1, 0, 0),
function() {
gE.fillStyle = aZ.kY, gE.fillRect(aK.g5 - a44 - b0.gap, b0.gap, a44, a45), 0 <= a43 ? (gE.fillStyle = aZ.ks, gE.fillRect(aK.g5 - a44 - b0.gap, b0.gap, a44, Math.floor(.25 * a45))) : (gE.fillStyle = aZ.lI, gE.fillRect(aK.g5 - a44 -
b0.gap, b0.gap + Math.floor(.25 * a45), a44, Math.floor(.25 * a45)));
gE.strokeStyle = aZ.gF, gE.strokeRect(aK.g5 - a44 - b0.gap, b0.gap, a44, a45), gE.fillStyle = aZ.gF, gE.font = a48, aY.g0.textBaseline(gE, 1);
for (var fJ, a2F = Math.floor(.04 * a44), vo = Math.floor(.08 * a45), eD = 3; 0 <= eD; eD--) fJ = Math.floor(b0.gap + (eD + 1) * (a45 + 2 * vo) / 5 - vo), aY.g0.textAlign(gE, 0), gE.fillText(a46[eD], aK.g5 - a44 - b0.gap + a2F,
fJ), aY.g0.textAlign(gE, 2), gE.fillText(aY.jk.jl(a47[eD]), aK.g5 - b0.gap - a2F, fJ)
}(), 0 !== n9.length)
for (hi = 0; hi < a3v[1]; hi++) {
for (fI = a3w, hZ = 0; hZ < a3v[0]; hZ++) {
if (! function(eD, fI, fJ) {
var zoom, hi, a4l, a4n, a4o;
null === n9[eD].gN ? (gE.fillStyle = aZ.kY, gE.fillRect(fI, fJ, a3u, a3u)) : (zoom = a3u / 128, gE.setTransform(zoom, 0, 0, zoom, fI, fJ), gE.drawImage(n9[eD].gN, 0, 0), gE.setTransform(1, 0, 0, 1, 0, 0));
a43 === n9[eD].a4U ? (function(fI, fJ) {
var qb = Math.floor(.2 * a3u),
qc = Math.floor(.3 * qb);
gE.fillStyle = aZ.kv, gE.fillRect(fI + a3u - qb, fJ, qb, qb), gE.fillStyle = aZ.ji, gE.fillRect(fI + a3u - qb, fJ, 2, qb), gE.fillRect(fI + a3u - qb, fJ + qb - 2, qb, 2), j.vl(fI + a3u - qb + qc, fJ + qc,
qb - 2 * qc), gE.setTransform(1, 0, 0, 1, 0, 0)
}(fI, fJ), gE.lineWidth = 3, gE.fillStyle = aZ.kv) : gE.fillStyle = aZ.kW;
a4n = Math.floor(a3t / 4), gE.fillRect(fI, fJ, a4n, a4n), a4o = Math.floor(fJ + .8 * a3t), gE.fillRect(fI, a4o, a3u, Math.floor(a3t / 5)),
function(eD, fI, fJ) {
var zoom;
n9[eD].ub && (eD = a1.get(4), zoom = .5 * a3t / eD.width, gE.setTransform(zoom, 0, 0, zoom, Math.floor(fI + (a3t - zoom * eD.width) / 2), Math.floor(fJ + (a3t - zoom * eD.height) / 2)), gE.globalAlpha = .6, gE
.drawImage(eD, 0, 0), gE.globalAlpha = 1, gE.setTransform(1, 0, 0, 1, 0, 0))
}(eD, fI, fJ);
var a4q = new Array(n9[eD].a4a);
if (n9[eD].a4a) {
for (hi = a4l = 0; hi < n9[eD].a4a; hi++) n9[eD].a4b[hi] = aY.qW.tm(n9[eD].a4b[hi], a3y, .4 * a3t), a4q[hi] = ("" === n9[eD].a4b[hi] ? "other: " : "[" + n9[eD].a4b[hi] + "]: ") + n9[eD].a4c[hi];
for (hi = 0; hi < n9[eD].a4a; hi++) a4l = Math.max(a4l, n.measureText(a4q[hi], a3y));
a4l += .05 * a3t, hi = 5 === n9[eD].a4a, a4n = hi ? fJ + a4n : Math.max(fJ + .8 * a3t - .11 * n9[eD].a4a * a3t, fJ + a4n), a4o = hi ? a4o : Math.min(a4n + .11 * n9[eD].a4a * a3t + .05 * a3t, a4o), gE.fillRect(fI,
a4n, a4l, a4o - a4n)
}
for (gE.font = a3y, aY.g0.textBaseline(gE, 1), aY.g0.textAlign(gE, 0), gE.fillStyle = aZ.lD, gE.fillText(n9[eD].joined.toString(), Math.floor(fI + .22 * a3t), Math.floor(fJ + .9 * a3t)), gE.fillStyle = aZ.gF, hi =
0; hi < n9[eD].a4a; hi++) gE.fillText(a4q[n9[eD].a4a - hi - 1], Math.floor(fI + .03 * a3t), Math.floor(fJ + .77 * a3t - .11 * hi * a3t));
aY.g0.textAlign(gE, 2), gE.fillStyle = aZ.l0, gE.fillText(n9[eD].wt.toString(), Math.floor(fI + .81 * a3t), Math.floor(fJ + .9 * a3t)), gE.strokeStyle = a43 === n9[eD].a4U ? aZ.kt : aZ.ke, gE.strokeRect(fI, fJ, a3u,
a3u), a4o = Math.floor(.16 * a3t), zoom = a4o / a40, gE.setTransform(zoom, 0, 0, zoom, Math.floor(fI + .33 * a4o), Math.floor(fJ + .33 * a4o)), a3z.length > n9[eD].ua && gE.drawImage(a3z[n9[eD].ua], 0, 0);
gE.setTransform(zoom, 0, 0, zoom, Math.floor(fI + .15 * a4o), Math.floor(fJ + a3t - 1.08 * a4o)), gE.drawImage(a3z[11], 0, 0), gE.setTransform(zoom, 0, 0, zoom, Math.floor(fI + a3t - 1.05 * a4o), Math.floor(fJ + a3t -
1.15 * a4o)), gE.drawImage(a3z[12], 0, 0), gE.setTransform(1, 0, 0, 1, 0, 0)
}(eD, Math.floor(fI), Math.floor(fJ)), ++eD >= n9.length) return;
fI += a3t + b0.gap
}
fJ += a3t + b0.gap
}
}
}
function bl() {
var a4s = [0, 0, 0, 0];
function a2H(fI, fJ, gH, a58) {
gE.fillStyle = aZ.gF;
var qb = wC(2, Math.floor((a58 ? .5 : .35) * gH)),
xM = (qb -= qb % 2, wC(2, Math.floor(.1 * gH))),
gH = (xM -= xM % 2, Math.floor((gH - qb) / 2)),
je = Math.floor(gH + (qb - xM) / 2);
gE.fillRect(fI + gH, fJ + je, qb, xM), a58 && gE.fillRect(fI + je, fJ + gH, xM, qb)
}
function a3J(fI, fJ, g5, gA, v7, ft, nc, hT, wa) {
gE.fillStyle = v7, gE.fillRect(fI, fJ, g5, gA), 0 <= hT && function(fI, fJ, g5, gA, hT) {
gE.fillStyle = "rgba(" + 22 * hT + "," + (110 - 22 * hT) + ",0,0.75)", gE.fillRect(fI, fJ, (1 + hT) * g5 / 6, gA)
}(fI, fJ, g5, gA, hT), 0 < wa && function(fI, fJ, g5, gA, wa) {
gE.fillStyle = "rgba(255,255,255,0.3)", gE.fillRect(fI, fJ, wa * g5 / ed, gA)
}(fI, fJ, g5, gA, wa), gE.strokeStyle = aZ.gF, gE.strokeRect(fI, fJ, g5, gA), 0 !== ft && (gE.fillStyle = aZ.gF, gE.font = aY.g0.g1(1, ft * gA), gE.fillText(nc, Math.floor(fI + g5 / 2), Math.floor(fJ + .52 * gA)))
}
this.io = [{
ei: 0,
wa: 512
}], this.cq = function() {
aH.t8 = !1, x.setState(2), this.resize(), b3.d1 = !0
}, this.sW = function() {}, this.resize = function() {
a4s[2] = Math.floor((b7.cv.fv() ? .49 : .4) * aK.fw), a4s[1] = Math.floor((aK.gA - a4s[2] / 6 - this.io.length * (b0.gap + a4s[2] / 10)) / 2), a4s[0] = Math.floor((aK.g5 - a4s[2]) / 2), aH.t8 && aH.resize()
}, this.a4t = function(ua) {
var eD;
if (6 < ua) this.io = [{
ei: 0,
wa: 512
}];
else {
for (this.io = [], eD = 0; eD < ua + 2; eD++) this.io.push({
ei: 0,
wa: 0
});
this.a4u()
}
aN.iw.sQ = 0
}, this.a4v = function(a4w, a4x) {
for (var eZ = a4w.length, eD = 0; eD < eZ; eD++) this.io[eD].ei = a4w[eD], this.io[eD].wa = a4x[eD]
}, this.a4y = function(tp) {
var eD, eZ;
if (1 === tp.qf.length)
for (eZ = this.io.length, tp.a4w = new Array(eZ), tp.a4x = new Array(eZ), eD = 0; eD < eZ; eD++) tp.a4w[eD] = this.io[eD].ei, tp.a4x[eD] = this.io[eD].wa
}, this.a3U = function() {
b3.d1 = !0, aH.t8 ? aH.t8 = !1 : (this.sW(), a0.cq())
}, this.ue = function() {
var eD, wa;
if (aU.ih) return aU.ii.a4z;
for (wa = 0, eD = this.io.length - 1; 0 <= eD; eD--) wa += this.io[eD].wa;
return wa
}, this.sk = function(fI, fJ) {
return !(!aH.t8 || !aH.sk(fI, fJ)) || -1 !== this.tF(fI, fJ)
}, this.a50 = function() {
var hZ;
aN.iw.sQ = 0, x.a3P(), aU.ih ? aU.a51() : (hZ = (hZ = this.io.length - 2) < 0 ? 7 : hZ, uX(Math.floor(16384 * Math.random()), 0, [{
name: b9.dG.data[100].value,
a52: a8.vn[2].rN.a2r(),
a53: 0
}], hZ, !1, !1))
}, this.fQ = function(fI, fJ) {
if (b6.t8 || a8.vn[1].rN.t8 || a8.vn[2].rN.t8) return !1;
if (aH.t8 && !aU.ih) return aH.fQ(fI, fJ);
var eD, hZ, max, qb, fJ = this.tF(fI, fJ);
if (-1 === fJ) return !1;
if (0 === fJ) this.a3U();
else if (1 === fJ) aU.ih ? (aU.t9(), b3.d1 = !0) : aH.show();
else if (100 === fJ) aT.a54();
else if (2 === fJ) this.sW(), this.a50();
else {
if (aU.ih) return !1;
if (27 === fJ) this.io.length < 8 && (this.io.push({
ei: 0,
wa: ed
}), this.a4u(), this.resize(), b3.d1 = !0);
else if (eD = Math.floor((fJ - 3) / 3), fJ % 3 == 0) 1 < this.io.length && (this.io.splice(eD, 1), this.resize(), b3.d1 = !0);
else if (qb = (a4s[2] - a4s[2] / 10 - 2 * b0.gap) / 2, fJ % 3 == 1) 0 === eD && 1 === this.io[eD].wa || (fI < a4s[0] + a4s[2] - 1.5 * qb - b0.gap ? this.io[eD].ei-- : this.io[eD].ei++, this.io[eD].ei < 0 ? this.io[eD].ei = 5 : 5 <
this.io[eD].ei && (this.io[eD].ei = 0), b3.d1 = !0);
else {
for (b3.d1 = !0, fJ = (fI - (a4s[0] + a4s[2] - qb)) / qb - .5, fJ *= fJ < 0 ? -fJ : fJ, fJ = 0 === (fJ = Math.floor(fJ * ed)) ? 1 : fJ, max = ed, hZ = this.io.length - 1; 0 <= hZ; hZ--) eD !== hZ && (max -= this.io[hZ].wa);
if (fJ < 0) {
if (1 === this.io[eD].wa) return this.io[eD].wa = max, !0
} else if (this.io[eD].wa === max) return this.io[eD].wa = 1, !0;
this.io[eD].wa += fJ, this.io[eD].wa < 1 ? this.io[eD].wa = 1 : this.io[eD].wa > max && (this.io[eD].wa = max)
}
}
return !0
}, this.a4u = function() {
for (var wa = Math.floor(ed / this.io.length), a55 = ed % this.io.length, eD = this.io.length - 1; 0 <= eD; eD--) this.io[eD].wa = wa;
this.io[0].wa += a55
}, this.tF = function(fI, fJ) {
var qb = (a4s[2] - 3 * b0.gap) / 4,
xM = a4s[2] / 6;
if (fI < a4s[0] || fJ < a4s[1] || a4s[0] + a4s[2] <= fI) return -1;
if (fJ < a4s[1] + xM) return fI < a4s[0] + qb ? 0 : fI < a4s[0] + qb + b0.gap ? -1 : fI < a4s[0] + 2 * qb + b0.gap ? 100 : fI < a4s[0] + 2 * (qb + b0.gap) ? -1 : fI < a4s[0] + 3 * qb + 2 * b0.gap ? 1 : fI < a4s[0] + 3 * (qb + b0.gap) ? -
1 : 2;
for (var jd, a56 = a4s[2] / 10, qb = (a4s[2] - a56 - 2 * b0.gap) / 2, eD = 0; eD < this.io.length; eD++) {
if (fJ < (jd = a4s[1] + xM + b0.gap + eD * (a56 + b0.gap))) return -1;
if (!(jd + a56 < fJ)) return fI < a4s[0] + a56 ? 3 + 3 * eD : fI < a4s[0] + a56 + b0.gap ? -1 : fI < a4s[0] + a4s[2] - qb - b0.gap ? 4 + 3 * eD : fI < a4s[0] + a4s[2] - qb ? -1 : 5 + 3 * eD
}
return !(this.io.length < 8) || fJ < (jd = a4s[1] + xM + b0.gap + this.io.length * (a56 + b0.gap)) || jd + a56 < fJ || a4s[0] + a56 < fI ? -1 : 27
}, this.gD = function() {
gE.lineWidth = b0.ur, aY.g0.textAlign(gE, 1), aY.g0.textBaseline(gE, 1);
var qb = (a4s[2] - 3 * b0.gap) / 4,
xM = a4s[2] / 6;
if (a3J(a4s[0], a4s[1], qb, xM, "rgba(128,0,0,0.75)", .34, "Back", -1, -1), a3J(a4s[0] + qb + b0.gap, a4s[1], qb, xM, "rgba(128,0,128,0.75)", .31, "Custom", -1, -1), a3J(a4s[0] + 2 * (qb + b0.gap), a4s[1], qb, xM, "rgba(" + (aU.ih ? 128 :
0) + ",128,128,0.75)", .34, aU.ih ? "Reset" : "Maps", -1, -1), a3J(a4s[0] + a4s[2] - qb, a4s[1], qb, xM, "rgba(0,128,0,0.75)", .34, "Start", -1, -1), !aU.ih) {
for (var jd, a56 = a4s[2] / 10, qb = (a4s[2] - a56 - 2 * b0.gap) / 2, eD = 0; eD < this.io.length; eD++) jd = a4s[1] + xM + b0.gap + eD * (a56 + b0.gap), a3J(a4s[0], jd, a56, a56, 1 < this.io.length ? "rgba(128,0,0,0.75)" :
"rgba(90,90,90,0.75)", 0, null, -1), 1 < this.io.length && a2H(a4s[0], jd, a56, !1), a3J(a4s[0] + a56 + b0.gap, jd, qb, a56, aZ.ka, .4, this.a57(eD), this.io[eD].ei, -1), a3J(a4s[0] + a4s[2] - qb, jd, qb, a56, aZ.ka, .4, this
.wR(eD), -1, this.io[eD].wa);
this.io.length < 8 && (jd = a4s[1] + xM + b0.gap + this.io.length * (a56 + b0.gap), a3J(a4s[0], jd, a56, a56, "rgba(0,128,20,0.75)", 0, null, -1, -1), a2H(a4s[0], jd, a56, !0)), aH.t8 && aH.gD()
}
}, this.a57 = function(eD) {
return 0 === eD && 1 === this.io[eD].wa ? "You" : b.ia[this.io[eD].ei]
}, this.wR = function(eD) {
return 1 === this.io[eD].wa ? "1 Player" : this.io[eD].wa + " Players"
}
}
function cz() {
this.eZ = 0, this.g5 = 0, this.vn = null, this.cq = function() {
this.vn = [], this.vn.push({
fI: 0,
fJ: 0,
v2: b7.cv.fv(),
rN: null
}), this.vn.push({
fI: 0,
fJ: 0,
v2: !1,
rN: new a3a
}), this.vn.push({
fI: 0,
fJ: 0,
v2: !1,
rN: new a2j
}), this.vn[2].rN.a2o(), this.eZ = this.vn.length, this.g5 = 0
}, this.ze = function() {
this.g5 = Math.floor((b7.cv.fv() ? .063 : .04) * aK.fw), this.g5 += 4 - this.g5 % 4, this.vn[0].fI = b0.gap, this.vn[0].fJ = aK.gA - this.g5 - b0.gap;
for (var eD = 1; eD < this.eZ; eD++) this.vn[eD].fI = this.vn[eD - 1].fI + Math.floor(b7.cv.fv() ? 1.5 * b0.gap : 3.7 * b0.gap) + this.g5, this.vn[eD].fJ = this.vn[0].fJ
}, this.tF = function(g8, g9) {
if (a1.g3())
for (var eD = this.eZ - 1; 0 <= eD; eD--)
if (g8 >= this.vn[eD].fI && g9 >= this.vn[eD].fJ && g8 < this.vn[eD].fI + this.g5 && g9 < this.vn[eD].fJ + this.g5) return eD;
return -1
}, this.a5B = function() {
for (var eD = 2; 1 <= eD; eD--)
if (this.vn[eD].rN.t8) return !0;
return !1
}, this.resize = function() {
for (var eD = 2; 1 <= eD; eD--) this.vn[eD].rN.resize()
}, this.tL = function() {
return this.vn[1].rN.t8 ? (this.vn[1].rN.fQ(-5e3, -5e3, 0), !0) : !!this.vn[2].rN.t8 && (this.vn[2].rN.fQ(-5e3, -5e3), !0)
}, this.fQ = function(g8, g9, a2Q) {
if (a2Q) {
if (this.vn[1].rN.t8) return this.vn[1].rN.fQ(g8, g9, 0), !0;
if (this.vn[2].rN.t8) return this.vn[2].rN.fQ(g8, g9), !0
}
g8 = this.tF(g8, g9);
if (a2Q) {
if (0 === g8) return this.vn[g8].v2 = !this.vn[g8].v2, b9.dG.dH(2, this.vn[g8].v2 ? 1 : 0), aK.ol(0), !0;
if (1 <= g8 && g8 < 3) return this.vn[g8].rN.cq(), y.gB(!1), b3.d1 = !0
}
return !1
}, this.sk = function(g8, g9) {
return this.vn[1].rN.t8 ? (this.vn[1].rN.sk(g8, g9), !0) : !!this.vn[2].rN.t8 && (this.vn[2].rN.sk(g8), !0)
}, this.a2t = function() {
for (var eD = 2; 1 <= eD; eD--)
if (this.vn[eD].rN.t8) return this.vn[eD].rN.a2t(), !0;
return !1
}, this.gD = function() {
if (a1.g3()) {
gE.imageSmoothingEnabled = !0;
for (var eD = this.eZ - 1; 0 <= eD; eD--) gE.fillStyle = this.vn[eD].v2 ? aZ.ku : aZ.ka, gE.fillRect(this.vn[eD].fI, this.vn[eD].fJ, this.g5, this.g5), 0 === eD ? this.a5C(eD, a1.get(15)) : 1 === eD ? this.a5D() : 2 === eD && this
.a5E(), gE.setTransform(1, 0, 0, 1, 0, 0), gE.lineWidth = b0.ur, gE.strokeStyle = aZ.gF, gE.strokeRect(this.vn[eD].fI, this.vn[eD].fJ, this.g5, this.g5);
gE.imageSmoothingEnabled = !1
}
}, this.a5C = function(eD, v4) {
var gap = .08 * this.g5,
zoom = (this.g5 - 2 * gap) / v4.width;
gE.setTransform(zoom, 0, 0, zoom, this.vn[eD].fI + gap, this.vn[eD].fJ + (this.g5 - zoom * v4.height) / 2), gE.drawImage(v4, 0, 0)
}, this.a5D = function() {
var gap = .06 * this.g5,
zoom = (this.g5 - 2 * gap) / az.g5;
gE.setTransform(zoom, 0, 0, zoom, this.vn[1].fI + gap, this.vn[1].fJ + gap), gE.drawImage(az.v4[4], 0, 0)
}, this.a5E = function() {
gE.setTransform(1, 0, 0, 1, this.vn[2].fI, this.vn[2].fJ);
for (var ei = this.g5 / 4, fI = 3; 0 <= fI; fI--)
for (var fJ = 3; 0 <= fJ; fJ--) {
var gQ = Math.floor(367 * (fI + 1) * (fJ + 1) % 256),
tp = Math.floor(687 * (fI + 1) * (fJ + 1) % 256),
hi = Math.floor(651 * (fI + 1) * (fJ + 1) % 256);
gE.fillStyle = "rgb(" + gQ + "," + tp + "," + hi + ")", gE.fillRect(fI * ei, fJ * ei, ei, ei)
}
}, this.a3X = function() {
for (var eD = 2; 1 <= eD; eD--)
if (this.vn[eD].rN.t8) return void this.vn[eD].rN.gD()
}
}
function bm() {
var a5F;
this.a5G = "", this.a5H = -7e3, this.cq = function(a5I) {
b7.dc < 5 || (a5F && b3.dY > a5F + 144e5 ? b7.oW.setState(14) : a5F = b3.dY), x.setState(0), v.ze(), y.gB(!0), l.cq(), a8.ze(), a5I && at.dK.show() ? setTimeout(function() {
0 === x.s1() && b7.cv.setState(12)
}, 15e3) : b7.cv.setState(12), y.get().value = b9.dG.data[100].value
}, this.sW = function() {
b7.cv.setState(13), y.gB(!1)
}, this.a3e = function() {
b9.dG.dH(100, ad.or.ov(y.get().value))
}, this.fQ = function(fI, fJ) {
var gap, jd, qb;
1 === v.tF(fI, fJ, 1, 1) ? (b7.cv.setState(10), a1.g3() || a1.a5K(), this.sW(), z.cq()) : 0 === v.tF(fI, fJ, 0, 1) ? this.a3R() : (qb = Math.floor((b7.cv.fv() ? .145 : .09) * aK.fw), gap = Math.floor(.065 * (b7.cv.fv() ? .53 : .36) * aK
.fw), gap = aK.g5 - qb - gap, jd = b0.gap, qb = Math.floor(.35 * qb),
(gap <= fI && fJ < jd + qb && (ar.ok(1), true)) || (fI >= gap - qb / 0.7 && fJ < jd + qb && WindowManager.openWindow("settings"))
)
}, this.a3R = function() {
b7.cv.setState(10), w.a36(b9.dG.data[10].value), a1.g3() || a1.a5K(), this.sW(), aU.t9(), w.cq()
}, this.a5M = function() {
return !a8.a5B() && !b6.t8 && !av.t8
}, this.gD = function() {
this.a5M() && (gE.imageSmoothingEnabled = !0, iL = a1.v5("territorial.io"), kH = 1.1 * v.g5 / iL.width, gE.setTransform(kH, 0, 0, kH, Math.floor((aK.g5 - kH * iL.width) / 2), v.fJ - kH * iL.height - .72 * v.gA), gE.drawImage(iL, 0, 0), gE
.setTransform(1, 0, 0, 1, 0, 0), v.a2d());
var g5, gQ, tp, hi, fy, fontSize, kH = Math.floor((b7.cv.fv() ? .145 : .09) * aK.fw),
iL = Math.floor(.065 * (b7.cv.fv() ? .53 : .36) * aK.fw),
jc = aK.g5 - kH - iL,
jd = b0.gap,
xM = Math.floor(.35 * kH);
jc = jc, jd = jd, g5 = kH, xM = xM, tp = gQ = 180, hi = 0, fy = aV.nc[80], fontSize = .65 * xM,
gE.imageSmoothingEnabled = true,
gE.drawImage(settingsGearIcon, jc - g5 / 2, jd, xM, xM),
gE.imageSmoothingEnabled = false,
(settings.displayWinCounter && (
gE.font = aY.g0.g1(1, Math.floor(xM * 0.4)),
gE.fillStyle = "#ffffff",
gE.fillText("Win count: " + wins_counter, Math.floor(jc + g5 / 2), Math.floor((jd + xM / 2) * 2))
)),
gE.font = aY.g0.g1(1, fontSize), gE.fillStyle = "rgba(" + gQ + "," + tp + "," + hi + ",0.6)", gE.fillRect(jc, jd, g5, xM), gE.fillStyle = aZ.gF, gE.fillRect(jc, jd, g5, b0.ur), gE.fillRect(jc, jd + xM - b0.ur, g5, b0.ur), gE.fillRect(
jc, jd, b0.ur, xM), gE.fillRect(jc + g5 - b0.ur, jd, b0.ur, xM), gE.fillText(fy, Math.floor(jc + g5 / 2), Math.floor(jd + xM / 2 + .1 * fontSize))
}
}
function bn() {
var a5O, gN, fu, a5P;
function a5T(fz, name, a5U, fy) {
fu[fz] = name, gN[fz] = new Image, gN[fz].onload = function() {
0 < a5U && ! function(fz, a5U) {
var fI, fJ, eD, iL = document.createElement("canvas"),
g5 = gN[fz].width,
gA = gN[fz].height,
gO = (iL.width = g5, iL.height = gA, iL.getContext("2d", {
alpha: !0
})),
gK = (gO.drawImage(gN[fz], 0, 0), gO.getImageData(0, 0, g5, gA)),
pR = gK.data;
if (a5U < 3) {
var a5X = 2 === a5U ? 160 : 600;
for (fI = g5 - 1; 0 <= fI; fI--)
for (fJ = gA - 1; 0 <= fJ; fJ--) pR[eD = 4 * (fI + fJ * g5)] + pR[eD + 1] + pR[eD + 2] < a5X && (pR[eD + 3] = Math.floor(255 * (pR[eD] + pR[eD + 1] + pR[eD + 2]) / a5X))
} else if (3 === a5U)
for (fI = g5 - 1; 0 <= fI; fI--)
for (fJ = gA - 1; 0 <= fJ; fJ--) 0 === pR[eD = 4 * (fI + fJ * g5)] && 200 < pR[eD + 1] && 0 === pR[eD + 2] && (pR[eD + 3] = 0);
else if (4 === a5U) ! function(pR, g5, gA) {
var fI, fJ, eD;
for (fI = g5 - 1; 0 <= fI; fI--)
for (fJ = gA - 1; 0 <= fJ; fJ--) pR[1 + (eD = 4 * (fI + fJ * g5))] > pR[eD] + 20 && pR[1 + eD] > pR[2 + eD] + 20 && pR[eD] + pR[2] < 40 && (pR[3 + eD] = 255 - pR[1 + eD], pR[eD] = pR[1 + eD] = pR[2 + eD] = pR[eD])
}(pR, g5, gA);
else if (5 === a5U) ! function(pR, g5, gA, id) {
var fI, fJ, eD;
for (fI = g5 - 1; 0 <= fI; fI--)
for (fJ = gA - 1; 0 <= fJ; fJ--) 200 < pR[1 + (eD = 4 * (fI + fJ * g5))] && pR[1 + eD] - 20 > pR[eD] && pR[1 + eD] - 20 > pR[2 + eD] ? pR[eD] + pR[2 + eD] < 40 ? pR[3 + eD] = 0 : (pR[3 + eD] = pR[eD], pR[eD] = 255,
pR[1 + eD] = 255, pR[2 + eD] = 255) : pR[eD] < 50 && pR[1 + eD] < 50 && pR[2 + eD] < 50 && (pR[eD] + pR[1 + eD] + pR[2 + eD] < 50 ? (pR[1 + eD] = 0 === id ? pR[1 + eD] : 160, pR[3 + eD] = 180) : (pR[1 +
eD] = 0 === id ? pR[1 + eD] : 160, pR[3 + eD] = 180 + Math.floor(75 * (pR[eD] + pR[1 + eD] + pR[2 + eD] - 50) / 100)))
}(pR, g5, gA, 0);
else if (6 === a5U)
for (fI = g5 - 1; 0 <= fI; fI--)
for (fJ = gA - 1; 0 <= fJ; fJ--) pR[(eD = 4 * (fI + fJ * g5)) + 3] = Math.floor(255 * (pR[eD] + pR[eD + 1] + pR[eD + 2]) / 765), pR[eD] = pR[eD + 1] = pR[eD + 2] = 255;
else if (7 === a5U)
for (fI = g5 - 1; 0 <= fI; fI--)
for (fJ = gA - 1; 0 <= fJ; fJ--) pR[(eD = 4 * (fI + fJ * g5)) + 1] > pR[eD + 2] + 10 && (pR[eD + 3] = pR[eD], pR[eD + 1] = pR[eD + 2]);
gO.putImageData(gK, 0, 0), gN[fz] = iL
}(fz, a5U), a5W()
}, gN[fz].onerror = function(dE) {
console.error("Error loading image at index", fz, "Error:", dE), a5W()
}, gN[fz].src = "data:image/png;base64," + fy
}
function a5W() {
a5O--, a5R()
}
function a5R() {
0 === a5O && (a5O = -1, aw.g2(), i.uy(), az.cq(), au.a2S([gN[8], gN[16], gN[7], gN[9], gN[10]], [2 !== b7.id, 1 !== b7.id, !0, !0, !0]), b3.d1 = !0, gN[7] = a5P, gN[8] = a5P, gN[9] = a5P, gN[10] = a5P)
}
this.cq = function() {
if (void 0 === gN) {
a5O = 22, gN = new Array(a5O), fu = new Array(a5O), (a5P = document.createElement("canvas")).width = 1, a5P.height = 1;
for (var eD = a5O - 1; 0 <= eD; eD--) gN[eD] = a5P;
a5T(0, "exit", 6,
"iVBORw0KGgoAAAANSUhEUgAAAFYAAABGBAMAAACkrn5fAAAAHlBMVEUAAAAiJCI4OjdcXltoameIioejpqPExsPY29j///9xarZIAAAAyUlEQVRIx+3WQQqCQBTG8TdOB5DUI+S6nRcoPIFhu1bBHGGO4Any3TYxAkWTv1DSYr71D4b5mOE9kWmszkeC/ZptT6Ocl+xj5qgtbVR1iZn9VE2wU2uO2Jryhm2h2OaKbdZgu/NKrXVK7f6q1JpaqTWFYpvrUtqhPTTYpst0aBOv2Drltlxh392iu0U1t5I4biX13PZvF7+zvOFWihXWlNy+aqZ/M3LcivXcds1xK9kKK3GYAVtYe+8CZ/c/7Br9blSNcgn75O/tE26TasUvH0ImAAAAAElFTkSuQmCC"
), a5T(1, "victory", 6,
"iVBORw0KGgoAAAANSUhEUgAAAUIAAABBBAMAAABWYLC1AAAAElBMVEUAAAA6PDlbXVqEhoO4urf///8hX3N2AAAEcklEQVRo3s2ZyZKcMAyGWdx3alLcSaW4k8lwZ9LjuwH3+79KlkljLb/czFJp+tYusD8k/ZItF/5y/a0F/dXb+KW472/cQCIbd8b4//+dDFu12/ByZ8Jkq0uHbRvuTFglwomOezx8j5/HxkrgTXEYqSxQyvcWCpVEhOG53p3QQTGfDiMUlppJxPXHEQrVxIT0092fEOaVw9Q8LpV5GysPJGUsWweojyCVCAgPIBQYc8nzwxEIvcYZjyQUmPv8kYQC68dhNoeWmOsD1Tyc/G5L+elvHLzs0tG3l7/PPn6KVJTfGxqpG0+9vXFW2w+ZGaoU0x3YrfwZP3dkrONijUK5ndBOLBAh2Wz8CwybMAESRPX4kDwZuGODMNkkjLoiwtLTyac8IXs2NpbJO2E0YVInhSH/c8LxolY1CVs+tFiEi2TqGW8lZqikTRlhLSYPGcIK2Ao/3gi/ilwiErQz4nIAJnx9xyJsga3w4xN3s6EbTVhowhJNbhCWyFaYcOVUvShpLZ+glfmREurZZ5MQ2wqOx/Q9k3YyeWNgJp0B4YgmNwh7aCv8eJp61U4mwT+xsJwA4Zarv37xm+ENQr89+/BCAwc93qXhRjmZpJeZ/Rs0YU1scU2MU1FkM/tKbT8kwt8+LB+8TtrT9dMCqHsrsyhYmdnfiYkEoaPBXRG/sPd8eunqZqfPmS1MHRGsfGLF5nX2Z4OwZWm6T15ihK3+/D7XBKFFcAErjzKVx3NTGIT8WZe+jRGSl0pdC7RUBqJW5D3P7O/iI9itDzx2Gla5oiAs6YwjKEBSKhOQMiDMnicGNmkUwc6V8sPTmHeyWAGpBELbgJWzx5c3Emqc0nIyya1Lqvax+BhhKfoE4/bdgHDR+6YOn6Zien0FK5fZpiInrITeRpWaL6qr5SwnUzGftJXTytUbCGszIzhjR8HcHKzTVNfqU9SHCGeRdAdjB1vgE4mWyuR1Q0QRLm8gDHsI9SErmg334HVD5EOE8w4vP2tnBrPxsICPeJ9SjDgESnkGpurMxkMEnUOVbT5Xy2cAEnN3U7rd8Kn5EGRscJOz5LqIunNoElbx+0eq3hev17IJRyNDwbpMGjwv3V5CsHOotRFtwhYWSmvn0BB9nfftbUq0txlV3rAJHTry6JVR+yG+f3/oVNDbhKiVYO+xWftkNQhPbLEW7bEr5WabsLClDM4p7Og/7zmnlPic4mVMZQj9xdzgkpUrmmTfctbr4VlvC/9hB2FvCoWtnM7A31SukJ1Qcl5+Audl2pMKOwidKRS2cm81WwHhmO85BOL8dQdhLZsxmNDhRSHhjb5NoF+xg7AwhcJX9nZ5lIRFvvcV6JZl2kHojZonVm7t4tMbG0ujfxio6+YdhD2MLbVyZZd9RVjhYo+6InEH4ck8q/KVezMt9daeA/exWc/h6oocoTP2Q/m7gKXIEZa5u4DAlp1uE5aWUHL3KbHIEvL7FFFsAouE+TYhlcqQIyR3UrG5QZi7kwoFCMT6k648n17v6n7uv9eL5/et9Asv0oTxJYkUxgAAAABJRU5ErkJggg=="
), a5T(2, "defeat", 6,
"iVBORw0KGgoAAAANSUhEUgAAARMAAABABAMAAADL6o5mAAAAHlBMVEUAAAAlJyU7PTtUVlNsbmuJi4ijpaLCxMHX2db///+Cup+UAAACo0lEQVRo3s3ZsW7bMBAAUNqyZWUzsnT1VECbhy7ZvHTwlqmAN6PoUG0CggzairpIyi1Nk1b629awTPGOpHm0DyE1WYJEPlHk3UkW6w5t7eMXEWczKHvN52QoXfcjHUoUi4PSbdOhtItkKBEekZPSLdOh7NKhtOlQ3nwRnaC8pENp06F0t+lQvsWi/O/4+uPXiJNljcbgvUb5G5ci3mmWeVyKqGLNW5MyGyh1ZMo41hIyKaJRh573u9JY5HDo1LMsjBOfBLq9/oC0Rg4L5UYdeuWi5HqDAZShyT9clAKGBzJlBgMLB0UN9CKMksOEyEFpYOFBpkxBpywU1AmZkrFThpv7HUYZwcjPQEGzj04RsOpnoJRwnGNScFo7h7JS16HqcmbJDIUzW0hrWstQVfQWlMkhXg655BzKkoVyOPn7EMDjUa4Os0SidsIoCxbK5tBWhV7FCZSRJ8RtT1M6mE2PYb/tE1EdQsnoFNCpizLudwqYDCiUqScdhlLyfunkeslCo+TMlKJvPkNvNASKr14JpayPV0mtZKFRfFVcKKU5Cir4rYRAWXtq21CKetY31uVxiiI9FX8gZap+F7BrP2WC3oMupRSqZprBeeunlCiNXkopVesTrWShUDJpLS7sgd9GwYG/cn1B8lFGVWctuc7PQcao1hTK9YdP0hjgCykTo1579lLM7RcHxSg9VZYMoWw5KFfOL58BlHbOQdmYDa+CKeC1/2yKpbqvgyk1B2VsafgplNI6b6smVnH7wJq7h5tO2bFQCvdNkintkoVibX8RRtkJFkoDUmCpRwkqpZ3zUMDsgDObStkKFspUj9tqEr+EUO4EDwUt8Ez/ykKj3AkmSonGWGopn0J5WAkuSoX+KG60ksVL+Xm/8kXuAAoO1RvtOkT5B9F51EylDpRdAAAAAElFTkSuQmCC"
), a5T(3, "orders", 6,
"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
), a5T(4, "crown", 4,
"iVBORw0KGgoAAAANSUhEUgAAANIAAADSCAIAAACw+wkVAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAF0WlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDUgNzkuMTYzNDk5LCAyMDE4LzA4LzEzLTE2OjQwOjIyICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDIyLTEyLTIzVDE0OjA0OjQ3KzAzOjMwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDIyLTEyLTIzVDE0OjA0OjQ3KzAzOjMwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAyMi0xMi0yM1QxNDowNDo0NyswMzozMCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo1ZmFkNDE3NC03OWNiLTUwNDgtYWIyMi04NThmMGExODUzZTEiIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDo4ZDQ1NTIyYS02MDRlLWYxNDUtYWM3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
), a5T(5, "arena", 6,
"iVBORw0KGgoAAAANSUhEUgAAAQAAAABABAMAAAAHc7SNAAAAHlBMVEUAAAAjJSM7PTpUVlNqbWqHiYalp6S/wr7W2NX////RSpP4AAAD9klEQVRo3sWZvW+bQBiHiSGAt6hdki1Dh7Jl9eapkjdPrbxV6lCxeaw3okqpbqNuzMd/2yRw3PvJkQVYYhHgnvfer9/dBQG4WnftgwWuawBwXAIgBQB/lwDIAEC1BEAOAJolAAwAaB/mHz+C4y8RhQkCKOcHuEMAl/kBDgigWTgG2/Z+7vFDPH77fW6AmAAUSxbi1+t5boAdAajnBjgRgHbm8a/o+HNLgiEGfy0UhUMMfrU/zvMCbOy4HxeSBKehBJtlirGze9AlW1GqtM2fH0rp6HroCTWzNcnpTMmxa+f5HZcEORnnyQ9gewkFyJUcS1zsp1wSUID2tx/gKAMYJccy14MSLgkYQOeeUYCLCBBqOZY7LRhxScABzl6A3gcEINFyDIY+lwQcoPEDFBLAWhE8IQQ7MUnAAd58MA5wkQAOiuxOYBM+sGIsABy9AN0QBMAosnsNx7xjkkAAKP0ABQdYabL7IBpWjwD88wNUHCDWZLeBPditkm8wwMuvD1+Mez8VU/qE3IwBUkV2r5AKWTFJkIPymUwHKBhAV2VzJrtjPOmGRiEECKcDVAzg7X9NxmR3ih2TQ0dTgGg6wKsPMED3aspe2+F9iYyWKwjwmQWhDlAQgC66zjGyLmCZ4yakYQCffo6lYUUAKgLQmx4y2U2WQ3FLJMHUQkQBXt5HANb5hkiCa1L9Q1quppZiBlBgABv+OZEEvKCQvSoOUAeTAGoMYHq/bkjsZCpA9b52zADaLQSI7EMpkQS5CtC8T5AAgEt35xECJHbcmEgCowL0TXOqJAMAZfenhgBrO/MhLsaRPn4fhRSgvvED9H7dAYDDkGkGye5kBKCUAJ7uAz9An1qGlfiH4ZmjuDvVCntVGKDZBxMASDYMTa5xpbcUd6ekXQIyA80WAYiluAxu6Wdi2brRGOxLUw+w+obfHAeIvGWjkXenhL2qoRfsUHKMA0Af1NIejC288ShAgQBs0X6cAnBLAE6ydSOFeGiarhsaGBoegIgAKNYJM8Oi0AHshEqoAQCTa3Igg2T3aRSgxQAJZPcBpAggVay7Ek9JDBKmDmAF88AHEKGRMsW6WNyazJGfcjYZytqwRgDuK7XS8vboK6V4fnTGAHfiqwoAWuIYJcc24motRY7J+YQVUwBCcF9seWc0M3vx+KQhqtg4Li/A8PF6+OIRLYUqNDP38gHSFgMc3LLND5C6+2tspbHWXStnJEgSQIDUVTE/QOjuH8Tl5hbMdaWcn5TiyujVfX4A+2YNTEYbo0cgBp6VU8wLBrCFq54EkNr7K2Jlaq3LlR2DDLoGAWyGjjgBILT3Y7zadItsbc8khU0TASTD8xMAetfXrGr2sdf8B96/CJXN/8t1AAAAAElFTkSuQmCC"
), a5T(6, "territorial.io", 6,
"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
), a5T(7, "youtube", 7,
"iVBORw0KGgoAAAANSUhEUgAAAKEAAAAkCAMAAADW8qrvAAAANlBMVEX+AgDxYgDjhgD/eXnQpAC7vAD/oaMA/wClzwCH4QAx/zdf/1ty/3Sf/6D/3d2+/77d/93///85QMf8AAACr0lEQVRYw8WYWbaDIAxAsdVqAzzi/jf7GBIGZxxO89GiUbgGEkJEH+Q7DF3bti8rjRPhxTftLavpuuH77X8gwv10BLQrTfsEpHECG4TwEhUy0ItKW1Gh7Zp6AwF0KRP16GSLsApQCLKidt1igE3NZZFjKZWEXR2gaMguaSwPa54jbCoJ2Yjo+lWxpR8jhFpA0dH6jlzbIzhCdOIf8606wm814atPq8+whXDXY+WS+Y4QDtWETdYxHlmGFwm7akLRZwsRaLrVc4TtAsL7vUkIWbxRRBrCngu9xArSinvS/cuccKYhQpletjrXl3ZasRQNP+Pfe9+ZZZhd4EnW5KmYHNxwVFIZ4UwTCP1U0GqhC3+5QjiOn11CPxQGj9EJ0Io8QchM6fMIcZVw/PvsEfpOAxkUMQ9PEObvZh87KtGsEY6rU81bs46zg4SLoNiI1YRaYvGECl2aLcI1Rib0Q2gM42HuN7qeUFOEtV8HZMvwv2ikTzLyZ4PQj2WK5U62NCc8Jd2ImcghwiUzRkI/wWHcOD7nPCcI2ZhxC/BPXiJUaXWrOwjxDOHmLLMXxlhzD6EpCbc9ZdOXadF5172dEJUK83Il2jBXCmE3Eka5ErF5EPMbwgO7Xp5e30+IJBcyh2cJzQ3ZV0GoniM8n8HeTziN2DZH1PrCKaAghCd2PZ/enT9JlYQ9D8dHQFNPqMYskUuEp0+jE0IaVxakCJQt54SswYIQZci+MGVfwZaitihSuHJGSMF7MQstCWea4tpM+tKiHy4sw7zcgMWoNIdOOyWcaRIOnSAAs5T7dGVpRpi61dmOOCqYEs403nQqf1dyXwjnq3NZXU5yMmbsFmA0ZJdGhmeAS3RJA1ET6nyg7c14GtW+L8UVzuEo4zMVzgM1WKoSU5m44TJxw0VirhLDL6rE/6vBvdrCmmWnAAAAAElFTkSuQmCC"
), a5T(8, "googleplay", 3,
"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"
), a5T(9, "discord", 7,
"iVBORw0KGgoAAAANSUhEUgAAACwAAAAyBAMAAADVdiTZAAAAG1BMVEUA/wBI/0lu/26P/5Cl/6O8/73R/9Hn/+j///+iRuwXAAABJUlEQVQ4y83TvW7CMBQF4BsKdKVIpYxIRaJjVLUSI6JDGSNlCCOq1JC1f+CxFIL92D22E+di/ABciZB8seRj35joVZ3VN1FXBSqhRYgPJEIsSQXrAnmjL2uP5Usm81z83Bec5WM+J9T4vS8Yfzz1yFQ0v2ackKsrxr2G7d4ZPjK1O214z3no+Jdz1/EKTy1NI/w6jmcIID6JJirGe8cYdIdGIcQOwx3j/gEpI6X+qoRkGqrnd6OXFR/NRAcdOWFc6hDPera0Xk/Fozo1ck4bHsSVpg0jYJSlervGW9zWSdQXhhXozlbGek1uY9/s2hRWect7ucnsf5ld7DfosX+kcsv+AdwtDfvHdW877x/u0raB6Oa0qG35rKZhbokg41sKclQEmTr/f+SUPtWxuyYAAAAASUVORK5CYII="
), a5T(10, "insta", 3,
"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"
), a5T(11, "emojis", 4,
"iVBORw0KGgoAAAANSUhEUgAAAtAAAAFoCAMAAABJ+DwrAAAAeFBMVEUAAAA9FAoANgAlMDWmDRY9Lw6DKxfpDyMTRf8AZQBMQpRsVRhSX1spap/xOBWOVS19XBoAeNgAiwDUThKGa+btYlE8ltuuhicAwgDidzrUjAUAwfPjhoiVnZv3ikevnPvgpieAvO0A/wDFzpDIzMn+yD3/02/////hzHRkAAAgAElEQVR42u2dC3vbPK6gZdl0jiqn0SptyKZ1yvqS/v9/uLYuJEACvEiyk84Mn93zTR0H4eUlCIIgWBzCRSnVtu3l/x7mlV7OfEH/lXIU87+n1yda3X+2n4uAjLYqC1DKalqlfDntNEGunHKanKXqcys5hSenBP9uC24Y0serLQv17/ZPWA4HtKoKqpRtbm2WktOWpKDcSbZUfQ4L1SdFTluU8B9kbdPb1X9TfYJ23WS8ipzaZFdpKTlMs7JZ/Gz1SZKjLv9oEdBebdPbNX7zE7TrNuNFtawtwiV16GNyykQ5qowIav/N+iTKucJR+o2wYCS3C3D2Cdp1m/EqQtURdSP1+Vq0lI0ASOdVx8o5YzkpCMHZLhopz0OFmlpkzfrF6lPG65MyZClyrvVRWGDrahYgZ7Xdbp6/dmWz2a6c8ULq7mPbVdxuvLyWGXzEUBVQdG1EqeRmheW06e2qtSdIilQUP1t9UuVUY8UVqbZKS+lq89Utz1vbLscI+Oh23Wy8nJap8YuNXxtcpSqtWTPlmPlFNKtvW5M0xRarT7lMfTLkOPXqWrLylt/tV7psvK+uVhTQ92/XjcarIPFpznwZRZVl2bYRDFPkBD1IZbh7utLEUVysPsUy9cmSg6vVDfXFoEjC2Ud6NfzqJ2jXbcarIOTU53CRsQ1iphwV6x8ZEVRHeuiz1SdTTrEu7L5wABrayCGcO6Qt+N0vekB/ULtuMl6Fv1yQ1dFkT9PDX6Y1y8ppg+tOHZczNK0MLoOfpj7Zcn6uba0M0COaxeZrtGz7LWP/Wyu3Zh/WrluMV+HKqZkaaFZJK7I+Cc2yctpA/8gkQTXfQ5+tPtlyHn/+tBs5BYC+qunt15SyudoaGxroD2tX8nhpBB/8lz9ehaPnmXEXrjmjLwvhmiS6yuCnk8Os8sP6pRMF1dwq9tnqky1n/fPnz0czbBjozeZrYtlwQH9Yu5LGS7/2xf7i8IFmxqvAciQ7zM5P3n9ey4tfqypjmg5zhSSo7x9hq/BKdRVoqaR76Fb1SVT21Xw5L9eetpUytvC1PHz9mk00Vmkf1674eI00Q6DtR5ocrwKtF5LfmOIPjj+HsnZGv83lZ6hRSfo3xv7R/XHBm0Mz/lRS1sJS9TmUmePF1CdfTt/Vj2b0B19FLs+WaFyrD2tXdLwAzgBo/1M8XgWcX+y67FT1/acpL9R8r3PaNawaFbXPHSbhmxkUqKWfzad4i6A8vTG/PkOFdJagmjXIcuS4mqO0QGfxPBK9RZX6uHaRcsB4QXDh6ux9jserAPOrDswlQannsaNLPE/z+BlrpHz3s8czJPoZfMq6g5apz9jROlNQ7en6fDlHqDlK7Ob4+nUC0aPXLhgmoRmXlh9PQbZLI6s3o39Kj2dNdpb2iVYQ6F7Rh/5wQ6nncS0s8YJxzi0NbpjCbnWNBsVMVHTGa1YSTPQy9Rk7uskW5C2q+XKQ5rjKsrvCXJ6/PsA9YZFIdF0kAI3b5SrV5P6x4+VrZn/7ZL4Bx6sHOmJooh8eA0DnG6zAbG2x36aPTXjWSBVbixkP1WuvxsfghXbR+gwdLfLlSCduIl/O3vZ0AUhcTeG5V9HjjI+EsomxFAlAo3b5jonk/jHj9ZoyJ+yXwHgVpj5N8M/SFrRjcrTT9Ni4aKBpyo3XM6W2QVkBUcvUZ+zoCXJ69dZOl/PuqI7rwlr2Kvrh6ySijQldLFJKr12v6Ty7/WPHK03Hmz8ExqtI6Gfh/hQqaWSQTx33fqq2QMrz1zDQr1+DRLdufXSinpZ+fYaOlpMahmZGvpz9T6er22H/NUlBX40OE5qEuFz3hYY29MPKbVfYVtDasYlR/9jxSpwRevxLdryKeD9rf5l8/0m57WaMO2hYGwlP8DeKTjGKA9ZHhgNmTCiYCHf0rJk6Qc5PAujOiF5NUtBDXEcF4+J6ZnddoaEdfkj+TDntCqlnTTgtYP+0yAOdtpSO3zPjVcT7uYbrtpaN0FZJHxtXtTrjKSU5V73PbcO6juZHJKqhv+JFFRoRYaS7KNs63NGzVPQEOZ51145G9NcZQLf+/aZdAFr+h/1t1dY9CtGBTZyLNOifGXrDjlcxzHgZHhI5sFyYP/p+Qfr43v+0pMdrCPDzVWNNBAcaOREFHbOhBxXduvXRIrIO1bhK7hb+PKen1VQ5lIZuEyOSIuuXo6NDRFP6W5DtSuXZKnHbP/58l/VlU1rLZMVR9kBX4X7u/mJt7884fNamQq4cG89bU+ESV1GakBMBWhNuaBpotz51wOcx3IGg6tNPeG9rye1YNNXTFS9nog09lWe7fg31kQG7QgRo11S7eJ41B7TtH2e8wLUUd8yuoDeGTo3Gq+gJqmOxDey9Gm3NcSwHBuTVJM/INNfQnbSJKeigzbHqa+S1S3LhYLL2AxE07mjU7H7p8VeeYQwaf8bTctKPVaCXA874bTwauuu1ld1mu+0SDLRd8xr0Q6CiG6pdOuDeAKzjr9Vwl1qT+OBhbOAxhRh/OI5XEbXsIH8yoOsdOcZo7UZf4glyvViDTNbh8zIK9Ct5UkhpaKJdWlAXIcarD9KfyOW4ooozdXQmKK+qi62x7sopvmzfD61AB23SzGn0tZXTLlmQ0ArUJk9/k+0Kues0VN3wH5K0EOvxdmxvGghKwTbD99B4FTGLwxoOzPWucYY5cmpbixpWSNrxlmjoG3Aku40q6JCK7nuIbFfj3e0ZcRaa+uqoORp6yRI0z5houPQ4Fsd1UyKYy6SD8WiIfh/kQItjuIuySbAyDNBbt101qaIlbq2jvxuyXVYJNxkBB7Bd2M7V9n83qPdFj7nu9aaE41XEFEftmxoab/2Av1+gakIEoDwJmJGenKCJ+EoGJ5FWIt0uWSCkR51NdP9YH3fP3HRL1aUI/Gu6N0llb7/4qt7fe0t6j2GNMmGtjqORU0KlvIpfwnpeYeo3XrtIS9lRAc6+kG6XUdB1zokoaJegfVLgIESOukcO/Wa+OIxXcYhsVaRnamhCA7WeAkJaENROYOobT0639LxFFTSvosepyrRLQBVUBG7BwfrgjxtqhRFmPK6zpPFUvSsHBkkkaXrQrq2jfQNmx3ih8Jl0AqFlC9oVwq0Nor1h2qVf4Yz09xhNd5jekEshHC9hmi7HOjR2UNC6L9CP2kMRc9qdteMx1u4I9EuGI0eiwUBANxAuxziqxpkaV9Ccin7tpyrfLqiiQ7eLhV0KBcKtBkNRU0uSdn/jqjocOcOq2sjarcCQoaXzkXq/oJRjY4zAbkLmBgJ+5bWLUNEe0MjEDrXL/k5DL/bkQoXGSw+/rMcuMMrCWhjXzsdA9+PVA52x976K3BeYyuuS4cjRDWxOY+1v2YDWoH/UdumpaVqfnY0zzby2HaTPvM2hYR/XjLFl6wMghuwJahW6/qqjAZQr52w5qL3oNms8SleO8iyygNnhmhuGcdwuiQ+5aaDBAXgTahcLNAzbk2eyXdrqbKvohfnAhBXJWo/n1/bv9ONVtPyeUDY0z6e/e/gr/ZLRzjl9oJaet5iCpqB/NmsPU5/acYE3BbMnJJdCd1Gp0cCf2fWpWwuxHBhjXjsnOpr4DmoXqYW39Pb4op6f/a/jdvkhooLyshYFsq/JdrFASzbg2huvwRcnTFUksI6ErZN0VfalXSzQuqZ+0PP89y+s7Y2A9pF+9nyb7hf0OQz0uAcUMuT4CAJdw9+VoraiIXtCxIBu4KBijdjQmp4FetDRK85+3nyNAX32mJXMOQT8WR7QOCRVhIDuf1d3voj62pMNNPeh6rY/CQNtEjZJmueLiha3B9pF2ndxPhM4B4CW9OGQJL3K58jmMi+cwxv4eqKmzwF6mwy0dJit6YMw/LMsoHXKRLUfSBS1bGbAsA
), a5T(12, "flags", 3,
"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
), a5T(13, "bestTeam", 5,
"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
), a5T(14, "bestPlayer", 5,
"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
), a5T(15, "zoom", 6,
"iVBORw0KGgoAAAANSUhEUgAAAC4AAAAuBAMAAACllzYEAAAAHlBMVEUAAAAhIyA3ODZTVVJrbWqEhoOkpqO8v7vX2tb///8goTJXAAABaElEQVQ4y32Tu1ODQBDGL8QAdlg5dml8dZTa2TijXQpnIh2TwoQOxwehi2PB0flKYP/b7HFv5nALBn5337d7ewshXZyuKX2PST8egUW76OE7EJFa+BhJ9bSsUWFaeTV3GKHbn8EvlB79bjSv4VO8jUr4VdiHNnK938MHPie0Yh+ZLqmGuNsJ7CNURgewI5qPoRE86GwkJyWIBIfcUfJrmMm0sclDyDnPWmLyADacl8jnRbEGKIoiJRP4EmU2LJmIDfLvAf7z/37mv6IUm08pzbV/rx5f1pPA1Fn/iX3eS3nekAslz7gcGw9bg3uqn6Rup5oH+uaTLpO4r0SmZVuUFE2lfTc+z1qr9+BVtGJqzq1RHNfQdAtnrEW75UwuXOFgvj3crpCyDu6UIpP9fPHZU5XkiYVXvsXIPcc+VwspzY2pPorE/NgCfYK+QJ5+QFA6fjQt2A4IWuIWODixe2ELcuIUNJGL+zQle92exY5pfDIaAAAAAElFTkSuQmCC"
), a5T(16, "apple", 3,
"iVBORw0KGgoAAAANSUhEUgAAALQAAAA8BAMAAAA9AI20AAAAG1BMVEUAAAAjJCJUVlOEhoOanZkA/wC8vrvW2dX7/fq38z8cAAAEbUlEQVRYw+2YzXOiSBTAGzW6x8ZY6pGYFMMxUct4JGbLcMwld9QpliNkLeUqUvT7s+e9BoUITpIpuWxtp0IJdP943/3B3t7eXtnF2xViGZIbf1+8mVcS3YQKmk3o16AKtLhCdAsqad4be3WrQcdX7BUqalesURXaZM2q0DZr/TfQQVVo8fTXb/LgzO9SiQpon/WPg0fjk5j3cuNnH74ZQPcztOBsegz6xnP7i+i99Tk6ZOwoadwH34LnR5jDBB6j9RjR4vkF4pEF6wmho1EQOyP83uwWuisX1uPgPNpmdciho/5efwiWoiZau86T5QX+ZACL+S0MpEKDVW9/PTMAljq0R026P4/WmJFHx30v2E/9+GFj7KzI8IIZ+K6AZdyCAXbowd3ewN9kkA4McYB+Hs078BG9gNgI/12trJ1L6BGEVjRoRwbZOsbrfipaqa1nUXvQOY+eB1kUIXpv+BAZ0VM8DI5od7id4auh7DBK0VOJ/rEtt7WYqXoAmxvlLn0f94Tp7qx3K24LFRL0IrCDOxiIzgZtLbqim6INQosevJSiTZwtr2ccr6lWsaJ2IFaRocM4Re/x0WIwhEV7hD2e1GmCjtUA0fB0Y5Shw9x8bCWPtlu6BIeswD95K7YiTT6xpWQJZG7ic7ovQ9/n0MZFa4jIkeuXLU/hpYXO0H4O7V4WbWfkWvZ6NT4zbp3F6HfQOVNzpXx8RDHalcX0c7SZobM5XpwzjqlMHA0/azf/FL1XeKlLBccKF6G7v4vObL2rm6WzciznC631NXTO1pl97ZZHKtxMl/wOdWiLG+UxQVO+btwFV7AMrDk99bvvbYhvFL2A9op5jnL1Q1KB38lgDxUz/a5gvYM8CsToUsUFr85rMqWnp+hdDt08mtSKGKI413/yOmaVMl8m+aQpE9nBbGzBV17WaHtPuXYipm+0xil6n0Mr7sGkgSAVUBxMqSAkWbVmmmBtqp9k63v8t2uotgs+dgwP9jyi4/xOJHVkqJBNEN2ieLBCikSvlqxWsJcu0YKCCHn0wqb6eojXrPLxIpp8aKJMvE/mnYZknJ1ySEfyCaFJL7SbVycFHMc5uCpDm0Vjmw3HMXGEDG5mkBJSk6Qt0T6IllLihdCaHD09RfvF0id7KglaFNBk9lN0nXZfBYNEhdInmIoNbwoGiZ1EqYJBWuWrJ+20PkX0CZQWeDN1I0LsuizuFAWmlBoSNwKhZXJugwLaP7VH4jGth8EXwELB4OtiPDRlOP3ACwazjY6+J2fXJdrHjlExQmRWfUh0WwY/ysbV6xkWrZDx8cMxZRwNlfDYLYqkk0cJHbGOo9VKljgLpky2K04SJROxfIXxynVOfg+VBcal/O47S9YUe/Sy0ORTQsswM0rQ4iepsnEO96pcaYdqwI31YCINOrtNtV2pqpxl1nNUd0hPo7lcJg0m39rLpEU7F3cX2yb9jz5paRJ8WNF9BV3hRrrC7X+FhxYVHrVUeEBU5bFWhYdxb6+Nf7YXbpv0CLGqg89fkK30UIXyeWIAAAAASUVORK5CYII="
), a5T(17, "loading", 6,
"iVBORw0KGgoAAAANSUhEUgAAAZEAAABGBAMAAAD/Q7RHAAAAGFBMVEUAAAAnKSZKTElucG2Fh4SoqqfLzcr///+y5yZlAAAEnUlEQVRo3u3aS3PaMBAAYGNsuHoy0+TKTJv6SjNNfeWSciVNJlydF7qGl/n7JTGSd1e7wgaFaWfMKfFD1qeXV5KD8cb8kuC//rWSVtJKWkkraSWtpJW0klbSSlpJK2klraSV/KuSbw9qe8HsfnCyfHVuZu95Kmb3iUdJ+KAvKf7gM119vDoUb8Bv9gLsu2PD97+n4O/tr1/+OzHXXiqTRjHyJukqkLcndKqnDw94yTYfty7JoyD5jtIYeZJ0FEr2Fp670EcnkgScYiRrXkJLI/EjyUjOhtzduSwpBrJEJ4YloSJJPHqRRDRnK3DSPHIpS8w5TjLnJJlVGIkPydjKWdVsw+pZDokueE5SMJKunULuQcIky5a/S7KQJbtiQZLUTmHlQcIkW13YYyqKkRQOycKWKNcjD5dwyebMYJA7JLscspLCknAJgLHxUEnEJbtkmAuXZC5LysqEEq4V1OkoeySm/bxenf22ujd41NolWTskCyoxxfNydXajrL55qCSDXe4LeaNHdl8wkiLofP2NxwNeUhBJiKKJiBbUwRKFBtIxbrVlha3wCzMGGYzROMxLPhIDkhjn/aOtFa93x0o6uHJ1Cb3Bce1NoZYMJabN5w7JEkv6uLSibQT+w0PcFZGhQyFYmZ18CnVY0q0hKbAks6JrL1F9j4S6Gar50jVK0csLSTR97pC85x9IprW7+CESU0B9psCTHroGS8ZgwJAkSyRRqAF7k/TJyIFkWhCjesOSC5CAJNk+GEjqvwobSVIS9sRwVO3vzoXo2TEXGhZOSQ4knUazq/qSDMXe1QgAbp3rBpFzkl4dyQpIurBnqibhilsyJo2WeU6us7U8WLIZ2JLgkyUhkFSNKoN5x5K4liSvJNEnSaZE0gG5ic1dfThFaSTRQ9vpJbBOqsE3hp20kUS/r9JPl0itKzGjwbrqPXlzia5jdXIJ7I+qCsrhFKVRjyeLD6DHJ54lrlEYVIQC789mkliSDD1LUhIEgTdjJEzXm0nw7Bq840eeJY5opSesBrHv+LUoyQTJ5BgJM113RJCpMNnGknSfJKYSGEH6l3BR/dS+4c2WwBidlaDmxUX1oR+JMNNa8MtHK0vSgUZekhIJnWl5kpDZb7fKGLM2iebuBZqp5bIk3rBTepN1TxJT8gO00jJhO3x5FZSYDYuJLKGdgaxI6P9BwxuZgyt4cI8kYxrOR4770kphJTm7VmhZSZCk+H68ShRcbjxJ4MrdNWxFY2mlMJaanSSJyAClwCN/Pmx8SaJ9zc46wUkWLglISl5NPV4irXCH7B1F0xVuvMXnWOH2IBF2HWLcLUE81mjXgWzRTODI7VvSdfafBZmBjRruBKHXp667jKvt5GiJsDuXkXBfmXbXaHeuPHGOJVzfHAXHS/gdU0W2Naam9BvtmJIdwIn0jnsKPEj4XWy6KlVFio12sXE5aElX2GY8VkJ2xx9hRSV2kByLW8WypEcilHNuI+l4Cf7a45ldLzZ5GVrfN4yC/ZKQhu6/ECTxJQnCKoK/s6cdqDfl5AscuIMjS/S/7Bc4z3SlR5DU+5VfRRWvp/sqKiy/iqr/IdZfF1HJgRmsN+0AAAAASUVORK5CYII="
), a5T(18, "target", 7,
"iVBORw0KGgoAAAANSUhEUgAAAEgAAABIBAMAAACnw650AAAAMFBMVEXUAADUISLWQkLMTQDZZmXAdwC0lADgiIioqQCWvgCE0QAA/wDnra1i6ADw0tL////afMd+AAAC6klEQVRIx42WTWgTURCApzFNY2lLBKEX0dy8iA0UxB8CKgUv0gaKBS2B3HOJnkUDQrENQi6KEITcgydR0l0CUYReJBZCi3YpaC+9FANS6GXZ5+6+eT+z+1adS/ImX97Mzs4f2ET2916vPV9/61At6Ifeq2UIZWXDSYK+IxLIlY4Z+ga6jL8xQbsFoFQrDtF7QqoThaxSDIKsE4HqYJAyhXZNDJxq6VCvZIQgq0NDSJCGgnqFJCiroB2lHTvjS06dWxJSHl0cjBjztm5JxXUBdaXqro8E4j2UD+gg1BamFpkQ75GgVjkkn/8SU+LVUHmaQx/wmB5pEHNzyh4oa08ZkU+oroZQhR8mKMO8PNdPBpBlvoixA67PBBC6lI4yzJVOgb3Nv1+OQawm3h9gJo19jUPHHLrhQ4UEazIKkzZYHJoRvxwuLAzE95voOWzyO5dQ/zkw/QQPfe65DfhwGO2T8JBCB39zqAM8l1Ij3QBMkSC0YFsP94nIB/4fj3vegLb+175IkCX94io0w8/zXJkX0IwezjLUNciTKZrWoSJCF4hLvlCookHHChppPhaB5+7c36BpvOm/oH+Y0x13VSFTx5vGEEzQOPGInyO5KPOUR3yVvrsDIFWBBVOFoR5hlwYczTfgPUmVj1y9SJKiBdhSMM3c0ItZzMwfWFMifeeYomZHpKb89MVWOCWr++hXpNCzfkmViFO6oEvTPtROaAWM/RRtDOx3QO0pyYveCjZ6HreH1saDhiGaeKxj9GUrBzl70iNj54FiCA3BeFVNtXsfEq2Odh/xrjPYxyuG9nuU00YC6DPqrKTcvD6nAshSNclbk3coR1BGDqCmpFJ3Hg++bN2OTNgQ6uojTh9kfP7g5KwnDcWiNl67CQy/SEzzhKvKZORvGqdwxqHLw47JWCOyYfSexaEHsYUmvj9cM6xG1jJlrjqmJcsiFu875nWt91I+4/yLxMXP3lu753PzK+tO8nYY3LbvS2SDtP8A+ntynBIvYeAAAAAASUVORK5CYII="
), a5T(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"
), a5T(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"
), a5T(21, "stalemate", 6,
"iVBORw0KGgoAAAANSUhEUgAAAeoAAABABAMAAAAnsyk1AAAAElBMVEUAAAA8PjxeYF2Rk5C6vLn////ACCfyAAAFMklEQVRo3uXby3qjIBQAYBEfwO+buM9c3Ntp2ZOZ8ADx8v6vMp2qybmBCK6SbNomEc4vcAS0RbG+1Iebvl5/vxev8lIf0+M1nl8DXboJvd5eET1N3QuoGfoVOvlp4q/+6fv3JL2evY83orp/uVH9NbLrp0braXrBLt541LenVpsH9Ao7+/DUc1E0kuF85ZkHdokHMriMPfNEpbo39fx3e1fbV1D3NKVb8KEn1TkpCShvbxET50gvnzdaDG4A520mfhHSvg+oWsHaN9QlCf0Ydc+vqFYqfUk8SeqGNpcDtW+oKzEJ5KqHghYO1ZrOKPLUa842oPYNdbPRGmnqka+JrDAi13eT1Cd6jj9LuV7ff/+g51tQG3FOk6sWei5Qt3Qo5I1raVG9oXbinCZb3dFTCtWszlz1ZwRve9Qli/0YtfW8QzP73CmS1OQD7A6r0aHn49QXxrPyWqlLVrM9BegOqxt5iZat7tleh5UjsslqYXk91HFqIy/RstWDzOOjuE9XC0eNXZQana/hOPUYUBtWZ5q6CmwpBNWlEHykug9v6NQUY8VkNu/3RKlH/1KTs4NqciLPx6k72qjWs/HTJavlw/C1Wwz35Nlxyldb6Q2pGay0OyJNX8fIneFhM9ylmhFeb45RX2gPtKSFRmGXa6e6+LW5WyiGuwTaO3KactTj+nGJdJbQBsebZq9a3hseNsJdcdaRgnPUw1q1FtVq+drNcMxudSmyz+Fw1xK7luyzZandEuM8gP8SyFqnbXkNu9Uy+xIOd00s54YMiZ3X65qrP9+bv/pOIGudXcWFJrwYl4auxB7C6jWx1DSCLLVZDpx//iRFrwXUmqezBHVRfPji8anvw1mTz7LUzRL4/Pc3ArkP55K3TJI6eOteUKv7O4qMnSz13HHsnLZGjSHqkbodG69p6qL45nxzAEEN+pjDfSNLPRfbl/CveyTlIwrDqkhV0/a+hdRgNBtcXJYacXuiBnW2jJCuxjOWPqRu+YajPUA9HzwuHZ2oG77ddztEDWe6Q0htHkFXvh31BPXySyuqQbeuWIz71OWP948rOLyNUsMUpvH389Rz8MsFjKgduA3Jph971C2bvegoNZSWGJCnhivAGquhVLE68tTKxagraVOlO0ANd6oLrEYTA0dH6R51w0OMUouLcps/D8d5BavFk3ZJmYdXPLWZGLXxP7eUpy5hcVhtgkvDNPWlEG7v+cJVgcVpnlrBZtTe+wJ8v26PmucuFTNL0YGntfLUwGaxWt7zua8W9qgVu3rrmBlpFXhaK1NtQGlIrcNPiO1aXzva2CZm9eF5XMseoG5BKyL1Sa7zkqIGKeIPKTuw0jSBmwPK+1GU+gQiRWpPnX2KGp7B8ffPa9SugpzMlkMi1LyLOv6kwEDUnjrHvdfr/6H4HqhE+xRU7UksczrLVGtQF1QrX5x1gtp3CtHahKq990TO+WolNIkNPO+6xrlP7btjMgbSUOOLwOar781gsfoUqnO3Wm93cKY25MxoeFCu2vD7VBa0zkhv2fQpal9urANq55vZDAeowV63Fm58DXR6OCSpq+AFQVKXrD84aRGYqG74yt2CUns206hT1GI+w/8KQNTV5Ln/9NVAuepKVGt2pg1OZ3vVenNziagb9q12ElolUa0fVQE1P9PNJK/IItVCerwEp5KGTTkbUGKuuuSZFmyKPs505QkqVs3Yf8ITaMeGAZxQ5aqX3y1WO5ZlNZ5E7lfjjfCxK4Lqkl/S4YT3IHWH1IrXWeIclKD+LGP9T+Tr8/9r6j/yRPVUqj3rEAAAAABJRU5ErkJggg=="
)
}
}, this.get = function(fz) {
return gN[fz]
}, this.v5 = function(name) {
for (var eD = fu.length - 1; 0 <= eD; eD--)
if (fu[eD] === name) return gN[eD];
return a5P
}, this.g3 = function() {
return a5O <= 0
}, this.a5K = function() {
a5O = 0, a5R()
}
}
function bo() {
var a5e, a5f, a5g, a5h, a5i, a5j, a5k, a5l, a5m, a5n, a5o, a5b = [224, 224, 224],
a5c = [
[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]
],
a5d = [
[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 a6A(eg, a6C) {
a1b[eg] = 0, a1b[eg + 1] = 0, a1b[eg + 2] = a6C, a1b[eg + 3] = 0, a6D(eg)
}
function a6D(eg) {
var fI;
ay.kU || (fI = a2.jg(eg), eg = a2.gC(eg), ay.kU = fI >= ax.a1a[0] && fI <= ax.a1a[2] && eg >= ax.a1a[1] && eg <= ax.a1a[3])
}
this.cq = function(qf) {
if (a5e = new Uint8Array(ed), a5f = new Uint8Array(ed), a5g = new Uint8Array(ed), a5h = new Uint8Array(ed), a5i = new Uint8Array(ed), a5j = new Uint8Array(ed), a5k = new Uint8Array(ed), a5l = new Uint8Array(ed), a5m = new Uint8Array(ed),
a5n = new Uint8Array(ed), this.ya = new Uint8Array(ed), (a5o = new Int32Array(4))[0] = -4 * ap.e8, a5o[1] = 4, a5o[2] = -a5o[0], a5o[3] = -a5o[1], hM)
for (var pB, iL, eD = ed - 1; 0 <= eD; eD--) iL = b4.rf[b4.iM[eD]], pB = eR((a5d[iL][3] + 1) * aL.random(), aL.value(100)), a5e[eD] = a5c[iL][0] + pB * a5d[iL][0], a5f[eD] = a5c[iL][1] + pB * a5d[iL][1], a5g[eD] = a5c[iL][2] + pB *
a5d[iL][2];
else aU.ih && aU.ii.a5v ? function(dl) {
var eD;
for (eD = px - 1; 0 <= eD; eD--) a5e[eD] = 4 * dl[eD][0], a5f[eD] = 4 * dl[eD][1], a5g[eD] = 4 * dl[eD][2]
}(aU.ii.a5v) : (function() {
for (var eD = ed - 1; h1 <= eD; eD--) a5e[eD] = 4 * eR(64 * aL.random(), aL.value(100)), a5f[eD] = 4 * eR(64 * aL.random(), aL.value(100)), a5g[eD] = 4 * eR(64 * aL.random(), aL.value(100))
}(), function(qf) {
for (var eD = h1 - 1; 0 <= eD; eD--) a5e[eD] = 4 * qf[eD].a52[0], a5f[eD] = 4 * qf[eD].a52[1], a5g[eD] = 4 * qf[eD].a52[2]
}(qf));
! function() {
var eD, ei;
for (eD = ed - 1; 0 <= eD; eD--) ei = eR(a5e[eD] + a5f[eD] + a5g[eD], 3), a5e[eD] += a64(ei - a5e[eD], 2), a5f[eD] += a64(ei - a5f[eD], 2), a5g[eD] += a64(ei - a5g[eD], 2), a5e[eD] -= a5e[eD] % 4, a5f[eD] -= a5f[eD] % 4, a5g[eD] -=
a5g[eD] % 4
}(),
function() {
for (var eD = ed - 1; 0 <= eD; eD--) a5e[eD] += eR(eD, 128), a5f[eD] += eR(eD % 128, 32), a5g[eD] += eR(eD % 32, 8), a5h[eD] = eD % 8
}(), this.a61(),
function() {
for (var eD = ed - 1; 0 <= eD; eD--) a5i[eD] = a5e[eD] < 32 ? a5e[eD] + 32 : a5e[eD] - 32, a5j[eD] = a5f[eD] < 32 ? a5f[eD] + 32 : a5f[eD] - 32, a5k[eD] = a5g[eD] < 32 ? a5g[eD] + 32 : a5g[eD] - 32
}(),
function() {
for (var eD = ed - 1; 0 <= eD; eD--) a5l[eD] = 235 < a5e[eD] ? a5e[eD] - 20 : a5e[eD] + 20, a5m[eD] = 235 < a5f[eD] ? a5f[eD] - 20 : a5f[eD] + 20, a5n[eD] = 235 < a5g[eD] ? a5g[eD] - 20 : a5g[eD] + 20
}()
}, this.xX = function(player) {
var dl = al.dg;
return dl[0] = a5e[player], dl[1] = a5f[player], dl[2] = a5g[player], dl
}, this.a61 = function() {
for (var eD = ed - 1; 0 <= eD; eD--) this.ya[eD] = a5e[eD] + a5f[eD] + a5g[eD] < 280 ? 0 : 1
}, this.jg = function(eg) {
return eR(eg, 4) % ap.e8
}, this.gC = function(eg) {
return eR(eg, 4 * ap.e8)
}, this.q4 = function(fI, fJ) {
return Math.floor(4 * (fJ * ap.e8 + fI))
}, this.qJ = function(eg) {
return this.pb(eg + a5o[0]) || this.pb(eg + a5o[1]) || this.pb(eg + a5o[2]) || this.pb(eg + a5o[3])
}, this.qH = function(eg, player) {
return this.a65(eg + a5o[0], player) || this.a65(eg + a5o[1], player) || this.a65(eg + a5o[2], player) || this.a65(eg + a5o[3], player)
}, this.vK = function(player) {
return player < h1 && 2 !== h3[player]
}, this.ej = function(eg) {
return 208 <= a1b[eg + 3]
}, this.qO = function(player, eg) {
return this.ej(eg) && this.a66(player, eg)
}, this.a66 = function(player, eg) {
return player === this.ek(eg)
}, this.a67 = function(eg) {
return 208 <= a1b[eg + 3] && a1b[eg + 3] < 224
}, this.hV = function(eg) {
return 224 <= a1b[eg + 3] && a1b[eg + 3] < 248
}, this.qI = function(eg) {
for (var eD = 3; 0 <= eD; eD--)
if (this.fj(eg + a5o[eD])) return !0;
return !1
}, this.a68 = function(eg) {
return 192 <= a1b[eg + 3] && a1b[eg + 3] < 208
}, this.a69 = function(eg, player) {
return this.a68(eg) && player === this.ek(eg)
}, this.eb = function(eg) {
return this.ej(eg) || this.el(eg)
}, this.fj = function(eg) {
return 0 === a1b[eg + 3] && 2 === a1b[eg + 2]
}, this.el = function(eg) {
return 0 === a1b[eg + 3] && 1 === a1b[eg + 2]
}, this.pb = function(eg) {
return 0 === a1b[eg + 3] && 3 === a1b[eg + 2]
}, this.fi = function(eg) {
return this.pb(eg)
}, this.a65 = function(eg, player) {
return this.el(eg) || this.ej(eg) && player !== this.ek(eg)
}, this.ek = function(eg) {
return a1b[eg] % 4 * 128 + a1b[eg + 1] % 4 * 32 + a1b[eg + 2] % 4 * 8 + a1b[eg + 3] % 8
}, this.qP = function(eg) {
a6A(eg, 1)
}, this.a6B = function(eg) {
a6A(eg, 2)
}, this.qG = function(eg, player) {
a1b[eg] = a5e[player], a1b[eg + 1] = a5f[player], a1b[eg + 2] = a5g[player], a1b[eg + 3] = 208 + a5h[player], a6D(eg)
}, this.ec = function(eg, player) {
a1b[eg] = a5i[player], a1b[eg + 1] = a5j[player], a1b[eg + 2] = a5k[player], a1b[eg + 3] = 224 + a5h[player], a6D(eg)
}, this.hW = function(eg, player) {
a1b[eg] = a5l[player], a1b[eg + 1] = a5m[player], a1b[eg + 2] = a5n[player], a1b[eg + 3] = 248 + a5h[player], a6D(eg)
}, this.a6E = function(eg, player) {
a1b[eg] = a5b[0] + a5e[player] % 4, a1b[eg + 1] = a5b[1] + a5f[player] % 4, a1b[eg + 2] = a5b[2] + a5g[player] % 4, a1b[eg + 3] = 192 + a5h[player], a6D(eg)
}
}
function bp() {
var fu, eX, eZ, a6F, a6G;
function a6L() {
for (var a6T = 0, eD = 1; eD < 5; eD++) a6T += eX[eD] % 1024;
return a6T
}
function a6K() {
for (var eD = 1; eD < eZ - a6G; eD++) eX[eD] = parseInt(eX[eD])
}
function a6M() {
eX[0] = "Player " + Math.floor(1e3 * Math.random()), eX[1] = aK.g5 < aK.gA ? Math.floor(1 + Math.random() * (Math.pow(2, 30) - 1)) : 0, eX[2] = 1, eX[3] = 1, eX[4] = aK.g5 < aK.gA ? 0 : 1, eX[5] = 0, eX[6] = "000", eX[7] = "0", eX[8] = "0",
eX[9] = "0", a3.a6N()
}
function a6J() {
for (var eD = eZ - a6G - 1; 0 <= eD; eD--) eX[eD] = h.r9(eX[eD]);
eX[0] = h.r7(eX[0])
}
function a6W(name, value, a6X) {
var a6Y = new Date,
a6X = (a6Y.setTime(a6Y.getTime() + Math.floor(31536e6 * a6X)), name + "=" + value + ";expires=" + a6Y.toUTCString() + ";SameSite=Strict;Secure;path=/");
document.cookie = a6X
}
this.cq = function() {
if (!(5 <= b7.dc || 2 === b7.id)) {
a6G = 4, fu = [], eZ = 10;
for (var eD = a6F = 0; eD < eZ; eD++) fu.push("u" + eD);
eX = new Array(eZ), ! function(a6U) {
for (var hZ, eg, a6V = a6U.split(";"), eD = a6V.length - 1; 0 <= eD; eD--) {
for (a6V[eD] = a6V[eD].trim(), hZ = 2; 0 <= hZ; hZ--) a6V[eD] = a6V[eD].replace(" ", "");
3 < a6V[eD].length && (hZ = fu.indexOf(a6V[eD].substring(0, 2)), eg = a6V[eD].indexOf("="), 0 <= hZ && 2 === eg ? eX[hZ] = a6V[eD].substring(eg + 1, a6V[eD].length) : 0 < eg && a6W(a6V[eD].substring(0, eg), "0", 0))
}
}(document.cookie), eX[9] || (eX[9] = "0"), (! function() {
for (var eD = eZ - 1; 0 <= eD; eD--)
if (void 0 === eX[eD]) return;
return 1
}() || (a6F = 2, a6J(), a6K(), a6L() !== eX[5])) && a6M()
}
}, this.a6N = function() {
if (2 === a6F) {
eX[1] = 0 === eX[1] ? Math.floor(1 + Math.random() * (Math.pow(2, 30) - 1)) : eX[1], eX[5] = a6L(), ! function() {
for (var eD = 1; eD < eZ - a6G; eD++) eX[eD] = eX[eD].toString()
}(), ! function() {
eX[0] = h.r6(eX[0]);
for (var eD = eZ - a6G - 1; 0 <= eD; eD--) eX[eD] = h.r8(eX[eD])
}();
for (var eD = eZ - 1; 0 <= eD; eD--) a6W(fu[eD], eX[eD], 1);
a6J(), a6K()
}
}, this.a6F = function() {
return a6F
}, this.a6R = function(hZ) {
a6F = hZ, this.a6N()
}, this.a6S = function(eD, value) {
5 <= b7.dc || 2 === b7.id || (eX[eD] = value)
}, this.s9 = function(eD) {
return 5 <= b7.dc || 2 === b7.id ? 0 : eX[eD]
}
}
function c9() {
var fz = 0,
a6Z = new Uint16Array(32);
function remove(v8) {
var eD;
for (fz -= 2, eD = v8; eD < fz; eD += 2) a6Z[eD] = a6Z[eD + 2], a6Z[eD + 1] = a6Z[eD + 3]
}
this.cq = function() {
fz = 0
}, this.i6 = function() {
var eD, hS, h5;
if (0 !== fz)
if (0 === h2[eU] || a4.a6a(eU) === a4.eE(eU)) fz = 0;
else
for (eD = fz - 2; 0 <= eD; eD -= 2)(hS = a6Z[eD]) < ed && 0 === h2[hS] ? remove(eD) : (h5 = a6Z[eD + 1], (ed <= hS && fn(eU) || hS < ed && fs(eU, hS)) && (aW.fd.fo(h5, hS), remove(eD)))
}, this.fq = function(hS, h5) {
! function(hS, h5) {
var eD;
for (eD = 0; eD < fz; eD += 2)
if (a6Z[eD] === hS) return a6Z[eD + 1] = Math.min(a6Z[eD + 1] + h5, 1023), 1;
return
}(hS, h5) && 32 !== fz && (a6Z[fz] = hS, a6Z[fz + 1] = h5, fz += 2)
}
}
function a6c(player) {
a6d(player), a6e(player), a6f(player), c.eT(player), e.jU(player), a4.clear(player), ak.a6g.a6h(player)
}
function a6d(player) {
a2.vK(player) && rU++;
var a6i = a4.a6j(player);
0 === a6i.length ? player === eU && a6k() : (a6l(player, a6i), a6m(player, a6i))
}
function a6k() {
b1.eX[17] += eV[eU] + a4.a6n(eU), u.show(!1, !1, !1, !0), t.a15()
}
function a6l(player, a6i) {
for (var eD = a6i.length - 1; 0 <= eD; eD--) a4.a6o(a6i[eD], player)
}
function a6p(a6i) {
for (var fz = 0, eD = a6i.length - 1; 1 <= eD; eD--) ez[a6i[eD]] > ez[a6i[fz]] && (fz = eD);
return fz
}
function a6m(player, a6i) {
var eD, wb, a6q = a6i[a6p(a6i)];
if (9 === ik && 1 === b4.iM[player] && aL.iF(8) && aM.a6r(a6q), player === eU) 2 !== h3[player] && k.rJ(a6q, 1), a6k();
else {
for (wb = !1, eD = a6i.length - 1; 0 <= eD; eD--)
if (a6i[eD] === eU) return wb = !0, void k.rJ(player, 0);
!wb && player < h1 && 2 !== h3[player] && k.wK(0, player, a6q)
}
}
function a6f(player) {
h2[player] = eV[player] = 0, ea[player] = null, er[player] = null, es[player] = null, ev[player] = null, aQ.a6s(player)
}
function a6e(player) {
for (var eg, fJ, fI = ht[player]; fI >= hu[player]; fI--)
for (fJ = hw[player]; fJ >= hx[player]; fJ--) eg = 4 * (fJ * ap.e8 + fI), a2.qO(player, eg) && (a2.qP(eg), ez[player]--)
}
function cE() {
var input;
function a6t(dE) {
a6v(dE.target.files)
}
function a6v(files) {
files && 0 < files.length && aT.a6w(files[0])
}
function a71(dE) {
var iL = new Image;
iL.onload = a72, iL.src = dE.target.result
}
function a72(dE) {
var a73, dE = dE.target,
g5 = dE.width,
gA = dE.height;
4096 < g5 || 4096 < gA || g5 < 10 || gA < 10 ? (a73 = "Image w & h must be between 10 and 4096.", b7.oW ? b7.oW.showToast(a73) : alert(a73)) : (aU.t9(), ap.pl = ap.a70(), ap.a4T = 0, ap.e8 = g5, ap.e9 = gA, ap.pN.width = ap.e8, ap.pN.height =
ap.e9, ap.pJ.drawImage(dE, 0, 0), a73 = ap.pJ.getImageData(0, 0, ap.e8, ap.e9), ap.pO = a73.data)
}
function a74(dE) {
dE.stopPropagation(), dE.preventDefault()
}
function a75() {
return 0 === x.s1() || 2 === x.s1()
}
this.cq = function() {
(input = document.createElement("input")).type = "file", input.setAttribute("accept", ".json, .png, .jpg, .gif, .jpeg"), input.onchange = a6t
}, this.a54 = function() {
input.click()
}, this.a6u = function(dE) {
a6t(dE)
}, this.a6w = function(a6x) {
var dl = a6x.name.split("."),
a6y = dl[dl.length - 1].toLowerCase();
"json" === a6y ? aU.oU(a6x) : "gif" !== a6y && "jpg" !== a6y && "jpeg" !== a6y && "png" !== a6y || (ap.ii.pk[ap.a70()].name = dl[0], (a6y = new FileReader).onload = a71, a6y.readAsDataURL(a6x))
}, this.ss = function(dE) {
a75() && (a74(dE), dE.dataTransfer.dropEffect = "copy")
}, this.st = function(dE) {
a75() && (a74(dE), a6v(dE.dataTransfer.files))
}
}
function cC() {
this.a76 = null, this.cq = function() {
this.a76 = 10 !== ik ? null : new Uint32Array(ed)
}, this.i6 = function() {
10 === ik && this.sN()
}, this.sN = function() {
for (var eg, target, a1G, a76 = this.a76, qf = iO, tz = eV, eD = iN - 1; 0 <= eD; eD--) eg = qf[eD], h1 <= eg || (target = Math.max(eR(tz[eg], 4), 2048), a1G = Math.max(a5.a1H(eg), 100), a76[eg] += eR(a1G * target, 1e4), a76[eg] >
target && (a76[eg] = target))
}, this.u5 = function(player, hT) {
return hT > this.a76[player] ? (hT = this.a76[player], this.a76[player] = 0) : this.a76[player] -= hT, hT
}
}
function cF() {
function a71(dE) {
aU.ih = !0, aU.a7C(JSON.parse(dE.target.result)), aU.xN()
}
function a7I(fy, min, max, a7R) {
return "string" != typeof fy || fy.length < min ? a7R : fy.length > max ? fy.substring(0, max) : fy
}
function a7D(db, min, max) {
return db = "number" == typeof db ? Math.floor(db) : min, Math.min(Math.max(db, min), max)
}
function a7G(db, oS) {
return "boolean" == typeof db ? db : oS
}
function a7K(db, eZ, max, a7T) {
var eD, dl, pB;
if (!Array.isArray(db) || db.length < 1) return null;
for (dl = new(8 === a7T ? Uint8Array : Uint16Array)(eZ), pB = db.length, eD = 0; eD < eZ; eD++) dl[eD] = a7D(db[eD % pB], 0, max);
return dl
}
this.ih = !1, this.ii = null, this.t9 = function() {
this.ih = !1, this.ii = null
}, this.a51 = function() {
this.ii.a5v && this.ii.a77 && (this.ii.a5v[0] = a8.vn[2].rN.a2r()), uX(this.ii.a78, 0, this.a79(), this.ii.ua, !1, !1)
}, this.a79 = function() {
return [{
name: this.ii.a7A ? b9.dG.data[100].value : this.ii.a7B[0],
a52: [0, 0, 0],
a53: 0
}]
}, this.oU = function(a6x) {
var a6z = new FileReader;
a6z.onload = a71, a6z.readAsText(a6x)
}, this.a7C = function(n6) {
this.ii = {}, this.ii.a4z = a7D(n6.numberPlayers, 1, 512), this.ii.a7E = a7D(n6.modeID, 0, 1), this.ii.pl = a7D(n6["gMap.mapID"], 0, ap.a7F - 1), this.ii.a4X = a7D(n6.seedMap, 0, 16383), this.ii.a78 = a7D(n6.seedSpawn, 0, 16383), this.ii
.ud = a7G(n6.selectableSpawn, !1), this.ii.a7A = a7G(n6.selectableName, !1), this.ii.a77 = a7G(n6.selectableColor, !1), ap.ii.pk[ap.a70()].name = this.ii.a7H = a7I(n6.mapName, 1, 25, "Custom Map"), this.ii.w2 = function(db) {
var eD, eZ;
if (!Array.isArray(db) || db.length < 1) return [];
for (eZ = db.length, eD = 0; eD < eZ; eD++) db[eD] = a7I(db[eD], 0, 100, "");
return db
}(n6.description), this.ii.ps = a7K(n6.playerX, this.ii.a4z, 4096, 16), this.ii.q3 = a7K(n6.playerY, this.ii.a4z, 4096, 16), this.ii.a7L = a7K(n6.playerTeam, this.ii.a4z, 8, 8), this.ii.ij = a7K(n6.playerStrength, this.ii.a4z, 5, 8),
this.ii.a5v = function(db, eZ) {
var eD, dl, pB;
if (!Array.isArray(db) || db.length < 1) return null;
for (dl = new Array(eZ), pB = db.length, eD = 0; eD < eZ; eD++) dl[eD] = a7K(db[eD % pB], 3, 63, 8);
return dl
}(n6.playerColor, this.ii.a4z), this.ii.a7B = function(db, eZ) {
var eD, dl, pB;
if (!Array.isArray(db) || db.length < 1) return null;
for (dl = new Array(eZ), pB = db.length, eD = 0; eD < eZ; eD++) dl[eD] = a7I(db[eD % pB], 3, 26, "Bot");
return dl
}(n6.playerName, this.ii.a4z), this.ii.a7O = "string" == typeof n6.mapBase64 ? n6.mapBase64 : "", this.ii.a7A = this.ii.a7A || !this.ii.a7B, this.ii.ua = 0 === this.ii.a7E ? 7 : 2 === this.ii.a7E ? 9 : 6, this.ii.ps = this.ii.q3 ?
this.ii.ps : null
}, this.xN = function() {
! function(fy) {
var gN, gK, a7Q = "data:image/png;base64,";
if (fy.length <= a7Q.length) return;
aU.ii.pl = 0, aU.ii.a4X = 0, ap.d2(0, 0), fy.substring(0, a7Q.length) !== a7Q && (fy = a7Q + fy);
return (gN = new Image).onload = function() {
ap.e8 = gN.width, ap.e9 = gN.height, 4096 < ap.e8 || 4096 < ap.e9 || ap.e8 < 10 || ap.e9 < 10 ? (ap.d2(0, 0), alert("Image w & h must be between 10 and 4096.")) : (ap.pl = ap.a70(), ap.a4T = 0, ap.pN.width = ap.e8, ap.pN
.height = ap.e9, ap.pJ.drawImage(gN, 0, 0), gK = ap.pJ.getImageData(0, 0, ap.e8, ap.e9), ap.pO = gK.data)
}, gN.src = fy, aU.ii.a7O = "", 1
}(this.ii.a7O) && ap.d2(this.ii.pl, this.ii.a4X)
}, this.a7U = function() {
for (var max = 0, eZ = this.ii.a4z, eD = 0; eD < eZ; eD++) this.ii.a7L[eD] > max && (max = this.ii.a7L[eD]);
return Math.max(0, max - 1)
}
}
function bq() {
var a7V, a7W, size, hS, hT, id;
function a7X(player) {
return player < h1 ? a7V * player : a7V * h1 + a7W * (player - h1)
}
this.cq = function() {
a7V = h1 < 16 ? 12 : 8, a7W = 4;
var eZ = a7X(ed);
size = new Uint8Array(ed), hS = new Uint16Array(eZ), hT = new Uint32Array(eZ), id = new Uint16Array(eZ)
}, this.mq = function(y4, a7Y) {
var a7Z = this.fD(y4, a7Y);
this.fC(y4, a7Y, 0), a7Z = aY.fN.m0(y4, a7Z), y4 === eU && (b1.eX[13] -= a7Z)
}, this.clear = function(player) {
size[player] = 0
}, this.a6o = function(player, a7Y) {
var iS, a7Y = function(player, a7Y) {
var eD, pB = a7X(player);
for (eD = size[player] - 1; 0 <= eD; eD--)
if (0 === id[pB + eD] && hS[pB + eD] === a7Y) return eD;
return size[player]
}(player, a7Y);
a7Y !== size[player] && (iS = hT[a7X(player) + a7Y], this.eY(player, a7Y), this.hP(player, iS, ed))
}, this.hk = function(player, a7Y) {
for (var pB = a7X(player), eD = size[player] - 1; 0 <= eD; eD--)
if (0 === id[pB + eD] && hS[pB + eD] === a7Y) return !0;
return !1
}, this.i4 = function(player) {
return player < h1 ? size[player] < a7V : size[player] < a7W
}, this.eE = function(player) {
return size[player]
}, this.eK = function(player, eD) {
return hS[a7X(player) + eD]
}, this.eF = function(player, eD) {
return id[a7X(player) + eD]
}, this.jj = function(player, a7b) {
for (var pB = a7X(player), eD = size[player] - 1; 0 <= eD; eD--)
if (id[pB + eD] === a7b) return eD;
return -1
}, this.eL = function(player, eD) {
return hT[a7X(player) + eD]
}, this.fD = function(player, a7Y) {
for (var pB = a7X(player), eD = size[player] - 1; 0 <= eD; eD--)
if (0 === id[pB + eD] && hS[pB + eD] === a7Y) return hT[pB + eD];
return 0
}, this.a6n = function(player) {
for (var pB = a7X(player), db = 0, eD = size[player] - 1; 0 <= eD; eD--) db += hT[pB + eD];
return db
}, this.a7c = function(player) {
for (var pB = a7X(player), db = 0, eD = size[player] - 1; 0 <= eD; eD--) 0 === id[pB + eD] && (db += hT[pB + eD]);
return db
}, this.a6a = function(player) {
for (var pB = a7X(player), wa = 0, eD = size[player] - 1; 0 <= eD; eD--) 0 < id[pB + eD] && wa++;
return wa
}, this.fC = function(player, a7Y, iS) {
for (var pB = a7X(player), eD = size[player] - 1; 0 <= eD; eD--) 0 === id[pB + eD] && hS[pB + eD] === a7Y && (hT[pB + eD] = iS)
}, this.ey = function(player, eD, iS) {
hT[a7X(player) + eD] = iS
}, this.hP = function(player, iS, a7Y) {
var eD, pB = a7X(player);
for (a7Y === eU && b1.eX[player < h1 ? 6 : 5]++, eD = size[player] - 1; 0 <= eD; eD--)
if (0 === id[pB + eD] && hS[pB + eD] === a7Y) return hT[pB + eD] += iS, void(hT[pB + eD] = hT[pB + eD] > u1 ? u1 : hT[pB + eD]);
hS[pB + size[player]] = a7Y, hT[pB + size[player]] = iS, id[pB + size[player]] = 0, size[player]++, player < h1 && (a7Y === eU ? k.rJ(player, 5) : player === eU && a6.wM(a7Y))
}, this.a7d = function(player, iS, a7b) {
var pB = a7X(player);
h2[player] = 2, hS[pB + size[player]] = 0, hT[pB + size[player]] = iS, id[pB + size[player]] = a7b, size[player]++
}, this.eY = function(player, fz) {
var hZ, pB;
if (0 !== size[player])
for (pB = a7X(player), size[player]--, hZ = fz; hZ < size[player]; hZ++) hS[pB + hZ] = hS[pB + hZ + 1], hT[pB + hZ] = hT[pB + hZ + 1], id[pB + hZ] = id[pB + hZ + 1]
}, this.a6j = function(player) {
for (var hZ, pB, a6i = [], eD = iN - 1; 0 <= eD; eD--)
for (pB = a7X(iO[eD]), hZ = size[iO[eD]] - 1; 0 <= hZ; hZ--)
if (0 === id[pB + hZ] && hS[pB + hZ] === player) {
a6i.push(iO[eD]);
break
} return a6i
}
}
function br() {
var a7e, a7f, a7g, a7h, a7i, a7j;
this.cq = function() {
a7g = a7e = 10, a7h = a7f = 10
}, this.d0 = function() {
a7j = 512, a7i = new Uint16Array(a7j);
for (var eD = 0; eD < a7j; eD++) a7i[eD] = 100 + a7k(eR(25600 * eD, a7j - 4), 9)
}, this.a02 = function() {
return a7h
}, this.i6 = function() {
if (--a7g <= 0 && (a7g = a7e, function() {
var eD, a7p, dZ = eV[eU];
for (im && !hM && 0 !== h2[0] && 0 === z.io[0].ei && (eV[0] += eR(ez[0], 6)), eD = iN - 1; 0 <= eD; eD--) a7p = eR(a5.a1H(iO[eD]) * eV[iO[eD]], 1e4), eV[iO[eD]] += a7p < 1 ? 1 : a7p, a5.eW(iO[eD]);
b1.eX[9] += eV[eU] - dZ
}(), --a7h <= 0)) {
a7h = a7f;
for (var dZ = eV[eU], eD = iN - 1; 0 <= eD; eD--) eV[iO[eD]] += ez[iO[eD]], a5.eW(iO[eD]);
b1.eX[8] += eV[eU] - dZ
}
}, this.a1H = function(player) {
var gQ = a7i[eR((a7j - 1) * ez[player], uS)],
a7o = (b3.iK() < 1920 && (gQ = gQ < (a7o = eR(100 * (13440 - 6 * b3.iK()), 1920)) ? a7o : gQ), this.i9(player));
return eV[player] > a7o && (gQ -= eR(2 * gQ * (eV[player] - a7o), a7o)), gQ < 0 ? 0 : 700 < gQ ? 700 : gQ
}, this.i9 = function(player) {
player = 100 * ez[player];
return uT < player ? uT : player
}, this.eW = function(player) {
var db = ez[player] * u0;
eV[player] = Math.min(Math.min(eV[player], u1), db)
}, this.le = function(player, lf) {
aY.fN.m0(lf, al.df[0]), b1.m1(player, lf), a6.a7r(player, al.df[0] + al.df[1]), a6.m2(lf, al.df[0]), aY.fN.mf(player)
}
}
function bs() {
var a7s, a7t, a7u, a7v, a7w, a7x, a7y, a7z, a80, a81, a82, a83, a84, a85, a86, a87, a88, a89, a8B, a8C, a8D, a8E, a8F, a8M, a8N, a8A = null,
a8H = 0,
a8I = !1,
a8J = new Float32Array(4),
a8K = 0,
a8L = !1,
a0V = 1;
function a8O() {
a8A.width = aK.g5, a8A.height = aK.gA, a8B = a8A.getContext("2d", {
alpha: !0
}), aY.g0.textAlign(a8B, 1), aY.g0.textBaseline(a8B, 1), a8B.imageSmoothingEnabled = !0
}
function a8P() {
var eD, a8T;
for (gE.font = aY.g0.g1(1, 100 * a82), a8T = 80 / Math.floor(gE.measureText(aY.jk.jl(u1)).width), gE.font = aY.g0.g1(1, 100), eD = ed - 1; 0 <= eD; eD--) a7z[eD] = 100 / Math.floor(gE.measureText(jm[eD]).width), a7y[eD] = Math.min(a8T, a7z[
eD])
}
function a8U(eD) {
return !b9.dG.data[7].value || eV[eD] < 1e6 ? 1 : eV[eD] < 1e7 ? a8J[0] : a8J[Math.min(Math.floor(Math.log10(eV[eD])) - 6, 3)]
}
function a8S(gO) {
a89 = !1, a88 = 1, a86 = a87 = 0, a8L ? (aY.g0.textAlign(gO, 1), aY.g0.textBaseline(gO, 1)) : gO.clearRect(0, 0, aK.g5, aK.gA);
for (var jZ, ja, eD, fontSize, jb, jc = h6 / h7, jd = h8 / h7, je = (aK.g5 + h6) / h7, jf = (aK.gA + h8) / h7, a8Y = 0 !== h2[eU] && a2.vK(eU), hZ = iN - 1; 0 <= hZ; hZ--) eD = iO[hZ], (fontSize = a85 * h7 * a8U(eD) * a7y[eD] * a7w[eD]) <
a84 || a80 <= fontSize || a7u[eD] + a7w[eD] > jc && a7u[eD] < je && a7v[eD] + a7x[eD] > jd && a7v[eD] < jf && (jZ = aK.g5 * (a7u[eD] + a7w[eD] / 2 - jc) / (je - jc), ja = aK.gA * (a7v[eD] + a7x[eD] / 2 - jd) / (jf - jd) - .1 * fontSize,
gO.font = aY.g0.g1(1 === h3[eD] ? 4 : 1, fontSize), gO.fillStyle = function(fontSize, eD) {
if (a81 <= fontSize && fontSize < a80) return b4.a8l[a2.ya[eD]] + a8h(fontSize).toFixed(3) + ")";
return b4.a8m[a2.ya[eD]]
}(fontSize, eD), b9.dG.data[7].value ? gO.fillText(aY.jk.jl(eV[eD]), jZ, ja) : a8a(eD, fontSize, jZ, ja, gO), a89 = !0, 0 < a8D[eD] ? function(jZ, ja, fontSize, eD, gO) {
0 === a03[eD] ? az.xP(a8C[eD]) ? (function(jZ, ja, fontSize, player, lp, gO) {
for (var vd = .9 * fontSize / az.g5, pw = ja - .5 * vd * az.g5 - .05 * fontSize, gM = (gO.globalAlpha = a8h(fontSize), a8U(player) * (b9.dG.data[7].value ? a8K : a7z[player])), pv = jZ - .5 * fontSize / gM - .4 *
fontSize - vd * az.g5, hi = 0; hi < 2; hi++) gO.setTransform(vd, 0, 0, vd, pv, pw), gO.drawImage(az.v4[lp], 0, 0), pv = jZ + .5 * fontSize / gM + .4 * fontSize;
gO.globalAlpha = 1, gO.setTransform(1, 0, 0, 1, 0, 0)
}(jZ, ja, fontSize, eD, a8C[eD], gO), a8c(jZ, ja, fontSize, 0, 0, gO)) : az.xO(a8C[eD]) ? (a8k(jZ, ja, fontSize, a8C[eD], 0, gO), a8c(jZ, ja, fontSize, 0, 1, gO)) : (a8k(jZ, ja, fontSize, a8C[eD], 1, gO), a8c(jZ, ja, fontSize,
1, 0, gO)) : a8k(jZ, ja, fontSize, a8C[eD], 0, gO)
}(jZ, ja, fontSize, eD, gO) : 0 === a03[eD] && a8c(jZ, ja, fontSize, 0, 0, gO), a8Y && (0 < a8D[eD + ed] || 0 < a8D[eD + 2 * ed] || 0 < a8D[eD + 3 * ed] || 0 < a8D[eD + 4 * ed]) && function(jZ, ja, fontSize, eD, gO) {
var iL, wa = -1;
for (iL = 4; 1 <= iL; iL--) 0 < a8D[eD + iL * ed] && wa++;
for (iL = 1; iL < 5; iL++) 0 < a8D[eD + iL * ed] && (! function(jZ, ja, fontSize, iL, eD, a8f, dZ, gO) {
var vd = .8 * fontSize / az.g5,
jZ = jZ - .5 * vd * az.g5 - .534 * a8f * fontSize,
a8f = ja + 1.4 * vd * az.g5;
gO.setTransform(vd, 0, 0, vd, jZ, a8f), gO.globalAlpha = a8h(fontSize), ja = 1 === iL ? az.v4[a8C[eD + ed]] : 2 === iL ? i.v0()[4].gN[dZ < 255 ? 1 : 0] : (3 === iL ? i.v0()[5] : i.v0()[6]).gN[0];
gO.drawImage(ja, 0, 0), gO.globalAlpha = 1, gO.setTransform(1, 0, 0, 1, 0, 0)
}(jZ, ja, fontSize, iL, eD, wa, a8D[eD + iL * ed], gO), wa -= 2)
}(jZ, ja, fontSize, eD, gO), (jb = a82 * fontSize) < a84 || (gO.font = aY.g0.g1(1, jb), b9.dG.data[7].value ? a8a(eD, jb, jZ, ja + .78 * fontSize, gO) : (gO.fillText(aY.jk.jl(eV[eD]), jZ, ja + .78 * fontSize), settings
.showPlayerDensity && (settings.coloredDensity && (gO.fillStyle = utils.textStyleBasedOnDensity(eD)), gO.fillText(utils.getDensity(eD), jZ, ja + fontSize * 1.5)))))
}
function a8a(eD, fontSize, fI, fJ, gO) {
var ___id = eD;
gO.fillText(jm[eD], fI, fJ), eD < h1 && 2 !== h3[eD] || (eD = fontSize / a7z[eD], gO.fillRect(fI - .5 * eD, fJ + aY.g0.to * fontSize, eD, Math.max(1, .1 * fontSize)));
b9.dG.data[7].value && settings.showPlayerDensity && (settings.coloredDensity && (gO.fillStyle = utils.textStyleBasedOnDensity(___id)), gO.fillText(utils.getDensity(___id), fI, fJ + fontSize));
}
function a8c(jZ, ja, fontSize, a8f, a8g, gO) {
var vd = .95 * fontSize / a8F,
jZ = jZ - .5 * vd * a8E + .8 * a8f * fontSize,
a8f = ja - 1.76 * vd * a8F - .82 * a8g * fontSize;
gO.setTransform(vd, 0, 0, vd, jZ, a8f), gO.globalAlpha = a8h(fontSize), gO.drawImage(a1.get(4), 0, 0), gO.globalAlpha = 1, gO.setTransform(1, 0, 0, 1, 0, 0)
}
function a8k(jZ, ja, fontSize, lp, a8f, gO) {
var vd = 1.2 * fontSize / az.g5,
jZ = jZ - .5 * vd * az.g5 - .8 * a8f * fontSize,
a8f = ja - 1.5 * vd * az.g5;
gO.setTransform(vd, 0, 0, vd, jZ, a8f), gO.globalAlpha = a8h(fontSize), gO.drawImage(az.v4[lp], 0, 0), gO.globalAlpha = 1, gO.setTransform(1, 0, 0, 1, 0, 0)
}
function a8h(fontSize) {
return a81 <= fontSize && fontSize < a80 ? 1 - (fontSize - a81) / (a80 - a81) : 1
}
function a8v(gM, g5) {
return 1 + Math.floor(a83 * gM * g5)
}
function a8s(eD) {
for (var left = a7u[eD], hZ = a7u[eD] - hu[eD] - 1; 0 <= hZ; hZ--)
if (!a8x(eD, --left, a7v[eD], a7x[eD])) {
left++;
break
} var right = a7u[eD];
for (hZ = ht[eD] - a7u[eD] - a7w[eD]; 0 <= hZ; hZ--)
if (!a8x(eD, ++right + a7w[eD] - 1, a7v[eD], a7x[eD])) {
right--;
break
} var fI = Math.floor((left + right) / 2),
top = a7v[eD];
for (hZ = a7v[eD] - hx[eD] - 1; 0 <= hZ; hZ--)
if (!a8y(eD, fI, --top, a7w[eD])) {
top++;
break
} var bottom = a7v[eD];
for (hZ = hw[eD] - a7v[eD] - a7x[eD]; 0 <= hZ; hZ--)
if (!a8y(eD, fI, ++bottom + a7x[eD] - 1, a7w[eD])) {
bottom--;
break
} var fJ = Math.floor((top + bottom) / 2);
a8p(eD, fI, fJ, a7w[eD], a7x[eD]) && (a7u[eD] = fI, a7v[eD] = fJ)
}
function a8p(player, fI, fJ, g5, gA) {
ei = Math.floor(.2 * g5);
for (var ei, iL = fI + g5 - 1; fI <= iL; iL--)
if (!a8x(player, iL, fJ, gA)) return;
for (iL = fJ + gA - 1 - (ei = (ei = Math.floor(.25 * gA)) < 1 ? 1 : ei); fJ + ei <= iL; iL--)
if (!a8y(player, fI, iL, g5)) return;
return 1
}
function a8x(player, fI, fJ, gA) {
return a2.qO(player, 4 * (fJ * ap.e8 + fI)) && a2.qO(player, 4 * ((fJ + gA - 1) * ap.e8 + fI))
}
function a8y(player, fI, fJ, g5) {
return a2.qO(player, 4 * (fJ * ap.e8 + fI)) && a2.qO(player, 4 * (fJ * ap.e8 + fI + g5 - 1))
}
this.cq = function() {
if (a0V = 0 === (a0V = b9.dG.data[11].value) ? 400 : 1 === a0V ? 200 : 100, a89 = !1, a85 = .88, a82 = .5, a83 = 1.8, a80 = Math.floor(.5 * aK.min), a81 = Math.floor(.2 * a80), a84 = 12 - 3 * b9.dG.data[9].value, a7t = a7s = 0, a7u =
new Uint16Array(ed), a7v = new Uint16Array(ed), a7w = new Uint16Array(ed), a7x = new Uint16Array(ed), a7y = new Float32Array(ed), a7z = new Float32Array(ed), a8C = new Uint8Array(2 * ed), a8D = new Uint8Array(5 * ed), a8M =
new Uint8Array(ed), a8N = new Uint8Array(ed), a8L || (a8A = a8A || document.createElement("canvas"), a8O()), a87 = a86 = 0, a88 = 1, b9.dG.data[7].value) {
var eD, a8T;
for (a8P(), gE.font = aY.g0.g1(1, 100), a8T = 100 / Math.floor(gE.measureText("900 000").width), eD = ed - 1; 0 <= eD; eD--) a7y[eD] = Math.min(a8T, 2 * a7z[eD]);
a8K = a8T, a8J[0] = 100 / (a8T * Math.floor(gE.measureText("5 000 000").width)), a8J[1] = 100 / (a8T * Math.floor(gE.measureText("50 000 000").width)), a8J[2] = 100 / (a8T * Math.floor(gE.measureText("500 000 000").width)), a8J[3] =
100 / (a8T * Math.floor(gE.measureText("1 000 000 000").width))
} else a8P();
! function() {
var eD;
for (eD = ed - 1; 0 <= eD; eD--) ez[eD] < 12 ? (a7u[eD] = hu[eD] + 1, a7v[eD] = hx[eD] + 1, a7w[eD] = 1, a7x[eD] = 1) : (a7u[eD] = hu[eD], a7v[eD] = hx[eD] + 1, a7w[eD] = 4, a7x[eD] = 2);
if (fc)
for (eD = 0; eD < h1; eD++) a7w[eD] = 0;
a8E = a1.get(4).width, a8F = a1.get(4).height
}()
}, this.a7r = function(eg, wd) {
wd > 18 * ez[eg] ? (a8N[eg] = 6, a2.ya[eg] = 2 + a2.ya[eg] % 2) : (a8M[eg] = 4, (a2.ya[eg] < 2 || 3 < a2.ya[eg]) && (a2.ya[eg] = 6 + a2.ya[eg] % 2))
}, this.m2 = function(eg, wd) {
wd > 6 * ez[eg] ? (a8N[eg] = 6, a2.ya[eg] = 4 + a2.ya[eg] % 2) : (a8M[eg] = 4, (a2.ya[eg] < 4 || 5 < a2.ya[eg]) && (a2.ya[eg] = 8 + a2.ya[eg] % 2))
}, this.resize = function() {
a8L || (a8O(), a8S(a8B))
}, this.uO = function() {
for (var eD = 0; eD < h1; eD++) ht[eD] - hu[eD] != 3 || hw[eD] - hx[eD] != 3 ? (a7u[eD] = hu[eD] + (ht[eD] !== hu[eD] ? 1 : 0), a7v[eD] = hx[eD], a7w[eD] = 1, a7x[eD] = 1) : (a7u[eD] = hu[eD], a7v[eD] = hx[eD] + 1, a7w[eD] = 4, a7x[eD] =
2)
}, this.ms = function(player, fz, a8V) {
player += fz * ed;
if (0 === fz) return a8C[player] === a8V && 0 < a8D[player] ? void(a8D[player] = 0) : (a8C[player] = a8V, void(a8D[player] = az.xP(a8V) ? 255 : 64));
1 === fz ? (a8D[player] = 64, a8C[player] = a8V) : a8D[player] = a8V
}, this.gD = function() {
a8L ? a8S(gE) : a89 && (1 !== a88 ? (gE.imageSmoothingEnabled = !0, gE.setTransform(a88, 0, 0, a88, 0, 0), gE.drawImage(a8A, -a86 / a88, -a87 / a88), gE.setTransform(1, 0, 0, 1, 0, 0), gE.imageSmoothingEnabled = !1) : gE.drawImage(a8A, -
a86, -a87))
}, this.zI = function(gt, gw) {
a86 += gt, a87 += gw
}, this.sk = function(gt, gw) {
a6.zI(gt, gw)
}, this.zoom = function(ft, g8, g9) {
a88 *= ft, a86 = (a86 + g8) * ft - g8, a87 = (a87 + g9) * ft - g9
}, this.j6 = function(wm) {
return !a8L && !(!a8I && !wm && b3.dY < a8H + (1 !== a88 || 0 !== a86 || 0 !== a87 ? a0V : fL ? aa.ve ? a0V : 1e3 : fc ? 1e3 : im ? j.fM || 2 === rS ? 1e3 : a0V : 2 === rS ? 500 : a0V) || (a8I = !1, a8H = b3.dY, a8S(a8B), 0))
}, this.jh = function(eD) {
return a8U(eD) * a7y[eD]
}, this.a8X = function(player) {
return a7y[player]
}, this.i6 = function() {
b3.iK() % 10 == 9 && (a8I = !0), 4 <= ++a7t && function() {
var eD, hZ, hi;
for (a7t = 0, hi = 4; 1 <= hi; hi--)
for (hZ = iN - 1; 0 <= hZ; hZ--) eD = iO[hZ] + hi * ed, 0 < a8D[eD] && a8D[eD] < 255 && a8D[eD]--;
if (2 !== rS)
for (hZ = iN - 1; 0 <= hZ; hZ--) eD = iO[hZ], 0 < a8D[eD] && a8D[eD] < 255 && a8D[eD]--
}();
for (var eZ = Math.floor(.1 * iN), eD = a7s + (eZ = iN < (eZ = eZ < 8 ? 8 : eZ) ? iN : eZ) - 1; a7s <= eD; eD--) ! function(eD) {
var gM = a8U(eD) * a7y[eD];
0 < a7w[eD] && a8p(eD, a7u[eD], a7v[eD], a7w[eD], a7x[eD]) ? ! function(eD) {
for (var fI, fJ, g5, gA, fZ = !1, hi = 0; hi < 8; hi++) {
if (g5 = a7w[eD] + 2, gA = a7x[eD] + 2, g5 > ht[eD] - hu[eD] + 1 || gA > hw[eD] - hx[eD] + 1) return fZ;
if (fI = a7u[eD] - 1, fJ = a7v[eD] - 1, !a8p(eD, fI, fJ, g5, gA)) return fZ;
a7u[eD] = fI, a7v[eD] = fJ, a7w[eD] = g5, a7x[eD] = gA, fZ = !0
}
return fZ
}(eD) && function(eD, gM) {
for (var fI, fJ, g5, gA, fZ = !1, a2R = a7w[eD], kH = 1 + Math.floor(.02 * a2R), hi = 1; hi < 5; hi++) {
if ((g5 = a2R + hi * kH) > ht[eD] - hu[eD] + 1) return fZ;
if ((gA = a8v(gM, g5)) > hw[eD] - hx[eD] + 1) return fZ;
fI = hu[eD] + Math.floor(Math.random() * (ht[eD] - hu[eD] + 2 - g5)), fJ = hx[eD] + Math.floor(Math.random() * (hw[eD] - hx[eD] + 2 - gA)), a8p(eD, fI, fJ, g5, gA) && (a7u[eD] = fI, a7v[eD] = fJ, a7w[eD] = g5, a7x[
eD] = gA, fZ = !0)
}
return fZ
}(eD, gM) && a8s(eD) : ! function(eD, gM) {
var gA, fI = a7u[eD] + 1,
fJ = a7v[eD] + 1,
g5 = a7w[eD] - 2;
for (;;) {
if (g5 < 1) {
a7w[eD] = 0;
break
}
if (gA = a8v(gM, g5), a8p(eD, fI, fJ, g5, gA)) return a7u[eD] = fI, a7v[eD] = fJ, a7w[eD] = g5, a7x[eD] = gA, 1;
fI++, fJ++, g5 -= 2
}
return
}(eD, gM) ? function(eD, gM) {
var fI, fJ, g5, gA, hi, kM, hb = ht[eD] - hu[eD] + 1,
a8w = Math.floor(.02 * hb);
for (kM = -6 * (a8w = a8w < 1 ? 1 : a8w), hi = hb; kM <= hi; hi -= a8w)
if (gA = a8v(gM, g5 = 0 < hi ? hi : 1), fI = hu[eD] + Math.floor(Math.random() * (ht[eD] - hu[eD] + 2 - g5)), fJ = hx[eD] + Math.floor(Math.random() * (hw[eD] - hx[eD] + 2 - gA)), a8p(eD, fI, fJ, g5, gA)) return a7u[
eD] = fI, a7v[eD] = fJ, a7w[eD] = g5, a7x[eD] = gA
}(eD, gM) : a8s(eD)
}(iO[eD % iN]);
a7s = (a7s + eZ) % iN
}, this.j1 = function() {
var eD, eg, ga, gb;
if (b3.iK() % 4 == 1)
for (eD = iN - 1; 0 <= eD; eD--) eg = iO[eD], a2.ya[eg] < 2 || ((ga = Math.max(a8M[eg] - 1, 0)) === (gb = Math.max(a8N[eg] - 1, 0)) ? 0 === ga && (a2.ya[eg] %= 2) : 0 === gb && a2.ya[eg] < 6 && (a2.ya[eg] += 4), a8M[eg] = ga, a8N[
eg] = gb)
}, this.wM = function(player) {
var eD = player + 2 * ed,
dZ = a8D[eD];
return 0 < dZ && (k.rI(50, player), a8D[eD] = 0, 255 === dZ)
}, this.vM = function(player) {
return 255 === a8D[player + 2 * ed]
}
}
function bt() {
var fu, a8z;
this.cq = function() {
fu = "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 eD, hZ, a90 = ["K ", " Y", "E ", " Z", " z", " s", "S "],
a91 = ["Kingdom of ", " Kingdom", "Empire of ", " Empire", " Dynasty", " Sultanate", "Sultanate of "];
for (a8z =
"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(";"), eD = fu.length - 1; 0 <= eD; eD--)
for (hZ = a90.length - 1; 0 <= hZ; hZ--) fu[eD] = fu[eD].replace(a90[hZ], a91[hZ]);
if (settings.realisticNames) fu = realisticNames;
}, this.d2 = function() {
var eD;
if (aU.ih && aU.ii.a7B)
for (eD = h1; eD < ed; eD++) jm[eD] = a0X[eD] = aU.ii.a7B[eD % px];
else(9 === ik ? function() {
var eD, gQ = aL.random(),
eZ = fu.length,
pB = h1 + aM.a96;
for (eD = pB - 1; h1 <= eD; eD--) jm[eD] = a0X[eD] = fu[(eD + gQ) % eZ];
for (eZ = a8z.length, eD = pB; eD < ed; eD++) jm[eD] = a0X[eD] = a8z[eD % eZ]
} : im ? function() {
var eD, gQ = aL.random();
for (eD = h1; eD < ed; eD++) jm[eD] = a0X[eD] = fu[(eD + gQ) % ed]
} : function() {
var eD, eZ = fu.length,
gQ = aL.random();
for (eD = h1; eD < ed; eD++) jm[eD] = a0X[eD] = fu[(eD + gQ) % eZ]
})()
}
}
function cD() {
this.a97 = [], this.a98 = [], this.cq = function() {
this.a97 = [], this.a98 = []
}, this.i6 = function() {
0 <= this.a97.length && this.a99(this.a97), 0 <= this.a98.length && this.a99(this.a98)
}, this.a99 = function(dl) {
for (var hi = -1, eD = dl.length - 1; 0 <= eD; eD--)
if (dl[eD].dY--, dl[eD].dY <= 0) {
hi = eD;
break
} for (eD = hi; 0 <= eD; eD--) dl.shift()
}, this.vE = function(id, qf, a9A) {
return this.a9B(this.a97, id, qf, a9A)
}, this.a9C = function(id, qf, a9A) {
return this.a9B(this.a98, id, qf, a9A)
}, this.a9B = function(dl, id, qf, a9A) {
return ! function(dl, id, qf) {
var eD, pe;
for (eD = qf.length - 1; 0 <= eD; eD--)
for (pe = dl.length - 1; 0 <= pe; pe--)
if (dl[pe].player === qf[eD] && id === dl[pe].id) return 1;
return
}(dl, id, qf) && (a9A && function(dl, id, qf) {
var eD;
for (eD = qf.length - 1; 0 <= eD; eD--) dl.push({
player: qf[eD],
id: id,
dY: 384
})
}(dl, id, qf), !0)
}
}
function ug(qf) {
jm = new Array(ed), a0X = new Array(ed), h2 = new Uint8Array(ed), hu = new Uint16Array(ed), hx = new Uint16Array(ed), ht = new Uint16Array(ed), hw = new Uint16Array(ed), ez = new Uint32Array(ed), qC = new Uint32Array(ed), eV = new Uint32Array(
ed), donationsTracker.reset(), leaderboardFilter.reset(), ea = new Array(ed), er = new Array(ed), es = new Array(ed), ev = new Array(ed), h3 = new Uint8Array(ed);
for (let eD = qf.length - 1; 0 <= eD; eD--) jm[eD] = a0X[eD] = qf[eD].name, h3[eD] = qf[eD].a53
}
function cB() {
this.wp = 0, this.qf = null, this.cq = function() {
this.wp = 0, this.qf = []
}, this.a9F = function(player) {
this.qf.push(player), rU++, h3[player] = 2, player === eU && (u.show(!1, !1), t.a15()), a6.wM(player)
}, this.a6s = function(player) {
var eD, qf;
if (2 !== h3[player])
for (eD = (qf = this.qf).length - 1; 0 <= eD; eD--)
if (qf[eD] === player) return void qf.splice(eD, 1)
}, this.i6 = function() {
im || (30 === this.wp && 2140 <= b3.iK() && this.a9G(), this.wp = (this.wp + 1) % 60)
}, this.a9G = function() {
for (var qf = this.qf, eD = qf.length - 1; 0 <= eD; eD--) ! function(player, h5) {
!a4.i4(player) || (h5 = Math.max(Math.min(100, eV[player]), eR(h5 * eV[player], 100))) < 100 || (0 === er[player].length ? !ak.i5.i6(player) && hM && i8(player, h5, 0, 0) : (hM ? iJ : iR)(player, h5))
}(qf[eD], 12)
}
}
function uj() {
for (iN = 0, eD = ed - 1; 0 <= eD; eD--) 0 !== h2[eD] && iN++;
iO = new Uint16Array(iN);
for (var eZ = 0, eD = 0; eD < ed; eD++) 0 !== h2[eD] && (iO[eZ++] = eD)
}
function j0() {
a9I(), a9J()
}
function a9J() {
for (var eD = iN - 1; 0 <= eD; eD--) 0 === h2[iO[eD]] && a9K(eD)
}
function a9K(eD) {
iN--;
for (var hZ = eD; hZ < iN; hZ++) iO[hZ] = iO[hZ + 1]
}
function a9I() {
for (var gf, eD = iN - 1; 0 <= eD; eD--) ez[iO[eD]] <= eR(qC[iO[eD]], 4) ? ez[iO[eD]] <= 1e3 && (2 !== h2[iO[eD]] || 0 === ez[iO[eD]]) && a6c(iO[eD]) : ez[iO[eD]] >= qC[iO[eD]] ? qC[iO[eD]] = ez[iO[eD]] : (gf = eR(qC[iO[eD]] - ez[iO[eD]], 1e3),
qC[iO[eD]] -= gf < 1 ? 1 : gf)
}
function mF() {
for (var a6T = 0, eD = iN - 1; 0 <= eD; eD--) a6T += eV[iO[eD]];
return a6T % 4096
}
function bu() {
var a9L;
this.iq = null, this.cq = function() {
a9L = [], 9 === ik && this.a9M()
}, this.a9M = function() {
var eD, a9N = [50, 74, 95, 150, 190, 333];
if (this.a96 = 0, this.iq = [0, 0, 0, 0, 0, 0], h1 <= a9N[0]) this.iq[0] = Math.max(ai.fE(h1 * (512 - h1), a9N[0]), 13), ig = this.iq[0];
else
for (ig = ed - h1, eD = 1; eD < 6; eD++)
if (h1 <= a9N[eD]) {
this.iq[eD - 1] = 512 - a9N[eD - 1] - eR((512 - a9N[eD - 1]) * (h1 - a9N[eD - 1]), a9N[eD] - a9N[eD - 1]), this.iq[eD] = 512 - h1 - this.iq[eD - 1];
break
} px = h1 + ig
}, this.a6r = function(player) {
a9L.push({
player: player,
wa: 14 + aL.hc(20)
})
}, this.i6 = function() {
var eD;
if (9 === ik)
for (eD = a9L.length - 1; 0 <= eD; eD--) --a9L[eD].wa <= 0 && (a6.ms(a9L[eD].player, 0, 46), a9L.splice(eD))
}
}
function cT() {
function a9T(eD) {
return eD >= ap.a9Y() && eD !== ap.a70()
}
function a9R(eD) {
return 1 !== eD && !a9T(eD) && eD !== ap.a70()
}
this.e8 = 0, this.e9 = 0, this.pN = null, this.pJ = null, this.pK = null, this.pO = null, this.pl = 0, this.a4T = 0, this.pL = !1, this.a7F = 20, this.pM = new a9P, this.ii = new a9Q, this.cq = function() {
this.ii.cq()
}, this.d2 = function(map, a4X) {
((map %= this.a7F) !== this.pl || a9R(this.pl) && a4X !== this.a4T) && (this.pL = !1, this.pM.a4f(), aL.uf(map), this.pl = map, this.a4T = a4X, a9R(map) && (ap.ii.pk[map].a9S = a4X), a9T(this.pl) ? a9U() : (map = ap.ii.pk[this.pl], this
.e8 = map.g5, this.e9 = map.gA, aL.uf(map.a9S), aA.d2([this.e8, this.e9, map.jq, map.jn]), a9V(), a9.a9W(), aA.a9X()))
}, this.a9Y = function() {
return 10
}, this.a9Z = function(eD) {
return 3 === eD || 7 === eD || 9 === eD || eD === this.a70()
}, this.a9a = function(eD) {
return 2 === eD || 7 === eD || 9 === eD
}, this.a9b = function(eD) {
return 1 === eD
}, this.a70 = function() {
return this.a7F
}
}
function a9P() {
function a9l() {
ap.pM.i6()
}
function a9r(eg, a9q) {
0 < a9q && (ap.pO[eg] += a9q, ap.pO[eg + 1] += a9q, ap.pO[eg + 2] += a9q)
}
function fj(eg) {
return ap.pO[eg + 2] > ap.pO[eg] && ap.pO[eg + 2] > ap.pO[eg + 1]
}
this.zT = -1, this.dX = 0, this.a9c = 0, this.a9d = 8, this.a9e = 32, this.a9f = 8, this.a9g = 32, this.a9h = [0, 0], this.ya = [0, 0, 0, 0], this.hE = null, this.a9i = !0, this.a9j = !1, this.a4f = function() {
-1 !== this.zT && clearTimeout(this.zT), this.zT = -1, this.hE = null, aA.a9X()
}, this.cq = function() {
7 === x.s1() || this.a9j || (this.a9i = !0, this.dX = 0, this.a9c = 1, this.a9h = [ap.ii.pk[ap.pl].pj[0], ap.ii.pk[ap.pl].pm[0]], this.ya = [ap.ii.pk[ap.pl].a9k[3], ap.ii.pk[ap.pl].a9k[4], ap.ii.pk[ap.pl].a9k[5], ap.ii.pk[ap.pl].a9k[6]],
this.a9d = ap.ii.pk[ap.pl].a9k[7], this.a9e = ap.ii.pk[ap.pl].a9k[8], this.a9f = ap.ii.pk[ap.pl].a9k[9], this.a9g = ap.ii.pk[ap.pl].a9k[10], this.a9i ? this.zT = setTimeout(a9l, 16) : this.i6())
}, this.i6 = function() {
if (8 === x.s1() && f.k4()) this.zT = setTimeout(a9l, 16);
else {
if (0 === this.dX) {
var a9S = aL.a9m();
if (aL.uf(ap.ii.pk[ap.pl].a9k[2]), aA.d2([ap.e8, ap.e9, ap.ii.pk[ap.pl].a9k[0], ap.ii.pk[ap.pl].a9k[1]]), aL.uf(a9S), this.hE = aA.a9n(), this.dX++, this.a9i) return void(this.zT = setTimeout(a9l, 16))
}
for (var eg, fX, a9S = this.a9i ? 10 : 1e6, a9S = ap.e9 - this.a9c - 1 < a9S ? ap.e9 - this.a9c - 1 : a9S, q9 = this.a9c + a9S, fJ = this.a9c; fJ < q9; fJ++)
for (var fI = 1; fI < ap.e8 - 1; fI++) fj(eg = 4 * (fX = fI + fJ * ap.e8)) ? this.a9o(eg, fX, 1) : (this.a9o(eg, fX, 0), function(fI, fJ, eg) {
return 1 < fI && fj(eg - 4) || fI < ap.e8 - 2 && fj(eg + 4) || 1 < fJ && fj(eg - 4 * ap.e8) || fJ < ap.e9 - 2 && fj(eg + 4 * ap.e8)
}(fI, fJ, eg) && this.a9p(fI, fJ));
this.a9c = q9, this.a9c >= ap.e9 - 1 ? (ap.pJ.putImageData(ap.pK, 0, 0, 1, 1, ap.e8 - 2, ap.e9 - 2), b3.d1 = !0, this.a4f()) : this.a9i && (this.zT = setTimeout(a9l, 16))
}
}, this.a9o = function(eg, fX, fz) {
a9r(eg, Math.floor(this.a9h[fz] + this.ya[fz] * this.hE[fX] / 1e4) - ap.pO[eg])
}, this.a9s = function(eg, gQ, a9t, fz, ya) {
a9r(eg, Math.floor(this.a9h[fz] + (1 - gQ / a9t) * ya) - ap.pO[eg])
}, this.a9p = function(g8, g9) {
for (var eg, gQ, a9t, po = g8 - this.a9e, pp = g9 - this.a9e, qA = g8 + this.a9e, q9 = g9 + this.a9e, po = po < 1 ? 1 : po, qA = qA > ap.e8 - 2 ? ap.e8 - 2 : qA, q9 = q9 > ap.e9 - 2 ? ap.e9 - 2 : q9, fJ = pp < 1 ? 1 : pp; fJ <= q9; fJ++)
for (var fI = po; fI <= qA; fI++) fj(eg = 4 * (fI + fJ * ap.e8)) ? (a9t = this.a9d + (this.a9e - this.a9d) * this.hE[fI + ap.e8 * fJ] / 1e4, Math.abs(g8 - fI) > a9t || Math.abs(g9 - fJ) > a9t || a9t <= (gQ = Math.sqrt((g8 - fI) * (
g8 - fI) + (g9 - fJ) * (g9 - fJ))) || this.a9s(eg, gQ, a9t, 1, this.ya[3])) : (a9t = this.a9f + (this.a9g - this.a9f) * this.hE[fI + ap.e8 * fJ] / 1e4, Math.abs(g8 - fI) > a9t || Math.abs(g9 - fJ) > a9t || a9t <= (gQ = Math
.sqrt((g8 - fI) * (g8 - fI) + (g9 - fJ) * (g9 - fJ))) || this.a9s(eg, gQ, a9t, 0, this.ya[2]))
}
}
function a9V() {
2 === ap.pl ? a9u([256], [256], [0, 205, 256], [500, 500, 0], [0, 0, 0]) : 7 === ap.pl ? a9u([512], [512], [0, 380, 512], [500, 500, 0], [0, 0, 0]) : 8 === ap.pl ? a9u([410], [410], [0, 120, 210], [0, 80, 640], [0, 0, 0]) : 9 === ap.pl && a9u([
512
], [512], [0, 70, 180, 200, 290, 420, 512], [500, 500, 0, 0, 500, 500, 0], [0, 0, 0, 0, 0, 0, 0])
}
function a9u(a9v, a9w, a9x, a9y, a9z) {
for (var fI, fJ, aA1, aA2, ft, aA3, gs = a9v.length - 1, aA0 = ap.e8 + ap.e9, eZ = (aA0 *= aA0, a9x.length), eD = eZ - 1; 0 <= eD; eD--) a9x[eD] *= a9x[eD];
var aA4 = new Array(eZ),
aA5 = new Array(eZ),
aA6 = new Array(eZ),
db = aA.a9n();
if (void 0 === a9z)
for (a9z = new Array(eZ), eD = eZ - 1; 0 <= eD; eD--) a9z[eD] = 0;
for (eD = 1; eD < eZ; eD++) aA4[eD] = a9x[eD] - a9x[eD - 1], aA5[eD] = a9y[eD] - a9y[eD - 1], aA6[eD] = a9z[eD] - a9z[eD - 1];
for (fI = ap.e8 - 1; 0 <= fI; fI--)
for (fJ = ap.e9 - 1; 0 <= fJ; fJ--) {
for (aA1 = aA0, eD = gs; 0 <= eD; eD--) aA1 = (aA2 = (fI - a9v[eD]) * (fI - a9v[eD]) + (fJ - a9w[eD]) * (fJ - a9w[eD])) < aA1 ? aA2 : aA1;
for (ft = a9y[eZ - 1], aA3 = a9z[eZ - 1], eD = 1; eD < eZ; eD++)
if (aA1 < a9x[eD]) {
ft = a9y[eD - 1] + a64((aA1 - a9x[eD - 1]) * aA5[eD], aA4[eD]), aA3 = a9z[eD - 1] + a64((aA1 - a9x[eD - 1]) * aA6[eD], aA4[eD]);
break
} aA7(ap.e8 * fJ + fI, ft, aA3, db)
}
}
function aA7(fz, ft, aA3, db) {
ft < 500 ? db[fz] = eR(db[fz] * ft * 2, 1e3) : 500 < ft && (db[fz] += eR(2 * (1e4 - db[fz]) * (ft - 500), 1e3)), db[fz] += eR(aA3 * (10 * ft - db[fz]), 1e3)
}
function bv() {
var aA8;
this.wh = 0, this.wi = 0, this.wk = 0, this.wl = 0, this.cq = function() {
(aA8 = new Array(ap.a9Y()))[0] = {
g5: [0, 5e3, 8e3, 1e4],
gQ: [220, 250, 255, 220],
tp: [190, 220, 0, 0],
hi: [170, 200, 0, 0]
}, aA8[1] = {
g5: [0, 4e3, 5e3, 6e3, 1e4],
gQ: [25, 0, 100, 0, 25],
tp: [25, 0, 0, 0, 25],
hi: [25, 0, 0, 0, 25]
}, aA8[2] = {
g5: [0, 500, 2500, 2999, 3e3, 3200, 4200, 5200, 5700, 8800, 1e4],
gQ: [15, 15, 70, 40, 48, 48, 252, 40, 40, 20, 30],
tp: [80, 80, 190, 90, 46, 46, 248, 180, 180, 90, 140],
hi: [120, 120, 220, 110, 37, 37, 217, 10, 10, 10, 10]
}, aA8[3] = {
g5: [0, 400, 1800, 2e3, 3200, 4500, 6e3, 7700, 8500, 9500, 1e4],
gQ: [10, 10, 20, 10, 30, 10, 16, 40, 55, 230, 230],
tp: [10, 10, 40, 50, 100, 40, 80, 120, 55, 230, 230],
hi: [80, 80, 200, 10, 60, 10, 16, 40, 55, 230, 230]
}, aA8[4] = {
g5: [0, 300, 1400, 1700, 3e3, 4e3, 1e4],
gQ: [10, 10, 20, 10, 10, 170, 212],
tp: [20, 20, 60, 100, 100, 110, 170],
hi: [70, 70, 160, 30, 30, 60, 120]
}, aA8[5] = {
g5: [0, 1e3, 3e3, 3500, 4e3, 4500, 7e3, 7500, 8e3, 1e4],
gQ: [10, 10, 20, 10, 5, 10, 20, 5, 20, 25],
tp: [30, 30, 50, 100, 30, 100, 140, 60, 140, 200],
hi: [80, 80, 200, 10, 5, 10, 20, 5, 20, 25]
}, aA8[6] = {
g5: [0, 700, 2650, 3200, 5e3, 8e3, 1e4],
gQ: [10, 10, 60, 255, 255, 200, 200],
tp: [10, 10, 60, 255, 255, 200, 200],
hi: [80, 80, 255, 255, 255, 200, 200]
}, aA8[7] = {
g5: [0, 400, 1999, 2e3, 3200, 4e3, 4700, 5500, 6500, 9500, 1e4],
gQ: [10, 10, 80, 255, 255, 55, 6, 70, 20, 155, 255],
tp: [10, 10, 90, 245, 245, 170, 80, 190, 20, 155, 255],
hi: [80, 80, 255, 235, 235, 55, 26, 10, 20, 155, 255]
}, aA8[8] = {
g5: [0, 700, 1300, 1900, 1901, 2500, 3400, 6e3, 1e4],
gQ: [25, 30, 30, 30, 255, 255, 30, 40, 20],
tp: [25, 30, 150, 150, 245, 245, 80, 150, 70],
hi: [60, 170, 170, 170, 235, 235, 30, 40, 40]
}, aA8[9] = {
g5: [0, 400, 2009, 2010, 3300, 4e3, 5200, 6500, 8e3, 9500, 1e4],
gQ: [10, 10, 80, 255, 255, 55, 23, 36, 20, 155, 255],
tp: [10, 10, 90, 245, 245, 170, 60, 160, 20, 155, 255],
hi: [80, 80, 255, 235, 235, 55, 9, 72, 20, 155, 255]
}
}, this.a9W = function() {
var eD, hZ, dm, gK = function() {
var gK;
return ap.pN = document.createElement("canvas"), ap.pN.width = ap.e8, ap.pN.height = ap.e9, ap.pJ = ap.pN.getContext("2d", {
alpha: !1
}), gK = ap.pJ.getImageData(0, 0, ap.e8, ap.e9), ap.pO = gK.data, gK
}(),
g5 = aA8[ap.pl].g5,
gQ = aA8[ap.pl].gQ,
tp = aA8[ap.pl].tp,
hi = aA8[ap.pl].hi,
db = aA.a9n(),
eZ = g5.length - 2,
aAC = new Array(1 + eZ),
aAD = new Array(1 + eZ),
aAE = new Array(1 + eZ),
aAF = new Array(1 + eZ);
for (hZ = eZ; 0 <= hZ; hZ--) aAC[hZ] = g5[hZ + 1] - g5[hZ], aAD[hZ] = gQ[hZ + 1] - gQ[hZ], aAE[hZ] = tp[hZ + 1] - tp[hZ], aAF[hZ] = hi[hZ + 1] - hi[hZ];
for (eD = ap.e8 * ap.e9 - 1; 0 <= eD; eD--)
for (hZ = eZ; 0 <= hZ; hZ--)
if (db[eD] >= g5[hZ]) {
dm = db[eD] - g5[hZ], ap.pO[4 * eD] = gQ[hZ] + a64(aAD[hZ] * dm, aAC[hZ]), ap.pO[4 * eD + 1] = tp[hZ] + a64(aAE[hZ] * dm, aAC[hZ]), ap.pO[4 * eD + 2] = hi[hZ] + a64(aAF[hZ] * dm, aAC[hZ]), ap.pO[4 * eD + 3] = 255;
break
} ap.pJ.putImageData(gK, 0, 0), ap.a9b(ap.pl) && a1.g3() && ap.a9b(ap.pl) && (gK = a1.v5("arena"), ap.pJ.save(), ap.pJ.globalAlpha = 1 === ap.pl ? .1 : 1, ap.pJ.imageSmoothingEnabled = !0, ap.pJ.scale(2.8, 2.8), ap.pJ.drawImage(
gK, Math.floor((ap.e8 / 2.8 - gK.width) / 2), Math.floor(.5 * ap.e9 / 2.8 - gK.height / 2)), ap.pJ.restore(), gK = a1.v5("territorial.io"), ap.pJ.save(), ap.pJ.globalAlpha = 1 === ap.pl ? .1 : 1, ap.pJ
.imageSmoothingEnabled = !0, ap.pJ.scale(.87, .87), ap.pJ.drawImage(gK, Math.floor(.745 * (ap.e8 / .87 - gK.width)), Math.floor(.422 * ap.e9 / .87 - gK.height / 2)), ap.pJ.restore()), ap.pL = !0, b3.d1 = !0
}, this.ui = function() {
for (var eg, fI, fJ, aAI, aAJ, dp, wi = 0, g5 = ap.e8, gA = ap.e9, dm = g5 * gA * 4, aAK = a1b, aAL = ap.pO, eD = g5 - 1; 0 <= eD; eD--) aAK[(eg = eD << 2) + 2] = aAK[dm - eg - 2] = 3;
for (dm = 4 * g5, eD = gA - 1; 0 <= eD; eD--) aAK[(eg = eD * dm) + 2] = aAK[eg + dm - 2] = 3;
for (aAI = g5 - 1, aAJ = gA - 1, fJ = 1; fJ < aAJ; fJ++)
for (dm = fJ * g5, fI = 1; fI < aAI; fI++) dp = 1 - (aAL[(eg = dm + fI << 2) + 2] > aAL[eg + 1] && aAL[eg + 2] > aAL[eg]), aAK[eg + 2] = 2 - dp, wi += dp;
this.wh = (g5 - 2) * (gA - 2), this.wl = 0, ap.a9Z(ap.pl) && function() {
var eg, fI, fJ, dm, aAK = a1b,
aAL = ap.pO,
g5 = ap.e8,
aAI = g5 - 1,
aAJ = ap.e9 - 1,
wa = 0;
for (fJ = 1; fJ < aAJ; fJ++)
for (dm = fJ * g5, fI = 1; fI < aAI; fI++) aAL[eg = dm + fI << 2] === aAL[1 + eg] && aAL[eg] === aAL[2 + eg] && (wa++, aAK[2 + eg] = 3);
a9.wl = wa
}(), this.wi = uS = wi - this.wl, this.wk = this.wh - this.wi - this.wl
}
}
function a9U() {
var fy, aAN = ap.a9Y();
ap.pl === aAN ? fy =
"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
ap.pl === aAN + 1 ? fy =
"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
ap.pl === aAN + 2 ? fy =
"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
ap.pl === aAN + 3 ? fy =
"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" :
ap.pl === aAN + 4 ? fy =
"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" :
ap.pl === aAN + 5 ? fy =
"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
ap.pl === aAN + 6 ? fy =
"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
ap.pl === aAN + 7 ? fy =
"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" :
ap.pl === aAN + 8 ? fy =
"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
ap.pl === aAN + 9 && (fy =
"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 p7).p9(fy)
}
function a9Q() {
this.pk = null, this.cq = function() {
var aAO = [120, 105, 92],
cos = [12, 12, 60],
aAP = [300, 300, 9827, 26, 18, 36, 36, 8, 32, 3, 9],
aAQ = [140, 130, 120],
aAR = [12, 12, 76],
aAS = [240, 120, 1024, 30, 19, 30, 70, 8, 20, 3, 9],
aAT = [130, 117, 106],
aAU = [12, 12, 68],
aAV = [270, 210, 1024, 28, 19, 33, 50, 8, 26, 3, 9];
this.pk = new Array(ap.a7F + 1), this.pk[0] = {
name: "White Arena",
g5: 230,
gA: 230,
jq: 1e3,
jn: 2e3,
a9S: 173
}, this.pk[1] = {
name: "Black Arena",
g5: 800,
gA: 800,
jq: 100,
jn: 50,
a9S: 43
}, this.pk[2] = {
name: "Island",
g5: 512,
gA: 512,
jq: 128,
jn: 32,
a9S: 0
}, this.pk[3] = {
name: "Mountains",
g5: 960,
gA: 960,
jq: 60,
jn: 8,
a9S: 0
}, this.pk[4] = {
name: "Desert",
g5: 900,
gA: 900,
jq: 100,
jn: 5,
a9S: 0
}, this.pk[5] = {
name: "Swamp",
g5: 1e3,
gA: 1e3,
jq: 100,
jn: 40,
a9S: 0
}, this.pk[6] = {
name: "Snow",
g5: 1e3,
gA: 1e3,
jq: 100,
jn: 20,
a9S: 0
}, this.pk[7] = {
name: "Cliffs",
g5: 1024,
gA: 1024,
jq: 128,
jn: 32,
a9S: 0
}, this.pk[8] = {
name: "Pond",
g5: 820,
gA: 820,
jq: 200,
jn: 100,
a9S: 0
}, this.pk[9] = {
name: "Halo",
g5: 1024,
gA: 1024,
jq: 128,
jn: 32,
a9S: 0
}, this.pk[10] = {
name: "Europe",
pj: aAQ,
pm: aAR,
a9k: aAS
}, this.pk[11] = {
name: "World",
pj: aAT,
pm: aAU,
a9k: aAV
}, this.pk[12] = {
name: "Caucasia",
pj: aAT,
pm: aAU,
a9k: aAV
}, this.pk[13] = {
name: "Africa",
pj: aAO,
pm: cos,
a9k: aAP
}, this.pk[14] = {
name: "Middle East",
pj: aAO,
pm: cos,
a9k: aAP
}, this.pk[15] = {
name: "Scandinavia",
pj: aAQ,
pm: aAR,
a9k: aAS
}, this.pk[16] = {
name: "North America",
pj: aAQ,
pm: aAR,
a9k: aAS
}, this.pk[17] = {
name: "South America",
pj: aAO,
pm: cos,
a9k: aAP
}, this.pk[18] = {
name: "Asia",
pj: aAT,
pm: aAU,
a9k: aAV
}, this.pk[19] = {
name: "Australia",
pj: aAO,
pm: cos,
a9k: aAP
}, this.pk[20] = {}
}
}
function uh() {
(qU = void 0 === qU ? document.createElement("canvas") : qU).width = ap.e8, qU.height = ap.e9, uk = qU.getContext("2d", {
alpha: !0
}), ul = uk.getImageData(0, 0, ap.e8, ap.e9), a1b = ul.data, aY.pP.pQ(a1b)
}
function bw() {
var db, g5, gA, max, aAW, jn, aAY, aAZ, aAa, aAb, aAc, aAd, aAe, aAf, aAX = 1e4;
function aAn(aAm, jq, eZ) {
var eD;
for (aAY[0] = aAm, eD = 1; eD < eZ; eD++) aAY[eD] = aAY[eD - 1] + jq, jq = aAY[eD] >= aAX ? (aAY[eD] = aAX - 1, -jq) : aAY[eD] < 0 ? (aAY[eD] = 0, -jq) : (jq += 16384 <= aL.random() ? jn : -jn) < -aAW ? -aAW : aAW < jq ? aAW : jq
}
function aAp(fI, fJ, aAq, eZ) {
(aAq ? function(fI, fJ, eZ) {
var eD;
for (eD = 0; eD < eZ; eD++) db[fJ * g5 + fI + eD] = aAY[eD]
} : function(fI, fJ, eZ) {
var eD;
for (eD = 0; eD < eZ; eD++) db[fJ * g5 + fI + eD * g5] = aAY[eD]
})(fI, fJ, eZ)
}
function aAt(value, eZ) {
var eD, a8w, fZ, gf = value - aAY[eZ - 1];
if (0 != gf) {
for (a8w = 1 + eR(Math.abs(gf), eZ - 1), a8w = gf < 0 ? -a8w : a8w, aAY[eZ - 1] = value, fZ = (fZ = eZ - 1 - eR(Math.abs(gf), Math.abs(a8w))) < 1 ? 1 : eZ - 2 < fZ ? eZ - 2 : fZ, eD = eZ - 2; fZ <= eD; eD--) aAY[eD] += gf - (eZ - 1 -
eD) * a8w;
(gf < 0 ? function(eZ) {
var eD;
for (eD = eZ - 2; 1 <= eD; eD--) aAY[eD] < 0 && (aAY[eD] = -aAY[eD] - 1)
} : function(eZ) {
var eD;
for (eD = eZ - 2; 1 <= eD; eD--) aAY[eD] >= aAX && (aAY[eD] = 2 * aAX - aAY[eD] - 1)
})(eZ)
}
}
function aAw(aAx, aAy, eZ) {
for (var eD = 0; eD < eZ; eD++) aAx[eD] = aAy[eD]
}
function aAz(dl) {
for (var eD = 0; eD < dl.length - 1; eD++) dl[eD] = dl[eD + 1] - dl[eD];
dl[dl.length - 1] = dl[dl.length - 3]
}
function aB0(v8, gap, ge) {
aAZ.push(v8), aAa.push(gap), aAb.push(ge)
}
this.d2 = function(aAg) {
! function(aAg) {
var eD;
for (g5 = aAg[0], gA = aAg[1], aAW = aAg[2], jn = aAg[3], db = new Int16Array(g5 * gA), max = gA < g5 ? g5 : gA, aAY = new Int16Array(max), aAZ = [], aAa = [], aAb = [], aAc = new Array(g5), aAd = new Array(gA), eD = g5 - 1; 0 <=
eD; eD--) aAc[eD] = !1;
for (eD = gA - 1; 0 <= eD; eD--) aAd[eD] = !1;
aAe = new Int16Array(g5), aAf = new Int16Array(gA)
}(aAg),
function(eZ) {
var aAm = aL.random() % aAX,
jq = aL.random() % (2 * aAW + 1) - aAW;
aAn(aAm, jq, eZ)
}(max), aAw(aAf, aAY, gA), aAp(0, 0, !0, g5);
var fI, fJ, aAg = db[0],
eZ = max,
jq = aL.random() % (2 * aAW + 1) - aAW;
for (aAn(aAg, jq, eZ), aAw(aAe, aAY, g5), aAp(0, 0, !1, gA), aAz(aAe), aAz(aAf), aAn(db[g5 - 1], aAe[g5 - 1], gA), aAp(g5 - 1, 0, !1, gA), aAn(db[g5 * (gA - 1)], aAf[gA - 1], g5), aAt(db[g5 * gA - 1], g5), aAp(0, gA - 1, !0, g5), aAc[g5 -
1] = aAc[0] = !0, aAd[gA - 1] = aAd[0] = !0, aB0(0, g5, !0), aB0(0, gA, !1), ! function() {
var aB2, v8;
for (;;) {
if (aB2 = function() {
var eD, aB2 = aAZ.length - 1;
for (eD = aB2 - 1; 0 <= eD; eD--) aAa[eD] > aAa[aB2] && (aB2 = eD);
return aB2
}(), aAa[aB2] < 5) return;
v8 = aAZ[aB2] + eR(aAa[aB2], 2), (aAb[aB2] ? function(fI) {
var eZ, aB5, eD, a2h = 0,
aB6 = 0;
for (; aB6 < gA - 1;) {
for (eD = a2h + 1; eD < gA; eD++)
if (aAd[eD]) {
aB6 = eD;
break
} eZ = aB6 - a2h + 1, aAn(db[fI + g5 * a2h], 0 === a2h ? aAe[fI] : aAY[aB5 - 1] - aAY[aB5 - 2], eZ), aAt(db[aB6 * g5 + fI], eZ), aAp(fI, a2h, !1, eZ), aB5 = eZ, a2h = aB6
}
aAc[fI] = !0
} : function(fJ) {
var eZ, aB5, eD, a2h = 0,
aB6 = 0;
for (; aB6 < g5 - 1;) {
for (eD = a2h + 1; eD < g5; eD++)
if (aAc[eD]) {
aB6 = eD;
break
} eZ = aB6 - a2h + 1, aAn(db[fJ * g5 + a2h], 0 === a2h ? aAf[fJ] : aAY[aB5 - 1] - aAY[aB5 - 2], eZ), aAt(db[fJ * g5 + aB6], eZ), aAp(a2h, fJ, !0, eZ), aB5 = eZ, a2h = aB6
}
aAd[fJ] = !0
})(v8), aB0(v8, aAZ[aB2] + aAa[aB2] - v8, aAb[aB2]), aAa[aB2] = v8 - aAZ[aB2] + 1
}
}(), fI = 0; fI < g5; fI++)
if (!aAc[fI])
for (fJ = 0; fJ < gA; fJ++) aAd[fJ] || ! function(fI, fJ) {
var value = db[fJ * g5 + fI - 1] + db[(fJ - 1) * g5 + fI],
wv = 2;
aAc[fI + 1] && (wv++, value += db[fJ * g5 + fI + 1]);
aAd[fJ + 1] && (wv++, value += db[(fJ + 1) * g5 + fI]);
db[fJ * g5 + fI] = eR(value, wv)
}(fI, fJ)
}, this.a9n = function() {
return db
}, this.a9X = function() {
db = null
}
}
function eR(hZ, hi) {
return Math.floor(hZ / hi + 1 / (2 * hi))
}
function a64(hZ, hi) {
return 0 <= hZ ? eR(hZ, hi) : -eR(-hZ, hi)
}
function hz(db) {
return db * db
}
function wC(hZ, hi) {
return hi < hZ ? hZ : hi
}
function yR(hZ, hi) {
return hZ < hi ? hZ : hi
}
function yr(hZ, db, hi) {
return db < hZ ? hZ : hi < db ? hi : db
}
function aB8(db, eZ) {
for (var iL = eR(db + 1, 2), eD = 0; eD < eZ; eD++) iL = eR(iL + eR(db, iL), 2);
return iL
}
function a7k(db, eZ) {
return db < 1 ? 0 : aB8(db, eZ)
}
function aB9(jc, jd, qb, xM, je, jf, qc, a56) {
return !(jc + qb <= je || jd + xM <= jf || je + qc <= jc || jf + a56 <= jd)
}
function aBA(jc, jd, qb, xM, je, jf, qc, a56) {
return jc <= je && jd <= jf && je + qc <= jc + qb && jf + a56 <= jd + xM
}
function pG(db) {
return Math.floor(!!db * (1 + Math.log2(db + .5)))
}
function bH() {
this.fE = function(hZ, hi) {
return Math.floor((hZ + .5) / hi)
}, this.aBB = function(hZ, hi) {
return Math.floor(hZ * (hi + .5))
}, this.sqrt = function(db) {
return ~~Math.sqrt(db + .5)
}, this.pow = function(dE) {
return Math.floor(Math.pow(2, dE) + .5)
}, this.lS = function(value, min, max) {
return Math.min(Math.max(value, min), max)
}, this.aBC = function(dm, dp, dr) {
return Math.max(Math.min(dm, dp), dr)
}, this.aBD = function(aBE, aBF, fI, fJ) {
fI -= aBE, aBE = fJ - aBF, fJ = 0;
return 0 == fI ? fJ = 0 <= aBE ? Math.PI : 0 : (fJ = Math.atan(aBE / fI), fJ += 0 < fI ? .5 * Math.PI : 1.5 * Math.PI), fJ
}, this.log2 = function(db) {
return Math.floor(!!db * (1 + Math.log2(db + .5)))
}
}
function cV() {
this.sI = 0;
var map = new Map;
this.ok = function(fz, aBG = 0, aAg = void 0) {
0 !== fz ? at.dI.hideCMPButton() : 0 === x.s1() && at.dI.showCMPButton(), this.o3(), this.sI = fz;
let pB = map.get(fz);
if (!pB || 4 === fz || 7 === fz || 8 === fz) {
if (0 === fz) return void map.clear();
1 === fz ? pB = new aBH : 2 === fz ? pB = new aBI : 3 === fz ? pB = new aBJ : 4 === fz ? pB = aAg : 5 !== fz && (6 === fz ? pB = new aBK : 7 === fz ? pB = new aBL : 8 === fz && (pB = aAg)), pB.aBG = aBG, map.set(fz, pB)
}
pB.show(aAg)
}, this.aBM = function() {
this.t8() && this.ok(map.get(this.sI).aBG)
}, this.o3 = function() {
this.t8() && map.get(this.sI).o3()
}, this.resize = function() {
if (!this.t8()) return !1;
map.get(this.sI).resize()
}, this.tL = function(dE) {
return !!this.t8() && ("Enter" === dE.key ? map.get(this.sI).tL(1) : "Escape" === dE.key && map.get(this.sI).tL(2), !0)
}, this.i6 = function() {
var pB;
this.t8() && (pB = map.get(this.sI)) && pB.i6 && pB.i6()
}, this.t8 = function() {
return 0 < this.sI
}, this.sJ = function() {
return map.get(this.sI)
}
}
function aBL() {
var aBN, aBO, aBQ, n9;
this.show = function() {
aBN.show(), this.resize()
}, this.o3 = function() {
aBN.o3()
}, this.resize = function() {
aBN.resize(), aBO.resize()
}, this.tL = function(iL) {
1 !== iL && ar.ok(1)
}, aBN = new nu("👤 " + aV.nc[125], [new nN("💾 " + aV.nc[97], function() {
ar.ok(1)
}, aZ.ku)]), aBO = new n7(aBN.nz, (n9 = [], (aBQ = new mu).mx("Account Information"), aBQ.my("Under Construction."), n9.push(aBQ), n9.push(function() {
var aBQ = new mu;
return aBQ.mx("🧈 Gold"), aBQ.n0("Balance: " + aY.jk.uH(b9.dG.data[113].value, .01, 2)), aBQ.my(
"Play more games to earn gold. Accounts without gold will be deleted. Each day, you will lose 0.5 Gold or 0.01% of your balance, whichever amount is higher."), aBQ
}()), n9.push(function() {
var aBQ = new mu;
return aBQ.mx("1v1 Rating"), aBQ.n0("Elo: " + aY.jk.uH(b9.dG.data[107].value, .1, 1) + "<br>Rank: " + (b9.dG.data[108].value + 1) + " / " + b9.dG.data[111].value + "<br>Played Games: " + b9.dG.data[112].value), aBQ
}()), n9.push(function() {
let aBQ = new mu,
aBX = (aBQ.mx("Account Name"), new nk(b9.dG.data[105]));
return aBX.dE.readOnly = !0, aBQ.n5(aBX), aBQ.n5(new ni([new nN("Copy", function() {
aY.g0.tu(aBX.dE), aY.g0.tv(this)
}).button])), aBQ
}()), n9.push(function() {
let aBQ = new mu,
aBY = (aBQ.mx("Password"), new nk(b9.dG.data[106]));
return aBY.dE.readOnly = !0, aBY.dE.type = "password", aBQ.n5(aBY), aBQ.n5(new ni([new nN("Show", function() {
"Show" === this.innerText ? (this.innerText = "Hide", aBY.dE.type = "text") : (this.innerText = "Show", aBY.dE.type = "password")
}).button, new nN("Copy", function() {
aY.g0.tu(aBY.dE), aY.g0.tv(this)
}).button])), aBQ.n5(new ni([new nN("Request New Password", function() {
ar.ok(8, 1, new aBZ("⏳ Connecting...", 15))
}).button])), aBQ
}()), n9.push(function() {
var aBQ = new mu;
return aBQ.mx("Account Options"), aBQ.n5(new ni([new nN("Log in to a Different Account", function() {
ar.ok(6, 7)
}).button])), aBQ.n5(new ni([new nN("Create New Account", function() {
b9.nd.ne(105, ""), ar.ok(8, 7, new aBZ("⏳ Connecting...", 18))
}).button])), aBQ.n5(new ni([new nN("Delete Account: " + b9.dG.data[105].value, function() {
ar.ok(4, 7, new sE("🗑️ Account Deletion", "Your account will start the deletion process but may be restored if you log in within 3 weeks.", !0, [new nN("❌ " + aV.nc[92], function() {
ar.ok(7)
}), new nN("🗑️ Delete Account", function() {
ar.ok(8, 0, new aBZ("⏳ Connecting...", 17))
}, aZ.l9)]))
}, aZ.l9).button])), aBQ
}()), n9.push(function() {
let aBQ = new mu,
n3 = (aBQ.mx("Saved Accounts"), b9.iw.oc(), new nq(b9.dG.data[117]));
return aBQ.n2(n3), aBQ.n5(new ni([new nN("🗑️ Remove From List", function() {
var fz = b9.dG.data[117].value;
0 !== fz && (n3.n4[fz].remove(), n3.n4.splice(fz, 1), b9.iw.og(fz), fz = b9.dG.data[117].value, n3.n4[fz].textContent = n3.n4[fz].textContent.replace("⚪", "🟢"))
}, aZ.l9).button])), aBQ.n5(new ni([new nN("➡️ Login", function() {
var data = b9.iw.oh(b9.dG.data[117].value);
b9.nd.ne(105, data.oi), b9.nd.ne(106, data.password), ar.ok(8, 7, new aBZ("⏳ Connecting...", 18))
}, aZ.ku).button])), aBQ
}()), n9))
}
function aBZ(title, id) {
var aBN, aBb;
function aBf() {
aBb.ng.innerHTML += "<br>New Connection..."
}
this.aBc = !0, this.show = function() {
aBN.show(), this.resize(), 8 === id ? aN.iw.a3A(0, 50 + id) ? aN.aBd.aBe(id) : aBf() : 15 === id ? aN.iw.a3A(0, id) ? this.aBg() : aBf() : 16 === id ? aN.iw.a3A(0, id) ? aN.aBd.aBh(2) : aBf() : 17 === id ? aN.iw.a3A(0, id) ? aN.aBd.aBh(
3) : aBf() : 18 === id && (aN.iw.close(0, 3253), aN.iw.a3A(0, id), aBf())
}, this.aBi = function() {
15 === id ? this.aBg() : 16 === id ? aN.aBd.aBh(2) : 17 === id ? aN.aBd.aBh(3) : 18 === id && ar.ok(8, 1, new aBZ("⏳ Connecting...", 16))
}, this.aBj = function(code) {
code === id && (15 === id ? (b9.nd.ne(106, b9.dG.data[110].value), b9.nd.ne(110, ""), ar.ok(7)) : 16 === id ? ar.ok(7) : 17 === id && (aN.iw.close(0, 3252), b9.iw.og(0), 0 < b9.dG.data[117].nt.length ? (code = b9.iw.oh(0), b9.nd.ne(105,
code.oi), b9.nd.ne(106, code.password), ar.ok(8, 0, new aBZ("⏳ Connecting...", 16))) : (b9.nd.ne(105, ""), ar.ok(0))))
}, this.aBg = function() {
ab.d2(48), ab.p4(24, Math.floor(ai.pow(24) * Math.random())), ab.p4(24, Math.floor(ai.pow(24) * Math.random())), ae.cq(ab.mK), b9.nd.ne(110, ac.op.qu(ac.op.qs(8))), aN.aBk.aBl()
}, this.o3 = function() {
aBN.o3()
}, this.resize = function() {
aBN.resize(), aBb.resize()
}, this.tL = function(iL) {
2 === iL && ar.aBM()
}, this.aBm = function(n6) {
var aBn = [];
for (let eD = 0; eD < n6.length; eD++) b8.a4E.cq(n6[0].aBo, n6[0].aBp, n6[0].aBq), aBn.push(b8.a4E.aBr());
b8.a4E.a4F(), aN.aBd.aBs(0, aBn)
}, this.sK = function(dE) {
return 4387 === dE && 16 === id && 0 !== b9.dG.data[110].value.length && (b9.nd.ne(106, b9.dG.data[110].value), b9.nd.ne(110, ""), aN.iw.a3A(0, id), !0)
}, aBN = new nu(title, [new nN("❌ " + aV.nc[92], function() {
ar.aBM()
}, aZ.l9)]), aBb = new nf(aBN.nz, "Find Server...")
}
function aBt(title) {
var aBN, aBu, aBv;
this.show = function() {
aBN.show(), this.resize()
}, this.o3 = function() {
aBN.o3()
}, this.resize = function() {
aBN.resize(), aBu.resize()
}, this.tL = function(iL) {
2 === iL && aBv[0].nQ()
}, aBv = [new nN("❌ " + aV.nc[92], function() {
ar.ok(0)
}, aZ.l9)], aBN = new nu(title, aBv), aBu = new nl(aBN.nz, [
["1.", "RU", "6.35", "Show"],
["2.", "RU", "6.35", "Show"],
["3.", "RU", "6.35", "Show"],
["4.", "RU", "6.35", "Show"],
["5.", "RU", "6.35", "Show"],
["6.", "RU", "6.35", "Show"],
["7.", "RU", "6.35", "Show"],
["8.", "RU", "6.35", "Show"],
["9.", "RU", "6.35", "Show"],
["10.", "RU", "6.35", "Show"]
])
}
function aBK() {
var aBN, aBO, n9;
this.show = function() {
aBN.show(), this.resize()
}, this.o3 = function() {
aBN.o3()
}, this.resize = function() {
aBN.resize(), aBO.resize()
}, this.tL = function(iL) {
2 === iL && ar.ok(7)
}, aBN = new nu("Login", [new nN("❌ " + aV.nc[92], function() {
ar.ok(7)
}, aZ.l9), new nN("➡️ Login", function() {
b9.nd.ne(105, ad.op.oy(aBO.nA[0].mv[0].dE.value, 5)), b9.nd.ne(106, ad.op.oy(aBO.nA[1].mv[0].dE.value, 8)), ar.ok(8, 6, new aBZ("⏳ Connecting...", 18))
}, aZ.ku)]), aBO = new n7(aBN.nz, ((n9 = []).push(function() {
var aBQ = new mu;
return aBQ.mx("Account Name"), aBQ.n5(new nk({
title: "AccountName",
value: "",
fz: -1
})), aBQ
}()), n9.push(function() {
let aBQ = new mu,
aBY = (aBQ.mx("Password"), new nk({
title: "Password",
value: "",
fz: -1
}));
return aBY.dE.type = "password", aBQ.n5(aBY), aBQ.n5(new ni([new nN("Show", function() {
"Show" === this.innerText ? (this.innerText = "Hide", aBY.dE.type = "text") : (this.innerText = "Show", aBY.dE.type = "password")
}).button])), aBQ
}()), n9))
}
function sE(title, n1, aBx = !1, aBv = [new nN("❌ " + aV.nc[92], function() {
ar.aBM()
}, aZ.l9)]) {
var aBN, aBb;
this.show = function() {
aBN.show(), this.resize()
}, this.o3 = function() {
aBN.o3()
}, this.resize = function() {
aBN.resize(), aBb.resize()
}, this.tL = function(iL) {
2 === iL && aBv[0].nQ()
}, aBN = new nu(title, aBv), aBb = new nf(aBN.nz, n1), aBx && aY.g0.textAlign(aBN.nz.style, 1)
}
function aBJ() {
var aBN, o8;
function aBy() {
at.dI.hideCMPButton();
var fy = aX.aC4(o8.oD());
(0 < fy.length && fy === aX.mZ.aC1 || aX.aC6.p9(fy)) && (ar.ok(0), aX.aC5())
}
this.show = function(aBz) {
! function(aBz) {
0 === rS ? (aBz = aBz || o8.oD(), o8.oB(aBz)) : (aX.mZ.aC1.length && (fL || 1 !== rS) || (aX.mZ.aC1 = aX.aC2.r5()), o8.oB(aX.aC3(aX.mZ.aC1)))
}(aBz), aBN.show(), this.resize()
}, this.o3 = function() {
aBN.o3()
}, this.resize = function() {
aBN.resize(), o8.resize()
}, this.tL = function(iL) {
1 === iL ? aBy() : ar.aBM()
}, aBN = new nu("▶️ " + aV.nc[82], [new nN("❌ " + aV.nc[92], function() {
ar.aBM()
}, aZ.l9), new nN("🔲 " + aV.nc[93], function() {
o8.oE()
}), new nN("📋 " + aV.nc[94], function() {
o8.oF()
}), new nN("🗑️ " + aV.nc[95], function() {
o8.clear()
}), new nN("▶️ " + aV.nc[96], function() {
aBy()
}, aZ.ky)]), o8 = new o7, aBN.nz.appendChild(o8.o9)
}
function aBI() {
var aBN, aBO, n9, aC7, aBQ;
this.show = function() {
aBN.show(), this.resize()
}, this.o3 = function() {
aBN.o3()
}, this.resize = function() {
aBN.resize(), aBO.resize()
}, this.tL = function(iL) {
1 === iL ? aC7.dE.blur() : ar.ok(1)
}, aBN = new nu("⚙️ " + aV.nc[81], [new nN("💾 " + aV.nc[97], function() {
ar.ok(1)
}, aZ.ku), new nN("🔄 " + aV.nc[98], function() {
ar.ok(0), b9.nd.on(), ar.ok(2)
})]), n9 = [], (aBQ = new mu).mx(aV.nc[99]), aBQ.my(aV.nc[100]), n9.push(aBQ), (aBQ = new mu).mx(b9.dG.data[0].title), aBQ.n2(new nq(b9.dG.data[0])), n9.push(aBQ), (aBQ = new mu).mx(b9.dG.data[10].title), aBQ.n2(new nq(b9.dG.data[10])), n9
.push(aBQ), (aBQ = new mu).mx(b9.dG.data[1].title), aBQ.n2(new nq(b9.dG.data[1])), n9.push(aBQ), (aBQ = new mu).mx(b9.dG.data[9].title), aBQ.n2(new nq(b9.dG.data[9])), n9.push(aBQ), (aBQ = new mu).mx(b9.dG.data[11].title), aBQ.n2(new nq(b9.dG
.data[11])), n9.push(aBQ), (aBQ = new mu).mx(b9.dG.data[2].title), aBQ.n5(new na(b9.dG.data[2])), n9.push(aBQ), (aBQ = new mu).mx(b9.dG.data[7].title), aBQ.n5(new na(b9.dG.data[7])), n9.push(aBQ), (aBQ = new mu).mx(b9.dG.data[8].title),
aBQ.n5(new na(b9.dG.data[8])), n9.push(aBQ), (aBQ = new mu).mx(b9.dG.data[5].title), aC7 = new nk(b9.dG.data[5]), aBQ.n5(aC7), n9.push(aBQ), aBO = new n7(aBN.nz, n9)
}
function aBH() {
var aBN, aC8, aCA, nv, aC9 = !1;
this.show = function() {
aBN.show(), this.resize(), this.i6()
}, this.o3 = function() {
aBN.o3()
}, this.resize = function() {
aBN.resize(), aC8.resize()
}, this.tL = function(iL) {
2 === iL && ar.ok(0)
}, this.i6 = function() {
!aC9 || j.vk(eU) || (ar.ok(0), ar.ok(1))
}, aCA = [new nN("👤 " + aV.nc[125], function() {
ar.ok(8, 1, new aBZ("⏳ Connecting...", 16))
}), new nN("⚙️ " + aV.nc[81], function() {
ar.ok(2)
}), new nN("▶️ " + aV.nc[82], function() {
ar.ok(3, 1, "")
}), new nN("🔗 " + aV.nc[83], function() {
ar.ok(4, 1, new sE("🔗 " + aV.nc[83], aY.g0.tr(["Android App", "iOS App", "Discord", "Changelog", "Clans", "Clan Results", "Players", "Tutorial", "Terms", "Privacy"], [ah.a2U, ah.sF, ah.a2W, ah.aCG, ah.aCH, ah.aCI, ah.aCJ, ah.aCK,
ah.aCL, ah.aCM
]), !1, [new nN("❌ " + aV.nc[92], function() {
ar.ok(1)
}, aZ.l9)]))
}), new nN(" " + aV.nc[84], function() {
ar.ok(4, 1, new sE(" " + aV.nc[84], d7 + "<br><a href='" + ah.aCG + "' target='_blank'>" + ah.aCG + "</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 nN("❌ " + aV.nc[92], function() {
ar.ok(1)
}, aZ.l9)]))
}), new nN("🗑️ " + aV.nc[85], function() {
ar.ok(4, 1, new sE("🗑️ " + aV.nc[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 nN("❌ " + aV.nc[92], function() {
ar.ok(1)
}), new nN("🗑️ Delete", function() {
b7.cv.s0(), ar.ok(1)
})]))
}), new nN(aV.nc[86], function() {
b7.cv.s2(), ar.ok(4, 1, new sE("User Privacy", "If the privacy window doesn't open, please deactivate all your adblockers.<br>Additionally, check out our Privacy Policy: <a href='" + ah.aCM + "' target='_blank'>" + ah.aCM +
"</a>", !1, [new nN("❌ " + aV.nc[92], function() {
ar.ok(1)
}, aZ.l9)]))
})], nv = [new nN("❌ " + aV.nc[87], function() {
ar.ok(0)
}, aZ.l9)], 8 === x.s1() && aCA.unshift(new nN("📈 " + aV.nc[88], function() {
ar.ok(0), 2 <= b1.aCF && (b2.tO(), b3.d1 = !0)
})), 8 === x.s1() && !fL && j.vk(eU) && (aC9 = !0, aCA.unshift(new nN("🏳️ " + aV.nc[89], function() {
aW.fd.lv(), ar.ok(0), j.fM && j.tO()
}))), 1 === b7.id && 5 <= b7.dc && aCA.push(new nN(aV.nc[90], function() {
b7.cv.s3()
})), aBN = new nu("📙 " + aV.nc[91], nv), aC8 = new nT(aCA, aBN.nz)
}
function bG() {
"function" != typeof Math.log2 && (Math.log2 = function(fI) {
return Math.log(fI) / Math.log(2)
}), "function" != typeof Math.log10 && (Math.log10 = function(fI) {
return Math.log(fI) / Math.log(10)
}), "function" != typeof Math.sign && (Math.sign = function(fI) {
return 0 < fI ? 1 : fI < 0 ? -1 : 0
})
}
function bx() {
var zT, aCO, aCP, aCQ, aCN = !1;
function aCR() {
aCN = !0, zT = -1, aCO = new Array(4);
for (var eD = 3; 0 <= eD; eD--) aCO[eD] = !1;
var aCS = Math.floor(1 + .02 * aK.min);
aCP = new Array(4), (aCQ = new Array(4))[1] = aCQ[3] = aCP[0] = aCP[2] = 0, aCQ[0] = aCP[3] = -aCS, aCP[1] = aCQ[2] = aCS
}
function aCT() {
if (-1 !== zT)
if (0 !== rS && f.kM()) {
for (var aCU = !1, eD = 3; 0 <= eD; eD--) aCO[eD] && (aCU = !0, h6 += aCP[eD], h8 += aCQ[eD], a6.sk(aCP[eD], aCQ[eD]), p.zC());
aCU ? b3.d1 = !0 : aB.kD()
} else aB.kD()
}
this.tI = function(fz) {
0 !== rS && f.kM() && (aCN || aCR(), aCO[fz] = !0, -1 === zT) && (zT = setInterval(aCT, 20), aCT())
}, this.tM = function(fz) {
if (0 !== rS && (aCN || aCR(), aCO[fz] = !1, -1 !== zT)) {
for (var aCU = !1, eD = 3; 0 <= eD; eD--) aCU = aCU || aCO[eD];
aCU || this.kD()
}
}, this.kD = function() {
if (aCN && -1 !== zT) {
for (var eD = 3; 0 <= eD; eD--) aCO[eD] = !1;
clearInterval(zT), zT = -1
}
}
}
function by() {
this.iw = new aCV, this.j2 = new aCW, this.la = new aCX, this.a3B = new aCY, this.aBd = new aCZ, this.aBk = new aCa, this.aCb = new aCc, this.wS = new aCd, this.aCe = new aCf, this.aCg = new aCh, this.aCi = new aCj, this.cq = function() {
this.iw.cq()
}
}
function aCV() {
var aCk, aCm;
this.a3n = 5, this.a3o = this.a3n - 1, this.a39 = this.a3n + this.a3o, this.a38 = [0, 1, 5, 2, 6, 3, 7, 4, 8], this.aCl = null;
function dP(eD) {
return aCm[eD].aCN && aCk[eD].dP()
}
function aCt(sH) {
aCm[sH].dY = b3.dY, aCm[sH].aCo = !1
}
this.sQ = 0, this.sP = 0, this.cq = function() {
this.aCl = new Array(this.a3n);
this.aCl[0] = "territorial.io";
var eD, a9S = aL.a9m(0);
for (aL.uf(0), eD = 1; eD < this.a3n; eD++) this.aCl[eD] = h.rB() + ".territorial.io";
for (aL.uf(a9S), aCk = new Array(this.a39), aCm = new Array(this.a39), eD = this.a39 - 1; 0 <= eD; eD--) aCm[eD] = {
aCN: !1,
dY: 0,
aCo: !1
};
this.a3A(0, 0)
}, this.aCp = function(eD) {
return aCk[eD]
}, this.wY = function() {
return this.sP < this.a3n ? this.sP : this.sP - this.a3o
}, this.i6 = function() {
for (let eD = this.a39 - 1; 0 <= eD; eD--) this.a34(eD) && b3.dY > aCm[eD].dY + 15e3 && aN.la.aCq(eD, aCm[eD].aCo);
!this.a34(0) && b3.dY > aCm[0].dY + 8e3 && (aCm[0].dY = b3.dY, this.a3A(0, 0))
}, this.a3A = function(sH, aBG) {
if (aCm[sH].aCN) {
if (aCk[sH].dP()) return aCk[sH].aCs(aBG), aCk[sH].a34();
aCk[sH].o3()
}
return this.aCr(sH, aBG), !1
}, this.aCr = function(sH, aBG) {
aCm[sH].aCN = !0, aCt(sH), aCk[sH] = new aCu, aCk[sH].cq(sH, aBG)
}, this.aCs = function(sH, aBG) {
dP(sH) && aCk[sH].aCs(aBG)
}, this.aCv = function(sH, aBG) {
aN.aBd.aCw(sH)
}, this.a34 = function(eD) {
return aCm[eD].aCN && aCk[eD].a34()
}, this.send = function(sH, mK) {
aCt(sH), aCk[sH].send(mK)
}, this.t1 = function(sH) {
8 === x.s1() && (aCm[sH].aCo = !0, aN.j2.ih = !0)
}, this.close = function(sH, aCx) {
dP(sH) && aCk[sH].close(aCx)
}, this.aCy = function(sH, aCx) {
bB.sT(aCx), dP(sH) && aCk[sH].close(aCx)
}, this.sX = function(aCx) {
for (let eD = this.a39 - 1; 0 <= eD; eD--) this.close(eD, aCx)
}, this.aCz = function(sH, aCx) {
for (var eD = this.a39 - 1; 0 <= eD; eD--) eD !== sH && this.close(eD, aCx)
}, this.up = function() {
this.close(this.sQ, 3246)
}, this.aD0 = function(sH, dE) {
aCk[sH].o3(), bB.sG(sH, dE.code)
}
}
function aCW() {
this.ih = !1, this.i6 = function() {
b3.iK() % 250 != 249 || fL || (aN.aBd.aD1(+(this.ih && 0 < h2[eU]), iN + ak.iw.mX), this.ih = !1)
}
}
function aCd() {
this.aD3 = function(sH, mK) {
ae.cq(mK), 0 === ae.size ? aN.iw.aCy(sH, 3205) : ((0 === ae.mL(1) ? function(sH) {
var aD7 = ae.mL(6);
0 === aD7 ? function(sH) {
if (0 === sH && 8 !== x.s1()) {
aw.fx(0, ad.or.ot(ae.mL(5))), aw.fx(1, "[" + ad.or.ot(ae.mL(3)) + "]");
var aDG = ae.mL(12),
aDH = ae.mL(6),
dl = new Array(aDG);
for (let eD = 0; eD < aDG; eD++) dl[eD] = ae.mL(aDH);
q.za(dl)
}
}(sH) : 1 === aD7 ? function() {
var eD;
if (8 !== x.s1()) {
var qj, id = ae.mL(1),
position = ae.mL(16),
wv = ae.mL(4),
dl = [];
for (eD = 0; eD < wv; eD++) qj = ae.mL(14), dl.push({
name: ad.or.ot(ae.mL(5)),
qj: qj
});
0 === id ? b6.a24(0, dl, 10, 1, .36, .55, position) : b6.a24(1, dl, 100, 2, .47, .5, position)
}
}() : 2 === aD7 ? aN.aCe.aDA(sH) : 3 === aD7 || 4 === aD7 ? aJ.cq() : 5 === aD7 ? aN.aCg.aDB() : 6 !== aD7 && 7 !== aD7 && 8 !== aD7 && (9 === aD7 ? aN.aCg.aDC(sH) : 10 === aD7 ? aN.aCi.aDD() : 11 === aD7 ? aN.aCg
.aDE() : 12 === aD7 && aN.aCi.aDF())
} : function(sH) {
if (8 !== x.s1() && !aJ.a3p()) return;
if (sH !== aN.iw.sQ) aN.iw.aCy(sH, 3244);
else if (0 === ae.mL(1)) b3.rY.aDN(ae.mK);
else {
var eD, sH = ae.mL(2);
if (0 === sH) {
var la = ae.mL(9),
lp = ae.mL(7);
0 !== h2[la] && 0 !== h2[eU] && (lp %= az.mr, k.lo(la, eU, lp), a6.ms(la, 1, lp))
} else if (1 === sH) ! function() {
var la = ae.mL(9);
0 !== h2[la] && 0 !== h2[eU] && aS.a9C(0, [la], !0) && k.m6(la, 1)
}();
else if (2 === sH) ! function() {
var la = ae.mL(9),
target = ae.mL(9);
0 !== h2[la] && 0 !== h2[target] && 0 !== h2[eU] && aS.a9C(1, [la], !0) && (a6.ms(la, 3, 96), a6.ms(target, 4, 96), k.wZ(la, target))
}();
else if (d9 && !dB) {
var eZ = 720;
for (ab.d2(14407), ab.p4(1, 0), ab.p4(6, 10), eZ = Math.min(aW.lX.mN.length, 720), eD = 0; eD < eZ; eD++) ab.p4(20, aW.lX.mN[eD]);
aN.iw.send(aN.iw.sQ, ab.mK)
}
}
})(sH), b3.aD6())
}, this.a3q = function(mK) {
if (ae.cq(mK), ae.fz = 1, 3 === ae.mL(6)) {
ae.fz += 20;
for (var a53, a52, name, mK = ae.mL(9), uY = ae.mL(14), ua = ae.mL(4), a4V = 1 === ae.mL(1), a4W = ae.mL(6), a4X = ae.mL(14), aDM = ae.mL(9) + 1, qf = [], eD = 0; eD < aDM; eD++) a53 = ae.mL(1), a52 = [ae.mL(6), ae.mL(6), ae.mL(6)],
name = ad.or.ot(ae.mL(5)), qf.push({
name: name,
a52: a52,
a53: a53
});
x.a3P(), ap.d2(a4W, a4X), 1 === qf.length && z.a4t(ua), uX(uY, mK, qf, ua, a4V, !1)
} else ! function() {
ae.fz += 20;
for (var a53, a52, qj, name, a3h = ae.mL(1), uY = ae.mL(14), ua = ae.mL(4), a4V = 1 === ae.mL(1), a4W = ae.mL(6), a4X = ae.mL(14), qf = [], eD = 0; eD < 2; eD++) a53 = ae.mL(1), a52 = [ae.mL(6), ae.mL(6), ae.mL(6)], qj = ae.mL(
14), name = ad.or.ot(ae.mL(5)), qf.push({
name: name,
a52: a52,
qj: qj,
a53: a53
});
x.a3P(), ap.d2(a4W, a4X), uX(uY, a3h, qf, ua, a4V, !1)
}()
}, this.a3l = function() {
ae.fz = 1;
var aD7 = ae.mL(6),
aDK = ae.mL(10);
return aN.iw.sP > aN.iw.a3o && (aDK += aN.iw.a3o), aN.iw.sP === aDK ? (aN.iw.sQ = aDK, !1) : (aN.iw.close(aN.iw.sP, 3247), aN.iw.sQ = aDK, aJ.a3g = ae.mL(10), aJ.a3h = ae.mL(3 === aD7 ? 9 : 1), aN.iw.a3A(aDK, 5) && aN.la.aDL(), !0)
}
}
function aCj() {
this.aDD = function() {
b9.nd.ne(105, ac.op.qu(ac.op.qs(5))), b9.nd.ne(106, ac.op.qu(ac.op.qs(8))), b9.nd.ne(109, ae.mL(30)), b9.nd.ne(108, b9.dG.data[109].value), b9.nd.ne(111, b9.dG.data[109].value + 1), b9.nd.ne(107, 0), b9.nd.ne(110, "")
}, this.aDF = function() {
ae.aDT(175) ? (b9.nd.ne(109, ae.mL(30)), b9.nd.ne(107, ae.mL(16)), b9.nd.ne(108, ae.mL(30)), b9.nd.ne(112, ae.mL(30)), b9.nd.ne(111, ae.mL(30)), b9.nd.ne(113, ae.aDU(32)), 8 === ar.sI && ar.sJ().aBj(16)) : aN.iw.aCy(0, 3254)
}
}
function aCf() {
this.aDA = function(sH) {
var eD, a47, aDW, aDX, aDY;
if (sH !== aN.iw.sP) aN.iw.close(sH, 3239);
else if (6 === x.s1() && aG.cq(), 7 !== x.s1()) aN.iw.close(sH, 3251);
else {
for (a47 = [0, 0, 0, 0], aDW = ae.mL(6), eD = 0; eD < 4; eD++) a47[eD] = ae.mL(aDW);
for (aDX = ae.mL(4), aDY = [], eD = 0; eD < aDX; eD++) {
aDY.push({
id: ae.mL(5),
ua: ae.mL(4),
a4V: 1 === ae.mL(1),
pl: ae.mL(6),
a4T: ae.mL(14),
a4Y: ae.mL(aDW),
a4Z: ae.mL(9) + 1,
a3K: ae.mL(10)
});
for (var a4a = ae.mL(3), a4b = new Array(a4a), a4c = new Array(a4a), hZ = 0; hZ < a4a; hZ++) a4c[hZ] = ae.mL(9) + 1, a4b[hZ] = ad.or.ot(ae.mL(3));
aDY[eD].a4a = a4a, aDY[eD].a4b = a4b, aDY[eD].a4c = a4c
}
aG.ne(a47, aDY)
}
}
}
function aCh() {
this.aDC = function(sH) {
var aDP = ae.mL(3),
aDZ = b8.aDa.i6(ae.mL(16), ae.mL(20));
aN.aBd.aDb(sH, aDZ, aDP), 0 < aDP || (0 === sH && 0 === b9.dG.data[105].value.length ? aN.aBd.aBh(0) : aN.aBk.aDc(sH), 4 === aN.iw.aCp(sH).aDd() ? 6 === x.s1() && aN.a3B.a3C(sH) : 5 !== aN.iw.aCp(sH).aDd() || 8 !== x.s1() && 10 !== x
.s1() || aN.la.aDL())
}, this.aDE = function() {
var id = ae.mL(6);
0 === id ? (q.zW || aN.aBd.aBh(1), 8 === ar.sI && ar.sJ().aBi()) : 20 === id ? 8 === ar.sI && ar.sJ().aBj(15) : 21 === id && 8 === ar.sI && ar.sJ().aBj(17)
}, this.aDB = function() {
if (ar.t8() && ar.sJ().aBm) {
var size = ae.mL(6),
aDe = [];
for (let eD = 0; eD < size; eD++) aDe.push([ae.mL(16), ae.mL(20), ae.mL(12)]);
ar.sJ().aBm(aDe)
}
}
}
function aCX() {
this.a22 = function(sH, id) {
ab.d2(24), ab.p4(1, 0), ab.p4(6, 6), ab.p4(1, id), ab.p4(16, Math.abs(4096 + b6.position[id] + b6.a21[id]) % 65536), aN.iw.send(sH, ab.mK)
}, this.aCq = function(sH, aCo) {
ab.d2(8), ab.p4(1, 0), ab.p4(6, 4), ab.p4(1, aCo ? 1 : 0), aN.iw.send(sH, ab.mK)
}, this.aDL = function() {
ab.d2(58), ab.p4(1, 0), ab.p4(6, 5), ab.p4(8, aN.iw.wY()), ab.p4(10, aJ.a3g), ab.p4(9, aJ.a3h), ab.p4(10, dA), ab.p4(14, a.dC), aN.iw.send(aN.iw.sQ, ab.mK)
}, this.lb = function(fX) {
ab.d2(27), ab.p4(1, 1), ab.p4(4, 0), ab.p4(22, fX), aN.iw.send(aN.iw.sQ, ab.mK)
}, this.ld = function(h5, hS) {
ab.d2(25), ab.p4(1, 1), ab.p4(4, 1), ab.p4(10, h5), ab.p4(10, hS), aN.iw.send(aN.iw.sQ, ab.mK)
}, this.lh = function(h5, lf) {
ab.d2(24), ab.p4(1, 1), ab.p4(4, 2), ab.p4(10, h5), ab.p4(9, lf), aN.iw.send(aN.iw.sQ, ab.mK)
}, this.li = function(h5, fX) {
ab.d2(37), ab.p4(1, 1), ab.p4(4, 3), ab.p4(10, h5), ab.p4(22, fX), aN.iw.send(aN.iw.sQ, ab.mK)
}, this.ll = function(lj, fX) {
ab.d2(37), ab.p4(1, 1), ab.p4(4, 4), ab.p4(10, lj), ab.p4(22, fX), aN.iw.send(aN.iw.sQ, ab.mK)
}, this.ln = function(hS) {
ab.d2(15), ab.p4(1, 1), ab.p4(4, 5), ab.p4(10, hS), aN.iw.send(aN.iw.sQ, ab.mK)
}, this.lr = function(fz) {
ab.d2(12), ab.p4(1, 1), ab.p4(4, 6), ab.p4(7, fz), aN.iw.send(aN.iw.sQ, ab.mK)
}, this.lu = function(lt) {
ab.d2(6), ab.p4(1, 1), ab.p4(4, 7), ab.p4(1, lt), aN.iw.send(aN.iw.sQ, ab.mK)
}, this.lw = function() {
ab.d2(5), ab.p4(1, 1), ab.p4(4, 8), aN.iw.send(aN.iw.sQ, ab.mK)
}, this.mE = function(a6T, mD) {
ab.d2(29), ab.p4(1, 1), ab.p4(4, 10), ab.p4(12, a6T), ab.p4(2, 0), ab.p4(10, mD), aN.iw.send(aN.iw.sQ, ab.mK)
}, this.mH = function(a6T, pZ, pa, aDf) {
ab.d2(46), ab.p4(1, 1), ab.p4(4, 10), ab.p4(12, a6T), ab.p4(2, 1), ab.p4(9, pZ), ab.p4(9, pa), ab.p4(9, aDf), aN.iw.send(aN.iw.sQ, ab.mK)
}, this.mJ = function(a6T) {
var eD, rd = ao.ix.rd;
for (ab.d2(47 + 33 * rd.length), ab.p4(1, 1), ab.p4(4, 10), ab.p4(12, a6T), ab.p4(2, 2), ab.p4(24, ao.ix.rc), ab.p4(4, rd.length), eD = 0; eD < rd.length; eD++) ab.p4(9, rd[eD].player), ab.p4(24, rd[eD].rp);
aN.iw.send(aN.iw.sQ, ab.mK)
}, this.m4 = function(aDg, aDh) {
ab.d2(21), ab.p4(1, 1), ab.p4(4, 15), ab.p4(9, aDh), ab.p4(7, aDg), aN.iw.send(aN.iw.sQ, ab.mK)
}, this.m7 = function(wS) {
ab.d2(14), ab.p4(1, 1), ab.p4(4, 14), ab.p4(9, wS), aN.iw.send(aN.iw.sQ, ab.mK)
}, this.mB = function(aDi, target) {
var eD, eZ = aDi.length;
for (ab.d2(14 + 9 * eZ), ab.p4(1, 1), ab.p4(4, 13), ab.p4(9, target), eD = 0; eD < eZ; eD++) ab.p4(9, aDi[eD]);
aN.iw.send(aN.iw.sQ, ab.mK)
}
}
function aCa() {
function aDl() {
ad.op.p6(b9.dG.data[105].value, 5), ad.op.p6(b9.dG.data[106].value, 8), ab.p4(30, b9.dG.data[109].value)
}
this.aDk = function() {
ab.d2(39), ab.p4(1, 0), ab.p4(6, 16), aN.aBd.aDj(), aN.iw.send(0, ab.mK)
}, this.aDc = function(sH) {
ab.d2(115), ab.p4(1, 0), ab.p4(6, 17), aDl(), aN.iw.send(sH, ab.mK)
}, this.aBl = function() {
ab.d2(55), ab.p4(1, 0), ab.p4(6, 18), ad.op.p5(b9.dG.data[110].value), aN.iw.send(0, ab.mK)
}, this.aDm = function() {
ab.d2(115), ab.p4(1, 0), ab.p4(6, 13), aDl(), aN.iw.send(0, ab.mK)
}
}
function aCc() {}
function aCY() {
this.a3C = function(sH) {
ab.d2(40 + 16 * b9.dG.data[100].value.length), ab.p4(1, 0), ab.p4(6, 1), ab.p4(10, dA);
var a52 = a8.vn[2].rN.a2r();
ab.p4(6, a52[0]), ab.p4(6, a52[1]), ab.p4(6, a52[2]), ab.p4(5, b9.dG.data[100].value.length), ac.or.p5(b9.dG.data[100].value), aN.iw.sP = sH, aN.iw.send(sH, ab.mK)
}, this.a4h = function(a4U) {
return ab.d2(11), ab.p4(1, 0), ab.p4(6, 2), ab.p4(4, a4U), aN.iw.send(aN.iw.sP, ab.mK), !0
}
}
function aCZ() {
this.aCw = function(sH) {
ab.d2(39), ab.p4(1, 0), ab.p4(6, 13), ab.p4(14, a.dC), ab.p4(4, b7.id), ab.p4(7, b7.dc), ab.p4(1, +d9), ab.p4(1, +dB), ab.p4(5, (new Date).getHours() % 24), aN.iw.send(sH, ab.mK)
}, this.aDb = function(sH, aDZ, aDP) {
ab.d2(26), ab.p4(1, 0), ab.p4(6, 14), ab.p4(3, aDP), ab.p4(16, aDZ), aN.iw.send(sH, ab.mK)
}, this.aBh = function(id) {
ab.d2(13), ab.p4(1, 0), ab.p4(6, 15), ab.p4(6, id), aN.iw.send(0, ab.mK)
}, this.aBe = function(id) {
ab.d2(21), ab.p4(1, 0), ab.p4(6, id), ab.p4(14, a.dC), aN.iw.send(0, ab.mK)
}, this.aBs = function(aDK, n6) {
ab.d2(7 + 26 * n6.length), ab.p4(1, 0), ab.p4(6, 9);
for (let eD = 0; eD < n6.length; eD++) ab.p4(16, n6[eD][0]), ab.p4(10, n6[eD][1]);
aN.iw.send(aDK, ab.mK)
}, this.aD1 = function(aDn, a6T) {
ab.d2(20), ab.p4(1, 0), ab.p4(6, 19), ab.p4(1, aDn), ab.p4(12, a6T), aN.iw.send(aN.iw.sQ, ab.mK)
}
}
function aCu() {
var sH, aBG, sZ, aDo = ["wss://", "/s50/", "/s51/", "/s52/"];
function aCv() {
aN.iw.aCv(sH, aBG)
}
function aDt(dE) {
aN.wS.aD3(sH, new Uint8Array(dE.data))
}
function aDu() {}
function aD0(dE) {
aN.iw.aD0(sH, dE)
}
this.cq = function(fz, aDp) {
sH = fz, aBG = aDp;
fz = aDo[0];
sH < aN.iw.a3n ? fz += aN.iw.aCl[sH] + aDo[1 + d6] : fz += aN.iw.aCl[0] + "/i" + (1 + d6) + (sH - aN.iw.a3o) + "/", (sZ = new WebSocket(fz)).binaryType = "arraybuffer", sZ.onopen = aCv, sZ.onmessage = aDt, sZ.onclose = aD0, sZ.onerror =
aDu
}, this.aDr = function() {
return sZ.readyState === sZ.CONNECTING
}, this.a34 = function() {
return sZ.readyState === sZ.OPEN
}, this.dP = function() {
return this.aDr() || this.a34()
}, this.aCs = function(aDp) {
aBG = aDp
}, this.aDd = function() {
return aBG
}, this.send = function(mK) {
this.a34() && sZ.send(mK)
}, this.close = function(aCx) {
this.dP() && (sZ.close(aCx), this.o3())
}, this.o3 = function() {
sZ.onopen = null, sZ.onmessage = null, sZ.onclose = null, sZ.onerror = null
}
}
function cd() {
var aDv = !1,
wp = 0,
g5 = 0,
qb = 0,
gap = 0,
gN = null,
qW = null,
th = null;
function aDx() {
for (var a4J, aE0 = 0, eZ = 0, iL = Math.floor(g5 / 2), gQ = Math.floor(qb / 2), a4I = 1.5 * Math.PI, eD = uV; 0 <= eD; eD--) eZ += th[eD], 0 === th[eD] && aE0++;
if (aDv = !1, qW.clearRect(0, 0, g5, g5), qW.fillStyle = aZ.ka, qW.fillRect(0, 0, g5, g5), qW.fillStyle = aZ.gF, qW.fillRect(0, 0, g5, gap), qW.fillRect(0, 0, gap, g5), qW.fillRect(g5 - gap, 0, gap, g5), qW.fillRect(0, g5 - gap, g5, gap), 0 <
eZ)
if (aE0 === uV) {
for (eD = uV; 0 <= eD; eD--)
if (0 < th[eD]) {
! function(eD, iL, gQ) {
qW.fillStyle = b4.a4N[b4.rf[eD]], qW.beginPath(), qW.arc(iL, iL, gQ, 0, 2 * Math.PI), qW.fill()
}(eD, iL, gQ);
break
}!
function(iL) {
var fontSize = iL / 3;
qW.font = aY.g0.g1(1, fontSize), qW.fillStyle = aZ.gF, qW.fillText("100%", iL, iL + .1 * fontSize)
}(iL)
} else {
for (eD = 0; eD <= uV; eD++) 0 < th[eD] && (! function(eD, iL, gQ, a4I, a4J) {
qW.fillStyle = b4.a4N[b4.rf[eD]], qW.beginPath(), qW.arc(iL, iL, gQ, a4I, a4J), qW.lineTo(iL, iL), qW.fill()
}(eD, iL, gQ, a4I, a4J = a4I + 2 * Math.PI * th[eD] / eZ), function(iL, gQ, a4I, a4J) {
var db = (a4J - a4I) / (2 * Math.PI),
fontSize = +gQ * Math.min(db, .37);
fontSize < 8 || (a4I = (a4I + a4J) / 2, a4J = Math.floor(100 * db + .5) + "%", gQ *= .525 - Math.max(.6 * (db - .7), 0), qW.font = aY.g0.g1(1, fontSize), qW.fillStyle = aZ.gF, qW.fillText(a4J, iL + Math.cos(a4I) * gQ, iL +
Math.cos(a4I + 1.5 * Math.PI) * gQ))
}(iL, gQ, a4I, a4J), 0 !== eD && a4L(iL, gQ, a4I), a4I = a4J);
a4L(iL, gQ, 1.5 * Math.PI)
}!
function(iL, gQ) {
qW.beginPath(), qW.arc(iL, iL, gQ, 0, 2 * Math.PI), qW.stroke()
}(iL, gQ)
}
function a4L(iL, gQ, a4O) {
qW.beginPath(), qW.moveTo(iL, iL), qW.lineTo(iL + Math.cos(a4O) * gQ, iL + Math.cos(a4O + 1.5 * Math.PI) * gQ), qW.stroke()
}
this.cq = function() {
if (hM) {
var eD;
for (wp = 0, th = new Uint32Array(uV + 1), eD = uV; 0 <= eD; eD--) th[eD] = 0;
for (eD = iN - 1; 0 <= eD; eD--) th[b4.iM[iO[eD]]] += 1;
this.resize()
} else th = qW = gN = null
}, this.y8 = function() {
return g5
}, this.resize = function() {
hM && (g5 = Math.floor(b7.cv.fv() && !k9 ? .18 * aK.min : .13 * aK.fw), g5 = (g5 *= 1 + (.5 + .2 * b7.cv.fv()) * k9) + g5 % 2, qb = Math.floor(7 * g5 / 8), (gN = gN || document.createElement("canvas")).width = g5, gN.height = g5, qW = gN
.getContext("2d", {
alpha: !0
}), gap = Math.max(1, .015 * g5), qW.lineWidth = gap, qW.strokeStyle = aZ.gF, aY.g0.textAlign(qW, 1), aY.g0.textBaseline(qW, 1), aDx())
}, this.rh = function() {
return th[this.rg()]
}, this.rP = function() {
return wp = 31, this.i6(), this.rg()
}, this.rg = function() {
for (var aDy = 0, eD = uV; 0 < eD; eD--) th[eD] > th[aDy] && (aDy = eD);
return aDy
}, this.i6 = function() {
if (hM && 32 <= ++wp) {
var eD;
for (wp = 0, eD = uV; 0 <= eD; eD--) th[eD] = 0;
for (eD = iN - 1; 0 <= eD; eD--) th[b4.iM[iO[eD]]] += ez[iO[eD]];
aDv = !0
}
}, this.g2 = function() {
hM && aDv && aDx()
}, this.gD = function() {
hM && (k9 ? gE.drawImage(gN, b0.gap, b0.gap) : gE.drawImage(gN, b0.gap, y9 + 2 * b0.gap))
}
}
function cL() {
this.d3 = function() {
var value, sD;
0 === b7.id && (value = function(key) {
if ("undefined" == typeof URLSearchParams) return null;
var aBz = window.location.search,
aBz = new URLSearchParams(aBz).get(key);
if ("string" != typeof aBz || aBz.length < 1) return null;
return aBz
}("replay"), (sD = new URL(window.location.href)).search = "", history.replaceState(null, "", sD.toString()), value) && ar.ok(3, 0, value)
}
}
function bz() {
var aE5, dl;
this.cq = function() {
for (var eD = (dl = new Uint16Array(101)).length - 1; 0 <= eD; eD--) dl[eD] = eR(32768 * eD, 100);
this.uf(0)
}, this.value = function(eg) {
return dl[eg]
}, this.a9m = function() {
return eR(aE5 - 1, 2)
}, this.uf = function(a9S) {
aE5 = 2 * a9S % 32768 + 1
}, this.random = function() {
return aE5 = 167 * aE5 % 32768
}, this.hc = function(jJ) {
return eR(jJ * this.random(), 32768)
}, this.iF = function(eg) {
return 0 !== eg && this.random() < this.value(eg)
}
}
function cH() {
this.mZ = new aE6, this.aC2 = new aE7, this.aC6 = new aE8, this.cq = function(uY, qf, ua, ub) {
var aE9;
fL || ((aE9 = {}).uZ = eU, aE9.uY = uY, aE9.qf = qf, aE9.ua = ua, aE9.ub = ub, aE9.a4W = ap.pl, aE9.a4X = ap.a4T, z.a4y(aE9), this.mZ.cq(aE9))
}, this.i6 = function() {
fL || this.mZ.i6()
}, this.aC5 = function() {
var tp = this.mZ.aE9;
0 === rS && x.a3P(), ap.d2(tp.a4W, tp.a4X), 1 === tp.qf.length && (z.a4t(tp.ua), z.a4v(tp.a4w, tp.a4x)), aN.iw.close(aN.iw.sQ, 3246), aN.iw.sQ = 0, uX(tp.uY, tp.uZ, tp.qf, tp.ua, tp.ub, !0)
}, this.aC4 = function(fy) {
var eD = fy.indexOf("=");
return 0 <= eD ? fy.substring(eD + 1) : fy
}, this.aC3 = function(fy) {
return "https://territorial.io/?replay=" + fy
}
}
function aE6() {
this.aEA = null, this.aEB = null, this.aEC = null, this.aED = null, this.aEE = null, this.aEF = null;
var aEG = 0;
this.aE9 = null, this.aC1 = "", this.cq = function(aE9) {
this.aEA = [], this.aEB = [], this.aEC = [], this.aED = [], this.aEE = [0], this.aEF = [0], aEG = 0, this.aE9 = aE9, this.aC1 = ""
}, this.ma = function(id, dm, dp, dr) {
fL || 2 === rS || (0 === this.aEE[aEG] && (this.aEF[aEG] ? (this.aEE.push(1), this.aEF.push(0), aEG++) : this.aEE[aEG] = 1), this.aEA.push(id), this.aEB.push(dm), this.aEC.push(void 0 === dp ? 0 : dp), this.aED.push(void 0 === dr ? 0 :
dr), this.aEF[aEG]++)
}, this.i6 = function() {
0 === this.aEE[aEG] ? this.aEF[aEG]++ : (this.aEE.push(0), this.aEF.push(0), aEG++)
}
}
function aE8() {
function aEM(fy, aEO = !1) {
aEO ? k.vv = "Replay Error: " + fy : ar.ok(4, 3, new sE("⚠️ Replay Error", fy, !0))
}
this.p9 = function(fy) {
if (ad.op.p1(ad.op.oz(ad.op.ox(fy))), k.vv = "", ! function() {
if (ae.size < 10) aEM("File Too Small");
else if (ae.mL(9) !== d8 && aEM("Incompatible Version Error", !0), ae.mL(31) !== ae.size) aEM("Size Error");
else {
if (function(gA) {
var eD, eg = ae.mK,
eZ = ae.size,
a6T = 0;
for (eD = 7; eD < eZ; eD++) a6T = a6T + eg[eD] & 65535;
return a6T === gA
}(ae.mL(16))) return 1;
aEM("Hash Error")
}
return
}()) return !1;
var aE9;
(aE9 = {}).uZ = ae.mL(9), aE9.uY = ae.mL(14), aE9.ua = ae.mL(4), aE9.ub = 1 === ae.mL(1), aE9.a4W = ae.mL(6), aE9.a4X = ae.mL(14), aE9.aEP = ae.mL(10), aX.mZ.aE9 = aE9,
function() {
var eD, a53, a52, name, eZ = aX.mZ.aE9.aEP,
qf = [];
for (eD = 0; eD < eZ; eD++) a53 = ae.mL(1), a52 = [ae.mL(6), ae.mL(6), ae.mL(6)], name = ad.or.ot(ae.mL(5)), qf.push({
name: name,
a52: a52,
a53: a53
});
if (aX.mZ.aE9.qf = qf, 8 === aX.mZ.aE9.ua)
for (eD = 0; eD < eZ; eD++) qf[eD].qj = ae.mL(14)
}();
var eD, eZ, aEQ = aX.mZ.aE9;
if (1 === aEQ.qf.length)
for (eZ = 6 < aEQ.ua ? 1 : aEQ.ua + 2, aEQ.a4w = new Array(eZ), aEQ.a4x = new Array(eZ), eD = 0; eD < eZ; eD++) aEQ.a4w[eD] = ae.mL(3), aEQ.a4x[eD] = ae.mL(9) + 1;
return !! function() {
var pA = ae.mL(5),
aER = ae.mL(30),
aES = ae.mL(30);
if (aER + aES > 8 * ae.size) return void aEM("Corrupted File");
return function(eZ) {
var eD, id, aEV = new Uint8Array(eZ),
aEW = new Uint16Array(eZ),
aEX = new Uint32Array(eZ),
aEY = new Uint32Array(eZ);
for (aX.mZ.aEA = aEV, aX.mZ.aEB = aEW, aX.mZ.aEC = aEX, aX.mZ.aED = aEY, eD = 0; eD < eZ; eD++) aEV[eD] = id = ae.mL(4), aEW[eD] = ae.mL(9), 0 === id ? aEX[eD] = ae.mL(22) : 1 === id ? (aEX[eD] = ae.mL(10), aEY[eD] = ae
.mL(10)) : 2 === id ? (aEX[eD] = ae.mL(10), aEY[eD] = ae.mL(9)) : 3 === id || 4 === id ? (aEX[eD] = ae.mL(10), aEY[eD] = ae.mL(22)) : 5 === id ? aEX[eD] = ae.mL(10) : 6 === id ? aEX[eD] = ae.mL(7) : 7 === id && (
aEX[eD] = ae.mL(1))
}(aER),
function(eZ, pA) {
var eD, aEE = new Uint8Array(eZ),
aEF = new Array(eZ);
for (aEF.fill(0), aX.mZ.aEE = aEE, aX.mZ.aEF = aEF, eD = 0; eD < eZ; eD++) aEE[eD] = ae.mL(1), aEF[eD] = ae.mL(pA)
}(aES, pA), 1
}() && (ae.fz < 8 * ae.size - 13 || ae.fz > 8 * ae.size ? (aEM("Out Of Bounds Error: " + ae.fz + " " + 8 * ae.size), !1) : (aX.mZ.aC1 = fy, !0))
}
}
function aE7() {
this.r5 = function() {
var aEQ, pA = function() {
var eD, aEF = aX.mZ.aEF,
eZ = aEF.length,
max = 0;
for (eD = 0; eD < eZ; eD++) max = Math.max(max, aEF[eD]);
return pG(Math.max(max, 1))
}(),
aEa = function(pA) {
return 179 + function() {
var eD, qf = aX.mZ.aE9.qf,
eZ = qf.length,
aEa = 24 * eZ;
for (eD = 0; eD < eZ; eD++) aEa += 16 * qf[eD].name.length;
8 === aX.mZ.aE9.ua && (aEa += 14 * eZ);
return aEa
}() + (1 === aX.mZ.aE9.qf.length ? 12 * aX.mZ.aE9.a4w.length : 0) + function() {
var eD, aEA = aX.mZ.aEA,
eZ = aEA.length,
aEa = 13 * eZ,
aEl = [22, 20, 19, 32, 32, 10, 7, 1, 0, 0];
for (eD = 0; eD < eZ; eD++) aEa += aEl[aEA[eD]];
return aEa
}() + function(pA) {
return aX.mZ.aEF.length * (1 + pA)
}(pA)
}(pA);
ab.d2(aEa + (6 - aEa % 6) % 6), aEQ = aX.mZ.aE9, ab.p4(9, d8), ab.p4(31, ab.size), ab.fz += 16, ab.p4(9, aEQ.uZ), ab.p4(14, aEQ.uY), ab.p4(4, aEQ.ua), ab.p4(1, aEQ.ub), ab.p4(6, aEQ.a4W), ab.p4(14, aEQ.a4X), ab.p4(10, aEQ.qf.length);
var eD, qf = aX.mZ.aE9.qf,
eZ = qf.length;
for (eD = 0; eD < eZ; eD++) ab.p4(1, qf[eD].a53), ab.p4(18, (qf[eD].a52[0] << 12) + (qf[eD].a52[1] << 6) + qf[eD].a52[2]), ab.p4(5, qf[eD].name.length), ac.or.p5(qf[eD].name);
if (8 === aX.mZ.aE9.ua)
for (eD = 0; eD < eZ; eD++) ab.p4(14, qf[eD].qj);
return function() {
var eD, aEQ = aX.mZ.aE9;
if (1 === aEQ.qf.length)
for (eD = 0; eD < aEQ.a4w.length; eD++) ab.p4(3, aEQ.a4w[eD]), ab.p4(9, aEQ.a4x[eD] - 1)
}(),
function(pA) {
var eD, aEA = aX.mZ.aEA,
dm = aX.mZ.aEB,
dp = aX.mZ.aEC,
dr = aX.mZ.aED,
eZ = aEA.length;
for (ab.p4(5, pA), ab.p4(30, eZ), ab.p4(30, aX.mZ.aEF.length), eD = 0; eD < eZ; eD++) ab.p4(4, aEA[eD]), ab.p4(9, dm[eD]), 0 === aEA[eD] ? ab.p4(22, dp[eD]) : 1 === aEA[eD] ? (ab.p4(10, dp[eD]), ab.p4(10, dr[eD])) : 2 === aEA[
eD] ? (ab.p4(10, dp[eD]), ab.p4(9, dr[eD])) : 3 === aEA[eD] || 4 === aEA[eD] ? (ab.p4(10, dp[eD]), ab.p4(22, dr[eD])) : 5 === aEA[eD] ? ab.p4(10, dp[eD]) : 6 === aEA[eD] ? ab.p4(7, dp[eD]) : 7 === aEA[eD] && ab.p4(1, dp[eD])
}(pA),
function(pA) {
var eD, aEE = aX.mZ.aEE,
aEF = aX.mZ.aEF,
eZ = aEE.length;
for (eD = 0; eD < eZ; eD++) ab.p4(1, aEE[eD]), ab.p4(pA, aEF[eD])
}(pA), ab.fz !== aEa && k.sR("Encoder Index Error: " + ab.fz + " " + aEa), ab.fz = 40, ab.p4(16, function() {
var eD, eg = ab.mK,
eZ = ab.size,
a6T = 0;
for (eD = 7; eD < eZ; eD++) a6T = a6T + eg[eD] & 65535;
return a6T
}()), ae.cq(ab.mK), ac.op.qu(ac.op.qs(eR(aEa - 1, 6) + 1))
}
}
function c4() {
var iL, wm = !1,
aEm = !1,
aEn = -1e4;
function resize(gf) {
iL = 0, a1.g3() && (aEp(gf) || wm) && (wm = !1, b0.resize(), aw.cq(), v.cq(), y.resize(), au.cq(), w.resize(), q.resize(), l.resize(), b6.resize(), az.cq(), ar.resize(), 1 <= rS ? (s.resize(!1), r.resize(), t.resize(), p.resize(), o.resize(),
k.resize(), j.resize(), aa.resize(), aI.resize(), m.resize(), n.resize(), i.resize(), b2.resize(), a6.resize(), u.resize(), b5.resize(), p.zC()) : (2 === x.s1() && z.resize(), x.a3S(), x.a3V()), b3.d1 = !0)
}
function aEo(db) {
return db && 128 < db ? Math.floor(db) : 128
}
function aEp(gf) {
var g5, gA, aEr, qb = aEo(document.documentElement.clientWidth),
xM = aEo(window.visualViewport && 2 !== b7.id ? window.visualViewport.height : document.documentElement.clientHeight);
return g5 = qb, gA = xM, aEr = 0 !== b7.id || g5 < gA ? 700 : 1200, aEr = Math.min(aEr / ((g5 + gA) / 2), 1), aEr = 0 === b9.dG.data[1].value ? 2 * aEr / 3 : Math.min(aEr + (b9.dG.data[1].value - 1) * (1 - aEr) / 2, 1), aK.nH = (window
.devicePixelRatio || 1) * aEr, hoveringTooltip.canvasPixelScale = aK.nH, gf && !aEm ? (aEm = !0, document.body.removeChild(sj)) : aEm && (aEm = !1, document.body.appendChild(sj)), g5 = Math.floor(.5 + qb * aK.nH), gA = Math.floor(.5 +
xM * aK.nH), !(g5 === aK.g5 && gA === aK.gA || ag.tR() && y.tG) && (aK.g5 = g5, aK.gA = gA, aK.min = yR(g5, gA), aK.max = wC(g5, gA), aK.fw = eR(g5 + gA, 2), aK.o6 = g5 / gA, sj.width = g5, sj.height = gA, sj.style.width = qb + "px",
sj.style.height = xM + "px", 1)
}
this.g5 = 0, this.gA = 0, this.min = 0, this.max = 0, this.fw = 0, this.o6 = 1, this.nH = 1, this.cr = function() {
this.g5 = aEo(document.documentElement.clientWidth) + 2, this.gA = aEo(document.documentElement.clientHeight) + 2
}, this.cq = function() {
iL = 1, sj = document.getElementById("canvasA"), (gE = sj.getContext("2d", {
alpha: makeMainMenuTransparent
})).imageSmoothingEnabled = !1, aEp(0)
}, this.i6 = function() {
aP.i6(), 50 <= ++iL && resize(0)
}, this.ol = function(gf) {
wm = !0, resize(gf)
}, this.tS = function() {
aEn + 1e3 > b3.dY || (aEn = b3.dY, resize(0))
}
}
function c0() {
var player, hT, pZ, pT, jc, jd, je, jf, fz, aEt, id;
function aEz() {
var hS;
if (a2.el(pZ)) hS = ed;
else {
if ((hS = a2.ek(pZ)) === player) return void aF1(!0);
if (!fr(player, hS)) return function(hS) {
var max = ez[hS] * u0 - eV[hS];
max <= 0 || (hT -= max = max < hT ? max : hT, player === eU && (k.m1(max, 0, hS), b1.eX[16] += max), hS === eU && (k.wf(max, player), b1.eX[10] += max), eV[hS] += max, a6.m2(hS, max))
}(hS), void aF1(!0)
}
player === eU && (b1.eX[13] += hT), e.eT(player, id), a4.eY(player, aEt), ea[player].push(pT), a4.hP(player, hT, hS), c.hQ(player, !0)
}
function aF1(aF4) {
e.eT(player, id), a4.eY(player, aEt), aF4 && (eV[player] += hT)
}
function aEv() {
a2.a69(pZ, player) && a2.a6B(pZ)
}
function aEu(eD, a7b, y4, hb, kM) {
if (fz = eD, id = a7b, player = y4, jc = a2.jg(hb), jd = a2.gC(hb), je = a2.jg(kM), jf = a2.gC(kM), pT = pZ = a2.q4(jc, jd), -1 !== (aEt = a4.jj(player, id))) return hT = a4.eL(player, aEt), 1;
aEv(), e.eT(player, id)
}
this.i6 = function(eD, id, y4, hb, kM) {
aEu(eD, id, y4, hb, kM) && (aEv(), function() {
var aF5 = eR(hT, 128);
hT -= aF5 = aF5 < 1 ? 1 : aF5, player === eU && (b1.eX[15] += aF5);
if (hT <= eS) return player === eU && (b1.eX[15] += hT), void aF1(!1);
return a4.ey(player, aEt, hT), 1
}()) && (eD = a2.q4(jc, jd), pZ = Math.abs(je - jc) >= Math.abs(jf - jd) ? eD + e4[jc < je ? 1 : 3] : eD + e4[jd < jf ? 2 : 0], jc = a2.jg(pZ), jd = a2.gC(pZ), e.jS(fz, pZ), ! function() {
if (a2.eb(pZ)) return;
return 1
}() ? aEz() : a2.fj(pZ) && a2.a6E(pZ, player))
}, this.jV = function(y4, hb) {
player = y4, pZ = a2.q4(a2.jg(hb), a2.gC(hb)), aEv()
}
}
function ca() {
this.a4E = new aF6, this.aDa = new aF7
}
function aF6() {
var yj = 0,
a4Q = 0,
dY = 0,
eX = [1, 0, 0, 1, 0, 0];
function aF8(hi) {
var eD, aF9 = eX[0],
aBo = eX[1],
aBp = eX[2],
hZ = eX[3];
if ((hi = Math.min(hi, eX[4])) < hZ) yj = a4Q = 0;
else {
for (yj = performance.now(), eD = hZ; eD <= hi; eD++) aBo = aFB(aBo, aF9 = function(aF9, aBo, aBp, fZ) {
var eD, eZ = 65536 + (aF9 * fZ & 16383);
for (eD = 0; eD < eZ; eD++) aF9 = 1 + aF9 * aBo % aBp;
return aF9
}(aF9, aBo, aBp, eD), 16384, 65536), aBp = aFB(aBp, aF9, 1 << 18, 1 << 20);
eX[0] = aF9, eX[1] = aBo, eX[2] = aBp, eX[3] = eD, a4Q = performance.now(), eX[5] += a4Q - yj
}
}
function aFB(db, a9S, min, max) {
return min + (db * a9S + 137) % (max - min)
}
this.ih = !1, this.cq = function(aBo, aBp, aBq) {
eX[0] = 1, eX[1] = aBo, eX[2] = aBp, eX[3] = 0, eX[4] = aBq, eX[5] = 0, this.ih = !0
}, this.a4F = function() {
this.ih = !1, eX[3] = eX[4] + 1
}, this.aBr = function() {
return aF8(eX[4]), this.ih = !1, [eX[0] - 1 & 65535, Math.min(Math.floor(Math.sqrt(eX[5])), 1023)]
}, this.i6 = function() {
7 !== x.s1() || eX[4] < eX[3] || b3.dY < dY || (aF8(eX[3] + Math.floor(eX[4] / 20)), dY = a4Q + 250)
}
}
function aF7() {
function aFB(db, a9S, min, max) {
return min + (db * a9S + 137) % (max - min)
}
this.i6 = function(aBo, aBp) {
let aF9 = 1;
for (let eD = 0; eD <= 50; eD++) aF9 = function(aF9, aBo, aBp, fZ) {
var eZ = 65536 + (aF9 * fZ & 16383);
for (let eD = 0; eD < eZ; eD++) aF9 = 1 + aF9 * aBo % aBp;
return aF9
}(aF9, aBo, aBp, eD), aBo = aFB(aBo, aF9, 16384, 65536), aBp = aFB(aBp, aF9, 1 << 18, 1 << 20);
return aF9 - 1 & 65535
}
}
function c1() {
var aFC, aFD, fj, aFE;
this.cq = function() {
var eD, fI, fJ, a52, aFF, g5, gA, qW, gK, pR, db, eg, hy, hZ, aFI;
if (function() {
if (fj = !0, aFE = "rgb(" + ap.pO[0] + "," + ap.pO[1] + "," + ap.pO[2] + ")", ap.a9a(ap.pl)) return 1;
return fj = !1, 0
}()) aFD = null;
else {
for (aFC = eR(96, 4), aFF = 1 === ap.pl ? (a52 = 0, 160) : (a52 = 128, 32), aFE = "rgb(" + a52 + "," + a52 + "," + a52 + ")", aFD = new Array(4), eD = 3; 0 <= eD; eD--) {
if (aFD[eD] = document.createElement("canvas"), g5 = eD % 2 == 0 ? ap.e8 : aFC, gA = eD % 2 == 0 ? aFC : ap.e9 + 2 * aFC, aFD[eD].width = g5, aFD[eD].height = gA, pR = (gK = (qW = aFD[eD].getContext("2d", {
alpha: !1
})).getImageData(0, 0, g5, gA)).data, eD % 2 == 0)
for (fJ = aFC - 1; 0 <= fJ; fJ--)
for (db = aFF + Math.floor((fJ + 1) * (a52 - aFF) / (aFC + 1)), fI = g5 - 1; 0 <= fI; fI--) pR[eg = 4 * ((0 === eD ? aFC - fJ - 1 : fJ) * g5 + fI)] = db, pR[eg + 1] = db, pR[eg + 2] = db, pR[eg + 3] = 255;
else {
for (fI = aFC - 1; 0 <= fI; fI--)
for (db = aFF + Math.floor((fI + 1) * (a52 - aFF) / (aFC + 1)), fJ = gA - 1 - aFC; aFC <= fJ; fJ--) pR[eg = 4 * (fJ * g5 + (3 === eD ? aFC - fI - 1 : fI))] = db, pR[eg + 1] = db, pR[eg + 2] = db, pR[eg + 3] = 255;
for (hZ = 1; 0 <= hZ; hZ--)
for (fI = aFC - 1; 0 <= fI; fI--)
for (fJ = aFC - 1; 0 <= fJ; fJ--) hy = (Math.pow(fI * fI + fJ * fJ, .5) + 1) / (aFC + 1), db = aFF + Math.floor((1 < hy ? 1 : hy) * (a52 - aFF)), pR[eg = 4 * ((0 === hZ ? aFC - fJ - 1 : fJ + hZ * (gA - aFC)) * g5 + (
1 === eD ? fI : aFC - fI - 1))] = db, pR[eg + 1] = db, pR[eg + 2] = db, pR[eg + 3] = 255
}
qW.putImageData(gK, 0, 0)
}
aFI = aFF, ap.pJ.fillStyle = "rgb(" + aFI + "," + aFI + "," + aFI + ")", ap.pJ.fillRect(0, 0, ap.e8, 1), ap.pJ.fillRect(0, ap.e9 - 1, ap.e8, 1), ap.pJ.fillRect(0, 0, 1, ap.e9), ap.pJ.fillRect(ap.e8 - 1, 0, 1, ap.e9)
}
}, this.qS = function() {
var hZ = fj ? 0 : -aFC;
aBA(hZ, hZ, ap.e8 - 2 * hZ, ap.e9 - 2 * hZ, ax.aFJ, ax.aFK, ax.aFL, ax.aFM) || (gE.fillStyle = aFE, gE.fillRect(0, 0, aK.g5, aK.gA))
}, this.gD = function() {
fj || (aB9(0, -aFC, ap.e8, aFC, ax.aFJ, ax.aFK, ax.aFL, ax.aFM) && gE.drawImage(aFD[0], ax.aFN, ax.aFO - aFC), aB9(ap.e8, -aFC, aFC, ap.e9 + 2 * aFC, ax.aFJ, ax.aFK, ax.aFL, ax.aFM) && gE.drawImage(aFD[1], ax.aFN + ap.e8, ax.aFO - aFC),
aB9(0, ap.e9, ap.e8, aFC, ax.aFJ, ax.aFK, ax.aFL, ax.aFM) && gE.drawImage(aFD[2], ax.aFN, ax.aFO + ap.e9), aB9(-aFC, -aFC, aFC, ap.e9 + 2 * aFC, ax.aFJ, ax.aFK, ax.aFL, ax.aFM) && gE.drawImage(aFD[3], ax.aFN - aFC, ax.aFO - aFC))
}
}
function cO() {
this.ff = new aFP, this.a6g = new aFQ, this.qT = new aFR, this.iw = new aFS, this.hE = new aFT, this.aFI = new aFU, this.aFV = new aFW, this.i5 = new aFX, this.mk = new aFY, this.cq = function() {
this.qT.cq(), this.iw.cq(), this.hE.cq(), this.aFI.cq()
}
}
function aFX() {
function aFe(player, hb, aFg, aFh) {
for (var jc, jd, g5, gA, gQ, aFi, je, jf, eZ = hb + aFh, eD = hb; eD < eZ; eD += aFg)
if (jc = (jc = hu[player] - eD) < 1 ? 1 : jc, jd = hx[player] - eD, je = (je = ht[player] + eD) >= ap.e8 - 1 ? ap.e8 - 2 : je, gA = (jf = (jf = hw[player] + eD) >= ap.e9 - 1 ? ap.e9 - 2 : jf) - (jd = jd < 1 ? 1 : jd), je = (gQ = eR(aL
.random() * (2 * (je - jc + jf - jd)), aL.value(100))) <= (g5 = je - jc) ? (aFi = jc + gQ, jd) : gQ <= g5 + gA ? (aFi = je, jd + gQ - g5) : gQ <= 2 * g5 + gA ? (aFi = jc + gQ - g5 - gA, jf) : (aFi = jc, jd + gQ - 2 * g5 - gA),
aFf(player, jf = a2.q4(aFi, je))) return jf;
return -1
}
function aFf(tw, eh) {
return a2.eb(eh) && (a2.el(eh) || tw !== (eh = a2.ek(eh)) && fr(tw, eh) && 0 < es[eh].length)
}
this.i6 = function(player) {
return !(0 === es[player].length || eV[player] < 100) && ak.iw.mX !== ak.iw.mi && (ak.iw.mW[player] !== ak.iw.mj && aY.fN.md(player, 203, 32, 16) ? !! function(player) {
var eh = function(player) {
var eD, q8, q7, jc = hu[player],
jd = hx[player],
gt = ht[player] - jc + 1,
gw = hw[player] - jd + 1,
db = aL.value(100);
for (eD = 0; eD < 32; eD++)
if (q8 = jc + ai.fE(aL.random() * gt, db), q7 = jd + ai.fE(aL.random() * gw, db), q8 = a2.q4(q8, q7), aFf(player, q8)) return q8;
return -1
}(player);
if (0 <= eh) return ak.mk.ml(player, eh >> 2);
if (0 <= (eh = aFe(player, 1, 4, 40))) return ak.mk.ml(player, eh >> 2);
if (0 <= (eh = aFe(player, 40, 8, 200))) return ak.mk.ml(player, eh >> 2);
return
}(player) && !! function(tw) {
if (0 === al.di[2]) return void console.log("error 325234");
var aFc = al.di[1] + aj.gR[al.di[2] - 1] << 2;
if (a2.el(aFc)) return 1;
return aFc = a2.ek(aFc), tw !== aFc && !!fr(tw, aFc)
}(player) && function(player) {
return aY.fN.mf(player), ak.iw.mm(player), !0
}(player) : void 0)
}
}
function aFP() {
function aFl(aFk) {
var aFv = 4 + .03 * (1 + 1.5 * b7.cv.fv()) * aK.fw / h7;
return aj.gz(aFk, al.di[1]) < aFv
}
this.fk = function(player, aFk) {
return !!aj.h9(aFk) && ak.iw.mX !== ak.iw.mi && ak.iw.mW[player] !== ak.iw.mj && 0 !== es[player].length && !!ak.mk.ml(player, aFk) && !!aFl(aFk)
}, this.lk = function(player, lj, aFk) {
return !!(aj.h9(aFk) && this.mn(player, lj) && ak.mk.mo(aFk) && aFl(aFk))
}, this.mn = function(player, id) {
for (var aFm, tf = player << 3, tg = tf + ak.iw.mW[player], aFn = ak.iw.aFn, aFo = ak.iw.aFo, eD = tf; eD < tg; eD++)
if (id === aFo[aFm = aFn[eD]]) return al.di[3] = aFm, !0;
return !1
}, this.fg = function(fX) {
var aFp = ak.aFI.aFp;
return ak.aFI.aFp = -1, !!this.mn(eU, aFp) && (aW.fd.fg(aFp, fX), !0)
}, this.fh = function(g8, g9) {
var eD, tg, aFq, aFn, aFr, aFs, aFt, hy, wQ, aFu, player = eU,
eZ = ak.iw.mW[player];
if (0 === eZ) return !1;
for (aFn = ak.iw.aFn, aFs = ak.iw.aFs, wQ = ak.iw.wQ, tg = (player = player << 3) + eZ, aFr = .4 * aY.g0.nD(.5) * aK.fw / h7, aFq = -1, eD = player; eD < tg; eD++) aFu = aFn[eD], aFt = 16 * (.625 + .125 * Math.sqrt(Math.sqrt(wQ[aFu]))), (
hy = aj.gp(g8, g9, aFs[aFu])) - aFt < aFr && (aFr = hy, aFq = aFu);
return !(aFq < 0 || (ak.aFI.aFp = ak.iw.aFo[aFq], 0))
}, this.vR = function(g8, g9) {
var eD, aFq, aFr, aFs, aFt, hy, wQ, eZ = ak.iw.mX;
if (eZ < 1) return -1;
for (aFs = ak.iw.aFs, wQ = ak.iw.wQ, aFr = 1e3, aFq = -1, eD = 0; eD < eZ; eD++) aFt = 16 * aY.g0.nD(.5) * (.625 + .125 * Math.sqrt(Math.sqrt(wQ[eD]))), (hy = aj.gp(g8, g9, aFs[eD])) < aFr && hy < aFt && (aFr = hy, aFq = eD);
return aFq
}
}
function aFQ() {
this.a6h = function(player) {
for (var aFn = ak.iw.aFn, tf = player << 3, eD = tf + ak.iw.mW[player] - 1; tf <= eD; eD--) this.aFw(aFn[eD])
}, this.aFw = function(aFx) {
var iw = ak.iw,
aFy = iw.mX - 1,
aFz = iw.wP[aFx],
aG0 = iw.aG1[aFx],
aG2 = iw.aFs[aFx];
iw.mX = aFy, iw.wP[aFx] = iw.wP[aFy], iw.aG3[aFx] = iw.aG3[aFy], iw.aG4[aFx] = iw.aG4[aFy], iw.aFs[aFx] = iw.aFs[aFy], iw.aG5[aFx] = iw.aG5[aFy], iw.wQ[aFx] = iw.wQ[aFy], iw.aG1[aFx] = iw.aG1[aFy], iw.aFo[aFx] = iw.aFo[aFy], iw.aG6[aFx] =
iw.aG6[aFy], iw.aFn[iw.wP[aFx]] = aFx,
function(a4O) {
var player = a4O >> 3,
iw = ak.iw,
eZ = iw.mW[player] - 1,
aG9 = (player << 3) + eZ;
iw.mW[player] = eZ, aG9 !== a4O && (iw.aFn[a4O] = iw.aFn[aG9], iw.wP[iw.aFn[a4O]] = a4O)
}(aFz), ak.hE.hE[aj.hD(iw.aFs[aFx])][iw.aG1[aFx]] = aFx, aFy = aj.hD(aG2), aFz = aG0, aFy = ak.hE.hE[aFy], iw = aFy.pop(), aFz !== aFy.length && (aFy[aFz] = iw, ak.iw.aG1[iw] = aFz)
}
}
function aFR() {
var aGB, aGC = 8,
aGD = new Array(2);
function aGE(fz) {
var gH = aGC + 4,
v4 = aY.g0.pF(gH, gH),
gO = aY.g0.getContext(v4, !0),
gK = aY.g0.getImageData(gO, gH, gH),
pR = gK.data;
return aGF(pR, gH + 1, fz), aGF(pR, gH + 2, fz), aGF(pR, 2 * gH + 1, fz), aGF(pR, 2 * gH - 3, fz), aGF(pR, 2 * gH - 2, fz), aGF(pR, 3 * gH - 2, fz), aGF(pR, gH * (gH - 3) + 1, fz), aGF(pR, gH * (gH - 2) + 1, fz), aGF(pR, gH * (gH - 2) + 2,
fz), aGF(pR, gH * (gH - 2) - 2, fz), aGF(pR, gH * (gH - 1) - 3, fz), aGF(pR, gH * (gH - 1) - 2, fz), gO.putImageData(gK, 0, 0), v4
}
function aGF(pR, fX, fz) {
fX *= 4;
pR[fX] = 255, pR[1 + fX] = 255, pR[2 + fX] = fz, pR[3 + fX] = 255
}
function pF(player) {
var v4 = aY.g0.pF(aGC, aGC);
return function(gO, player) {
var fI, fJ, gt, fX, aGH, a4P, gH = aGC,
gK = aY.g0.getImageData(gO, gH, gH),
pR = gK.data,
pB = (gH >> 1) - .5,
aFE = a2.xX(player),
aGJ = aY.pP.tZ(aFE, .5);
aY.pP.ta(aFE, aGJ, 300) || aY.pP.tc(aFE, 100);
for (fJ = 0; fJ < gH; fJ++)
for (fI = 0; fI < gH; fI++) a4P = (gH - 1.5) * (gH - 1.5) / 4, aGH = (gt = (gt = fI - pB) * gt + (gt = fJ - pB) * gt) <= (gH - 4.5) * (gH - 4.5) / 4 ? aGJ : aFE, pR[fX = 4 * (fJ * gH + fI)] = aGH[0], pR[1 + fX] = aGH[1], pR[2 +
fX] = aGH[2], pR[3 + fX] = a4P < gt ? 0 : 255;
gO.putImageData(gK, 0, 0)
}(aY.g0.getContext(v4, !0), player), v4
}
this.cq = function() {
aGB = new Array(ed), aGD[0] = aGE(255), aGD[1] = aGE(0)
}, this.gD = function() {
var eD, player, aGK, hT, aGL, gs, aGO, aGQ, aGR, aFs = ak.iw.aFs,
wP = ak.iw.wP,
wQ = ak.iw.wQ,
aGS = aGB,
aGT = eU,
aGU = -1,
eZ = ak.iw.mX,
aGV = aK.g5,
aGW = aK.gA,
aGX = ap.e8 << 4,
uJ = h7,
fZ = uJ / aGC,
jc = h6 / uJ,
jd = h8 / uJ,
gt = (aGV + h6) / uJ - jc,
gw = (aGW + h8) / uJ - jd,
gO = gE;
for (ak.ff.mn(eU, ak.aFI.aFp) && (aGU = al.di[3]), gO.fillStyle = aZ.gF, aY.g0.textAlign(gO, 1), eD = 0; eD < eZ; eD++) player = wP[eD] >> 3, hT = wQ[eD], aGK = .625 + .125 * Math.sqrt(Math.sqrt(hT)), aGL = (gs = aFs[eD]) % aGX / 16 -
aGK, gs = aGW * (Math.floor(gs / aGX) / 16 - aGK - jd) / gw, aGO = -2 * (aGR = uJ * aGK) * (1 + (aGQ = +(player === aGT)) / 8), aGQ = aGQ * aGR / 4, (aGR = aGV * (aGL - jc) / gt) < aGO || gs < aGO || aGV + aGQ < aGR || aGW + aGQ <
gs || (aGL = aGK * uJ, gO.imageSmoothingEnabled = (aGO = 2 * aGK * fZ) < 3, void 0 === (aGQ = aGS[player]) && (aGS[player] = aGQ = pF(player)), player === aGT && (gO.setTransform(aGO, 0, 0, aGO, aGR - 2 * aGO, gs - 2 * aGO), gO
.drawImage(aGD[+(eD === aGU)], 0, 0)), gO.setTransform(aGO, 0, 0, aGO, aGR, gs), gO.drawImage(aGQ, 0, 0), (aGK = Math.floor(function(hT) {
if (hT < 1e3) return .42;
if (hT < 1e4) return .34;
if (hT < 1e6) return .26;
if (hT < 1e8) return .19;
return .15
}(hT) * aGL)) < 6) || (gO.setTransform(1, 0, 0, 1, 0, 0), 20 <= aGK ? (gO.font = aY.g0.g1(1, .85 * aGK), gO.fillText(aY.jk.jl(hT), aGR + aGL, gs + .93 * aGL + .085 * aGK), (aGK *= a6.a8X(player)) < 6 || (gO.font = aY.g0.g1(1, aGK), gO
.fillText(jm[player], aGR + aGL, gs + 1.16 * aGL + .1 * aGK))) : (gO.font = aY.g0.g1(1, aGK), gO.fillText(aY.jk.jl(hT), aGR + aGL, gs + aGL + .1 * aGK)));
gO.imageSmoothingEnabled = !1, gO.setTransform(1, 0, 0, 1, 0, 0)
}
}
function aFW() {
this.i6 = function() {
for (var aGZ, aFV, aG6 = ak.iw.aG6, aFs = ak.iw.aFs, aG4 = ak.iw.aG4, eD = ak.iw.mX - 1; 0 <= eD; eD--) aGZ = aFs[eD], 0 !== (aFV = aG6[eD]) && aGZ === aG4[eD] && (! function(eD, aGb, ge) {
var hS, player = ak.iw.wP[eD] >> 3,
ge = aGb + aj.gR[ge] << 2,
eD = ak.iw.wQ[eD];
if (a2.el(ge)) hS = ed;
else {
if ((hS = a2.ek(ge)) === player) return aY.fN.m0(player, eD);
if (!fr(player, hS)) return aW.iP.ly(player, hS, eD)
}
player === eU && (b1.eX[13] += eD);
ea[player].push(aGb << 2), a4.hP(player, eD, hS), c.hQ(player, !0)
}(eD, aj.hC(aGZ), aFV - 1), ak.a6g.aFw(eD))
}
}
function aFS() {
this.aGc = null, this.mi = 512, this.mj = 8, this.mX = 0, this.jN = 0, this.wP = new Uint16Array(this.mi), this.aG3 = new Uint32Array(this.mi), this.aG4 = new Uint32Array(this.mi), this.aFs = new Uint32Array(this.mi), this.aG5 = new Uint16Array(
this.mi), this.wQ = new Uint32Array(this.mi), this.aG1 = new Uint16Array(this.mi), this.aFo = new Uint16Array(this.mi), this.aG6 = new Uint8Array(this.mi), this.mW = new Uint8Array(ed), this.aFn = new Uint16Array(this.mj * ed), this.cq =
function() {
this.jN = 0, this.mX = 0, this.aGc = new Uint8Array(ap.e8 + ap.e9), this.mW.fill(0)
}, this.mm = function(player) {
var eZ = this.mX,
aGd = aj.hB(al.di[0]),
aGe = this.mW[player],
aGf = (player << 3) + aGe;
h2[player] = 2, this.wP[eZ] = aGf, this.aG3[eZ] = aGd, this.aFs[eZ] = aGd, this.aG4[eZ] = aj.hB(al.di[1]), this.aG5[eZ] = 0, this.wQ[eZ] = al.df[0], this.aG1[eZ] = ak.hE.mm(eZ, aj.hD(aGd)), this.aFo[eZ] = this.jN, this.aG6[eZ] = al.di[2],
this.jN = this.jN + 1 & 1023, this.aFn[aGf] = eZ, this.mW[player] = aGe + 1, this.mX++
}, this.fg = function() {
var aFm = al.di[3];
this.aG3[aFm] = this.aFs[aFm], this.aG4[aFm] = aj.hB(al.di[1]), this.aG5[aFm] = 0, this.aG6[aFm] = al.di[2]
}, this.i6 = function() {
if (b3.iK() % 5 == 3) {
ak.aFV.i6(), ! function(vX) {
var eD, aGj, aGk, aGl, aGm, aGd, aGq, aGr, ei, eh, aG3 = vX.aG3,
aG4 = vX.aG4,
aFs = vX.aFs,
wQ = vX.wQ,
aG5 = vX.aG5,
aG1 = vX.aG1,
vX = vX.mX,
aGX = ap.e8 << 4;
for (eD = vX - 1; 0 <= eD; eD--) aGk = aFs[eD], aGj = aG4[eD], aGk !== aGj && (aGd = aG3[eD], aGq = aGj % aGX - (aGm = aGd % aGX), aGr = ~~((aGj + .5) / aGX) - (aGd = ~~((aGd + .5) / aGX)), ei = ~~Math.sqrt(aGq * aGq + aGr *
aGr + .5), eh = 4e5 + 2e4 * ~~Math.sqrt(.5 + (Math.sqrt(wQ[eD] + .5) << 4)), 65535 <= (eh = aG5[eD] + Math.max(~~((.5 + eh) / ei), 1)) ? aFs[eD] = aGl = aGj : (aG5[eD] = eh, aFs[eD] = aGl = aGm + ai.fE(eh * aGq,
65536) + aGX * (aGd + ai.fE(eh * aGr, 65536))), aG1[eD] = ak.hE.aGt(aG1[eD], aGk, aGl))
}(this), ! function(vX) {
var eD, pe, pB, hi, iL, aGu, aGv, aGw, pZ, gW, jc, jd, aGx, aFr, aGy, pa, aGd, aH1, eZ = vX.mX,
aFs = vX.aFs,
wP = vX.wP,
wQ = vX.wQ,
hE = ak.hE.hE,
aH2 = hE.length,
aH3 = ak.hE.aH3,
aGX = ap.e8 << 4,
aH4 = hM,
aH5 = b4.iM,
eh = (eZ - 1) * (b3.iK() % 2);
for (eD = 0; eD < eZ; eD++) {
for (pe = Math.abs(eD - eh), aGd = aFs[pe], pB = aj.hD(aGd), pZ = wP[pe] >> 3, jc = aGd % aGX, jd = ~~((aGd + .5) / aGX), aGd = wQ[pe], aH1 = 80 + ~~Math.sqrt(.5 + (Math.sqrt(aGd + .5) << 8)), aFr = Math.min(aH1 * aH1,
262144), aGy = -1, hi = 0; hi < 9; hi++)
if (!((aGu = pB + aH3[hi]) < 0 || aH2 <= aGu))
for (aGw = hE[aGu], aGv = aGw.length, iL = 0; iL < aGv; iL++) aGx = aGw[iL], pa = wP[aGx] >> 3, pZ == pa || aH4 && aH5[pZ] === aH5[pa] || (pa = aFs[aGx], (pa = (gW = jc - pa % aGX) * gW + (gW = jd - ~~((pa + .5) /
aGX)) * gW) < aFr && (aGy = aGx, aFr = pa)); - 1 !== aGy && (aGd = Math.min(Math.max(1, ai.fE(aGd * (aH1 - Math.floor(Math.sqrt(aFr + .5))), 5 * aH1)), wQ[aGy]), wQ[pe] -= aGd >> 4, wQ[aGy] -= aGd)
}
}(this);
var eD, hT, wQ = (vX = this).wQ,
vX = vX.mX;
for (eD = vX - 1; 0 <= eD; eD--) hT = wQ[eD], 0 < (hT -= Math.max(1, hT >> 7)) ? wQ[eD] = hT : ak.a6g.aFw(eD)
}
}
}
function aFT() {
this.aH6 = 32, this.fI = 0, this.fJ = 0, this.hF = 0, this.aH7 = 0, this.aH8 = 4, this.hE = null, this.aH3 = new Int16Array(9), this.cq = function() {
this.hF = 1 + ai.fE(ap.e8 - 1, this.aH6), this.aH7 = 1 + ai.fE(ap.e9 - 1, this.aH6), this.hE = new Array(this.hF * this.aH7), aY.pP.tY(this.hE);
var fI, fJ, aH3 = this.aH3,
g5 = this.hF;
for (fI = -1; fI <= 1; fI++)
for (fJ = -1; fJ <= 1; fJ++) aH3[3 * (1 + fJ) + 1 + fI] = fJ * g5 + fI
}, this.mm = function(aHA, eD) {
return this.hE[eD].push(aHA), this.hE[eD].length - 1
}, this.aGt = function(aHB, aGd, aGj) {
var aHC, aHD, aGd = aj.hD(aGd),
aGj = aj.hD(aGj);
return aGd === aGj ? aHB : (aHC = this.hE[aGd].pop(), this.hE[aGd].length === aHB ? this.mm(aHC, aGj) : (aHD = this.hE[aGd][aHB], this.hE[aGd][aHB] = aHC, ak.iw.aG1[aHC] = aHB, this.mm(aHD, aGj)))
}
}
function aFY() {
function sN(aGj, aHE) {
if (function(aGj, aFk) {
var gV = aj.hC(aGj),
aHH = Math.abs(aj.gX(aFk) - aj.gX(gV)),
gV = Math.abs(aj.gZ(aFk) - aj.gZ(gV));
return 0 !== Math.max(aHH, gV) && (function(aGd, aGj, aHH, aHI) {
var aHK = aj.gv(aGd),
aGd = aj.gy(aGd),
aHM = aj.gv(aGj),
aGj = aj.gy(aGj),
aHM = aHM - aHK,
aGj = aGj - aGd,
aHQ = Math.abs(aHM),
aHR = Math.abs(aGj),
aHM = 0 < aHM ? 1 : 3,
aGj = 0 < aGj ? 2 : 0;
aHR < aHQ ? aHU(aHK, aGd, aHK + aHQ, aGd + aHR, aHM, aGj, aHH) : aHU(aGd, aHK, aGd + aHR, aHK + aHQ, aGj, aHM, aHI)
}(aGj, aj.hB(aFk), aHH, gV), !0)
}(aGj, aHE)) {
if (0 === al.de[0]) return !!a2.fj(aHE << 2);
if (function(aFk) {
if (a2.fj(aFk << 2)) return 1;
return function(aFk) {
var eD, ge, aGc = ak.iw.aGc,
aHY = aj,
eZ = al.de[0],
aHZ = 4 * aFk;
for (eD = eZ - 1; 0 <= eD; eD--)
if (ge = aGc[eD], aHZ = aHY.hH(aHZ, ge + 2 & 3), a2.fj(aHZ)) return al.de[0] = eD, al.di[1] = aHZ >> 2, al.di[2] = 1 + ge, 1;
return
}(aFk)
}(aHE)) {
var eD, aHE = aj.hC(aGj),
pR = a1b,
aGc = ak.iw.aGc,
eZ = al.de[0] - 1,
aHZ = 4 * aHE,
gS = aj.gS;
for (eD = 0; eD < eZ; eD++)
if (aHZ += gS[aGc[eD]], 0 !== pR[aHZ + 3] || 2 !== pR[aHZ + 2]) return !!void 0;
return !!1
}
}
return !1
}
function aHU(aHK, aHL, aHM, aHN, aHS, aHT, aHH) {
for (var fJ, aGc = ak.iw.aGc, eh = 0, aHV = 0, gA = aHN - aHL, g5 = aHM - aHK, aHW = aHK % 16, eD = 1; eD <= aHH; eD++) aGc[eh++] = aHS, aGc[eh] = aHT, eh += (fJ = (gA * (aHW + (eD << 4)) + .5) / g5 >> 4) - aHV, aHV = fJ;
al.dk(al.de, eh)
}
this.ml = function(player, aHE) {
var ge, gV, gU = aj.gg(player, aHE);
return gU !== aHE && (ge = aj.gT(gU, aHE), gV = aj.hG(gU, ge), !(!a2.fj(gV << 2) && (ge = aj.gd(gU, aHE, ge), gV = aj.hG(gU, ge), a2.pb(gV << 2) || !a2.fj(gV << 2)) || (al.di[0] = gV, al.di[1] = aHE, al.di[2] = 0, !sN(aj.hB(gV), aHE)) ||
0 !== al.di[2] && aj.go(player, al.di[1] + aj.gR[al.di[2] - 1] << 2)))
}, this.mo = function(aHE) {
var aGd = ak.iw.aFs[al.di[3]];
return al.di[1] = aHE, al.di[2] = 0, sN(aGd, aHE)
}
}
function aFU() {
var aGC = 32,
aHb = new Array(2);
function pF(iL) {
var fI, fJ, fX, gw, gt, gH = aGC,
v4 = aY.g0.pF(gH, gH),
gO = aY.g0.getContext(v4, !0),
gK = aY.g0.getImageData(gO, gH, gH),
pR = gK.data,
pB = (gH >> 1) - .5,
aHc = Math.sqrt(pB * pB);
for (pR.fill(255), fJ = 0; fJ < gH; fJ++)
for (fI = 0; fI < gH; fI++) gt = fI - pB, gw = fJ - pB, fX = 4 * (fJ * gH + fI), gt = 714 * (aHc - Math.sqrt(gt * gt + gw * gw)) / aHc, pR[2 + fX] = iL, pR[3 + fX] = 255 < gt ? 0 : gt;
return gO.putImageData(gK, 0, 0), v4
}
this.aFp = -1, this.cq = function() {
this.aFp = -1, aHb[0] || (aHb[0] = pF(255), aHb[1] = pF(0))
}, this.aHd = function(gO, fZ, fI, fJ, gQ, eD) {
aY.fN.fP(eU) && (gO.setTransform(fZ *= 4 / 3 * .625, 0, 0, fZ, fI - (gQ *= 4 / 3), fJ - gQ), gO.drawImage(aHb[+(ak.iw.aFo[eD] === this.aFp)], 0, 0))
}
}
function yP() {
if (iN < 3) return !1;
if (ai.fE(3 * ez[jG[2]], 2) < ez[jG[0]]) return !1;
if (ez[jG[0]] + ez[jG[1]] + ez[jG[2]] < uS - ai.fE(uS, 10)) return !1;
if (8 * Math.min(Math.min(eV[jG[0]], eV[jG[1]]), eV[jG[2]]) < 5 * Math.max(Math.max(eV[jG[0]], eV[jG[1]]), eV[jG[2]])) return !1;
if (hM) {
if (b4.iM[jG[0]] === b4.iM[jG[1]]) return !1;
if (b4.iM[jG[0]] === b4.iM[jG[2]]) return !1;
if (b4.iM[jG[1]] === b4.iM[jG[2]]) return !1
}
return !0
}
function ci() {
this.size = 501, this.rp = new Uint32Array(this.size), this.tz = new Uint32Array(this.size), this.a1G = new Uint16Array(this.size), this.aCF = 0, this.aHg = 1, this.iL = 0, this.max = [0, 0, 0], this.eX = 0, this.aHh = ["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.cq = function() {
this.aCF = 0, this.aHg = 1, this.iL = 0, this.aHi(), this.aHj()
}, this.mg = function(player, h5) {
player === eU && (this.eX[0] += h5, this.eX[1]++, this.eX[12] += al.df[1], this.eX[13] += al.df[0])
}, this.m1 = function(player, lf) {
donationsTracker.logDonation(player, lf, al.df[0]);
player === eU && (k.m1(al.df[0], al.df[1], lf), this.eX[12] += al.df[1], this.eX[16] += al.df[0]), lf === eU && (k.wf(al.df[0], player), this.eX[10] += al.df[0])
}, this.i6 = function() {
0 < this.iL-- || this.aHk()
}, this.aHk = function() {
0 !== h2[eU] && (this.rp[this.aCF] = ez[eU], this.tz[this.aCF] = eV[eU], this.a1G[this.aCF] = a5.a1H(eU), this.aHl(this.aCF), this.aCF++, this.aCF === this.size && this.aHm(), this.iL = this.aHg - 1, b2.g2())
}, this.aHm = function() {
this.aHi(), this.aHl(0), this.aCF = 1 + eR(this.size, 2);
for (var eD = 1; eD < this.aCF; eD++) this.rp[eD] = this.rp[2 * eD], this.tz[eD] = this.tz[2 * eD], this.a1G[eD] = this.a1G[2 * eD], this.aHl(eD);
this.aHg *= 2
}, this.aHi = function() {
this.max[0] = this.max[1] = this.max[2] = 0
}, this.aHj = function() {
this.eX = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
}, this.aHl = function(eD) {
this.max[0] = this.rp[eD] > this.max[0] ? this.rp[eD] : this.max[0], this.max[1] = this.tz[eD] > this.max[1] ? this.tz[eD] : this.max[1], this.max[2] = this.a1G[eD] > this.max[2] ? this.a1G[eD] : this.max[2]
}
}
function cj() {
this.g5 = 0, this.gA = 0, this.qb = 0, this.qc = 0, this.a2D = 0, this.a2E = 0, this.xM = 0, this.a56 = 0, this.a4r = 0, this.a3b = 0, this.aHn = 0, this.aHo = 0, this.xy = 0, this.fz = 0, this.a0v = ["Territory", "Balance", "Interest",
"Numbers"], this.t8 = !1, this.aHp = -1, this.aHq = !1, this.aHr = [0, 0], this.cq = function() {
this.t8 = !1, this.aHp = -1, this.aHq = !1, this.resize()
}, this.resize = function() {
this.g5 = aK.g5 < 1.369 * aK.gA ? aK.g5 : 1.369 * aK.gA;
var ei = b7.cv.fv() && aK.g5 < aK.gA ? 1 : b7.cv.fv() ? .8 : aK.g5 < aK.gA ? .65 : .59;
this.g5 = Math.floor(ei * this.g5), this.g5 -= b7.cv.fv() && aK.g5 < aK.gA ? 2 * b0.gap + 2 : 0, this.gA = Math.floor(this.g5 / 1.369), this.xy = Math.floor(this.gA / 150), this.xy = Math.max(this.xy, 1.5), this.qb = Math.floor(1 + .02 *
this.g5), this.qc = Math.floor(1 + .04 * this.g5), this.xM = this.qc, this.a56 = Math.floor(1 + .075 * this.g5), this.a3b = Math.floor(1 + .1125 * this.g5), this.aHn = Math.floor(this.g5 * (b7.cv.fv() ? .03 : .029)), this.aHn =
Math.max(this.aHn, 4), this.aHo = Math.floor(.035 * this.g5), this.aHo = Math.max(this.aHo, 4), this.a4r = this.gA - 2 * this.xM - this.a56 - this.a3b, this.t8 && this.aHs()
}, this.fQ = function(g8, g9) {
var pw, pv;
return !!this.t8 && (pv = g8, pw = g9, g8 -= eR(aK.g5 - this.g5, 2), g9 -= eR(aK.gA - this.gA, 2), g8 < 0 || g9 < 0 || g8 >= this.g5 || g9 >= this.gA || g8 >= this.g5 - this.a3b && g9 < this.a3b ? 1 < j.fQ(pv, pw) || this.o3() : g9 < this
.a3b || (g9 < this.gA - this.a56 ? (this.aHq = !0, this.aHp = (g8 - 2 * this.qb - this.a2D) / this.a2E, 3 !== this.fz && (b3.d1 = !0)) : (pv = (pv = Math.floor(g8 / (this.g5 / this.a0v.length))) < 0 ? 0 : pv >= this.a0v.length ?
this.a0v.length - 1 : pv) !== this.fz && (this.fz = pv, this.aHs(), b3.d1 = !0)), !0)
}, this.tK = function() {
var aHt = Math.floor((this.aHr[0] + h6) / h7),
aHu = Math.floor((this.aHr[1] + h8) / h7);
aHt < 1 || aHu < 1 || aHt >= ap.e8 - 1 || aHu >= ap.e9 - 1 || console.log(aHt + " " + aHu)
}, this.sk = function(g8, g9) {
return this.aHr[0] = g8, this.aHr[1] = g9, !(!this.t8 || !this.aHq || (g8 -= eR(aK.g5 - this.g5, 2), g9 = this.aHp, this.aHp = (g8 - 2 * this.qb - this.a2D) / this.a2E, (0 <= this.aHp && this.aHp <= 1 || 0 <= g9 && g9 <= 1) && (b3.d1 = !
0), 0))
}, this.tA = function() {
this.aHq && (this.aHq = !1)
}, this.tO = function() {
this.t8 ? this.o3() : this.show()
}, this.show = function() {
b1.aCF < 2 || (this.t8 = !0, this.aHs())
}, this.o3 = function() {
this.t8 = !1, this.aHp = -1, b3.d1 = !0
}, this.aHs = function() {
this.fz < 2 ? this.a2D = n.measureText(aY.jk.jl(b1.max[this.fz]), aY.g0.g1(0, this.aHn)) : 2 === this.fz && (this.a2D = n.measureText(aY.jk.uE(6, 2), aY.g0.g1(0, this.aHn))), this.a2E = this.g5 - 2 * this.qb - this.a2D - this.qc
}, this.g2 = function() {
this.t8 && this.aHs()
}, this.gD = function() {
this.t8 && this.ys()
}, this.ys = function() {
var fI = eR(aK.g5 - this.g5, 2),
fJ = eR(aK.gA - this.gA, 2);
gE.setTransform(1, 0, 0, 1, fI, fJ), gE.fillStyle = aZ.ka, gE.fillRect(0, this.a3b, this.g5, this.gA - this.a3b), this.aHv(), this.aHw(), gE.strokeRect(0, 0, this.g5, this.gA), aY.g0.textAlign(gE, 2), gE.font = aY.g0.g1(0, this.aHn),
0 === this.fz ? this.aHx(b1.rp, fI, fJ) : 1 === this.fz ? this.aHx(b1.tz, fI, fJ) : 2 === this.fz ? this.aHy(fI, fJ) : 3 === this.fz && (this.aHz(fI, fJ), this.aI0(fI, fJ)), j.vl(Math.floor(fI + this.g5 - .725 * this.a3b), Math.floor(
fJ + .275 * this.a3b), Math.floor(.45 * this.a3b)), gE.setTransform(1, 0, 0, 1, 0, 0)
}, this.aHv = function() {
var eD, dZ;
for (gE.lineWidth = this.xy, aY.g0.textBaseline(gE, 1), aY.g0.textAlign(gE, 1), gE.strokeStyle = aZ.gF, gE.font = aY.g0.g1(1, this.aHo), dZ = this.g5 / this.a0v.length, gE.fillStyle = aZ.kt, gE.fillRect(this.fz * dZ, this.gA - this.a56,
dZ, this.a56), gE.fillStyle = aZ.gF, gE.fillRect(0, this.gA - this.a56 - .5 * this.xy, this.g5, this.xy), eD = 1; eD <= 3; eD++) gE.fillRect(eD * dZ, this.gA - this.a56, this.xy, this.a56);
for (eD = this.a0v.length - 1; 0 <= eD; eD--) gE.fillText(this.a0v[eD], (eD + .5) * dZ, this.gA - .46 * this.a56)
}, this.aHw = function() {
gE.fillStyle = aZ.lB, gE.fillRect(0, 0, this.g5, this.a3b), gE.fillStyle = aZ.gF, gE.fillRect(0, this.a3b - .5 * this.xy, this.g5, this.xy), gE.font = aY.g0.g1(1, .39 * this.a3b), gE.fillText("Statistics", Math.floor(this.g5 / 2), Math
.floor(.55 * this.a3b))
}, this.aHx = function(dl, fI, fJ) {
var pB = b1.max[this.fz],
ft = (gE.setTransform(1, 0, 0, 1, fI + 2 * this.qb + this.a2D, fJ + this.xM + this.a3b), gE.lineWidth = 2, this.a4r / Math.sqrt(pB));
gE.beginPath(), gE.moveTo(this.a2E, this.a4r - ft * Math.sqrt(dl[b1.aCF - 1]));
for (var eD = b1.aCF - 2; 0 <= eD; eD--) gE.lineTo(eD * this.a2E / (b1.aCF - 1), this.a4r - ft * Math.sqrt(dl[eD]));
gE.stroke();
fI = this.vl(dl, ft, .5);
fI < .95 && gE.fillText(aY.jk.jl(pB), -this.qb, 0), .05 < Math.abs(fI - .5) && gE.fillText(aY.jk.jl(Math.floor(pB / 4)), -this.qb, Math.floor(this.a4r / 2)), .05 < fI && gE.fillText("0", -this.qb, this.a4r)
}, this.aHy = function(fI, fJ) {
gE.setTransform(1, 0, 0, 1, fI + 2 * this.qb + this.a2D, fJ + this.xM + this.a3b), gE.lineWidth = 2;
var ft = this.a4r / Math.max(b1.max[this.fz], 1);
gE.beginPath(), gE.moveTo(this.a2E, this.a4r - ft * b1.a1G[b1.aCF - 1]);
for (var eD = b1.aCF - 2; 0 <= eD; eD--) gE.lineTo(eD * this.a2E / (b1.aCF - 1), this.a4r - ft * b1.a1G[eD]);
gE.stroke();
fI = this.vl(b1.a1G, ft, 1), fJ = b1.max[this.fz] / 100;
fI < .95 && gE.fillText(aY.jk.uE(fJ, 2), -this.qb, 0), .05 < Math.abs(fI - .5) && gE.fillText(aY.jk.uE(fJ / 2, 2), -this.qb, Math.floor(this.a4r / 2)), .05 < fI && gE.fillText(aY.jk.uE(0, 2), -this.qb, this.a4r)
}, this.aHz = function(fI, fJ) {
gE.setTransform(1, 0, 0, 1, fI + .34 * this.g5, fJ + 2 * this.xM + this.a3b), aY.g0.textAlign(gE, 2);
for (var a0f = this.gA - 4 * this.xM - this.a56 - this.a3b, eD = 7; 0 <= eD; eD--) gE.fillText(b1.aHh[eD], 0, eD * a0f / 7);
gE.setTransform(1, 0, 0, 1, fI + .39 * this.g5, fJ + 2 * this.xM + this.a3b), aY.g0.textAlign(gE, 0);
fI = b1.eX[1];
for (gE.fillText(aY.jk.uE(b1.eX[0] / (10 * (fI < 1 ? 1 : fI)), 1), 0, 0), eD = 6; 1 <= eD; eD--) gE.fillText(b1.eX[eD].toString(), 0, eD * a0f / 7);
gE.fillText(aY.jk.uE(100 * (1 - ez[eU] / b1.eX[7]), 0), 0, a0f)
}, this.aI0 = function(fI, fJ) {
gE.setTransform(1, 0, 0, 1, fI + .79 * this.g5, fJ + 2 * this.xM + this.a3b), aY.g0.textAlign(gE, 2);
var eD, a0f = this.gA - 4 * this.xM - this.a56 - this.a3b;
for (gE.fillStyle = aZ.ko, eD = 2; 0 <= eD; eD--) gE.fillText(b1.aHh[eD + 8], 0, eD * a0f / 9);
for (gE.fillStyle = aZ.kn, gE.fillText(b1.aHh[11], 0, 3 * a0f / 9), gE.fillStyle = aZ.l3, eD = 8; 4 <= eD; eD--) gE.fillText(b1.aHh[eD + 8], 0, eD * a0f / 9);
gE.fillStyle = aZ.l2, gE.fillText(b1.aHh[17], 0, 9 * a0f / 9), gE.fillStyle = aZ.ko;
var wN = aY.jk.jl(b1.eX[8] + b1.eX[9] + b1.eX[10] + b1.eX[11]),
aI1 = gE.measureText(wN).width,
fI = (gE.setTransform(1, 0, 0, 1, fI + .83 * this.g5 + aI1, fJ + 2 * this.xM + this.a3b), gE.fillText(aY.jk.jl(b1.eX[8]), 0, 0), gE.fillText(aY.jk.jl(b1.eX[9]), 0, a0f / 9), gE.fillText(aY.jk.jl(b1.eX[10]), 0, 2 * a0f / 9), gE
.fillStyle = aZ.kn, gE.fillText(wN, 0, 3 * a0f / 9), gE.fillStyle = aZ.l3, b1.eX[13] - a4.a7c(eU)),
aI1 = (gE.fillText(aY.jk.jl(b1.eX[12]), 0, 4 * a0f / 9), gE.fillText(aY.jk.jl(fI), 0, 5 * a0f / 9), gE.fillText(aY.jk.jl(b1.eX[14]), 0, 6 * a0f / 9), gE.fillText(aY.jk.jl(b1.eX[15]), 0, 7 * a0f / 9), gE.fillText(aY.jk.jl(b1.eX[16]),
0, 8 * a0f / 9), b1.eX[12] + fI + b1.eX[14] + b1.eX[15] + b1.eX[16] + b1.eX[17]);
gE.fillStyle = aZ.l2, gE.fillText(aY.jk.jl(aI1), 0, a0f), gE.fillStyle = aZ.gF
}, this.vl = function(dl, ft, zS) {
var eD, dE, dm;
return this.aHp < 0 || 1 < this.aHp ? .25 : (eD = this.aHp * (b1.aCF - 1), dm = dl[dE = Math.floor(eD)], dm += (eD - dE) * (dl[dE < b1.aCF - 1 ? dE + 1 : dE] - dm), gE.strokeStyle = aZ.kf, .04 < this.aHp && this.aI4(0, this.a4r - ft *
Math.pow(dm, zS), eD * this.a2E / (b1.aCF - 1), this.a4r - ft * Math.pow(dm, zS)), .04 < dm / b1.max[this.fz] && this.aI4(eD * this.a2E / (b1.aCF - 1), this.a4r, eD * this.a2E / (b1.aCF - 1), this.a4r - ft * Math.pow(dm, zS)),
gE.fillStyle = aZ.l5, gE.beginPath(), gE.arc(eD * this.a2E / (b1.aCF - 1), this.a4r - ft * Math.pow(dm, zS), Math.max(2, .014 * this.gA), 0, 2 * Math.PI), gE.fill(), dl = this.aHp * b3.a1I, dl = 0 === h2[eU] ? Math.floor(dl * u
.a1P) : Math.floor(dl * b3.iK()), gE.fillStyle = aZ.gF, gE.fillText(1 === zS ? aY.jk.uE(dm / 100, 2) : aY.jk.jl(Math.floor(dm)), -this.qb, this.a4r - ft * Math.pow(dm, zS)), aY.g0.textAlign(gE, 1), gE.fillText(t.a02(dl), eD *
this.a2E / (b1.aCF - 1), this.a4r + this.aHn - (b7.cv.fv() ? 2 : 0) - this.xy), aY.g0.textAlign(gE, 2), ft * Math.pow(dm, zS) / this.a4r)
}, this.aI4 = function(jc, jd, je, jf) {
gE.beginPath(), gE.moveTo(jc, jd), gE.lineTo(je, jf), gE.stroke()
}
}
function bI() {
this.aI5 = "https://", this.aI6 = this.aI5 + "territorial.io/", this.aCG = this.aI6 + "changelog", this.aCL = this.aI6 + "terms", this.aI7 = this.aI6 + "cookie_policy", this.aCM = this.aI6 + "privacy", this.aCK = this.aI6 + "tutorial", this.aCJ =
this.aI6 + "players", this.aCH = this.aI6 + "clans", this.aCI = this.aI6 + "clan-results", this.a2U = this.aI5 + "play.google.com/store/apps/details?id=territorial.io", this.sF = this.aI5 + "apps.apple.com/app/id1581110913", this.a2V = this
.aI5 + "www.youtube.com/watch?v=toZTQ8aRdFc", this.a2W = this.aI5 + "discord.gg/pthqvpTXmh", this.a2X = this.aI5 + "www.instagram.com/davidtschacher/"
}
function cQ() {
this.iw = new aI8, this.qT = new aI9, this.cq = function() {
this.iw.cq()
}, this.i6 = function() {
0 !== this.iw.wp && this.iw.wp--
}
}
function aI9() {
this.gD = function() {
if (0 !== am.iw.wp && (gE.globalAlpha = Math.min(am.iw.wp / 580, 1), gE.drawImage(am.iw.aIC, 1 + p.jg(), 1 + p.gC()), gE.globalAlpha = 1, fc)) {
var eD, jc = h6 / h7,
jd = h8 / h7,
je = (aK.g5 + h6) / h7,
jf = (aK.gA + h8) / h7,
eh = am.iw.aID * h7,
aIE = am.iw.aIE;
for (eD = h1 - 1; 0 <= eD; eD--) ! function(eD, eh, jc, jd, je, jf, aIE) {
0 === h2[eD] || 0 === ez[eD] || (je = aK.g5 * ((hu[eD] + ht[eD] + 1) / 2 - jc) / (je - jc) - .5 * eh, jc = aK.gA * ((hx[eD] + hw[eD] + 1) / 2 - jd) / (jf - jd) - .5 * eh, je > aK.g5) || jc > aK.gA || je < -eh || jc < -eh || (
gE.setTransform(h7, 0, 0, h7, je, jc), gE.drawImage(aIE[hM ? b4.iM[eD] : 1], 0, 0))
}(eD, eh, jc, jd, je, jf, aIE);
gE.setTransform(h7, 0, 0, h7, 0, 0)
}
}
}
function aI8() {
this.aID = 28, this.wp = 0, this.aIC = null;
var aIG = this.aIE = null;
function aIJ(gH, aIL) {
var fI, fJ, fX, gt, v4 = aY.g0.pF(gH, gH),
gO = aY.g0.getContext(v4, !0),
gK = aY.g0.getImageData(gO, gH, gH),
pR = gK.data,
pB = (gH >> 1) - .5,
aIM = .5 + pB;
for (aIM *= aIM, fJ = 0; fJ < gH; fJ++)
for (fI = 0; fI < gH; fI++) gt = (gt = fI - pB) * gt + (gt = fJ - pB) * gt, pR[fX = 4 * (fJ * gH + fI)] = aIL[0], pR[1 + fX] = aIL[1], pR[2 + fX] = aIL[2], pR[3 + fX] = (aIM - gt) * aIL[3] / aIM;
return gO.putImageData(gK, 0, 0), v4
}
function aHd(eD, gO, v4, gH) {
var fI;
0 !== h2[eD] && 0 !== ez[eD] && (fI = hu[eD] + ht[eD] + 1 - gH - 2 >> 1, gH = hx[eD] + hw[eD] + 1 - gH - 2 >> 1, gO.drawImage(v4[hM ? b4.iM[eD] : eD < h1 ? 1 : 0], fI, gH))
}
this.cq = function() {
var vX;
this.wp = 700,
function(vX) {
var eD, gH = vX.aID;
if (vX.aIE = [], aIG = [], hM)
for (eD = 0; eD <= uV; eD++) vX.aIE.push(aIJ(gH, b4.aIK[b4.rf[eD]])), aIG.push(aIJ(gH >> 1, b4.aIK[b4.rf[eD]]));
else vX.aIE.push(aIJ(gH, b4.aIK[0])), vX.aIE.push(aIJ(gH, b4.aIK[4])), aIG.push(aIJ(gH >> 1, b4.aIK[0]))
}(this),
function(vX, aIN) {
var eD, aIC = vX.aIC,
gO = aY.g0.getContext(aIC, !0),
eZ = ed,
gH = vX.aID >> 1;
gO.imageSmoothingEnabled = !1, gO.setTransform(1, 0, 0, 1, 0, 0), aIN && gO.clearRect(0, 0, aIC.width, aIC.height);
for (eD = h1; eD < eZ; eD++) aHd(eD, gO, aIG, gH)
}(this, null !== (vX = this).aIC && vX.aIC.width === ap.e8 - 2 && vX.aIC.height === ap.e9 - 2 || (vX.aIC = aY.g0.pF(ap.e8 - 2, ap.e9 - 2), !1))
}, this.uP = function() {
for (var eZ = h1, gH = this.aID, aIE = this.aIE, gO = aY.g0.getContext(this.aIC, !0), eD = 0; eD < eZ; eD++) aHd(eD, gO, aIE, gH)
}
}
function cR() {
this.aIO = -1, this.cq = function() {
this.aIO = -1
}, this.i6 = function() {
-1 !== this.aIO && ao.rD.rL(this.aIO)
}, this.lv = function(player) {
return !!j.vk(player) && (1 === iN ? (this.aIO = player, im && fc && mb.i6()) : (k.rJ(player, player === eU ? 21 : 22), 8 === ik ? this.aIO = 1 - player : im ? (a6c(player), a9J(), fc && mb.i6()) : this.aIP(player)), !0)
}, this.mY = function(player) {
1 === rS && 0 !== h2[player] && 2 !== h3[player] && (8 === ik ? this.aIO = 1 - player : this.aIP(player)), k.rJ(player, 4)
}, this.aIP = function(player) {
fc ? (a6c(player), a9J()) : aQ.a9F(player)
}
}
function cc() {
this.a4N = ["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.a0e = [aZ
.gF, "rgb(255,120,120)", "rgb(0,230,0)", "rgb(150,150,255)", "rgb(240,240,25)", "rgb(255,70,255)", "rgb(25,240,240)", aZ.gF, "rgb(170,170,170)"
], this.aIQ = [aZ.gF, "rgb(255,0,0)", "rgb(0,255,0)", "rgb(0,0,255)", "rgb(255,255,0)", "rgb(255,0,255)", "rgb(0,255,255)", aZ.gF, aZ.ji], this.aIR = [aZ.ji, aZ.gF, aZ.gF, aZ.gF, aZ.ji, aZ.ji, aZ.ji, aZ.ji, aZ.gF];
var aIS = ["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"],
aIT = (this.a8l = ["rgba(" + aIS[0] + ",", "rgba(" + aIS[1] + ",", "rgba(" + aIS[2] + ",", "rgba(" + aIS[3] + ",", "rgba(" + aIS[4] + ",", "rgba(" + aIS[5] + ",", "rgba(" + aIS[6] + ",", "rgba(" + aIS[7] + ",", "rgba(" + aIS[8] + ",",
"rgba(" + aIS[9] + ","
], this.a8m = ["rgb(" + aIS[0] + ")", "rgb(" + aIS[1] + ")", "rgb(" + aIS[2] + ")", "rgb(" + aIS[3] + ")", "rgb(" + aIS[4] + ")", "rgb(" + aIS[5] + ")", "rgb(" + aIS[6] + ")", "rgb(" + aIS[7] + ")", "rgb(" + aIS[8] + ")", "rgb(" + aIS[
9] + ")"
], this.fu = ["White", "Red", "Green", "Blue", "Yellow", "Magenta", "Cyan", "White", "Black"], this.aIK = [
[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.rf = [0, 1, 2, 3, 4, 5, 6, 7, 8], this.iM = new Uint8Array(ed), this.rn = null, this.ro = null, this.cq = function(qf) {
this.iM.fill(0), this.aIU(), hM && (aU.ih && aU.ii.a7L ? this.a5w() : 9 === ik ? this.aIV() : this.i6(qf))
}, this.a5w = function() {
var eD, eZ = px;
for (this.rf = [0, 1, 2, 3, 4, 5, 6, 7, 8], eD = 0; eD < eZ; eD++) this.iM[eD] = aU.ii.a7L[eD]
}, this.aIU = function() {
for (var eD = this.rf.length - 1; 0 <= eD; eD--) this.rf[eD] = eD;
this.rn = [], this.ro = []
}, this.aIV = function() {
for (var eD = h1 + aM.a96 - 1; 0 <= eD; eD--) this.iM[eD] = 1;
for (eD = h1 + aM.a96; eD < ed; eD++) this.iM[eD] = 2;
this.rf[1] = 7, this.rf[2] = 8
}, this.i6 = function(qf) {
var ga = new Uint8Array(h1),
gb = new Uint8Array(h1),
aIW = new Uint16Array(8),
aIX = new Uint16Array(this.rf.length);
this.aIY(qf, ga, gb, aIW), this.a5u(aIW), im || this.aIZ(aIX, ga, gb), this.aIa(ga, gb, aIX), im ? this.aIb() : this.aIc()
}, this.aIY = function(qf, ga, gb, aId) {
for (var hi, dE, aIe, eZ = this.rf.length - 1, dl = new Uint16Array(eZ), eD = h1 - 1; 0 <= eD; eD--) {
for (hi = eZ; 1 <= hi; hi--) dl[hi - 1] = Math.abs(4 * qf[eD].a52[0] - aIT[hi][0]) + Math.abs(4 * qf[eD].a52[1] - aIT[hi][1]) + Math.abs(4 * qf[eD].a52[2] - aIT[hi][2]);
for (aIe = 768, hi = eZ - 1; 0 <= hi; hi--) dl[dE = (hi + eD) % eZ] < aIe && (aIe = dl[dE], ga[eD] = dE);
for (aId[ga[eD]] += 4, aIe = 768, hi = eZ - 1; 0 <= hi; hi--) dl[dE = (hi + eD) % eZ] < aIe && dE !== ga[eD] && (aIe = dl[dE], gb[eD] = dE);
aId[gb[eD]]++
}
}, this.a5u = function(aId) {
for (var hi, v2, eZ = this.rf.length - 1, eD = eZ; 0 <= eD; eD--) this.rf[eD] = eD;
for (eD = eZ - 1; 0 <= eD; eD--) aId[eD]++;
for (eD = 1; eD <= eZ; eD++) {
for (v2 = 0, hi = 1; hi < eZ; hi++) aId[hi] > aId[v2] && (v2 = hi);
aId[v2] = 0, this.rf[eD] = v2 + 1
}
}, this.aIZ = function(aIX, ga, gb) {
var eD, hi, aIf, iL, ei, dE, kH, tp, aIg = this.rf.length - 1,
aIh = new Uint16Array(aIg),
aIi = [],
xM = Math.max(h1 + 1 >> 1, 6);
loop: for (eD = 0; eD < h1; eD++)
if (null !== (aIf = aY.jk.uI(a0X[eD]))) {
for (hi = this.rn.length - 1; 0 <= hi; hi--)
if (aIf === this.rn[hi] && this.ro[hi].length < xM) {
this.ro[hi].push(eD);
continue loop
} this.rn.push(aIf), aIi.push(!1), this.ro.push([eD])
}
for (hi = this.rn.length - 1; 0 <= hi; hi--) {
for (ei = -1, iL = this.rn.length - 1; 0 <= iL; iL--) !aIi[iL] && (-1 === ei || this.ro[iL].length > this.ro[ei].length) && (ei = iL);
for (iL = aIg - 1; 0 <= iL; iL--) aIh[iL] = 1;
for (iL = this.ro[ei].length - 1; 0 <= iL; iL--) aIh[ga[this.ro[ei][iL]]] += 3, aIh[gb[this.ro[ei][iL]]]++;
for (eD = aIg - 1; 0 <= eD; eD--) {
for (dE = ei % aIg, iL = aIg - 1; 0 <= iL; iL--) aIh[iL] > aIh[dE] && (dE = iL);
for (kH = -1, iL = uV; 0 < iL; iL--)
if (this.rf[iL] === dE + 1) {
kH = iL;
break
} if (aIh[dE] = 0, -1 !== kH) {
for (tp = 0, iL = uV; 0 < iL; iL--) aIX[kH] > aIX[iL] && tp++;
if (tp !== uV - 1) {
for (iL = this.ro[ei].length - 1; 0 <= iL; iL--) aIX[kH]++, this.iM[this.ro[ei][iL]] = kH;
break
}
}
}
aIi[ei] = !0
}
}, this.aIa = function(ga, gb, aIX) {
for (var eD, gs, eZ = this.rf.length - 1, border = eR(h1, uV), aIj = (0 < h1 % uV && border++, new Uint8Array(1 + eZ)), hi = eZ; 1 <= hi; hi--) aIj[this.rf[hi]] = hi;
for (eD = 0; eD < h1; eD++) gs = aIj[ga[eD] + 1], 0 === this.iM[eD] && gs <= uV && aIX[gs] < border && (aIX[gs]++, this.iM[eD] = gs);
for (eD = 0; eD < h1; eD++) gs = aIj[gb[eD] + 1], 0 === this.iM[eD] && gs <= uV && aIX[gs] < border && (aIX[gs]++, this.iM[eD] = gs);
for (hi = uV; 1 <= hi; hi--)
for (eD = h1 - 1; 0 <= eD && !(aIX[hi] >= border); eD--) 0 === this.iM[eD] && (aIX[hi]++, this.iM[eD] = hi)
}, this.aIb = function() {
var eD, hZ, aId = new Uint16Array(uV);
for (aId[uV - 1] = ed, eD = uV - 2; 0 <= eD; eD--) aId[eD] = z.io[eD].wa;
for (aId[0]--, hZ = 0 === aId[0] ? 1 : 0, eD = h1; eD < ed; eD++) this.iM[eD] = hZ + 1, aId[hZ]--, aId[hZ] <= 0 && hZ++
}, this.aIc = function() {
for (var eD = h1; eD < ed; eD++) this.iM[eD] = 1 + eD % uV
}
}
function f0() {
for (var fI, fJ, eD = dz - 1; 0 <= eD; eD--) fI = eR(e1[eD], 4) % ap.e8, fJ = eR(e1[eD], 4 * ap.e8), hu[dv] = hu[dv] > fI ? fI : hu[dv], hx[dv] = hx[dv] > fJ ? fJ : hx[dv], ht[dv] = ht[dv] < fI ? fI : ht[dv], hw[dv] = hw[dv] < fJ ? fJ : hw[dv]
}
function eI() {
var ei, eg, eD, eZ = ea[dv].length;
loop: for (eD = eZ - 1; 0 <= eD; eD--) {
for (ei = 3; 0 <= ei; ei--)
if (eg = ea[dv][eD] + e4[ei], a2.el(eg) || a2.ej(eg) && a2.ek(eg) !== dv) {
a2.hW(ea[dv][eD], dv);
continue loop
} ea[dv][eD] = ea[dv][eZ - 1], ea[dv].pop(), eZ--
}
}
function eJ() {
var ei, eg, aIk, aIl, eZ = er[dv].length;
loop: for (var eD = eZ - 1; 0 <= eD; eD--) {
for (aIk = aIl = !1, ei = 3; 0 <= ei; ei--) {
if (eg = er[dv][eD] + e4[ei], a2.a65(eg, dv)) continue loop;
aIk = aIk || a2.fj(eg), aIl = aIl || a2.pb(eg)
}
aIk ? es[dv].push(er[dv][eD]) : aIl ? ev[dv].push(er[dv][eD]) : a2.qG(er[dv][eD], dv), er[dv][eD] = er[dv][eZ - 1], er[dv].pop(), eZ--
}
}
function ep() {
ez[dy] -= dz
}
function eq(border) {
for (var eZ = border.length, eD = eZ - 1; 0 <= eD; eD--) a2.qO(dy, border[eD]) || (border[eD] = border[eZ - 1], border.pop(), eZ--)
}
function et(border) {
for (var eZ = border.length, eD = eZ - 1; 0 <= eD; eD--) !a2.qO(dy, border[eD]) && a2.eb(border[eD]) && (border[eD] = border[eZ - 1], border.pop(), eZ--)
}
function eu(border) {
for (var ei, eg, eZ = border.length, eD = eZ - 1; 0 <= eD; eD--)
for (ei = 3; 0 <= ei; ei--)
if (eg = border[eD] + e4[ei], a2.a65(eg, dy)) {
er[dy].push(border[eD]), border[eD] = border[eZ - 1], border.pop(), eZ--;
break
}
}
function ew() {
for (var ei, eg, eD = dz - 1; 0 <= eD; eD--)
for (ei = 3; 0 <= ei; ei--) eg = e1[eD] + e4[ei], a2.a66(dy, eg) && a2.a67(eg) && (er[dy].push(eg), a2.ec(eg, dy))
}
function ex() {
var fI, fJ;
loop: for (; hx[dy] < hw[dy];) {
for (fI = ht[dy]; fI >= hu[dy]; fI--)
if (a2.qO(dy, 4 * (hx[dy] * ap.e8 + fI))) break loop;
hx[dy]++
}
loop: for (; hx[dy] < hw[dy];) {
for (fI = ht[dy]; fI >= hu[dy]; fI--)
if (a2.qO(dy, 4 * (hw[dy] * ap.e8 + fI))) break loop;
hw[dy]--
}
loop: for (; hu[dy] < ht[dy];) {
for (fJ = hw[dy]; fJ >= hx[dy]; fJ--)
if (a2.qO(dy, 4 * (fJ * ap.e8 + hu[dy]))) break loop;
hu[dy]++
}
loop: for (; hu[dy] < ht[dy];) {
for (fJ = hw[dy]; fJ >= hx[dy]; fJ--)
if (a2.qO(dy, 4 * (fJ * ap.e8 + ht[dy]))) break loop;
ht[dy]--
}
}
function fr(player, hS) {
return 0 === b4.iM[player] || b4.iM[player] !== b4.iM[hS]
}
function fp(player, hS) {
for (var dE, aIm = a4.eE(player), eD = 0; eD < aIm; eD++)
if (0 === a4.eF(player, eD))
if ((dE = a4.eK(player, eD)) === ed) {
if (hS === ed) return !1;
if (fn(hS)) return !0
} else if (hS === ed) {
if (fn(dE)) return !0
} else if (fs(hS, dE)) return !0;
return !1
}
function fn(player) {
for (var eD, eh, eZ = er[player].length, ei = 3; 0 <= ei; ei--)
for (eh = e4[ei], eD = 0; eD < eZ; eD++)
if (a2.el(er[player][eD] + eh)) return !0;
return !1
}
function fs(tw, tx) {
var eD, dZ, ei, eh, eg, aGe = er[tw].length,
aGf = er[tx].length;
for (aGf < aGe && (dZ = tw, tw = tx, tx = dZ, dZ = aGe, aGe = aGf, 0), ei = 3; 0 <= ei; ei--)
for (eh = e4[ei], eD = 0; eD < aGe; eD++)
if (eg = er[tw][eD] + eh, a2.ej(eg) && a2.ek(eg) === tx) return !0;
return !1
}
function aIn() {
this.i6 = function() {
l.i6(), w.i6(), aK.i6(), aN.iw.i6(), aJ.a3r(), b6.i6(), b8.a4E.i6(), b3.d1 && (b3.d1 = !1, x.gD())
}
}
function aIo() {
this.dY = b3.dY, this.fz = 0, this.aIp = 0, this.a3m = 0, this.aIq = null, this.aIr = 7, this.wq = 0, this.cq = function() {
this.a3m = 0, this.aIq = [], this.fz = 0, this.aIp = 0
}, this.aDN = function(mK) {
var eD;
if (fc) this.a1J(mK);
else if (this.aIq.push(mK), 2 === rS) {
for (eD = 0; eD < this.aIq.length; eD++) aW.lX.i6(this.aIq[eD]);
this.aIq = []
}
}, this.a1J = function(mK) {
aW.lX.i6(mK), aX.i6(), t.a1J(this.a3m), this.a3m === uW ? (mb.i6(), this.a3m = 0, this.fz = 0, this.aIp = 0, this.dY = b3.dY) : (this.a3m++, a6.uO(), a6.j6(!0), ay.a1Z())
}, this.i6 = function() {
aK.i6(), fc ? (b3.d1 = t.a1J(-1) || b3.d1, j7()) : (0 !== this.fz || b3.dY >= this.dY && (this.dY += b3.a1I * Math.floor(1 + (b3.dY - this.dY) / b3.a1I), 2 === rS ? iu() : this.aIs(), this.fz++, 27 < b3.dY - this.wq)) && this.aIt(), j3(),
b3.d1 && (b3.d1 = !1, qR()), this.wq = b3.dY
}, this.aIt = function() {
b3.d1 = !0, j5(), this.fz = 0
}, this.aIs = function() {
var aIu, eD;
if (this.aIp !== 7 * this.a3m) iz(), ay.a1Z();
else {
for (aIu = !1; this.aIv() && (aIu = !0, iz(), 0 < this.aIq.length);)
for (eD = this.aIr - 2; 0 <= eD; eD--) iz();
aIu ? ay.a1Z() : (iu(), ay.uR())
}
}, this.aIv = function() {
return 0 < this.aIq.length && (this.a3m++, aW.lX.i6(this.aIq[0]), this.aIq.shift(), !0)
}
}
function aIw() {
var aIx, aIy, aIz, a3m, aJ0, fz = 0,
dY = b3.dY;
function aJ3() {
! function() {
if (!fc) return;
if (im) return;
return aJ0 % 7 != 0 ? aJ0++ : a3m === uW ? (aJ6(), t.a1J(a3m), mb.i6()) : (aJ6(), aJ0++, a3m++, a6.uO(), a6.j6(!0)), 1
}() && (aJ6(), iz())
}
function aJ4() {
fz = 0, (fc ? (b3.d1 = t.a1J(a3m - (aJ0 % 7 == 0 ? 0 : 1) + aJ0 % 7 / 7) || b3.d1, j7) : j.fM || !aa.ve ? j7 : (b3.d1 = !0, j5))()
}
function aJ6() {
var eD, eZ, aJ7 = aX.mZ.aEA,
dm = aX.mZ.aEB,
dp = aX.mZ.aEC,
dr = aX.mZ.aED,
aJ8 = aX.mZ.aEE,
aJ9 = aX.mZ.aEF;
if (aIx >= aJ9.length) k.sR("Replay file smaller than expected."), ao.rD.rL(-1);
else if (aJ9 = aJ9[aIx], aJ8[aIx]) {
for (eZ = aIy + aJ9, eD = aIy; eD < eZ; eD++) aW.lX.mM(aJ7[eD], dm[eD], dp[eD], dr[eD]);
aIy += aJ9, aIx++
} else ++aIz >= aJ9 && (aIx++, aIz = 0)
}
this.aIp = 0, this.cq = function() {
aJ0 = a3m = aIz = aIy = aIx = 0
}, this.i6 = function() {
var aH2;
aK.i6(), aa.yn() < 1.7 ? 0 === fz ? b3.dY >= dY && (aH2 = b3.a1I / aa.yn(), dY += aH2 * Math.floor(1 + (b3.dY - dY) / aH2), 2 === rS || j.fM || !aa.ve ? iu() : (aJ3(), ay.a1Z()), fz++) : aJ4() : function() {
var aH2;
if (b3.dY >= dY)
if (2 === rS || j.fM || !aa.ve) iu(), dY = b3.dY;
else {
for (aH2 = b3.a1I / aa.yn(), 16 < (b3.dY - dY) / aH2 && (dY = b3.dY - 16 * aH2); b3.dY >= dY && 2 !== rS;) dY += aH2, aJ3();
ay.a1Z()
} aJ4()
}(), j3(), b3.d1 && (b3.d1 = !1, qR())
}, this.rZ = function() {
aIx !== aX.mZ.aEF.length && k.sR("Replay file larger than expected.")
}
}
function aJA() {
var fz = 0,
dY = b3.dY;
this.aIp = 0, this.i6 = function() {
aK.i6(), fc ? j7() : 0 === fz ? b3.dY >= dY && (dY += b3.a1I * Math.floor(1 + (b3.dY - dY) / b3.a1I), 2 === rS || j.fM ? iu() : (iz(), ay.a1Z()), fz++) : ((j.fM ? j7 : (b3.d1 = !0, j5))(), fz = 0), j3(), b3.d1 && (b3.d1 = !1, qR())
}
}
function ck() {
this.rY = null, this.d1 = !1, this.dY = 0, this.a1I = 56;
var aJB = 0;
function aJC() {
b3.dY = aJB = performance.now(), b3.rY.i6(), window.requestAnimationFrame(aJC)
}
this.cq = function() {
this.uq(), window.requestAnimationFrame(aJC), this.dY = performance.now()
}, this.um = function() {
fL ? (this.rY = new aIw, this.rY.cq()) : im ? this.rY = new aJA : (this.rY = new aIo, this.rY.cq())
}, this.uq = function() {
this.rY = new aIn, this.d1 = !0
}, this.i6 = function() {
this.rY.aIp++
}, this.iK = function() {
return this.rY.aIp
}, this.aD6 = function() {
var dZ = performance.now();
dZ < aJB + 1e3 || (this.dY = dZ, this.rY.i6())
}
}
function cA() {
var jy = 0,
aJD = !0;
function aJF(fy) {
8 !== x.s1() || 2 !== h3[eU] && (0 !== h2[eU] || fc) || k.wV(fy)
}
this.i6 = function() {
var dZ, wt;
b3.dY > jy && (jy = b3.dY + 2500, dZ = new Date, wt = dZ.getUTCSeconds(), aJD ? wt < 45 && (aJD = !1) : wt < 45 || (aJD = !0, (wt = dZ.getUTCMinutes() + 1) % 15 == 0 && aJF(30 === wt ? "Upcoming Battle Royale Contest!" :
"Upcoming Alliance Contest!")))
}
}
function c2() {
var jc, jd, je, jf, aJG = 0,
aJH = 0;
function aJJ() {
return Math.pow(Math.pow(je - jc, 2) + Math.pow(jf - jd, 2), .5)
}
function aJI(dE) {
jc = aK.nH * dE.touches[0].clientX, jd = aK.nH * dE.touches[0].clientY, je = aK.nH * dE.touches[1].clientX, jf = aK.nH * dE.touches[1].clientY
}
this.so = function(dE) {
return 1 < dE.touches.length ? (aJH = b3.dY, aJG = 3, aJI(dE), i.o3(), !0) : (aJG = 0, !1)
}, this.sp = function(dE) {
var aA1, gq, gr;
return 0 !== rS && 1 < dE.touches.length && (aJG = Math.max(aJG - 1, 0), f.kM() && (aA1 = aJJ(), aJI(dE), dE = aJJ(), gq = Math.floor((jc + je) / 2), gr = Math.floor((jd + jf) / 2), p.zD(gq, gr, Math.max(.125, dE) / Math.max(.125, aA1)),
b3.d1 = !0), !0)
}, this.tD = function() {
var fI, fJ;
return !!(aJG && (aJG = 0, b3.dY < aJH + 500)) && (fI = (jc + je) / 2, fJ = (jd + jf) / 2, i.t6(fI, fJ), i.click(fI, fJ, !0) && (b3.d1 = !0), !0)
}
}
function cK() {
this.size = 0, this.fz = 0, this.mK = null, this.cq = function(mK) {
this.fz = 0, this.mK = mK, this.size = mK.length
}, this.sW = function() {
this.mK = null
}, this.mL = function(size) {
for (var db = 0, mK = this.mK, kM = this.fz + size - 1, eD = this.fz; eD <= kM; eD++) db |= (mK[eD >> 3] >> 7 - (7 & eD) & 1) << kM - eD;
return this.fz += size, this.fz > 8 * this.size && console.log("error unwrapper"), db
}, this.aDU = function(size) {
var hi = size >> 1;
return (1 << hi) * this.mL(size - hi) + this.mL(hi)
}, this.aJK = function(size) {
for (var dl = new Array(size), eD = 0; eD < size; eD++) dl[eD] = this.mL(10);
return h.p9(dl)
}, this.aDT = function(aEa) {
return this.size === ab.aJL(aEa)
}
}
function cf() {
this.aFN = 0, this.aFO = 0, this.aFJ = 0, this.aFK = 0, this.aFL = 0, this.aFM = 0, this.a1a = [0, 0, 0, 0], this.kL = function() {
this.aFN = p.jg(), this.aFO = p.gC(), this.aFJ = -this.aFN, this.aFK = -this.aFO, this.aFL = aK.g5 / h7, this.aFM = aK.gA / h7, this.a1a[0] = Math.floor(this.aFJ), this.a1a[1] = Math.floor(this.aFK), this.a1a[2] = Math.floor(this.a1a[0] +
this.aFL + 1), this.a1a[3] = Math.floor(this.a1a[1] + this.aFM + 1), ay.a1X = !0
}
}
function c3() {
var xu, jy;
this.cq = function() {
xu = 1, jy = 0
}, this.i6 = function() {
0 < xu && (jy = 0 === jy ? b3.dY + 16 : jy, xu = (xu -= .001 * (b3.dY - jy)) < 0 ? 0 : xu, jy = b3.dY, b3.d1 = !0)
}, this.gD = function() {
0 < xu && (gE.fillStyle = "rgba(0,0,0," + xu + ")", gE.fillRect(0, 0, aK.g5, aK.gA))
}
}
function c6() {
function aJP(map, fI, fJ, g5, gA) {
map >= ap.a7F || (ap.pl === map && (gE.fillStyle = aZ.lC, gE.fillRect(fI, fJ, g5, gA), gE.fillStyle = aZ.gF), gE.strokeRect(fI, fJ, g5, gA), gE.fillText(ap.ii.pk[map].name, Math.floor(fI + .5 * g5), Math.floor(fJ + .55 * gA)))
}
this.t8 = !1, this.a4s = [0, 0, 0, 0], this.show = function() {
this.t8 = !0, this.resize(), b3.d1 = !0
}, this.resize = function() {
var aGe = eR(ap.a7F + ap.a7F % 2, 2),
aGe = aK.gA - aGe * b0.gap;
b7.cv.fv() ? this.a4s[2] = Math.floor(.75 * aK.min) : this.a4s[2] = Math.floor(.5 * aK.min), this.a4s[3] = Math.floor(1.25 * this.a4s[2]), this.a4s[3] > aGe && (this.a4s[3] = aGe, this.a4s[2] = Math.floor(aGe / 1.2)), this.a4s[0] = Math
.floor((aK.g5 - this.a4s[2]) / 2), this.a4s[1] = Math.floor((aK.gA - this.a4s[3]) / 2)
}, this.sk = function(fI, fJ) {
return !(fI < this.a4s[0] || fJ < this.a4s[1] || fI > this.a4s[0] + this.a4s[2] || fJ > this.a4s[1] + this.a4s[3])
}, this.fQ = function(fI, fJ) {
var xM, aGe = eR(ap.a7F + ap.a7F % 2, 2);
return b3.d1 = !0, fI < this.a4s[0] || fJ < this.a4s[1] || fI > this.a4s[0] + this.a4s[2] || fJ > this.a4s[1] + this.a4s[3] ? !(this.t8 = !1) : (xM = Math.floor(.17 * this.a4s[3]), fJ < this.a4s[1] + xM ? fI > this.a4s[0] + this.a4s[2] -
xM && (this.t8 = !1) : (fJ = (fJ = Math.floor(aGe * (fJ - this.a4s[1] - xM - .00576 * aK.fw) / (this.a4s[3] - xM - .01152 * aK.fw))) < 0 ? 0 : aGe - 1 < fJ ? aGe - 1 : fJ, fI > this.a4s[0] + this.a4s[2] / 2 && (fJ += aGe), fJ >=
ap.a7F || ap.d2(fJ, Math.floor(16384 * Math.random()))), !0)
}, this.gD = function() {
var eD, jd, xM = Math.floor(.17 * this.a4s[3]),
aGe = eR(ap.a7F + ap.a7F % 2, 2),
gap = .6 * .01152 * aK.fw,
a56 = (this.a4s[3] - xM - (aGe + 1) * gap) / aGe,
qb = Math.floor((this.a4s[2] - 3 * gap) / 2);
for (gE.lineWidth = b0.ur, aY.g0.textAlign(gE, 1), aY.g0.textBaseline(gE, 1), gE.fillStyle = aZ.ka, gE.fillRect(this.a4s[0], this.a4s[1] + xM, this.a4s[2], this.a4s[3] - xM), gE.fillStyle = aZ.lC, gE.fillRect(this.a4s[0], this.a4s[1],
this.a4s[2], xM), gE.strokeStyle = aZ.gF, gE.strokeRect(this.a4s[0], this.a4s[1], this.a4s[2], this.a4s[3]), gE.fillStyle = aZ.gF, gE.fillRect(this.a4s[0], this.a4s[1] + xM, this.a4s[2], 2), gE.font = aY.g0.g1(1, .48 * xM), gE
.fillText("Maps", Math.floor(this.a4s[0] + this.a4s[2] / 2), Math.floor(this.a4s[1] + .55 * xM)), gE.font = aY.g0.g1(1, .48 * a56), eD = aGe - 1; 0 <= eD; eD--) jd = Math.floor(this.a4s[1] + xM + gap + eD * (a56 + gap)), aJP(eD, this
.a4s[0] + gap, jd, qb, a56), aJP(eD + aGe, this.a4s[0] + qb + 2 * gap, jd, qb, a56);
j.vl(Math.floor(this.a4s[0] + this.a4s[2] - .7 * xM), Math.floor(this.a4s[1] + .3 * xM), Math.floor(.4 * xM)), gE.setTransform(1, 0, 0, 1, 0, 0)
}
}
function cJ() {
this.size = 0, this.fz = 0, this.mK = null, this.cq = function(mK) {
this.fz = 0, this.mK = mK, this.size = mK.length
}, this.d2 = function(aEa) {
return this.cq(new Uint8Array(this.aJL(aEa))), this.mK
}, this.sW = function() {
this.mK = null
}, this.p4 = function(size, wv) {
for (var mK = this.mK, kM = this.fz + size - 1, eD = this.fz; eD <= kM; eD++) mK[eD >> 3] |= (wv >> kM - eD & 1) << 7 - (7 & eD);
this.fz += size, this.fz > 8 * this.size && console.log("error wrapper")
}, this.aJQ = function(size, wv) {
var hi = size >> 1,
ei = 1 << hi;
this.p4(size - hi, ai.fE(wv, ei)), this.p4(hi, wv % ei)
}, this.aJR = function(size) {
for (var mK = this.mK, kM = this.fz + size, eD = this.fz; eD < kM; eD++) mK[eD >> 3] &= 255 ^ 128 >>> (7 & eD)
}, this.aJL = function(aEa) {
return aEa + 7 >> 3
}, this.aJS = function(dl, hb, kM, aJT) {
for (var eD = hb; eD < kM; eD++) this.p4(aJT, dl[eD])
}
}
setTimeout(bD, 1e4), window.onload = function() {
bD()
};