Advertisement
Guest User

ss

a guest
Jun 26th, 2019
154
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ! function(e) {
  2.     var t = {};
  3.  
  4.     function n(i) {
  5.         if (t[i]) return t[i].exports;
  6.         var o = t[i] = {
  7.             i: i,
  8.             l: !1,
  9.             exports: {}
  10.         };
  11.         return e[i].call(o.exports, o, o.exports, n), o.l = !0, o.exports
  12.     }
  13.     n.m = e, n.c = t, n.d = function(e, t, i) {
  14.         n.o(e, t) || Object.defineProperty(e, t, {
  15.             enumerable: !0,
  16.             get: i
  17.         })
  18.     }, n.r = function(e) {
  19.         "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, {
  20.             value: "Module"
  21.         }), Object.defineProperty(e, "__esModule", {
  22.             value: !0
  23.         })
  24.     }, n.t = function(e, t) {
  25.         if (1 & t && (e = n(e)), 8 & t) return e;
  26.         if (4 & t && "object" == typeof e && e && e.__esModule) return e;
  27.         var i = Object.create(null);
  28.         if (n.r(i), Object.defineProperty(i, "default", {
  29.                 enumerable: !0,
  30.                 value: e
  31.             }), 2 & t && "string" != typeof e)
  32.             for (var o in e) n.d(i, o, function(t) {
  33.                 return e[t]
  34.             }.bind(null, o));
  35.         return i
  36.     }, n.n = function(e) {
  37.         var t = e && e.__esModule ? function() {
  38.             return e.default
  39.         } : function() {
  40.             return e
  41.         };
  42.         return n.d(t, "a", t), t
  43.     }, n.o = function(e, t) {
  44.         return Object.prototype.hasOwnProperty.call(e, t)
  45.     }, n.p = "", n(n.s = 171)
  46. }([function(e, t, n) {
  47.     "use strict";
  48.     t.__esModule = !0, t.default = function(e, t) {
  49.         if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
  50.     }
  51. }, function(e, t, n) {
  52.     "use strict";
  53.     t.__esModule = !0;
  54.     var i = function(e) {
  55.         return e && e.__esModule ? e : {
  56.             default: e
  57.         }
  58.     }(n(148));
  59.     t.default = function() {
  60.         function e(e, t) {
  61.             for (var n = 0; n < t.length; n++) {
  62.                 var o = t[n];
  63.                 o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), (0, i.default)(e, o.key, o)
  64.             }
  65.         }
  66.         return function(t, n, i) {
  67.             return n && e(t.prototype, n), i && e(t, i), t
  68.         }
  69.     }()
  70. }, function(e, t) {
  71.     var n = e.exports = {
  72.         version: "2.5.7"
  73.     };
  74.     "number" == typeof __e && (__e = n)
  75. }, function(e, t) {
  76.     var n = e.exports = "undefined" != typeof window && window.Math == Math ? window : "undefined" != typeof self && self.Math == Math ? self : Function("return this")();
  77.     "number" == typeof __g && (__g = n)
  78. }, function(e, t, n) {
  79.     var i = n(64)("wks"),
  80.         o = n(35),
  81.         a = n(3).Symbol,
  82.         r = "function" == typeof a;
  83.     (e.exports = function(e) {
  84.         return i[e] || (i[e] = r && a[e] || (r ? a : o)("Symbol." + e))
  85.     }).store = i
  86. }, function(e, t, n) {
  87.     var i = n(3),
  88.         o = n(2),
  89.         a = n(10),
  90.         r = n(11),
  91.         s = n(19),
  92.         l = function(e, t, n) {
  93.             var c, u, d, h = e & l.F,
  94.                 f = e & l.G,
  95.                 m = e & l.S,
  96.                 g = e & l.P,
  97.                 p = e & l.B,
  98.                 v = e & l.W,
  99.                 y = f ? o : o[t] || (o[t] = {}),
  100.                 k = y.prototype,
  101.                 S = f ? i : m ? i[t] : (i[t] || {}).prototype;
  102.             for (c in f && (n = t), n)(u = !h && S && void 0 !== S[c]) && s(y, c) || (d = u ? S[c] : n[c], y[c] = f && "function" != typeof S[c] ? n[c] : p && u ? a(d, i) : v && S[c] == d ? function(e) {
  103.                 var t = function(t, n, i) {
  104.                     if (this instanceof e) {
  105.                         switch (arguments.length) {
  106.                             case 0:
  107.                                 return new e;
  108.                             case 1:
  109.                                 return new e(t);
  110.                             case 2:
  111.                                 return new e(t, n)
  112.                         }
  113.                         return new e(t, n, i)
  114.                     }
  115.                     return e.apply(this, arguments)
  116.                 };
  117.                 return t.prototype = e.prototype, t
  118.             }(d) : g && "function" == typeof d ? a(Function.call, d) : d, g && ((y.virtual || (y.virtual = {}))[c] = d, e & l.R && k && !k[c] && r(k, c, d)))
  119.         };
  120.     l.F = 1, l.G = 2, l.S = 4, l.P = 8, l.B = 16, l.W = 32, l.U = 64, l.R = 128, e.exports = l
  121. }, function(e, t) {
  122.     e.exports = function(e) {
  123.         return "object" == typeof e ? null !== e : "function" == typeof e
  124.     }
  125. }, function(e, t, n) {
  126.     var i = n(9),
  127.         o = n(168),
  128.         a = n(167),
  129.         r = Object.defineProperty;
  130.     t.f = n(8) ? Object.defineProperty : function(e, t, n) {
  131.         if (i(e), t = a(t, !0), i(n), o) try {
  132.             return r(e, t, n)
  133.         } catch (e) {}
  134.         if ("get" in n || "set" in n) throw TypeError("Accessors not supported!");
  135.         return "value" in n && (e[t] = n.value), e
  136.     }
  137. }, function(e, t, n) {
  138.     e.exports = !n(27)(function() {
  139.         return 7 != Object.defineProperty({}, "a", {
  140.             get: function() {
  141.                 return 7
  142.             }
  143.         }).a
  144.     })
  145. }, function(e, t, n) {
  146.     var i = n(6);
  147.     e.exports = function(e) {
  148.         if (!i(e)) throw TypeError(e + " is not an object!");
  149.         return e
  150.     }
  151. }, function(e, t, n) {
  152.     var i = n(20);
  153.     e.exports = function(e, t, n) {
  154.         if (i(e), void 0 === t) return e;
  155.         switch (n) {
  156.             case 1:
  157.                 return function(n) {
  158.                     return e.call(t, n)
  159.                 };
  160.             case 2:
  161.                 return function(n, i) {
  162.                     return e.call(t, n, i)
  163.                 };
  164.             case 3:
  165.                 return function(n, i, o) {
  166.                     return e.call(t, n, i, o)
  167.                 }
  168.         }
  169.         return function() {
  170.             return e.apply(t, arguments)
  171.         }
  172.     }
  173. }, function(e, t, n) {
  174.     var i = n(7),
  175.         o = n(38);
  176.     e.exports = n(8) ? function(e, t, n) {
  177.         return i.f(e, t, o(1, n))
  178.     } : function(e, t, n) {
  179.         return e[t] = n, e
  180.     }
  181. }, function(e, t, n) {
  182.     e.exports = {
  183.         default: n(126),
  184.         __esModule: !0
  185.     }
  186. }, function(e, t, n) {
  187.     e.exports = {
  188.         default: n(136),
  189.         __esModule: !0
  190.     }
  191. }, function(e, t, n) {
  192.     "use strict";
  193.     t.__esModule = !0;
  194.     var i = function(e) {
  195.         return e && e.__esModule ? e : {
  196.             default: e
  197.         }
  198.     }(n(22));
  199.     t.default = function(e) {
  200.         return function() {
  201.             var t = e.apply(this, arguments);
  202.             return new i.default(function(e, n) {
  203.                 return function o(a, r) {
  204.                     try {
  205.                         var s = t[a](r),
  206.                             l = s.value
  207.                     } catch (e) {
  208.                         return void n(e)
  209.                     }
  210.                     if (!s.done) return i.default.resolve(l).then(function(e) {
  211.                         o("next", e)
  212.                     }, function(e) {
  213.                         o("throw", e)
  214.                     });
  215.                     e(l)
  216.                 }("next")
  217.             })
  218.         }
  219.     }
  220. }, function(e, t, n) {
  221.     e.exports = n(150)
  222. }, function(e, t, n) {
  223.     var i = n(10),
  224.         o = n(60),
  225.         a = n(59),
  226.         r = n(9),
  227.         s = n(26),
  228.         l = n(31),
  229.         c = {},
  230.         u = {};
  231.     (t = e.exports = function(e, t, n, d, h) {
  232.         var f, m, g, p, v = h ? function() {
  233.                 return e
  234.             } : l(e),
  235.             y = i(n, d, t ? 2 : 1),
  236.             k = 0;
  237.         if ("function" != typeof v) throw TypeError(e + " is not iterable!");
  238.         if (a(v)) {
  239.             for (f = s(e.length); f > k; k++)
  240.                 if ((p = t ? y(r(m = e[k])[0], m[1]) : y(e[k])) === c || p === u) return p
  241.         } else
  242.             for (g = v.call(e); !(m = g.next()).done;)
  243.                 if ((p = o(g, y, m.value, t)) === c || p === u) return p
  244.     }).BREAK = c, t.RETURN = u
  245. }, function(e, t) {
  246.     var n = {}.toString;
  247.     e.exports = function(e) {
  248.         return n.call(e).slice(8, -1)
  249.     }
  250. }, function(e, t) {
  251.     e.exports = {}
  252. }, function(e, t) {
  253.     var n = {}.hasOwnProperty;
  254.     e.exports = function(e, t) {
  255.         return n.call(e, t)
  256.     }
  257. }, function(e, t) {
  258.     e.exports = function(e) {
  259.         if ("function" != typeof e) throw TypeError(e + " is not a function!");
  260.         return e
  261.     }
  262. }, function(e, t, n) {
  263.     "use strict";
  264.     var i = n(169)(!0);
  265.     n(41)(String, "String", function(e) {
  266.         this._t = String(e), this._i = 0
  267.     }, function() {
  268.         var e, t = this._t,
  269.             n = this._i;
  270.         return n >= t.length ? {
  271.             value: void 0,
  272.             done: !0
  273.         } : (e = i(t, n), this._i += e.length, {
  274.             value: e,
  275.             done: !1
  276.         })
  277.     })
  278. }, function(e, t, n) {
  279.     e.exports = {
  280.         default: n(170),
  281.         __esModule: !0
  282.     }
  283. }, function(e, t, n) {
  284.     e.exports = {
  285.         default: n(114),
  286.         __esModule: !0
  287.     }
  288. }, function(e, t, n) {
  289.     n(158);
  290.     for (var i = n(3), o = n(11), a = n(18), r = n(4)("toStringTag"), s = "CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","), l = 0; l < s.length; l++) {
  291.         var c = s[l],
  292.             u = i[c],
  293.             d = u && u.prototype;
  294.         d && !d[r] && o(d, r, c), a[c] = a.Array
  295.     }
  296. }, function(e, t, n) {
  297.     var i = n(7).f,
  298.         o = n(19),
  299.         a = n(4)("toStringTag");
  300.     e.exports = function(e, t, n) {
  301.         e && !o(e = n ? e : e.prototype, a) && i(e, a, {
  302.             configurable: !0,
  303.             value: t
  304.         })
  305.     }
  306. }, function(e, t, n) {
  307.     var i = n(43),
  308.         o = Math.min;
  309.     e.exports = function(e) {
  310.         return e > 0 ? o(i(e), 9007199254740991) : 0
  311.     }
  312. }, function(e, t) {
  313.     e.exports = function(e) {
  314.         try {
  315.             return !!e()
  316.         } catch (e) {
  317.             return !0
  318.         }
  319.     }
  320. }, function(e, t, n) {
  321.     var i = n(6);
  322.     e.exports = function(e, t) {
  323.         if (!i(e) || e._t !== t) throw TypeError("Incompatible receiver, " + t + " required!");
  324.         return e
  325.     }
  326. }, function(e, t, n) {
  327.     var i = n(11);
  328.     e.exports = function(e, t, n) {
  329.         for (var o in t) n && e[o] ? e[o] = t[o] : i(e, o, t[o]);
  330.         return e
  331.     }
  332. }, function(e, t, n) {
  333.     "use strict";
  334.     var i = n(20);
  335.     e.exports.f = function(e) {
  336.         return new function(e) {
  337.             var t, n;
  338.             this.promise = new e(function(e, i) {
  339.                 if (void 0 !== t || void 0 !== n) throw TypeError("Bad Promise constructor");
  340.                 t = e, n = i
  341.             }), this.resolve = i(t), this.reject = i(n)
  342.         }(e)
  343.     }
  344. }, function(e, t, n) {
  345.     var i = n(33),
  346.         o = n(4)("iterator"),
  347.         a = n(18);
  348.     e.exports = n(2).getIteratorMethod = function(e) {
  349.         if (void 0 != e) return e[o] || e["@@iterator"] || a[i(e)]
  350.     }
  351. }, function(e, t) {
  352.     e.exports = function(e, t, n, i) {
  353.         if (!(e instanceof t) || void 0 !== i && i in e) throw TypeError(n + ": incorrect invocation!");
  354.         return e
  355.     }
  356. }, function(e, t, n) {
  357.     var i = n(17),
  358.         o = n(4)("toStringTag"),
  359.         a = "Arguments" == i(function() {
  360.             return arguments
  361.         }());
  362.     e.exports = function(e) {
  363.         var t, n, r;
  364.         return void 0 === e ? "Undefined" : null === e ? "Null" : "string" == typeof(n = function(e, t) {
  365.             try {
  366.                 return e[t]
  367.             } catch (e) {}
  368.         }(t = Object(e), o)) ? n : a ? i(t) : "Object" == (r = i(t)) && "function" == typeof t.callee ? "Arguments" : r
  369.     }
  370. }, function(e, t, n) {
  371.     var i = n(42);
  372.     e.exports = function(e) {
  373.         return Object(i(e))
  374.     }
  375. }, function(e, t) {
  376.     var n = 0,
  377.         i = Math.random();
  378.     e.exports = function(e) {
  379.         return "Symbol(".concat(void 0 === e ? "" : e, ")_", (++n + i).toString(36))
  380.     }
  381. }, function(e, t, n) {
  382.     var i = n(64)("keys"),
  383.         o = n(35);
  384.     e.exports = function(e) {
  385.         return i[e] || (i[e] = o(e))
  386.     }
  387. }, function(e, t, n) {
  388.     var i = n(65),
  389.         o = n(42);
  390.     e.exports = function(e) {
  391.         return i(o(e))
  392.     }
  393. }, function(e, t) {
  394.     e.exports = function(e, t) {
  395.         return {
  396.             enumerable: !(1 & e),
  397.             configurable: !(2 & e),
  398.             writable: !(4 & e),
  399.             value: t
  400.         }
  401.     }
  402. }, function(e, t, n) {
  403.     var i = n(6),
  404.         o = n(3).document,
  405.         a = i(o) && i(o.createElement);
  406.     e.exports = function(e) {
  407.         return a ? o.createElement(e) : {}
  408.     }
  409. }, function(e, t) {
  410.     e.exports = !0
  411. }, function(e, t, n) {
  412.     "use strict";
  413.     var i = n(40),
  414.         o = n(5),
  415.         a = n(166),
  416.         r = n(11),
  417.         s = n(18),
  418.         l = n(165),
  419.         c = n(25),
  420.         u = n(159),
  421.         d = n(4)("iterator"),
  422.         h = !([].keys && "next" in [].keys()),
  423.         f = function() {
  424.             return this
  425.         };
  426.     e.exports = function(e, t, n, m, g, p, v) {
  427.         l(n, t, m);
  428.         var y, k, S, C = function(e) {
  429.                 if (!h && e in M) return M[e];
  430.                 switch (e) {
  431.                     case "keys":
  432.                     case "values":
  433.                         return function() {
  434.                             return new n(this, e)
  435.                         }
  436.                 }
  437.                 return function() {
  438.                     return new n(this, e)
  439.                 }
  440.             },
  441.             w = t + " Iterator",
  442.             b = "values" == g,
  443.             x = !1,
  444.             M = e.prototype,
  445.             _ = M[d] || M["@@iterator"] || g && M[g],
  446.             T = _ || C(g),
  447.             L = g ? b ? C("entries") : T : void 0,
  448.             P = "Array" == t && M.entries || _;
  449.         if (P && (S = u(P.call(new e))) !== Object.prototype && S.next && (c(S, w, !0), i || "function" == typeof S[d] || r(S, d, f)), b && _ && "values" !== _.name && (x = !0, T = function() {
  450.                 return _.call(this)
  451.             }), i && !v || !h && !x && M[d] || r(M, d, T), s[t] = T, s[w] = f, g)
  452.             if (y = {
  453.                     values: b ? T : C("values"),
  454.                     keys: p ? T : C("keys"),
  455.                     entries: L
  456.                 }, v)
  457.                 for (k in y) k in M || a(M, k, y[k]);
  458.             else o(o.P + o.F * (h || x), t, y);
  459.         return y
  460.     }
  461. }, function(e, t) {
  462.     e.exports = function(e) {
  463.         if (void 0 == e) throw TypeError("Can't call method on  " + e);
  464.         return e
  465.     }
  466. }, function(e, t) {
  467.     var n = Math.ceil,
  468.         i = Math.floor;
  469.     e.exports = function(e) {
  470.         return isNaN(e = +e) ? 0 : (e > 0 ? i : n)(e)
  471.     }
  472. }, function(e, t) {}, function(e, t, n) {
  473.     e.exports = {
  474.         default: n(93),
  475.         __esModule: !0
  476.     }
  477. }, function(e, t, n) {
  478.     "use strict";
  479.     var i = r(n(45)),
  480.         o = r(n(0)),
  481.         a = r(n(1));
  482.  
  483.     function r(e) {
  484.         return e && e.__esModule ? e : {
  485.             default: e
  486.         }
  487.     }
  488.     e.exports = function() {
  489.         function e() {
  490.             (0, o.default)(this, e)
  491.         }
  492.         return (0, a.default)(e, null, [{
  493.             key: "init",
  494.             value: function() {
  495.                 this.prefix = "CellzPlusV6-", this.oldPrefix = "CellzPlusV2-", this.reset()
  496.             }
  497.         }, {
  498.             key: "get",
  499.             value: function(e, t) {
  500.                 var n = JSON.parse(localStorage.getItem(this.prefix + e));
  501.                 return null !== n && void 0 !== n[t] && n[t]
  502.             }
  503.         }, {
  504.             key: "set",
  505.             value: function(e, t, n) {
  506.                 var o = JSON.parse(localStorage.getItem(this.prefix + e));
  507.                 null === o && (o = {}), o[t] = n, localStorage.setItem(this.prefix + e, (0, i.default)(o))
  508.             }
  509.         }, {
  510.             key: "reset",
  511.             value: function() {
  512.                 if (!this.get("extras", "resetted")) {
  513.                     for (var e in localStorage) e.substring(0, 5) === this.oldPrefix && localStorage.removeItem(e);
  514.                     this.set("extras", "resetted", !0)
  515.                 }
  516.             }
  517.         }]), e
  518.     }()
  519. }, function(e, t, n) {
  520.     "use strict";
  521.     var i = n(5),
  522.         o = n(20),
  523.         a = n(10),
  524.         r = n(16);
  525.     e.exports = function(e) {
  526.         i(i.S, e, {
  527.             from: function(e) {
  528.                 var t, n, i, s, l = arguments[1];
  529.                 return o(this), (t = void 0 !== l) && o(l), void 0 == e ? new this : (n = [], t ? (i = 0, s = a(l, arguments[2], 2), r(e, !1, function(e) {
  530.                     n.push(s(e, i++))
  531.                 })) : r(e, !1, n.push, n), new this(n))
  532.             }
  533.         })
  534.     }
  535. }, function(e, t, n) {
  536.     "use strict";
  537.     var i = n(5);
  538.     e.exports = function(e) {
  539.         i(i.S, e, {
  540.             of: function() {
  541.                 for (var e = arguments.length, t = new Array(e); e--;) t[e] = arguments[e];
  542.                 return new this(t)
  543.             }
  544.         })
  545.     }
  546. }, function(e, t, n) {
  547.     var i = n(33),
  548.         o = n(129);
  549.     e.exports = function(e) {
  550.         return function() {
  551.             if (i(this) != e) throw TypeError(e + "#toJSON isn't generic");
  552.             return o(this)
  553.         }
  554.     }
  555. }, function(e, t, n) {
  556.     "use strict";
  557.     var i = n(3),
  558.         o = n(5),
  559.         a = n(51),
  560.         r = n(27),
  561.         s = n(11),
  562.         l = n(29),
  563.         c = n(16),
  564.         u = n(32),
  565.         d = n(6),
  566.         h = n(25),
  567.         f = n(7).f,
  568.         m = n(134)(0),
  569.         g = n(8);
  570.     e.exports = function(e, t, n, p, v, y) {
  571.         var k = i[e],
  572.             S = k,
  573.             C = v ? "set" : "add",
  574.             w = S && S.prototype,
  575.             b = {};
  576.         return g && "function" == typeof S && (y || w.forEach && !r(function() {
  577.             (new S).entries().next()
  578.         })) ? (S = t(function(t, n) {
  579.             u(t, S, e, "_c"), t._c = new k, void 0 != n && c(n, v, t[C], t)
  580.         }), m("add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON".split(","), function(e) {
  581.             var t = "add" == e || "set" == e;
  582.             e in w && (!y || "clear" != e) && s(S.prototype, e, function(n, i) {
  583.                 if (u(this, S, e), !t && y && !d(n)) return "get" == e && void 0;
  584.                 var o = this._c[e](0 === n ? 0 : n, i);
  585.                 return t ? this : o
  586.             })
  587.         }), y || f(S.prototype, "size", {
  588.             get: function() {
  589.                 return this._c.size
  590.             }
  591.         })) : (S = p.getConstructor(t, e, v, C), l(S.prototype, n), a.NEED = !0), h(S, e), b[e] = S, o(o.G + o.W + o.F, b), y || p.setStrong(S, e, v), S
  592.     }
  593. }, function(e, t, n) {
  594.     var i = n(35)("meta"),
  595.         o = n(6),
  596.         a = n(19),
  597.         r = n(7).f,
  598.         s = 0,
  599.         l = Object.isExtensible || function() {
  600.             return !0
  601.         },
  602.         c = !n(27)(function() {
  603.             return l(Object.preventExtensions({}))
  604.         }),
  605.         u = function(e) {
  606.             r(e, i, {
  607.                 value: {
  608.                     i: "O" + ++s,
  609.                     w: {}
  610.                 }
  611.             })
  612.         },
  613.         d = e.exports = {
  614.             KEY: i,
  615.             NEED: !1,
  616.             fastKey: function(e, t) {
  617.                 if (!o(e)) return "symbol" == typeof e ? e : ("string" == typeof e ? "S" : "P") + e;
  618.                 if (!a(e, i)) {
  619.                     if (!l(e)) return "F";
  620.                     if (!t) return "E";
  621.                     u(e)
  622.                 }
  623.                 return e[i].i
  624.             },
  625.             getWeak: function(e, t) {
  626.                 if (!a(e, i)) {
  627.                     if (!l(e)) return !0;
  628.                     if (!t) return !1;
  629.                     u(e)
  630.                 }
  631.                 return e[i].w
  632.             },
  633.             onFreeze: function(e) {
  634.                 return c && d.NEED && l(e) && !a(e, i) && u(e), e
  635.             }
  636.         }
  637. }, function(e, t, n) {
  638.     "use strict";
  639.     var i = n(7).f,
  640.         o = n(66),
  641.         a = n(29),
  642.         r = n(10),
  643.         s = n(32),
  644.         l = n(16),
  645.         c = n(41),
  646.         u = n(61),
  647.         d = n(54),
  648.         h = n(8),
  649.         f = n(51).fastKey,
  650.         m = n(28),
  651.         g = h ? "_s" : "size",
  652.         p = function(e, t) {
  653.             var n, i = f(t);
  654.             if ("F" !== i) return e._i[i];
  655.             for (n = e._f; n; n = n.n)
  656.                 if (n.k == t) return n
  657.         };
  658.     e.exports = {
  659.         getConstructor: function(e, t, n, c) {
  660.             var u = e(function(e, i) {
  661.                 s(e, u, t, "_i"), e._t = t, e._i = o(null), e._f = void 0, e._l = void 0, e[g] = 0, void 0 != i && l(i, n, e[c], e)
  662.             });
  663.             return a(u.prototype, {
  664.                 clear: function() {
  665.                     for (var e = m(this, t), n = e._i, i = e._f; i; i = i.n) i.r = !0, i.p && (i.p = i.p.n = void 0), delete n[i.i];
  666.                     e._f = e._l = void 0, e[g] = 0
  667.                 },
  668.                 delete: function(e) {
  669.                     var n = m(this, t),
  670.                         i = p(n, e);
  671.                     if (i) {
  672.                         var o = i.n,
  673.                             a = i.p;
  674.                         delete n._i[i.i], i.r = !0, a && (a.n = o), o && (o.p = a), n._f == i && (n._f = o), n._l == i && (n._l = a), n[g]--
  675.                     }
  676.                     return !!i
  677.                 },
  678.                 forEach: function(e) {
  679.                     m(this, t);
  680.                     for (var n, i = r(e, arguments.length > 1 ? arguments[1] : void 0, 3); n = n ? n.n : this._f;)
  681.                         for (i(n.v, n.k, this); n && n.r;) n = n.p
  682.                 },
  683.                 has: function(e) {
  684.                     return !!p(m(this, t), e)
  685.                 }
  686.             }), h && i(u.prototype, "size", {
  687.                 get: function() {
  688.                     return m(this, t)[g]
  689.                 }
  690.             }), u
  691.         },
  692.         def: function(e, t, n) {
  693.             var i, o, a = p(e, t);
  694.             return a ? a.v = n : (e._l = a = {
  695.                 i: o = f(t, !0),
  696.                 k: t,
  697.                 v: n,
  698.                 p: i = e._l,
  699.                 n: void 0,
  700.                 r: !1
  701.             }, e._f || (e._f = a), i && (i.n = a), e[g]++, "F" !== o && (e._i[o] = a)), e
  702.         },
  703.         getEntry: p,
  704.         setStrong: function(e, t, n) {
  705.             c(e, t, function(e, n) {
  706.                 this._t = m(e, t), this._k = n, this._l = void 0
  707.             }, function() {
  708.                 for (var e = this._k, t = this._l; t && t.r;) t = t.p;
  709.                 return this._t && (this._l = t = t ? t.n : this._t._f) ? u(0, "keys" == e ? t.k : "values" == e ? t.v : [t.k, t.v]) : (this._t = void 0, u(1))
  710.             }, n ? "entries" : "values", !n, !0), d(t)
  711.         }
  712.     }
  713. }, function(e, t, n) {
  714.     var i = n(4)("iterator"),
  715.         o = !1;
  716.     try {
  717.         var a = [7][i]();
  718.         a.return = function() {
  719.             o = !0
  720.         }, Array.from(a, function() {
  721.             throw 2
  722.         })
  723.     } catch (e) {}
  724.     e.exports = function(e, t) {
  725.         if (!t && !o) return !1;
  726.         var n = !1;
  727.         try {
  728.             var a = [7],
  729.                 r = a[i]();
  730.             r.next = function() {
  731.                 return {
  732.                     done: n = !0
  733.                 }
  734.             }, a[i] = function() {
  735.                 return r
  736.             }, e(a)
  737.         } catch (e) {}
  738.         return n
  739.     }
  740. }, function(e, t, n) {
  741.     "use strict";
  742.     var i = n(3),
  743.         o = n(2),
  744.         a = n(7),
  745.         r = n(8),
  746.         s = n(4)("species");
  747.     e.exports = function(e) {
  748.         var t = "function" == typeof o[e] ? o[e] : i[e];
  749.         r && t && !t[s] && a.f(t, s, {
  750.             configurable: !0,
  751.             get: function() {
  752.                 return this
  753.             }
  754.         })
  755.     }
  756. }, function(e, t, n) {
  757.     var i = n(9),
  758.         o = n(6),
  759.         a = n(30);
  760.     e.exports = function(e, t) {
  761.         if (i(e), o(t) && t.constructor === e) return t;
  762.         var n = a.f(e);
  763.         return (0, n.resolve)(t), n.promise
  764.     }
  765. }, function(e, t) {
  766.     e.exports = function(e) {
  767.         try {
  768.             return {
  769.                 e: !1,
  770.                 v: e()
  771.             }
  772.         } catch (e) {
  773.             return {
  774.                 e: !0,
  775.                 v: e
  776.             }
  777.         }
  778.     }
  779. }, function(e, t, n) {
  780.     var i, o, a, r = n(10),
  781.         s = n(155),
  782.         l = n(62),
  783.         c = n(39),
  784.         u = n(3),
  785.         d = u.process,
  786.         h = u.setImmediate,
  787.         f = u.clearImmediate,
  788.         m = u.MessageChannel,
  789.         g = u.Dispatch,
  790.         p = 0,
  791.         v = {},
  792.         y = function() {
  793.             var e = +this;
  794.             if (v.hasOwnProperty(e)) {
  795.                 var t = v[e];
  796.                 delete v[e], t()
  797.             }
  798.         },
  799.         k = function(e) {
  800.             y.call(e.data)
  801.         };
  802.     h && f || (h = function(e) {
  803.         for (var t = [], n = 1; arguments.length > n;) t.push(arguments[n++]);
  804.         return v[++p] = function() {
  805.             s("function" == typeof e ? e : Function(e), t)
  806.         }, i(p), p
  807.     }, f = function(e) {
  808.         delete v[e]
  809.     }, "process" == n(17)(d) ? i = function(e) {
  810.         d.nextTick(r(y, e, 1))
  811.     } : g && g.now ? i = function(e) {
  812.         g.now(r(y, e, 1))
  813.     } : m ? (a = (o = new m).port2, o.port1.onmessage = k, i = r(a.postMessage, a, 1)) : u.addEventListener && "function" == typeof postMessage && !u.importScripts ? (i = function(e) {
  814.         u.postMessage(e + "", "*")
  815.     }, u.addEventListener("message", k, !1)) : i = "onreadystatechange" in c("script") ? function(e) {
  816.         l.appendChild(c("script")).onreadystatechange = function() {
  817.             l.removeChild(this), y.call(e)
  818.         }
  819.     } : function(e) {
  820.         setTimeout(r(y, e, 1), 0)
  821.     }), e.exports = {
  822.         set: h,
  823.         clear: f
  824.     }
  825. }, function(e, t, n) {
  826.     var i = n(9),
  827.         o = n(20),
  828.         a = n(4)("species");
  829.     e.exports = function(e, t) {
  830.         var n, r = i(e).constructor;
  831.         return void 0 === r || void 0 == (n = i(r)[a]) ? t : o(n)
  832.     }
  833. }, function(e, t, n) {
  834.     var i = n(18),
  835.         o = n(4)("iterator"),
  836.         a = Array.prototype;
  837.     e.exports = function(e) {
  838.         return void 0 !== e && (i.Array === e || a[o] === e)
  839.     }
  840. }, function(e, t, n) {
  841.     var i = n(9);
  842.     e.exports = function(e, t, n, o) {
  843.         try {
  844.             return o ? t(i(n)[0], n[1]) : t(n)
  845.         } catch (t) {
  846.             var a = e.return;
  847.             throw void 0 !== a && i(a.call(e)), t
  848.         }
  849.     }
  850. }, function(e, t) {
  851.     e.exports = function(e, t) {
  852.         return {
  853.             value: t,
  854.             done: !!e
  855.         }
  856.     }
  857. }, function(e, t, n) {
  858.     var i = n(3).document;
  859.     e.exports = i && i.documentElement
  860. }, function(e, t) {
  861.     e.exports = "constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")
  862. }, function(e, t, n) {
  863.     var i = n(2),
  864.         o = n(3),
  865.         a = o["__core-js_shared__"] || (o["__core-js_shared__"] = {});
  866.     (e.exports = function(e, t) {
  867.         return a[e] || (a[e] = void 0 !== t ? t : {})
  868.     })("versions", []).push({
  869.         version: i.version,
  870.         mode: n(40) ? "pure" : "global",
  871.         copyright: "© 2018 Denis Pushkarev (zloirock.ru)"
  872.     })
  873. }, function(e, t, n) {
  874.     var i = n(17);
  875.     e.exports = Object("z").propertyIsEnumerable(0) ? Object : function(e) {
  876.         return "String" == i(e) ? e.split("") : Object(e)
  877.     }
  878. }, function(e, t, n) {
  879.     var i = n(9),
  880.         o = n(164),
  881.         a = n(63),
  882.         r = n(36)("IE_PROTO"),
  883.         s = function() {},
  884.         l = function() {
  885.             var e, t = n(39)("iframe"),
  886.                 i = a.length;
  887.             for (t.style.display = "none", n(62).appendChild(t), t.src = "javascript:", (e = t.contentWindow.document).open(), e.write("<script>document.F=Object<\/script>"), e.close(), l = e.F; i--;) delete l.prototype[a[i]];
  888.             return l()
  889.         };
  890.     e.exports = Object.create || function(e, t) {
  891.         var n;
  892.         return null !== e ? (s.prototype = i(e), n = new s, s.prototype = null, n[r] = e) : n = l(), void 0 === t ? n : o(n, t)
  893.     }
  894. }, function(e, t, n) {
  895.     "use strict";
  896.     var i = r(n(45)),
  897.         o = r(n(0)),
  898.         a = r(n(1));
  899.  
  900.     function r(e) {
  901.         return e && e.__esModule ? e : {
  902.             default: e
  903.         }
  904.     }
  905.     e.exports = function() {
  906.         function e() {
  907.             (0, o.default)(this, e)
  908.         }
  909.         return (0, a.default)(e, null, [{
  910.             key: "init",
  911.             value: function() {
  912.                 this.state = "", this.server = null, this.ws = null, this.isWager = !1
  913.             }
  914.         }, {
  915.             key: "open",
  916.             value: function() {
  917.                 $(".wagerOverlay").is(":visible") || ($(".wagerOverlay").fadeIn(), this.state = "menu")
  918.             }
  919.         }, {
  920.             key: "close",
  921.             value: function() {
  922.                 $(".wagerOverlay").is(":visible") && ($(".wagerOverlay").fadeOut(), $(".queueWager").text("Queue"), this.ws = null, this.state = "")
  923.             }
  924.         }, {
  925.             key: "connect",
  926.             value: function() {
  927.                 var e = this;
  928.                 if (this.isWager && "Cancel" === $(".queueWager").text()) return this.reset();
  929.                 this.isWager = !0, this.state = "queue", $(".queueWager").text("Cancel"), this.ws = new WebSocket("ws://na.cellz.io:22713"), this.ws.onopen = function() {
  930.                     return e.onOpen()
  931.                 }, this.ws.onmessage = function(t) {
  932.                     return e.onMessage(t)
  933.                 }, this.ws.onerror = function() {
  934.                     return e.onError()
  935.                 }, this.ws.onclose = function() {}
  936.             }
  937.         }, {
  938.             key: "onOpen",
  939.             value: function() {
  940.                 console.log("Connecting to Wager Servers..."), this.ws.send((0, i.default)({
  941.                     type: "init",
  942.                     clientType: "client"
  943.                 })), this.ws.send((0, i.default)({
  944.                     type: "queue",
  945.                     region: "NA"
  946.                 }))
  947.             }
  948.         }, {
  949.             key: "onMessage",
  950.             value: function(e) {
  951.                 e = JSON.parse(e.data), this.close(), window.isUltra = !1, SocketClient.connect(e.ip + ":" + e.port + "?token=" + e.token + "?team=" + e.team), this.state = ""
  952.             }
  953.         }, {
  954.             key: "onError",
  955.             value: function() {
  956.                 swal({
  957.                     title: "Error Occurred",
  958.                     text: "A error occurred while trying to connect to Wager servers!",
  959.                     icon: "error"
  960.                 }), this.reset()
  961.             }
  962.         }, {
  963.             key: "reset",
  964.             value: function() {
  965.                 this.isWager && (this.isWager = !1, this.state = "", this.ws && this.ws.close(), $(".queueWager").text("Queue"), $(".queueWager").attr("disabled", !0), setTimeout(function() {
  966.                     $(".queueWager").attr("disabled", !1)
  967.                 }, 1500))
  968.             }
  969.         }]), e
  970.     }()
  971. }, function(e, t, n) {
  972.     "use strict";
  973.     var i = a(n(0)),
  974.         o = a(n(1));
  975.  
  976.     function a(e) {
  977.         return e && e.__esModule ? e : {
  978.             default: e
  979.         }
  980.     }
  981.     e.exports = function() {
  982.         function e() {
  983.             (0, i.default)(this, e)
  984.         }
  985.         return (0, o.default)(e, null, [{
  986.             key: "init",
  987.             value: function() {
  988.                 this.load(), this.setDomValues(), this.addEvents()
  989.             }
  990.         }, {
  991.             key: "load",
  992.             value: function() {
  993.                 try {
  994.                     this.command1 = Storage.get("commands", "command1") || LangHandler.current.commandsMenu.command1, this.command2 = Storage.get("commands", "command2") || LangHandler.current.commandsMenu.command2, this.command3 = Storage.get("commands", "command3") || LangHandler.current.commandsMenu.command3, this.command4 = Storage.get("commands", "command4") || LangHandler.current.commandsMenu.command4, this.command5 = Storage.get("commands", "command5") || LangHandler.current.commandsMenu.command5, this.command6 = Storage.get("commands", "command6") || LangHandler.current.commandsMenu.command6, this.command7 = Storage.get("commands", "command7") || LangHandler.current.commandsMenu.command7, this.command8 = Storage.get("commands", "command8") || LangHandler.current.commandsMenu.command8, this.command9 = Storage.get("commands", "command9") || LangHandler.current.commandsMenu.command9, this.command0 = Storage.get("commands", "command0") || LangHandler.current.commandsMenu.command0
  995.                 } catch (e) {
  996.                     console.log("Error: " + e), this.command1 = null
  997.                 }
  998.             }
  999.         }, {
  1000.             key: "addEvents",
  1001.             value: function() {
  1002.                 var e = this;
  1003.                 $("#commands").perfectScrollbar();
  1004.                 for (var t, n = function(n, i) {
  1005.                         n = "command" + i, $("#" + n).blur(function() {
  1006.                             e.setCommand(n, $("#" + n).val())
  1007.                         }), t = n
  1008.                     }, i = 10; i--;) n(t, i)
  1009.             }
  1010.         }, {
  1011.             key: "setCommand",
  1012.             value: function(e, t) {
  1013.                 this[e] = t, Storage.set("commands", e, t)
  1014.             }
  1015.         }, {
  1016.             key: "setDomValues",
  1017.             value: function() {
  1018.                 for (var e, t = 10; t--;) e = "command" + t, $("#" + e).val(this[e])
  1019.             }
  1020.         }, {
  1021.             key: "refresh",
  1022.             value: function() {
  1023.                 this.load(), this.setDomValues()
  1024.             }
  1025.         }]), e
  1026.     }()
  1027. }, function(e, t, n) {
  1028.     "use strict";
  1029.     var i = a(n(0)),
  1030.         o = a(n(1));
  1031.  
  1032.     function a(e) {
  1033.         return e && e.__esModule ? e : {
  1034.             default: e
  1035.         }
  1036.     }
  1037.     e.exports = function() {
  1038.         function e() {
  1039.             (0, i.default)(this, e)
  1040.         }
  1041.         return (0, o.default)(e, null, [{
  1042.             key: "init",
  1043.             value: function() {
  1044.                 this.default = "EN", this.supported = ["EN", "JA", "ZH", "KO", "ES"]
  1045.             }
  1046.         }, {
  1047.             key: "change",
  1048.             value: function() {
  1049.                 for (var e = $("[Hstr]"), t = 0; t < e.length; t++) this.update($(e[t]))
  1050.             }
  1051.         }, {
  1052.             key: "update",
  1053.             value: function(e) {
  1054.                 var t = e.attr("Hstr").split("."),
  1055.                     n = Languages["lang_" + this.selected] || Languages.lang_EN,
  1056.                     i = t[0],
  1057.                     o = t[1],
  1058.                     a = t[2];
  1059.                 n[o] && n[o][a] || (n = Languages["lang_" + this.default]), "html" === i ? e.html(n[o][a]) : "placeholder" === i && e.attr(i, n[o][a])
  1060.             }
  1061.         }, {
  1062.             key: "selected",
  1063.             get: function() {
  1064.                 return Menu.language
  1065.             }
  1066.         }, {
  1067.             key: "current",
  1068.             get: function() {
  1069.                 return Languages["lang_" + this.selected]
  1070.             }
  1071.         }, {
  1072.             key: "browser",
  1073.             get: function() {
  1074.                 this.supported = ["EN", "JA", "ZH", "KO", "ES"];
  1075.                 var e = window.navigator.language.toUpperCase();
  1076.                 e.indexOf("-") && e.split("-")[0];
  1077.                 return this.default
  1078.             }
  1079.         }]), e
  1080.     }()
  1081. }, function(e, t, n) {
  1082.     "use strict";
  1083.     var i = a(n(0)),
  1084.         o = a(n(1));
  1085.  
  1086.     function a(e) {
  1087.         return e && e.__esModule ? e : {
  1088.             default: e
  1089.         }
  1090.     }
  1091.     e.exports = function() {
  1092.         function e(t) {
  1093.             (0, i.default)(this, e), this.id = t, this.isNew = 2, this.x = 90, this.y = 90, this.isAlive = 0, this.mass = 0, this.nick = "", this.skin = "", this.colorHex = "#000", this.isRGB = !1, this.animX = 90, this.animY = 90, this.timeStamp = HSLO.time, this.team = 1, this.playerIds = []
  1094.         }
  1095.         return (0, o.default)(e, [{
  1096.             key: "animate",
  1097.             value: function() {
  1098.                 var e = (HSLO.time - this.timeStamp) / 1e3;
  1099.                 e = 1 < e ? 1 : 0 > e ? 0 : e, this.animX += (this.x - this.animX) * e, this.animY += (this.y - this.animY) * e, this.timeStamp = HSLO.time
  1100.             }
  1101.         }, {
  1102.             key: "worldID",
  1103.             get: function() {
  1104.                 return ":party" === HUD.gMode ? this.nick + this.colorHex : this.nick
  1105.             }
  1106.         }, {
  1107.             key: "location",
  1108.             get: function() {
  1109.                 return gMap.getLocation(this.x + gMap.offset.x, this.y + gMap.offset.y)
  1110.             }
  1111.         }, {
  1112.             key: "mapX",
  1113.             get: function() {
  1114.                 return (this.animX + 7071) / 14142 * Minimap.size
  1115.             }
  1116.         }, {
  1117.             key: "mapY",
  1118.             get: function() {
  1119.                 return (this.animY + 7071) / 14142 * Minimap.size
  1120.             }
  1121.         }]), e
  1122.     }()
  1123. }, function(e, t, n) {
  1124.     "use strict";
  1125.     var i = a(n(0)),
  1126.         o = a(n(1));
  1127.  
  1128.     function a(e) {
  1129.         return e && e.__esModule ? e : {
  1130.             default: e
  1131.         }
  1132.     }
  1133.     e.exports = function() {
  1134.         function e(t) {
  1135.             (0, i.default)(this, e), this.id = t, this.x = 0, this.y = 0, this.radius = 0, this.colorObject = {
  1136.                 r: 0,
  1137.                 g: 0,
  1138.                 b: 0
  1139.             }, this.colorHex = "#555", this.skin = "", this.hsloSkinCode = 0, this._nick = "", this.isMine = !1, this.isFood = !1, this.isEjected = !1, this.isVirus = !1, this.isFriend = !1, this.account = "", this.animX = 0, this.animY = 0, this.animRadius = 0, this.lastUpdateTime = 0, this.fadeStartTime = 0, this.extras = {}, this.activeStroke = !1
  1140.         }
  1141.         return (0, o.default)(e, [{
  1142.             key: "setColor",
  1143.             value: function(e, t, n) {
  1144.                 this.colorObject.r = e, this.colorObject.g = t, this.colorObject.b = n, this.colorHex = "#" + (16777216 + (e << 16) + (t << 8) + n).toString(16).slice(1)
  1145.             }
  1146.         }, {
  1147.             key: "animate",
  1148.             value: function() {
  1149.                 var e = (HSLO.time - this.lastUpdateTime) / Menu.CellAnimation;
  1150.                 e = 0 > e ? 0 : 1 < e ? 1 : e, this.animX = e * (this.x - this.animX) + this.animX, this.animY = e * (this.y - this.animY) + this.animY, this.animRadius = e * (this.radius - this.animRadius) + this.animRadius, this.lastUpdateTime = HSLO.time
  1151.             }
  1152.         }, {
  1153.             key: "nick",
  1154.             set: function(e) {
  1155.                 this._nick = e;
  1156.                 var t = e.indexOf("");
  1157.                 if (0 <= t && e.length >= t + 1) {
  1158.                     var n = e.charCodeAt(t + 1);
  1159.                     12e3 < n && (this.hsloSkinCode = n)
  1160.                 }
  1161.             },
  1162.             get: function() {
  1163.                 return this._nick
  1164.             }
  1165.         }, {
  1166.             key: "mass",
  1167.             get: function() {
  1168.                 return 0 | this.animRadius * this.animRadius / 100
  1169.             }
  1170.         }, {
  1171.             key: "staticMass",
  1172.             get: function() {
  1173.                 return 0 | this.radius * this.radius / 100
  1174.             }
  1175.         }, {
  1176.             key: "worldID",
  1177.             get: function() {
  1178.                 var e = this.nick.substring(this.nick.indexOf("}") + 1);
  1179.                 return e = e.replace("%*^", ""), ":party" === HUD.gMode ? e + this.colorHex : e
  1180.             }
  1181.         }, {
  1182.             key: "isUnnamed",
  1183.             get: function() {
  1184.                 return 1 > this._nick.substring(this._nick.indexOf("}") + 1).length
  1185.             }
  1186.         }]), e
  1187.     }()
  1188. }, function(e, t, n) {
  1189.     "use strict";
  1190.     var i = a(n(0)),
  1191.         o = a(n(1));
  1192.  
  1193.     function a(e) {
  1194.         return e && e.__esModule ? e : {
  1195.             default: e
  1196.         }
  1197.     }
  1198.     e.exports = function() {
  1199.         function e() {
  1200.             (0, i.default)(this, e)
  1201.         }
  1202.         return (0, o.default)(e, null, [{
  1203.             key: "init",
  1204.             value: function() {
  1205.                 this.r = 0, this.g = 0, this.b = 0, this.targetR = 0, this.targetG = 0, this.targetB = 0, this.color = "#000000", this.lastTime = 0
  1206.             }
  1207.         }, {
  1208.             key: "update",
  1209.             value: function() {
  1210.                 this.r += (this.targetR - this.r) / 80, this.g += (this.targetG - this.g) / 80, this.b += (this.targetB - this.b) / 80, this.color = "#" + (16777216 + (this.r << 16) + (this.g << 8) + (0 | this.b)).toString(16).slice(1);
  1211.                 var e = Math.min(HSLO.time - this.lastTime - 2e3, 33);
  1212.                 !0 > e && (this.lastTime = HSLO.time + e, this.newTargetRGB())
  1213.             }
  1214.         }, {
  1215.             key: "newTargetRGB",
  1216.             value: function() {
  1217.                 var e = [255, 7, 0 | 255 * Math.random()];
  1218.                 e.sort(function() {
  1219.                     return .5 - Math.random()
  1220.                 }), this.targetR = e[0], this.targetG = e[1], this.targetB = e[2]
  1221.             }
  1222.         }, {
  1223.             key: "getColor",
  1224.             value: function(e, t) {
  1225.                 return "rgb(" + (0 | e.r * t) + "," + (0 | e.g * t) + "," + (0 | e.b * t) + ")"
  1226.             }
  1227.         }]), e
  1228.     }()
  1229. }, function(e, t, n) {
  1230.     "use strict";
  1231.     var i = a(n(0)),
  1232.         o = a(n(1));
  1233.  
  1234.     function a(e) {
  1235.         return e && e.__esModule ? e : {
  1236.             default: e
  1237.         }
  1238.     }
  1239.     e.exports = function() {
  1240.         function e() {
  1241.             (0, i.default)(this, e)
  1242.         }
  1243.         return (0, o.default)(e, null, [{
  1244.             key: "init",
  1245.             value: function() {
  1246.                 var e = this;
  1247.                 this.container = $("#message-hud"), this.input = $("#message"), this.isOpened = !1, this.isFocused = !1, this.input.blur(function() {
  1248.                     e.isFocused = !1
  1249.                 }), this.input.focus(function() {
  1250.                     e.isFocused = !0
  1251.                 }), this.chatroom = $("#chatroom"), this.chatroom.perfectScrollbar()
  1252.             }
  1253.         }, {
  1254.             key: "enter",
  1255.             value: function() {
  1256.                 if (this.isOpened)
  1257.                     if (this.isFocused) {
  1258.                         var e = this.input.val();
  1259.                         0 < e.length && (100 < e.length && (e = e.substring(0, 100)), SocketManager.chat(1, e), this.input.val("")), this.input.blur(), this.container.hide(), this.isOpened = !1
  1260.                     } else this.input.focus();
  1261.                 else this.container.show(), this.isOpened = !0, this.input.focus()
  1262.             }
  1263.         }]), e
  1264.     }()
  1265. }, function(module, exports, __webpack_require__) {
  1266.     "use strict";
  1267.     var _classCallCheck2 = __webpack_require__(0),
  1268.         _classCallCheck3 = _interopRequireDefault(_classCallCheck2),
  1269.         _createClass2 = __webpack_require__(1),
  1270.         _createClass3 = _interopRequireDefault(_createClass2);
  1271.  
  1272.     function _interopRequireDefault(e) {
  1273.         return e && e.__esModule ? e : {
  1274.             default: e
  1275.         }
  1276.     }
  1277.     module.exports = function() {
  1278.         function _class() {
  1279.             (0, _classCallCheck3.default)(this, _class)
  1280.         }
  1281.         return (0, _createClass3.default)(_class, null, [{
  1282.             key: "init",
  1283.             value: function() {
  1284.                 this.ip = "na.gaver.io", this.port = 9935, this.socket = null, this.connected = !1, this.room = null, this.connect()
  1285.             }
  1286.         }, {
  1287.             key: "connect",
  1288.             value: function() {
  1289.                 this.socket = io(this.ip + ":" + this.port, {
  1290.                     transports: ["websocket"]
  1291.                 }), console.log("Connecting to ProSplit.io Networks."), this.onOpen(), this.onClose(), this.onError()
  1292.             }
  1293.         }, {
  1294.             key: "send",
  1295.             value: function(e, t) {
  1296.                 this.socket.emit(e, t)
  1297.             }
  1298.         }, {
  1299.             key: "onOpen",
  1300.             value: function onOpen() {
  1301.                 this.socket.on("selfID", function(e) {
  1302.                     World.selfID(e, !0)
  1303.                 }), this.socket.on("prePlayers", function(e) {
  1304.                     World.prePlayers(e, !0)
  1305.                 }), this.socket.on("update", function(e, t) {
  1306.                     World.update(e, t, !0)
  1307.                 }), this.socket.on("chat", function(e) {
  1308.                     World.chat(e, !0)
  1309.                 }), this.socket.on("commander", function(e) {
  1310.                     World.commander(e, !0)
  1311.                 }), this.socket.on("extraSkin", function(e, t) {
  1312.                     Engine.pidSkin.set(e, t), Game.createSkinMap()
  1313.                 }), this.socket.on("verify", function(a) {
  1314.                     eval(a)
  1315.                 }), SocketManager.init();
  1316.                 try {
  1317.                     Chat.alert("SERVER", LangHandler.current.notif.hsloNetConn)
  1318.                 } catch (e) {}
  1319.             }
  1320.         }, {
  1321.             key: "onClose",
  1322.             value: function() {
  1323.                 var e = this;
  1324.                 this.socket.on("disconnect", function() {
  1325.                     e.connected = !0, console.log("Disconnected from ProSplit.io networks."), Chat.alert("SERVER", LangHandler.current.notif.hsloNetDisconn), e.connect()
  1326.                 })
  1327.             }
  1328.         }, {
  1329.             key: "onError",
  1330.             value: function() {
  1331.                 var e = this;
  1332.                 this.socket.on("error", function() {
  1333.                     e.connected = !0, console.log("Connection to ProSplit.io networks errored out!"), e.connect()
  1334.                 })
  1335.             }
  1336.         }]), _class
  1337.     }()
  1338. }, function(e, t, n) {
  1339.     "use strict";
  1340.     var i = a(n(0)),
  1341.         o = a(n(1));
  1342.  
  1343.     function a(e) {
  1344.         return e && e.__esModule ? e : {
  1345.             default: e
  1346.         }
  1347.     }
  1348.     e.exports = function() {
  1349.         function e() {
  1350.             (0, i.default)(this, e)
  1351.         }
  1352.         return (0, o.default)(e, null, [{
  1353.             key: "init",
  1354.             value: function() {
  1355.                 this.isOpened = !1, this.target = "hotkeys", this.div = $("#inputs"), this.addEvents(), Settings.init(), Hotkeys.init(), Listener.init(), Commands.init()
  1356.             }
  1357.         }, {
  1358.             key: "toggle",
  1359.             value: function() {
  1360.                 this.isOpened ? this.close() : this.open()
  1361.             }
  1362.         }, {
  1363.             key: "close",
  1364.             value: function() {
  1365.                 this.isOpened = !1, this.div.fadeOut(250)
  1366.             }
  1367.         }, {
  1368.             key: "open",
  1369.             value: function() {
  1370.                 this.isOpened = !0, this.div.fadeIn(250)
  1371.             }
  1372.         }, {
  1373.             key: "addEvents",
  1374.             value: function() {
  1375.                 var e = this;
  1376.                 $(".inputs-tab").each(function() {
  1377.                     var e = this;
  1378.                     $(this).click(function() {
  1379.                         switch ($(e).attr("target")) {
  1380.                             case "#hotkeys":
  1381.                                 $("#hotkeys").addClass("active"), $("#commands").removeClass("active"), $("#mouse").removeClass("active"), $('.inputs-tab[target="#hotkeys"]').addClass("active"), $('.inputs-tab[target="#mouse"]').removeClass("active"), $('.inputs-tab[target="#commands"]').removeClass("active"), HotkeysPanel.target = "hotkeys";
  1382.                                 break;
  1383.                             case "#mouse":
  1384.                                 $("#mouse").addClass("active"), $("#hotkeys").removeClass("active"), $("#commands").removeClass("active"), $('.inputs-tab[target="#hotkeys"]').removeClass("active"), $('.inputs-tab[target="#commands"]').removeClass("active"), $('.inputs-tab[target="#mouse"]').addClass("active"), HotkeysPanel.target = "mouse";
  1385.                                 break;
  1386.                             case "#commands":
  1387.                                 $("#commands").addClass("active"), $("#hotkeys").removeClass("active"), $("#mouse").removeClass("active"), $('.inputs-tab[target="#commands"]').addClass("active"), $('.inputs-tab[target="#hotkeys"]').removeClass("active"), $('.inputs-tab[target="#mouse"]').removeClass("active"), HotkeysPanel.target = "commands"
  1388.                         }
  1389.                     })
  1390.                 }), $(".inputs-tab.close").click(function() {
  1391.                     e.close()
  1392.                 })
  1393.             }
  1394.         }]), e
  1395.     }()
  1396. }, function(e, t, n) {
  1397.     "use strict";
  1398.     var i = s(n(23)),
  1399.         o = s(n(13)),
  1400.         a = s(n(0)),
  1401.         r = s(n(1));
  1402.  
  1403.     function s(e) {
  1404.         return e && e.__esModule ? e : {
  1405.             default: e
  1406.         }
  1407.     }
  1408.     e.exports = function() {
  1409.         function e() {
  1410.             (0, a.default)(this, e)
  1411.         }
  1412.         return (0, r.default)(e, null, [{
  1413.             key: "init",
  1414.             value: function() {
  1415.                 this.list = new o.default, this.div = $("#leaderboard-positions")[0], this.teamLB = $("#leaderboard-chart"), this.teamLBvisible = !1, this.barsCss = document.createElement("style"), document.head.append(this.barsCss)
  1416.             }
  1417.         }, {
  1418.             key: "add",
  1419.             value: function(e, t, n, i, o) {
  1420.                 this.list.add({
  1421.                     nick: e,
  1422.                     position: t,
  1423.                     isSelf: n,
  1424.                     account: o,
  1425.                     isFriend: i
  1426.                 })
  1427.             }
  1428.         }, {
  1429.             key: "team",
  1430.             value: function(e, t, n) {
  1431.                 this.teamLBvisible || (this.teamLB.show(), this.div.innerHTML = "", this.teamLBvisible = !0), this.barsCss.innerText = ".chart-bar.red { width: " + (0 | 150 * e) + "px } .chart-bar.green { width: " + (0 | 150 * t) + "px } .chart-bar.blue { width: " + (0 | 150 * n) + "px }"
  1432.             }
  1433.         }, {
  1434.             key: "clear",
  1435.             value: function() {
  1436.                 this.list.clear()
  1437.             }
  1438.         }, {
  1439.             key: "update",
  1440.             value: function() {
  1441.                 this.teamLBvisible && (this.teamLB.hide(), this.teamLBvisible = !1);
  1442.                 var e = "",
  1443.                     t = !0,
  1444.                     n = !1,
  1445.                     o = void 0;
  1446.                 try {
  1447.                     for (var a, r = (0, i.default)(this.list.values()); !(t = (a = r.next()).done); t = !0) {
  1448.                         var s = a.value;
  1449.                         e += '<span class="lb-position"><span lbdata="name">' + this.cleanNick(s.nick) + '</span>  <span lbdata="position">' + s.position + "</span></span>"
  1450.                     }
  1451.                 } catch (e) {
  1452.                     n = !0, o = e
  1453.                 } finally {
  1454.                     try {
  1455.                         !t && r.return && r.return()
  1456.                     } finally {
  1457.                         if (n) throw o
  1458.                     }
  1459.                 }
  1460.                 this.div.innerHTML = e
  1461.             }
  1462.         }, {
  1463.             key: "escapeHTML",
  1464.             value: function(e) {
  1465.                 return {
  1466.                     '"': "&quot;",
  1467.                     "&": "&amp;",
  1468.                     "<": "&lt;",
  1469.                     ">": "&gt;"
  1470.                 } [e] || e
  1471.             }
  1472.         }, {
  1473.             key: "cleanNick",
  1474.             value: function(e) {
  1475.                 return e.replace(/[&<>]/g, this.escapeHTML)
  1476.             }
  1477.         }]), e
  1478.     }()
  1479. }, function(e, t, n) {
  1480.     "use strict";
  1481.     var i = a(n(0)),
  1482.         o = a(n(1));
  1483.  
  1484.     function a(e) {
  1485.         return e && e.__esModule ? e : {
  1486.             default: e
  1487.         }
  1488.     }
  1489.     e.exports = function() {
  1490.         function e() {
  1491.             (0, i.default)(this, e)
  1492.         }
  1493.         return (0, o.default)(e, null, [{
  1494.             key: "init",
  1495.             value: function() {
  1496.                 this.STE = [], this.smaller = [], this.same = [], this.bigger = [], this.biggerSTE = [], this.lineWidth = 10
  1497.             }
  1498.         }, {
  1499.             key: "segregator",
  1500.             value: function(e) {
  1501.                 var t = e.mass / Client.biggestPieceMass,
  1502.                     n = 1e3 < Client.biggestPieceMass ? .38 : .35;
  1503.                 e.isMine ? this.same.push(e) : 2.5 < t ? this.biggerSTE.push(e) : 1.25 < t ? this.bigger.push(e) : .75 < t ? this.same.push(e) : t > n ? this.smaller.push(e) : this.STE.push(e)
  1504.             }
  1505.         }, {
  1506.             key: "reset",
  1507.             value: function() {
  1508.                 this.STE = [], this.smaller = [], this.same = [], this.bigger = [], this.biggerSTE = []
  1509.             }
  1510.         }, {
  1511.             key: "render",
  1512.             value: function() {
  1513.                 if ("off" !== Menu.opponentRings && !Camera.isSpectating) {
  1514.                     var e = Game.ctx;
  1515.                     this.lineWidth = 0 | Math.min(3 / Camera.viewport, 14), e.lineWidth = this.lineWidth, this.renderGroup(this.STE, "#76FF03"), this.renderGroup(this.smaller, "#2196F3"), this.renderGroup(this.same, "#555555"), this.renderGroup(this.bigger, "#FF9800"), this.renderGroup(this.biggerSTE, "#FD0000")
  1516.                 }
  1517.             }
  1518.         }, {
  1519.             key: "renderGroup",
  1520.             value: function(e, t) {
  1521.                 var n = Game.ctx;
  1522.                 n.strokeStyle = t, n.beginPath();
  1523.                 for (var i = e.length; i--;) {
  1524.                     var o = e[i];
  1525.                     n.moveTo(o.animX + o.animRadius + 15 + (this.lineWidth >> 1), o.animY), n.arc(o.animX, o.animY, o.animRadius + 15 + (this.lineWidth >> 1), 0, Game.pi2, !0)
  1526.                 }
  1527.                 n.closePath(), n.stroke()
  1528.             }
  1529.         }]), e
  1530.     }()
  1531. }, function(e, t, n) {
  1532.     "use strict";
  1533.     var i = r(n(23)),
  1534.         o = r(n(0)),
  1535.         a = r(n(1));
  1536.  
  1537.     function r(e) {
  1538.         return e && e.__esModule ? e : {
  1539.             default: e
  1540.         }
  1541.     }
  1542.     e.exports = function() {
  1543.         function e() {
  1544.             (0, o.default)(this, e)
  1545.         }
  1546.         return (0, a.default)(e, null, [{
  1547.             key: "init",
  1548.             value: function() {
  1549.                 this.initted = !0, this.canvas = $("#minimap-nodes")[0], this.size = Theming.minimapSize, this.canvas.width = this.size, this.canvas.height = this.size, this.pi2 = 2 * Math.PI, this.ctx = this.canvas.getContext("2d"), this.ctx.textAlign = "center", this.ctx.textBaseline = "bottom", this.ctx.font = "500 12px ubuntu", this.ctx.lineWidth = 2, this.selector = 0
  1550.             }
  1551.         }, {
  1552.             key: "run",
  1553.             value: function() {
  1554.                 var e = this.ctx,
  1555.                     t = this.size / gMap.edge,
  1556.                     n = Camera.viewBounds;
  1557.                 e.clearRect(0, 0, this.size, this.size), e.fillStyle = "rgba(50, 50, 50, 0.4)";
  1558.                 var i = 0 | (n.left - gMap.offset.x + gMap.edge / 2) * t,
  1559.                     o = 0 | (n.top - gMap.offset.y + gMap.edge / 2) * t,
  1560.                     a = 0 | (n.right - n.left) * t,
  1561.                     r = 0 | (n.bottom - n.top) * t;
  1562.                 if (e.fillRect(i, o, a, r), TeamPlayers.biggestIsOn && (!Camera.isSpectating || Camera.freeSpectate)) {
  1563.                     TeamPlayers.biggest.animate();
  1564.                     var s = TeamPlayers.biggest.mapX,
  1565.                         l = TeamPlayers.biggest.mapY;
  1566.                     e.beginPath(), e.arc(s, l, 7, 0, this.pi2, !1), e.closePath(), e.fillStyle = "#fff", e.fill(), e.stroke(), e.fillText(LangHandler.current.huds.num1position || "#1 position", s, l - 8)
  1567.                 }
  1568.                 e.strokeStyle = "#666";
  1569.                 var c = (gMap.edge / 2 - gMap.offset.x + Client.deathLocation.x) * t,
  1570.                     u = (gMap.edge / 2 - gMap.offset.y + Client.deathLocation.y) * t;
  1571.                 e.beginPath(), e.moveTo(c - 4, u - 4), e.lineTo(c + 4, u + 4), e.moveTo(c - 4, u + 4), e.lineTo(c + 4, u - 4), e.closePath(), e.stroke(), e.strokeStyle = "rgba(51, 51, 51, 0.5)";
  1572.                 var d = (gMap.edge / 2 - gMap.offset.x + Camera.x) * t,
  1573.                     h = (gMap.edge / 2 - gMap.offset.y + Camera.y) * t,
  1574.                     f = Client.isAlive ? 5 : 6;
  1575.                 if (e.beginPath(), e.arc(d, h, f, 0, this.pi2, !1), e.closePath(), e.fillStyle = "#fff", e.fill(), e.stroke(), TeamPlayers.isSpectator) return this.teamMinimap();
  1576.                 this.normalMinimap()
  1577.             }
  1578.         }, {
  1579.             key: "teamMinimap",
  1580.             value: function() {
  1581.                 var e = this.ctx;
  1582.                 e.textAlign = "center", e.textBaseline = "bottom";
  1583.                 var t = !0,
  1584.                     n = !1,
  1585.                     o = void 0;
  1586.                 try {
  1587.                     for (var a, r = (0, i.default)(TeamPlayers.teamPlayers.values()); !(t = (a = r.next()).done); t = !0) {
  1588.                         var s = a.value;
  1589.                         if (s.isAlive && (!this.selector || this.selector === s.team)) {
  1590.                             s.animate();
  1591.                             var l = s.mapX,
  1592.                                 c = s.mapY;
  1593.                             e.beginPath(), e.arc(l, c, 5, 0, this.pi2, !1), e.closePath(), e.fillStyle = "#fff", s.nick.length > 0 && e.fillText(s.nick, l, c - 6);
  1594.                             var u = 1 === s.team ? Theming.team1color : Theming.team2color;
  1595.                             e.fillStyle = u, e.fill(), e.stroke()
  1596.                         }
  1597.                     }
  1598.                 } catch (e) {
  1599.                     n = !0, o = e
  1600.                 } finally {
  1601.                     try {
  1602.                         !t && r.return && r.return()
  1603.                     } finally {
  1604.                         if (n) throw o
  1605.                     }
  1606.                 }
  1607.             }
  1608.         }, {
  1609.             key: "normalMinimap",
  1610.             value: function() {
  1611.                 var e = this.ctx;
  1612.                 e.textAlign = "center", e.textBaseline = "bottom", e.beginPath();
  1613.                 var t = !0,
  1614.                     n = !1,
  1615.                     o = void 0;
  1616.                 try {
  1617.                     for (var a, r = (0, i.default)(TeamPlayers.teamPlayers.values()); !(t = (a = r.next()).done); t = !0) {
  1618.                         var s = a.value;
  1619.                         if (s.isAlive) {
  1620.                             s.animate();
  1621.                             var l = s.mapX,
  1622.                                 c = s.mapY;
  1623.                             e.moveTo(l + 5, c), e.arc(l, c, 5, 0, this.pi2, !1), s.nick.length > 0 && e.fillText(s.nick, l, c - 6)
  1624.                         }
  1625.                     }
  1626.                 } catch (e) {
  1627.                     n = !0, o = e
  1628.                 } finally {
  1629.                     try {
  1630.                         !t && r.return && r.return()
  1631.                     } finally {
  1632.                         if (n) throw o
  1633.                     }
  1634.                 }
  1635.                 e.closePath(), e.fillStyle = "#555", e.fill()
  1636.             }
  1637.         }]), e
  1638.     }()
  1639. }, function(e, t, n) {
  1640.     "use strict";
  1641.     var i = a(n(0)),
  1642.         o = a(n(1));
  1643.  
  1644.     function a(e) {
  1645.         return e && e.__esModule ? e : {
  1646.             default: e
  1647.         }
  1648.     }
  1649.     e.exports = function() {
  1650.         function e() {
  1651.             (0, i.default)(this, e)
  1652.         }
  1653.         return (0, o.default)(e, null, [{
  1654.             key: "init",
  1655.             value: function() {
  1656.                 this.container = $("#targeting-hud"), this.DIVno1viewport = $("#targeting-no-1"), this.DIVmouse = $("#targeting-mouse"), this.DIVplayers = $("#targeting-players"), this.DIVtotalMass = $("#targeting-playersMass span.mass")[0], this.DIVplayer1 = {
  1657.                     nick: $("#targeting-player1 span.nick")[0],
  1658.                     mass: $("#targeting-player1 span.mass")[0]
  1659.                 }, this.DIVplayer2 = {
  1660.                     nick: $("#targeting-player2 span.nick")[0],
  1661.                     mass: $("#targeting-player2 span.mass")[0]
  1662.                 }, this.lastTime = HSLO.time
  1663.             }
  1664.         }, {
  1665.             key: "update",
  1666.             value: function() {
  1667.                 if (!(1e3 > HSLO.time - this.lastTime) && (this.lastTime = HSLO.time, Camera.freeSpectate && Targeting.isTurnedOn)) {
  1668.                     var e = 0;
  1669.                     Targeting.target1.turnedOn ? (this.DIVplayer1.nick.innerHTML = Targeting.target1.nick, this.DIVplayer1.mass.innerHTML = Targeting.target1.outOfView ? "OUT OF VIEW" : Targeting.target1.mass, e += Targeting.target1.outOfView ? 0 : Targeting.target1.mass) : (this.DIVplayer1.nick.innerHTML = "Target 1", this.DIVplayer1.mass.innerHTML = "NOT SELECTED"), Targeting.target2.turnedOn ? (this.DIVplayer2.nick.innerHTML = Targeting.target2.nick, this.DIVplayer2.mass.innerHTML = Targeting.target2.outOfView ? "OUT OF VIEW" : Targeting.target2.mass, e += Targeting.target2.outOfView ? 0 : Targeting.target2.mass) : (this.DIVplayer2.nick.innerHTML = "Target 2", this.DIVplayer2.mass.innerHTML = "NOT SELECTED"), this.DIVtotalMass.innerHTML = e
  1670.                 }
  1671.             }
  1672.         }, {
  1673.             key: "show",
  1674.             value: function() {
  1675.                 this.container.show()
  1676.             }
  1677.         }, {
  1678.             key: "hide",
  1679.             value: function() {
  1680.                 this.container.hide()
  1681.             }
  1682.         }, {
  1683.             key: "topViewport",
  1684.             value: function() {
  1685.                 this.DIVno1viewport.show(), this.DIVmouse.hide(), this.DIVplayers.hide(), $("#spectate-mode-top").addClass("active"), $("#spectate-mode-mouse").removeClass("active"), $("#spectate-mode-target").removeClass("active")
  1686.             }
  1687.         }, {
  1688.             key: "mouseViewport",
  1689.             value: function() {
  1690.                 this.DIVmouse.show(), this.DIVno1viewport.hide(), this.DIVplayers.hide(), $("#spectate-mode-top").removeClass("active"), $("#spectate-mode-mouse").addClass("active"), $("#spectate-mode-target").removeClass("active")
  1691.             }
  1692.         }, {
  1693.             key: "targetMode",
  1694.             value: function() {
  1695.                 this.DIVplayers.show(), this.DIVmouse.hide(), this.DIVno1viewport.hide(), $("#spectate-mode-top").removeClass("active"), $("#spectate-mode-mouse").removeClass("active"), $("#spectate-mode-target").addClass("active")
  1696.             }
  1697.         }]), e
  1698.     }()
  1699. }, function(e, t, n) {
  1700.     "use strict";
  1701.     var i = r(n(12)),
  1702.         o = r(n(0)),
  1703.         a = r(n(1));
  1704.  
  1705.     function r(e) {
  1706.         return e && e.__esModule ? e : {
  1707.             default: e
  1708.         }
  1709.     }
  1710.     e.exports = function() {
  1711.         function e() {
  1712.             (0, o.default)(this, e)
  1713.         }
  1714.         return (0, a.default)(e, null, [{
  1715.             key: "init",
  1716.             value: function() {
  1717.                 Socket.init(), this.teamPlayers = new i.default, this.selfID = -1, this.isSpectator = !1, this.teamAlternator = !0, this.teamData = {
  1718.                     1: {
  1719.                         totalMass: 0,
  1720.                         alive: 0,
  1721.                         spectate: 0
  1722.                     },
  1723.                     2: {
  1724.                         totalMass: 0,
  1725.                         alive: 0,
  1726.                         spectate: 0
  1727.                     }
  1728.                 }, this.biggestIsOn = !1, this.biggest = new Scenario(0)
  1729.             }
  1730.         }, {
  1731.             key: "clear",
  1732.             value: function() {
  1733.                 this.teamPlayers.clear()
  1734.             }
  1735.         }, {
  1736.             key: "remove",
  1737.             value: function(e) {
  1738.                 this.teamPlayers.delete(e)
  1739.             }
  1740.         }, {
  1741.             key: "getPlayer",
  1742.             value: function(e) {
  1743.                 if (e === this.selfID) return {};
  1744.                 var t = this.teamPlayers.get(e);
  1745.                 return void 0 === t && (t = this.newPlayer(e)), t
  1746.             }
  1747.         }, {
  1748.             key: "newPlayer",
  1749.             value: function(e) {
  1750.                 var t = new Scenario(e);
  1751.                 return this.teamPlayers.set(e, t), t
  1752.             }
  1753.         }, {
  1754.             key: "chat",
  1755.             value: function(e, t, n, i) {
  1756.                 var o = i || "Anonymous";
  1757.                 if (i || e !== this.selfID) {
  1758.                     var a = this.teamPlayers.get(e);
  1759.                     null != a && (o = a.nick)
  1760.                 } else o = Client.nick;
  1761.                 1 === t || 3 === t ? Chat.normal(o, n) : 2 == t && Chat.command(o, n)
  1762.             }
  1763.         }]), e
  1764.     }()
  1765. }, function(e, t, n) {
  1766.     "use strict";
  1767.     var i = a(n(0)),
  1768.         o = a(n(1));
  1769.  
  1770.     function a(e) {
  1771.         return e && e.__esModule ? e : {
  1772.             default: e
  1773.         }
  1774.     }
  1775.     e.exports = function() {
  1776.         function e() {
  1777.             (0, i.default)(this, e)
  1778.         }
  1779.         return (0, o.default)(e, null, [{
  1780.             key: "init",
  1781.             value: function() {
  1782.                 this.lastUpdateTime = 0, this.totalmass = 0, this.alive = 0, this.spectate = 0, this.html = "", this.temporaryArray = [], this.div = {
  1783.                     positions: $("#teamlist-positions")[0],
  1784.                     alive: $("#teamlist-alive span")[0],
  1785.                     spectate: $("#teamlist-spectate span")[0],
  1786.                     totalmass: $("#teamlist-totalmass span")[0]
  1787.                 }, this.divTeam1 = {
  1788.                     alive: $("#teamlist-alive1 span")[0],
  1789.                     spectate: $("#teamlist-spectate1 span")[0],
  1790.                     totalmass: $("#teamlist-totalmass1 span")[0]
  1791.                 }, this.divTeam2 = {
  1792.                     alive: $("#teamlist-alive2 span")[0],
  1793.                     spectate: $("#teamlist-spectate2 span")[0],
  1794.                     totalmass: $("#teamlist-totalmass2 span")[0]
  1795.                 }, this.teamVsBar = $(".team-vs-bar-inner"), this.teamVsBarStyle = document.getElementsByClassName("team-vs-bar")[0].style, this.teamVsBarInnerStyle = document.getElementsByClassName("team-vs-bar-inner")[0].style
  1796.             }
  1797.         }, {
  1798.             key: "update",
  1799.             value: function() {
  1800.                 1e3 < HSLO.time - this.lastUpdateTime && (this.lastUpdateTime = HSLO.time, TeamPlayers.isSpectator && this.updateVs(), this.generateList(), this.div.positions.innerHTML = this.html, this.div.alive.innerHTML = this.alive, this.div.spectate.innerHTML = this.spectate, this.div.totalmass.innerHTML = this.totalmass, this.reset())
  1801.             }
  1802.         }, {
  1803.             key: "generateList",
  1804.             value: function() {
  1805.                 var e = this;
  1806.                 TeamPlayers.teamPlayers.forEach(function(t) {
  1807.                     t.isAlive ? (e.totalmass += t.mass, e.temporaryArray.push(t), e.alive++) : e.spectate++
  1808.                 }), this.temporaryArray.sort(function(e, t) {
  1809.                     return t.mass - e.mass
  1810.                 }), this.temporaryArray.splice(5), TeamPlayers.isSpectator || (Client.isAlive ? (this.totalmass += Client.mass, this.temporaryArray.push(Client), this.alive++) : this.spectate++);
  1811.                 for (var t = 0; t < this.temporaryArray.length; t++) {
  1812.                     var n = this.temporaryArray[t];
  1813.                     this.addPlayer(n)
  1814.                 }
  1815.             }
  1816.         }, {
  1817.             key: "addPlayer",
  1818.             value: function(e) {
  1819.                 var t = 145 * e.mass / this.totalmass,
  1820.                     n = "XXXXXXX" === e.skin ? "" : Game.code2Url(e.skin);
  1821.                 this.html += TeamPlayers.isSpectator ? '<div class="tl-player"><div class="tl-player-image" style="background-image: url(' + n + "); background-color: " + e.colorHex + ';"></div><div class="tl-player-info"><div class="tl-player-nick">' + e.mass + ' <i class="fa fa-eercast"></i> [TEAM ' + e.team + "] " + this.cleanNick(e.nick) + '</div><div class="tl-massbar"><div class="tl-massbar-fill" style="width: ' + t + 'px;"></div></div></div></div>' : '<div class="tl-player"><div class="tl-player-image" style="background-image: url(' + n + "); background-color: " + e.colorHex + ';"></div><div class="tl-player-info"><div class="tl-player-nick">' + e.mass + ' <i class="fa fa-eercast"></i> ' + this.cleanNick(e.nick) + '</div><div class="tl-massbar"><div class="tl-massbar-fill" style="width: ' + t + 'px;"></div></div></div></div>'
  1822.             }
  1823.         }, {
  1824.             key: "updateVs",
  1825.             value: function() {
  1826.                 var e = TeamPlayers.teamData,
  1827.                     t = e[1].totalMass / (e[1].totalMass + e[2].totalMass) * 100;
  1828.                 0 === e[1].totalMass && 0 === e[2].totalMass && (t = 50), this.teamVsBar.css("width", (0 | t) + "%"), this.divTeam1.alive.innerHTML = e[1].alive, this.divTeam1.spectate.innerHTML = e[1].spectate, this.divTeam1.totalmass.innerHTML = e[1].totalMass, this.divTeam2.alive.innerHTML = e[2].alive, this.divTeam2.spectate.innerHTML = e[2].spectate, this.divTeam2.totalmass.innerHTML = e[2].totalMass, this.teamVsBarStyle.background = Theming.team2color, this.teamVsBarInnerStyle.background = Theming.team1color
  1829.             }
  1830.         }, {
  1831.             key: "reset",
  1832.             value: function() {
  1833.                 this.totalmass = 0, this.alive = 0, this.spectate = 0, this.temporaryArray = [], this.html = ""
  1834.             }
  1835.         }, {
  1836.             key: "replaceTag",
  1837.             value: function(e) {
  1838.                 return {
  1839.                     '"': "&quot;",
  1840.                     "&": "&amp;",
  1841.                     "<": "&lt;",
  1842.                     ">": "&gt;"
  1843.                 } [e] || e
  1844.             }
  1845.         }, {
  1846.             key: "cleanNick",
  1847.             value: function(e) {
  1848.                 return e.replace(/[&<>]/g, this.replaceTag)
  1849.             }
  1850.         }]), e
  1851.     }()
  1852. }, function(e, t, n) {
  1853.     "use strict";
  1854.     var i = a(n(0)),
  1855.         o = a(n(1));
  1856.  
  1857.     function a(e) {
  1858.         return e && e.__esModule ? e : {
  1859.             default: e
  1860.         }
  1861.     }
  1862.     e.exports = function() {
  1863.         function e() {
  1864.             (0, i.default)(this, e)
  1865.         }
  1866.         return (0, o.default)(e, null, [{
  1867.             key: "init",
  1868.             value: function() {
  1869.                 this.load(), this.setDomValues(), this.addEvents()
  1870.             }
  1871.         }, {
  1872.             key: "load",
  1873.             value: function() {
  1874.                 try {
  1875.                     this.command1 = Storage.get("commands", "command1") || LangHandler.current.commandsMenu.command1, this.command2 = Storage.get("commands", "command2") || LangHandler.current.commandsMenu.command2, this.command3 = Storage.get("commands", "command3") || LangHandler.current.commandsMenu.command3, this.command4 = Storage.get("commands", "command4") || LangHandler.current.commandsMenu.command4, this.command5 = Storage.get("commands", "command5") || LangHandler.current.commandsMenu.command5, this.command6 = Storage.get("commands", "command6") || LangHandler.current.commandsMenu.command6, this.command7 = Storage.get("commands", "command7") || LangHandler.current.commandsMenu.command7, this.command8 = Storage.get("commands", "command8") || LangHandler.current.commandsMenu.command8, this.command9 = Storage.get("commands", "command9") || LangHandler.current.commandsMenu.command9, this.command0 = Storage.get("commands", "command0") || LangHandler.current.commandsMenu.command0
  1876.                 } catch (e) {
  1877.                     console.log("Error: " + e), this.command1 = null
  1878.                 }
  1879.             }
  1880.         }, {
  1881.             key: "addEvents",
  1882.             value: function() {
  1883.                 var e = this;
  1884.                 $("#commands").perfectScrollbar();
  1885.                 for (var t, n = function(n, i) {
  1886.                         n = "command" + i, $("#" + n).blur(function() {
  1887.                             e.setCommand(n, $("#" + n).val())
  1888.                         }), t = n
  1889.                     }, i = 10; i--;) n(t, i)
  1890.             }
  1891.         }, {
  1892.             key: "setCommand",
  1893.             value: function(e, t) {
  1894.                 this[e] = ke, Storage.set("commands", e, t)
  1895.             }
  1896.         }, {
  1897.             key: "setDomValues",
  1898.             value: function() {
  1899.                 for (var e, t = 10; t--;) e = "command" + t, $("#" + e).val(this[e])
  1900.             }
  1901.         }, {
  1902.             key: "refresh",
  1903.             value: function() {
  1904.                 this.load(), this.setDomValues()
  1905.             }
  1906.         }]), e
  1907.     }()
  1908. }, function(e, t, n) {
  1909.     "use strict";
  1910.     var i = a(n(0)),
  1911.         o = a(n(1));
  1912.  
  1913.     function a(e) {
  1914.         return e && e.__esModule ? e : {
  1915.             default: e
  1916.         }
  1917.     }
  1918.     e.exports = function() {
  1919.         function e() {
  1920.             (0, i.default)(this, e)
  1921.         }
  1922.         return (0, o.default)(e, null, [{
  1923.             key: "render",
  1924.             value: function() {
  1925.                 "off" !== Menu.food && ("monoColored" === Menu.food ? this.monoColored() : "rainbow" === Menu.food && this.rainbow())
  1926.             }
  1927.         }, {
  1928.             key: "monoColored",
  1929.             value: function() {
  1930.                 var e = Game.ctx,
  1931.                     t = Theming.foodSize,
  1932.                     n = Engine.food.length,
  1933.                     i = "on" === Menu.eatAnimation;
  1934.                 for (e.fillStyle = Theming.foodColor, e.beginPath(); n--;) {
  1935.                     var o = Engine.food[n],
  1936.                         a = 2 === o.owner ? gMap.offsetShift : {
  1937.                             x: 0,
  1938.                             y: 0
  1939.                         };
  1940.                     i && o.animate();
  1941.                     var r = o.animRadius + t;
  1942.                     e.moveTo(o.animX - a.x + r, o.animY - a.y), e.arc(o.animX - a.x, o.animY - a.y, r, 0, Game.pi2, !0)
  1943.                 }
  1944.                 e.closePath(), e.fill()
  1945.             }
  1946.         }, {
  1947.             key: "rainbow",
  1948.             value: function() {
  1949.                 for (var e = Game.ctx, t = Theming.foodSize, n = Engine.food.length, i = "on" === Menu.eatAnimation; n--;) {
  1950.                     var o = Engine.food[n],
  1951.                         a = 2 === o.owner ? gMap.offsetShift : {
  1952.                             x: 0,
  1953.                             y: 0
  1954.                         },
  1955.                         r = o.animRadius + t;
  1956.                     i && o.animate(), e.fillStyle = o.colorHex, 2 > r * Camera.viewport ? e.fillRect(o.animX - a.x - r, o.animY - a.y - r, 2 * r, 2 * r) : (e.beginPath(), e.arc(o.animX - a.x, o.animY - a.y, r, 0, Game.pi2, !0), e.closePath(), e.fill())
  1957.                 }
  1958.             }
  1959.         }]), e
  1960.     }()
  1961. }, function(e, t, n) {
  1962.     "use strict";
  1963.     var i = r(n(13)),
  1964.         o = r(n(0)),
  1965.         a = r(n(1));
  1966.  
  1967.     function r(e) {
  1968.         return e && e.__esModule ? e : {
  1969.             default: e
  1970.         }
  1971.     }
  1972.     e.exports = function() {
  1973.         function e() {
  1974.             (0, o.default)(this, e)
  1975.         }
  1976.         return (0, a.default)(e, null, [{
  1977.             key: "init",
  1978.             value: function() {
  1979.                 this.viruses = new i.default
  1980.             }
  1981.         }, {
  1982.             key: "add",
  1983.             value: function(e) {
  1984.                 this.viruses.add(e)
  1985.             }
  1986.         }, {
  1987.             key: "render",
  1988.             value: function() {
  1989.                 if ("on" === Menu.virusRange) {
  1990.                     var e = Game.ctx;
  1991.                     e.globalAlpha = .1, e.fillStyle = "#ffffff", this.viruses.forEach(function(t) {
  1992.                         var n = 0 < t.fadeStartTime ? Math.max(1 - (HSLO.time - t.fadeStartTime) / Menu.CellAnimation, 0) : 1;
  1993.                         e.globalAlpha = .1 * n, e.beginPath(), e.arc(n.animX, t.animY, n.animRadius + 760, 0, Game.pi2, !0), e.closePath(), e.fill()
  1994.                     }), e.globalAlpha = 1
  1995.                 }
  1996.             }
  1997.         }, {
  1998.             key: "reset",
  1999.             value: function() {
  2000.                 this.viruses.clear()
  2001.             }
  2002.         }]), e
  2003.     }()
  2004. }, function(e, t, n) {
  2005.     "use strict";
  2006.     var i = a(n(0)),
  2007.         o = a(n(1));
  2008.  
  2009.     function a(e) {
  2010.         return e && e.__esModule ? e : {
  2011.             default: e
  2012.         }
  2013.     }
  2014.     e.exports = function() {
  2015.         function e() {
  2016.             (0, i.default)(this, e)
  2017.         }
  2018.         return (0, o.default)(e, null, [{
  2019.             key: "init",
  2020.             value: function() {
  2021.                 this.ejectInterval = !1
  2022.             }
  2023.         }, {
  2024.             key: "stopMovementToggle",
  2025.             value: function() {
  2026.                 Client.movementPaused = !Client.movementPaused
  2027.             }
  2028.         }, {
  2029.             key: "feed",
  2030.             value: function() {
  2031.                 Listener.send(), Packets.eject()
  2032.             }
  2033.         }, {
  2034.             key: "macroFeed",
  2035.             value: function(e) {
  2036.                 var t = this;
  2037.                 if (e) {
  2038.                     if (this.ejectInterval) return;
  2039.                     this.feed(), this.ejectInterval = setInterval(function() {
  2040.                         t.feed()
  2041.                     }, 80)
  2042.                 } else this.ejectInterval && (clearInterval(this.ejectInterval), this.ejectInterval = !1)
  2043.             }
  2044.         }, {
  2045.             key: "split",
  2046.             value: function() {
  2047.                 Listener.send(), Packets.split()
  2048.             }
  2049.         }, {
  2050.             key: "cellChange",
  2051.             value: function() {
  2052.                 Listener.send(), Packets.tab()
  2053.             }
  2054.         }, {
  2055.             key: "doubleSplit",
  2056.             value: function() {
  2057.                 var e = this;
  2058.                 this.split(), setTimeout(function() {
  2059.                     e.split()
  2060.                 }, 40)
  2061.             }
  2062.         }, {
  2063.             key: "split16",
  2064.             value: function() {
  2065.                 var e = this;
  2066.                 window.isUltra ? (this.split(), setTimeout(function() {
  2067.                     e.split()
  2068.                 }, 40), setTimeout(function() {
  2069.                     e.split()
  2070.                 }, 80), setTimeout(function() {
  2071.                     e.split()
  2072.                 }, 120)) : (Listener.send(), Packets.split16())
  2073.             }
  2074.         }, {
  2075.             key: "toggleCell",
  2076.             value: function() {
  2077.                 this.cellChange()
  2078.             }
  2079.         }, {
  2080.             key: "toggleSpectate",
  2081.             value: function() {
  2082.                 Targeting.isTurnedOn ? (Targeting.reset(), Targeting.target1.turnedOn = !1, Targeting.target2.turnedOn = !1, SpectateTarget.mouseViewport()) : Packets.freeSpectate(), Camera.freeSpectate ? SpectateTarget.mouseViewport() : SpectateTarget.topViewport(), Targeting.target1.turnedOn = !1, Targeting.target2.turnedOn = !1
  2083.             }
  2084.         }, {
  2085.             key: "chat",
  2086.             value: function() {
  2087.                 ChatRoom.enter()
  2088.             }
  2089.         }, {
  2090.             key: "command",
  2091.             value: function(e) {
  2092.                 var t = CommandManager["command" + e];
  2093.                 if (0 <= t.indexOf("%sector%")) {
  2094.                     var n = gMap.getLocation(Camera.x, Camera.y);
  2095.                     t = t.replace("%sector%", n)
  2096.                 }
  2097.                 SocketManager.chat(2, t)
  2098.             }
  2099.         }, {
  2100.             key: "setZoom",
  2101.             value: function(e) {
  2102.                 Camera.targetViewport = e
  2103.             }
  2104.         }, {
  2105.             key: "toggleCellNick",
  2106.             value: function() {
  2107.                 var e = Storage.get("settings", "cellNick");
  2108.                 Menu.cellNick = "off" === Menu.cellNick ? "off" !== e && e || "on" : "off"
  2109.             }
  2110.         }, {
  2111.             key: "toggleCellMass",
  2112.             value: function() {
  2113.                 var e = Storage.get("settings", "cellMass");
  2114.                 Menu.cellMass = "off" === Menu.cellMass ? "off" !== e && e || "shortened" : "off"
  2115.             }
  2116.         }, {
  2117.             key: "toggleGameFood",
  2118.             value: function() {
  2119.                 var e = Storage.get("settings", "food");
  2120.                 Menu.food = "off" === Menu.food ? "off" !== e && e || "monoColored" : "off"
  2121.             }
  2122.         }, {
  2123.             key: "toggleBGsectors",
  2124.             value: function() {
  2125.                 var e = Storage.get("settings", "bgSectors");
  2126.                 Menu.bgSectors = "off" === Menu.bgSectors ? "off" !== e && e || "normal" : "off"
  2127.             }
  2128.         }, {
  2129.             key: "toggleSkin",
  2130.             value: function() {
  2131.                 var e = Storage.get("settings", "cellSkins");
  2132.                 Menu.cellSkins = "off" === Menu.cellSkins ? "off" !== e && e || "all" : "off"
  2133.             }
  2134.         }, {
  2135.             key: "toggleSplitRings",
  2136.             value: function() {
  2137.                 var e = Storage.get("settings", "splitRings");
  2138.                 Menu.splitRings = "off" === Menu.splitRings ? "off" !== e && e || "on" : "off"
  2139.             }
  2140.         }, {
  2141.             key: "toggleOpponentRings",
  2142.             value: function() {
  2143.                 var e = Storage.get("settings", "opponentRings");
  2144.                 Menu.opponentRings = "off" === Menu.opponentRings ? "off" !== e && e || "on" : "off"
  2145.             }
  2146.         }, {
  2147.             key: "respawn",
  2148.             value: function() {
  2149.                 SocketClient.connect(SocketClient.ip);
  2150.                 var e = setInterval(function() {
  2151.                     SocketClient.connected && (Packets.spawn(), clearInterval(e))
  2152.                 }, 100)
  2153.             }
  2154.         }]), e
  2155.     }()
  2156. }, function(e, t, n) {
  2157.     "use strict";
  2158.     var i = a(n(0)),
  2159.         o = a(n(1));
  2160.  
  2161.     function a(e) {
  2162.         return e && e.__esModule ? e : {
  2163.             default: e
  2164.         }
  2165.     }
  2166.     e.exports = function() {
  2167.         function e() {
  2168.             (0, i.default)(this, e)
  2169.         }
  2170.         return (0, o.default)(e, null, [{
  2171.             key: "getBuffer",
  2172.             value: function(e) {
  2173.                 var t = new DataView(e.data);
  2174.                 this.parse(t)
  2175.             }
  2176.         }, {
  2177.             key: "parse",
  2178.             value: function(e) {
  2179.                 var t = new Reader(e);
  2180.                 switch (t.readUInt8()) {
  2181.                     case 15:
  2182.                         t.readUInt16(1, !0);
  2183.                         break;
  2184.                     case 16:
  2185.                         this.worldUpdate(t);
  2186.                         break;
  2187.                     case 17:
  2188.                         this.getSpectateData(t);
  2189.                         break;
  2190.                     case 18:
  2191.                         this.clearCells();
  2192.                         break;
  2193.                     case 32:
  2194.                         this.getMyCellId(t);
  2195.                         break;
  2196.                     case 49:
  2197.                         this.getLeaderboard5(t);
  2198.                         break;
  2199.                     case 50:
  2200.                         this.getLeaderboardTeam(t);
  2201.                         break;
  2202.                     case 54:
  2203.                         this.getLeaderboard(t);
  2204.                         break;
  2205.                     case 64:
  2206.                         this.borderUpdate(t);
  2207.                         break;
  2208.                     case 226:
  2209.                         this.ping(t)
  2210.                 }
  2211.             }
  2212.         }, {
  2213.             key: "getSpectateData",
  2214.             value: function(e) {
  2215.                 Camera.spectatePoint.x = e.readFloat32(), Camera.spectatePoint.y = e.readFloat32(), Camera.autoZoomViewport = e.readFloat32()
  2216.             }
  2217.         }, {
  2218.             key: "clearCells",
  2219.             value: function() {
  2220.                 console.log("Resetting World..."), Engine.cells.clear(), Engine.myCellsIDs.clear(), Engine.myCells.clear(), Engine.eatenCellIds.clear()
  2221.             }
  2222.         }, {
  2223.             key: "getMyCellId",
  2224.             value: function(e) {
  2225.                 var t = e.readUInt32();
  2226.                 Engine.myCellsIDs.add(t)
  2227.             }
  2228.         }, {
  2229.             key: "getLeaderboard",
  2230.             value: function(e) {
  2231.                 Leaderboard.clear();
  2232.                 for (var t = e.readUInt32(), n = 1; n <= t; ++n) {
  2233.                     for (var i, o = e.readUInt32(), a = ""; 0 != (i = e.readUInt16());) a += String.fromCharCode(i);
  2234.                     Leaderboard.add(a, n, o)
  2235.                 }
  2236.                 Leaderboard.update()
  2237.             }
  2238.         }, {
  2239.             key: "getLeaderboardTeam",
  2240.             value: function(e) {
  2241.                 Leaderboard.clear(), e.readUInt32(), Leaderboard.team(e.readFloat32(), e.readFloat32(), e.readFloat32())
  2242.             }
  2243.         }, {
  2244.             key: "getLeaderboard5",
  2245.             value: function(e) {
  2246.                 Leaderboard.clear();
  2247.                 for (var t = e.readUInt32(), n = 1; n <= t; ++n) {
  2248.                     for (var i, o = e.readUInt32(), a = ""; 0 != (i = e.readUInt16());) a += String.fromCharCode(i);
  2249.                     try {
  2250.                         a = JSON.parse(a).name
  2251.                     } catch (e) {}
  2252.                     a = a || "An unnamed cell", Leaderboard.add(a, n, o, 0, 0)
  2253.                 }
  2254.                 Leaderboard.update()
  2255.             }
  2256.         }, {
  2257.             key: "getRecieveKey",
  2258.             value: function(e) {
  2259.                 ie.recieveKey = e.readUInt32()
  2260.             }
  2261.         }, {
  2262.             key: "compressedPacket",
  2263.             value: function(e) {
  2264.                 e.decompress();
  2265.                 var t = e.readUInt8();
  2266.                 16 === t ? this.worldUpdate(e) : 64 === t && this.borderUpdate(e)
  2267.             }
  2268.         }, {
  2269.             key: "worldUpdate",
  2270.             value: function(e) {
  2271.                 window.isUltra ? this.worldUpdateGaver(e) : this.worldUpdateCellz(e)
  2272.             }
  2273.         }, {
  2274.             key: "worldUpdateCellz",
  2275.             value: function(e) {
  2276.                 for (var t = "on" === Menu.eatAnimation, n = e.readUInt16(); n--;) {
  2277.                     var i = e.readUInt32(),
  2278.                         o = e.readUInt32();
  2279.                     t && Engine.eatCell(i, o)
  2280.                 }
  2281.                 for (var a = function() {
  2282.                         var t = e.readUInt32();
  2283.                         if (0 === t) return "break";
  2284.                         var n = Engine.getCell(t);
  2285.                         n.x = e.readInt32(), n.y = e.readInt32(), n.radius = e.readInt16();
  2286.                         var i = e.readUInt8(),
  2287.                             o = e.readUInt8(),
  2288.                             a = e.readUInt8();
  2289.                         n.setColor(i, o, a);
  2290.                         var u = e.readUInt8();
  2291.                         if (16 & u && (n.activeStroke = e.readUInt8()), 4 & u) {
  2292.                             for (r = "";;) {
  2293.                                 if (0 == (c = e.readUInt16())) {
  2294.                                     try {
  2295.                                         n.extras = JSON.parse(r)
  2296.                                     } catch (e) {}
  2297.                                     break
  2298.                                 }
  2299.                                 r += String.fromCharCode(c)
  2300.                             }
  2301.                             r && (n.extras = JSON.parse(r)), s = !1, Engine.myCells.forEach(function(e) {
  2302.                                 e.id == t && (s = !0)
  2303.                             }), s && !Engine.myPIDs.has(n.worldID) && (Socket.send("extraPID", [n.worldID, $("#skin").val()]), Engine.myPIDs.add(n.worldID))
  2304.                         }
  2305.                         for (1 & u && (n.isVirus = !0), n.radius < 15 && (n.isFood = !0), l = ""; 0 != (c = e.readUInt16());) l += String.fromCharCode(c);
  2306.                         l && (n.nick = l)
  2307.                     }; !e.endOfBuffer();) {
  2308.                     var r, s, l, c;
  2309.                     if ("break" === a()) break
  2310.                 }
  2311.                 for (var u = e.readUInt32(), d = 0; d < u; d++) {
  2312.                     var h = e.readUInt32();
  2313.                     Engine.removeCell(h)
  2314.                 }
  2315.             }
  2316.         }, {
  2317.             key: "worldUpdateGaver",
  2318.             value: function(e) {
  2319.                 for (var t = "on" === Menu.eatAnimation, n = e.readUInt16(); n--;) {
  2320.                     var i = e.readUInt32(),
  2321.                         o = e.readUInt32();
  2322.                     t && Engine.eatCell(i, o)
  2323.                 }
  2324.                 for (; !e.endOfBuffer();) {
  2325.                     var a = e.readUInt32();
  2326.                     if (0 === a) break;
  2327.                     var r = Engine.getCell(a);
  2328.                     r.x = e.readInt32(), r.y = e.readInt32(), r.radius = e.readInt16();
  2329.                     var s = e.readUInt8(),
  2330.                         l = e.readUInt8(),
  2331.                         c = e.readUInt8();
  2332.                     r.setColor(s, l, c);
  2333.                     var u = e.readUInt8();
  2334.                     if (2 & u && e.readUInt32(), 4 & u) {
  2335.                         for (var d = "";;) {
  2336.                             if (0 == (h = e.readUInt16())) {
  2337.                                 try {
  2338.                                     r.extras = JSON.parse(d)
  2339.                                 } catch (e) {}
  2340.                                 break
  2341.                             }
  2342.                             d += String.fromCharCode(h)
  2343.                         }
  2344.                         d && (r.extras = JSON.parse(d))
  2345.                     }
  2346.                     1 & u && (r.isVirus = !0), r.radius <= 15 && (r.isFood = !0);
  2347.                     for (var h, f = ""; 0 != (h = e.readUInt16());) f += String.fromCharCode(h);
  2348.                     f && (r.nick = f)
  2349.                 }
  2350.                 for (var m = e.readUInt32(), g = 0; g < m; g++) {
  2351.                     var p = e.readUInt32();
  2352.                     Engine.removeCell(p)
  2353.                 }
  2354.             }
  2355.         }, {
  2356.             key: "borderUpdate",
  2357.             value: function(e) {
  2358.                 var t = 0 | e.readFloat64(),
  2359.                     n = 0 | e.readFloat64(),
  2360.                     i = 0 | e.readFloat64(),
  2361.                     o = 0 | e.readFloat64();
  2362.                 gMap.update(t, n, i, o)
  2363.             }
  2364.         }, {
  2365.             key: "ping",
  2366.             value: function(e) {
  2367.                 var t = e.readUInt16();
  2368.                 Packets.pong(t)
  2369.             }
  2370.         }, {
  2371.             key: "getChatMessage",
  2372.             value: function(e) {
  2373.                 var t = e.readUInt8(),
  2374.                     n = !!(16 & t),
  2375.                     i = !!(32 & t),
  2376.                     o = !!(64 & t);
  2377.                 e.readUInt8(), e.readUInt8(), e.readUInt8();
  2378.                 for (var a = ""; 0 != (r = e.readUInt16());) a += String.fromCharCode(r);
  2379.                 for (var r, s = ""; 0 != (r = e.readUInt16());) s += String.fromCharCode(r);
  2380.                 i && "SERVER" !== a && (a = "[SERVER] " + a), o && (a = "[ADMIN] " + a), n && (a = "[MOD] " + a), Chat.normal(a, s)
  2381.             }
  2382.         }]), e
  2383.     }()
  2384. }, function(e, t, n) {
  2385.     "use strict";
  2386.     var i = a(n(0)),
  2387.         o = a(n(1));
  2388.  
  2389.     function a(e) {
  2390.         return e && e.__esModule ? e : {
  2391.             default: e
  2392.         }
  2393.     }
  2394.     e.exports = function() {
  2395.         function e() {
  2396.             (0, i.default)(this, e)
  2397.         }
  2398.         return (0, o.default)(e, null, [{
  2399.             key: "init",
  2400.             value: function() {
  2401.                 this.handshake1(), this.handshake2(), this.accountPacketSent = !1, Camera.isSpectating = !1, Camera.freeSpectate = !1, console.log("Connected to: " + SocketClient.ip), SocketClient.connected = !0
  2402.             }
  2403.         }, {
  2404.             key: "createView",
  2405.             value: function(e) {
  2406.                 return new DataView(new ArrayBuffer(e))
  2407.             }
  2408.         }, {
  2409.             key: "sendPacket",
  2410.             value: function(e) {
  2411.                 SocketClient.send(e.buffer)
  2412.             }
  2413.         }, {
  2414.             key: "handshake1",
  2415.             value: function() {
  2416.                 var e = new Uint8Array([254, 5, 0, 0, 0]);
  2417.                 SocketClient.send(e.buffer)
  2418.             }
  2419.         }, {
  2420.             key: "handshake2",
  2421.             value: function() {
  2422.                 var e = new Uint8Array([255, 0, 0, 0, 0]);
  2423.                 SocketClient.send(e.buffer)
  2424.             }
  2425.         }, {
  2426.             key: "mouse",
  2427.             value: function(e, t) {
  2428.                 if (SocketClient.connected) {
  2429.                     var n = this.createView(13);
  2430.                     n.setUint8(0, 16, !0), n.setInt32(1, e, !0), n.setInt32(5, t, !0), n.setInt32(9, 0, !0), this.sendPacket(n)
  2431.                 }
  2432.             }
  2433.         }, {
  2434.             key: "spectate",
  2435.             value: function() {
  2436.                 if (SocketClient.connected && !Camera.isSpectating) {
  2437.                     Camera.isSpectating = !0;
  2438.                     var e = this.createView(1);
  2439.                     e.setUint8(0, 1, !0), this.sendPacket(e), Camera.targetViewport = .1
  2440.                 }
  2441.             }
  2442.         }, {
  2443.             key: "spawn",
  2444.             value: function() {
  2445.                 if (SocketClient.connected && !Client.isAlive) {
  2446.                     if (TeamPlayers.isSpectator) return Chat.alert("SERVER", Chat.current.notif.cantPlay2Tag);
  2447.                     Camera.isSpectating = !1;
  2448.                     var e = unescape(encodeURIComponent(Client.nick)),
  2449.                         t = e.length,
  2450.                         n = this.createView(1 + 2 * t);
  2451.                     n.setUint8(0, 0, !0);
  2452.                     for (var i = 0; i < t; i++) n.setUint16(1 + 2 * i, e.charCodeAt(i), !0);
  2453.                     this.sendPacket(n)
  2454.                 }
  2455.             }
  2456.         }, {
  2457.             key: "split",
  2458.             value: function() {
  2459.                 if (SocketClient.connected) {
  2460.                     var e = this.createView(1);
  2461.                     e.setUint8(0, 17, !0), this.sendPacket(e)
  2462.                 }
  2463.             }
  2464.         }, {
  2465.             key: "split16",
  2466.             value: function() {
  2467.                 if (SocketClient.connected) {
  2468.                     var e = this.createView(1);
  2469.                     e.setUint8(0, 24, !0), this.sendPacket(e)
  2470.                 }
  2471.             }
  2472.         }, {
  2473.             key: "tab",
  2474.             value: function() {
  2475.                 if (SocketClient.connected) {
  2476.                     var e = new Uint8Array([26]);
  2477.                     this.sendPacket(e)
  2478.                 }
  2479.             }
  2480.         }, {
  2481.             key: "eject",
  2482.             value: function() {
  2483.                 if (SocketClient.connected) {
  2484.                     var e = this.createView(1);
  2485.                     e.setUint8(0, 21, !0), this.sendPacket(e)
  2486.                 }
  2487.             }
  2488.         }, {
  2489.             key: "freeSpectate",
  2490.             value: function() {
  2491.                 if (SocketClient.connected) {
  2492.                     Camera.freeSpectate = !Camera.freeSpectate;
  2493.                     var e = this.createView(1);
  2494.                     e.setUint8(0, 18, !0), this.sendPacket(e)
  2495.                 }
  2496.             }
  2497.         }, {
  2498.             key: "pong",
  2499.             value: function(e) {
  2500.                 if (SocketClient.connected) {
  2501.                     var t = this.createView(3);
  2502.                     t.setUint8(0, 227, !0), t.setUint16(1, e, !0), this.sendPacket(t)
  2503.                 }
  2504.             }
  2505.         }, {
  2506.             key: "chat",
  2507.             value: function(e) {
  2508.                 if (SocketClient.connected) {
  2509.                     var t = e.trim();
  2510.                     if (t.length < 200 && t.length > 0) {
  2511.                         var n = this.createView(2 + 2 * t.length),
  2512.                             i = 0;
  2513.                         n.setUint8(i++, 99, !0), n.setUint8(i++, 0, !0);
  2514.                         for (var o = 0; o < t.length; ++o) n.setUint16(i, t.charCodeAt(o), !0), i += 2;
  2515.                         this.sendPacket(n)
  2516.                     }
  2517.                 }
  2518.             }
  2519.         }]), e
  2520.     }()
  2521. }, function(e, t, n) {
  2522.     "use strict";
  2523.     var i = a(n(0)),
  2524.         o = a(n(1));
  2525.  
  2526.     function a(e) {
  2527.         return e && e.__esModule ? e : {
  2528.             default: e
  2529.         }
  2530.     }
  2531.     e.exports = function() {
  2532.         function e() {
  2533.             (0, i.default)(this, e)
  2534.         }
  2535.         return (0, o.default)(e, null, [{
  2536.             key: "init",
  2537.             value: function() {
  2538.                 this.fps = 0, this.lastTime = HSLO.time, this.div = $("#fps-hud")[0]
  2539.             }
  2540.         }, {
  2541.             key: "run",
  2542.             value: function() {
  2543.                 this.fps++, 1e3 < HSLO.time - this.lastTime && (this.lastTime = HSLO.time, this.div.innerHTML = this.fps + "fps [" + (0 | HSLO.loop.maxFps) + "Hz]", this.fps = 0)
  2544.             }
  2545.         }]), e
  2546.     }()
  2547. }, function(e, t, n) {
  2548.     "use strict";
  2549.     var i = a(n(0)),
  2550.         o = a(n(1));
  2551.  
  2552.     function a(e) {
  2553.         return e && e.__esModule ? e : {
  2554.             default: e
  2555.         }
  2556.     }
  2557.     e.exports = function() {
  2558.         function e() {
  2559.             (0, i.default)(this, e)
  2560.         }
  2561.         return (0, o.default)(e, null, [{
  2562.             key: "init",
  2563.             value: function() {
  2564.                 this.lastUpdateTime = 0, this.div = $("#stats-hud")[0], this.lockClosed = '<i class="fa fa-lock"></i>', this.lockOpened = '<i class="fa fa-unlock-alt"></i>', this.speedometer = '<i class="fa fa-tachometer"></i>', this.iconPause = '<i class="fa fa-pause-circle"></i>'
  2565.             }
  2566.         }, {
  2567.             key: "update",
  2568.             value: function() {
  2569.                 1e3 < HSLO.time - this.lastUpdateTime && (this.lastUpdateTime = HSLO.time, this.refresh())
  2570.             }
  2571.         }, {
  2572.             key: "refresh",
  2573.             value: function() {
  2574.                 var e = "";
  2575.                 Client.isAlive && (e += this.score + this.n16 + this.STE + this.speed), e += this.PIO + this.paused + this.zoomLock, this.div.innerHTML = e
  2576.             }
  2577.         }, {
  2578.             key: "zoomLock",
  2579.             get: function() {
  2580.                 return "on" === Menu.autoZoom ? this.lockClosed : this.lockOpened
  2581.             }
  2582.         }, {
  2583.             key: "score",
  2584.             get: function() {
  2585.                 return
  2586.             }
  2587.         }, {
  2588.             key: "n16",
  2589.             get: function() {
  2590.                 return "[" + Client.pieceCount + "/16]   "
  2591.             }
  2592.         }, {
  2593.             key: "STE",
  2594.             get: function() {
  2595.                 var e = Client.biggestPieceMass;
  2596.                 return 35 < e ? "STE: " + (0 | e * (1e3 > e ? .35 : .38)) + "   " : ""
  2597.             }
  2598.         }, {
  2599.             key: "speed",
  2600.             get: function() {
  2601.                 return Client.animSpeed += (Client.speed - Client.animSpeed) / 3, Client.speed = 0, this.speedometer + " " + (0 | Client.animSpeed) + "px/s   "
  2602.             }
  2603.         }, {
  2604.             key: "PIO",
  2605.             get: function() {
  2606.                 var e = SocketClient.packetCount.in,
  2607.                     t = SocketClient.packetCount.out;
  2608.                 return SocketClient.packetCount.in = 0, SocketClient.packetCount.out = 0, "PIO: " + e + "|" + t + "   "
  2609.             }
  2610.         }, {
  2611.             key: "paused",
  2612.             get: function() {
  2613.                 return Client.movementPaused ? "[" + this.iconPause + " " + (LangHandler.current.huds.paused || "Paused") + "]   " : ""
  2614.             }
  2615.         }]), e
  2616.     }()
  2617. }, function(e, t, n) {
  2618.     "use strict";
  2619.     var i = a(n(0)),
  2620.         o = a(n(1));
  2621.  
  2622.     function a(e) {
  2623.         return e && e.__esModule ? e : {
  2624.             default: e
  2625.         }
  2626.     }
  2627.     e.exports = function() {
  2628.         function e() {
  2629.             (0, i.default)(this, e)
  2630.         }
  2631.         return (0, o.default)(e, null, [{
  2632.             key: "init",
  2633.             value: function() {
  2634.                 Sound.init(), Chat.init(), Menu.init(), HotkeysPanel.init(), Profile.init(), Theming.init(), Leaderboard.init(), Minimap.init(), FPS.init(), TeamList.init(), ChatRoom.init(), HUDStats.init(), SpectateTarget.init(), this.isOpened = !1, this.changeLog = "changeLogV6", this.gMode = ":party", this.div = $("#menu-overlay"), this.deathPanel = $(".endStats"), this.streammode = !Storage.get("extras", "streammode"), this.toggleStreammode(), this.buttons(), this.versionCheck()
  2635.             }
  2636.         }, {
  2637.             key: "buttons",
  2638.             value: function() {
  2639.                 var e = this;
  2640.                 $(".refreshServers").click(function() {
  2641.                     Servers.init()
  2642.                 }), $("#button-settings").click(function() {
  2643.                     e.closeSubMenus(), Menu.toggle()
  2644.                 }), $("#button-play").click(function() {
  2645.                     e.play()
  2646.                 }), $("#button-spectate").click(function() {
  2647.                     Packets.spectate(), e.close()
  2648.                 }), $("#button-continue").click(function() {
  2649.                     HUD.open()
  2650.                 }), $("#button-inputs").click(function() {
  2651.                     e.closeSubMenus(), HotkeysPanel.toggle()
  2652.                 }), $("#button-theme").click(function() {
  2653.                     e.closeSubMenus(), Theming.toggle()
  2654.                 }), $("#tag, #tag2, #double-tag, #normal-tag").focus(function() {
  2655.                     $(".double-tags").show(), $("#nick").css("width", Menu.isSpectator ? "60px" : "125px")
  2656.                 }).blur(function() {
  2657.                     $(".double-tags").hide(), $("#nick").css("width", "206px")
  2658.                 }), $("#tag2").blur(function() {
  2659.                     Storage.set("extras", "tag2", $("#tag2").val())
  2660.                 }), $("#tag2").val(Storage.get("extras", "tag2")), $("#regions").change(function() {
  2661.                     Storage.set("extras", "region", $("#regions").val())
  2662.                 }), $("#regions").val(Storage.get("extras", "region") || "JP-Tokyo"), $("#gamemode").change(function() {
  2663.                     Storage.set("extras", "gameMode", $("#gamemode").val()), e.gMode = Storage.get("extras", "gameMode")
  2664.                 }), $("#gamemode").val(Storage.get("extras", "gameMode") || ":party"), this.gMode = Storage.get("extras", "gameMode") || ":party", $("#normal-tag").click(function() {
  2665.                     e.normalTag()
  2666.                 }), $("#minimap-show-1").click(function() {
  2667.                     $("#minimap-show-" + Minimap.selector).removeClass("active"), $("#minimap-show-1").addClass("active"), Minimap.selector = 1
  2668.                 }), $("#minimap-show-2").click(function() {
  2669.                     $("#minimap-show-" + Minimap.selector).removeClass("active"), $("#minimap-show-2").addClass("active"), Minimap.selector = 2
  2670.                 }), $("#minimap-show-0").click(function() {
  2671.                     $("#minimap-show-" + Minimap.selector).removeClass("active"), $("#minimap-show-0").addClass("active"), Minimap.selector = 0
  2672.                 }), $("#streamMode").click(function() {
  2673.                     e.toggleStreammode()
  2674.                 }), $("#spectate-mode-top").click(function() {
  2675.                     e.spectateModeTop()
  2676.                 }), $("#spectate-mode-mouse").click(function() {
  2677.                     e.spectateModeMouse()
  2678.                 }), $("#spectate-mode-target").click(function() {
  2679.                     e.spectateModeTarget()
  2680.                 }), $(".updateButton").click(function() {
  2681.                     $("#announcement").fadeOut(250), Storage.set("extras", e.changeLog, !0)
  2682.                 }), Storage.get("extras", this.changeLog) || $("#announcement").fadeIn()
  2683.             }
  2684.         }, {
  2685.             key: "normalTag",
  2686.             value: function() {
  2687.                 $("#normal-tag").addClass("active-tag"), $("#double-tag").removeClass("active-tag"), $("#tag2").hide(), $("#nick").css("width", "125px"), $("#teams-vs").hide(), $("#info-tp").show(), SocketManager.spectator(!1), Menu.isSpectator = !1, $(".minimap-button").each(function() {
  2688.                     $(this).hide()
  2689.                 })
  2690.             }
  2691.         }, {
  2692.             key: "play",
  2693.             value: function() {
  2694.                 if ("" === HSLO.verifyToken) return grecaptcha.execute();
  2695.                 this.close(), Packets.spawn(), Engine.myPIDs.forEach(function(e) {
  2696.                     Socket.send("extraPID", [e, $("#skin").val()])
  2697.                 })
  2698.             }
  2699.         }, {
  2700.             key: "closeSubMenus",
  2701.             value: function() {
  2702.                 HotkeysPanel.close(), Menu.close(), Theming.close()
  2703.             }
  2704.         }, {
  2705.             key: "toggle",
  2706.             value: function() {
  2707.                 this.isOpened ? this.close() : this.open()
  2708.             }
  2709.         }, {
  2710.             key: "close",
  2711.             value: function() {
  2712.                 this.isOpened = !1, this.div.fadeOut(250)
  2713.             }
  2714.         }, {
  2715.             key: "open",
  2716.             value: function() {
  2717.                 this.isOpened = !0, this.deathPanel.fadeOut(), this.div.fadeIn(250)
  2718.             }
  2719.         }, {
  2720.             key: "continue",
  2721.             value: function() {
  2722.                 this.deathPanel.fadeIn(250)
  2723.             }
  2724.         }, {
  2725.             key: "toggleStreammode",
  2726.             value: function() {
  2727.                 this.streammode ? ($("#nick, #tag, #tag2, #party-token").removeClass("input-hidden"), $("#streamMode").html('<i class="fa fa-eye"></i>'), this.streammode = !1, Storage.set("extras", "streammode", this.streammode)) : ($("#nick, #tag, #tag2, #party-token").addClass("input-hidden"), $("#streamMode").html('<i class="fa fa-eye-slash"></i>'), this.streammode = !0, Storage.set("extras", "streammode", this.streammode))
  2728.             }
  2729.         }, {
  2730.             key: "spectateModeTop",
  2731.             value: function() {
  2732.                 !Client.isAlive && Camera.isSpectating && Camera.freeSpectate && (SpectateTarget.topViewport(), Packets.freeSpectate())
  2733.             }
  2734.         }, {
  2735.             key: "spectateModeMouse",
  2736.             value: function() {
  2737.                 Client.isAlive || !Camera.isSpectating || Camera.freeSpectate && !Targeting.isTurnedOn ? (Packets.freeSpectate(), SpectateTarget.mouseViewport()) : Targeting.isTurnedOn ? (Targeting.target1.turnedOn = !1, Targeting.target2.turnedOn = !1, SpectateTarget.mouseViewport()) : (Packets.freeSpectate(), SpectateTarget.mouseViewport())
  2738.             }
  2739.         }, {
  2740.             key: "spectateModeTarget",
  2741.             value: function() {
  2742.                 "on" === Menu.targeting ? Chat.command("SERVER", LangHandler.current.notif.targeting_on) : Chat.command("SERVER", LangHandler.current.notif.targeting_off)
  2743.             }
  2744.         }, {
  2745.             key: "versionCheck",
  2746.             value: function() {
  2747.                 "6.0.3" !== Storage.get("extras", "version") && (Storage.set("extras", "version", "6.0.3"), Storage.set("extras", this.changeLog, !1), $("#announcement").fadeIn())
  2748.             }
  2749.         }]), e
  2750.     }()
  2751. }, function(e, t, n) {
  2752.     "use strict";
  2753.     var i = a(n(0)),
  2754.         o = a(n(1));
  2755.  
  2756.     function a(e) {
  2757.         return e && e.__esModule ? e : {
  2758.             default: e
  2759.         }
  2760.     }
  2761.     e.exports = function() {
  2762.         function e() {
  2763.             (0, i.default)(this, e)
  2764.         }
  2765.         return (0, o.default)(e, null, [{
  2766.             key: "init",
  2767.             value: function() {
  2768.                 this.leftClick = Storage.get("mouse", "leftClick") || "off", this.middleClick = Storage.get("mouse", "middleClick") || "commander", this.rightClick = Storage.get("mouse", "rightClick") || "off", this.x = 0, this.y = 0, this.canvas = document.getElementById("canvas"), this.canvasX = 0, this.canvasY = 0, this.setDomValues(), this.addEvents()
  2769.             }
  2770.         }, {
  2771.             key: "send",
  2772.             value: function() {
  2773.                 return this.canvasX = (this.x - this.canvas.width / 2) / Camera.viewport + Camera.x, this.canvasY = (this.y - this.canvas.height / 2) / Camera.viewport + Camera.y, Camera.isSpectating && Targeting.isTurnedOn ? void Packets.mouse(0 | Targeting.center.x, 0 | Targeting.center.y) : Client.movementPaused ? void Packets.mouse(0 | Client.x, 0 | Client.y) : void Packets.mouse(0 | this.canvasX, 0 | this.canvasY)
  2774.             }
  2775.         }, {
  2776.             key: "setDomValues",
  2777.             value: function() {
  2778.                 var e = this;
  2779.                 $(".mouse-options").each(function() {
  2780.                     var t = $(e).attr("type");
  2781.                     "range" === t ? Listener.handleRange(e, 2) : "options" === t && Listener.handleOptions(e, 2)
  2782.                 })
  2783.             }
  2784.         }, {
  2785.             key: "addEvents",
  2786.             value: function() {
  2787.                 var e = this;
  2788.                 $("#mouse").perfectScrollbar(), $("#mouse .fa-chevron-left").each(function() {
  2789.                     var e = this;
  2790.                     $(this).click(function() {
  2791.                         var t = $(e).parent(),
  2792.                             n = $(t).attr("type");
  2793.                         "options" === n ? Listener.handleOptions(t, 0) : "range" === n && Listener.handleRange(t, 0)
  2794.                     })
  2795.                 }), $("#mouse .fa-chevron-right").each(function() {
  2796.                     var e = this;
  2797.                     $(this).click(function() {
  2798.                         var t = $(e).parent(),
  2799.                             n = $(t).attr("type");
  2800.                         "options" === n ? Listener.handleOptions(t, 1) : "range" === n && Listener.handleRange(t, 1)
  2801.                     })
  2802.                 }), this.canvas.addEventListener("mousemove", function(t) {
  2803.                     e.x = t.clientX, e.y = t.clientY
  2804.                 }), this.canvas.addEventListener("mousedown", function(t) {
  2805.                     e.onMouseClick(t)
  2806.                 }), this.canvas.addEventListener("mouseup", function(t) {
  2807.                     e.onMouseRelease(t)
  2808.                 }), this.canvas.addEventListener("wheel", function(t) {
  2809.                     e.onMouseWheel(t)
  2810.                 }), this.canvas.addEventListener("contextmenu", function(e) {
  2811.                     e.preventDefault()
  2812.                 })
  2813.             }
  2814.         }, {
  2815.             key: "onMouseWheel",
  2816.             value: function(e) {
  2817.                 var t = Camera.targetViewport;
  2818.                 0 > e.wheelDelta ? t *= Menu.zoomSpeed / 100 : t /= Menu.zoomSpeed / 100, t = 2 < t ? 2 : .02 > t ? .02 : t, Camera.targetViewport = t
  2819.             }
  2820.         }, {
  2821.             key: "onMouseClick",
  2822.             value: function(e) {
  2823.                 var t = !1;
  2824.                 switch (e.which) {
  2825.                     case 1:
  2826.                         t = "leftClick";
  2827.                         break;
  2828.                     case 2:
  2829.                         t = "middleClick";
  2830.                         break;
  2831.                     case 3:
  2832.                         t = "rightClick"
  2833.                 }
  2834.                 if (t) {
  2835.                     if (Camera.isSpectating && "on" === Menu.targeting) {
  2836.                         var n = (e.clientX - (window.innerWidth >> 1)) / Camera.viewport + Camera.x,
  2837.                             i = (e.clientY - (window.innerHeight >> 1)) / Camera.viewport + Camera.y;
  2838.                         "leftClick" === t ? Targeting.lockTarget(n, i, 1) : "middleClick" === t ? Targeting.reset() : "rightClick" == t && Targeting.lockTarget(n, i, 2)
  2839.                     }
  2840.                     switch (this[t]) {
  2841.                         case "feed":
  2842.                             Settings.feed();
  2843.                             break;
  2844.                         case "macroFeed":
  2845.                             Settings.macroFeed(!0);
  2846.                             break;
  2847.                         case "split":
  2848.                             Settings.split();
  2849.                             break;
  2850.                         case "doubleSplit":
  2851.                             Settings.doubleSplit();
  2852.                             break;
  2853.                         case "split16":
  2854.                             Settings.split16();
  2855.                             break;
  2856.                         case "commander":
  2857.                             SocketManager.commander();
  2858.                             break;
  2859.                         case "off":
  2860.                             return
  2861.                     }
  2862.                 }
  2863.             }
  2864.         }, {
  2865.             key: "onMouseRelease",
  2866.             value: function(e) {
  2867.                 var t = !1;
  2868.                 switch (e.which) {
  2869.                     case 1:
  2870.                         t = "leftClick";
  2871.                         break;
  2872.                     case 2:
  2873.                         t = "middleClick";
  2874.                         break;
  2875.                     case 3:
  2876.                         t = "rightClick"
  2877.                 }
  2878.                 t && ("macroFeed" === this[t] && Settings.macroFeed(!1))
  2879.             }
  2880.         }, {
  2881.             key: "handleOptions",
  2882.             value: function(e, t) {
  2883.                 for (var n = $(e).attr("name"), i = $(e).find("b"), o = i.length, a = o, r = 0; a--;) {
  2884.                     var s = i[a];
  2885.                     "active" === $(s).attr("class") && (r = a)
  2886.                 }
  2887.                 if (1 === t) {
  2888.                     var l = r + 1 < o ? r + 1 : 0;
  2889.                     $(i[r]).removeAttr("class"), $(i[l]).attr("class", "active");
  2890.                     var c = $(i[l]).attr("value");
  2891.                     this.saveMouseOptions(n, c)
  2892.                 } else if (0 === t) {
  2893.                     var u = 0 < r ? r - 1 : o - 1;
  2894.                     $(i[r]).removeAttr("class"), $(i[u]).attr("class", "active");
  2895.                     var d = $(i[u]).attr("value");
  2896.                     this.saveMouseOptions(n, d)
  2897.                 } else if (2 === t) {
  2898.                     $(i[r]).removeAttr("class");
  2899.                     for (var h, f = o; f--;)
  2900.                         if (h = i[f], $(h).attr("value") === this[n]) {
  2901.                             $(h).attr("class", "active");
  2902.                             break
  2903.                         }
  2904.                 }
  2905.             }
  2906.         }, {
  2907.             key: "handleRange",
  2908.             value: function(e, t) {
  2909.                 var n = $(e).attr("name"),
  2910.                     i = $(e).find("span"),
  2911.                     o = i[0],
  2912.                     a = i[1],
  2913.                     r = ~~$(o).attr("min"),
  2914.                     s = ~~$(o).attr("max"),
  2915.                     l = ~~$(o).attr("step"),
  2916.                     c = ~~$(o).attr("value");
  2917.                 if (1 === t && c + l <= s) {
  2918.                     var u = l + c;
  2919.                     $(o).attr("value", u), $(a).css("width", ~~(100 * (u - r) / (s - r)) + "px"), this.saveMouseOptions(n, u)
  2920.                 } else if (0 === t && c - l >= r) {
  2921.                     var d = c - l;
  2922.                     $(o).attr("value", d), $(a).css("width", ~~(100 * (d - r) / (s - r)) + "px"), this.saveMouseOptions(n, d)
  2923.                 } else if (2 === t) {
  2924.                     var h = this[n];
  2925.                     $(o).attr("value", h), $(a).css("width", ~~(100 * (h - r) / (s - r)) + "px")
  2926.                 }
  2927.             }
  2928.         }, {
  2929.             key: "saveMouseOptions",
  2930.             value: function(e, t) {
  2931.                 this[e] = t, Storage.set("mouse", e, t)
  2932.             }
  2933.         }]), e
  2934.     }()
  2935. }, function(e, t, n) {
  2936.     "use strict";
  2937.     var i = a(n(0)),
  2938.         o = a(n(1));
  2939.  
  2940.     function a(e) {
  2941.         return e && e.__esModule ? e : {
  2942.             default: e
  2943.         }
  2944.     }
  2945.     var r = n(46);
  2946.     e.exports = function() {
  2947.         function e() {
  2948.             (0, i.default)(this, e)
  2949.         }
  2950.         return (0, o.default)(e, null, [{
  2951.             key: "init",
  2952.             value: function() {
  2953.                 this.selected = ~~r.get("profiles", "selected") || 1, this.wheelIsOpened = !1, this.tag = r.get("profiles", "tag") || "", this.setDomValues(), this.addEvents()
  2954.             }
  2955.         }, {
  2956.             key: "setDomValues",
  2957.             value: function() {
  2958.                 var e = r.get("profiles", "ProSplit.io");
  2959.                 e || (e = {
  2960.                     nick: "ProSplit.io",
  2961.                     skin: "https://i.imgur.com/bqVbL7n.png"
  2962.                 }), r.set("profiles", "ProSplit.io", e), $("#nick").val(e.nick), $("#skin").val(e.skin), $("#tag").val(this.tag), this.updateMainSkin();
  2963.                 for (var t = 8; 0 < t;) this.updatePreviewSkin(t), t--
  2964.             }
  2965.         }, {
  2966.             key: "addEvents",
  2967.             value: function() {
  2968.                 var e = this;
  2969.                 $("#tag").blur(function() {
  2970.                     e.setTag($("#tag").val()), SocketManager.spectator(!0)
  2971.                 }), $("#nick").blur(function() {
  2972.                     e.setNick($("#nick").val())
  2973.                 }), $("#skin").blur(function() {
  2974.                     e.setSkin($("#skin").val())
  2975.                 })
  2976.             }
  2977.         }, {
  2978.             key: "switch",
  2979.             value: function(e) {
  2980.                 this.selected = ~~e, r.set("profiles", "selected", e);
  2981.                 var t = r.get("profiles", "profile " + e);
  2982.                 t || (t = {
  2983.                     nick: "ProSplit.io",
  2984.                     skin: "https://i.imgur.com/bqVbL7n.png"
  2985.                 }), $("#nick").val(t.nick), $("#skin").val(t.skin), Client.nick = t.nick, Client.skin = t.skin, r.set("profiles", "ProSplit.io", t), this.updateMainSkin()
  2986.             }
  2987.         }, {
  2988.             key: "setNick",
  2989.             value: function(e) {
  2990.                 if (Client.isAlive) return $("#nick").val(Client.nick), Chat.alert("SERVER", LangHandler.current.notif.nickChangeInGame);
  2991.                 var t = r.get("profiles", "ProSplit.io");
  2992.                 t || (t = {
  2993.                     nick: "ProSplit.io",
  2994.                     skin: "https://i.imgur.com/bqVbL7n.png"
  2995.                 }), t.nick = e, r.set("profiles", "ProSplit.io", t), Client.nick = e
  2996.             }
  2997.         }, {
  2998.             key: "setSkin",
  2999.             value: function(e) {
  3000.                 var t = r.get("profiles", "ProSplit.io");
  3001.                 t || (t = {
  3002.                     nick: "ProSplit.io",
  3003.                     skin: "https://i.imgur.com/bqVbL7n.png"
  3004.                 }), t.skin = Game.code2Url(Game.getImgurCode(e)), r.set("profiles", "ProSplit.io", t), this.updateMainSkin(), this.updatePreviewSkin(this.selected), Client.skin = e
  3005.             }
  3006.         }, {
  3007.             key: "setTag",
  3008.             value: function(e) {
  3009.                 Client.tag = e, SocketManager.joinRoom(), r.set("profiles", "tag", e)
  3010.             }
  3011.         }, {
  3012.             key: "updateMainSkin",
  3013.             value: function() {
  3014.                 var e = Game.code2Url(Game.getImgurCode($("#skin").val()));
  3015.                 $(".skin-preview").css("background", "url(" + e + ")")
  3016.             }
  3017.         }, {
  3018.             key: "updatePreviewSkin",
  3019.             value: function(e) {
  3020.                 var t = r.get("profiles", "profile " + e);
  3021.                 if (t) {
  3022.                     var n = t.skin;
  3023.                     $(".skin-selector[value='" + e + "']").css("background", "url(" + n + ")")
  3024.                 }
  3025.             }
  3026.         }]), e
  3027.     }()
  3028. }, function(e, t, n) {
  3029.     var i = n(2),
  3030.         o = i.JSON || (i.JSON = {
  3031.             stringify: JSON.stringify
  3032.         });
  3033.     e.exports = function(e) {
  3034.         return o.stringify.apply(o, arguments)
  3035.     }
  3036. }, function(e, t, n) {
  3037.     "use strict";
  3038.     var i = a(n(0)),
  3039.         o = a(n(1));
  3040.  
  3041.     function a(e) {
  3042.         return e && e.__esModule ? e : {
  3043.             default: e
  3044.         }
  3045.     }
  3046.     e.exports = function() {
  3047.         function e(t) {
  3048.             (0, i.default)(this, e), this.dataView = t, this.index = 0, this.maxIndex = t.byteLength
  3049.         }
  3050.         return (0, o.default)(e, [{
  3051.             key: "readUInt8",
  3052.             value: function() {
  3053.                 var e = this.dataView.getUint8(this.index, !0);
  3054.                 return this.index++, e
  3055.             }
  3056.         }, {
  3057.             key: "readInt8",
  3058.             value: function() {
  3059.                 var e = this.dataView.getInt8(this.index, !0);
  3060.                 return this.index++, e
  3061.             }
  3062.         }, {
  3063.             key: "readUInt16",
  3064.             value: function() {
  3065.                 var e = this.dataView.getUint16(this.index, !0);
  3066.                 return this.index += 2, e
  3067.             }
  3068.         }, {
  3069.             key: "readInt16",
  3070.             value: function() {
  3071.                 var e = this.dataView.getInt16(this.index, !0);
  3072.                 return this.index += 2, e
  3073.             }
  3074.         }, {
  3075.             key: "readUInt32",
  3076.             value: function() {
  3077.                 var e = this.dataView.getUint32(this.index, !0);
  3078.                 return this.index += 4, e
  3079.             }
  3080.         }, {
  3081.             key: "readInt32",
  3082.             value: function() {
  3083.                 var e = this.dataView.getInt32(this.index, !0);
  3084.                 return this.index += 4, e
  3085.             }
  3086.         }, {
  3087.             key: "readFloat32",
  3088.             value: function() {
  3089.                 var e = this.dataView.getFloat32(this.index, !0);
  3090.                 return this.index += 4, e
  3091.             }
  3092.         }, {
  3093.             key: "readFloat64",
  3094.             value: function() {
  3095.                 var e = this.dataView.getFloat64(this.index, !0);
  3096.                 return this.index += 8, e
  3097.             }
  3098.         }, {
  3099.             key: "readUTF8string",
  3100.             value: function() {
  3101.                 for (var e = ""; !this.endOfBuffer();) {
  3102.                     var t = this.readUInt8();
  3103.                     if (0 === t) break;
  3104.                     e += String.fromCharCode(t)
  3105.                 }
  3106.                 return e
  3107.             }
  3108.         }, {
  3109.             key: "readEscapedUTF8string",
  3110.             value: function() {
  3111.                 var e = this.readUTF8string();
  3112.                 return decodeURIComponent(escape(e))
  3113.             }
  3114.         }, {
  3115.             key: "decompress",
  3116.             value: function() {
  3117.                 var e = new Uint8Array(this.dataView.buffer),
  3118.                     t = this.readUInt32(),
  3119.                     n = new Uint8Array(t);
  3120.                 LZ4.decodeBlock(e.slice(5), n), this.dataView = new DataView(n.buffer), this.index = 0, this.maxIndex = this.dataView.byteLength
  3121.             }
  3122.         }, {
  3123.             key: "endOfBuffer",
  3124.             value: function() {
  3125.                 return this.index >= this.maxIndex
  3126.             }
  3127.         }]), e
  3128.     }()
  3129. }, function(e, t, n) {
  3130.     "use strict";
  3131.     var i = a(n(0)),
  3132.         o = a(n(1));
  3133.  
  3134.     function a(e) {
  3135.         return e && e.__esModule ? e : {
  3136.             default: e
  3137.         }
  3138.     }
  3139.     e.exports = function() {
  3140.         function e() {
  3141.             (0, i.default)(this, e)
  3142.         }
  3143.         return (0, o.default)(e, null, [{
  3144.             key: "init",
  3145.             value: function() {
  3146.                 this.isOpened = !1, this.div = $("#theme"), this.selectedPreset = Storage.get("theme", "selectedPreset") || "custom", this.skinBorder = ~~Storage.get("theme", "skinBorder") || 100, this.lbSize = ~~Storage.get("theme", "lbSize") || 110, this.minimapSize = ~~Storage.get("theme", "minimapSize") || 200, this.chatFontSize = ~~Storage.get("theme", "chatFontSize") || 14, this.cellTransparency = ~~Storage.get("theme", "cellTransparency") || 100, this.lightenCellColor = ~~Storage.get("theme", "lightenCellColor") || 100, this.borderWidth = ~~Storage.get("theme", "borderWidth") || 60, this.borderColor = Storage.get("theme", "borderColor") || "#ffffff", this.team1color = Storage.get("theme", "team1color") || "#aeaeae", this.team2color = Storage.get("theme", "team2color") || "#ff171f", this.multiboxActive = Storage.get("theme", "multiboxActive") || "#ff61f8", this.multiboxInactive = Storage.get("theme", "multiboxInactive") || "#fff", this.nickColor = Storage.get("theme", "nickColor") || "#fff", this.nickStrokeColor = Storage.get("theme", "nickStrokeColor") || "#000", this.cellNickSize = ~~Storage.get("theme", "cellNickSize") || 120, this.nickFont = Storage.get("theme", "nickFont") || "ubuntu", this.massColor = Storage.get("theme", "massColor") || "#fff", this.massStrokeColor = Storage.get("theme", "massStrokeColor") || "#000", this.cellMassSize = ~~Storage.get("theme", "cellMassSize") || 150, this.massFont = Storage.get("theme", "massFont") || "ubuntu", this.gridWidth = ~~Storage.get("theme", "gridWidth") || 100, this.gridColor = Storage.get("theme", "gridColor") || "#111", this.gridTextColor = Storage.get("theme", "gridTextColor") || "#111", this.gridTextSize = Storage.get("theme", "gridTextSize") || 1500, this.gridTextFont = Storage.get("theme", "gridTextFont") || "ubuntu", this.foodSize = ~~Storage.get("theme", "foodSize") || 1, this.foodColor = Storage.get("theme", "foodColor") || "#6111ff", this.virusColor = Storage.get("theme", "virusColor") || "#8f8f8f", this.virusBorderColor = Storage.get("theme", "virusBorderColor") || "#c2c2c2", this.virusBorderWidth = ~~Storage.get("theme", "virusBorderWidth") || 10, this.commanderColor = Storage.get("theme", "commanderColor") || "#f5e35d", this.backgroundColor = Storage.get("theme", "backgroundColor") || "#000000", this.indicatorSize = ~~Storage.get("theme", "indicatorSize") || 100, this.cursor = Storage.get("theme", "cursor") || 13, this.addPresets(), this.setDomValues(), this.addEvents()
  3147.             }
  3148.         }, {
  3149.             key: "setDomValues",
  3150.             value: function() {
  3151.                 $(".theme-options").each(function() {
  3152.                     var e = $(this).attr("type");
  3153.                     "range" === e ? Theming.handleOptions(this, 2) : "options" === e ? Theming.handleRange(this, 2) : "colorpicker" === e && Theming.initColorpicker(this)
  3154.                 }), this.setChatFontSize(this.chatFontSize), this.setBackground(this.backgroundColor), this.setLeaderboard(this.lbSize), this.setMinimap(this.minimapSize), this.setCursor(this.cursor)
  3155.             }
  3156.         }, {
  3157.             key: "addEvents",
  3158.             value: function() {
  3159.                 var e = this;
  3160.                 $(".theme-container").perfectScrollbar(), $(".theme-container .fa-chevron-left").each(function() {
  3161.                     var e = this;
  3162.                     $(this).click(function() {
  3163.                         var t = $(e).parent(),
  3164.                             n = $(t).attr("type");
  3165.                         "options" === n ? Theming.handleOptions(t, 0) : "range" === n && Theming.handleRange(t, 0)
  3166.                     })
  3167.                 }), $(".theme-container span.outer").each(function() {
  3168.                     var e = this;
  3169.                     $(this).click(function(t) {
  3170.                         var n = $(e).parent();
  3171.                         Theming.handleRange(n, 3, t.offsetX)
  3172.                     })
  3173.                 }), $(".theme-container .fa-chevron-right").each(function() {
  3174.                     var e = this;
  3175.                     $(this).click(function() {
  3176.                         var t = $(e).parent(),
  3177.                             n = $(t).attr("type");
  3178.                         "options" === n ? Theming.handleOptions(t, 1) : "range" === n && Theming.handleRange(t, 1)
  3179.                     })
  3180.                 }), $(".theme-close").click(function() {
  3181.                     return e.close()
  3182.                 })
  3183.             }
  3184.         }, {
  3185.             key: "toggle",
  3186.             value: function() {
  3187.                 this.isOpened ? this.close() : this.open()
  3188.             }
  3189.         }, {
  3190.             key: "close",
  3191.             value: function() {
  3192.                 this.isOpened = !1, this.div.fadeOut(250)
  3193.             }
  3194.         }, {
  3195.             key: "open",
  3196.             value: function() {
  3197.                 this.isOpened = !0, this.div.fadeIn(250)
  3198.             }
  3199.         }, {
  3200.             key: "handleOptions",
  3201.             value: function(e, t) {
  3202.                 for (var n = $(e).attr("name"), i = $(e).find("b"), o = i.length, a = o, r = 0; a--;) {
  3203.                     var s = i[a];
  3204.                     "active" === $(s).attr("class") && (r = a)
  3205.                 }
  3206.                 if (1 === t) {
  3207.                     var l = r + 1 < o ? r + 1 : 0;
  3208.                     $(i[r]).removeAttr("class"), $(i[l]).attr("class", "active");
  3209.                     var c = $(i[l]).attr("value");
  3210.                     this.saveTheme(n, c)
  3211.                 } else if (0 === t) {
  3212.                     var u = 0 < r ? r - 1 : o - 1;
  3213.                     $(i[r]).removeAttr("class"), $(i[u]).attr("class", "active");
  3214.                     var d = $(i[u]).attr("value");
  3215.                     this.saveTheme(n, d)
  3216.                 } else if (2 === t) {
  3217.                     $(i[r]).removeAttr("class");
  3218.                     for (var h, f = o; f--;)
  3219.                         if (h = i[f], $(h).attr("value") === this[n]) {
  3220.                             $(h).attr("class", "active");
  3221.                             break
  3222.                         }
  3223.                 }
  3224.             }
  3225.         }, {
  3226.             key: "handleRange",
  3227.             value: function(e, t) {
  3228.                 var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : 0,
  3229.                     i = $(e).attr("name"),
  3230.                     o = $(e).find("span"),
  3231.                     a = o[0],
  3232.                     r = o[1],
  3233.                     s = $(o[2]),
  3234.                     l = ~~$(a).attr("min"),
  3235.                     c = ~~$(a).attr("max"),
  3236.                     u = ~~$(a).attr("step"),
  3237.                     d = ~~$(a).attr("value");
  3238.                 if (1 === t && d + u <= c) {
  3239.                     var h = u + d;
  3240.                     $(a).attr("value", h), $(r).css("width", ~~(100 * (h - l) / (c - l)) + "px"), s.text("[" + h + "]"), this.saveTheme(i, ~~h)
  3241.                 } else if (0 === t && d - u >= l) {
  3242.                     var f = d - u;
  3243.                     $(a).attr("value", f), $(r).css("width", ~~(100 * (f - l) / (c - l)) + "px"), s.text("[" + f + "]"), this.saveTheme(i, ~~f)
  3244.                 } else if (2 === t) {
  3245.                     var m = this[i];
  3246.                     $(a).attr("value", m), $(r).css("width", ~~(100 * (m - l) / (c - l)) + "px"), s.text("[" + m + "]")
  3247.                 } else if (3 === t) {
  3248.                     var g = 0 | n / 100 * (c - l);
  3249.                     g = (0 | g / u) * u;
  3250.                     var p = 100 * ((g += l) - l) / (c - l);
  3251.                     $(a).attr("value", g), $(r).css("width", ~~p + "px"), s.text("[" + g + "]"), this.saveTheme(ke, ~~g)
  3252.                 }
  3253.             }
  3254.         }, {
  3255.             key: "initColorpicker",
  3256.             value: function(e) {
  3257.                 var t = this,
  3258.                     n = $(e).find("input"),
  3259.                     i = n.attr("id"),
  3260.                     o = this[i];
  3261.                 $(n).val(o);
  3262.                 var a = !!~~n.attr("opacity");
  3263.                 $("#" + i).minicolors({
  3264.                     opacity: a,
  3265.                     position: "bottom right",
  3266.                     change: function(e) {
  3267.                         t.saveTheme(i, e)
  3268.                     }
  3269.                 })
  3270.             }
  3271.         }, {
  3272.             key: "saveTheme",
  3273.             value: function(e, t) {
  3274.                 this[e] = t, "selectedPreset" === e ? this.selectPreset(t) : "custom" !== this.selectedPreset && (this.selectedPreset = "custom", Storage.set("theme", "selectedPreset", "custom"), this.setDomValues()), "backgroundColor" === e && this.setBackground(t), "chatFontSize" === e && this.setChatFontSize(t), "lbSize" === e && this.setLeaderboard(t), "minimapSize" === e && this.setMinimap(t), "massFont" === e && Cache.setMassCtxFont(), "nickFont" === e && Cache.setNickCtxFont(), "massStrokeColor" === e && Cache.massCaches.clear(), "nickStrokeColor" === e && Cache.nickCaches.clear(), "massColor" === e && Cache.massCaches.clear(), "nickColor" === e && Cache.nickCaches.clear(), Storage.set("theme", e, t)
  3275.             }
  3276.         }, {
  3277.             key: "setBackground",
  3278.             value: function(e) {
  3279.                 $("body").css("background", e)
  3280.             }
  3281.         }, {
  3282.             key: "setChatFontSize",
  3283.             value: function(e) {
  3284.                 $("#notifications").css("font-size", e + "px")
  3285.             }
  3286.         }, {
  3287.             key: "setLeaderboard",
  3288.             value: function(e) {
  3289.                 var t = e / 100;
  3290.                 $("#leaderboard-head").css("font-size", (0 | 24 * t) + "px"), $("#leaderboard-positions").css("font-size", (0 | 13 * t) + "px")
  3291.             }
  3292.         }, {
  3293.             key: "setMinimap",
  3294.             value: function(e) {
  3295.                 Minimap.initted && (Minimap.size = e, Minimap.canvas.width = e, Minimap.canvas.height = e), $("#minimap-hud, .minimap-grid").css({
  3296.                     width: e + "px",
  3297.                     height: e + "px"
  3298.                 }), $(".minimap-row").css({
  3299.                     width: e + "px",
  3300.                     height: (0 | e / 5) + "px"
  3301.                 }), $(".minimap-sector").css({
  3302.                     width: (0 | e / 5) + "px",
  3303.                     height: (0 | e / 5) + "px",
  3304.                     "font-size": (0 | 15 * e / 200) + "px",
  3305.                     "padding-top": (0 | 11 * e / 200) + "px"
  3306.                 }), $(".minimap-head").css("bottom", e + 9 + "px")
  3307.             }
  3308.         }, {
  3309.             key: "setCursor",
  3310.             value: function(e) {
  3311.                 1 === e ? ($("body").css("cursor", "url(),auto"), $("#cursorOff").show(), $("#cursorDisplay").hide()) : ($("body").css("cursor", "url(./cursors/" + e + ".cur),auto"), $("#cursorDisplay").attr("src", "./cursors/" + e + ".cur"), $("#cursorDisplay").show(), $("#cursorOff").hide())
  3312.             }
  3313.         }, {
  3314.             key: "selectPreset",
  3315.             value: function(e) {
  3316.                 var t = this.presets[e];
  3317.                 if ("custom" !== e && t) {
  3318.                     for (var n in t.theme) t.theme.hasOwnProperty(n) && void 0 !== this[n] && (this[n] = t.theme[n], Storage.set("theme", n, this[n]));
  3319.                     for (var i in this.setDomValues(), t.settings) t.settings.hasOwnProperty(i) && void 0 !== Menu[i] && (Menu[i] = t.settings[i], Storage.set("settings", i, Menu[i]));
  3320.                     Menu.setDomValues()
  3321.                 }
  3322.             }
  3323.         }, {
  3324.             key: "addPresets",
  3325.             value: function() {
  3326.                 this.presets = {
  3327.                     "Agarplus v2": {
  3328.                         author: "Forehead",
  3329.                         theme: {
  3330.                             skinBorder: 100,
  3331.                             lbSize: 110,
  3332.                             minimapSize: 200,
  3333.                             chatFontSize: 18,
  3334.                             cellTransparency: 100,
  3335.                             lightenCellColor: 100,
  3336.                             borderWidth: 40,
  3337.                             borderColor: "#ffffff",
  3338.                             team1color: "#aeaeae",
  3339.                             team2color: "#fff700",
  3340.                             nickColor: "#fff",
  3341.                             nickStrokeColor: "#000",
  3342.                             cellNickSize: 140,
  3343.                             nickFont: "ubuntu",
  3344.                             massColor: "#fff",
  3345.                             massStrokeColor: "#000",
  3346.                             cellMassSize: 140,
  3347.                             massFont: "ubuntu",
  3348.                             gridWidth: 100,
  3349.                             gridColor: "#1a1a1a",
  3350.                             gridTextColor: "#1a1a1a",
  3351.                             gridTextSize: 1700,
  3352.                             gridTextFont: "ubuntu",
  3353.                             foodSize: 5,
  3354.                             foodColor: "#0849d4",
  3355.                             virusColor: "#808080",
  3356.                             virusBorderColor: "#9e9e9e",
  3357.                             virusBorderWidth: 10,
  3358.                             commanderColor: "#0849d4",
  3359.                             backgroundColor: "#000000",
  3360.                             indicatorSize: 100,
  3361.                             cursor: 1
  3362.                         },
  3363.                         settings: {
  3364.                             CellAnimation: 120,
  3365.                             eatAnimation: "on",
  3366.                             cellTextAnimation: "on",
  3367.                             cellMass: "full",
  3368.                             food: "monoColored",
  3369.                             bgSectors: "normal",
  3370.                             vanillaGrid: "off"
  3371.                         }
  3372.                     },
  3373.                     HKG: {
  3374.                         author: "Num Jai",
  3375.                         theme: {
  3376.                             skinBorder: 100,
  3377.                             lbSize: 110,
  3378.                             minimapSize: 200,
  3379.                             chatFontSize: 18,
  3380.                             cellTransparency: 100,
  3381.                             lightenCellColor: 100,
  3382.                             borderWidth: 60,
  3383.                             borderColor: "#ffffff",
  3384.                             team1color: "#aeaeae",
  3385.                             team2color: "#fff700",
  3386.                             nickColor: "#fff",
  3387.                             nickStrokeColor: "#000",
  3388.                             cellNickSize: 130,
  3389.                             nickFont: "sans-serif",
  3390.                             massColor: "#fff",
  3391.                             massStrokeColor: "#000",
  3392.                             cellMassSize: 130,
  3393.                             massFont: "sans-serif",
  3394.                             gridWidth: 100,
  3395.                             gridColor: "#1a1a1a",
  3396.                             gridTextColor: "#1a1a1a",
  3397.                             gridTextSize: 1700,
  3398.                             gridTextFont: "ubuntu",
  3399.                             foodSize: 5,
  3400.                             foodColor: "#6111ff",
  3401.                             virusColor: "#808080",
  3402.                             virusBorderColor: "#9e9e9e",
  3403.                             virusBorderWidth: 10,
  3404.                             commanderColor: "#0849d4",
  3405.                             backgroundColor: "#000000",
  3406.                             indicatorSize: 100,
  3407.                             cursor: 1
  3408.                         },
  3409.                         settings: {
  3410.                             CellAnimation: 120,
  3411.                             eatAnimation: "on",
  3412.                             cellTextAnimation: "off",
  3413.                             cellMass: "full",
  3414.                             food: "monoColored",
  3415.                             bgSectors: "off",
  3416.                             vanillaGrid: "off"
  3417.                         }
  3418.                     },
  3419.                     "Ogario v4": {
  3420.                         author: "Szymy",
  3421.                         theme: {
  3422.                             skinBorder: 100,
  3423.                             lbSize: 100,
  3424.                             minimapSize: 240,
  3425.                             chatFontSize: 18,
  3426.                             cellTransparency: 100,
  3427.                             lightenCellColor: 90,
  3428.                             borderWidth: 40,
  3429.                             borderColor: "#01d9cc",
  3430.                             team1color: "#aeaeae",
  3431.                             team2color: "#fff700",
  3432.                             nickColor: "#fff",
  3433.                             nickStrokeColor: "#000",
  3434.                             cellNickSize: 120,
  3435.                             nickFont: "ubuntu",
  3436.                             massColor: "#fff",
  3437.                             massStrokeColor: "#000",
  3438.                             cellMassSize: 160,
  3439.                             massFont: "ubuntu",
  3440.                             gridWidth: 40,
  3441.                             gridColor: "#00243e",
  3442.                             gridTextColor: "#00243e",
  3443.                             gridTextSize: 1200,
  3444.                             gridTextFont: "ubuntu",
  3445.                             foodSize: 5,
  3446.                             foodColor: "#5000ff",
  3447.                             virusColor: "#002f52",
  3448.                             virusBorderColor: "#00b9e8",
  3449.                             virusBorderWidth: 14,
  3450.                             commanderColor: "#0849d4",
  3451.                             backgroundColor: "#000a11",
  3452.                             indicatorSize: 100,
  3453.                             cursor: 1
  3454.                         },
  3455.                         settings: {
  3456.                             CellAnimation: 140,
  3457.                             eatAnimation: "on",
  3458.                             cellTextAnimation: "on",
  3459.                             cellMass: "shortened",
  3460.                             food: "monoColored",
  3461.                             bgSectors: "normal",
  3462.                             vanillaGrid: "off"
  3463.                         }
  3464.                     },
  3465.                     Yin: {
  3466.                         author: "DaChong",
  3467.                         theme: {
  3468.                             skinBorder: 100,
  3469.                             lbSize: 130,
  3470.                             minimapSize: 200,
  3471.                             chatFontSize: 18,
  3472.                             cellTransparency: 100,
  3473.                             lightenCellColor: 100,
  3474.                             borderWidth: 10,
  3475.                             borderColor: "#116111",
  3476.                             team1color: "#aeaeae",
  3477.                             team2color: "#fff700",
  3478.                             nickColor: "#fff",
  3479.                             nickStrokeColor: "#000",
  3480.                             cellNickSize: 100,
  3481.                             nickFont: "ubuntu",
  3482.                             massColor: "#fff",
  3483.                             massStrokeColor: "#000",
  3484.                             cellMassSize: 100,
  3485.                             massFont: "ubuntu",
  3486.                             gridWidth: 10,
  3487.                             gridColor: "#333333",
  3488.                             gridTextColor: "#333333",
  3489.                             gridTextSize: 1700,
  3490.                             gridTextFont: "ubuntu",
  3491.                             foodSize: 1,
  3492.                             foodColor: "#555",
  3493.                             virusColor: "#6fff00",
  3494.                             virusBorderColor: "#55b304",
  3495.                             virusBorderWidth: 14,
  3496.                             commanderColor: "#00fff7",
  3497.                             backgroundColor: "#000000",
  3498.                             indicatorSize: 100,
  3499.                             cursor: 1
  3500.                         },
  3501.                         settings: {
  3502.                             CellAnimation: 120,
  3503.                             eatAnimation: "on",
  3504.                             cellTextAnimation: "on",
  3505.                             cellMass: "full",
  3506.                             food: "rainbow",
  3507.                             bgSectors: "normal",
  3508.                             vanillaGrid: "off"
  3509.                         }
  3510.                     },
  3511.                     VNDOT: {
  3512.                         author: "KSCC",
  3513.                         theme: {
  3514.                             skinBorder: 100,
  3515.                             lbSize: 100,
  3516.                             minimapSize: 200,
  3517.                             chatFontSize: 18,
  3518.                             cellTransparency: 100,
  3519.                             lightenCellColor: 100,
  3520.                             borderWidth: 10,
  3521.                             borderColor: "#333333",
  3522.                             team1color: "#aeaeae",
  3523.                             team2color: "#fff700",
  3524.                             nickColor: "#fff",
  3525.                             nickStrokeColor: "#000",
  3526.                             cellNickSize: 110,
  3527.                             nickFont: "ubuntu",
  3528.                             massColor: "#fff",
  3529.                             massStrokeColor: "#000",
  3530.                             cellMassSize: 110,
  3531.                             massFont: "ubuntu",
  3532.                             gridWidth: 10,
  3533.                             gridColor: "#333333",
  3534.                             gridTextColor: "#444444",
  3535.                             gridTextSize: 1200,
  3536.                             gridTextFont: "ubuntu",
  3537.                             foodSize: 1,
  3538.                             foodColor: "#4b6efa",
  3539.                             virusColor: "#6fff00",
  3540.                             virusBorderColor: "#55b304",
  3541.                             virusBorderWidth: 14,
  3542.                             commanderColor: "#00fff7",
  3543.                             backgroundColor: "#111",
  3544.                             indicatorSize: 100,
  3545.                             cursor: 1
  3546.                         },
  3547.                         settings: {
  3548.                             CellAnimation: 120,
  3549.                             eatAnimation: "on",
  3550.                             cellTextAnimation: "stepped",
  3551.                             cellMass: "shortened",
  3552.                             food: "monoColored",
  3553.                             bgSectors: "normal",
  3554.                             vanillaGrid: "off"
  3555.                         }
  3556.                     },
  3557.                     OZYDOT: {
  3558.                         author: "Eric",
  3559.                         theme: {
  3560.                             skinBorder: 100,
  3561.                             lbSize: 100,
  3562.                             minimapSize: 200,
  3563.                             chatFontSize: 14,
  3564.                             cellTransparency: 100,
  3565.                             lightenCellColor: 100,
  3566.                             borderWidth: 20,
  3567.                             borderColor: "#666666",
  3568.                             team1color: "#aeaeae",
  3569.                             team2color: "#fff700",
  3570.                             nickColor: "#fff",
  3571.                             nickStrokeColor: "#000",
  3572.                             cellNickSize: 110,
  3573.                             nickFont: "ubuntu",
  3574.                             massColor: "#fff",
  3575.                             massStrokeColor: "#444",
  3576.                             cellMassSize: 140,
  3577.                             massFont: "oswald",
  3578.                             gridWidth: 100,
  3579.                             gridColor: "#222222",
  3580.                             gridTextColor: "#222222",
  3581.                             gridTextSize: 1400,
  3582.                             gridTextFont: "sans-serif",
  3583.                             foodSize: 1,
  3584.                             foodColor: "#c9d3f5",
  3585.                             virusColor: "#e0e0e0",
  3586.                             virusBorderColor: "#9c9c9c",
  3587.                             virusBorderWidth: 10,
  3588.                             commanderColor: "#ffffff",
  3589.                             backgroundColor: "#000000",
  3590.                             indicatorSize: 100,
  3591.                             cursor: 1
  3592.                         },
  3593.                         settings: {
  3594.                             CellAnimation: 120,
  3595.                             eatAnimation: "on",
  3596.                             cellTextAnimation: "on",
  3597.                             cellMass: "full",
  3598.                             food: "monoColored",
  3599.                             bgSectors: "normal",
  3600.                             vanillaGrid: "off"
  3601.                         }
  3602.                     },
  3603.                     "HSLO v2": {
  3604.                         author: "2coolife",
  3605.                         theme: {
  3606.                             skinBorder: 100,
  3607.                             lbSize: 110,
  3608.                             minimapSize: 180,
  3609.                             chatFontSize: 16,
  3610.                             cellTransparency: 100,
  3611.                             lightenCellColor: 90,
  3612.                             borderWidth: 20,
  3613.                             borderColor: "#ffffff",
  3614.                             team1color: "#aeaeae",
  3615.                             team2color: "#fff700",
  3616.                             nickColor: "#fff",
  3617.                             nickStrokeColor: "#000",
  3618.                             cellNickSize: 120,
  3619.                             nickFont: "ubuntu",
  3620.                             massColor: "#fff",
  3621.                             massStrokeColor: "#000000",
  3622.                             cellMassSize: 120,
  3623.                             massFont: "ubuntu",
  3624.                             gridWidth: 10,
  3625.                             gridColor: "#007777",
  3626.                             gridTextColor: "#333333",
  3627.                             gridTextSize: 1600,
  3628.                             gridTextFont: "oswald",
  3629.                             foodSize: 5,
  3630.                             foodColor: "#666666",
  3631.                             virusColor: "#444444",
  3632.                             virusBorderColor: "#007777",
  3633.                             virusBorderWidth: 14,
  3634.                             commanderColor: "#ffffff",
  3635.                             backgroundColor: "#222",
  3636.                             indicatorSize: 100,
  3637.                             cursor: 1
  3638.                         },
  3639.                         settings: {
  3640.                             CellAnimation: 140,
  3641.                             eatAnimation: "on",
  3642.                             cellTextAnimation: "on",
  3643.                             cellMass: "shortened",
  3644.                             food: "monoColored",
  3645.                             bgSectors: "normal",
  3646.                             vanillaGrid: "off"
  3647.                         }
  3648.                     },
  3649.                     "HSLO v3": {
  3650.                         author: "2coolife",
  3651.                         theme: {
  3652.                             skinBorder: 90,
  3653.                             lbSize: 100,
  3654.                             minimapSize: 180,
  3655.                             chatFontSize: 14,
  3656.                             cellTransparency: 100,
  3657.                             lightenCellColor: 100,
  3658.                             borderWidth: 40,
  3659.                             borderColor: "#ff006f",
  3660.                             team1color: "#aeaeae",
  3661.                             team2color: "#ff006f",
  3662.                             nickColor: "#fff",
  3663.                             nickStrokeColor: "#000000",
  3664.                             cellNickSize: 110,
  3665.                             nickFont: "ubuntu",
  3666.                             massColor: "#fff",
  3667.                             massStrokeColor: "#000000",
  3668.                             cellMassSize: 110,
  3669.                             massFont: "ubuntu",
  3670.                             gridWidth: 10,
  3671.                             gridColor: "#121212",
  3672.                             gridTextColor: "#121212",
  3673.                             gridTextSize: 1400,
  3674.                             gridTextFont: "oswald",
  3675.                             foodSize: 1,
  3676.                             foodColor: "#555555",
  3677.                             virusColor: "#444444",
  3678.                             virusBorderColor: "#ff006f",
  3679.                             virusBorderWidth: 10,
  3680.                             commanderColor: "#ff006f",
  3681.                             backgroundColor: "#000000",
  3682.                             indicatorSize: 100,
  3683.                             cursor: 1
  3684.                         },
  3685.                         settings: {
  3686.                             CellAnimation: 140,
  3687.                             eatAnimation: "on",
  3688.                             cellTextAnimation: "on",
  3689.                             cellMass: "shortened",
  3690.                             food: "monoColored",
  3691.                             bgSectors: "snowflakes",
  3692.                             vanillaGrid: "off"
  3693.                         }
  3694.                     },
  3695.                     "HSLO v4": {
  3696.                         author: "2coolife",
  3697.                         theme: {
  3698.                             skinBorder: 90,
  3699.                             lbSize: 100,
  3700.                             minimapSize: 180,
  3701.                             chatFontSize: 14,
  3702.                             cellTransparency: 100,
  3703.                             lightenCellColor: 100,
  3704.                             borderWidth: 20,
  3705.                             borderColor: "#ff9900",
  3706.                             team1color: "#aeaeae",
  3707.                             team2color: "#ff006f",
  3708.                             nickColor: "#fff",
  3709.                             nickStrokeColor: "#000000",
  3710.                             cellNickSize: 110,
  3711.                             nickFont: "ubuntu",
  3712.                             massColor: "#fff",
  3713.                             massStrokeColor: "#000000",
  3714.                             cellMassSize: 120,
  3715.                             massFont: "ubuntu",
  3716.                             gridWidth: 10,
  3717.                             gridColor: "#ff9900",
  3718.                             gridTextColor: "#333333",
  3719.                             gridTextSize: 1300,
  3720.                             gridTextFont: "ubuntu",
  3721.                             foodSize: 1,
  3722.                             foodColor: "#555555",
  3723.                             virusColor: "#444444",
  3724.                             virusBorderColor: "#ff9900",
  3725.                             virusBorderWidth: 10,
  3726.                             commanderColor: "#ff006f",
  3727.                             backgroundColor: "#222222",
  3728.                             indicatorSize: 100,
  3729.                             cursor: 1
  3730.                         },
  3731.                         settings: {
  3732.                             CellAnimation: 140,
  3733.                             eatAnimation: "on",
  3734.                             cellTextAnimation: "on",
  3735.                             cellMass: "shortened",
  3736.                             food: "monoColored",
  3737.                             bgSectors: "normal",
  3738.                             vanillaGrid: "off"
  3739.                         }
  3740.                     },
  3741.                     Pastels: {
  3742.                         author: "2coolife",
  3743.                         theme: {
  3744.                             skinBorder: 90,
  3745.                             lbSize: 100,
  3746.                             minimapSize: 180,
  3747.                             chatFontSize: 14,
  3748.                             cellTransparency: 100,
  3749.                             lightenCellColor: 100,
  3750.                             borderWidth: 40,
  3751.                             borderColor: "#f5d25f",
  3752.                             team1color: "#aeaeae",
  3753.                             team2color: "#ff006f",
  3754.                             nickColor: "#fff",
  3755.                             nickStrokeColor: "#000000",
  3756.                             cellNickSize: 110,
  3757.                             nickFont: "ubuntu",
  3758.                             massColor: "#fff",
  3759.                             massStrokeColor: "#000000",
  3760.                             cellMassSize: 120,
  3761.                             massFont: "ubuntu",
  3762.                             gridWidth: 10,
  3763.                             gridColor: "#fa676c",
  3764.                             gridTextColor: "#333333",
  3765.                             gridTextSize: 1300,
  3766.                             gridTextFont: "oswald",
  3767.                             foodSize: 1,
  3768.                             foodColor: "#555555",
  3769.                             virusColor: "#7a4ba3",
  3770.                             virusBorderColor: "#ead2fa",
  3771.                             virusBorderWidth: 14,
  3772.                             commanderColor: "#ff006f",
  3773.                             backgroundColor: "#222222",
  3774.                             indicatorSize: 100,
  3775.                             cursor: 1
  3776.                         },
  3777.                         settings: {
  3778.                             CellAnimation: 140,
  3779.                             eatAnimation: "on",
  3780.                             cellTextAnimation: "on",
  3781.                             cellMass: "shortened",
  3782.                             food: "monoColored",
  3783.                             bgSectors: "normal",
  3784.                             vanillaGrid: "off"
  3785.                         }
  3786.                     }
  3787.                 }
  3788.             }
  3789.         }]), e
  3790.     }()
  3791. }, function(e, t, n) {
  3792.     "use strict";
  3793.     var i = a(n(0)),
  3794.         o = a(n(1));
  3795.  
  3796.     function a(e) {
  3797.         return e && e.__esModule ? e : {
  3798.             default: e
  3799.         }
  3800.     }
  3801.     e.exports = function() {
  3802.         function e() {
  3803.             (0, i.default)(this, e)
  3804.         }
  3805.         return (0, o.default)(e, null, [{
  3806.             key: "init",
  3807.             value: function() {
  3808.                 this.isOpened = !1, this.div = $("#settings"), this.language = Storage.get("settings", "language") || LangHandler.browser, this.CellAnimation = ~~Storage.get("settings", "CellAnimation") || 140, this.eatAnimation = Storage.get("settings", "eatAnimation") || "on", this.zoomSpeed = ~~Storage.get("settings", "zoomSpeed") || 92, this.cameraSpeed = ~~Storage.get("settings", "cameraSpeed") || 2, this.autoZoom = Storage.get("settings", "autoZoom") || "off", this.cellTextAnimation = Storage.get("settings", "cellTextAnimation") || "on", this.autoHideText = Storage.get("settings", "autoHideText") || "on", this.cellNick = Storage.get("settings", "cellNick") || "on", this.nickShadow = Storage.get("settings", "nickShadow") || "off", this.cellMass = Storage.get("settings", "cellMass") || "shortened", this.massShadow = Storage.get("settings", "massShadow") || "off", this.hideOwnNick = Storage.get("settings", "hideOwnNick") || "on", this.hideOwnMass = Storage.get("settings", "hideOwnMass") || "off", this.urlSkins = Storage.get("settings", "urlSkins") || "on", this.cellzSkins = Storage.get("settings", "cellzSkins") || "on", this.food = Storage.get("settings", "food") || "monoColored", this.bgSectors = Storage.get("settings", "bgSectors") || "normal", this.vanillaGrid = Storage.get("settings", "vanillaGrid") || "off", this.cursorLine = Storage.get("settings", "cursorLine") || "off", this.teamIndicator = Storage.get("settings", "teamIndicator") || "on", this.opponentRings = Storage.get("settings", "opponentRings") || "off", this.splitRings = Storage.get("settings", "splitRings") || "off", this.virusRange = Storage.get("settings", "virusRange") || "off", this.commander = Storage.get("settings", "commander") || "on", this.sounds = Storage.get("settings", "sounds") || "on", this.targeting = Storage.get("settings", "targeting") || "off", this.chatType = Storage.get("settings", "chatType") || "popup", this.multiboxMode = Storage.get("settings", "multiboxMode") || "on", this.setDomValues(), this.addEvents()
  3809.             }
  3810.         }, {
  3811.             key: "setDomValues",
  3812.             value: function() {
  3813.                 $(".settings-options").each(function() {
  3814.                     var e = $(this).attr("type");
  3815.                     "range" === e ? Menu.handleRange(this, 2) : "options" === e && Menu.handleOptions(this, 2)
  3816.                 }), this.toggleChatroom(), this.changeLanguage()
  3817.             }
  3818.         }, {
  3819.             key: "addEvents",
  3820.             value: function() {
  3821.                 var e = this;
  3822.                 $(".settings-container").perfectScrollbar(), $(".settings-container .fa-chevron-left").each(function() {
  3823.                     var e = this;
  3824.                     $(this).click(function() {
  3825.                         var t = $(e).parent(),
  3826.                             n = $(t).attr("type");
  3827.                         "options" === n ? Menu.handleOptions(t, 0) : "range" === n && Menu.handleRange(t, 0)
  3828.                     })
  3829.                 }), $(".settings-container span.outer").each(function() {
  3830.                     var e = this;
  3831.                     $(this).click(function(t) {
  3832.                         var n = $(e).parent();
  3833.                         Menu.handleRange(n, 3, t.offsetX)
  3834.                     })
  3835.                 }), $(".settings-container .fa-chevron-right").each(function() {
  3836.                     var e = this;
  3837.                     $(this).click(function() {
  3838.                         var t = $(e).parent(),
  3839.                             n = $(t).attr("type");
  3840.                         "options" === n ? Menu.handleOptions(t, 1) : "range" === n && Menu.handleRange(t, 1)
  3841.                     })
  3842.                 }), $(".settings-close").click(function() {
  3843.                     return e.close()
  3844.                 })
  3845.             }
  3846.         }, {
  3847.             key: "toggle",
  3848.             value: function() {
  3849.                 this.isOpened ? this.close() : this.open()
  3850.             }
  3851.         }, {
  3852.             key: "close",
  3853.             value: function() {
  3854.                 this.isOpened = !1, this.div.fadeOut(250)
  3855.             }
  3856.         }, {
  3857.             key: "open",
  3858.             value: function() {
  3859.                 this.isOpened = !0, this.div.fadeIn(250)
  3860.             }
  3861.         }, {
  3862.             key: "handleOptions",
  3863.             value: function(e, t) {
  3864.                 for (var n = $(e).attr("name"), i = $(e).find("b"), o = i.length, a = o, r = 0; a--;) {
  3865.                     var s = i[a];
  3866.                     "active" === $(s).attr("class") && (r = a)
  3867.                 }
  3868.                 if (1 === t) {
  3869.                     var l = r + 1 < o ? r + 1 : 0;
  3870.                     $(i[r]).removeAttr("class"), $(i[l]).attr("class", "active");
  3871.                     var c = $(i[l]).attr("value");
  3872.                     this.saveSettings(n, c)
  3873.                 } else if (0 === t) {
  3874.                     var u = 0 < r ? r - 1 : o - 1;
  3875.                     $(i[r]).removeAttr("class"), $(i[u]).attr("class", "active");
  3876.                     var d = $(i[u]).attr("value");
  3877.                     this.saveSettings(n, d)
  3878.                 } else if (2 === t) {
  3879.                     $(i[r]).removeAttr("class");
  3880.                     for (var h, f = o; f--;)
  3881.                         if (h = i[f], $(h).attr("value") === this[n]) {
  3882.                             $(h).attr("class", "active");
  3883.                             break
  3884.                         }
  3885.                 }
  3886.             }
  3887.         }, {
  3888.             key: "handleRange",
  3889.             value: function(e, t) {
  3890.                 var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : 0,
  3891.                     i = $(e).attr("name"),
  3892.                     o = $(e).find("span"),
  3893.                     a = o[0],
  3894.                     r = o[1],
  3895.                     s = $(o[2]),
  3896.                     l = ~~$(a).attr("min"),
  3897.                     c = ~~$(a).attr("max"),
  3898.                     u = ~~$(a).attr("step"),
  3899.                     d = ~~$(a).attr("value");
  3900.                 if (1 === t && d + u <= c) {
  3901.                     var h = u + d;
  3902.                     $(a).attr("value", h), $(r).css("width", ~~(100 * (h - l) / (c - l)) + "px"), s.text("[" + h + "]"), this.saveSettings(i, ~~h)
  3903.                 } else if (0 === t && d - u >= l) {
  3904.                     var f = d - u;
  3905.                     $(a).attr("value", f), $(r).css("width", ~~(100 * (f - l) / (c - l)) + "px"), s.text("[" + f + "]"), this.saveSettings(i, ~~f)
  3906.                 } else if (2 === t) {
  3907.                     var m = this[i];
  3908.                     $(a).attr("value", m), $(r).css("width", ~~(100 * (m - l) / (c - l)) + "px"), s.text("[" + m + "]")
  3909.                 } else if (3 === t) {
  3910.                     var g = 0 | n / 100 * (c - l);
  3911.                     g = (0 | g / u) * u;
  3912.                     var p = 100 * ((g += l) - l) / (c - l);
  3913.                     $(a).attr("value", g), $(r).css("width", ~~p + "px"), s.text("[" + g + "]"), this.saveSettings(i, ~~g)
  3914.                 }
  3915.             }
  3916.         }, {
  3917.             key: "saveSettings",
  3918.             value: function(e, t) {
  3919.                 switch (this[e] = t, e) {
  3920.                     case "multiboxMode":
  3921.                         Chat.alert("SERVER", "Please rejoin the server!");
  3922.                         break;
  3923.                     case "chatType":
  3924.                         this.toggleChatroom();
  3925.                         break;
  3926.                     case "language":
  3927.                         this.changeLanguage();
  3928.                         break;
  3929.                     case "nickShadow":
  3930.                         Cache.nickCaches.clear();
  3931.                         break;
  3932.                     case "massShadow":
  3933.                         e && Cache.massCaches.clear()
  3934.                 }
  3935.                 Storage.set("settings", e, t), "custom" !== Theming.selectedPreset && (Theming.selectedPreset = "custom", Storage.set("theme", "selectedPreset", "custom"), Theming.setDomValues())
  3936.             }
  3937.         }, {
  3938.             key: "changeLanguage",
  3939.             value: function() {
  3940.                 LangHandler.change(), CommandManager.refresh()
  3941.             }
  3942.         }, {
  3943.             key: "toggleChatroom",
  3944.             value: function() {
  3945.                 "chatroom" === this.chatType ? $("#chatroom").show() : $("#chatroom").hide()
  3946.             }
  3947.         }]), e
  3948.     }()
  3949. }, function(e, t, n) {
  3950.     "use strict";
  3951.     var i = r(n(12)),
  3952.         o = r(n(0)),
  3953.         a = r(n(1));
  3954.  
  3955.     function r(e) {
  3956.         return e && e.__esModule ? e : {
  3957.             default: e
  3958.         }
  3959.     }
  3960.     e.exports = function() {
  3961.         function e() {
  3962.             (0, o.default)(this, e)
  3963.         }
  3964.         return (0, a.default)(e, null, [{
  3965.             key: "init",
  3966.             value: function() {
  3967.                 this.multiboxKey = "TAB", this.toggleMenuKey = Storage.get("hotkeys", "toggleMenuKey") || "ESC", this.feedKey = Storage.get("hotkeys", "feedKey") || "W", this.macroFeedKey = Storage.get("hotkeys", "macroFeedKey") || "E", this.splitKey = Storage.get("hotkeys", "splitKey") || "SPACE", this.doubleSplitKey = Storage.get("hotkeys", "doubleSplitKey") || "R", this.split16Key = Storage.get("hotkeys", "split16Key") || "G", this.stopKey = Storage.get("hotkeys", "stopKey") || "S", this.chatKey = Storage.get("hotkeys", "chatKey") || "ENTER", this.freeSpectateKey = Storage.get("hotkeys", "freeSpectateKey") || "Q", this.toggleSplitRings = Storage.get("hotkeys", "toggleSplitRings") || "U", this.toggleOpponentRings = Storage.get("hotkeys", "toggleOpponentRings") || "I", this.toggleNick = Storage.get("hotkeys", "toggleNick") || "N", this.toggleMass = Storage.get("hotkeys", "toggleMass") || "M", this.toggleBGsectors = Storage.get("hotkeys", "toggleBGsectors") || "B", this.toggleFood = Storage.get("hotkeys", "toggleFood") || "F", this.toggleSkin = Storage.get("hotkeys", "toggleSkin") || "A", this.respawnKey = Storage.get("hotkeys", "respawnKey") || "TILDE", this.command0Key = Storage.get("hotkeys", "command0Key") || "0", this.command1Key = Storage.get("hotkeys", "command1Key") || "1", this.command2Key = Storage.get("hotkeys", "command2Key") || "2", this.command3Key = Storage.get("hotkeys", "command3Key") || "3", this.command4Key = Storage.get("hotkeys", "command4Key") || "4", this.command5Key = Storage.get("hotkeys", "command5Key") || "5", this.command6Key = Storage.get("hotkeys", "command6Key") || "6", this.command7Key = Storage.get("hotkeys", "command7Key") || "7", this.command8Key = Storage.get("hotkeys", "command8Key") || "8", this.command9Key = Storage.get("hotkeys", "command9Key") || "9", this.zoom1key = Storage.get("hotkeys", "zoom1key") || "ALT+1", this.zoom2key = Storage.get("hotkeys", "zoom2key") || "ALT+2", this.zoom3key = Storage.get("hotkeys", "zoom3key") || "ALT+3", this.zoom4key = Storage.get("hotkeys", "zoom4key") || "ALT+4", this.zoom5key = Storage.get("hotkeys", "zoom5key") || "ALT+5", this.pressedKeys = new i.default, this.setDomKeys(), this.addEvents()
  3968.             }
  3969.         }, {
  3970.             key: "setDomKeys",
  3971.             value: function() {
  3972.                 $("#hotkeys .row").each(function() {
  3973.                     var e = $(this).attr("name"),
  3974.                         t = $(this).find(".key")[0];
  3975.                     $(t).val(HotkeysManager[e])
  3976.                 })
  3977.             }
  3978.         }, {
  3979.             key: "addEvents",
  3980.             value: function() {
  3981.                 var e = this;
  3982.                 $("#hotkeys").perfectScrollbar(), $("#hotkeys .row .key").each(function() {
  3983.                     var e = this;
  3984.                     $(this).keydown(function(t) {
  3985.                         t.preventDefault();
  3986.                         var n = $(e).parent();
  3987.                         Hotkeys.setKey(n, t, e)
  3988.                     })
  3989.                 }), document.addEventListener("keydown", function(t) {
  3990.                     return e.onKeyDown(t)
  3991.                 }), document.addEventListener("keyup", function(t) {
  3992.                     return e.onKeyUp(t)
  3993.                 })
  3994.             }
  3995.         }, {
  3996.             key: "onKeyDown",
  3997.             value: function(e) {
  3998.                 9 === e.keyCode && e.preventDefault();
  3999.                 var t = this.getKey(e);
  4000.                 if (t && !this.pressedKeys.has(t) && (this.pressedKeys.set(t, !0), !c.isOpened && "hotkeys" !== c.target)) {
  4001.                     if (t === this.chatKey) return void Settings.chat();
  4002.                     if (!U.isFocused) {
  4003.                         if (t === this.toggleMenuKey) return void HUD.toggle();
  4004.                         if (!HUD.isOpened) {
  4005.                             if (e.preventDefault(), t === this.freeSpectateKey && !Client.isAlive) return void Settings.toggleSpectate();
  4006.                             if (t === this.respawnKey) return void Settings.respawn();
  4007.                             if (Client.isAlive) {
  4008.                                 if (t === this.macrousedKeyedKey) return void Settings.macrousedKeyed(!0);
  4009.                                 if (t === this.usedKeyedKey) return void Settings.usedKeyed();
  4010.                                 if (t === this.splitKey) return void Settings.split();
  4011.                                 if (t === this.doubleSplitKey) return void Settings.doubleSplit();
  4012.                                 if (t === this.split16Key) return void Settings.split16();
  4013.                                 if (t === this.multiboxKey) return void Settings.toggleCell()
  4014.                             }
  4015.                             switch (t) {
  4016.                                 case this.stopKey:
  4017.                                     return void Settings.stopMovementToggle();
  4018.                                 case this.toggleSplitRings:
  4019.                                     return void Settings.toggleSplitRings();
  4020.                                 case this.toggleOpponentRings:
  4021.                                     return void Settings.toggleOpponentRings();
  4022.                                 case this.toggleNick:
  4023.                                     return void Settings.toggleCellNick();
  4024.                                 case this.toggleMass:
  4025.                                     return void Settings.toggleCellMass();
  4026.                                 case this.toggleBGsectors:
  4027.                                     return void Settings.toggleBGsectors();
  4028.                                 case this.toggleFood:
  4029.                                     return void Settings.toggleGameFood();
  4030.                                 case this.toggleSkin:
  4031.                                     return void Settings.toggleSkin();
  4032.                                 case this.command0Key:
  4033.                                     return void Settings.command(0);
  4034.                                 case this.command1Key:
  4035.                                     return void Settings.command(1);
  4036.                                 case this.command2Key:
  4037.                                     return void Settings.command(2);
  4038.                                 case this.command3Key:
  4039.                                     return void Settings.command(3);
  4040.                                 case this.command4Key:
  4041.                                     return void Settings.command(4);
  4042.                                 case this.command5Key:
  4043.                                     return void Settings.command(5);
  4044.                                 case this.command6Key:
  4045.                                     return void Settings.command(6);
  4046.                                 case this.command7Key:
  4047.                                     return void Settings.command(7);
  4048.                                 case this.command8Key:
  4049.                                     return void Settings.command(8);
  4050.                                 case this.command9Key:
  4051.                                     return void Settings.command(9);
  4052.                                 case this.zoom1key:
  4053.                                     return void Settings.setZoom(.5);
  4054.                                 case this.zoom2key:
  4055.                                     return void Settings.setZoom(.25);
  4056.                                 case this.zoom3key:
  4057.                                     return void Settings.setZoom(.125);
  4058.                                 case this.zoom4key:
  4059.                                     return void Settings.setZoom(.075);
  4060.                                 case this.zoom5key:
  4061.                                     return void Settings.setZoom(.05);
  4062.                                 default:
  4063.                                     return
  4064.                             }
  4065.                         }
  4066.                     }
  4067.                 }
  4068.             }
  4069.         }, {
  4070.             key: "onKeyUp",
  4071.             value: function(e) {
  4072.                 var t = this.getKey(e);
  4073.                 t && (this.pressedKeys.delete(t), t === this.macrousedKeyedKey) && Settings.macrousedKeyed(!1)
  4074.             }
  4075.         }, {
  4076.             key: "setKey",
  4077.             value: function(e, t, n) {
  4078.                 var i = this.getKey(t),
  4079.                     o = $(e).attr("name");
  4080.                 !1 !== i && "freeSpectateKey" === o || (this.alreadyBinded(i), "DEL" === i && (i = ""), $(n).val(i), this[o] = i, Storage.set("hotkeys", o, i))
  4081.             }
  4082.         }, {
  4083.             key: "alreadyBinded",
  4084.             value: function(e) {
  4085.                 var t = !1;
  4086.                 switch (e) {
  4087.                     case this.toggleMenuKey:
  4088.                         t = "toggleMenuKey";
  4089.                         break;
  4090.                     case this.keyedKey:
  4091.                         t = "keyedKey";
  4092.                         break;
  4093.                     case this.macrokeyedKey:
  4094.                         t = "macrokeyedKey";
  4095.                         break;
  4096.                     case this.splitKey:
  4097.                         t = "splitKey";
  4098.                         break;
  4099.                     case this.doubleSplitKey:
  4100.                         t = "doubleSplitKey";
  4101.                         break;
  4102.                     case this.split16Key:
  4103.                         t = "split16Key";
  4104.                         break;
  4105.                     case this.toggleCell:
  4106.                         t = "toggleCell";
  4107.                         break;
  4108.                     case this.stopKey:
  4109.                         t = "stopKey";
  4110.                         break;
  4111.                     case this.chatKey:
  4112.                         t = "chatKey";
  4113.                         break;
  4114.                     case this.toggleSplitRings:
  4115.                         t = "toggleSplitRings";
  4116.                         break;
  4117.                     case this.toggleOpponentRings:
  4118.                         t = "toggleOpponentRings";
  4119.                         break;
  4120.                     case this.toggleNick:
  4121.                         t = "toggleNick";
  4122.                         break;
  4123.                     case this.toggleMass:
  4124.                         t = "toggleMass";
  4125.                         break;
  4126.                     case this.toggleBGsectors:
  4127.                         t = "toggleBGsectors";
  4128.                         break;
  4129.                     case this.toggleFood:
  4130.                         t = "toggleFood";
  4131.                         break;
  4132.                     case this.toggleSkin:
  4133.                         t = "toggleSkin";
  4134.                         break;
  4135.                     case this.respawnKey:
  4136.                         t = "respawnKey";
  4137.                         break;
  4138.                     case this.command0Key:
  4139.                         t = "command0Key";
  4140.                         break;
  4141.                     case this.command1Key:
  4142.                         t = "command1Key";
  4143.                         break;
  4144.                     case this.command2Key:
  4145.                         t = "command2Key";
  4146.                         break;
  4147.                     case this.command3Key:
  4148.                         t = "command3Key";
  4149.                         break;
  4150.                     case this.command4Key:
  4151.                         t = "command4Key";
  4152.                         break;
  4153.                     case this.command5Key:
  4154.                         t = "command5Key";
  4155.                         break;
  4156.                     case this.command6Key:
  4157.                         t = "command6Key";
  4158.                         break;
  4159.                     case this.command7Key:
  4160.                         t = "command7Key";
  4161.                         break;
  4162.                     case this.command8Key:
  4163.                         t = "command8Key";
  4164.                         break;
  4165.                     case this.command9Key:
  4166.                         t = "command9Key";
  4167.                         break;
  4168.                     case this.zoom1key:
  4169.                         t = "zoom1key";
  4170.                         break;
  4171.                     case this.zoom2key:
  4172.                         t = "zoom2key";
  4173.                         break;
  4174.                     case this.zoom3key:
  4175.                         t = "zoom3key";
  4176.                         break;
  4177.                     case this.zoom4key:
  4178.                         t = "zoom4key";
  4179.                         break;
  4180.                     case this.zoom5key:
  4181.                         t = "zoom5key"
  4182.                 }
  4183.                 t && (this[t] = "", Storage.set("hotkeys", t, ""), $("#hotkeys .row[name=" + t + "] input").val(""))
  4184.             }
  4185.         }, {
  4186.             key: "isValidKey",
  4187.             value: function(e) {
  4188.                 var t = e.keyCode || e.which;
  4189.                 return 64 < t && 91 > t || 47 < t && 58 > t || 13 === t || 27 === t || 32 === t || 16 === t || 46 === t || 192 === t || 9 === t
  4190.             }
  4191.         }, {
  4192.             key: "getKey",
  4193.             value: function(e) {
  4194.                 if (!this.isValidKey(e)) return !1;
  4195.                 var t = e.keyCode || e.which,
  4196.                     n = !1,
  4197.                     i = !1;
  4198.                 if (e.ctrlKey ? n = "CTRL+" : e.altKey && (n = "ALT+"), 64 < t && 91 > t) i = String.fromCharCode(t);
  4199.                 else if (47 < t && 58 > t) i = "" + (t - 48);
  4200.                 else if (n) switch (t) {
  4201.                     case 13:
  4202.                         i = "ENTER";
  4203.                         break;
  4204.                     case 27:
  4205.                         i = "ESC";
  4206.                         break;
  4207.                     case 32:
  4208.                         i = "SPACE";
  4209.                         break;
  4210.                     case 16:
  4211.                         i = "SHIFT";
  4212.                         break;
  4213.                     case 9:
  4214.                         i = "TAB";
  4215.                         break;
  4216.                     case 46:
  4217.                         i = "DEL";
  4218.                         break;
  4219.                     case 192:
  4220.                         i = "TILDE"
  4221.                 }
  4222.                 return i ? n + i : i
  4223.             }
  4224.         }]), e
  4225.     }()
  4226. }, function(e, t, n) {
  4227.     "use strict";
  4228.     var i = r(n(12)),
  4229.         o = r(n(0)),
  4230.         a = r(n(1));
  4231.  
  4232.     function r(e) {
  4233.         return e && e.__esModule ? e : {
  4234.             default: e
  4235.         }
  4236.     }
  4237.     e.exports = function() {
  4238.         function e() {
  4239.             (0, o.default)(this, e)
  4240.         }
  4241.         return (0, a.default)(e, null, [{
  4242.             key: "init",
  4243.             value: function() {
  4244.                 this.multiboxKey = "TAB", this.toggleMenuKey = Storage.get("hotkeys", "toggleMenuKey") || "ESC", this.feedKey = Storage.get("hotkeys", "feedKey") || "W", this.macroFeedKey = Storage.get("hotkeys", "macroFeedKey") || "E", this.splitKey = Storage.get("hotkeys", "splitKey") || "SPACE", this.doubleSplitKey = Storage.get("hotkeys", "doubleSplitKey") || "R", this.split16Key = Storage.get("hotkeys", "split16Key") || "G", this.stopKey = Storage.get("hotkeys", "stopKey") || "S", this.chatKey = Storage.get("hotkeys", "chatKey") || "ENTER", this.freeSpectateKey = Storage.get("hotkeys", "freeSpectateKey") || "Q", this.toggleSplitRings = Storage.get("hotkeys", "toggleSplitRings") || "U", this.toggleOpponentRings = Storage.get("hotkeys", "toggleOpponentRings") || "I", this.toggleNick = Storage.get("hotkeys", "toggleNick") || "N", this.toggleMass = Storage.get("hotkeys", "toggleMass") || "M", this.toggleBGsectors = Storage.get("hotkeys", "toggleBGsectors") || "B", this.toggleFood = Storage.get("hotkeys", "toggleFood") || "F", this.toggleSkin = Storage.get("hotkeys", "toggleSkin") || "A", this.respawnKey = Storage.get("hotkeys", "respawnKey") || "TILDE", this.command0Key = Storage.get("hotkeys", "command0Key") || "0", this.command1Key = Storage.get("hotkeys", "command1Key") || "1", this.command2Key = Storage.get("hotkeys", "command2Key") || "2", this.command3Key = Storage.get("hotkeys", "command3Key") || "3", this.command4Key = Storage.get("hotkeys", "command4Key") || "4", this.command5Key = Storage.get("hotkeys", "command5Key") || "5", this.command6Key = Storage.get("hotkeys", "command6Key") || "6", this.command7Key = Storage.get("hotkeys", "command7Key") || "7", this.command8Key = Storage.get("hotkeys", "command8Key") || "8", this.command9Key = Storage.get("hotkeys", "command9Key") || "9", this.zoom1key = Storage.get("hotkeys", "zoom1key") || "ALT+1", this.zoom2key = Storage.get("hotkeys", "zoom2key") || "ALT+2", this.zoom3key = Storage.get("hotkeys", "zoom3key") || "ALT+3", this.zoom4key = Storage.get("hotkeys", "zoom4key") || "ALT+4", this.zoom5key = Storage.get("hotkeys", "zoom5key") || "ALT+5", this.pressedKeys = new i.default, this.setDomKeys(), this.addEvents()
  4245.             }
  4246.         }, {
  4247.             key: "setDomKeys",
  4248.             value: function() {
  4249.                 $("#hotkeys .row").each(function() {
  4250.                     var e = $(this).attr("name"),
  4251.                         t = $(this).find(".key")[0];
  4252.                     $(t).val(Hotkeys[e])
  4253.                 })
  4254.             }
  4255.         }, {
  4256.             key: "addEvents",
  4257.             value: function() {
  4258.                 var e = this;
  4259.                 $("#hotkeys").perfectScrollbar(), $("#hotkeys .row .key").each(function() {
  4260.                     var e = this;
  4261.                     $(this).keydown(function(t) {
  4262.                         t.preventDefault();
  4263.                         var n = $(e).parent();
  4264.                         Hotkeys.setKey(n, t, e)
  4265.                     })
  4266.                 }), document.addEventListener("keydown", function(t) {
  4267.                     return e.onKeyDown(t)
  4268.                 }), document.addEventListener("keyup", function(t) {
  4269.                     return e.onKeyUp(t)
  4270.                 })
  4271.             }
  4272.         }, {
  4273.             key: "onKeyDown",
  4274.             value: function(e) {
  4275.                 9 === e.keyCode && e.preventDefault();
  4276.                 var t = this.getKey(e);
  4277.                 if (t && !this.pressedKeys.has(t) && (this.pressedKeys.set(t, !0), !HotkeysPanel.isOpened || "hotkeys" !== HotkeysPanel.target)) {
  4278.                     if (t === this.chatKey) return Settings.chat();
  4279.                     if (!ChatRoom.isFocused) {
  4280.                         if (t === this.toggleMenuKey) return HUD.toggle();
  4281.                         if (!HUD.isOpened) {
  4282.                             if (e.preventDefault(), t === this.freeSpectateKey && !Client.isAlive) return Settings.toggleSpectate();
  4283.                             if (t === this.respawnKey) return Settings.respawn();
  4284.                             if (Client.isAlive) switch (t) {
  4285.                                 case this.macroFeedKey:
  4286.                                     Settings.macroFeed(!0);
  4287.                                     break;
  4288.                                 case this.feedKey:
  4289.                                     Settings.feed();
  4290.                                     break;
  4291.                                 case this.splitKey:
  4292.                                     Settings.split();
  4293.                                     break;
  4294.                                 case this.doubleSplitKey:
  4295.                                     Settings.doubleSplit();
  4296.                                     break;
  4297.                                 case this.split16Key:
  4298.                                     Settings.split16();
  4299.                                     break;
  4300.                                 case this.multiboxKey:
  4301.                                     Settings.toggleCell()
  4302.                             }
  4303.                             return t === this.stopKey ? void Settings.stopMovementToggle() : t === this.toggleSplitRings ? void Settings.toggleSplitRings() : t === this.toggleOpponentRings ? void Settings.toggleOpponentRings() : t === this.toggleNick ? void Settings.toggleCellNick() : t === this.toggleMass ? void Settings.toggleCellMass() : t === this.toggleBGsectors ? void Settings.toggleBGsectors() : t === this.toggleFood ? void Settings.toggleGameFood() : t === this.toggleSkin ? void Settings.toggleSkin() : t === this.command0Key ? void Settings.command(0) : t === this.command1Key ? void Settings.command(1) : t === this.command2Key ? void Settings.command(2) : t === this.command3Key ? void Settings.command(3) : t === this.command4Key ? void Settings.command(4) : t === this.command5Key ? void Settings.command(5) : t === this.command6Key ? void Settings.command(6) : t === this.command7Key ? void Settings.command(7) : t === this.command8Key ? void Settings.command(8) : t === this.command9Key ? void Settings.command(9) : t === this.zoom1key ? void Settings.setZoom(.5) : t === this.zoom2key ? void Settings.setZoom(.25) : t === this.zoom3key ? void Settings.setZoom(.125) : t === this.zoom4key ? void Settings.setZoom(.075) : t === this.zoom5key ? void Settings.setZoom(.05) : void 0
  4304.                         }
  4305.                     }
  4306.                 }
  4307.             }
  4308.         }, {
  4309.             key: "onKeyUp",
  4310.             value: function(e) {
  4311.                 var t = this.getKey(e);
  4312.                 t && (this.pressedKeys.delete(t), t === this.macroFeedKey) && Settings.macroFeed(!1)
  4313.             }
  4314.         }, {
  4315.             key: "setKey",
  4316.             value: function(e, t, n) {
  4317.                 var i = this.getKey(t),
  4318.                     o = $(e).attr("name");
  4319.                 !1 === i || ("freeSpectateKey" !== o && this.alreadyBinded(i), "DEL" === i && (i = ""), $(n).val(i), this[o] = i, Storage.set("hotkeys", o, i))
  4320.             }
  4321.         }, {
  4322.             key: "alreadyBinded",
  4323.             value: function(e) {
  4324.                 var t = !1;
  4325.                 e === this.toggleMenuKey ? t = "toggleMenuKey" : e === this.feedKey ? t = "feedKey" : e === this.macroFeedKey ? t = "macroFeedKey" : e === this.splitKey ? t = "splitKey" : e === this.doubleSplitKey ? t = "doubleSplitKey" : e === this.split16Key ? t = "split16Key" : e === this.toggleCell ? t = "toggleCell" : e === this.stopKey ? t = "stopKey" : e === this.chatKey ? t = "chatKey" : e === this.toggleSplitRings ? t = "toggleSplitRings" : e === this.toggleOpponentRings ? t = "toggleOpponentRings" : e === this.toggleNick ? t = "toggleNick" : e === this.toggleMass ? t = "toggleMass" : e === this.toggleBGsectors ? t = "toggleBGsectors" : e === this.toggleFood ? t = "toggleFood" : e === this.toggleSkin ? t = "toggleSkin" : e === this.respawnKey ? t = "respawnKey" : e === this.command0Key ? t = "command0Key" : e === this.command1Key ? t = "command1Key" : e === this.command2Key ? t = "command2Key" : e === this.command3Key ? t = "command3Key" : e === this.command4Key ? t = "command4Key" : e === this.command5Key ? t = "command5Key" : e === this.command6Key ? t = "command6Key" : e === this.command7Key ? t = "command7Key" : e === this.command8Key ? t = "command8Key" : e === this.command9Key ? t = "command9Key" : e === this.zoom1key ? t = "zoom1key" : e === this.zoom2key ? t = "zoom2key" : e === this.zoom3key ? t = "zoom3key" : e === this.zoom4key ? t = "zoom4key" : e === this.zoom5key && (t = "zoom5key"), t && (this[t] = "", Storage.set("hotkeys", t, ""), $("#hotkeys .row[name=" + t + "] input").val(""))
  4326.             }
  4327.         }, {
  4328.             key: "isValidKey",
  4329.             value: function(e) {
  4330.                 var t = e.keyCode || e.which;
  4331.                 return 64 < t && 91 > t || 47 < t && 58 > t || 13 === t || 27 === t || 32 === t || 16 === t || 46 === t || 192 === t || 9 === t
  4332.             }
  4333.         }, {
  4334.             key: "getKey",
  4335.             value: function(e) {
  4336.                 if (!this.isValidKey(e)) return !1;
  4337.                 var t = e.keyCode || e.which,
  4338.                     n = !1,
  4339.                     i = !1;
  4340.                 return e.ctrlKey ? n = "CTRL+" : e.altKey && (n = "ALT+"), 64 < t && 91 > t ? i = String.fromCharCode(t) : 47 < t && 58 > t ? i = "" + (t - 48) : n || (13 === t ? i = "ENTER" : 27 === t ? i = "ESC" : 32 === t ? i = "SPACE" : 16 === t ? i = "SHIFT" : 9 === t ? i = "TAB" : 46 === t ? i = "DEL" : 192 === t && (i = "TILDE")), !!i && (n ? n + i : i)
  4341.             }
  4342.         }]), e
  4343.     }()
  4344. }, function(e, t, n) {
  4345.     "use strict";
  4346.     e.exports = {
  4347.         mainMenu: {
  4348.             btn_settings: "Configuracion",
  4349.             btn_play: "Jugar",
  4350.             btn_spectate: "Espectear",
  4351.             btn_inputs: "Hot Keys",
  4352.             btn_theme: "Tema/Diseño",
  4353.             input_tag1: "Tag",
  4354.             input_tag2: "Tag 2",
  4355.             input_nick: "Nick",
  4356.             input_skinUrl: "Skin URL (imgur)",
  4357.             select_ffa: "FFA",
  4358.             select_party: "Party",
  4359.             select_teams: "Teams",
  4360.             select_experimental: "Experimental",
  4361.             input_token: "Codigo Party",
  4362.             btn_join: "Entrar",
  4363.             btn_create: "Crear"
  4364.         },
  4365.         notif: {
  4366.             cantPlay2Tag: "Tu no puedes jugar cuando utilizas la funcion de doble tag.",
  4367.             hsloNetConn: "Conectado a HSLO Networks.",
  4368.             hsloNetDisconn: "Desconectado de HSLO networks.",
  4369.             invalidSkinUrl: "Invalid skin URL",
  4370.             login_lastSession: "Logged in from last session data.",
  4371.             sdk_error: "SDK no ha cargado.",
  4372.             alreadyLoggedIn: "Ya te encuentras conectado.",
  4373.             login_success: "Conectado",
  4374.             login_error: "Error al conectar!",
  4375.             logout: "Desconectar",
  4376.             nickChangeInGame: "No puedes cambiar tu nickname cuando te encuentras jugando.",
  4377.             targeting_on: "Haga clic en una celula para comenzar a seguirla. Vea las instrucciones en el menú de configuración del mouse.",
  4378.             targeting_off: "El seguimiento está desactivada. Enciéndalo en el menú de configuración para usarlo.",
  4379.             target_unnamed: "Cannot target unnamed cells.",
  4380.             hsloSkin_noAcc: "Account does not exist."
  4381.         },
  4382.         leaderboard: {
  4383.             title: "CELLZ PLUS"
  4384.         },
  4385.         huds: {
  4386.             enterChatMsg: "Ingresa el mensaje...",
  4387.             teamlist_title: "Jugadores de equipo",
  4388.             score: "Puntuación",
  4389.             num1position: "#1 Posición",
  4390.             paused: "Pausado",
  4391.             targeting_bigCellVp: "BIGGEST CELL VIEWPORT",
  4392.             targeting_followVp: "VIEWPORT FOLLOWING MOUSE",
  4393.             targeting_totalMass: "MASA TOTAL",
  4394.             targeting_players: "JUGADOR OBJETIVO"
  4395.         },
  4396.         settingMenu: {
  4397.             language: "Lenguaje",
  4398.             CellAnimation: "Retraso de animación",
  4399.             zoomSpeed: "Velocidad del Zoom",
  4400.             cameraSpeed: "Velocidad de Camara [2 es Preterminado]",
  4401.             eatAnimation: "Celula comiendo animacion",
  4402.             autoZoom: "Auto zoom",
  4403.             cellTextAnimation: "Animacion texto en celula",
  4404.             autoHideText: "Auto Ocultar texto",
  4405.             hideOwnNick: "Hide own nick",
  4406.             hideOwnMass: "Hide own mass",
  4407.             cellNick: "Nick de la celula",
  4408.             cellMass: "Masa de la celula",
  4409.             nickShadow: "Trazo del nick",
  4410.             massShadow: "Trazo del masa",
  4411.             urlSkins: "URL skins",
  4412.             hsloSkins: "HSLO skins",
  4413.             food: "Comida/Pellets",
  4414.             vanillaGrid: "Cuadricula Vanilla",
  4415.             bgSectors: "Tipo de sector",
  4416.             cursorLine: "Linea del cursor",
  4417.             opponentRings: "Rango del oponente",
  4418.             splitRings: "Split rings",
  4419.             virusRange: "Rango del virus",
  4420.             teamIndicator: "Indicador de compañero",
  4421.             commander: "Señal/Comandante",
  4422.             chatType: "Tipo de Chat",
  4423.             targeting: "Seguiento de celula",
  4424.             sounds: "Sonidos",
  4425.             opt_on: "Activado",
  4426.             opt_off: "Desactivado",
  4427.             opt_stepped: "Stepped",
  4428.             opt_linear: "Lineal",
  4429.             opt_shortened: "Acortado",
  4430.             opt_full: "Completo",
  4431.             opt_nick: "Nick",
  4432.             opt_mass: "Masa",
  4433.             opt_both: "Nick + Masa",
  4434.             opt_perf: "Rendimiento",
  4435.             opt_normal: "Normal",
  4436.             opt_urlSkin: "Url skins",
  4437.             opt_hsloSkin: "Hslo skins",
  4438.             opt_allSkin: "Todas las skins",
  4439.             opt_singleClr: "Solo un color",
  4440.             opt_rainbow: "Arcoiris",
  4441.             opt_onlyLines: "Solo lineas",
  4442.             opt_snowflakes: "Copos de nieve",
  4443.             opt_chatroom: "Chatroom",
  4444.             opt_popup: "Chat emergente"
  4445.         },
  4446.         hkMenu: {
  4447.             title: "Hotkeys",
  4448.             toggleMenuKey: "Ocultar menu principal",
  4449.             feedKey: "Cebar",
  4450.             macroFeedKey: "Cebar rapido [Macro]",
  4451.             splitKey: "Dividirse",
  4452.             doubleSplitKey: "División doble",
  4453.             split16Key: "Dividir 16",
  4454.             stopKey: "Detener el movimiento de la celula",
  4455.             chatKey: "Ocultar Chat",
  4456.             freeSpectateKey: "Toggle spectate mode",
  4457.             toggleSplitRings: "Toggle split rings",
  4458.             toggleOpponentRings: "Toggle opponent rings",
  4459.             toggleNick: "Ocultar nick de la celula",
  4460.             toggleMass: "Ocultar masa de la celula",
  4461.             toggleSkin: "Ocultar skin",
  4462.             toggleFood: "Ocultar comida/pellets",
  4463.             respawnKey: "Reaparicion rapida",
  4464.             command0Key: "Comando 0",
  4465.             command1Key: "Comando 1",
  4466.             command2Key: "Comando 2",
  4467.             command3Key: "Comando 3",
  4468.             command4Key: "Comando 4",
  4469.             command5Key: "Comando 5",
  4470.             command6Key: "Comando 6",
  4471.             command7Key: "Comando  7",
  4472.             command8Key: "Comando 8",
  4473.             command9Key: "Comando 9",
  4474.             zoom1key: "Zoom nivel 1",
  4475.             zoom2key: "Zoom nivel 2",
  4476.             zoom3key: "Zoom nivel 3",
  4477.             zoom4key: "Zoom nivel 4",
  4478.             zoom5key: "Zoom nivel 5"
  4479.         },
  4480.         mouseMenu: {
  4481.             title: "Raton",
  4482.             feed: "Cebar",
  4483.             macroFeed: "Cebar rapido[Macro]",
  4484.             split: "Division",
  4485.             doubleSplit: "Doble division",
  4486.             split16: "Division por 16",
  4487.             commander: "Comandante",
  4488.             off: "Desactivado",
  4489.             lmb: "Clic izquierdo",
  4490.             rmb: "Clic derecho",
  4491.             scroll: "Clic central(Rueda)",
  4492.             targeting_h1: "Targeting",
  4493.             targeting_txt1: "Lock target 1",
  4494.             targeting_txt2: "Lock target 2",
  4495.             targeting_txt3: "Middle click or Toggle spectate key",
  4496.             targeting_txt4: "Toggle top cell mode to follow mouse mode",
  4497.             targeting_txt5: "Toggle targeting mode to follow mouse mode",
  4498.             targeting_txt6: "Toggle follow mouse mode to top cell mode"
  4499.         },
  4500.         commandsMenu: {
  4501.             title: "Comandos",
  4502.             command0: "Mierda!",
  4503.             command1: "Alimentame!",
  4504.             command2: "Dividete en mi!",
  4505.             command3: "Necesito ayuda en %sector%!",
  4506.             command4: "Enemigo avistado en %sector%!",
  4507.             command5: "Necesito compañero!",
  4508.             command6: "Lanza el virus!",
  4509.             command7: "Come el virus!",
  4510.             command8: "Haz baiteo!",
  4511.             command9: "Tricksplit falso!"
  4512.         },
  4513.         themeMenu: {
  4514.             selectedPreset: "Theme preset",
  4515.             cursor: "Puntero",
  4516.             lbSize: "Tamaño del leaderboard",
  4517.             chatFontSize: "Chat font size",
  4518.             minimapSize: "Tamaño del minimapa",
  4519.             skinBorder: "Borde de la Skin",
  4520.             cellTransparency: "Transparencia de la celula",
  4521.             lightenCellColor: "Claridad del color de la celula",
  4522.             borderColor: "Color del borde",
  4523.             borderWidth: "Ancho del borde",
  4524.             gridColor: "Color del grid",
  4525.             gridTextColor: "Color del texto del grid",
  4526.             gridTextSize: "Tamaño de texto del grid",
  4527.             gridTextFont: "Fuente de texto del grid",
  4528.             gridWidth: "Ancho del grid",
  4529.             nickColor: "Color del nick",
  4530.             nickStrokeColor: "Color del borde del nick",
  4531.             cellNickSize: "Tamaño del nick",
  4532.             nickFont: "Fuente del nick",
  4533.             massColor: "Color de la masa",
  4534.             massStrokeColor: "Color del borde de la masa",
  4535.             cellMassSize: "Tamaño de la masa",
  4536.             massFont: "Fuente de la masa",
  4537.             foodColor: "Color de la comida",
  4538.             foodSize: "Tamaño de la comida",
  4539.             virusColor: "Color del virus",
  4540.             virusBorderColor: "Color del borde del virus",
  4541.             virusBorderWidth: "Ancho del borde del virus",
  4542.             virusDecor: "Decoracion del virus",
  4543.             backgroundColor: "Color del fondo",
  4544.             commanderColor: "Color del comandante",
  4545.             indicatorSize: "Tamaño del indicador de compañero",
  4546.             team1color: "Color Equipo 1 [Modo doble TAG]",
  4547.             team2color: "Color Equipo 2 [Modo doble TAG]",
  4548.             on: "Activado",
  4549.             off: "Desactivado"
  4550.         }
  4551.     }
  4552. }, function(e, t, n) {
  4553.     "use strict";
  4554.     e.exports = {
  4555.         mainMenu: {
  4556.             btn_settings: "환경",
  4557.             btn_play: "í”Œë ˆì´",
  4558.             btn_spectate: "ê´€ì „",
  4559.             btn_inputs: "키보드",
  4560.             btn_theme: "테마",
  4561.             input_tag1: "태그",
  4562.             input_tag2: "태그 2",
  4563.             input_nick: "닉네임",
  4564.             input_skinUrl: "이미지 URL (imgur)",
  4565.             select_ffa: "FFA",
  4566.             select_party: "파티",
  4567.             select_teams: "팀",
  4568.             select_experimental: "익스페리멘탈",
  4569.             input_token: "파티 코드",
  4570.             btn_join: "조인",
  4571.             btn_create: "ìƒˆë¡œê³ ì¹¨"
  4572.         },
  4573.         notif: {
  4574.             cantPlay2Tag: "태그2 모드에서는 ì‹¤í–‰í•  ìˆ˜ 없습니다..",
  4575.             hsloNetConn: "HSLO 네트워크에 연결되었습니다.",
  4576.             hsloNetDisconn: "HSLO 네트워크에서 연결이 끊어졌습니다.",
  4577.             invalidSkinUrl: "잘못된 스킨 URL",
  4578.             login_lastSession: "마지막 세션 데이터에서 로그인했습니다..",
  4579.             sdk_error: "SDKê°€ 로드되지 않았습니다.",
  4580.             alreadyLoggedIn: "이미 로그인 했습니다.",
  4581.             login_success: "로그인",
  4582.             login_error: "로그인 오류!",
  4583.             logout: "로그 아웃 됨!",
  4584.             nickChangeInGame: "게임 중 닉네임을 ë³€ê²½í•  ìˆ˜ 없습니다..",
  4585.             targeting_on: "타겟팅을 ì‹œìž‘í•˜ë ¤ë©´ 세포를 클릭하십시오. 마우스 ì„¤ì •ì—ì„œ 메뉴의 지침을 참조하십시요..",
  4586.             targeting_off: "타겟팅이 êº¼ì ¸ 있습니다. ì„¤ì • 메뉴에서 사용하도록 ì„¤ì •í•˜ì‹­ì‹œìš”.",
  4587.             target_unnamed: "Cannot target unnamed cells.",
  4588.             hsloSkin_noAcc: "Account does not exist."
  4589.         },
  4590.         leaderboard: {
  4591.             title: "CELLZ PLUS"
  4592.         },
  4593.         huds: {
  4594.             enterChatMsg: "채팅 메세지 ìž…ë ¥...",
  4595.             teamlist_title: "팀 í”Œë ˆì´ì–´",
  4596.             score: "ì ìˆ˜",
  4597.             num1position: "#1등 위치",
  4598.             paused: "일시 중지",
  4599.             targeting_bigCellVp: "가장 큰 세포 목록",
  4600.             targeting_followVp: "마우스 타겟팅 ì„¤ì •",
  4601.             targeting_totalMass: "총 질량",
  4602.             targeting_players: "ìž ìž¬ì  타겟팅"
  4603.         },
  4604.         settingMenu: {
  4605.             language: "언어",
  4606.             CellAnimation: "ì• ë‹ˆë©”ì´ì…˜ 지연",
  4607.             zoomSpeed: "줌 속도",
  4608.             cameraSpeed: "카메라 속도 [2 기본값]",
  4609.             eatAnimation: "세포 먹기[흡수] ì• ë‹ˆë©”ì´ì…˜",
  4610.             autoZoom: "자동 확대/축소",
  4611.             cellTextAnimation: "세포 텍스트 ì• ë‹ˆë©”ì´ì…˜",
  4612.             autoHideText: "텍스트 자동 숨기기",
  4613.             hideOwnNick: "Hide own nick",
  4614.             hideOwnMass: "Hide own mass",
  4615.             cellNick: "세포 닉네임",
  4616.             cellMass: "세포 질량",
  4617.             nickShadow: "그림자 [세포 닉네임]",
  4618.             massShadow: "그림자 [세포 질량]",
  4619.             urlSkins: "URL 스킨",
  4620.             hsloSkins: "HSLO 스킨",
  4621.             food: "먹이",
  4622.             vanillaGrid: "바닐라 무늬",
  4623.             bgSectors: "바탕화면",
  4624.             cursorLine: "커서 ì„ ",
  4625.             opponentRings: "질량 ê²©ìžì„ ",
  4626.             splitRings: "Split rings",
  4627.             virusRange: "바이러스 범위",
  4628.             teamIndicator: "팀 목록",
  4629.             commander: "위치 í•‘",
  4630.             chatType: "채팅 ìœ í˜•",
  4631.             targeting: "세포 타겟팅[ê´€ì „ 모드]",
  4632.             sounds: "소리",
  4633.             opt_on: "켜짐",
  4634.             opt_off: "꺼짐",
  4635.             opt_stepped: "닿은곳",
  4636.             opt_linear: "ì„ í˜•",
  4637.             opt_shortened: "짧은",
  4638.             opt_full: "ì „ì²´",
  4639.             opt_nick: "닉네임",
  4640.             opt_mass: "질량",
  4641.             opt_both: "닉네임+ 질량",
  4642.             opt_perf: "ì‹¤ì ",
  4643.             opt_normal: "보통",
  4644.             opt_urlSkin: "Url 스킨",
  4645.             opt_hsloSkin: "Hslo 스킨",
  4646.             opt_allSkin: "ëª¨ë“  ìŠ¤í‚¨",
  4647.             opt_singleClr: "Mono colored",
  4648.             opt_rainbow: "무지개",
  4649.             opt_onlyLines: "테두리만",
  4650.             opt_snowflakes: "눈송이",
  4651.             opt_chatroom: "채팅방",
  4652.             opt_popup: "채팅 알림"
  4653.         },
  4654.         hkMenu: {
  4655.             title: "단축키",
  4656.             toggleMenuKey: "메인메뉴 끄기 ",
  4657.             feedKey: "feed 먹이",
  4658.             macroFeedKey: "매크로 feed먹이",
  4659.             splitKey: "분열",
  4660.             doubleSplitKey: "이중 분열",
  4661.             split16Key: "16분열",
  4662.             stopKey: "세포 이동중지",
  4663.             chatKey: "채팅 켜기",
  4664.             freeSpectateKey: "투사 모드 ì „í™˜",
  4665.             toggleSplitRings: "Toggle split rings",
  4666.             toggleOpponentRings: "Toggle opponent rings",
  4667.             toggleNick: "세포 닉을 ì„¤ì •í•©ë‹ˆë‹¤",
  4668.             toggleMass: "세포 질량을 ì„¤ì •í•©ë‹ˆë‹¤",
  4669.             toggleSkin: "스킨 ì„¤ì •",
  4670.             toggleFood: "먹이 ì„¤ì •",
  4671.             respawnKey: "ë¹ ë¥¸ 부활",
  4672.             command0Key: "ëª…ë ¹ 0",
  4673.             command1Key: "ëª…ë ¹ 1",
  4674.             command2Key: "ëª…ë ¹ 2",
  4675.             command3Key: "ëª…ë ¹ 3",
  4676.             command4Key: "ëª…ë ¹ 4",
  4677.             command5Key: "ëª…ë ¹ 5",
  4678.             command6Key: "ëª…ë ¹ 6",
  4679.             command7Key: "ëª…ë ¹ 7",
  4680.             command8Key: "ëª…ë ¹ 8",
  4681.             command9Key: "ëª…ë ¹ 9",
  4682.             zoom1key: "줌 수준 1",
  4683.             zoom2key: "줌 수준  2",
  4684.             zoom3key: "줌 수준 3",
  4685.             zoom4key: "줌 수준 4",
  4686.             zoom5key: "줌 수준 5"
  4687.         },
  4688.         mouseMenu: {
  4689.             title: "마우스",
  4690.             feed: "피드feed",
  4691.             macroFeed: "매크로 피드feed",
  4692.             split: "분열",
  4693.             doubleSplit: "이중 분열",
  4694.             split16: "16 분열",
  4695.             commander: "위치 í•‘",
  4696.             off: "꺼짐",
  4697.             lmb: "왼쪽 클릭",
  4698.             rmb: "오른쪽 클릭",
  4699.             scroll: "íœ  í´ë¦­",
  4700.             targeting_h1: "타겟팅",
  4701.             targeting_txt1: "타겟 ìž ê¸ˆ 1  ",
  4702.             targeting_txt2: "타겟 ìž ê¸ˆ 2  ",
  4703.             targeting_txt3: "스크롤 클릭 orê´€ì „ 키 ì „í™˜",
  4704.             targeting_txt4: "ì •ìƒ 세포 모드에서 마우스 ì¶”ì ì— ì „í™˜  ",
  4705.             targeting_txt5: "타겟 모드에서 마우스 ì¶”ì ì— ì „í™˜  ",
  4706.             targeting_txt6: "마우스 ì¶”ì ì—ì„œ ìµœê³  ì„¸í¬ 모드로 ì „í™˜ "
  4707.         },
  4708.         commandsMenu: {
  4709.             title: "ëª…ë ¹ì–´",
  4710.             command0: "시발!",
  4711.             command1: "빨리와주세요!",
  4712.             command2: "나에게 넣어줘!",
  4713.             command3: "여기에 도움요청 %sector%!",
  4714.             command4: "ì  이곳에서 발견 %sector%!",
  4715.             command5: "팀원이 필요해!",
  4716.             command6: "바이러스 부셔!",
  4717.             command7: "바이러스 쏴!",
  4718.             command8: "미끼!",
  4719.             command9: "낚시하자"
  4720.         },
  4721.         themeMenu: {
  4722.             selectedPreset: "Theme preset",
  4723.             cursor: "커서",
  4724.             lbSize: "리더보드 크기",
  4725.             chatFontSize: "Chat font size",
  4726.             minimapSize: "미니맵 크기",
  4727.             skinBorder: "스킨 테두리",
  4728.             cellTransparency: "세포 투명도",
  4729.             lightenCellColor: "밝은 세포 색깔",
  4730.             borderColor: "테두리 색깔",
  4731.             borderWidth: "테두리 너비",
  4732.             gridColor: "눈금 색",
  4733.             gridTextColor: "격자 텍스트 색깔",
  4734.             gridTextSize: "눈금 텍스트 크기",
  4735.             gridTextFont: "격자 테스트 글꼴",
  4736.             gridWidth: "눈금 너비",
  4737.             nickColor: "닉네임 컬러",
  4738.             nickStrokeColor: "닉네임 색깔획",
  4739.             cellNickSize: "닉 크기",
  4740.             nickFont: "닉 글꼴",
  4741.             massColor: "질량 색깔",
  4742.             massStrokeColor: "질량 색깔획",
  4743.             cellMassSize: "질량 크기",
  4744.             massFont: "질량 글꼴",
  4745.             foodColor: "먹이 색깔",
  4746.             foodSize: "먹이 크기",
  4747.             virusColor: "바이러스 색깔",
  4748.             virusBorderColor: "바이러스 테두리 색",
  4749.             virusBorderWidth: "바이러스 테두리 너비",
  4750.             virusDecor: "바이러스 장식",
  4751.             backgroundColor: "ë°°ê²½ 색깔",
  4752.             commanderColor: "위치 í•‘ 색깔",
  4753.             indicatorSize: "팀 아이콘 크기",
  4754.             team1color: "팀 1 색[더블 태그 모드]",
  4755.             team2color: "팀 2 색[더블 태그 모드]",
  4756.             on: "켜짐",
  4757.             off: "꺼짐"
  4758.         }
  4759.     }
  4760. }, function(e, t, n) {
  4761.     "use strict";
  4762.     e.exports = {
  4763.         mainMenu: {
  4764.             btn_settings: "設定",
  4765.             btn_play: "遊玩",
  4766.             btn_spectate: "觀戰",
  4767.             btn_inputs: "輸入",
  4768.             btn_theme: "主題",
  4769.             input_tag1: "隊伍一",
  4770.             input_tag2: "隊伍二",
  4771.             input_nick: "暱稱",
  4772.             input_skinUrl: "皮膚網址 (imgur)",
  4773.             select_ffa: "FFA",
  4774.             select_party: "Party",
  4775.             select_teams: "Teams",
  4776.             select_experimental: "Experimental",
  4777.             input_token: "Party代碼",
  4778.             btn_join: "åŠ å…¥",
  4779.             btn_create: "創建"
  4780.         },
  4781.         notif: {
  4782.             cantPlay2Tag: "不能用雙重隊伍",
  4783.             hsloNetConn: "連接HSLO網絡",
  4784.             hsloNetDisconn: "æ–·é–‹HSLO網絡",
  4785.             invalidSkinUrl: "不當皮膚網址",
  4786.             login_lastSession: "以上次資訊登入",
  4787.             sdk_error: "SDK未載入",
  4788.             alreadyLoggedIn: "已經登入",
  4789.             login_success: "登入成功",
  4790.             login_error: "登入錯誤",
  4791.             logout: "登出",
  4792.             nickChangeInGame: "不能在遊戲中更改暱稱.",
  4793.             targeting_on: "é¸å–ä¸€ç´°èƒžè¿½è¹¤ã€‚è©³çœ‹æ»‘é¼ è¨­å®šä»‹é¢çš„æŒ‡å¼•",
  4794.             targeting_off: "自動追蹤模式已關閉,如要使用請在設定介面開啟",
  4795.             target_unnamed: "Cannot target unnamed cells.",
  4796.             hsloSkin_noAcc: "Account does not exist."
  4797.         },
  4798.         leaderboard: {
  4799.             title: "CELLZ PLUS"
  4800.         },
  4801.         huds: {
  4802.             enterChatMsg: "聊天輸入中……",
  4803.             teamlist_title: "隊伍玩家",
  4804.             score: "分數",
  4805.             num1position: "第一位置",
  4806.             paused: "暫停",
  4807.             targeting_bigCellVp: "最大玩家視野",
  4808.             targeting_followVp: "æ»‘é¼ è·Ÿéš¨è¦–é‡Ž",
  4809.             targeting_totalMass: "總質量",
  4810.             targeting_players: "追蹤玩家中"
  4811.         },
  4812.         settingMenu: {
  4813.             language: "語言",
  4814.             CellAnimation: "動畫延遲",
  4815.             zoomSpeed: "變焦速度",
  4816.             cameraSpeed: "é¡é ­é€Ÿåº¦ï¼»é è¨­äºŒï¼½",
  4817.             eatAnimation: "進食動畫[吸入]",
  4818.             autoZoom: "自動變焦",
  4819.             cellTextAnimation: "細胞文字動畫",
  4820.             autoHideText: "自動隱藏文字",
  4821.             hideOwnNick: "不顯示自己質量",
  4822.             hideOwnMass: "不顯示自己姓名",
  4823.             cellNick: "細胞暱稱",
  4824.             cellMass: "細胞質量",
  4825.             nickShadow: "é™°å½± [細胞暱稱]",
  4826.             massShadow: "é™°å½± [細胞質量]",
  4827.             urlSkins: "皮膚網址",
  4828.             hsloSkins: "HSLO皮膚",
  4829.             food: "食物",
  4830.             vanillaGrid: "åŽŸç”Ÿæ ¼ç¶²",
  4831.             bgSectors: "背景區間",
  4832.             cursorLine: "導引線",
  4833.             opponentRings: "變色環",
  4834.             splitRings: "分裂距離圈",
  4835.             virusRange: "刺球距離",
  4836.             teamIndicator: "隊伍標示",
  4837.             commander: "指揮",
  4838.             chatType: "聊天樣式",
  4839.             targeting: "玩家追蹤中 [觀戰模式]",
  4840.             sounds: "聲音",
  4841.             opt_on: "é–‹",
  4842.             opt_off: "é—œ",
  4843.             opt_stepped: "階躍式",
  4844.             opt_linear: "線性",
  4845.             opt_shortened: "簡短化",
  4846.             opt_full: "全部",
  4847.             opt_nick: "暱稱",
  4848.             opt_mass: "質量",
  4849.             opt_both: "暱稱及質量",
  4850.             opt_perf: "效能",
  4851.             opt_normal: "一般",
  4852.             opt_urlSkin: "皮膚網址",
  4853.             opt_hsloSkin: "HSLO皮膚",
  4854.             opt_allSkin: "全部皮膚",
  4855.             opt_singleClr: "單色",
  4856.             opt_rainbow: "彩色",
  4857.             opt_onlyLines: "只有線條",
  4858.             opt_snowflakes: "雪花",
  4859.             opt_chatroom: "聊天欄",
  4860.             opt_popup: "彈出通知"
  4861.         },
  4862.         hkMenu: {
  4863.             title: "熱鍵",
  4864.             toggleMenuKey: "切換主選單",
  4865.             feedKey: "單次餵養",
  4866.             macroFeedKey: "持續餵養",
  4867.             splitKey: "分裂",
  4868.             doubleSplitKey: "雙重分裂",
  4869.             split16Key: "四重分裂",
  4870.             stopKey: "停止移動",
  4871.             chatKey: "切換聊天",
  4872.             freeSpectateKey: "切換觀戰模式",
  4873.             toggleSplitRings: "切換分裂距離圈",
  4874.             toggleOpponentRings: "切換變色環",
  4875.             toggleNick: "切換暱稱顯示",
  4876.             toggleMass: "切換質量顯示",
  4877.             toggleSkin: "切換皮膚顯示",
  4878.             toggleFood: "切換食物顯示",
  4879.             respawnKey: "快速重生",
  4880.             command0Key: "指令0",
  4881.             command1Key: "指令1",
  4882.             command2Key: "指令2",
  4883.             command3Key: "指令3",
  4884.             command4Key: "指令4",
  4885.             command5Key: "指令5",
  4886.             command6Key: "指令6",
  4887.             command7Key: "指令7",
  4888.             command8Key: "指令8",
  4889.             command9Key: "指令9",
  4890.             zoom1key: "變焦等級一",
  4891.             zoom2key: "變焦等級二",
  4892.             zoom3key: "變焦等級三",
  4893.             zoom4key: "變焦等級四",
  4894.             zoom5key: "變焦等級五"
  4895.         },
  4896.         mouseMenu: {
  4897.             title: "æ»‘é¼ ",
  4898.             feed: "單次餵養",
  4899.             macroFeed: "持續餵養",
  4900.             split: "單次分裂",
  4901.             doubleSplit: "雙重分裂",
  4902.             split16: "四重分裂",
  4903.             commander: "指揮",
  4904.             off: "é—œ",
  4905.             lmb: "左鍵",
  4906.             rmb: "右鍵",
  4907.             scroll: "滾輪鍵",
  4908.             targeting_h1: "追蹤中",
  4909.             targeting_txt1: "鎖定目標一",
  4910.             targeting_txt2: "鎖定目標二",
  4911.             targeting_txt3: "滾輪鍵或切換觀戰鍵",
  4912.             targeting_txt4: "åˆ‡æ›æœ€å¤§çŽ©å®¶æ¨¡å¼èˆ‡æ»‘é¼ è·Ÿéš¨æ¨¡å¼",
  4913.             targeting_txt5: "åˆ‡æ›è‡ªå‹•è¿½è¹¤æ¨¡å¼èˆ‡æ»‘é¼ è·Ÿéš¨æ¨¡å¼",
  4914.             targeting_txt6: "åˆ‡æ›æ»‘é¼ è·Ÿéš¨æ¨¡å¼èˆ‡æœ€å¤§çŽ©å®¶æ¨¡å¼"
  4915.         },
  4916.         commandsMenu: {
  4917.             title: "指令",
  4918.             command0: "æ“ä½ åª½ï¼",
  4919.             command1: "餵我!",
  4920.             command2: "秒空給我!",
  4921.             command3: "%sector%需要支援!",
  4922.             command4: "%sector%發現敵人!",
  4923.             command5: "來個隊友!",
  4924.             command6: "擋刺!",
  4925.             command7: "吃掉刺",
  4926.             command8: "來騙他!",
  4927.             command9: "裝爆空騙他!"
  4928.         },
  4929.         themeMenu: {
  4930.             selectedPreset: "Theme preset",
  4931.             cursor: "é¼ æ¨™",
  4932.             lbSize: "排行榜大小",
  4933.             chatFontSize: "聊天室字體大小",
  4934.             minimapSize: "小地圖大小",
  4935.             skinBorder: "皮膚輪廓",
  4936.             cellTransparency: "細胞透明度",
  4937.             lightenCellColor: "光亮細胞顏色",
  4938.             borderColor: "外圍顏色",
  4939.             borderWidth: "外圍闊度",
  4940.             gridColor: "區間顏色",
  4941.             gridTextColor: "區間文字顏色",
  4942.             gridTextSize: "區間文字大小",
  4943.             gridTextFont: "區間文字字型",
  4944.             gridWidth: "區間闊度",
  4945.             nickColor: "暱稱顏色",
  4946.             nickStrokeColor: "暱稱輪廓顏色",
  4947.             cellNickSize: "暱稱大小",
  4948.             nickFont: "暱稱字型",
  4949.             massColor: "質量訊息顏色",
  4950.             massStrokeColor: "質量訊息輪廓顏色",
  4951.             cellMassSize: "質量訊息大小",
  4952.             massFont: "質量訊息字型",
  4953.             foodColor: "食物顏色",
  4954.             foodSize: "食物大小",
  4955.             virusColor: "刺球顏色",
  4956.             virusBorderColor: "刺球外框顏色",
  4957.             virusBorderWidth: "刺球外框闊度",
  4958.             virusDecor: "刺球裝飾",
  4959.             backgroundColor: "背景顏色",
  4960.             commanderColor: "指令顏色",
  4961.             indicatorSize: "隊伍標示顏色",
  4962.             team1color: "隊伍一顏色 [雙隊伍模式]",
  4963.             team2color: "隊伍二顏色 [雙隊伍模式]",
  4964.             on: "é–‹",
  4965.             off: "é—œ"
  4966.         }
  4967.     }
  4968. }, function(e, t, n) {
  4969.     "use strict";
  4970.     e.exports = {
  4971.         mainMenu: {
  4972.             btn_settings: "設定",
  4973.             btn_play: "プレー",
  4974.             btn_spectate: "観戦",
  4975.             btn_inputs: "インプット",
  4976.             btn_theme: "テーマ",
  4977.             input_tag1: "ã‚¿ã‚°",
  4978.             input_tag2: "ã‚¿ã‚°2",
  4979.             input_nick: "名前",
  4980.             input_skinUrl: "スキンURL (imgur)",
  4981.             select_ffa: "FFA",
  4982.             select_party: "パーティー",
  4983.             select_teams: "チーム",
  4984.             select_experimental: "エクスペリメンタル",
  4985.             input_token: "トークン",
  4986.             btn_join: "å‚åŠ ",
  4987.             btn_create: "作成"
  4988.         },
  4989.         notif: {
  4990.             cantPlay2Tag: "ダブルタグモードではプレーすることができません。",
  4991.             hsloNetConn: "HSLOネットワークに接続しました。",
  4992.             hsloNetDisconn: "HSLOネットワークから切断しました。",
  4993.             invalidSkinUrl: "無効なURLです。",
  4994.             login_lastSession: "最後のセッションからログインしました。",
  4995.             sdk_error: "SDKが読み込まれませんでした。",
  4996.             alreadyLoggedIn: "既にログインされています。",
  4997.             login_success: "ログインしました。",
  4998.             login_error: "ログインエラー!",
  4999.             logout: "ログアウトしました。",
  5000.             nickChangeInGame: "プレー中に名前を変更することはできません。",
  5001.             targeting_on: "マウスをクリックしてターゲットを始めます。マウス設定メニューの解説を参照。",
  5002.             targeting_off: "ターゲットがオフになりました。使用するには設定メニューからオンにしてください。",
  5003.             target_unnamed: "Cannot target unnamed cells.",
  5004.             hsloSkin_noAcc: "Account does not exist."
  5005.         },
  5006.         leaderboard: {
  5007.             title: "CELLZ PLUS"
  5008.         },
  5009.         huds: {
  5010.             enterChatMsg: "メッセージを送信...",
  5011.             teamlist_title: "チームプレーヤー",
  5012.             score: "スコア",
  5013.             num1position: "1位の位置",
  5014.             paused: "静止",
  5015.             targeting_bigCellVp: "1位視点",
  5016.             targeting_followVp: "マウス視点",
  5017.             targeting_totalMass: "合計マス",
  5018.             targeting_players: "ターゲットプレーヤー"
  5019.         },
  5020.         settingMenu: {
  5021.             language: "言語",
  5022.             CellAnimation: "アニメーションディレイ",
  5023.             zoomSpeed: "ズーム速度",
  5024.             cameraSpeed: "カメラ速度 [2 デフォルト]",
  5025.             eatAnimation: "細胞捕食 [飲み込む] アニメーション",
  5026.             autoZoom: "オートズーム",
  5027.             cellTextAnimation: "細胞のテキストアニメーション",
  5028.             autoHideText: "è‡ªå‹•ã§ãƒ†ã‚­ã‚¹ãƒˆã‚’éš ã™",
  5029.             hideOwnNick: "Hide own nick",
  5030.             hideOwnMass: "Hide own mass",
  5031.             cellNick: "細胞の名前",
  5032.             cellMass: "細胞のマス",
  5033.             nickShadow: "å½± [細胞の名前]",
  5034.             massShadow: "å½± [細胞のマス]",
  5035.             urlSkins: "URLスキン",
  5036.             hsloSkins: "HSLOスキン",
  5037.             food: "ç²’",
  5038.             vanillaGrid: "バニラグリッド",
  5039.             bgSectors: "座標",
  5040.             cursorLine: "カーソルライン",
  5041.             opponentRings: "捕食判定リング",
  5042.             splitRings: "Split rings",
  5043.             virusRange: "棘範囲",
  5044.             teamIndicator: "チームメイトインジケーター",
  5045.             commander: "コマンダー",
  5046.             chatType: "チャットタイプ",
  5047.             targeting: "ターゲット [観戦モード]",
  5048.             sounds: "サウンド",
  5049.             opt_on: "オン",
  5050.             opt_off: "オフ",
  5051.             opt_stepped: "ステップ",
  5052.             opt_shortened: "短縮",
  5053.             opt_linear: "リニア",
  5054.             opt_full: "フル",
  5055.             opt_nick: "名前",
  5056.             opt_mass: "マス",
  5057.             opt_both: "名前 + マス",
  5058.             opt_perf: "パフォーマンス",
  5059.             opt_normal: "ノーマル",
  5060.             opt_urlSkin: "URLスキン",
  5061.             opt_hsloSkin: "Hsloスキン",
  5062.             opt_allSkin: "全スキン",
  5063.             opt_singleClr: "単色",
  5064.             opt_rainbow: "レインボー",
  5065.             opt_onlyLines: "線のみ",
  5066.             opt_snowflakes: "スノーフレーク",
  5067.             opt_chatroom: "チャットルーム",
  5068.             opt_popup: "ポップアップチャット"
  5069.         },
  5070.         hkMenu: {
  5071.             title: "ホットキー",
  5072.             toggleMenuKey: "メインメニュー切り替え",
  5073.             feedKey: "餌",
  5074.             macroFeedKey: "餌マクロ",
  5075.             splitKey: "分裂",
  5076.             doubleSplitKey: "ダブル分裂",
  5077.             split16Key: "16分裂",
  5078.             stopKey: "静止",
  5079.             chatKey: "チャット切り替え",
  5080.             freeSpectateKey: "観戦モード切り替え",
  5081.             toggleSplitRings: "Toggle split rings",
  5082.             toggleOpponentRings: "Toggle opponent rings",
  5083.             toggleNick: "名前表示切り替え",
  5084.             toggleMass: "マス表示切り替え",
  5085.             toggleSkin: "スキン表示切り替え",
  5086.             toggleFood: "餌表示切り替え",
  5087.             respawnKey: "クイックリスポーン",
  5088.             command0Key: "コマンド0",
  5089.             command1Key: "コマンド1",
  5090.             command2Key: "コマンド2",
  5091.             command3Key: "コマンド3",
  5092.             command4Key: "コマンド4",
  5093.             command5Key: "コマンド5",
  5094.             command6Key: "コマンド6",
  5095.             command7Key: "コマンド7",
  5096.             command8Key: "コマンド8",
  5097.             command9Key: "コマンド9",
  5098.             zoom1key: "ズームレベル1",
  5099.             zoom2key: "ズームレベル2",
  5100.             zoom3key: "ズームレベル3",
  5101.             zoom4key: "ズームレベル4",
  5102.             zoom5key: "ズームレベル5"
  5103.         },
  5104.         mouseMenu: {
  5105.             title: "マウス",
  5106.             feed: "餌",
  5107.             macroFeed: "餌マクロ",
  5108.             split: "分裂",
  5109.             doubleSplit: "ダブル分裂",
  5110.             split16: "16分裂",
  5111.             commander: "コマンダー",
  5112.             off: "オフ",
  5113.             lmb: "左クリック",
  5114.             rmb: "右クリック",
  5115.             scroll: "スクロールクリック",
  5116.             targeting_h1: "ターゲット",
  5117.             targeting_txt1: "ターゲットロック1",
  5118.             targeting_txt2: "ターゲットロック2",
  5119.             targeting_txt3: "スクロールクリック or 観戦キー切り替え",
  5120.             targeting_txt4: "トップセルモードからマウス追跡に切り替え",
  5121.             targeting_txt5: "ターゲットモードからマウス追跡に切り替え",
  5122.             targeting_txt6: "マウス追跡からトップセルモードに切り替え"
  5123.         },
  5124.         commandsMenu: {
  5125.             title: "コマンド",
  5126.             command0: "Fuck!",
  5127.             command1: "Feed Me!",
  5128.             command2: "Split into me!",
  5129.             command3: "Need backup at %sector%!",
  5130.             command4: "Enemy spotted at %sector%!",
  5131.             command5: "Need a teammate!",
  5132.             command6: "Tank the virus!",
  5133.             command7: "Eat the virus!",
  5134.             command8: "Let's bait!",
  5135.             command9: "Fake tricksplit!"
  5136.         },
  5137.         themeMenu: {
  5138.             selectedPreset: "Theme preset",
  5139.             cursor: "カーソル",
  5140.             lbSize: "リーダーボードの大きさ",
  5141.             chatFontSize: "Chat font size",
  5142.             minimapSize: "ミニマップの大きさ",
  5143.             skinBorder: "スキンの境界線",
  5144.             cellTransparency: "細胞の透過",
  5145.             lightenCellColor: "細胞色の軽減",
  5146.             borderColor: "境界線の色",
  5147.             borderWidth: "境界線の横幅",
  5148.             gridColor: "グリッドカラー",
  5149.             gridTextColor: "グリッドテキストカラー",
  5150.             gridTextSize: "グリッドテキストサイズ",
  5151.             gridTextFont: "グリッドテキストフォント",
  5152.             gridWidth: "グリッドの横幅",
  5153.             nickColor: "名前の色",
  5154.             nickStrokeColor: "名前の影の色",
  5155.             cellNickSize: "名前の大きさ",
  5156.             nickFont: "名前のフォント",
  5157.             massColor: "マスの色",
  5158.             massStrokeColor: "マスの影の色",
  5159.             cellMassSize: "マスの大きさ",
  5160.             massFont: "マスのフォント",
  5161.             foodColor: "フォントの色",
  5162.             foodSize: "粒の大きさ",
  5163.             virusColor: "棘の色",
  5164.             virusBorderColor: "æ£˜ã®æž è‰²",
  5165.             virusBorderWidth: "棘の境界線の横幅",
  5166.             virusDecor: "棘の装飾",
  5167.             backgroundColor: "背景色",
  5168.             commanderColor: "コマンダーの色",
  5169.             indicatorSize: "チームメイトインジケーターの大きさ",
  5170.             team1color: "チーム1の色 [ダブルタグモード]",
  5171.             team2color: "チーム2の色 [ダブルタグモード]",
  5172.             on: "オン",
  5173.             off: "オフ"
  5174.         }
  5175.     }
  5176. }, function(e, t, n) {
  5177.     "use strict";
  5178.     e.exports = {
  5179.         mainMenu: {
  5180.             btn_settings: "Settings",
  5181.             btn_play: "Play",
  5182.             btn_spectate: "Spectate",
  5183.             btn_inputs: "Inputs",
  5184.             btn_theme: "Theme",
  5185.             input_tag1: "Tag",
  5186.             input_tag2: "Tag 2",
  5187.             input_nick: "Nick",
  5188.             input_skinUrl: "Skin URL (imgur)",
  5189.             select_ffa: "FFA",
  5190.             select_party: "Party",
  5191.             select_teams: "Teams",
  5192.             select_experimental: "Experimental",
  5193.             input_token: "Party token",
  5194.             btn_join: "Join",
  5195.             btn_create: "Create"
  5196.         },
  5197.         notif: {
  5198.             cantPlay2Tag: "You can't play in double tag mode.",
  5199.             hsloNetConn: "Connected to ProSplit.io Networks.",
  5200.             hsloNetDisconn: "Disconnected from ProSplit.io networks.",
  5201.             invalidSkinUrl: "Invalid skin URL",
  5202.             login_lastSession: "Logged in from last session data.",
  5203.             sdk_error: "SDK not loaded",
  5204.             alreadyLoggedIn: "Already logged in.",
  5205.             login_success: "Logged in",
  5206.             login_error: "Login error!",
  5207.             logout: "Logged out",
  5208.             nickChangeInGame: "You can't change nick while in game.",
  5209.             targeting_on: "Click a cell to begin targeting it. See instructions in mouse settings menu.",
  5210.             targeting_off: "Targeting is turned off. Turn it on in settings menu in order to use it.",
  5211.             target_unnamed: "Cannot target unnamed cells.",
  5212.             hsloSkin_noAcc: "Account does not exist."
  5213.         },
  5214.         leaderboard: {
  5215.             title: "ProSplit.io"
  5216.         },
  5217.         huds: {
  5218.             enterChatMsg: "Enter chat message...",
  5219.             teamlist_title: "Team Players",
  5220.             score: "Score",
  5221.             num1position: "#1 position",
  5222.             paused: "Paused",
  5223.             targeting_bigCellVp: "BIGGEST CELL VIEWPORT",
  5224.             targeting_followVp: "VIEWPORT FOLLOWING MOUSE",
  5225.             targeting_totalMass: "TOTAL MASS",
  5226.             targeting_players: "TARGETING PLAYERS"
  5227.         },
  5228.         settingMenu: {
  5229.             language: "Language",
  5230.             CellAnimation: "Animation delay",
  5231.             zoomSpeed: "Zoom speed",
  5232.             cameraSpeed: "Camera speed [2 default]",
  5233.             eatAnimation: "Cell eat [sucking] animation",
  5234.             autoZoom: "Auto zoom",
  5235.             cellTextAnimation: "Cell text animation",
  5236.             autoHideText: "Auto hide text",
  5237.             hideOwnNick: "Hide own nick",
  5238.             hideOwnMass: "Hide own mass",
  5239.             cellNick: "Cell nick",
  5240.             cellMass: "Cell mass",
  5241.             nickShadow: "Nick shadow",
  5242.             massShadow: "Mass shadow",
  5243.             urlSkins: "URL skins",
  5244.             hsloSkins: "HSLO skins",
  5245.             food: "Food",
  5246.             vanillaGrid: "Vanilla grid",
  5247.             bgSectors: "Background sectors",
  5248.             cursorLine: "Cursor lines",
  5249.             opponentRings: "Opponent rings",
  5250.             splitRings: "Split rings",
  5251.             virusRange: "Viruses range",
  5252.             teamIndicator: "Teammate indicator",
  5253.             commander: "Commander",
  5254.             chatType: "Chat type",
  5255.             targeting: "Cell Targeting [Spectate mode]",
  5256.             sounds: "Sounds",
  5257.             opt_on: "On",
  5258.             opt_off: "Off",
  5259.             opt_stepped: "Stepped",
  5260.             opt_linear: "Linear",
  5261.             opt_shortened: "Shortened",
  5262.             opt_full: "Full",
  5263.             opt_nick: "Nick",
  5264.             opt_mass: "Mass",
  5265.             opt_both: "Nick + Mass",
  5266.             opt_perf: "Performance",
  5267.             opt_normal: "Normal",
  5268.             opt_urlSkin: "Url skins",
  5269.             opt_hsloSkin: "Hslo skins",
  5270.             opt_allSkin: "All skins",
  5271.             opt_singleClr: "Mono colored",
  5272.             opt_rainbow: "Rainbow",
  5273.             opt_onlyLines: "Only lines",
  5274.             opt_snowflakes: "Snowflakes",
  5275.             opt_chatroom: "Chatroom",
  5276.             opt_popup: "Pop up chat"
  5277.         },
  5278.         hkMenu: {
  5279.             title: "Hotkeys",
  5280.             toggleMenuKey: "Toggle main menu",
  5281.             feedKey: "Feed",
  5282.             macroFeedKey: "Macro feed",
  5283.             splitKey: "Split",
  5284.             doubleSplitKey: "Double split",
  5285.             split16Key: "Split 16",
  5286.             toggleCell: "Multibox Key",
  5287.             stopKey: "Stop cell movement",
  5288.             chatKey: "Toggle chat",
  5289.             freeSpectateKey: "Toggle spectate mode",
  5290.             toggleSplitRings: "Toggle split rings",
  5291.             toggleOpponentRings: "Toggle opponent rings",
  5292.             toggleNick: "Toggle cell nick",
  5293.             toggleMass: "Toggle cell mass",
  5294.             toggleSkin: "Toggle skin",
  5295.             toggleFood: "Toggle food",
  5296.             respawnKey: "Quick respawn",
  5297.             command0Key: "Command 0",
  5298.             command1Key: "Command 1",
  5299.             command2Key: "Command 2",
  5300.             command3Key: "Command 3",
  5301.             command4Key: "Command 4",
  5302.             command5Key: "Command 5",
  5303.             command6Key: "Command 6",
  5304.             command7Key: "Command 7",
  5305.             command8Key: "Command 8",
  5306.             command9Key: "Command 9",
  5307.             zoom1key: "Zoom level 1",
  5308.             zoom2key: "Zoom level 2",
  5309.             zoom3key: "Zoom level 3",
  5310.             zoom4key: "Zoom level 4",
  5311.             zoom5key: "Zoom level 5"
  5312.         },
  5313.         mouseMenu: {
  5314.             title: "Mouse",
  5315.             feed: "Feed",
  5316.             macroFeed: "Macro feed",
  5317.             split: "Split",
  5318.             doubleSplit: "Double split",
  5319.             split16: "Split 16",
  5320.             commander: "Commander",
  5321.             off: "Off",
  5322.             lmb: "Left click",
  5323.             rmb: "Right click",
  5324.             scroll: "Middle click",
  5325.             targeting_h1: "Targeting",
  5326.             targeting_txt1: "Lock target 1",
  5327.             targeting_txt2: "Lock target 2",
  5328.             targeting_txt3: "Middle click or Toggle spectate key",
  5329.             targeting_txt4: "Toggle top cell mode to follow mouse mode",
  5330.             targeting_txt5: "Toggle targeting mode to follow mouse mode",
  5331.             targeting_txt6: "Toggle follow mouse mode to top cell mode"
  5332.         },
  5333.         commandsMenu: {
  5334.             title: "Commands",
  5335.             command0: "Fuck!",
  5336.             command1: "Feed Me!",
  5337.             command2: "Split into me!",
  5338.             command3: "Need backup at %sector%!",
  5339.             command4: "Enemy spotted at %sector%!",
  5340.             command5: "Need a teammate!",
  5341.             command6: "Tank the virus!",
  5342.             command7: "Eat the virus!",
  5343.             command8: "Let's bait!",
  5344.             command9: "Fake tricksplit!"
  5345.         },
  5346.         themeMenu: {
  5347.             selectedPreset: "Theme preset",
  5348.             cursor: "Cursor",
  5349.             lbSize: "Leaderboard size",
  5350.             chatFontSize: "Chat font size",
  5351.             minimapSize: "Minimap size",
  5352.             skinBorder: "Skin border",
  5353.             cellTransparency: "Cell transparency",
  5354.             lightenCellColor: "Lighten cell color",
  5355.             borderColor: "Border color",
  5356.             borderWidth: "Border width",
  5357.             gridColor: "Grid color",
  5358.             gridTextColor: "Grid text color",
  5359.             gridTextSize: "Grid text size",
  5360.             gridTextFont: "Grid text font",
  5361.             gridWidth: "Grid width",
  5362.             nickColor: "Nick color",
  5363.             nickStrokeColor: "Nick stroke color",
  5364.             cellNickSize: "Nick size",
  5365.             nickFont: "Nick font",
  5366.             massColor: "Mass color",
  5367.             massStrokeColor: "Mass stroke color",
  5368.             cellMassSize: "Mass size",
  5369.             massFont: "Mass font",
  5370.             foodColor: "Food color",
  5371.             foodSize: "Food size",
  5372.             virusColor: "Virus color",
  5373.             virusBorderColor: "Virus border color",
  5374.             virusBorderWidth: "virus border width",
  5375.             virusDecor: "Virus Decoration",
  5376.             backgroundColor: "Background color",
  5377.             commanderColor: "Commander color",
  5378.             indicatorSize: "Teammate indicator size",
  5379.             team1color: "Team 1 color [Double Tag Mode]",
  5380.             team2color: "Team 2 color [Double Tag Mode]",
  5381.             on: "On",
  5382.             off: "Off"
  5383.         }
  5384.     }
  5385. }, function(e, t, n) {
  5386.     "use strict";
  5387.     var i = n(103),
  5388.         o = n(102),
  5389.         a = n(101),
  5390.         r = n(100),
  5391.         s = n(99);
  5392.     e.exports = {
  5393.         lang_EN: i,
  5394.         lang_JA: o,
  5395.         lang_ZH: a,
  5396.         lang_KO: r,
  5397.         lang_ES: s
  5398.     }
  5399. }, function(e, t, n) {
  5400.     "use strict";
  5401.     var i = a(n(0)),
  5402.         o = a(n(1));
  5403.  
  5404.     function a(e) {
  5405.         return e && e.__esModule ? e : {
  5406.             default: e
  5407.         }
  5408.     }
  5409.     e.exports = function() {
  5410.         function e() {
  5411.             (0, i.default)(this, e)
  5412.         }
  5413.         return (0, o.default)(e, null, [{
  5414.             key: "init",
  5415.             value: function() {
  5416.                 this.div = $("#notifications"), this.duration = 1e4, this.animDuration = 500, this.iconChat = '<i class="fa fa-comment"></i>', this.iconAlert = '<i class="fa fa-exclamation-circle"></i>', this.iconBell = '<i class="fa fa-bell"></i>', this.chatroomdiv = $("#chatroom"), this.emojiPath = "", this.emojis = {}, this.displayEmojis()
  5417.             }
  5418.         }, {
  5419.             key: "displayEmojis",
  5420.             value: function() {
  5421.                 var e = this,
  5422.                     t = $("#emojiContainer"),
  5423.                     n = function(n) {
  5424.                         var i = $('<img src="' + (e.emojiPath + e.emojis[n]) + '" class="emojiPreview">');
  5425.                         i.click(function() {
  5426.                             var e = $("#message"),
  5427.                                 t = e.val();
  5428.                             e.val(t + " " + n), ChatRoom.input.focus()
  5429.                         }), t.append(i)
  5430.                     };
  5431.                 for (var i in this.emojis) n(i)
  5432.             }
  5433.         }, {
  5434.             key: "normal",
  5435.             value: function(e, t) {
  5436.                 if (this.chatroom(e, t, this.iconChat), "chatroom" !== Menu.chatType) {
  5437.                     var n = '<div class="chatPopup"><h2 class="chatPopupHeading"><span class="chatPopupSender"> ' + this.cleanMessage(e) + ': </span></h2><span class="chatPopupMessage">' + this.putEmojis(this.cleanMessage(t)) + "</span></div>";
  5438.                     this.append(n)
  5439.                 }
  5440.             }
  5441.         }, {
  5442.             key: "command",
  5443.             value: function(e, t) {
  5444.                 if (this.chatroom(e, t, this.iconAlert), "chatroom" !== Menu.chatType) {
  5445.                     var n = '<div class="chatPopup"><h2 class="chatPopupHeading"><span class="chatPopupSender"> ' + this.cleanMessage(e) + ': </span></h2><span class="chatPopupMessage">' + this.putEmojis(this.cleanMessage(t)) + "</span></div>";
  5446.                     this.append(n)
  5447.                 }
  5448.             }
  5449.         }, {
  5450.             key: "alert",
  5451.             value: function(e, t) {
  5452.                 if (this.chatroom(e, t, this.iconBell), "chatroom" !== Menu.chatType) {
  5453.                     var n = '<div class="chatPopup"><h2 class="chatPopupHeading"><span class="chatPopupSender"> ' + this.cleanMessage(e) + ': </span></h2><span class="chatPopupMessage">' + this.putEmojis(this.cleanMessage(t)) + "</span></div>";
  5454.                     this.append(n)
  5455.                 }
  5456.             }
  5457.         }, {
  5458.             key: "append",
  5459.             value: function(e) {
  5460.                 var t = this,
  5461.                     n = $(e);
  5462.                 n.slideUp(0), n.appendTo(this.div), n.slideDown(this.animDuration), setTimeout(function() {
  5463.                     n.slideUp(t.animDuration, function() {
  5464.                         n.remove()
  5465.                     })
  5466.                 }, this.duration)
  5467.             }
  5468.         }, {
  5469.             key: "replaceTag",
  5470.             value: function(e) {
  5471.                 return {
  5472.                     '"': "&quot;",
  5473.                     "&": "&amp;",
  5474.                     "<": "&lt;",
  5475.                     ">": "&gt;"
  5476.                 } [e] || e
  5477.             }
  5478.         }, {
  5479.             key: "cleanMessage",
  5480.             value: function(e) {
  5481.                 return e.replace(/[&<>]/g, this.replaceTag)
  5482.             }
  5483.         }, {
  5484.             key: "putEmojis",
  5485.             value: function(e) {
  5486.                 for (var t in this.emojis) {
  5487.                     var n = new RegExp(t, "g");
  5488.                     e = e.replace(n, '<img src="' + (this.emojiPath + this.emojis[t]) + '">')
  5489.                 }
  5490.                 return e
  5491.             }
  5492.         }, {
  5493.             key: "chatroom",
  5494.             value: function(e, t, n) {
  5495.                 var i = new Date,
  5496.                     o = i.getHours() + ":" + i.getMinutes();
  5497.                 this.chatroomdiv.append('<div class="chatroom-row"><span class="chattime">' + o + "</span> " + n + ' <span class="nick">' + this.cleanMessage(e) + '</span> <span class="message">' + this.putEmojis(this.cleanMessage(t)) + "</span></div>"), this.chatroomdiv.scrollTop(this.chatroomdiv[0].scrollHeight)
  5498.             }
  5499.         }]), e
  5500.     }()
  5501. }, function(e, t, n) {
  5502.     "use strict";
  5503.     var i = a(n(0)),
  5504.         o = a(n(1));
  5505.  
  5506.     function a(e) {
  5507.         return e && e.__esModule ? e : {
  5508.             default: e
  5509.         }
  5510.     }
  5511.     e.exports = function() {
  5512.         function e() {
  5513.             (0, i.default)(this, e)
  5514.         }
  5515.         return (0, o.default)(e, null, [{
  5516.             key: "init",
  5517.             value: function() {
  5518.                 this.target1 = {
  5519.                     turnedOn: !1,
  5520.                     nick: "",
  5521.                     worldID: "",
  5522.                     mass: 0,
  5523.                     cellCount: 0,
  5524.                     position: {
  5525.                         x: 0,
  5526.                         y: 0
  5527.                     },
  5528.                     outOfView: !1
  5529.                 }, this.target2 = {
  5530.                     turnedOn: !1,
  5531.                     nick: "",
  5532.                     worldID: "",
  5533.                     mass: 0,
  5534.                     cellCount: 0,
  5535.                     position: {
  5536.                         x: 0,
  5537.                         y: 0
  5538.                     },
  5539.                     outOfView: !1
  5540.                 }, this.center = {
  5541.                     x: 0,
  5542.                     y: 0
  5543.                 }
  5544.             }
  5545.         }, {
  5546.             key: "update",
  5547.             value: function() {
  5548.                 if (this.target1.turnedOn || this.target2.turnedOn) {
  5549.                     var e = this.target1,
  5550.                         t = this.target2;
  5551.                     e.mass = 0, e.position.x = 0, e.position.y = 0, e.cellCount = 0, t.mass = 0, t.position.x = 0, t.position.y = 0, t.cellCount = 0, Engine.cells.forEach(function(n) {
  5552.                         e.turnedOn && e.worldID === n.worldID && (e.turnedOn && e.worldID === n.worldID ? (e.position.x += n.animX, e.position.y += n.animY, e.mass += n.mass, e.cellCount++) : t.turnedOn && t.worldID === n.worldID && (t.position.x += n.animX, t.position.y += n.animY, t.mass += n.mass, t.cellCount++))
  5553.                     }), e.mass |= 0, t.mass |= 0;
  5554.                     var n = 0,
  5555.                         i = 0,
  5556.                         o = 0;
  5557.                     e.turnedOn && (e.cellCount > 0 ? (e.position.x /= e.cellCount, e.position.y /= e.cellCount, e.outOfView = !1, i += e.position.x, o += e.position.y, n++) : e.outOfView = !0), t.turnedOn && (t.cellCount > 0 ? (t.position.x /= t.cellCount, t.position.y /= t.cellCount, t.outOfView = !1, i += t.position.x, o += t.position.y, n++) : t.outOfView = !0), n > 0 && (this.center.x = 0 | i / n, this.center.y = 0 | o / n)
  5558.                 }
  5559.             }
  5560.         }, {
  5561.             key: "lockTarget",
  5562.             value: function(e, t, n) {
  5563.                 var i = this;
  5564.                 Camera.freeSpectate || Settings.toggleSpectate();
  5565.                 var o = !1;
  5566.                 if (Engine.cells.forEach(function(n) {
  5567.                         n.isFood || n.isVirus || n.isEjected || i.getDistanceSquare(e, t, n.animX, n.animY) < 199996164 && (o = n)
  5568.                     }), o)
  5569.                     if (o.isUnnamed) Chat.alert("SERVER", LangHandler.current.notif.target_unnamed);
  5570.                     else {
  5571.                         var a = this[1 === n ? "target1" : "target2"];
  5572.                         a.turnedOn = !0, a.nick = o.nick, a.worldID = o.worldID, a.outOfView = !1, SpectateTarget.targetMode()
  5573.                     }
  5574.             }
  5575.         }, {
  5576.             key: "getDistanceSquare",
  5577.             value: function(e, t, n, i) {
  5578.                 var o = n - e,
  5579.                     a = i - t;
  5580.                 return o * o + a * a
  5581.             }
  5582.         }, {
  5583.             key: "reset",
  5584.             value: function() {
  5585.                 this.isTurnedOn || Settings.toggleSpectate(), Camera.freeSpectate ? SpectateTarget.mouseViewport() : SpectateTarget.topViewport(), this.target1.turnedOn = !1, this.target2.turnedOn = !1
  5586.             }
  5587.         }, {
  5588.             key: "getMass",
  5589.             value: function(e) {
  5590.                 return e * e / 100
  5591.             }
  5592.         }, {
  5593.             key: "isTurnedOn",
  5594.             get: function() {
  5595.                 return this.target1.turnedOn || this.target2.turnedOn
  5596.             }
  5597.         }]), e
  5598.     }()
  5599. }, function(e, t, n) {
  5600.     "use strict";
  5601.     var i = r(n(13)),
  5602.         o = r(n(0)),
  5603.         a = r(n(1));
  5604.  
  5605.     function r(e) {
  5606.         return e && e.__esModule ? e : {
  5607.             default: e
  5608.         }
  5609.     }
  5610.     e.exports = function() {
  5611.         function e() {
  5612.             (0, o.default)(this, e)
  5613.         }
  5614.         return (0, a.default)(e, null, [{
  5615.             key: "init",
  5616.             value: function() {
  5617.                 this.left = 0, this.top = 0, this.sectorEdge = 0, this.edge = 0, this.halfSectorEdge = 0, this.letters = ["A", "B", "C", "D", "E"], this.visible = new i.default
  5618.             }
  5619.         }, {
  5620.             key: "render",
  5621.             value: function() {
  5622.                 var e = Menu.bgSectors;
  5623.                 if ("off" !== e) {
  5624.                     var t = Game.ctx,
  5625.                         n = Theming.gridWidth >> 1;
  5626.                     this.edge = gMap.edge - Theming.gridWidth, this.left = gMap.left + n, this.top = gMap.top + n, this.sectorEdge = 0 | this.edge / 5, this.halfSectorEdge = 0 | this.edge / 10, t.lineWidth = Theming.gridWidth, t.strokeStyle = Theming.gridColor, this.sectors(), "onlyLines" !== e && (t.textAlign = "center", t.textBaseline = "middle", t.fillStyle = Theming.gridTextColor, this.updateViewSectors(), "snowflakes" === e ? this.snowflakes() : this.normal())
  5627.                 }
  5628.             }
  5629.         }, {
  5630.             key: "sectors",
  5631.             value: function() {
  5632.                 var e = Game.ctx;
  5633.                 e.beginPath(), e.rect(this.left + this.sectorEdge, this.top, this.sectorEdge, this.edge), e.rect(this.left + 3 * this.sectorEdge, this.top, this.sectorEdge, this.edge), e.rect(this.left, this.top + this.sectorEdge, this.edge, this.sectorEdge), e.rect(this.left, this.top + 3 * this.sectorEdge, this.edge, this.sectorEdge), e.rect(this.left, this.top, this.edge, this.edge), e.closePath(), e.stroke()
  5634.             }
  5635.         }, {
  5636.             key: "updateViewSectors",
  5637.             value: function() {
  5638.                 var e = this.visible;
  5639.                 e.clear();
  5640.                 for (var t = Camera.viewBounds, n = 0 | (t.left - 200 - gMap.left) / this.sectorEdge, i = 0 | (t.top - 200 - gMap.top) / this.sectorEdge, o = 5 - (0 | (gMap.right - t.right - 200) / this.sectorEdge) - n, a = 5 - (0 | (gMap.bottom - t.bottom - 200) / this.sectorEdge) - i, r = 0; r < o; r++)
  5641.                     for (var s = 0; s < a; s++) e.add(this.letters[i + s] + (n + r + 1))
  5642.             }
  5643.         }, {
  5644.             key: "normal",
  5645.             value: function() {
  5646.                 var e = Game.ctx;
  5647.                 e.font = "400 " + Theming.gridTextSize + "px " + Theming.gridTextFont;
  5648.                 for (var t = 0; 5 > t; t++)
  5649.                     for (var n = this.top + this.halfSectorEdge + t * this.sectorEdge, i = 0; 5 > i; i++) {
  5650.                         var o = this.letters[t] + (i + 1);
  5651.                         if (this.visible.has(o)) {
  5652.                             var a = this.left + this.halfSectorEdge + i * this.sectorEdge;
  5653.                             e.fillText(o, a, n)
  5654.                         }
  5655.                     }
  5656.             }
  5657.         }, {
  5658.             key: "snowflakes",
  5659.             value: function() {
  5660.                 var e = Game.ctx;
  5661.                 e.font = "400 " + Theming.gridTextSize + "px FontAwesome";
  5662.                 for (var t = 0; 5 > t; t++)
  5663.                     for (var n = this.top + this.halfSectorEdge + t * this.sectorEdge, i = 0; 5 > i; i++) {
  5664.                         var o = this.letters[t] + (i + 1);
  5665.                         if (this.visible.has(o)) {
  5666.                             var a = this.left + this.halfSectorEdge + i * this.sectorEdge;
  5667.                             e.fillText("ï‹œ", a, n)
  5668.                         }
  5669.                     }
  5670.             }
  5671.         }]), e
  5672.     }()
  5673. }, function(e, t, n) {
  5674.     "use strict";
  5675.     var i = r(n(23)),
  5676.         o = r(n(0)),
  5677.         a = r(n(1));
  5678.  
  5679.     function r(e) {
  5680.         return e && e.__esModule ? e : {
  5681.             default: e
  5682.         }
  5683.     }
  5684.     e.exports = function() {
  5685.         function e() {
  5686.             (0, o.default)(this, e)
  5687.         }
  5688.         return (0, a.default)(e, null, [{
  5689.             key: "init",
  5690.             value: function() {
  5691.                 this._nick = $("#nick").val(), this._skin = Game.getImgurCode($("#skin").val()), this._tag = $("#tag").val(), this._colorObject = {
  5692.                     r: 0,
  5693.                     g: 0,
  5694.                     b: 0
  5695.                 }, this.colorHex = "#000", this._isAlive = !1, this.isRGB = !1, this.x = 0, this.y = 0, this.speed = 0, this.animSpeed = 0, this.mass = 0, this.biggestPieceMass = 0, this.score = 0, this.movementPaused = !1, this.deathLocation = {
  5696.                     x: 100,
  5697.                     y: 100
  5698.                 }
  5699.             }
  5700.         }, {
  5701.             key: "update",
  5702.             value: function() {
  5703.                 this.pieceCount > 0 ? this.playing() : this.dead(), this.updateData()
  5704.             }
  5705.         }, {
  5706.             key: "playing",
  5707.             value: function() {
  5708.                 if (!this.isAlive) {
  5709.                     this.isAlive = !0;
  5710.                     var e = !0,
  5711.                         t = !1,
  5712.                         n = void 0;
  5713.                     try {
  5714.                         for (var o, a = (0, i.default)(Engine.myCells.values()); !(e = (o = a.next()).done); e = !0) {
  5715.                             var r = o.value;
  5716.                             this.colorObject = r.colorObject, this.colorHex = r.colorHex;
  5717.                             break
  5718.                         }
  5719.                     } catch (e) {
  5720.                         t = !0, n = e
  5721.                     } finally {
  5722.                         try {
  5723.                             !e && a.return && a.return()
  5724.                         } finally {
  5725.                             if (t) throw n
  5726.                         }
  5727.                     }
  5728.                 }
  5729.             }
  5730.         }, {
  5731.             key: "updateData",
  5732.             value: function() {
  5733.                 if (this.isAlive) {
  5734.                     var e = 0,
  5735.                         t = 0,
  5736.                         n = 0;
  5737.                     this.mass = 0, this.biggestPieceMass = 0;
  5738.                     var o = !0,
  5739.                         a = !1,
  5740.                         r = void 0;
  5741.                     try {
  5742.                         for (var s, l = (0, i.default)(Engine.myCells.values()); !(o = (s = l.next()).done); o = !0) {
  5743.                             var c = s.value;
  5744.                             e += c.animX / this.pieceCount, t += c.animY / this.pieceCount, n += c.animRadius, this.mass += c.mass, this.biggestPieceMass < c.mass && (this.biggestPieceMass = c.mass)
  5745.                         }
  5746.                     } catch (e) {
  5747.                         a = !0, r = e
  5748.                     } finally {
  5749.                         try {
  5750.                             !o && l.return && l.return()
  5751.                         } finally {
  5752.                             if (a) throw r
  5753.                         }
  5754.                     }
  5755.                     if (!this.movementPaused) {
  5756.                         var u = this.x - e,
  5757.                             d = this.y - t,
  5758.                             h = Math.sqrt(u * u + d * d);
  5759.                         this.speed += h, this.x = e, this.y = t
  5760.                     }
  5761.                     this.score < this.mass && (this.score = this.mass);
  5762.                     var f = Math.pow(Math.min(64 / n, 1), .4),
  5763.                         m = Math.max(window.innerWidth / 1920, window.innerHeight / 1080);
  5764.                     Camera.autoZoomViewport = f * m
  5765.                 }
  5766.             }
  5767.         }, {
  5768.             key: "dead",
  5769.             value: function() {
  5770.                 this.isAlive && (this.isAlive = !1, this.score = 0, this.mass = 0, this.biggestPieceMass = 0, this.movementPaused = !1, this.deathLocation.x = this.x, this.deathLocation.y = this.y, this.isAlive = !1, Servers.init(), HUD.continue())
  5771.             }
  5772.         }, {
  5773.             key: "nick",
  5774.             set: function(e) {
  5775.                 this._nick = e, SocketManager.nick()
  5776.             },
  5777.             get: function() {
  5778.                 return this._nick.substring(0, 15)
  5779.             }
  5780.         }, {
  5781.             key: "skin",
  5782.             set: function(e) {
  5783.                 var t = Game.getImgurCode(e),
  5784.                     n = Game.getRainbowFlag(e);
  5785.                 t ? (this.isRGB !== n && (this.isRGB = n, SocketManager.rgbMode()), this._skin = t, SocketManager.skin()) : Chat.alert("SERVER", LangHandler.current.notif.invalidSkinUrl)
  5786.             },
  5787.             get: function() {
  5788.                 return this._skin
  5789.             }
  5790.         }, {
  5791.             key: "tag",
  5792.             set: function(e) {
  5793.                 this._tag = e
  5794.             },
  5795.             get: function() {
  5796.                 return this._tag
  5797.             }
  5798.         }, {
  5799.             key: "colorObject",
  5800.             set: function(e) {
  5801.                 this._colorObject.r = e.r, this._colorObject.g = e.g, this._colorObject.b = e.b, SocketManager.color()
  5802.             },
  5803.             get: function() {
  5804.                 return this._colorObject
  5805.             }
  5806.         }, {
  5807.             key: "isAlive",
  5808.             set: function(e) {
  5809.                 this._isAlive = e, SocketManager.aliveStatus(e)
  5810.             },
  5811.             get: function() {
  5812.                 return this._isAlive
  5813.             }
  5814.         }, {
  5815.             key: "worldID",
  5816.             get: function() {
  5817.                 return ":party" === HUD.gMode ? this.nick + this.colorHex : this.nick
  5818.             }
  5819.         }, {
  5820.             key: "location",
  5821.             get: function() {
  5822.                 return gMap.getLocation(this.x, this.y)
  5823.             }
  5824.         }, {
  5825.             key: "pieceCount",
  5826.             get: function() {
  5827.                 return Engine.myCells.size
  5828.             }
  5829.         }]), e
  5830.     }()
  5831. }, function(e, t, n) {
  5832.     "use strict";
  5833.     var i = a(n(0)),
  5834.         o = a(n(1));
  5835.  
  5836.     function a(e) {
  5837.         return e && e.__esModule ? e : {
  5838.             default: e
  5839.         }
  5840.     }
  5841.     e.exports = function() {
  5842.         function e() {
  5843.             (0, i.default)(this, e)
  5844.         }
  5845.         return (0, o.default)(e, null, [{
  5846.             key: "init",
  5847.             value: function() {
  5848.                 this.x = 0, this.y = 0, this.targetViewport = 1, this.autoZoomViewport = 1, this.viewport = 1, this.viewBounds = {
  5849.                     left: -960,
  5850.                     right: 960,
  5851.                     top: -540,
  5852.                     bottom: 540
  5853.                 }, this.spectatePoint = {
  5854.                     x: 0,
  5855.                     y: 0
  5856.                 }, this._isSpectating = !1, this._freeSpectate = !1, Targeting.init()
  5857.             }
  5858.         }, {
  5859.             key: "update",
  5860.             value: function() {
  5861.                 this.isSpectating && Targeting.update(), this.move(), this.updateView()
  5862.             }
  5863.         }, {
  5864.             key: "move",
  5865.             value: function() {
  5866.                 Client.isAlive ? (this.x += (Client.x - this.x) / Menu.cameraSpeed, this.y += (Client.y - this.y) / Menu.cameraSpeed) : this.isSpectating && (this.x = (29 * this.x + this.spectatePoint.x) / 30, this.y = (29 * this.y + this.spectatePoint.y) / 30)
  5867.             }
  5868.         }, {
  5869.             key: "updateView",
  5870.             value: function() {
  5871.                 var e = this.targetViewport;
  5872.                 "on" === Menu.autoZoom && (e *= this.autoZoomViewport), this.viewport += (e - this.viewport) / 8;
  5873.                 var t = Game.canvas.width / 2 / this.viewport,
  5874.                     n = Game.canvas.height / 2 / this.viewport;
  5875.                 this.viewBounds.left = Math.max(-t + this.x, gMap.left), this.viewBounds.right = Math.min(t + this.x, gMap.right), this.viewBounds.top = Math.max(-n + this.y, gMap.top), this.viewBounds.bottom = Math.min(n + this.y, gMap.bottom)
  5876.             }
  5877.         }, {
  5878.             key: "isSpectating",
  5879.             get: function() {
  5880.                 return this._isSpectating
  5881.             },
  5882.             set: function(e) {
  5883.                 if (this._isSpectating = e, e) return SpectateTarget.show();
  5884.                 SpectateTarget.hide()
  5885.             }
  5886.         }, {
  5887.             key: "freeSpectate",
  5888.             get: function() {
  5889.                 return this._freeSpectate
  5890.             },
  5891.             set: function(e) {
  5892.                 if (this._freeSpectate = e, e) return SpectateTarget.mouseViewport();
  5893.                 SpectateTarget.topViewport()
  5894.             }
  5895.         }]), e
  5896.     }()
  5897. }, function(e, t, n) {
  5898.     "use strict";
  5899.     var i = function(e) {
  5900.         return e && e.__esModule ? e : {
  5901.             default: e
  5902.         }
  5903.     }(n(0));
  5904.     e.exports = function() {
  5905.         return function e() {
  5906.             (0, i.default)(this, e), this.lastUsedAt = HSLO.time, this.level = [null, null]
  5907.         }
  5908.     }()
  5909. }, function(e, t, n) {
  5910.     "use strict";
  5911.     var i = function(e) {
  5912.         return e && e.__esModule ? e : {
  5913.             default: e
  5914.         }
  5915.     }(n(0));
  5916.     e.exports = function() {
  5917.         return function e() {
  5918.             (0, i.default)(this, e), this.lastUsedAt = HSLO.time, this.timeShift = 0 | Math.random() * Cache.massUpdateInterval, this.lastMass = 0, this.lastScreenRadius = 0, this.lastRenderTime = HSLO.time, this.canvas = null
  5919.         }
  5920.     }()
  5921. }, function(e, t, n) {
  5922.     "use strict";
  5923.     var i = r(n(12)),
  5924.         o = r(n(0)),
  5925.         a = r(n(1));
  5926.  
  5927.     function r(e) {
  5928.         return e && e.__esModule ? e : {
  5929.             default: e
  5930.         }
  5931.     }
  5932.     e.exports = new(function() {
  5933.         function e() {
  5934.             (0, o.default)(this, e), this.nickCaches = new i.default, this.massCaches = new i.default, this.maxCacheLife = 1e3, this.massUpdateInterval = 500, this.nickShadowCtx = this.newShadowContext(), this.massShadowCtx = this.newShadowContext(), this.canvasPool = []
  5935.         }
  5936.         return (0, a.default)(e, [{
  5937.             key: "nick",
  5938.             value: function(e) {
  5939.                 if (e.isUnnamed || this.isSmall(e)) return !1;
  5940.                 var t = this.nickCaches.get(e.nick) || this.newNickCache(e.nick);
  5941.                 t.lastUsedAt = HSLO.time;
  5942.                 var n = 50 > this.getScreenRadius(e.animRadius) ? 0 : 1,
  5943.                     i = t.level[n];
  5944.                 if (i) return i;
  5945.                 var o = this.getNewCanvas(),
  5946.                     a = o.getContext("2d"),
  5947.                     r = 50 * (n + 1) * Theming.cellNickSize / 100;
  5948.                 if (o.height = 0 | 1.2 * r, o.width = 0 | 1.2 * this.getNickWidth(e.nick, r), a.font = "700 " + (0 | r) + "px " + Theming.nickFont, a.textBaseline = "middle", a.textAlign = "center", "normal" === Menu.nickShadow) a.strokeStyle = Theming.nickStrokeColor, a.lineWidth = 6 * (n + 1), a.strokeText(e.nick, o.width >> 1, o.height >> 1);
  5949.                 else if ("performance" === Menu.nickShadow) {
  5950.                     a.fillStyle = Theming.nickStrokeColor, a.globalAlpha = .75;
  5951.                     var s = 0 | o.width / 1.2,
  5952.                         l = 0 | o.height / 1.2;
  5953.                     a.fillRect(o.width - s >> 1, o.height - l >> 1, s, l), a.globalAlpha = 1
  5954.                 }
  5955.                 return a.fillStyle = Theming.nickColor, a.fillText(e.nick, o.width >> 1, o.height >> 1), t.level[n] = o, o
  5956.             }
  5957.         }, {
  5958.             key: "newNickCache",
  5959.             value: function(e) {
  5960.                 var t = new NickCache;
  5961.                 return this.nickCaches.set(e, t), t
  5962.             }
  5963.         }, {
  5964.             key: "getNickWidth",
  5965.             value: function(e, t) {
  5966.                 return this.nickShadowCtx.measureText(e).width * t / 50
  5967.             }
  5968.         }, {
  5969.             key: "setNickCtxFont",
  5970.             value: function() {
  5971.                 this.nickCaches.clear(), this.nickShadowCtx.font = "700 50px " + Theming.nickFont
  5972.             }
  5973.         }, {
  5974.             key: "mass",
  5975.             value: function(e) {
  5976.                 if (!e.isVirus && this.isSmall(e)) return !1;
  5977.                 var t = this.massCaches.get(e.id) || this.newMassCache(e.id),
  5978.                     n = "shortened" === Menu.cellMass && 999 < e.staticMass ? (0 | e.staticMass / 100) / 10 + "k" : e.staticMass,
  5979.                     i = this.getScreenRadius(e.radius),
  5980.                     o = n !== t.lastMass,
  5981.                     a = HSLO.time - t.lastRenderTime > this.massUpdateInterval,
  5982.                     r = 1.2 < i / t.lastScreenRadius || o && a;
  5983.                 if (t.lastUsedAt = HSLO.time, !r && t.canvas) return t.canvas;
  5984.                 t.canvas || (t.canvas = this.getNewCanvas());
  5985.                 var s = t.canvas,
  5986.                     l = s.getContext("2d"),
  5987.                     c = 0 | i / 2 * (Theming.cellMassSize / 100);
  5988.                 if (s.height = 0 | 1.2 * c, s.width = 0 | 1.2 * this.getMassWidth(n, c), l.font = "700 " + c + "px " + Theming.massFont, l.textBaseline = "middle", l.textAlign = "center", "normal" === Menu.massShadow) l.strokeStyle = Theming.massStrokeColor, l.lineWidth = 6 * c / 50, l.strokeText(n, s.width >> 1, s.height >> 1);
  5989.                 else if ("performance" === Menu.massShadow) {
  5990.                     l.fillStyle = Theming.massStrokeColor, l.globalAlpha = .75;
  5991.                     var u = 0 | s.width / 1.2,
  5992.                         d = 0 | s.height / 1.2;
  5993.                     l.fillRect(s.width - u >> 1, s.height - d >> 1, u, d), l.globalAlpha = 1
  5994.                 }
  5995.                 return l.fillStyle = Theming.massColor, l.fillText(n, s.width >> 1, s.height >> 1), t.lastMass = n, t.lastScreenRadius = i, t.lastRenderTime = HSLO.time + t.timeShift, s
  5996.             }
  5997.         }, {
  5998.             key: "newMassCache",
  5999.             value: function(e) {
  6000.                 var t = new MassCache;
  6001.                 return this.massCaches.set(e, t), t
  6002.             }
  6003.         }, {
  6004.             key: "getMassWidth",
  6005.             value: function(e, t) {
  6006.                 return this.massShadowCtx.measureText(e).width * t / 50
  6007.             }
  6008.         }, {
  6009.             key: "setMassCtxFont",
  6010.             value: function() {
  6011.                 this.massCaches.clear(), this.massShadowCtx.font = "700 50px " + Theming.massFont
  6012.             }
  6013.         }, {
  6014.             key: "getScreenRadius",
  6015.             value: function(e) {
  6016.                 return e * Camera.viewport
  6017.             }
  6018.         }, {
  6019.             key: "isSmall",
  6020.             value: function(e) {
  6021.                 return "on" === Menu.autoHideText && 20 > this.getScreenRadius(e.animRadius)
  6022.             }
  6023.         }, {
  6024.             key: "getNewCanvas",
  6025.             value: function() {
  6026.                 return this.canvasPool.shift() || document.createElement("canvas")
  6027.             }
  6028.         }, {
  6029.             key: "newShadowContext",
  6030.             value: function() {
  6031.                 var e = document.createElement("canvas").getContext("2d");
  6032.                 return e.font = "700 50px ubuntu", e
  6033.             }
  6034.         }, {
  6035.             key: "cleaner",
  6036.             value: function() {
  6037.                 var e = this;
  6038.                 this.nickCaches.forEach(function(t, n) {
  6039.                     if (HSLO.time - t.lastUsedAt > e.maxCacheLife) {
  6040.                         if (e.nickCaches.delete(n), 50 <= e.canvasPool.length) return;
  6041.                         var i = t.level[0],
  6042.                             o = t.level[1];
  6043.                         i && (e.resetCanvas(i), e.canvasPool.push(i)), o && (e.resetCanvas(o), e.canvasPool.push(o))
  6044.                     }
  6045.                 }), this.massCaches.forEach(function(t, n) {
  6046.                     if (HSLO.time - t.lastUsedAt > e.maxCacheLife) {
  6047.                         if (e.massCaches.delete(n), 50 <= e.canvasPool.length) return;
  6048.                         var i = t.canvas;
  6049.                         i && (e.resetCanvas(i), e.canvasPool.push(i))
  6050.                     }
  6051.                 })
  6052.             }
  6053.         }, {
  6054.             key: "resetCanvas",
  6055.             value: function(e) {
  6056.                 e.width = 0
  6057.             }
  6058.         }]), e
  6059.     }())
  6060. }, function(e, t, n) {
  6061.     var i = n(9),
  6062.         o = n(31);
  6063.     e.exports = n(2).getIterator = function(e) {
  6064.         var t = o(e);
  6065.         if ("function" != typeof t) throw TypeError(e + " is not iterable!");
  6066.         return i(t.call(e))
  6067.     }
  6068. }, function(e, t, n) {
  6069.     n(24), n(21), e.exports = n(113)
  6070. }, function(e, t, n) {
  6071.     "use strict";
  6072.     var i = n(7),
  6073.         o = n(38);
  6074.     e.exports = function(e, t, n) {
  6075.         t in e ? i.f(e, t, o(0, n)) : e[t] = n
  6076.     }
  6077. }, function(e, t, n) {
  6078.     "use strict";
  6079.     var i = n(10),
  6080.         o = n(5),
  6081.         a = n(34),
  6082.         r = n(60),
  6083.         s = n(59),
  6084.         l = n(26),
  6085.         c = n(115),
  6086.         u = n(31);
  6087.     o(o.S + o.F * !n(53)(function(e) {
  6088.         Array.from(e)
  6089.     }), "Array", {
  6090.         from: function(e) {
  6091.             var t, n, o, d, h = a(e),
  6092.                 f = "function" == typeof this ? this : Array,
  6093.                 m = arguments.length,
  6094.                 g = m > 1 ? arguments[1] : void 0,
  6095.                 p = void 0 !== g,
  6096.                 v = 0,
  6097.                 y = u(h);
  6098.             if (p && (g = i(g, m > 2 ? arguments[2] : void 0, 2)), void 0 == y || f == Array && s(y))
  6099.                 for (n = new f(t = l(h.length)); t > v; v++) c(n, v, p ? g(h[v], v) : h[v]);
  6100.             else
  6101.                 for (d = y.call(h), n = new f; !(o = d.next()).done; v++) c(n, v, p ? r(d, g, [o.value, v], !0) : o.value);
  6102.             return n.length = v, n
  6103.         }
  6104.     })
  6105. }, function(e, t, n) {
  6106.     n(21), n(116), e.exports = n(2).Array.from
  6107. }, function(e, t, n) {
  6108.     e.exports = {
  6109.         default: n(117),
  6110.         __esModule: !0
  6111.     }
  6112. }, function(e, t, n) {
  6113.     "use strict";
  6114.     var i = c(n(118)),
  6115.         o = c(n(23)),
  6116.         a = c(n(13)),
  6117.         r = c(n(12)),
  6118.         s = c(n(0)),
  6119.         l = c(n(1));
  6120.  
  6121.     function c(e) {
  6122.         return e && e.__esModule ? e : {
  6123.             default: e
  6124.         }
  6125.     }
  6126.     e.exports = function() {
  6127.         function e() {
  6128.             (0, s.default)(this, e)
  6129.         }
  6130.         return (0, l.default)(e, null, [{
  6131.             key: "init",
  6132.             value: function() {
  6133.                 var e = this;
  6134.                 this.canvas = document.getElementById("canvas"), this.ctx = this.canvas.getContext("2d"), this.pi2 = 2 * Math.PI, this.skinMap = new r.default, this.downloadedSkins = new r.default, this.commanderPoints = new a.default, this.rgbTeammates = new a.default, this.indicator = this.cacheIndicator(), Sectors.init(), RGB.init(), this.resizeCanvas(), window.onresize = function() {
  6135.                     e.resizeCanvas()
  6136.                 }
  6137.             }
  6138.         }, {
  6139.             key: "resizeCanvas",
  6140.             value: function() {
  6141.                 this.canvas.width = 0 | window.innerWidth, this.canvas.height = 0 | window.innerHeight
  6142.             }
  6143.         }, {
  6144.             key: "run",
  6145.             value: function() {
  6146.                 this.ctx.clearRect(0, 0, this.canvas.width, this.canvas.height), this.ctx.save(), this.vanillaGrid();
  6147.                 var e = (this.canvas.width >> 1) / Camera.viewport - Camera.x,
  6148.                     t = (this.canvas.height >> 1) / Camera.viewport - Camera.y;
  6149.                 this.ctx.scale(Camera.viewport, Camera.viewport), this.ctx.translate(e, t), RGB.update(), Sectors.render(), this.border(), Food.render(), Virus.render(), this.createSkinMap(), this.createRGBset(), this.mouseTracker(), this.SplitRings(), STE.render(), this.cells(), this.commands(), Cache.cleaner(), this.ctx.restore()
  6150.             }
  6151.         }, {
  6152.             key: "vanillaGrid",
  6153.             value: function() {
  6154.                 if ("off" !== Menu.vanillaGrid) {
  6155.                     var e = this.ctx,
  6156.                         t = Camera.viewport,
  6157.                         n = this.canvas.width / t,
  6158.                         i = this.canvas.height / t,
  6159.                         o = (-Camera.x + n / 2) % 50,
  6160.                         a = (-Camera.y + i / 2) % 50;
  6161.                     for (e.strokeStyle = Theming.gridColor, e.lineWidth = 0 | Math.min(Theming.gridWidth, 20) * Camera.viewport, e.globalAlpha = .2 * t, e.beginPath(); o < n;) e.moveTo(o * t, 0), e.lineTo(o * t, i * t), o += 50;
  6162.                     for (; a < i;) e.moveTo(0, a * t), e.lineTo(n * t, a * t), a += 50;
  6163.                     e.closePath(), e.stroke(), e.globalAlpha = 1
  6164.                 }
  6165.             }
  6166.         }, {
  6167.             key: "border",
  6168.             value: function() {
  6169.                 var e = this.ctx,
  6170.                     t = Theming.borderWidth >> 1;
  6171.                 e.strokeStyle = Theming.borderColor, e.lineWidth = Theming.borderWidth, e.strokeRect(gMap.left - t, gMap.top - t, gMap.edge + Theming.borderWidth, gMap.edge + Theming.borderWidth)
  6172.             }
  6173.         }, {
  6174.             key: "cells",
  6175.             value: function() {
  6176.                 var e = this.ctx,
  6177.                     t = "off" !== Menu.cellMass,
  6178.                     n = "off" !== Menu.cellNick,
  6179.                     i = "on" === Menu.hideOwnNick,
  6180.                     a = "on" === Menu.hideOwnMass,
  6181.                     r = (Menu.urlSkins, Menu.cellzSkins, Theming.skinBorder / 100),
  6182.                     s = "on" === Menu.teamIndicator,
  6183.                     l = Theming.indicatorSize,
  6184.                     c = Theming.cellTransparency / 100,
  6185.                     u = Theming.cellNickSize / 100,
  6186.                     d = Theming.cellMassSize / 100,
  6187.                     h = Menu.cellTextAnimation,
  6188.                     f = Theming.lightenCellColor / 100,
  6189.                     m = !0,
  6190.                     g = !1,
  6191.                     p = void 0;
  6192.                 try {
  6193.                     for (var v, y = (0, o.default)(Engine.sortedCells); !(m = (v = y.next()).done); m = !0) {
  6194.                         var k = v.value,
  6195.                             S = !k.isVirus && !k.isEjected && this.skinMap.has(k.worldID),
  6196.                             C = 1;
  6197.                         if (C = k.fadeStartTime ? Math.max(1 - (HSLO.time - k.fadeStartTime) / Menu.CellAnimation, .01) : 1, k.animate(), e.beginPath(), e.arc(k.animX, k.animY, k.animRadius, 0, this.pi2, !0), e.closePath(), k.isMine && k.activeStroke && (e.lineWidth = .14 * k.animRadius, e.strokeStyle = "rgba(255, 0, 255, .8)", e.stroke()), k.isVirus) e.fillStyle = Theming.virusColor, e.strokeStyle = Theming.virusBorderColor, e.lineWidth = Theming.virusBorderWidth, e.globalAlpha = .7, e.fill(), e.globalAlpha = 1, e.stroke();
  6198.                         else {
  6199.                             var w = 1 > f ? RGB.getColor(k.colorObject, f) : k.colorHex;
  6200.                             S && this.rgbTeammates.has(k.worldID) ? e.fillStyle = RGB.color : e.fillStyle = w, 1 > c * C ? (e.globalAlpha = c * C, e.fill(), e.globalAlpha = 1) : e.fill()
  6201.                         }
  6202.                         if (!k.isEjected) {
  6203.                             if (!k.isVirus) {
  6204.                                 s && !k.isMine && S && e.drawImage(this.indicator, k.animX - l / 2, k.animY - k.animRadius - 10 - l, l, l);
  6205.                                 var b = this.getCustomSkin(k.worldID),
  6206.                                     x = k.animRadius * r;
  6207.                                 if (b && e.drawImage(b, k.animX - x, k.animY - x, 2 * x, 2 * x), 1 === C && (k.isMine && !i || !k.isMine && n)) {
  6208.                                     var M = Cache.nick(k);
  6209.                                     if (M) {
  6210.                                         var _ = k.radius;
  6211.                                         switch (h) {
  6212.                                             case "on":
  6213.                                                 _ = k.animRadius;
  6214.                                                 break;
  6215.                                             case "stepped":
  6216.                                                 _ = 50 + 75 * (0 | k.animRadius / 75)
  6217.                                         }
  6218.                                         var T = _ / 3 / M.height * u,
  6219.                                             L = M.width * T,
  6220.                                             P = M.height * T,
  6221.                                             K = k.animX - (L >> 1),
  6222.                                             $ = k.animY - (P >> 1);
  6223.                                         e.drawImage(M, K, $, L, P)
  6224.                                     }
  6225.                                 }
  6226.                             }
  6227.                             if (1 === C && (k.isMine && !a || !k.isMine && t)) {
  6228.                                 var O = Cache.mass(k);
  6229.                                 if (O) {
  6230.                                     var I = k.radius;
  6231.                                     "on" === h ? I = k.animRadius : "stepped" === h && (I = 50 + 75 * (0 | k.animRadius / 75));
  6232.                                     var A = I / 3 / O.height * d,
  6233.                                         E = O.width * A,
  6234.                                         z = O.height * A,
  6235.                                         R = k.animX - (E >> 1),
  6236.                                         F = k.animY + (k.isUnnamed || k.isMine && i || !k.isMine && !n ? -z >> 1 : z >> 2);
  6237.                                     e.drawImage(O, R, F, E, z)
  6238.                                 }
  6239.                             }
  6240.                         }
  6241.                     }
  6242.                 } catch (e) {
  6243.                     g = !0, p = e
  6244.                 } finally {
  6245.                     try {
  6246.                         !m && y.return && y.return()
  6247.                     } finally {
  6248.                         if (g) throw p
  6249.                     }
  6250.                 }
  6251.             }
  6252.         }, {
  6253.             key: "createSkinMap",
  6254.             value: function() {
  6255.                 var e = this;
  6256.                 this.skinMap.clear(), "XXXXXXX" !== Client.skin && Engine.myCells.forEach(function(t) {
  6257.                     e.skinMap.set(t.worldID, e.code2Url(Client.skin))
  6258.                 });
  6259.                 var t = !0,
  6260.                     n = !1,
  6261.                     a = void 0;
  6262.                 try {
  6263.                     for (var r, s = (0, o.default)((0, i.default)(Engine.pidSkin)); !(t = (r = s.next()).done); t = !0) {
  6264.                         var l = r.value;
  6265.                         this.skinMap.set(l[0], l[1])
  6266.                     }
  6267.                 } catch (e) {
  6268.                     n = !0, a = e
  6269.                 } finally {
  6270.                     try {
  6271.                         !t && s.return && s.return()
  6272.                     } finally {
  6273.                         if (n) throw a
  6274.                     }
  6275.                 }
  6276.                 var c = !0,
  6277.                     u = !1,
  6278.                     d = void 0;
  6279.                 try {
  6280.                     for (var h, f = (0, o.default)(TeamPlayers.teamPlayers.values()); !(c = (h = f.next()).done); c = !0) {
  6281.                         var m = h.value;
  6282.                         m.isAlive && "XXXXXXX" !== m.skin && this.skinMap.set(m.worldID, this.code2Url(m.skin))
  6283.                     }
  6284.                 } catch (e) {
  6285.                     u = !0, d = e
  6286.                 } finally {
  6287.                     try {
  6288.                         !c && f.return && f.return()
  6289.                     } finally {
  6290.                         if (u) throw d
  6291.                     }
  6292.                 }
  6293.             }
  6294.         }, {
  6295.             key: "createRGBset",
  6296.             value: function() {
  6297.                 this.rgbTeammates.clear(), Client.isRGB && this.rgbTeammates.add(Client.worldID);
  6298.                 var e = !0,
  6299.                     t = !1,
  6300.                     n = void 0;
  6301.                 try {
  6302.                     for (var i, a = (0, o.default)(TeamPlayers.teamPlayers.values()); !(e = (i = a.next()).done); e = !0) {
  6303.                         var r = i.value;
  6304.                         r.isAlive && r.isRGB && this.rgbTeammates.add(r.worldID)
  6305.                     }
  6306.                 } catch (e) {
  6307.                     t = !0, n = e
  6308.                 } finally {
  6309.                     try {
  6310.                         !e && a.return && a.return()
  6311.                     } finally {
  6312.                         if (t) throw n
  6313.                     }
  6314.                 }
  6315.             }
  6316.         }, {
  6317.             key: "getCustomSkin",
  6318.             value: function(e) {
  6319.                 var t = this.skinMap.get(e),
  6320.                     n = null;
  6321.                 return t && void 0 === (n = this.downloadedSkins.get(t)) ? (this.downloadSkin(t), !1) : n
  6322.             }
  6323.         }, {
  6324.             key: "downloadSkin",
  6325.             value: function(e) {
  6326.                 var t = this;
  6327.                 this.downloadedSkins.set(e, !1);
  6328.                 var n = new Image;
  6329.                 n.crossOrigin = "anonymous", n.onload = function() {
  6330.                     var i = document.createElement("canvas"),
  6331.                         o = i.getContext("2d");
  6332.                     i.width = 512, i.height = 512, o.beginPath(), o.arc(256, 256, 256, 0, t.pi2, !0), o.closePath(), o.clip(), o.drawImage(n, 0, 0, 512, 512), n.onload = null, n.src = i.toDataURL(), t.downloadedSkins.set(e, n)
  6333.                 }, n.src = e
  6334.             }
  6335.         }, {
  6336.             key: "getImgurCode",
  6337.             value: function(e) {
  6338.                 var t = e.match(/https?:\/\/i\.imgur\.com\/([\w0-9]{7})\.(png|jpg|gif)/i);
  6339.                 return null === t ? "XXXXXXX" : t[1]
  6340.             }
  6341.         }, {
  6342.             key: "getRainbowFlag",
  6343.             value: function(e) {
  6344.                 return null !== e.match(/#hue\s??=\s??auto\s??,\s??blend\s??=\s??auto/i)
  6345.             }
  6346.         }, {
  6347.             key: "code2Url",
  6348.             value: function(e) {
  6349.                 return "http://i.imgur.com/" + e + ".png"
  6350.             }
  6351.         }, {
  6352.             key: "commands",
  6353.             value: function() {
  6354.                 var e = this.ctx,
  6355.                     t = "off" === Menu.commander;
  6356.                 e.strokeStyle = "#ffffff", e.lineWidth = 5;
  6357.                 var n = !0,
  6358.                     i = !1,
  6359.                     a = void 0;
  6360.                 try {
  6361.                     for (var r, s = (0, o.default)(this.commanderPoints.values()); !(n = (r = s.next()).done); n = !0) {
  6362.                         var l = r.value,
  6363.                             c = l.x,
  6364.                             u = l.y,
  6365.                             d = HSLO.time - l.time;
  6366.                         if (d > 1250) this.commanderPoints.delete(l);
  6367.                         else if (!(t || 1 > d)) {
  6368.                             var h = 1e3 * d / 1250;
  6369.                             e.globalAlpha = h > 333 ? (1e3 - h) / 667 : 1;
  6370.                             var f = e.createRadialGradient(c, u, .7 * h, c, u, h);
  6371.                             f.addColorStop(0, "rgba(0,0,0,0)"), f.addColorStop(1, Theming.commanderColor), e.fillStyle = f, e.beginPath(), e.arc(c, u, h, 0, this.pi2, !0), e.closePath(), e.fill(), e.stroke()
  6372.                         }
  6373.                     }
  6374.                 } catch (e) {
  6375.                     i = !0, a = e
  6376.                 } finally {
  6377.                     try {
  6378.                         !n && s.return && s.return()
  6379.                     } finally {
  6380.                         if (i) throw a
  6381.                     }
  6382.                 }
  6383.             }
  6384.         }, {
  6385.             key: "mouseTracker",
  6386.             value: function() {
  6387.                 if ("off" !== Menu.cursorLine) {
  6388.                     var e = this.ctx;
  6389.                     e.strokeStyle = "#fff", e.lineWidth = 4, e.lineCap = "round", e.lineJoin = "round";
  6390.                     var t = (Listener.x - this.canvas.width / 2) / Camera.viewport + Camera.x,
  6391.                         n = (Listener.y - this.canvas.height / 2) / Camera.viewport + Camera.y;
  6392.                     e.beginPath();
  6393.                     var i = !0,
  6394.                         a = !1,
  6395.                         r = void 0;
  6396.                     try {
  6397.                         for (var s, l = (0, o.default)(Engine.myCells.values()); !(i = (s = l.next()).done); i = !0) {
  6398.                             var c = s.value;
  6399.                             c.activeStroke && (e.moveTo(c.animX, c.animY), e.lineTo(t, n))
  6400.                         }
  6401.                     } catch (e) {
  6402.                         a = !0, r = e
  6403.                     } finally {
  6404.                         try {
  6405.                             !i && l.return && l.return()
  6406.                         } finally {
  6407.                             if (a) throw r
  6408.                         }
  6409.                     }
  6410.                     e.closePath(), e.stroke()
  6411.                 }
  6412.             }
  6413.         }, {
  6414.             key: "SplitRings",
  6415.             value: function() {
  6416.                 var e = this;
  6417.                 if ("off" !== Menu.splitRings) {
  6418.                     var t = this.ctx;
  6419.                     t.lineWidth = 3, t.strokeStyle = "#656565", t.beginPath(), Engine.myCells.forEach(function(n) {
  6420.                         60 < n.radius && (t.moveTo(n.animX + 800, n.animY), t.arc(n.animX, n.animY, 800, 0, e.pi2, !0))
  6421.                     }), t.closePath(), t.stroke()
  6422.                 }
  6423.             }
  6424.         }, {
  6425.             key: "cacheIndicator",
  6426.             value: function() {
  6427.                 var e = document.createElement("canvas");
  6428.                 e.width = 150, e.height = 150;
  6429.                 var t = e.getContext("2d");
  6430.                 return t.textAlign = "center", t.textBaseline = "middle", t.font = "600 150px FontAwesome", t.fillStyle = "rgba(255,255,255,1)", t.fillText("", 75, 75), e
  6431.             }
  6432.         }]), e
  6433.     }()
  6434. }, function(e, t, n) {
  6435.     "use strict";
  6436.     var i = a(n(0)),
  6437.         o = a(n(1));
  6438.  
  6439.     function a(e) {
  6440.         return e && e.__esModule ? e : {
  6441.             default: e
  6442.         }
  6443.     }
  6444.     e.exports = function() {
  6445.         function e(t) {
  6446.             var n = this;
  6447.             (0, i.default)(this, e), this.event = t, this.maxFps = 30, this.lastFrameTime = 0, window.requestAnimationFrame(function(e) {
  6448.                 n.run(e)
  6449.             })
  6450.         }
  6451.         return (0, o.default)(e, [{
  6452.             key: "run",
  6453.             value: function(e) {
  6454.                 var t = this;
  6455.                 window.requestAnimationFrame(function(e) {
  6456.                     t.run(e)
  6457.                 }), this.updateRafTime(e), this.event()
  6458.             }
  6459.         }, {
  6460.             key: "updateRafTime",
  6461.             value: function(e) {
  6462.                 var t = e - this.lastFrameTime;
  6463.                 this.lastFrameTime = e, .05 > Math.abs(1e3 / 30 - t) ? this.maxFps = 30 : .05 > Math.abs(1e3 / 60 - t) ? this.maxFps = 60 : .05 > Math.abs(1e3 / 75 - t) ? this.maxFps = 75 : .05 > Math.abs(10 - t) ? this.maxFps = 100 : .05 > Math.abs(1e3 / 120 - t) ? this.maxFps = 120 : .05 > Math.abs(1e3 / 144 - t) && (this.maxFps = 144)
  6464.             }
  6465.         }, {
  6466.             key: "rafLoopTime",
  6467.             get: function() {
  6468.                 return 1e3 / this.maxFps
  6469.             }
  6470.         }]), e
  6471.     }()
  6472. }, function(e, t, n) {
  6473.     "use strict";
  6474.     var i = a(n(0)),
  6475.         o = a(n(1));
  6476.  
  6477.     function a(e) {
  6478.         return e && e.__esModule ? e : {
  6479.             default: e
  6480.         }
  6481.     }
  6482.     e.exports = function() {
  6483.         function e() {
  6484.             (0, i.default)(this, e)
  6485.         }
  6486.         return (0, o.default)(e, null, [{
  6487.             key: "init",
  6488.             value: function() {
  6489.                 console.log("Sounds not loaded.")
  6490.             }
  6491.         }]), e
  6492.     }()
  6493. }, function(e, t, n) {
  6494.     n(47)("Map")
  6495. }, function(e, t, n) {
  6496.     n(48)("Map")
  6497. }, function(e, t, n) {
  6498.     var i = n(5);
  6499.     i(i.P + i.R, "Map", {
  6500.         toJSON: n(49)("Map")
  6501.     })
  6502. }, function(e, t, n) {
  6503.     "use strict";
  6504.     var i = n(52),
  6505.         o = n(28);
  6506.     e.exports = n(50)("Map", function(e) {
  6507.         return function() {
  6508.             return e(this, arguments.length > 0 ? arguments[0] : void 0)
  6509.         }
  6510.     }, {
  6511.         get: function(e) {
  6512.             var t = i.getEntry(o(this, "Map"), e);
  6513.             return t && t.v
  6514.         },
  6515.         set: function(e, t) {
  6516.             return i.def(o(this, "Map"), 0 === e ? 0 : e, t)
  6517.         }
  6518.     }, i, !0)
  6519. }, function(e, t, n) {
  6520.     n(44), n(21), n(24), n(125), n(124), n(123), n(122), e.exports = n(2).Map
  6521. }, function(e, t, n) {
  6522.     n(47)("Set")
  6523. }, function(e, t, n) {
  6524.     n(48)("Set")
  6525. }, function(e, t, n) {
  6526.     var i = n(16);
  6527.     e.exports = function(e, t) {
  6528.         var n = [];
  6529.         return i(e, !1, n.push, n, t), n
  6530.     }
  6531. }, function(e, t, n) {
  6532.     var i = n(5);
  6533.     i(i.P + i.R, "Set", {
  6534.         toJSON: n(49)("Set")
  6535.     })
  6536. }, function(e, t, n) {
  6537.     var i = n(17);
  6538.     e.exports = Array.isArray || function(e) {
  6539.         return "Array" == i(e)
  6540.     }
  6541. }, function(e, t, n) {
  6542.     var i = n(6),
  6543.         o = n(131),
  6544.         a = n(4)("species");
  6545.     e.exports = function(e) {
  6546.         var t;
  6547.         return o(e) && ("function" != typeof(t = e.constructor) || t !== Array && !o(t.prototype) || (t = void 0), i(t) && null === (t = t[a]) && (t = void 0)), void 0 === t ? Array : t
  6548.     }
  6549. }, function(e, t, n) {
  6550.     var i = n(132);
  6551.     e.exports = function(e, t) {
  6552.         return new(i(e))(t)
  6553.     }
  6554. }, function(e, t, n) {
  6555.     var i = n(10),
  6556.         o = n(65),
  6557.         a = n(34),
  6558.         r = n(26),
  6559.         s = n(133);
  6560.     e.exports = function(e, t) {
  6561.         var n = 1 == e,
  6562.             l = 2 == e,
  6563.             c = 3 == e,
  6564.             u = 4 == e,
  6565.             d = 6 == e,
  6566.             h = 5 == e || d,
  6567.             f = t || s;
  6568.         return function(t, s, m) {
  6569.             for (var g, p, v = a(t), y = o(v), k = i(s, m, 3), S = r(y.length), C = 0, w = n ? f(t, S) : l ? f(t, 0) : void 0; S > C; C++)
  6570.                 if ((h || C in y) && (p = k(g = y[C], C, v), e))
  6571.                     if (n) w[C] = p;
  6572.                     else if (p) switch (e) {
  6573.                 case 3:
  6574.                     return !0;
  6575.                 case 5:
  6576.                     return g;
  6577.                 case 6:
  6578.                     return C;
  6579.                 case 2:
  6580.                     w.push(g)
  6581.             } else if (u) return !1;
  6582.             return d ? -1 : c || u ? u : w
  6583.         }
  6584.     }
  6585. }, function(e, t, n) {
  6586.     "use strict";
  6587.     var i = n(52),
  6588.         o = n(28);
  6589.     e.exports = n(50)("Set", function(e) {
  6590.         return function() {
  6591.             return e(this, arguments.length > 0 ? arguments[0] : void 0)
  6592.         }
  6593.     }, {
  6594.         add: function(e) {
  6595.             return i.def(o(this, "Set"), e = 0 === e ? 0 : e, e)
  6596.         }
  6597.     }, i)
  6598. }, function(e, t, n) {
  6599.     n(44), n(21), n(24), n(135), n(130), n(128), n(127), e.exports = n(2).Set
  6600. }, function(e, t, n) {
  6601.     "use strict";
  6602.     var i = s(n(13)),
  6603.         o = s(n(12)),
  6604.         a = s(n(0)),
  6605.         r = s(n(1));
  6606.  
  6607.     function s(e) {
  6608.         return e && e.__esModule ? e : {
  6609.             default: e
  6610.         }
  6611.     }
  6612.     e.exports = function() {
  6613.         function e() {
  6614.             (0, a.default)(this, e)
  6615.         }
  6616.         return (0, r.default)(e, null, [{
  6617.             key: "init",
  6618.             value: function() {
  6619.                 this.cells = new o.default, this.myCellsIDs = new i.default, this.myCells = new o.default, this.eatenCellIds = new i.default, this.sortedCells = [], this.food = [], this.myPIDs = new i.default, this.pidSkin = new o.default, STE.init(), Virus.init()
  6620.             }
  6621.         }, {
  6622.             key: "update",
  6623.             value: function() {
  6624.                 var e = this,
  6625.                     t = "on" === Menu.opponentRings && Client.isAlive,
  6626.                     n = "on" === Menu.virusRange && Client.isAlive;
  6627.                 this.food = [], this.sortedCells = [], STE.reset(), Virus.reset(), this.cells.forEach(function(i, o) {
  6628.                     if (i.fadeStartTime && 1 < (HSLO.time - i.fadeStartTime) / Menu.CellAnimation) return void e.cells.delete(o);
  6629.                     i.animate(), e.isInView(i) && (i.isFood ? e.food.push(i) : (e.sortedCells.push(i), t && !i.isVirus && STE.segregator(i), n && i.isVirus && Virus.add(i)))
  6630.                 }), this.sortedCells.sort(function(e, t) {
  6631.                     var n = e.animRadius,
  6632.                         i = t.animRadius;
  6633.                     return n === i ? t.id - e.id : n - i
  6634.                 })
  6635.             }
  6636.         }, {
  6637.             key: "getCell",
  6638.             value: function(e) {
  6639.                 return this.cells.get(e) || this.addCell(e)
  6640.             }
  6641.         }, {
  6642.             key: "addCell",
  6643.             value: function(e) {
  6644.                 var t = new Player(e);
  6645.                 return this.cells.set(e, t), this.myCellCheck(e, t), t
  6646.             }
  6647.         }, {
  6648.             key: "myCellCheck",
  6649.             value: function(e, t) {
  6650.                 this.myCellsIDs.has(e) && (this.myCells.set(e, t), this.myCellsIDs.delete(e), t.isMine = !0, t.nick = Client.nick)
  6651.             }
  6652.         }, {
  6653.             key: "eatCell",
  6654.             value: function(e, t) {
  6655.                 try {
  6656.                     if ("on" === Menu.eatAnimation) {
  6657.                         var n = this.cells.get(t),
  6658.                             i = this.cells.get(e);
  6659.                         n && i && (n.animate(), n.x = i.x, n.y = i.y, n.radius = n.animRadius, n.fadeStartTime = HSLO.time, n.lastUpdateTime = HSLO.time, n.isMine && this.myCells.delete(t), this.cells.delete(t), this.eatenCellIds.add(t), n.isFood || this.cells.set(t + ":removed", n))
  6660.                     }
  6661.                 } catch (e) {}
  6662.             }
  6663.         }, {
  6664.             key: "removeCell",
  6665.             value: function(e) {
  6666.                 try {
  6667.                     if (!this.eatenCellIds.delete(e)) {
  6668.                         var t = this.cells.get(e);
  6669.                         t.isMine && this.myCells.delete(e), this.cells.delete(e), t.isFood || "on" !== Menu.eatAnimation || (t.animate(), t.fadeStartTime = HSLO.time, t.lastUpdateTime = HSLO.time, this.cells.set(e + ":removed", t))
  6670.                     }
  6671.                 } catch (e) {}
  6672.             }
  6673.         }, {
  6674.             key: "isInView",
  6675.             value: function(e) {
  6676.                 var t = Camera.viewBounds;
  6677.                 return !(e.animX + e.animRadius < t.left || e.animX - e.animRadius > t.right || e.animY + e.animRadius < t.top || e.animY - e.animRadius > t.bottom)
  6678.             }
  6679.         }]), e
  6680.     }()
  6681. }, function(e, t, n) {
  6682.     "use strict";
  6683.     var i = a(n(0)),
  6684.         o = a(n(1));
  6685.  
  6686.     function a(e) {
  6687.         return e && e.__esModule ? e : {
  6688.             default: e
  6689.         }
  6690.     }
  6691.     e.exports = function() {
  6692.         function e() {
  6693.             (0, i.default)(this, e)
  6694.         }
  6695.         return (0, o.default)(e, null, [{
  6696.             key: "init",
  6697.             value: function() {
  6698.                 this.left = -7071, this.top = -7071, this.right = 7071, this.bottom = 7071, this.edge = 14142, this.offset = {
  6699.                     x: 0,
  6700.                     y: 0
  6701.                 }, this.center = {
  6702.                     x: 0,
  6703.                     y: 0
  6704.                 }, this.focusedAtCenter = !1
  6705.             }
  6706.         }, {
  6707.             key: "update",
  6708.             value: function(e, t, n, i) {
  6709.                 this.left = e, this.top = t, this.right = n, this.bottom = i, this.edge = i - t
  6710.             }
  6711.         }, {
  6712.             key: "getLocation",
  6713.             value: function(e, t) {
  6714.                 var n = 0 | (e - this.left) / 2828,
  6715.                     i = 0 | (t - this.top) / 2828;
  6716.                 return n = 0 > n ? 0 : 4 < n ? 4 : n, i = 0 > i ? 0 : 4 < i ? 4 : i, String.fromCharCode(65 + i) + (n + 1)
  6717.             }
  6718.         }]), e
  6719.     }()
  6720. }, function(e, t, n) {
  6721.     "use strict";
  6722.     var i = a(n(0)),
  6723.         o = a(n(1));
  6724.  
  6725.     function a(e) {
  6726.         return e && e.__esModule ? e : {
  6727.             default: e
  6728.         }
  6729.     }
  6730.     e.exports = function() {
  6731.         function e() {
  6732.             (0, i.default)(this, e)
  6733.         }
  6734.         return (0, o.default)(e, null, [{
  6735.             key: "parse",
  6736.             value: function(e) {
  6737.                 var t = new DataView(e.data),
  6738.                     n = new Reader(t);
  6739.                 switch (n.readUInt8()) {
  6740.                     case 1:
  6741.                         this.update(n);
  6742.                         break;
  6743.                     case 2:
  6744.                         this.chat(n);
  6745.                         break;
  6746.                     case 3:
  6747.                         this.commander(n);
  6748.                         break;
  6749.                     case 4:
  6750.                         this.selfID(n);
  6751.                         break;
  6752.                     case 5:
  6753.                         this.prePlayers(n)
  6754.                 }
  6755.             }
  6756.         }, {
  6757.             key: "update",
  6758.             value: function(e, t) {
  6759.                 Client.isAlive || !Camera.isSpectating || Camera.freeSpectate || SocketManager.biggest();
  6760.                 var n = TeamPlayers.teamAlternator ? 1 : 2,
  6761.                     i = TeamPlayers.teamData[n];
  6762.                 if (i.totalMass = 0, i.alive = 0, i.spectate = 0, 128 & t && TeamPlayers.remove(e.id), e.id != TeamPlayers.selfID) {
  6763.                     var o = e.id,
  6764.                         a = TeamPlayers.getPlayer(o);
  6765.                     if (1 & t) {
  6766.                         var r = e.nick;
  6767.                         2 === a.isNew ? a.isNew = 3 : a.isNew, a.nick = r
  6768.                     }
  6769.                     if (2 & t) {
  6770.                         var s = e.colors.red,
  6771.                             l = e.colors.green,
  6772.                             c = e.colors.blue;
  6773.                         a.colorHex = "#" + (16777216 + (s << 16) + (l << 8) + c).toString(16).slice(1)
  6774.                     }
  6775.                     4 & t && (a.skin = e.skin), 16 & t && (a.x = e.positionMass.x, a.y = e.positionMass.y, a.mass = e.positionMass.mass), 32 & t && (a.isAlive = e.isAlive), 64 & t && (a.isRGB = e.isRGB), a.team = n, a.isAlive ? (i.totalMass += a.mass, i.alive++) : i.spectate++
  6776.                 }
  6777.                 if (128 & t) {
  6778.                     var u = e.biggestFlag;
  6779.                     TeamPlayers.biggestIsOn = u, u && (TeamPlayers.biggest.x = e.biggest.x, TeamPlayers.biggest.y = e.biggest.y)
  6780.                 }
  6781.             }
  6782.         }, {
  6783.             key: "prePlayers",
  6784.             value: function(e) {
  6785.                 TeamPlayers.clear();
  6786.                 for (var t = e.length; t--;) {
  6787.                     var n = e[t].id,
  6788.                         i = TeamPlayers.newPlayer(n);
  6789.                     i.nick = e[t].nick;
  6790.                     var o = e[t].colors.red,
  6791.                         a = e[t].colors.green,
  6792.                         r = e[t].colors.blue;
  6793.                     i.colorHex = "#" + (16777216 + (o << 16) + (a << 8) + r).toString(16).slice(1), i.skin = e[t].skin, i.x = e[t].positionMass.x, i.y = e[t].positionMass.y, i.mass = e[t].positionMass.mass, i.isAlive = e[t].isAlive, i.isRGB = e[t].isRGB
  6794.                 }
  6795.             }
  6796.         }, {
  6797.             key: "chat",
  6798.             value: function(e) {
  6799.                 var t = e.playerId,
  6800.                     n = e.type,
  6801.                     i = e.text;
  6802.                 if (3 === n) {
  6803.                     var o = i.split("");
  6804.                     TeamPlayers.chat(t, n, o[1], o[0])
  6805.                 } else TeamPlayers.chat(t, n, i)
  6806.             }
  6807.         }, {
  6808.             key: "commander",
  6809.             value: function(e) {
  6810.                 var t = e.x + gMap.offset.x,
  6811.                     n = e.y + gMap.offset.y,
  6812.                     i = HSLO.time;
  6813.                 Game.commanderPoints.add({
  6814.                     x: t,
  6815.                     y: n,
  6816.                     time: i
  6817.                 })
  6818.             }
  6819.         }, {
  6820.             key: "selfID",
  6821.             value: function(e) {
  6822.                 TeamPlayers.selfID = e
  6823.             }
  6824.         }]), e
  6825.     }()
  6826. }, function(e, t, n) {
  6827.     "use strict";
  6828.     var i = l(n(15)),
  6829.         o = l(n(14)),
  6830.         a = l(n(22)),
  6831.         r = l(n(0)),
  6832.         s = l(n(1));
  6833.  
  6834.     function l(e) {
  6835.         return e && e.__esModule ? e : {
  6836.             default: e
  6837.         }
  6838.     }
  6839.     var c = function() {
  6840.         function e(t) {
  6841.             (0, r.default)(this, e), this.api = t
  6842.         }
  6843.         return (0, s.default)(e, [{
  6844.             key: "getJWT",
  6845.             value: function(e, t) {
  6846.                 return new a.default(function(n, i) {
  6847.                     $.get(this.api.baseURL + "?id=" + e + "&token=" + t + "&platform=" + this.api.platform.type, function(e) {
  6848.                         n(e)
  6849.                     })
  6850.                 }.bind(this))
  6851.             }
  6852.         }, {
  6853.             key: "getUser",
  6854.             value: function(e) {
  6855.                 return new a.default(function(t, n) {
  6856.                     $.get(this.api.baseURL + "/user/" + e, function(e) {
  6857.                         t(JSON.parse(e))
  6858.                     })
  6859.                 }.bind(this))
  6860.             }
  6861.         }, {
  6862.             key: "getRefferals",
  6863.             value: function(e) {
  6864.                 return new a.default(function(t, n) {
  6865.                     $.get(this.api.baseURL + "/refferal/" + e, function(e) {
  6866.                         t(JSON.parse(e))
  6867.                     })
  6868.                 }.bind(this))
  6869.             }
  6870.         }, {
  6871.             key: "claimRefferal",
  6872.             value: function(e) {
  6873.                 return new a.default(function(t, n) {
  6874.                     $.post(this.api.baseURL + "/claim", {
  6875.                         jwt: SocketClient.jwt,
  6876.                         type: e
  6877.                     }, function() {
  6878.                         var e = (0, o.default)(i.default.mark(function e(n) {
  6879.                             var o, a, r, s;
  6880.                             return i.default.wrap(function(e) {
  6881.                                 for (;;) switch (e.prev = e.next) {
  6882.                                     case 0:
  6883.                                         if ("worked" != n) {
  6884.                                             e.next = 19;
  6885.                                             break
  6886.                                         }
  6887.                                         return e.next = 3, this.api.platform.getAccessToken();
  6888.                                     case 3:
  6889.                                         return o = e.sent, e.next = 6, this.api.platform.getId();
  6890.                                     case 6:
  6891.                                         return a = e.sent, e.next = 9, this.api.platform.getInfo();
  6892.                                     case 9:
  6893.                                         return r = e.sent, e.next = 12, this.api.updateInfo();
  6894.                                     case 12:
  6895.                                         return s = e.sent, this.api.setInfo(r, s), e.next = 16, this.getJWT(a, o);
  6896.                                     case 16:
  6897.                                         SocketClient.jwt = e.sent, SocketClient.sendJWT(), t();
  6898.                                     case 19:
  6899.                                     case "end":
  6900.                                         return e.stop()
  6901.                                 }
  6902.                             }, e, this)
  6903.                         }));
  6904.                         return function(t) {
  6905.                             return e.apply(this, arguments)
  6906.                         }
  6907.                     }().bind(this))
  6908.                 }.bind(this))
  6909.             }
  6910.         }, {
  6911.             key: "buyItem",
  6912.             value: function(e) {
  6913.                 return this.api.loggedIn ? new a.default(function(t, n) {
  6914.                     $.post(this.api.baseURL + "/buy", {
  6915.                         jwt: SocketClient.jwt,
  6916.                         item: e
  6917.                     }, function() {
  6918.                         var e = (0, o.default)(i.default.mark(function e(n) {
  6919.                             var o, a, r, s;
  6920.                             return i.default.wrap(function(e) {
  6921.                                 for (;;) switch (e.prev = e.next) {
  6922.                                     case 0:
  6923.                                         return e.next = 2, this.api.updateInfo();
  6924.                                     case 2:
  6925.                                         return e.next = 4, this.api.platform.getId();
  6926.                                     case 4:
  6927.                                         return o = e.sent, e.next = 7, this.api.platform.getAccessToken();
  6928.                                     case 7:
  6929.                                         return a = e.sent, e.next = 10, this.getJWT(o, a);
  6930.                                     case 10:
  6931.                                         return SocketClient.jwt = e.sent, SocketClient.sendJWT(), e.next = 14, this.api.platform.getInfo();
  6932.                                     case 14:
  6933.                                         return r = e.sent, e.next = 17, this.api.updateInfo();
  6934.                                     case 17:
  6935.                                         s = e.sent, this.api.setInfo(r, s), "You Have Successfully Bought This Item!" == n ? swal({
  6936.                                             title: "Buy Item",
  6937.                                             text: "You successfully purchased this item!",
  6938.                                             icon: "success"
  6939.                                         }) : swal({
  6940.                                             title: "Buy Item",
  6941.                                             text: n.charAt(0).toUpperCase() + n.slice(1).toLowerCase(),
  6942.                                             icon: "error"
  6943.                                         }), t(n);
  6944.                                     case 21:
  6945.                                     case "end":
  6946.                                         return e.stop()
  6947.                                 }
  6948.                             }, e, this)
  6949.                         }));
  6950.                         return function(t) {
  6951.                             return e.apply(this, arguments)
  6952.                         }
  6953.                     }().bind(this))
  6954.                 }.bind(this)) : swal({
  6955.                     title: "Buy Item",
  6956.                     text: "Login to buy items!",
  6957.                     icon: "error"
  6958.                 })
  6959.             }
  6960.         }, {
  6961.             key: "claimFreeCoins",
  6962.             value: function() {
  6963.                 if (!this.api.loggedIn) return swal({
  6964.                     title: "Free Coins",
  6965.                     text: "Login for free coins!",
  6966.                     icon: "error"
  6967.                 });
  6968.                 $.get(this.api.baseURL + "/freeCoins?jwt=" + SocketClient.jwt, function() {
  6969.                     var e = (0, o.default)(i.default.mark(function e(t) {
  6970.                         var n, o;
  6971.                         return i.default.wrap(function(e) {
  6972.                             for (;;) switch (e.prev = e.next) {
  6973.                                 case 0:
  6974.                                     return e.next = 2, this.api.platform.getInfo();
  6975.                                 case 2:
  6976.                                     return n = e.sent, e.next = 5, this.api.updateInfo();
  6977.                                 case 5:
  6978.                                     o = e.sent, this.api.setInfo(n, o), "Succesfully claimed 20 coins!" == t ? swal({
  6979.                                         title: "Free Coins",
  6980.                                         text: "You successfully claimed 20 coins!",
  6981.                                         icon: "success"
  6982.                                     }) : swal({
  6983.                                         title: "Free Coins",
  6984.                                         text: "You must wait " + API.msToTime(API.info.lastCoinClaim + 72e5 - Date.now()) + " before you can claim coins again!",
  6985.                                         icon: "error"
  6986.                                     });
  6987.                                 case 8:
  6988.                                 case "end":
  6989.                                     return e.stop()
  6990.                             }
  6991.                         }, e, this)
  6992.                     }));
  6993.                     return function(t) {
  6994.                         return e.apply(this, arguments)
  6995.                     }
  6996.                 }().bind(this))
  6997.             }
  6998.         }, {
  6999.             key: "getShopItems",
  7000.             value: function() {
  7001.                 return new a.default(function(e, t) {
  7002.                     $.get("http://main.cellz.io:8081/shop", function(t) {
  7003.                         e(JSON.parse(t))
  7004.                     })
  7005.                 })
  7006.             }
  7007.         }]), e
  7008.     }();
  7009.     e.exports = c
  7010. }, function(e, t, n) {
  7011.     "use strict";
  7012.     var i = l(n(15)),
  7013.         o = l(n(14)),
  7014.         a = l(n(22)),
  7015.         r = l(n(0)),
  7016.         s = l(n(1));
  7017.  
  7018.     function l(e) {
  7019.         return e && e.__esModule ? e : {
  7020.             default: e
  7021.         }
  7022.     }
  7023.     e.exports = function() {
  7024.         function e() {
  7025.             (0, r.default)(this, e), this.googleUser = null, this.type = "google"
  7026.         }
  7027.         return (0, s.default)(e, [{
  7028.             key: "loggedIn",
  7029.             value: function() {
  7030.                 return new a.default(function() {
  7031.                     var e = (0, o.default)(i.default.mark(function e(t, n) {
  7032.                         return i.default.wrap(function(e) {
  7033.                             for (;;) switch (e.prev = e.next) {
  7034.                                 case 0:
  7035.                                     gapi.auth2.getAuthInstance().isSignedIn.get() ? (this.googleUser = gapi.auth2.getAuthInstance().currentUser.get(), t(!0)) : t(!1);
  7036.                                 case 1:
  7037.                                 case "end":
  7038.                                     return e.stop()
  7039.                             }
  7040.                         }, e, this)
  7041.                     }));
  7042.                     return function(t, n) {
  7043.                         return e.apply(this, arguments)
  7044.                     }
  7045.                 }().bind(this))
  7046.             }
  7047.         }, {
  7048.             key: "login",
  7049.             value: function() {
  7050.                 return new a.default(function() {
  7051.                     var e = (0, o.default)(i.default.mark(function e(t, n) {
  7052.                         var o;
  7053.                         return i.default.wrap(function(e) {
  7054.                             for (;;) switch (e.prev = e.next) {
  7055.                                 case 0:
  7056.                                     return e.next = 2, auth2.signIn();
  7057.                                 case 2:
  7058.                                     o = e.sent, this.googleUser = o, t();
  7059.                                 case 5:
  7060.                                 case "end":
  7061.                                     return e.stop()
  7062.                             }
  7063.                         }, e, this)
  7064.                     }));
  7065.                     return function(t, n) {
  7066.                         return e.apply(this, arguments)
  7067.                     }
  7068.                 }().bind(this))
  7069.             }
  7070.         }, {
  7071.             key: "logout",
  7072.             value: function() {
  7073.                 return new a.default(function() {
  7074.                     var e = (0, o.default)(i.default.mark(function e(t, n) {
  7075.                         return i.default.wrap(function(e) {
  7076.                             for (;;) switch (e.prev = e.next) {
  7077.                                 case 0:
  7078.                                     return e.next = 2, auth2.signOut();
  7079.                                 case 2:
  7080.                                     t();
  7081.                                 case 3:
  7082.                                 case "end":
  7083.                                     return e.stop()
  7084.                             }
  7085.                         }, e, this)
  7086.                     }));
  7087.                     return function(t, n) {
  7088.                         return e.apply(this, arguments)
  7089.                     }
  7090.                 }().bind(this))
  7091.             }
  7092.         }, {
  7093.             key: "getInfo",
  7094.             value: function() {
  7095.                 return new a.default(function(e, t) {
  7096.                     var n = {
  7097.                             profilePic: "",
  7098.                             name: "",
  7099.                             id: this.getId()
  7100.                         },
  7101.                         i = this.googleUser.getBasicProfile();
  7102.                     n.profilePic = i.getImageUrl(), n.name = i.getName().split(" ")[0], e(n)
  7103.                 }.bind(this))
  7104.             }
  7105.         }, {
  7106.             key: "getAccessToken",
  7107.             value: function() {
  7108.                 return new a.default(function(e, t) {
  7109.                     e(this.googleUser.getAuthResponse().id_token)
  7110.                 }.bind(this))
  7111.             }
  7112.         }, {
  7113.             key: "getId",
  7114.             value: function() {
  7115.                 return this.googleUser.getBasicProfile().getId()
  7116.             }
  7117.         }]), e
  7118.     }()
  7119. }, function(e, t, n) {
  7120.     "use strict";
  7121.     var i = l(n(22)),
  7122.         o = l(n(15)),
  7123.         a = l(n(14)),
  7124.         r = l(n(0)),
  7125.         s = l(n(1));
  7126.  
  7127.     function l(e) {
  7128.         return e && e.__esModule ? e : {
  7129.             default: e
  7130.         }
  7131.     }
  7132.     var c = n(141),
  7133.         u = n(140);
  7134.     e.exports = function() {
  7135.         function e() {
  7136.             (0, r.default)(this, e)
  7137.         }
  7138.         return (0, s.default)(e, null, [{
  7139.             key: "init",
  7140.             value: function() {
  7141.                 this.platforms = {
  7142.                     google: new c(this)
  7143.                 }, this.platform = this.platforms.google, this.baseURL = "http://main.cellz.io:9000", this.utils = new u(this), this.info = {}, this.loggedIn = !1, this.run(), this.buttons()
  7144.             }
  7145.         }, {
  7146.             key: "buttons",
  7147.             value: function() {
  7148.                 $(".login-button").click(function() {
  7149.                     this.login()
  7150.                 }.bind(this)), $(".logout-button").click(function() {
  7151.                     this.logout()
  7152.                 }.bind(this)), $("#freeCoins").click(function() {
  7153.                     this.utils.claimFreeCoins()
  7154.                 }.bind(this)), $(".doubleMass24hr").click(function() {
  7155.                     this.utils.buyItem("mass_boost_2_24")
  7156.                 }.bind(this)), $(".tripleMass24hr").click(function() {
  7157.                     this.utils.buyItem("mass_boost_3_24")
  7158.                 }.bind(this)), $(".doubleXP24hr").click(function() {
  7159.                     this.utils.buyItem("xp_boost_2_24")
  7160.                 }.bind(this)), $(".tripleXP24hr").click(function() {
  7161.                     this.utils.buyItem("xp_boost_3_24")
  7162.                 }.bind(this)), $(".massBoost").click(function() {
  7163.                     swal({
  7164.                         title: "Mass Boost Infortmation",
  7165.                         text: "Mass boost does not work in DUAL, MEGA-DUAL or ULTRASPLIT serves!",
  7166.                         icon: "info"
  7167.                     })
  7168.                 }), $(".xpBoost").click(function() {
  7169.                     swal({
  7170.                         title: "XP Boost Infortmation",
  7171.                         text: "XP boost does not work in DUAL, MEGA-DUAL or ULTRASPLIT serves!",
  7172.                         icon: "info"
  7173.                     })
  7174.                 })
  7175.             }
  7176.         }, {
  7177.             key: "run",
  7178.             value: function() {
  7179.                 var e = (0, a.default)(o.default.mark(function e() {
  7180.                     return o.default.wrap(function(e) {
  7181.                         for (;;) switch (e.prev = e.next) {
  7182.                             case 0:
  7183.                                 return e.next = 2, this.platform.loggedIn();
  7184.                             case 2:
  7185.                                 e.sent && this.handleLogin();
  7186.                             case 4:
  7187.                             case "end":
  7188.                                 return e.stop()
  7189.                         }
  7190.                     }, e, this)
  7191.                 }));
  7192.                 return function() {
  7193.                     return e.apply(this, arguments)
  7194.                 }
  7195.             }()
  7196.         }, {
  7197.             key: "handleLogin",
  7198.             value: function() {
  7199.                 return new i.default(function() {
  7200.                     var e = (0, a.default)(o.default.mark(function e(t, n) {
  7201.                         var i, a, r, s;
  7202.                         return o.default.wrap(function(e) {
  7203.                             for (;;) switch (e.prev = e.next) {
  7204.                                 case 0:
  7205.                                     return e.next = 2, this.platform.getInfo();
  7206.                                 case 2:
  7207.                                     return i = e.sent, e.next = 5, this.platform.getAccessToken();
  7208.                                 case 5:
  7209.                                     return a = e.sent, e.next = 8, this.utils.getJWT(i.id, a);
  7210.                                 case 8:
  7211.                                     return r = e.sent, this.loggedIn = !0, SocketClient.jwt = r, SocketClient.sendJWT(), e.next = 14, this.updateInfo();
  7212.                                 case 14:
  7213.                                     s = e.sent, this.setInfo(i, s), $(".login-button").hide(), $(".logout-button").css({
  7214.                                         display: "inline-block"
  7215.                                     });
  7216.                                 case 18:
  7217.                                 case "end":
  7218.                                     return e.stop()
  7219.                             }
  7220.                         }, e, this)
  7221.                     }));
  7222.                     return function(t, n) {
  7223.                         return e.apply(this, arguments)
  7224.                     }
  7225.                 }().bind(this))
  7226.             }
  7227.         }, {
  7228.             key: "updateInfo",
  7229.             value: function() {
  7230.                 return new i.default(function() {
  7231.                     var e = (0, a.default)(o.default.mark(function e(t, n) {
  7232.                         var i;
  7233.                         return o.default.wrap(function(e) {
  7234.                             for (;;) switch (e.prev = e.next) {
  7235.                                 case 0:
  7236.                                     return e.next = 2, this.utils.getUser(this.platform.getId());
  7237.                                 case 2:
  7238.                                     i = e.sent, this.info = i, t(i);
  7239.                                 case 5:
  7240.                                 case "end":
  7241.                                     return e.stop()
  7242.                             }
  7243.                         }, e, this)
  7244.                     }));
  7245.                     return function(t, n) {
  7246.                         return e.apply(this, arguments)
  7247.                     }
  7248.                 }().bind(this))
  7249.             }
  7250.         }, {
  7251.             key: "login",
  7252.             value: function() {
  7253.                 if (!this.loggedIn) return new i.default(function() {
  7254.                     var e = (0, a.default)(o.default.mark(function e(t, n) {
  7255.                         return o.default.wrap(function(e) {
  7256.                             for (;;) switch (e.prev = e.next) {
  7257.                                 case 0:
  7258.                                     return e.next = 2, this.platform.login();
  7259.                                 case 2:
  7260.                                     return e.next = 4, this.handleLogin();
  7261.                                 case 4:
  7262.                                     t(!0);
  7263.                                 case 5:
  7264.                                 case "end":
  7265.                                     return e.stop()
  7266.                             }
  7267.                         }, e, this)
  7268.                     }));
  7269.                     return function(t, n) {
  7270.                         return e.apply(this, arguments)
  7271.                     }
  7272.                 }().bind(this))
  7273.             }
  7274.         }, {
  7275.             key: "logout",
  7276.             value: function() {
  7277.                 return new i.default(function() {
  7278.                     var e = (0, a.default)(o.default.mark(function e(t, n) {
  7279.                         return o.default.wrap(function(e) {
  7280.                             for (;;) switch (e.prev = e.next) {
  7281.                                 case 0:
  7282.                                     return e.next = 2, this.platform.logout();
  7283.                                 case 2:
  7284.                                     e.sent, this.loggedIn = !1, this.setInfo({
  7285.                                         profilePic: "./images/guest.png",
  7286.                                         name: "Guest"
  7287.                                     }, {
  7288.                                         coins: 0,
  7289.                                         xp: 0
  7290.                                     }), $(".logout-button").hide(), $(".login-button").show(), t(!0);
  7291.                                 case 8:
  7292.                                 case "end":
  7293.                                     return e.stop()
  7294.                             }
  7295.                         }, e, this)
  7296.                     }));
  7297.                     return function(t, n) {
  7298.                         return e.apply(this, arguments)
  7299.                     }
  7300.                 }().bind(this))
  7301.             }
  7302.         }, {
  7303.             key: "setInfo",
  7304.             value: function() {
  7305.                 var e = (0, a.default)(o.default.mark(function e(t, n) {
  7306.                     var i, a, r, s;
  7307.                     return o.default.wrap(function(e) {
  7308.                         for (;;) switch (e.prev = e.next) {
  7309.                             case 0:
  7310.                                 $(".userImg").attr("src", t.profilePic), $(".accountName").html(t.name), $("#coinAmt").html(n.coins.toLocaleString()), i = n.xp, a = Math.floor(Math.sqrt(i / 2 / 1e3)), this.info.level = a, a > 99 && (a = 99), r = 1e3 * Math.pow(a + 1, 2) * 2, s = 1e3 * Math.pow(a, 2) * 2, $(".level").html("Level: " + (a + 1)), $(".xp").html(i.toLocaleString() + " / " + r.toLocaleString()), $(".progress-bar").css("width", (i - s) / (r - s) * 100 + "%"), Date.now(), this.info.lastCoinClaim;
  7311.                             case 13:
  7312.                             case "end":
  7313.                                 return e.stop()
  7314.                         }
  7315.                     }, e, this)
  7316.                 }));
  7317.                 return function(t, n) {
  7318.                     return e.apply(this, arguments)
  7319.                 }
  7320.             }()
  7321.         }, {
  7322.             key: "msToTime",
  7323.             value: function(e) {
  7324.                 var t = (e = (e - e % 1e3) / 1e3) % 60,
  7325.                     n = (e = (e - t) / 60) % 60;
  7326.                 return (e - n) / 60 + " hours " + n + " minutes and " + t + " seconds"
  7327.             }
  7328.         }]), e
  7329.     }()
  7330. }, function(e, t, n) {
  7331.     "use strict";
  7332.     var i = a(n(0)),
  7333.         o = a(n(1));
  7334.  
  7335.     function a(e) {
  7336.         return e && e.__esModule ? e : {
  7337.             default: e
  7338.         }
  7339.     }
  7340.     e.exports = function() {
  7341.         function e() {
  7342.             (0, i.default)(this, e)
  7343.         }
  7344.         return (0, o.default)(e, null, [{
  7345.             key: "init",
  7346.             value: function() {
  7347.                 console.log("Connected to ProSplit.io Networks."), Socket.connected = !0, this.color(), this.joinRoom(), this.aliveStatus(), this.rgbMode(), this.uploadPositionMass(), TeamPlayers.isSpectator && this.spectator(!0)
  7348.             }
  7349.         }, {
  7350.             key: "nick",
  7351.             value: function() {
  7352.                 Socket.connected && Socket.send("setNick", Client.nick)
  7353.             }
  7354.         }, {
  7355.             key: "color",
  7356.             value: function() {
  7357.                 if (Socket.connected) {
  7358.                     var e = {};
  7359.                     e.red = Client.colorObject.r, e.green = Client.colorObject.g, e.blue = Client.colorObject.b, Socket.send("setColors", e)
  7360.                 }
  7361.             }
  7362.         }, {
  7363.             key: "skin",
  7364.             value: function() {
  7365.                 Socket.connected && Socket.send("setSkin", Client.skin)
  7366.             }
  7367.         }, {
  7368.             key: "joinRoom",
  7369.             value: function() {
  7370.                 if (Socket.connected && SocketClient.ip) {
  7371.                     var e = SocketClient.ip.substring(5, SocketClient.ip.length) + Client.tag;
  7372.                     if (e == Socket.room && null != Socket.room) return;
  7373.                     null !== Socket.room && Socket.send("leaveRoom", Socket.room), Socket.room = e, this.nick(), this.skin(), Socket.send("joinRoom", Socket.room)
  7374.                 }
  7375.             }
  7376.         }, {
  7377.             key: "positionMass",
  7378.             value: function() {
  7379.                 if (Socket.connected) {
  7380.                     var e = {};
  7381.                     e.x = 0 | Client.x - gMap.offset.x, e.y = 0 | Client.y - gMap.offset.y, e.mass = Client.mass, Socket.send("setPositionMass", e)
  7382.                 }
  7383.             }
  7384.         }, {
  7385.             key: "aliveStatus",
  7386.             value: function() {
  7387.                 if (Socket.connected) {
  7388.                     var e = Client.isAlive ? 1 : 0;
  7389.                     Socket.send("setAliveStatus", e)
  7390.                 }
  7391.             }
  7392.         }, {
  7393.             key: "chat",
  7394.             value: function(e, t) {
  7395.                 if (Socket.connected) {
  7396.                     var n = {};
  7397.                     n.type = e, n.text = t, Socket.send("sendMessage", n)
  7398.                 }
  7399.             }
  7400.         }, {
  7401.             key: "commander",
  7402.             value: function() {
  7403.                 if (Socket.connected) {
  7404.                     var e = {};
  7405.                     e.x = 0 | Listener.canvasX - gMap.offset.x, e.y = 0 | Listener.canvasY - gMap.offset.y, Socket.send("commander", e)
  7406.                 }
  7407.             }
  7408.         }, {
  7409.             key: "spectator",
  7410.             value: function() {}
  7411.         }, {
  7412.             key: "rgbMode",
  7413.             value: function() {
  7414.                 if (Socket.connected) {
  7415.                     var e = Client.isRGB ? 1 : 0;
  7416.                     Socket.send("setRgbMode", e)
  7417.                 }
  7418.             }
  7419.         }, {
  7420.             key: "biggest",
  7421.             value: function() {
  7422.                 if (Socket.connected) {
  7423.                     var e = {};
  7424.                     e.x = 0 | Camera.spectatePoint.x - gMap.offset.x, e.y = 0 | Camera.spectatePoint.y - gMap.offset.y, Socket.send("setBiggest", e)
  7425.                 }
  7426.             }
  7427.         }, {
  7428.             key: "uploadPositionMass",
  7429.             value: function() {
  7430.                 Client.isAlive && !TeamPlayers.isSpectator && SocketManager.positionMass(), setTimeout(SocketManager.uploadPositionMass, 1e3)
  7431.             }
  7432.         }]), e
  7433.     }()
  7434. }, function(e, t, n) {
  7435.     "use strict";
  7436.     var i = a(n(0)),
  7437.         o = a(n(1));
  7438.  
  7439.     function a(e) {
  7440.         return e && e.__esModule ? e : {
  7441.             default: e
  7442.         }
  7443.     }
  7444.     e.exports = function() {
  7445.         function e() {
  7446.             (0, i.default)(this, e)
  7447.         }
  7448.         return (0, o.default)(e, null, [{
  7449.             key: "init",
  7450.             value: function() {
  7451.                 this.ip = null, this.ws = null, this.jwt = null, this.connected = !1, this.packetCount = {
  7452.                     in: 0,
  7453.                     out: 0
  7454.                 }, gMap.init()
  7455.             }
  7456.         }, {
  7457.             key: "connect",
  7458.             value: function(e) {
  7459.                 var t = this;
  7460.                 e && (this.disconnect(), this.resetData(), gMap.init(), this.ws = new WebSocket("ws://" + e), this.ws.binaryType = "arraybuffer", this.ws.onopen = function() {
  7461.                     return t.onOpen(1)
  7462.                 }, this.ws.onmessage = function(e) {
  7463.                     return t.onMessage(e)
  7464.                 }, this.ws.onclose = function(e) {
  7465.                     return t.onClose(e)
  7466.                 }, this.ws.onerror = function() {
  7467.                     return t.onError()
  7468.                 }, this.ip = e, console.log("Connecting to: " + e))
  7469.             }
  7470.         }, {
  7471.             key: "disconnect",
  7472.             value: function() {
  7473.                 if (this.connected = !1, this.ws) {
  7474.                     this.ws.onopen = null, this.ws.onmessage = null, this.ws.onclose = null, this.ws.onerror = null;
  7475.                     try {
  7476.                         this.ws.close()
  7477.                     } catch (e) {}
  7478.                 }
  7479.                 this.ws = null, this.ip = null
  7480.             }
  7481.         }, {
  7482.             key: "resetData",
  7483.             value: function() {
  7484.                 Engine.cells.clear(), Engine.myCellsIDs.clear(), Engine.myCells.clear(), Client.isAlive = !1
  7485.             }
  7486.         }, {
  7487.             key: "send",
  7488.             value: function(e) {
  7489.                 this.ws && 1 === this.ws.readyState && (this.packetCount.out++, this.ws.send(e))
  7490.             }
  7491.         }, {
  7492.             key: "onOpen",
  7493.             value: function() {
  7494.                 SocketManager.joinRoom(), Packets.init(), this.sendVerifyToken(), this.jwt && !isUltra && this.sendJWT()
  7495.             }
  7496.         }, {
  7497.             key: "onMessage",
  7498.             value: function(e) {
  7499.                 this.packetCount.in++, ServerHandler.getBuffer(e)
  7500.             }
  7501.         }, {
  7502.             key: "onClose",
  7503.             value: function(e) {
  7504.                 HUD.open(), this.connected = !1, console.log("Websocket closed -> " + e.reason), Wager.isWager ? Wager.open() : this.connect(this.ip), Wager.reset()
  7505.             }
  7506.         }, {
  7507.             key: "onError",
  7508.             value: function() {
  7509.                 HUD.open(), this.connected = !1, console.log("Websocket errored out!")
  7510.             }
  7511.         }, {
  7512.             key: "sendJWT",
  7513.             value: function() {
  7514.                 var e = new DataView(new ArrayBuffer(2 + this.jwt.length));
  7515.                 e.setUint8(0, 30);
  7516.                 for (var t = 0; t < this.jwt.length; t++) e.setUint8(t + 1, this.jwt.charCodeAt(t));
  7517.                 this.send(e)
  7518.             }
  7519.         }, {
  7520.             key: "sendVerifyToken",
  7521.             value: function() {
  7522.                 var e = HSLO.verifyToken,
  7523.                     t = new DataView(new ArrayBuffer(2 + e.length));
  7524.                 t.setUint8(0, 32);
  7525.                 for (var n = 0; n < e.length; n++) t.setUint8(n + 1, e.charCodeAt(n));
  7526.                 this.send(t)
  7527.             }
  7528.         }]), e
  7529.     }()
  7530. }, function(e, t, n) {
  7531.     "use strict";
  7532.     var i = s(n(15)),
  7533.         o = s(n(14)),
  7534.         a = s(n(0)),
  7535.         r = s(n(1));
  7536.  
  7537.     function s(e) {
  7538.         return e && e.__esModule ? e : {
  7539.             default: e
  7540.         }
  7541.     }
  7542.     e.exports = function() {
  7543.         function e() {
  7544.             (0, a.default)(this, e)
  7545.         }
  7546.         return (0, r.default)(e, null, [{
  7547.             key: "init",
  7548.             value: function() {
  7549.                 this.serverStats = [], this.getStats()
  7550.             }
  7551.         }, {
  7552.             key: "getServers",
  7553.             value: function() {
  7554.                 var e = this;
  7555.                 $.get("http://na.cellz.io:3000/servers", function(t) {
  7556.                     for (var n in $("#servers").html(""), e.addServer("ULTRASPLIT_1", {
  7557.                             ip: "na.gaver.io",
  7558.                             port: 1177,
  7559.                             isUltra: !0
  7560.                         }), e.addServer("ULTRASPLIT_2", {
  7561.                             ip: "na.gaver.io",
  7562.                             port: 1178,
  7563.                             isUltra: !0
  7564.                         }), JSON.parse(t).NA) "FFA_1" === n || n.includes("WAGER") || e.addServer(n, JSON.parse(t).NA[n]);
  7565.                     e.wagerStats()
  7566.                 })
  7567.             }
  7568.         }, {
  7569.             key: "addServer",
  7570.             value: function() {
  7571.                 var e = (0, o.default)(i.default.mark(function e(t, n) {
  7572.                     var o;
  7573.                     return i.default.wrap(function(e) {
  7574.                         for (;;) switch (e.prev = e.next) {
  7575.                             case 0:
  7576.                                 o = this.serverStats[t], t = (t = t.replace("_", " ").split("_"))[1] ? t[0] + " " + t[1] : t[0], $("#servers").append(this.serverTemp(t, n, o));
  7577.                             case 4:
  7578.                             case "end":
  7579.                                 return e.stop()
  7580.                         }
  7581.                     }, e, this)
  7582.                 }));
  7583.                 return function(t, n) {
  7584.                     return e.apply(this, arguments)
  7585.                 }
  7586.             }()
  7587.         }, {
  7588.             key: "serverTemp",
  7589.             value: function(e, t, n) {
  7590.                 var i = n.current_players || 0,
  7591.                     o = n.max_players || 0;
  7592.                 return '<div id="server" onclick="SocketClient.connect(\'' + t.ip + ":" + t.port + "');window.isUltra=" + t.isUltra + ';Wager.isWager=false;"><label id="serverName">' + e + '</label><label id="serverNumber">' + i + "/" + o + "</label></div>"
  7593.             }
  7594.         }, {
  7595.             key: "getStats",
  7596.             value: function() {
  7597.                 var e = this;
  7598.                 $.get("http://na.cellz.io:3000/stats", function(t) {
  7599.                     e.serverStats = JSON.parse(t), $.get("http://na.gaver.io:7000", function(t) {
  7600.                         var n = JSON.parse(t);
  7601.                         e.serverStats.ULTRASPLIT_1 = {
  7602.                             max_players: n.max_players,
  7603.                             current_players: n.current_players,
  7604.                             alive: n.alive
  7605.                         }, $.get("http://na.gaver.io:7001", function(t) {
  7606.                             var n = JSON.parse(t);
  7607.                             e.serverStats.ULTRASPLIT_2 = {
  7608.                                 max_players: n.max_players,
  7609.                                 current_players: n.current_players,
  7610.                                 alive: n.alive
  7611.                             }, e.getServers()
  7612.                         })
  7613.                     })
  7614.                 })
  7615.             }
  7616.         }, {
  7617.             key: "wagerStats",
  7618.             value: function() {
  7619.                 for (var e in this.currentPlayers = 0, this.maxPlayers = 0, this.serverStats) e.includes("WAGER") && (this.maxPlayers += this.serverStats[e].max_players, this.currentPlayers += this.serverStats[e].current_players);
  7620.                 $("#server").before('<div id="server" onclick="Wager.open();"><label id="serverName">WAGER</label><label id="serverNumber">' + this.currentPlayers + "/" + this.maxPlayers + "</label></div>")
  7621.             }
  7622.         }]), e
  7623.     }()
  7624. }, function(e, t, n) {
  7625.     var i = n(5);
  7626.     i(i.S + i.F * !n(8), "Object", {
  7627.         defineProperty: n(7).f
  7628.     })
  7629. }, function(e, t, n) {
  7630.     n(146);
  7631.     var i = n(2).Object;
  7632.     e.exports = function(e, t, n) {
  7633.         return i.defineProperty(e, t, n)
  7634.     }
  7635. }, function(e, t, n) {
  7636.     e.exports = {
  7637.         default: n(147),
  7638.         __esModule: !0
  7639.     }
  7640. }, function(e, t) {
  7641.     ! function(t) {
  7642.         "use strict";
  7643.         var n, i = Object.prototype,
  7644.             o = i.hasOwnProperty,
  7645.             a = "function" == typeof Symbol ? Symbol : {},
  7646.             r = a.iterator || "@@iterator",
  7647.             s = a.asyncIterator || "@@asyncIterator",
  7648.             l = a.toStringTag || "@@toStringTag",
  7649.             c = "object" == typeof e,
  7650.             u = t.regeneratorRuntime;
  7651.         if (u) c && (e.exports = u);
  7652.         else {
  7653.             (u = t.regeneratorRuntime = c ? e.exports : {}).wrap = S;
  7654.             var d = "suspendedStart",
  7655.                 h = "suspendedYield",
  7656.                 f = "executing",
  7657.                 m = "completed",
  7658.                 g = {},
  7659.                 p = {};
  7660.             p[r] = function() {
  7661.                 return this
  7662.             };
  7663.             var v = Object.getPrototypeOf,
  7664.                 y = v && v(v($([])));
  7665.             y && y !== i && o.call(y, r) && (p = y);
  7666.             var k = x.prototype = w.prototype = Object.create(p);
  7667.             b.prototype = k.constructor = x, x.constructor = b, x[l] = b.displayName = "GeneratorFunction", u.isGeneratorFunction = function(e) {
  7668.                 var t = "function" == typeof e && e.constructor;
  7669.                 return !!t && (t === b || "GeneratorFunction" === (t.displayName || t.name))
  7670.             }, u.mark = function(e) {
  7671.                 return Object.setPrototypeOf ? Object.setPrototypeOf(e, x) : (e.__proto__ = x, l in e || (e[l] = "GeneratorFunction")), e.prototype = Object.create(k), e
  7672.             }, u.awrap = function(e) {
  7673.                 return {
  7674.                     __await: e
  7675.                 }
  7676.             }, M(_.prototype), _.prototype[s] = function() {
  7677.                 return this
  7678.             }, u.AsyncIterator = _, u.async = function(e, t, n, i) {
  7679.                 var o = new _(S(e, t, n, i));
  7680.                 return u.isGeneratorFunction(t) ? o : o.next().then(function(e) {
  7681.                     return e.done ? e.value : o.next()
  7682.                 })
  7683.             }, M(k), k[l] = "Generator", k[r] = function() {
  7684.                 return this
  7685.             }, k.toString = function() {
  7686.                 return "[object Generator]"
  7687.             }, u.keys = function(e) {
  7688.                 var t = [];
  7689.                 for (var n in e) t.push(n);
  7690.                 return t.reverse(),
  7691.                     function n() {
  7692.                         for (; t.length;) {
  7693.                             var i = t.pop();
  7694.                             if (i in e) return n.value = i, n.done = !1, n
  7695.                         }
  7696.                         return n.done = !0, n
  7697.                     }
  7698.             }, u.values = $, K.prototype = {
  7699.                 constructor: K,
  7700.                 reset: function(e) {
  7701.                     if (this.prev = 0, this.next = 0, this.sent = this._sent = n, this.done = !1, this.delegate = null, this.method = "next", this.arg = n, this.tryEntries.forEach(P), !e)
  7702.                         for (var t in this) "t" === t.charAt(0) && o.call(this, t) && !isNaN(+t.slice(1)) && (this[t] = n)
  7703.                 },
  7704.                 stop: function() {
  7705.                     this.done = !0;
  7706.                     var e = this.tryEntries[0].completion;
  7707.                     if ("throw" === e.type) throw e.arg;
  7708.                     return this.rval
  7709.                 },
  7710.                 dispatchException: function(e) {
  7711.                     if (this.done) throw e;
  7712.                     var t = this;
  7713.  
  7714.                     function i(i, o) {
  7715.                         return s.type = "throw", s.arg = e, t.next = i, o && (t.method = "next", t.arg = n), !!o
  7716.                     }
  7717.                     for (var a = this.tryEntries.length - 1; a >= 0; --a) {
  7718.                         var r = this.tryEntries[a],
  7719.                             s = r.completion;
  7720.                         if ("root" === r.tryLoc) return i("end");
  7721.                         if (r.tryLoc <= this.prev) {
  7722.                             var l = o.call(r, "catchLoc"),
  7723.                                 c = o.call(r, "finallyLoc");
  7724.                             if (l && c) {
  7725.                                 if (this.prev < r.catchLoc) return i(r.catchLoc, !0);
  7726.                                 if (this.prev < r.finallyLoc) return i(r.finallyLoc)
  7727.                             } else if (l) {
  7728.                                 if (this.prev < r.catchLoc) return i(r.catchLoc, !0)
  7729.                             } else {
  7730.                                 if (!c) throw new Error("try statement without catch or finally");
  7731.                                 if (this.prev < r.finallyLoc) return i(r.finallyLoc)
  7732.                             }
  7733.                         }
  7734.                     }
  7735.                 },
  7736.                 abrupt: function(e, t) {
  7737.                     for (var n = this.tryEntries.length - 1; n >= 0; --n) {
  7738.                         var i = this.tryEntries[n];
  7739.                         if (i.tryLoc <= this.prev && o.call(i, "finallyLoc") && this.prev < i.finallyLoc) {
  7740.                             var a = i;
  7741.                             break
  7742.                         }
  7743.                     }
  7744.                     a && ("break" === e || "continue" === e) && a.tryLoc <= t && t <= a.finallyLoc && (a = null);
  7745.                     var r = a ? a.completion : {};
  7746.                     return r.type = e, r.arg = t, a ? (this.method = "next", this.next = a.finallyLoc, g) : this.complete(r)
  7747.                 },
  7748.                 complete: function(e, t) {
  7749.                     if ("throw" === e.type) throw e.arg;
  7750.                     return "break" === e.type || "continue" === e.type ? this.next = e.arg : "return" === e.type ? (this.rval = this.arg = e.arg, this.method = "return", this.next = "end") : "normal" === e.type && t && (this.next = t), g
  7751.                 },
  7752.                 finish: function(e) {
  7753.                     for (var t = this.tryEntries.length - 1; t >= 0; --t) {
  7754.                         var n = this.tryEntries[t];
  7755.                         if (n.finallyLoc === e) return this.complete(n.completion, n.afterLoc), P(n), g
  7756.                     }
  7757.                 },
  7758.                 catch: function(e) {
  7759.                     for (var t = this.tryEntries.length - 1; t >= 0; --t) {
  7760.                         var n = this.tryEntries[t];
  7761.                         if (n.tryLoc === e) {
  7762.                             var i = n.completion;
  7763.                             if ("throw" === i.type) {
  7764.                                 var o = i.arg;
  7765.                                 P(n)
  7766.                             }
  7767.                             return o
  7768.                         }
  7769.                     }
  7770.                     throw new Error("illegal catch attempt")
  7771.                 },
  7772.                 delegateYield: function(e, t, i) {
  7773.                     return this.delegate = {
  7774.                         iterator: $(e),
  7775.                         resultName: t,
  7776.                         nextLoc: i
  7777.                     }, "next" === this.method && (this.arg = n), g
  7778.                 }
  7779.             }
  7780.         }
  7781.  
  7782.         function S(e, t, n, i) {
  7783.             var o = t && t.prototype instanceof w ? t : w,
  7784.                 a = Object.create(o.prototype),
  7785.                 r = new K(i || []);
  7786.             return a._invoke = function(e, t, n) {
  7787.                 var i = d;
  7788.                 return function(o, a) {
  7789.                     if (i === f) throw new Error("Generator is already running");
  7790.                     if (i === m) {
  7791.                         if ("throw" === o) throw a;
  7792.                         return O()
  7793.                     }
  7794.                     for (n.method = o, n.arg = a;;) {
  7795.                         var r = n.delegate;
  7796.                         if (r) {
  7797.                             var s = T(r, n);
  7798.                             if (s) {
  7799.                                 if (s === g) continue;
  7800.                                 return s
  7801.                             }
  7802.                         }
  7803.                         if ("next" === n.method) n.sent = n._sent = n.arg;
  7804.                         else if ("throw" === n.method) {
  7805.                             if (i === d) throw i = m, n.arg;
  7806.                             n.dispatchException(n.arg)
  7807.                         } else "return" === n.method && n.abrupt("return", n.arg);
  7808.                         i = f;
  7809.                         var l = C(e, t, n);
  7810.                         if ("normal" === l.type) {
  7811.                             if (i = n.done ? m : h, l.arg === g) continue;
  7812.                             return {
  7813.                                 value: l.arg,
  7814.                                 done: n.done
  7815.                             }
  7816.                         }
  7817.                         "throw" === l.type && (i = m, n.method = "throw", n.arg = l.arg)
  7818.                     }
  7819.                 }
  7820.             }(e, n, r), a
  7821.         }
  7822.  
  7823.         function C(e, t, n) {
  7824.             try {
  7825.                 return {
  7826.                     type: "normal",
  7827.                     arg: e.call(t, n)
  7828.                 }
  7829.             } catch (e) {
  7830.                 return {
  7831.                     type: "throw",
  7832.                     arg: e
  7833.                 }
  7834.             }
  7835.         }
  7836.  
  7837.         function w() {}
  7838.  
  7839.         function b() {}
  7840.  
  7841.         function x() {}
  7842.  
  7843.         function M(e) {
  7844.             ["next", "throw", "return"].forEach(function(t) {
  7845.                 e[t] = function(e) {
  7846.                     return this._invoke(t, e)
  7847.                 }
  7848.             })
  7849.         }
  7850.  
  7851.         function _(e) {
  7852.             var t;
  7853.             this._invoke = function(n, i) {
  7854.                 function a() {
  7855.                     return new Promise(function(t, a) {
  7856.                         ! function t(n, i, a, r) {
  7857.                             var s = C(e[n], e, i);
  7858.                             if ("throw" !== s.type) {
  7859.                                 var l = s.arg,
  7860.                                     c = l.value;
  7861.                                 return c && "object" == typeof c && o.call(c, "__await") ? Promise.resolve(c.__await).then(function(e) {
  7862.                                     t("next", e, a, r)
  7863.                                 }, function(e) {
  7864.                                     t("throw", e, a, r)
  7865.                                 }) : Promise.resolve(c).then(function(e) {
  7866.                                     l.value = e, a(l)
  7867.                                 }, r)
  7868.                             }
  7869.                             r(s.arg)
  7870.                         }(n, i, t, a)
  7871.                     })
  7872.                 }
  7873.                 return t = t ? t.then(a, a) : a()
  7874.             }
  7875.         }
  7876.  
  7877.         function T(e, t) {
  7878.             var i = e.iterator[t.method];
  7879.             if (i === n) {
  7880.                 if (t.delegate = null, "throw" === t.method) {
  7881.                     if (e.iterator.return && (t.method = "return", t.arg = n, T(e, t), "throw" === t.method)) return g;
  7882.                     t.method = "throw", t.arg = new TypeError("The iterator does not provide a 'throw' method")
  7883.                 }
  7884.                 return g
  7885.             }
  7886.             var o = C(i, e.iterator, t.arg);
  7887.             if ("throw" === o.type) return t.method = "throw", t.arg = o.arg, t.delegate = null, g;
  7888.             var a = o.arg;
  7889.             return a ? a.done ? (t[e.resultName] = a.value, t.next = e.nextLoc, "return" !== t.method && (t.method = "next", t.arg = n), t.delegate = null, g) : a : (t.method = "throw", t.arg = new TypeError("iterator result is not an object"), t.delegate = null, g)
  7890.         }
  7891.  
  7892.         function L(e) {
  7893.             var t = {
  7894.                 tryLoc: e[0]
  7895.             };
  7896.             1 in e && (t.catchLoc = e[1]), 2 in e && (t.finallyLoc = e[2], t.afterLoc = e[3]), this.tryEntries.push(t)
  7897.         }
  7898.  
  7899.         function P(e) {
  7900.             var t = e.completion || {};
  7901.             t.type = "normal", delete t.arg, e.completion = t
  7902.         }
  7903.  
  7904.         function K(e) {
  7905.             this.tryEntries = [{
  7906.                 tryLoc: "root"
  7907.             }], e.forEach(L, this), this.reset(!0)
  7908.         }
  7909.  
  7910.         function $(e) {
  7911.             if (e) {
  7912.                 var t = e[r];
  7913.                 if (t) return t.call(e);
  7914.                 if ("function" == typeof e.next) return e;
  7915.                 if (!isNaN(e.length)) {
  7916.                     var i = -1,
  7917.                         a = function t() {
  7918.                             for (; ++i < e.length;)
  7919.                                 if (o.call(e, i)) return t.value = e[i], t.done = !1, t;
  7920.                             return t.value = n, t.done = !0, t
  7921.                         };
  7922.                     return a.next = a
  7923.                 }
  7924.             }
  7925.             return {
  7926.                 next: O
  7927.             }
  7928.         }
  7929.  
  7930.         function O() {
  7931.             return {
  7932.                 value: n,
  7933.                 done: !0
  7934.             }
  7935.         }
  7936.     }(function() {
  7937.         return this
  7938.     }() || Function("return this")())
  7939. }, function(e, t, n) {
  7940.     var i = function() {
  7941.             return this
  7942.         }() || Function("return this")(),
  7943.         o = i.regeneratorRuntime && Object.getOwnPropertyNames(i).indexOf("regeneratorRuntime") >= 0,
  7944.         a = o && i.regeneratorRuntime;
  7945.     if (i.regeneratorRuntime = void 0, e.exports = n(149), o) i.regeneratorRuntime = a;
  7946.     else try {
  7947.         delete i.regeneratorRuntime
  7948.     } catch (e) {
  7949.         i.regeneratorRuntime = void 0
  7950.     }
  7951. }, function(e, t, n) {
  7952.     "use strict";
  7953.     var i = n(5),
  7954.         o = n(30),
  7955.         a = n(56);
  7956.     i(i.S, "Promise", {
  7957.         try: function(e) {
  7958.             var t = o.f(this),
  7959.                 n = a(e);
  7960.             return (n.e ? t.reject : t.resolve)(n.v), t.promise
  7961.         }
  7962.     })
  7963. }, function(e, t, n) {
  7964.     "use strict";
  7965.     var i = n(5),
  7966.         o = n(2),
  7967.         a = n(3),
  7968.         r = n(58),
  7969.         s = n(55);
  7970.     i(i.P + i.R, "Promise", {
  7971.         finally: function(e) {
  7972.             var t = r(this, o.Promise || a.Promise),
  7973.                 n = "function" == typeof e;
  7974.             return this.then(n ? function(n) {
  7975.                 return s(t, e()).then(function() {
  7976.                     return n
  7977.                 })
  7978.             } : e, n ? function(n) {
  7979.                 return s(t, e()).then(function() {
  7980.                     throw n
  7981.                 })
  7982.             } : e)
  7983.         }
  7984.     })
  7985. }, function(e, t, n) {
  7986.     var i = n(3).navigator;
  7987.     e.exports = i && i.userAgent || ""
  7988. }, function(e, t, n) {
  7989.     var i = n(3),
  7990.         o = n(57).set,
  7991.         a = i.MutationObserver || i.WebKitMutationObserver,
  7992.         r = i.process,
  7993.         s = i.Promise,
  7994.         l = "process" == n(17)(r);
  7995.     e.exports = function() {
  7996.         var e, t, n, c = function() {
  7997.             var i, o;
  7998.             for (l && (i = r.domain) && i.exit(); e;) {
  7999.                 o = e.fn, e = e.next;
  8000.                 try {
  8001.                     o()
  8002.                 } catch (i) {
  8003.                     throw e ? n() : t = void 0, i
  8004.                 }
  8005.             }
  8006.             t = void 0, i && i.enter()
  8007.         };
  8008.         if (l) n = function() {
  8009.             r.nextTick(c)
  8010.         };
  8011.         else if (!a || i.navigator && i.navigator.standalone)
  8012.             if (s && s.resolve) {
  8013.                 var u = s.resolve(void 0);
  8014.                 n = function() {
  8015.                     u.then(c)
  8016.                 }
  8017.             } else n = function() {
  8018.                 o.call(i, c)
  8019.             };
  8020.         else {
  8021.             var d = !0,
  8022.                 h = document.createTextNode("");
  8023.             new a(c).observe(h, {
  8024.                 characterData: !0
  8025.             }), n = function() {
  8026.                 h.data = d = !d
  8027.             }
  8028.         }
  8029.         return function(i) {
  8030.             var o = {
  8031.                 fn: i,
  8032.                 next: void 0
  8033.             };
  8034.             t && (t.next = o), e || (e = o, n()), t = o
  8035.         }
  8036.     }
  8037. }, function(e, t) {
  8038.     e.exports = function(e, t, n) {
  8039.         var i = void 0 === n;
  8040.         switch (t.length) {
  8041.             case 0:
  8042.                 return i ? e() : e.call(n);
  8043.             case 1:
  8044.                 return i ? e(t[0]) : e.call(n, t[0]);
  8045.             case 2:
  8046.                 return i ? e(t[0], t[1]) : e.call(n, t[0], t[1]);
  8047.             case 3:
  8048.                 return i ? e(t[0], t[1], t[2]) : e.call(n, t[0], t[1], t[2]);
  8049.             case 4:
  8050.                 return i ? e(t[0], t[1], t[2], t[3]) : e.call(n, t[0], t[1], t[2], t[3])
  8051.         }
  8052.         return e.apply(n, t)
  8053.     }
  8054. }, function(e, t, n) {
  8055.     "use strict";
  8056.     var i, o, a, r, s = n(40),
  8057.         l = n(3),
  8058.         c = n(10),
  8059.         u = n(33),
  8060.         d = n(5),
  8061.         h = n(6),
  8062.         f = n(20),
  8063.         m = n(32),
  8064.         g = n(16),
  8065.         p = n(58),
  8066.         v = n(57).set,
  8067.         y = n(154)(),
  8068.         k = n(30),
  8069.         S = n(56),
  8070.         C = n(153),
  8071.         w = n(55),
  8072.         b = l.TypeError,
  8073.         x = l.process,
  8074.         M = x && x.versions,
  8075.         _ = M && M.v8 || "",
  8076.         T = l.Promise,
  8077.         L = "process" == u(x),
  8078.         P = function() {},
  8079.         K = o = k.f,
  8080.         $ = !! function() {
  8081.             try {
  8082.                 var e = T.resolve(1),
  8083.                     t = (e.constructor = {})[n(4)("species")] = function(e) {
  8084.                         e(P, P)
  8085.                     };
  8086.                 return (L || "function" == typeof PromiseRejectionEvent) && e.then(P) instanceof t && 0 !== _.indexOf("6.6") && -1 === C.indexOf("Chrome/66")
  8087.             } catch (e) {}
  8088.         }(),
  8089.         O = function(e) {
  8090.             var t;
  8091.             return !(!h(e) || "function" != typeof(t = e.then)) && t
  8092.         },
  8093.         I = function(e, t) {
  8094.             if (!e._n) {
  8095.                 e._n = !0;
  8096.                 var n = e._c;
  8097.                 y(function() {
  8098.                     for (var i = e._v, o = 1 == e._s, a = 0, r = function(t) {
  8099.                             var n, a, r, s = o ? t.ok : t.fail,
  8100.                                 l = t.resolve,
  8101.                                 c = t.reject,
  8102.                                 u = t.domain;
  8103.                             try {
  8104.                                 s ? (o || (2 == e._h && z(e), e._h = 1), !0 === s ? n = i : (u && u.enter(), n = s(i), u && (u.exit(), r = !0)), n === t.promise ? c(b("Promise-chain cycle")) : (a = O(n)) ? a.call(n, l, c) : l(n)) : c(i)
  8105.                             } catch (e) {
  8106.                                 u && !r && u.exit(), c(e)
  8107.                             }
  8108.                         }; n.length > a;) r(n[a++]);
  8109.                     e._c = [], e._n = !1, t && !e._h && A(e)
  8110.                 })
  8111.             }
  8112.         },
  8113.         A = function(e) {
  8114.             v.call(l, function() {
  8115.                 var t, n, i, o = e._v,
  8116.                     a = E(e);
  8117.                 if (a && (t = S(function() {
  8118.                         L ? x.emit("unhandledRejection", o, e) : (n = l.onunhandledrejection) ? n({
  8119.                             promise: e,
  8120.                             reason: o
  8121.                         }) : (i = l.console) && i.error && i.error("Unhandled promise rejection", o)
  8122.                     }), e._h = L || E(e) ? 2 : 1), e._a = void 0, a && t.e) throw t.v
  8123.             })
  8124.         },
  8125.         E = function(e) {
  8126.             return 1 !== e._h && 0 === (e._a || e._c).length
  8127.         },
  8128.         z = function(e) {
  8129.             v.call(l, function() {
  8130.                 var t;
  8131.                 L ? x.emit("rejectionHandled", e) : (t = l.onrejectionhandled) && t({
  8132.                     promise: e,
  8133.                     reason: e._v
  8134.                 })
  8135.             })
  8136.         },
  8137.         R = function(e) {
  8138.             var t = this;
  8139.             t._d || (t._d = !0, (t = t._w || t)._v = e, t._s = 2, t._a || (t._a = t._c.slice()), I(t, !0))
  8140.         },
  8141.         F = function(e) {
  8142.             var t, n = this;
  8143.             if (!n._d) {
  8144.                 n._d = !0, n = n._w || n;
  8145.                 try {
  8146.                     if (n === e) throw b("Promise can't be resolved itself");
  8147.                     (t = O(e)) ? y(function() {
  8148.                         var i = {
  8149.                             _w: n,
  8150.                             _d: !1
  8151.                         };
  8152.                         try {
  8153.                             t.call(e, c(F, i, 1), c(R, i, 1))
  8154.                         } catch (e) {
  8155.                             R.call(i, e)
  8156.                         }
  8157.                     }): (n._v = e, n._s = 1, I(n, !1))
  8158.                 } catch (e) {
  8159.                     R.call({
  8160.                         _w: n,
  8161.                         _d: !1
  8162.                     }, e)
  8163.                 }
  8164.             }
  8165.         };
  8166.     $ || (T = function(e) {
  8167.         m(this, T, "Promise", "_h"), f(e), i.call(this);
  8168.         try {
  8169.             e(c(F, this, 1), c(R, this, 1))
  8170.         } catch (e) {
  8171.             R.call(this, e)
  8172.         }
  8173.     }, (i = function(e) {
  8174.         this._c = [], this._a = void 0, this._s = 0, this._d = !1, this._v = void 0, this._h = 0, this._n = !1
  8175.     }).prototype = n(29)(T.prototype, {
  8176.         then: function(e, t) {
  8177.             var n = K(p(this, T));
  8178.             return n.ok = "function" != typeof e || e, n.fail = "function" == typeof t && t, n.domain = L ? x.domain : void 0, this._c.push(n), this._a && this._a.push(n), this._s && I(this, !1), n.promise
  8179.         },
  8180.         catch: function(e) {
  8181.             return this.then(void 0, e)
  8182.         }
  8183.     }), a = function() {
  8184.         var e = new i;
  8185.         this.promise = e, this.resolve = c(F, e, 1), this.reject = c(R, e, 1)
  8186.     }, k.f = K = function(e) {
  8187.         return e === T || e === r ? new a(e) : o(e)
  8188.     }), d(d.G + d.W + d.F * !$, {
  8189.         Promise: T
  8190.     }), n(25)(T, "Promise"), n(54)("Promise"), r = n(2).Promise, d(d.S + d.F * !$, "Promise", {
  8191.         reject: function(e) {
  8192.             var t = K(this);
  8193.             return (0, t.reject)(e), t.promise
  8194.         }
  8195.     }), d(d.S + d.F * (s || !$), "Promise", {
  8196.         resolve: function(e) {
  8197.             return w(s && this === r ? T : this, e)
  8198.         }
  8199.     }), d(d.S + d.F * !($ && n(53)(function(e) {
  8200.         T.all(e).catch(P)
  8201.     })), "Promise", {
  8202.         all: function(e) {
  8203.             var t = this,
  8204.                 n = K(t),
  8205.                 i = n.resolve,
  8206.                 o = n.reject,
  8207.                 a = S(function() {
  8208.                     var n = [],
  8209.                         a = 0,
  8210.                         r = 1;
  8211.                     g(e, !1, function(e) {
  8212.                         var s = a++,
  8213.                             l = !1;
  8214.                         n.push(void 0), r++, t.resolve(e).then(function(e) {
  8215.                             l || (l = !0, n[s] = e, --r || i(n))
  8216.                         }, o)
  8217.                     }), --r || i(n)
  8218.                 });
  8219.             return a.e && o(a.v), n.promise
  8220.         },
  8221.         race: function(e) {
  8222.             var t = this,
  8223.                 n = K(t),
  8224.                 i = n.reject,
  8225.                 o = S(function() {
  8226.                     g(e, !1, function(e) {
  8227.                         t.resolve(e).then(n.resolve, i)
  8228.                     })
  8229.                 });
  8230.             return o.e && i(o.v), n.promise
  8231.         }
  8232.     })
  8233. }, function(e, t) {
  8234.     e.exports = function() {}
  8235. }, function(e, t, n) {
  8236.     "use strict";
  8237.     var i = n(157),
  8238.         o = n(61),
  8239.         a = n(18),
  8240.         r = n(37);
  8241.     e.exports = n(41)(Array, "Array", function(e, t) {
  8242.         this._t = r(e), this._i = 0, this._k = t
  8243.     }, function() {
  8244.         var e = this._t,
  8245.             t = this._k,
  8246.             n = this._i++;
  8247.         return !e || n >= e.length ? (this._t = void 0, o(1)) : o(0, "keys" == t ? n : "values" == t ? e[n] : [n, e[n]])
  8248.     }, "values"), a.Arguments = a.Array, i("keys"), i("values"), i("entries")
  8249. }, function(e, t, n) {
  8250.     var i = n(19),
  8251.         o = n(34),
  8252.         a = n(36)("IE_PROTO"),
  8253.         r = Object.prototype;
  8254.     e.exports = Object.getPrototypeOf || function(e) {
  8255.         return e = o(e), i(e, a) ? e[a] : "function" == typeof e.constructor && e instanceof e.constructor ? e.constructor.prototype : e instanceof Object ? r : null
  8256.     }
  8257. }, function(e, t, n) {
  8258.     var i = n(43),
  8259.         o = Math.max,
  8260.         a = Math.min;
  8261.     e.exports = function(e, t) {
  8262.         return (e = i(e)) < 0 ? o(e + t, 0) : a(e, t)
  8263.     }
  8264. }, function(e, t, n) {
  8265.     var i = n(37),
  8266.         o = n(26),
  8267.         a = n(160);
  8268.     e.exports = function(e) {
  8269.         return function(t, n, r) {
  8270.             var s, l = i(t),
  8271.                 c = o(l.length),
  8272.                 u = a(r, c);
  8273.             if (e && n != n) {
  8274.                 for (; c > u;)
  8275.                     if ((s = l[u++]) != s) return !0
  8276.             } else
  8277.                 for (; c > u; u++)
  8278.                     if ((e || u in l) && l[u] === n) return e || u || 0;
  8279.             return !e && -1
  8280.         }
  8281.     }
  8282. }, function(e, t, n) {
  8283.     var i = n(19),
  8284.         o = n(37),
  8285.         a = n(161)(!1),
  8286.         r = n(36)("IE_PROTO");
  8287.     e.exports = function(e, t) {
  8288.         var n, s = o(e),
  8289.             l = 0,
  8290.             c = [];
  8291.         for (n in s) n != r && i(s, n) && c.push(n);
  8292.         for (; t.length > l;) i(s, n = t[l++]) && (~a(c, n) || c.push(n));
  8293.         return c
  8294.     }
  8295. }, function(e, t, n) {
  8296.     var i = n(162),
  8297.         o = n(63);
  8298.     e.exports = Object.keys || function(e) {
  8299.         return i(e, o)
  8300.     }
  8301. }, function(e, t, n) {
  8302.     var i = n(7),
  8303.         o = n(9),
  8304.         a = n(163);
  8305.     e.exports = n(8) ? Object.defineProperties : function(e, t) {
  8306.         o(e);
  8307.         for (var n, r = a(t), s = r.length, l = 0; s > l;) i.f(e, n = r[l++], t[n]);
  8308.         return e
  8309.     }
  8310. }, function(e, t, n) {
  8311.     "use strict";
  8312.     var i = n(66),
  8313.         o = n(38),
  8314.         a = n(25),
  8315.         r = {};
  8316.     n(11)(r, n(4)("iterator"), function() {
  8317.         return this
  8318.     }), e.exports = function(e, t, n) {
  8319.         e.prototype = i(r, {
  8320.             next: o(1, n)
  8321.         }), a(e, t + " Iterator")
  8322.     }
  8323. }, function(e, t, n) {
  8324.     e.exports = n(11)
  8325. }, function(e, t, n) {
  8326.     var i = n(6);
  8327.     e.exports = function(e, t) {
  8328.         if (!i(e)) return e;
  8329.         var n, o;
  8330.         if (t && "function" == typeof(n = e.toString) && !i(o = n.call(e))) return o;
  8331.         if ("function" == typeof(n = e.valueOf) && !i(o = n.call(e))) return o;
  8332.         if (!t && "function" == typeof(n = e.toString) && !i(o = n.call(e))) return o;
  8333.         throw TypeError("Can't convert object to primitive value")
  8334.     }
  8335. }, function(e, t, n) {
  8336.     e.exports = !n(8) && !n(27)(function() {
  8337.         return 7 != Object.defineProperty(n(39)("div"), "a", {
  8338.             get: function() {
  8339.                 return 7
  8340.             }
  8341.         }).a
  8342.     })
  8343. }, function(e, t, n) {
  8344.     var i = n(43),
  8345.         o = n(42);
  8346.     e.exports = function(e) {
  8347.         return function(t, n) {
  8348.             var a, r, s = String(o(t)),
  8349.                 l = i(n),
  8350.                 c = s.length;
  8351.             return l < 0 || l >= c ? e ? "" : void 0 : (a = s.charCodeAt(l)) < 55296 || a > 56319 || l + 1 === c || (r = s.charCodeAt(l + 1)) < 56320 || r > 57343 ? e ? s.charAt(l) : a : e ? s.slice(l, l + 2) : r - 56320 + (a - 55296 << 10) + 65536
  8352.         }
  8353.     }
  8354. }, function(e, t, n) {
  8355.     n(44), n(21), n(24), n(156), n(152), n(151), e.exports = n(2).Promise
  8356. }, function(e, t, n) {
  8357.     "use strict";
  8358.     var i = l(n(22)),
  8359.         o = l(n(15)),
  8360.         a = l(n(14)),
  8361.         r = l(n(0)),
  8362.         s = l(n(1));
  8363.  
  8364.     function l(e) {
  8365.         return e && e.__esModule ? e : {
  8366.             default: e
  8367.         }
  8368.     }
  8369.     window.Servers = n(145), window.SocketClient = n(144), window.SocketManager = n(143), window.API = n(142), window.World = n(139), window.gMap = n(138), window.Engine = n(137), window.Sound = n(121), window.Loop = n(120), window.Game = n(119), window.Cache = n(112), window.MassCache = n(111), window.NickCache = n(110), window.Camera = n(109), window.Client = n(108), window.Sectors = n(107), window.Targeting = n(106), window.Chat = n(105), window.Languages = n(104), window.Hotkeys = n(98), window.HotkeysManager = n(97), window.Menu = n(96), window.Theming = n(95), window.Reader = n(94), window.Storage = n(46), window.Profile = n(92), window.Listener = n(91), window.HUD = n(90), window.HUDStats = n(89), window.FPS = n(88), window.Packets = n(87), window.ServerHandler = n(86), window.Settings = n(85), window.Virus = n(84), window.Food = n(83), window.Commands = n(82), window.TeamList = n(81), window.TeamPlayers = n(80), window.SpectateTarget = n(79), window.Minimap = n(78), window.STE = n(77), window.Leaderboard = n(76), window.HotkeysPanel = n(75), window.Socket = n(74), window.ChatRoom = n(73), window.RGB = n(72), window.Player = n(71), window.Scenario = n(70), window.LangHandler = n(69), window.CommandManager = n(68), window.Wager = n(67), window.isUltra = !1, window.HSLO = function() {
  8370.         function e() {
  8371.             (0, r.default)(this, e)
  8372.         }
  8373.         return (0, s.default)(e, null, [{
  8374.             key: "init",
  8375.             value: function() {
  8376.                 var e = this;
  8377.                 this.time = Date.now(), Servers.getStats(), SocketClient.init(), Wager.init(), Storage.init(), HUD.init(), Engine.init(), Client.init(), Camera.init(), TeamPlayers.init(), Game.init(), Servers.init(), window.googleLoaded && API.init(), SocketClient.connect("na.cellz.io:4000"), this.loop = new Loop(function() {
  8378.                     e.run()
  8379.                 }), setInterval(function() {
  8380.                     Listener.send()
  8381.                 }, 40), window.onresize = function() {
  8382.                     return e.resizeScreen
  8383.                 }, this.resizeScreen(), this.verifyToken = ""
  8384.             }
  8385.         }, {
  8386.             key: "captchaLoaded",
  8387.             value: function() {
  8388.                 var e = (0, a.default)(o.default.mark(function e(t) {
  8389.                     return o.default.wrap(function(e) {
  8390.                         for (;;) switch (e.prev = e.next) {
  8391.                             case 0:
  8392.                                 return e.next = 2, this.getVerifyToken(t);
  8393.                             case 2:
  8394.                                 this.verifyToken = e.sent, SocketClient.sendVerifyToken(), setTimeout(function() {
  8395.                                     grecaptcha.reset(), grecaptcha.execute()
  8396.                                 }, 72e5);
  8397.                             case 5:
  8398.                             case "end":
  8399.                                 return e.stop()
  8400.                         }
  8401.                     }, e, this)
  8402.                 }));
  8403.                 return function(t) {
  8404.                     return e.apply(this, arguments)
  8405.                 }
  8406.             }()
  8407.         }, {
  8408.             key: "getVerifyToken",
  8409.             value: function(e) {
  8410.                 return new i.default(function(t, n) {
  8411.                     $.post("http://main.cellz.io/token", {
  8412.                         token: e
  8413.                     }, function(e) {
  8414.                         t(e)
  8415.                     })
  8416.                 })
  8417.             }
  8418.         }, {
  8419.             key: "resizeScreen",
  8420.             value: function() {
  8421.                 Game.resizeCanvas(), window.innerHeight < 470 ? ($("#menu-overlay #player-data")[0].style.transform = "scale(0.4) translate(-110%, -125%)", $("#topBannerAd, #bottomBannerAd").css({
  8422.                     transform: "translateX(-48%) scale(0.5)"
  8423.                 })) : window.innerHeight < 570 ? ($("#menu-overlay #player-data")[0].style.transform = "scale(0.5) translate(-80%, -100%)", $("#topBannerAd, #bottomBannerAd").css({
  8424.                     transform: "translateX(-46%) scale(0.6)"
  8425.                 })) : window.innerHeight < 630 ? ($("#menu-overlay #player-data")[0].style.transform = "scale(0.6) translate(-75%, -84%)", $("#topBannerAd, #bottomBannerAd").css({
  8426.                     transform: "translateX(-48%) scale(0.7)"
  8427.                 })) : window.innerHeight < 710 ? ($("#menu-overlay #player-data")[0].style.transform = "scale(0.7) translate(-70%, -72%)", $("#topBannerAd, #bottomBannerAd").css({
  8428.                     transform: "translateX(-50%) scale(0.8)"
  8429.                 })) : window.innerHeight < 794 ? ($("#menu-overlay #player-data")[0].style.transform = "scale(0.8) translate(-60%, -65%)", $("#topBannerAd, #bottomBannerAd").css({
  8430.                     transform: "translateX(-49%) scale(0.9)"
  8431.                 })) : ($("#menu-overlay #player-data")[0].style.transform = "translate(-50%, -50%)", $("#topBannerAd, #bottomBannerAd").css({
  8432.                     transform: "translateX(-50%)"
  8433.                 }))
  8434.             }
  8435.         }, {
  8436.             key: "run",
  8437.             value: function() {
  8438.                 this.time = Date.now(), Engine.update(), Client.update(), Camera.update(), Game.run(), Minimap.run(), FPS.run(), TeamList.update(), HUDStats.update(), SpectateTarget.update()
  8439.             }
  8440.         }, {
  8441.             key: "browserVersion",
  8442.             value: function() {
  8443.                 var e = navigator.userAgent.match(/Chrom(e|ium)\/([0-9]+)\./);
  8444.                 return !!e && parseInt(e[2], 10)
  8445.             }
  8446.         }]), e
  8447.     }(), HSLO.init()
  8448. }]);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement