// Generated by Construct 2, the HTML5 game and app creator :: http://www.scirra.com 'use strict'; var aa, ba, ca, J, da, ea, ia, R, ja, ka, la, oa, pa, ra, S, sa, ta, T, ua, xa, ya, Aa, Ba, Ca, Da, Ea, V, Fa, Ha, Ia, Ja, Ka, La, Ma, Na, Oa, Pa, Ua, Va, Wa, Xa, Ya, Za, $a, ab, bb, cb, db, eb, fb, gb, hb, ib, jb, kb, lb, mb, nb, ob, pb, qb, rb, sb, tb, vb, wb, xb, yb, zb, Ab, Bb, Cb, Db, Eb, Fb, Gb, Hb, Ib, Jb, Kb, Lb, Mb, Nb, Ob, Pb, Qb, Rb, Sb, Tb, Ub, Vb, Wb, Xb, Yb, Zb, W, $b, ac = {}, bc = {}; "function" !== typeof Object.getPrototypeOf && (Object.getPrototypeOf = "object" === typeof "test".__proto__ ? function(k) { return k.__proto__ } : function(k) { return k.constructor.prototype }); (function() { function k(c, e, m, f) { this.set(c, e, m, f) } function r() { this.Xa = this.Wa = this.Za = this.Ya = this.jb = this.ib = this.ua = this.ta = 0 } function a(c, e, m, f) { c < e ? m < f ? (w = c < m ? c : m, y = e > f ? e : f) : (w = c < f ? c : f, y = e > m ? e : m) : m < f ? (w = e < m ? e : m, y = c > f ? c : f) : (w = e < f ? e : f, y = c > m ? c : m) } function b() { this.items = this.Yc = null; this.Uf = 0; e && (this.Yc = new Set); this.sg = []; this.je = !0 } function s(c) { m[v++] = c } function g() { this.X = this.Pj = this.y = this.sk = 0 } function d(c) { this.fb = []; this.ai = this.ci = this.di = this.bi = 0; this.Kh(c) } function u(c, e) { this.vk = c; this.uk = e; this.cells = {} } function t(c, e) { this.vk = c; this.uk = e; this.cells = {} } function n(c, e, m) { var f; return K.length ? (f = K.pop(), f.cl = c, f.x = e, f.y = m, f) : new aa(c, e, m) } function f(c, e, m) { this.cl = c; this.x = e; this.y = m; this.mb = new ba } function p(c, e, m) { var f; return E.length ? (f = E.pop(), f.cl = c, f.x = e, f.y = m, f) : new ca(c, e, m) } function x(c, e, m) { this.cl = c; this.x = e; this.y = m; this.mb = []; this.Tf = !0; this.qd = new ba; this.wg = !1 } function h(c, e) { return c.bd - e.bd } J = function(c) { window.console && window.console.log && window.console.log(c) }; da = function(c) { window.console && window.console.error && window.console.error(c) }; ea = function(c) { return "undefined" === typeof c }; ia = function(c) { return "number" === typeof c }; R = function(c) { return "string" === typeof c }; ja = function(c) { return 0 < c && 0 === (c - 1 & c) }; ka = function(c) { --c; for (var e = 1; 32 > e; e <<= 1) c |= c >> e; return c + 1 }; la = function(c) { return 0 > c ? -c : c }; oa = function(c, e) { return c > e ? c : e }; pa = function(c, e) { return c < e ? c : e }; ra = Math.PI; S = function(c) { return 0 <= c ? c | 0 : (c | 0) - 1 }; sa = function(c) { var e = c | 0; return e === c ? e : e + 1 }; ta = function(c, e, m, f, v, h, l, q) { var g, d, p, a; c < m ? (d = c, g = m) : (d = m, g = c); v < l ? (a = v, p = l) : (a = l, p = v); if (g < a || d > p) return !1; e < f ? (d = e, g = f) : (d = f, g = e); h < q ? (a = h, p = q) : (a = q, p = h); if (g < a || d > p) return !1; g = v - c + l - m; d = h - e + q - f; c = m - c; e = f - e; v = l - v; h = q - h; q = la(e * v - h * c); return la(v * d - h * g) > q ? !1 : la(c * d - e * g) <= q }; k.prototype.set = function(c, e, m, f) { this.left = c; this.top = e; this.right = m; this.bottom = f }; k.prototype.ni = function(c) { this.left = c.left; this.top = c.top; this.right = c.right; this.bottom = c.bottom }; k.prototype.width = function() { return this.right - this.left }; k.prototype.height = function() { return this.bottom - this.top }; k.prototype.offset = function(c, e) { this.left += c; this.top += e; this.right += c; this.bottom += e; return this }; k.prototype.normalize = function() { var c = 0; this.left > this.right && (c = this.left, this.left = this.right, this.right = c); this.top > this.bottom && (c = this.top, this.top = this.bottom, this.bottom = c) }; k.prototype.Bt = function(c) { return !(c.right < this.left || c.bottom < this.top || c.left > this.right || c.top > this.bottom) }; k.prototype.Ct = function(c, e, m) { return !(c.right + e < this.left || c.bottom + m < this.top || c.left + e > this.right || c.top + m > this.bottom) }; k.prototype.yb = function(c, e) { return c >= this.left && c <= this.right && e >= this.top && e <= this.bottom }; k.prototype.yi = function(c) { return this.left === c.left && this.top === c.top && this.right === c.right && this.bottom === c.bottom }; T = k; r.prototype.Jh = function(c) { this.ta = c.left; this.ua = c.top; this.ib = c.right; this.jb = c.top; this.Ya = c.right; this.Za = c.bottom; this.Wa = c.left; this.Xa = c.bottom }; r.prototype.yp = function(c, e) { if (0 === e) this.Jh(c); else { var m = Math.sin(e), f = Math.cos(e), v = c.left * m, h = c.top * m, l = c.right * m, m = c.bottom * m, q = c.left * f, g = c.top * f, d = c.right * f, f = c.bottom * f; this.ta = q - h; this.ua = g + v; this.ib = d - h; this.jb = g + l; this.Ya = d - m; this.Za = f + l; this.Wa = q - m; this.Xa = f + v } }; r.prototype.offset = function(c, e) { this.ta += c; this.ua += e; this.ib += c; this.jb += e; this.Ya += c; this.Za += e; this.Wa += c; this.Xa += e; return this }; var w = 0, y = 0; r.prototype.mn = function(c) { a(this.ta, this.ib, this.Ya, this.Wa); c.left = w; c.right = y; a(this.ua, this.jb, this.Za, this.Xa); c.top = w; c.bottom = y }; r.prototype.yb = function(c, e) { var m = this.ib - this.ta, f = this.jb - this.ua, v = this.Ya - this.ta, h = this.Za - this.ua, l = c - this.ta, q = e - this.ua, g = m * m + f * f, d = m * v + f * h, f = m * l + f * q, p = v * v + h * h, a = v * l + h * q, K = 1 / (g * p - d * d), m = (p * f - d * a) * K, g = (g * a - d * f) * K; if (0 <= m && 0 < g && 1 > m + g) return !0; m = this.Wa - this.ta; f = this.Xa - this.ua; g = m * m + f * f; d = m * v + f * h; f = m * l + f * q; K = 1 / (g * p - d * d); m = (p * f - d * a) * K; g = (g * a - d * f) * K; return 0 <= m && 0 < g && 1 > m + g }; r.prototype.ge = function(c, e) { if (e) switch (c) { case 0: return this.ta; case 1: return this.ib; case 2: return this.Ya; case 3: return this.Wa; case 4: return this.ta; default: return this.ta } else switch (c) { case 0: return this.ua; case 1: return this.jb; case 2: return this.Za; case 3: return this.Xa; case 4: return this.ua; default: return this.ua } }; r.prototype.Ko = function() { return (this.ta + this.ib + this.Ya + this.Wa) / 4 }; r.prototype.Lo = function() { return (this.ua + this.jb + this.Za + this.Xa) / 4 }; r.prototype.ao = function(c) { var e = c.Ko(), m = c.Lo(); if (this.yb(e, m)) return !0; e = this.Ko(); m = this.Lo(); if (c.yb(e, m)) return !0; var f, v, h, l, q, g, d, p; for (d = 0; 4 > d; d++) for (p = 0; 4 > p; p++) if (e = this.ge(d, !0), m = this.ge(d, !1), f = this.ge(d + 1, !0), v = this.ge(d + 1, !1), h = c.ge(p, !0), l = c.ge(p, !1), q = c.ge(p + 1, !0), g = c.ge(p + 1, !1), ta(e, m, f, v, h, l, q, g)) return !0; return !1 }; ua = r; xa = function(c, e) { for (var m in e) e.hasOwnProperty(m) && (c[m] = e[m]); return c }; ya = function(c, e) { var m, f; e = S(e); if (!(0 > e || e >= c.length)) { m = e; for (f = c.length - 1; m < f; m++) c[m] = c[m + 1]; c.length = f } }; Aa = function(c, e) { c.length = e.length; var m, f; m = 0; for (f = e.length; m < f; m++) c[m] = e[m] }; Ba = function(c, e) { c.push.apply(c, e) }; Ca = function(c, e) { var m, f; m = 0; for (f = c.length; m < f; ++m) if (c[m] === e) return m; return -1 }; Da = function(c, e) { var m = Ca(c, e); - 1 !== m && ya(c, m) }; Ea = function(c, e, m) { return c < e ? e : c > m ? m : c }; V = function(c) { return c / (180 / ra) }; Fa = function(c) { return 180 / ra * c }; Ha = function(c) { c %= 360; 0 > c && (c += 360); return c }; Ia = function(c) { c %= 2 * ra; 0 > c && (c += 2 * ra); return c }; Ja = function(c) { return Ha(Fa(c)) }; Ka = function(c) { return Ia(V(c)) }; La = function(c, e, m, f) { return Math.atan2(f - e, m - c) }; Ma = function(c, e) { if (c === e) return 0; var m = Math.sin(c), f = Math.cos(c), v = Math.sin(e), h = Math.cos(e), m = m * v + f * h; return 1 <= m ? 0 : -1 >= m ? ra : Math.acos(m) }; Na = function(c, e, m) { var f = Math.sin(c), v = Math.cos(c), h = Math.sin(e), l = Math.cos(e); return Math.acos(f * h + v * l) > m ? 0 < v * h - f * l ? Ia(c + m) : Ia(c - m) : Ia(e) }; Oa = function(c, e) { var m = Math.sin(c), f = Math.cos(c), v = Math.sin(e), h = Math.cos(e); return 0 >= f * v - m * h }; Pa = function(c, e, m, f, v, h) { if (0 === m) return h ? c : e; var l = Math.sin(m); m = Math.cos(m); c -= f; e -= v; var q = c * l; c = c * m - e * l; e = e * m + q; return h ? c + f : e + v }; Ua = function(c, e, m, f) { c = m - c; e = f - e; return Math.sqrt(c * c + e * e) }; Va = function(c, e) { return !c !== !e }; Wa = function(c) { for (var e in c) if (c.hasOwnProperty(e)) return !0; return !1 }; Xa = function(c) { for (var e in c) c.hasOwnProperty(e) && delete c[e] }; var l = +new Date; Ya = function() { if ("undefined" !== typeof window.performance) { var c = window.performance; if ("undefined" !== typeof c.now) return c.now(); if ("undefined" !== typeof c.webkitNow) return c.webkitNow(); if ("undefined" !== typeof c.mozNow) return c.mozNow(); if ("undefined" !== typeof c.msNow) return c.msNow() } return Date.now() - l }; var q = !1, A = q = !1, c = !1; "undefined" !== typeof window && (q = /chrome/i.test(navigator.userAgent) || /chromium/i.test(navigator.userAgent), q = !q && /safari/i.test(navigator.userAgent), A = /(iphone|ipod|ipad)/i.test(navigator.userAgent), c = window.c2ejecta); var e = !q && !c && !A && "undefined" !== typeof Set && "undefined" !== typeof Set.prototype.forEach; b.prototype.contains = function(c) { return this.Rd() ? !1 : e ? this.Yc.has(c) : this.items && this.items.hasOwnProperty(c) }; b.prototype.add = function(c) { if (e) this.Yc.has(c) || (this.Yc.add(c), this.je = !1); else { var m = c.toString(), f = this.items; f ? f.hasOwnProperty(m) || (f[m] = c, this.Uf++, this.je = !1) : (this.items = {}, this.items[m] = c, this.Uf = 1, this.je = !1) } }; b.prototype.remove = function(c) { if (!this.Rd()) if (e) this.Yc.has(c) && (this.Yc["delete"](c), this.je = !1); else if (this.items) { c = c.toString(); var m = this.items; m.hasOwnProperty(c) && (delete m[c], this.Uf--, this.je = !1) } }; b.prototype.clear = function() { this.Rd() || (e ? this.Yc.clear() : (this.items = null, this.Uf = 0), this.sg.length = 0, this.je = !0) }; b.prototype.Rd = function() { return 0 === this.count() }; b.prototype.count = function() { return e ? this.Yc.size : this.Uf }; var m = null, v = 0; b.prototype.Wu = function() { if (!this.je) { if (e) this.sg.length = this.Yc.size, m = this.sg, v = 0, this.Yc.forEach(s), m = null, v = 0; else { var c = this.sg; c.length = this.Uf; var f, h = 0, l = this.items; if (l) for (f in l) l.hasOwnProperty(f) && (c[h++] = l[f]) } this.je = !0 } }; b.prototype.be = function() { this.Wu(); return this.sg }; ba = b; new ba; Za = function(c, m) { e ? $a(c, m.Yc) : ab(c, m.be()) }; $a = function(c, e) { var m, f, v, h; f = m = 0; for (v = c.length; m < v; ++m) h = c[m], e.has(h) || (c[f++] = h); c.length = f }; ab = function(c, e) { var m, f, v, h; f = m = 0; for (v = c.length; m < v; ++m) h = c[m], -1 === Ca(e, h) && (c[f++] = h); c.length = f }; g.prototype.add = function(c) { this.y = c - this.sk; this.Pj = this.X + this.y; this.sk = this.Pj - this.X - this.y; this.X = this.Pj }; g.prototype.reset = function() { this.X = this.Pj = this.y = this.sk = 0 }; bb = g; cb = function(c) { return c.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&") }; d.prototype.Kh = function(c) { this.np = c; this.Wc = c.length / 2; this.fb.length = c.length; this.fi = this.gi = -1; this.pn = 0 }; d.prototype.Qf = function() { return !this.np.length }; d.prototype.na = function() { for (var c = this.fb, e = c[0], m = e, f = c[1], v = f, h, l, q = 1, g = this.Wc; q < g; ++q) l = 2 * q, h = c[l], l = c[l + 1], h < e && (e = h), h > m && (m = h), l < f && (f = l), l > v && (v = l); this.bi = e; this.ci = m; this.di = f; this.ai = v }; d.prototype.Jh = function(c, e, m) { this.fb.length = 8; this.Wc = 4; var f = this.fb; f[0] = c.left - e; f[1] = c.top - m; f[2] = c.right - e; f[3] = c.top - m; f[4] = c.right - e; f[5] = c.bottom - m; f[6] = c.left - e; f[7] = c.bottom - m; this.gi = c.right - c.left; this.fi = c.bottom - c.top; this.na() }; d.prototype.lg = function(c, e, m, f, v) { this.fb.length = 8; this.Wc = 4; var h = this.fb; h[0] = c.ta - e; h[1] = c.ua - m; h[2] = c.ib - e; h[3] = c.jb - m; h[4] = c.Ya - e; h[5] = c.Za - m; h[6] = c.Wa - e; h[7] = c.Xa - m; this.gi = f; this.fi = v; this.na() }; d.prototype.xp = function(c) { this.Wc = c.Wc; Aa(this.fb, c.fb); this.bi = c.bi; this.di - c.di; this.ci = c.ci; this.ai = c.ai }; d.prototype.Ef = function(c, e, m) { if (this.gi !== c || this.fi !== e || this.pn !== m) { this.gi = c; this.fi = e; this.pn = m; var f, v, h, l, q, g = 0, d = 1, p = this.np, a = this.fb; 0 !== m && (g = Math.sin(m), d = Math.cos(m)); m = 0; for (h = this.Wc; m < h; m++) f = 2 * m, v = f + 1, l = p[f] * c, q = p[v] * e, a[f] = l * d - q * g, a[v] = q * d + l * g; this.na() } }; d.prototype.yb = function(c, e) { var m = this.fb; if (c === m[0] && e === m[1]) return !0; var f, v, h, l = this.Wc, q = this.bi - 110, g = this.di - 101, d = this.ci + 131, p = this.ai + 120, a, K, u = 0, Q = 0; for (f = 0; f < l; f++) v = 2 * f, h = (f + 1) % l * 2, a = m[v], v = m[v + 1], K = m[h], h = m[h + 1], ta(q, g, c, e, a, v, K, h) && u++, ta(d, p, c, e, a, v, K, h) && Q++; return 1 === u % 2 || 1 === Q % 2 }; d.prototype.Yg = function(c, e, m) { var f = c.fb, v = this.fb; if (this.yb(f[0] + e, f[1] + m) || c.yb(v[0] - e, v[1] - m)) return !0; var h, l, q, g, d, p, a, K, u, Q, b, E; h = 0; for (g = this.Wc; h < g; h++) for (l = 2 * h, q = (h + 1) % g * 2, K = v[l], l = v[l + 1], u = v[q], Q = v[q + 1], q = 0, a = c.Wc; q < a; q++) if (d = 2 * q, p = (q + 1) % a * 2, b = f[d] + e, d = f[d + 1] + m, E = f[p] + e, p = f[p + 1] + m, ta(K, l, u, Q, b, d, E, p)) return !0; return !1 }; db = d; u.prototype.qe = function(c, e, m) { var f; f = this.cells[c]; return f ? (f = f[e]) ? f : m ? (f = n(this, c, e), this.cells[c][e] = f) : null : m ? (f = n(this, c, e), this.cells[c] = {}, this.cells[c][e] = f) : null }; u.prototype.jc = function(c) { return S(c / this.vk) }; u.prototype.kc = function(c) { return S(c / this.uk) }; u.prototype.update = function(c, e, m) { var f, v, h, l, q; if (e) for (f = e.left, v = e.right; f <= v; ++f) for (h = e.top, l = e.bottom; h <= l; ++h) if (!m || !m.yb(f, h)) if (q = this.qe(f, h, !1)) q.remove(c), q.Rd() && (q.mb.clear(), 1E3 > K.length && K.push(q), this.cells[f][h] = null); if (m) for (f = m.left, v = m.right; f <= v; ++f) for (h = m.top, l = m.bottom; h <= l; ++h) e && e.yb(f, h) || this.qe(f, h, !0).kl(c) }; u.prototype.zj = function(c, e) { var m, f, h, v, l, q; m = this.jc(c.left); h = this.kc(c.top); f = this.jc(c.right); for (l = this.kc(c.bottom); m <= f; ++m) for (v = h; v <= l; ++v)(q = this.qe(m, v, !1)) && q.dump(e) }; eb = u; t.prototype.qe = function(c, e, m) { var f; f = this.cells[c]; return f ? (f = f[e]) ? f : m ? (f = p(this, c, e), this.cells[c][e] = f) : null : m ? (f = p(this, c, e), this.cells[c] = {}, this.cells[c][e] = f) : null }; t.prototype.jc = function(c) { return S(c / this.vk) }; t.prototype.kc = function(c) { return S(c / this.uk) }; t.prototype.update = function(c, e, m) { var f, h, v, l, q; if (e) for (f = e.left, h = e.right; f <= h; ++f) for (v = e.top, l = e.bottom; v <= l; ++v) if (!m || !m.yb(f, v)) if (q = this.qe(f, v, !1)) q.remove(c), q.Rd() && (q.reset(), 1E3 > E.length && E.push(q), this.cells[f][v] = null); if (m) for (f = m.left, h = m.right; f <= h; ++f) for (v = m.top, l = m.bottom; v <= l; ++v) e && e.yb(f, v) || this.qe(f, v, !0).kl(c) }; t.prototype.zj = function(c, e, m, f, v) { var h, l; c = this.jc(c); e = this.kc(e); m = this.jc(m); for (h = this.kc(f); c <= m; ++c) for (f = e; f <= h; ++f)(l = this.qe(c, f, !1)) && l.dump(v) }; t.prototype.Rt = function(c) { var e, m, f, v, h; e = c.left; f = c.top; m = c.right; for (v = c.bottom; e <= m; ++e) for (c = f; c <= v; ++c) if (h = this.qe(e, c, !1)) h.Tf = !1 }; fb = t; var K = []; f.prototype.Rd = function() { return this.mb.Rd() }; f.prototype.kl = function(c) { this.mb.add(c) }; f.prototype.remove = function(c) { this.mb.remove(c) }; f.prototype.dump = function(c) { Ba(c, this.mb.be()) }; aa = f; var E = []; x.prototype.Rd = function() { if (!this.mb.length) return !0; if (this.mb.length > this.qd.count()) return !1; this.Lk(); return !0 }; x.prototype.kl = function(c) { this.qd.contains(c) ? (this.qd.remove(c), this.qd.Rd() && (this.wg = !1)) : this.mb.length ? (this.mb[this.mb.length - 1].jd() > c.jd() && (this.Tf = !1), this.mb.push(c)) : (this.mb.push(c), this.Tf = !0) }; x.prototype.remove = function(c) { this.qd.add(c); this.wg = !0; 30 <= this.qd.count() && this.Lk() }; x.prototype.Lk = function() { this.wg && (this.qd.count() === this.mb.length ? this.reset() : (Za(this.mb, this.qd), this.qd.clear(), this.wg = !1)) }; x.prototype.ks = function() { this.Tf || (this.mb.sort(h), this.Tf = !0) }; x.prototype.reset = function() { this.mb.length = 0; this.Tf = !0; this.qd.clear(); this.wg = !1 }; x.prototype.dump = function(c) { this.Lk(); this.ks(); this.mb.length && c.push(this.mb) }; ca = x; var Q = "lighter xor copy destination-over source-in destination-in source-out destination-out source-atop destination-atop".split(" "); gb = function(c) { return 0 >= c || 11 <= c ? "source-over" : Q[c - 1] }; hb = function(c, e, m) { if (m) switch (c.Cb = m.ONE, c.zb = m.ONE_MINUS_SRC_ALPHA, e) { case 1: c.Cb = m.ONE; c.zb = m.ONE; break; case 3: c.Cb = m.ONE; c.zb = m.ZERO; break; case 4: c.Cb = m.ONE_MINUS_DST_ALPHA; c.zb = m.ONE; break; case 5: c.Cb = m.DST_ALPHA; c.zb = m.ZERO; break; case 6: c.Cb = m.ZERO; c.zb = m.SRC_ALPHA; break; case 7: c.Cb = m.ONE_MINUS_DST_ALPHA; c.zb = m.ZERO; break; case 8: c.Cb = m.ZERO; c.zb = m.ONE_MINUS_SRC_ALPHA; break; case 9: c.Cb = m.DST_ALPHA; c.zb = m.ONE_MINUS_SRC_ALPHA; break; case 10: c.Cb = m.ONE_MINUS_DST_ALPHA, c.zb = m.SRC_ALPHA } }; ib = function(c) { return Math.round(1E6 * c) / 1E6 }; jb = function(c, e) { return "string" !== typeof c || "string" !== typeof e || c.length !== e.length ? !1 : c === e ? !0 : c.toLowerCase() === e.toLowerCase() }; kb = function(c) { c = c.target; return !c || c === document || c === window || document && document.body && c === document.body || jb(c.tagName, "canvas") ? !0 : !1 } })(); var cc = "undefined" !== typeof Float32Array ? Float32Array : Array; function dc(k) { var r = new cc(3); k && (r[0] = k[0], r[1] = k[1], r[2] = k[2]); return r } function ec(k) { var r = new cc(16); k && (r[0] = k[0], r[1] = k[1], r[2] = k[2], r[3] = k[3], r[4] = k[4], r[5] = k[5], r[6] = k[6], r[7] = k[7], r[8] = k[8], r[9] = k[9], r[10] = k[10], r[11] = k[11], r[12] = k[12], r[13] = k[13], r[14] = k[14], r[15] = k[15]); return r } function fc(k, r) { r[0] = k[0]; r[1] = k[1]; r[2] = k[2]; r[3] = k[3]; r[4] = k[4]; r[5] = k[5]; r[6] = k[6]; r[7] = k[7]; r[8] = k[8]; r[9] = k[9]; r[10] = k[10]; r[11] = k[11]; r[12] = k[12]; r[13] = k[13]; r[14] = k[14]; r[15] = k[15] } function gc(k, r) { var a = r[0], b = r[1]; r = r[2]; k[0] *= a; k[1] *= a; k[2] *= a; k[3] *= a; k[4] *= b; k[5] *= b; k[6] *= b; k[7] *= b; k[8] *= r; k[9] *= r; k[10] *= r; k[11] *= r } function hc(k, r, a, b) { b || (b = ec()); var s, g, d, u, t, n, f, p, x = k[0], h = k[1]; k = k[2]; g = a[0]; d = a[1]; s = a[2]; a = r[1]; n = r[2]; x === r[0] && h === a && k === n ? (k = b, k[0] = 1, k[1] = 0, k[2] = 0, k[3] = 0, k[4] = 0, k[5] = 1, k[6] = 0, k[7] = 0, k[8] = 0, k[9] = 0, k[10] = 1, k[11] = 0, k[12] = 0, k[13] = 0, k[14] = 0, k[15] = 1) : (a = x - r[0], n = h - r[1], f = k - r[2], p = 1 / Math.sqrt(a * a + n * n + f * f), a *= p, n *= p, f *= p, r = d * f - s * n, s = s * a - g * f, g = g * n - d * a, (p = Math.sqrt(r * r + s * s + g * g)) ? (p = 1 / p, r *= p, s *= p, g *= p) : g = s = r = 0, d = n * g - f * s, u = f * r - a * g, t = a * s - n * r, (p = Math.sqrt(d * d + u * u + t * t)) ? (p = 1 / p, d *= p, u *= p, t *= p) : t = u = d = 0, b[0] = r, b[1] = d, b[2] = a, b[3] = 0, b[4] = s, b[5] = u, b[6] = n, b[7] = 0, b[8] = g, b[9] = t, b[10] = f, b[11] = 0, b[12] = -(r * x + s * h + g * k), b[13] = -(d * x + u * h + t * k), b[14] = -(a * x + n * h + f * k), b[15] = 1) } (function() { function k(g) { this.te = /msie/i.test(navigator.userAgent) || /trident/i.test(navigator.userAgent); this.height = this.width = 0; this.qn = dc([0, 0, 100]); this.to = dc([0, 0, 0]); this.Sp = dc([0, 1, 0]); this.Lm = dc([1, 1, 1]); this.Bn = !0; this.El = ec(); this.Hc = ec(); this.lo = ec(); this.Ak = ec(); this.p = g; this.Xn() } function r(g, d, a) { this.p = g; this.Lh = d; this.name = a; this.Gc = g.getAttribLocation(d, "aPos"); this.xe = g.getAttribLocation(d, "aTex"); this.ro = g.getUniformLocation(d, "matP"); this.gj = g.getUniformLocation(d, "matMV"); this.Yf = g.getUniformLocation(d, "opacity"); this.so = g.getUniformLocation(d, "samplerFront"); this.oh = g.getUniformLocation(d, "samplerBack"); this.kf = g.getUniformLocation(d, "destStart"); this.jf = g.getUniformLocation(d, "destEnd"); this.Bl = g.getUniformLocation(d, "seconds"); this.Al = g.getUniformLocation(d, "pixelWidth"); this.zl = g.getUniformLocation(d, "pixelHeight"); this.nh = g.getUniformLocation(d, "layerScale"); this.mh = g.getUniformLocation(d, "layerAngle"); this.qh = g.getUniformLocation(d, "viewOrigin"); this.ph = g.getUniformLocation(d, "scrollPos"); this.wt = !!(this.Al || this.zl || this.Bl || this.oh || this.kf || this.jf || this.nh || this.mh || this.qh || this.ph); this.Bo = this.Co = -999; this.ij = 1; this.xo = this.wo = 0; this.zo = this.vo = this.uo = 1; this.Eo = this.Do = this.Go = this.Fo = this.yo = 0; this.tl = []; this.Ao = ec(); this.Yf && g.uniform1f(this.Yf, 1); this.so && g.uniform1i(this.so, 0); this.oh && g.uniform1i(this.oh, 1); this.kf && g.uniform2f(this.kf, 0, 0); this.jf && g.uniform2f(this.jf, 1, 1); this.nh && g.uniform1f(this.nh, 1); this.mh && g.uniform1f(this.mh, 0); this.qh && g.uniform2f(this.qh, 0, 0); this.ph && g.uniform2f(this.ph, 0, 0); this.Ue = !1 } function a(g, d) { this.type = g; this.u = d; this.p = d.p; this.kd = this.Kc = this.$o = 0; this.ja = this.$c = null; this.zp = [] } k.prototype.Xn = function() { var g = this.p, d; this.mo = 1; this.bf = this.we = null; this.ri = 1; g.clearColor(0, 0, 0, 0); g.clear(g.COLOR_BUFFER_BIT); g.enable(g.BLEND); g.blendFunc(g.ONE, g.ONE_MINUS_SRC_ALPHA); g.disable(g.CULL_FACE); g.disable(g.DEPTH_TEST); this.no = g.ONE; this.ko = g.ONE_MINUS_SRC_ALPHA; this.Vl = g.createBuffer(); g.bindBuffer(g.ARRAY_BUFFER, this.Vl); this.Wh = Array(4); this.Qh = Array(4); for (d = 0; 4 > d; d++) this.Wh[d] = g.createBuffer(), g.bindBuffer(g.ARRAY_BUFFER, this.Wh[d]), this.Qh[d] = g.createBuffer(), g.bindBuffer(g.ARRAY_BUFFER, this.Qh[d]); this.Id = 0; this.zt = g.createBuffer(); g.bindBuffer(g.ELEMENT_ARRAY_BUFFER, this.zt); this.Im = new Float32Array(16E3); this.vm = new Float32Array(16E3); this.hu = new Float32Array(32E3); for (var a = new Uint16Array(12E3), b = d = 0; 12E3 > d;) a[d++] = b, a[d++] = b + 1, a[d++] = b + 2, a[d++] = b, a[d++] = b + 2, a[d++] = b + 3, b += 4; g.bufferData(g.ELEMENT_ARRAY_BUFFER, a, g.STATIC_DRAW); this.Wl = this.Ad = 0; this.hb = []; d = this.zk({ src: "varying mediump vec2 vTex;\nuniform lowp float opacity;\nuniform lowp sampler2D samplerFront;\nvoid main(void) {\n\tgl_FragColor = texture2D(samplerFront, vTex);\n\tgl_FragColor *= opacity;\n}" }, "attribute highp vec2 aPos;\nattribute mediump vec2 aTex;\nvarying mediump vec2 vTex;\nuniform highp mat4 matP;\nuniform highp mat4 matMV;\nvoid main(void) {\n\tgl_Position = matP * matMV * vec4(aPos.x, aPos.y, 0.0, 1.0);\n\tvTex = aTex;\n}", ""); this.hb.push(d); d = this.zk({ src: "uniform mediump sampler2D samplerFront;\nvarying lowp float opacity;\nvoid main(void) {\n\tgl_FragColor = texture2D(samplerFront, gl_PointCoord);\n\tgl_FragColor *= opacity;\n}" }, "attribute vec4 aPos;\nvarying float opacity;\nuniform mat4 matP;\nuniform mat4 matMV;\nvoid main(void) {\n\tgl_Position = matP * matMV * vec4(aPos.x, aPos.y, 0.0, 1.0);\n\tgl_PointSize = aPos.z;\n\topacity = aPos.w;\n}", ""); this.hb.push(d); for (var n in ic) ic.hasOwnProperty(n) && this.hb.push(this.zk(ic[n], "attribute highp vec2 aPos;\nattribute mediump vec2 aTex;\nvarying mediump vec2 vTex;\nuniform highp mat4 matP;\nuniform highp mat4 matMV;\nvoid main(void) {\n\tgl_Position = matP * matMV * vec4(aPos.x, aPos.y, 0.0, 1.0);\n\tvTex = aTex;\n}", n)); g.activeTexture(g.TEXTURE0); g.bindTexture(g.TEXTURE_2D, null); this.ie = []; this.Fd = 0; this.Yb = !1; this.yn = this.gh = -1; this.Fg = null; this.Ks = g.createFramebuffer(); this.rp = null; this.Ge = dc([0, 0, 0]); this.Ho = g.getParameter(g.ALIASED_POINT_SIZE_RANGE)[1]; 2048 < this.Ho && (this.Ho = 2048); this.ud(0) }; r.prototype.Dm = function(g) { var d = this.Ao; if (d[0] !== g[0] || d[1] !== g[1] || d[2] !== g[2] || d[3] !== g[3] || d[4] !== g[4] || d[5] !== g[5] || d[6] !== g[6] || d[7] !== g[7] || d[8] !== g[8] || d[9] !== g[9] || d[10] !== g[10] || d[11] !== g[11] || d[12] !== g[12] || d[13] !== g[13] || d[14] !== g[14] || d[15] !== g[15]) fc(g, this.Ao), this.p.uniformMatrix4fv(this.gj, !1, g) }; k.prototype.zk = function(g, d, a) { var b = this.p, n = b.createShader(b.FRAGMENT_SHADER); b.shaderSource(n, g.src); b.compileShader(n); if (!b.getShaderParameter(n, b.COMPILE_STATUS)) return b.deleteShader(n), null; var f = b.createShader(b.VERTEX_SHADER); b.shaderSource(f, d); b.compileShader(f); if (!b.getShaderParameter(f, b.COMPILE_STATUS)) return b.deleteShader(n), b.deleteShader(f), null; d = b.createProgram(); b.attachShader(d, n); b.attachShader(d, f); b.linkProgram(d); if (!b.getProgramParameter(d, b.LINK_STATUS)) return b.deleteShader(n), b.deleteShader(f), b.deleteProgram(d), null; b.useProgram(d); b.deleteShader(n); b.deleteShader(f); a = new r(b, d, a); a.Ik = g.Ik || 0; a.Jk = g.Jk || 0; a.xn = !!g.xn; a.jn = !!g.jn; a.M = g.M || []; g = 0; for (n = a.M.length; g < n; g++) a.M[g][1] = b.getUniformLocation(d, a.M[g][0]), a.tl.push(0), b.uniform1f(a.M[g][1], 0); return a }; k.prototype.$k = function(g) { var d, a; d = 0; for (a = this.hb.length; d < a; d++) if (this.hb[d].name === g) return d; return -1 }; k.prototype.mp = function(g, d, a) { var b = this.Hc, n = this.El, f = [0, 0, 0, 0, 0, 0, 0, 0]; f[0] = b[0] * g + b[4] * d + b[12]; f[1] = b[1] * g + b[5] * d + b[13]; f[2] = b[2] * g + b[6] * d + b[14]; f[3] = b[3] * g + b[7] * d + b[15]; f[4] = n[0] * f[0] + n[4] * f[1] + n[8] * f[2] + n[12] * f[3]; f[5] = n[1] * f[0] + n[5] * f[1] + n[9] * f[2] + n[13] * f[3]; f[6] = n[2] * f[0] + n[6] * f[1] + n[10] * f[2] + n[14] * f[3]; f[7] = -f[2]; 0 !== f[7] && (f[7] = 1 / f[7], f[4] *= f[7], f[5] *= f[7], f[6] *= f[7], a[0] = (.5 * f[4] + .5) * this.width, a[1] = (.5 * f[5] + .5) * this.height) }; k.prototype.kg = function(g, d, a) { if (this.width !== g || this.height !== d || a) { this.oe(); this.width = g; this.height = d; this.p.viewport(0, 0, g, d); d = g / d; var b = this.El, n; n = 1 * Math.tan(45 * Math.PI / 360); d *= n; g = -d; a = -n; b || (b = ec()); var f = d - g, p = n - a; b[0] = 2 / f; b[1] = 0; b[2] = 0; b[3] = 0; b[4] = 0; b[5] = 2 / p; b[6] = 0; b[7] = 0; b[8] = (d + g) / f; b[9] = (n + a) / p; b[10] = -1001 / 999; b[11] = -1; b[12] = 0; b[13] = 0; b[14] = -2E3 / 999; b[15] = 0; hc(this.qn, this.to, this.Sp, this.Hc); g = [0, 0]; d = [0, 0]; this.mp(0, 0, g); this.mp(1, 1, d); this.Lm[0] = 1 / (d[0] - g[0]); this.Lm[1] = -1 / (d[1] - g[1]); g = 0; for (d = this.hb.length; g < d; g++) a = this.hb[g], a.Ue = !1, a.ro && (this.p.useProgram(a.Lh), this.p.uniformMatrix4fv(a.ro, !1, this.El)); this.p.useProgram(this.hb[this.gh].Lh); this.p.bindTexture(this.p.TEXTURE_2D, null); this.p.activeTexture(this.p.TEXTURE1); this.p.bindTexture(this.p.TEXTURE_2D, null); this.p.activeTexture(this.p.TEXTURE0); this.bf = this.we = null } }; k.prototype.sd = function() { hc(this.qn, this.to, this.Sp, this.Hc); gc(this.Hc, this.Lm) }; k.prototype.translate = function(g, d) { if (0 !== g || 0 !== d) { this.Ge[0] = g; this.Ge[1] = d; this.Ge[2] = 0; var a = this.Hc, b = this.Ge, n = b[0], f = b[1], b = b[2]; a[12] = a[0] * n + a[4] * f + a[8] * b + a[12]; a[13] = a[1] * n + a[5] * f + a[9] * b + a[13]; a[14] = a[2] * n + a[6] * f + a[10] * b + a[14]; a[15] = a[3] * n + a[7] * f + a[11] * b + a[15] } }; k.prototype.scale = function(g, d) { if (1 !== g || 1 !== d) this.Ge[0] = g, this.Ge[1] = d, this.Ge[2] = 1, gc(this.Hc, this.Ge) }; k.prototype.gm = function(g) { if (0 !== g) { var d = this.Hc, a, b = Math.sin(g); g = Math.cos(g); var n = d[0], f = d[1], p = d[2], x = d[3], h = d[4], w = d[5], y = d[6], l = d[7]; a ? d !== a && (a[8] = d[8], a[9] = d[9], a[10] = d[10], a[11] = d[11], a[12] = d[12], a[13] = d[13], a[14] = d[14], a[15] = d[15]) : a = d; a[0] = n * g + h * b; a[1] = f * g + w * b; a[2] = p * g + y * b; a[3] = x * g + l * b; a[4] = n * -b + h * g; a[5] = f * -b + w * g; a[6] = p * -b + y * g; a[7] = x * -b + l * g } }; k.prototype.zd = function() { for (var a = !1, d = 0; 16 > d; d++) if (this.lo[d] !== this.Hc[d]) { a = !0; break } a && (a = this.Xc(), a.type = 5, a.ja ? fc(this.Hc, a.ja) : a.ja = ec(this.Hc), fc(this.Hc, this.lo), this.Yb = !1) }; a.prototype.Zr = function() { this.p.bindTexture(this.p.TEXTURE_2D, this.$c) }; a.prototype.$r = function() { var a = this.p; a.activeTexture(a.TEXTURE1); a.bindTexture(a.TEXTURE_2D, this.$c); a.activeTexture(a.TEXTURE0) }; a.prototype.Wr = function() { var a = this.$o, d = this.u; d.ri = a; d = d.Fg; d.Yf && d.ij !== a && (d.ij = a, this.p.uniform1f(d.Yf, a)) }; a.prototype.Tr = function() { this.p.drawElements(this.p.TRIANGLES, this.kd, this.p.UNSIGNED_SHORT, 2 * this.Kc) }; a.prototype.Vr = function() { this.p.blendFunc(this.Kc, this.kd) }; a.prototype.as = function() { var a, d, b, t = this.u.hb, n = this.u.yn; a = 0; for (d = t.length; a < d; a++) b = t[a], a === n && b.gj ? (b.Dm(this.ja), b.Ue = !0) : b.Ue = !1; fc(this.ja, this.u.Ak) }; a.prototype.Ur = function() { var a = this.p, d = this.u; this.$c ? (d.bf === this.$c && (a.activeTexture(a.TEXTURE1), a.bindTexture(a.TEXTURE_2D, null), d.bf = null, a.activeTexture(a.TEXTURE0)), a.bindFramebuffer(a.FRAMEBUFFER, d.Ks), a.framebufferTexture2D(a.FRAMEBUFFER, a.COLOR_ATTACHMENT0, a.TEXTURE_2D, this.$c, 0)) : (a.framebufferTexture2D(a.FRAMEBUFFER, a.COLOR_ATTACHMENT0, a.TEXTURE_2D, null, 0), a.bindFramebuffer(a.FRAMEBUFFER, null)) }; a.prototype.Rr = function() { var a = this.p; 0 === this.Kc ? (a.clearColor(this.ja[0], this.ja[1], this.ja[2], this.ja[3]), a.clear(a.COLOR_BUFFER_BIT)) : (a.enable(a.SCISSOR_TEST), a.scissor(this.ja[0], this.ja[1], this.ja[2], this.ja[3]), a.clearColor(0, 0, 0, 0), a.clear(this.p.COLOR_BUFFER_BIT), a.disable(a.SCISSOR_TEST)) }; a.prototype.Sr = function() { var a = this.p, d = this.u, b = d.hb[1]; a.useProgram(b.Lh); !b.Ue && b.gj && (b.Dm(d.Ak), b.Ue = !0); a.enableVertexAttribArray(b.Gc); a.bindBuffer(a.ARRAY_BUFFER, d.Vl); a.vertexAttribPointer(b.Gc, 4, a.FLOAT, !1, 0, 0); a.drawArrays(a.POINTS, this.Kc / 4, this.kd); b = d.Fg; a.useProgram(b.Lh); 0 <= b.Gc && (a.enableVertexAttribArray(b.Gc), a.bindBuffer(a.ARRAY_BUFFER, d.Wh[d.Id]), a.vertexAttribPointer(b.Gc, 2, a.FLOAT, !1, 0, 0)); 0 <= b.xe && (a.enableVertexAttribArray(b.xe), a.bindBuffer(a.ARRAY_BUFFER, d.Qh[d.Id]), a.vertexAttribPointer(b.xe, 2, a.FLOAT, !1, 0, 0)) }; a.prototype.Xr = function() { var a = this.p, d = this.u, b = d.hb[this.Kc]; d.yn = this.Kc; d.Fg = b; a.useProgram(b.Lh); !b.Ue && b.gj && (b.Dm(d.Ak), b.Ue = !0); b.Yf && b.ij !== d.ri && (b.ij = d.ri, a.uniform1f(b.Yf, d.ri)); 0 <= b.Gc && (a.enableVertexAttribArray(b.Gc), a.bindBuffer(a.ARRAY_BUFFER, d.Wh[d.Id]), a.vertexAttribPointer(b.Gc, 2, a.FLOAT, !1, 0, 0)); 0 <= b.xe && (a.enableVertexAttribArray(b.xe), a.bindBuffer(a.ARRAY_BUFFER, d.Qh[d.Id]), a.vertexAttribPointer(b.xe, 2, a.FLOAT, !1, 0, 0)) }; a.prototype.Yr = function() { var a, d, b = this.u.Fg, t = this.p; a = this.ja; b.oh && this.u.bf !== this.$c && (t.activeTexture(t.TEXTURE1), t.bindTexture(t.TEXTURE_2D, this.$c), this.u.bf = this.$c, t.activeTexture(t.TEXTURE0)); var n = a[0]; b.Al && n !== b.Co && (b.Co = n, t.uniform1f(b.Al, n)); n = a[1]; b.zl && n !== b.Bo && (b.Bo = n, t.uniform1f(b.zl, n)); n = a[2]; d = a[3]; !b.kf || n === b.wo && d === b.xo || (b.wo = n, b.xo = d, t.uniform2f(b.kf, n, d)); n = a[4]; d = a[5]; !b.jf || n === b.uo && d === b.vo || (b.uo = n, b.vo = n, t.uniform2f(b.jf, n, d)); n = a[6]; b.nh && n !== b.zo && (b.zo = n, t.uniform1f(b.nh, n)); n = a[7]; b.mh && n !== b.yo && (b.yo = n, t.uniform1f(b.mh, n)); n = a[8]; d = a[9]; !b.qh || n === b.Fo && d === b.Go || (b.Fo = n, b.Go = d, t.uniform2f(b.qh, n, d)); n = a[10]; d = a[11]; !b.ph || n === b.Do && d === b.Eo || (b.Do = n, b.Eo = d, t.uniform2f(b.ph, n, d)); b.Bl && t.uniform1f(b.Bl, Ya() / 1E3); if (b.M.length) for (a = 0, d = b.M.length; a < d; a++) n = this.zp[a], n !== b.tl[a] && (b.tl[a] = n, t.uniform1f(b.M[a][1], n)) }; k.prototype.Xc = function() { this.Fd === this.ie.length && this.ie.push(new a(0, this)); return this.ie[this.Fd++] }; k.prototype.oe = function() { if (0 !== this.Fd && !this.p.isContextLost()) { var a = this.p; 0 < this.Wl && (a.bindBuffer(a.ARRAY_BUFFER, this.Vl), a.bufferData(a.ARRAY_BUFFER, this.hu.subarray(0, this.Wl), a.STREAM_DRAW), b && 0 <= b.Gc && "" === b.name && a.vertexAttribPointer(b.Gc, 4, a.FLOAT, !1, 0, 0)); if (0 < this.Ad) { var b = this.Fg; a.bindBuffer(a.ARRAY_BUFFER, this.Wh[this.Id]); a.bufferData(a.ARRAY_BUFFER, this.Im.subarray(0, this.Ad), a.STREAM_DRAW); b && 0 <= b.Gc && "" !== b.name && a.vertexAttribPointer(b.Gc, 2, a.FLOAT, !1, 0, 0); a.bindBuffer(a.ARRAY_BUFFER, this.Qh[this.Id]); a.bufferData(a.ARRAY_BUFFER, this.vm.subarray(0, this.Ad), a.STREAM_DRAW); b && 0 <= b.xe && "" !== b.name && a.vertexAttribPointer(b.xe, 2, a.FLOAT, !1, 0, 0) } for (var k, a = 0, b = this.Fd; a < b; a++) switch (k = this.ie[a], k.type) { case 1: k.Tr(); break; case 2: k.Zr(); break; case 3: k.Wr(); break; case 4: k.Vr(); break; case 5: k.as(); break; case 6: k.Ur(); break; case 7: k.Rr(); break; case 8: k.Sr(); break; case 9: k.Xr(); break; case 10: k.Yr(); break; case 11: k.$r() } this.Wl = this.Ad = this.Fd = 0; this.Yb = !1; this.Id++; 4 <= this.Id && (this.Id = 0) } }; k.prototype.pf = function(a) { if (a !== this.mo) { var b = this.Xc(); b.type = 3; this.mo = b.$o = a; this.Yb = !1 } }; k.prototype.gc = function(a) { if (a !== this.we) { var b = this.Xc(); b.type = 2; this.we = b.$c = a; this.Yb = !1 } }; k.prototype.Be = function(a, b) { if (a !== this.no || b !== this.ko) { var k = this.Xc(); k.type = 4; k.Kc = a; k.kd = b; this.no = a; this.ko = b; this.Yb = !1 } }; k.prototype.up = function() { this.Be(this.p.ONE, this.p.ONE_MINUS_SRC_ALPHA) }; k.prototype.yj = function(a, b, k, t, n, f, p, x) { 15992 <= this.Ad && this.oe(); var h = this.Ad, w = this.Im, y = this.vm; if (this.Yb) this.ie[this.Fd - 1].kd += 6; else { var l = this.Xc(); l.type = 1; l.Kc = h / 4 * 3; l.kd = 6; this.Yb = !0 } w[h] = a; y[h++] = 0; w[h] = b; y[h++] = 0; w[h] = k; y[h++] = 1; w[h] = t; y[h++] = 0; w[h] = n; y[h++] = 1; w[h] = f; y[h++] = 1; w[h] = p; y[h++] = 0; w[h] = x; y[h++] = 1; this.Ad = h }; k.prototype.Ud = function(a, b, k, t, n, f, p, x, h) { 15992 <= this.Ad && this.oe(); var w = this.Ad, y = this.Im, l = this.vm; if (this.Yb) this.ie[this.Fd - 1].kd += 6; else { var q = this.Xc(); q.type = 1; q.Kc = w / 4 * 3; q.kd = 6; this.Yb = !0 } var q = h.left, A = h.top, c = h.right; h = h.bottom; y[w] = a; l[w++] = q; y[w] = b; l[w++] = A; y[w] = k; l[w++] = c; y[w] = t; l[w++] = A; y[w] = n; l[w++] = c; y[w] = f; l[w++] = h; y[w] = p; l[w++] = q; y[w] = x; l[w++] = h; this.Ad = w }; k.prototype.ud = function(a) { if (this.gh !== a) { if (!this.hb[a]) { if (0 === this.gh) return; a = 0 } var b = this.Xc(); b.type = 9; this.gh = b.Kc = a; this.Yb = !1 } }; k.prototype.Ch = function(a) { a = this.hb[a]; return !(!a.kf && !a.jf) }; k.prototype.Zl = function(a) { a = this.hb[a]; return !!(a.kf || a.jf || a.xn) }; k.prototype.ou = function(a) { a = this.hb[a]; return 0 !== a.Ik || 0 !== a.Jk }; k.prototype.Ys = function(a) { return this.hb[a].Ik }; k.prototype.Zs = function(a) { return this.hb[a].Jk }; k.prototype.$s = function(a, b) { return this.hb[a].M[b][2] }; k.prototype.vj = function(a) { return this.hb[a].jn }; k.prototype.jg = function(a, b, k, t, n, f, p, x, h, w, y, l, q, A) { var c = this.hb[this.gh], e, m; if (c.wt || A.length) { e = this.Xc(); e.type = 10; e.ja ? fc(this.Hc, e.ja) : e.ja = ec(); m = e.ja; m[0] = b; m[1] = k; m[2] = t; m[3] = n; m[4] = f; m[5] = p; m[6] = x; m[7] = h; m[8] = w; m[9] = y; m[10] = l; m[11] = q; e.$c = c.oh ? a : null; if (A.length) for (k = e.zp, k.length = A.length, a = 0, b = A.length; a < b; a++) k[a] = A[a]; this.Yb = !1 } }; k.prototype.clear = function(a, b, k, t) { var n = this.Xc(); n.type = 7; n.Kc = 0; n.ja || (n.ja = ec()); n.ja[0] = a; n.ja[1] = b; n.ja[2] = k; n.ja[3] = t; this.Yb = !1 }; k.prototype.clearRect = function(a, b, k, t) { if (!(0 > k || 0 > t)) { var n = this.Xc(); n.type = 7; n.Kc = 1; n.ja || (n.ja = ec()); n.ja[0] = a; n.ja[1] = b; n.ja[2] = k; n.ja[3] = t; this.Yb = !1 } }; k.prototype.nu = function() { this.oe(); this.p.flush() }; var b = [], s = {}; k.prototype.Kr = function() { b.length = 0; s = {} }; k.prototype.ej = function(a, d, k) { var t; t = !1; d = !!d; var n = a.src + "," + t + "," + d + (t ? ",undefined" : ""), f = null; if ("undefined" !== typeof a.src && s.hasOwnProperty(n)) return f = s[n], f.ei++, f; this.oe(); var p = this.p, x = ja(a.width) && ja(a.height), f = p.createTexture(); p.bindTexture(p.TEXTURE_2D, f); p.pixelStorei(p.UNPACK_PREMULTIPLY_ALPHA_WEBGL, !0); var h = p.RGBA, w = p.RGBA, y = p.UNSIGNED_BYTE; if (k && !this.te) switch (k) { case 1: w = h = p.RGB; break; case 2: y = p.UNSIGNED_SHORT_4_4_4_4; break; case 3: y = p.UNSIGNED_SHORT_5_5_5_1; break; case 4: w = h = p.RGB, y = p.UNSIGNED_SHORT_5_6_5 } if (!x && t) { k = document.createElement("canvas"); k.width = ka(a.width); k.height = ka(a.height); var l = k.getContext("2d"); l.webkitImageSmoothingEnabled = d; l.mozImageSmoothingEnabled = d; l.msImageSmoothingEnabled = d; l.imageSmoothingEnabled = d; l.drawImage(a, 0, 0, a.width, a.height, 0, 0, k.width, k.height); p.texImage2D(p.TEXTURE_2D, 0, h, w, y, k) } else p.texImage2D(p.TEXTURE_2D, 0, h, w, y, a); t ? (p.texParameteri(p.TEXTURE_2D, p.TEXTURE_WRAP_S, p.REPEAT), p.texParameteri(p.TEXTURE_2D, p.TEXTURE_WRAP_T, p.REPEAT)) : (p.texParameteri(p.TEXTURE_2D, p.TEXTURE_WRAP_S, p.CLAMP_TO_EDGE), p.texParameteri(p.TEXTURE_2D, p.TEXTURE_WRAP_T, p.CLAMP_TO_EDGE)); d ? (p.texParameteri(p.TEXTURE_2D, p.TEXTURE_MAG_FILTER, p.LINEAR), x && this.Bn ? (p.texParameteri(p.TEXTURE_2D, p.TEXTURE_MIN_FILTER, p.LINEAR_MIPMAP_LINEAR), p.generateMipmap(p.TEXTURE_2D)) : p.texParameteri(p.TEXTURE_2D, p.TEXTURE_MIN_FILTER, p.LINEAR)) : (p.texParameteri(p.TEXTURE_2D, p.TEXTURE_MAG_FILTER, p.NEAREST), p.texParameteri(p.TEXTURE_2D, p.TEXTURE_MIN_FILTER, p.NEAREST)); p.bindTexture(p.TEXTURE_2D, null); this.we = null; f.Ag = a.width; f.zg = a.height; f.ei = 1; f.on = n; b.push(f); return s[n] = f }; k.prototype.Hd = function(a, d, k, t) { this.oe(); var n = this.p; this.te && (t = !1); var f = n.createTexture(); n.bindTexture(n.TEXTURE_2D, f); n.texImage2D(n.TEXTURE_2D, 0, n.RGBA, a, d, 0, n.RGBA, t ? n.UNSIGNED_SHORT_4_4_4_4 : n.UNSIGNED_BYTE, null); n.texParameteri(n.TEXTURE_2D, n.TEXTURE_WRAP_S, n.CLAMP_TO_EDGE); n.texParameteri(n.TEXTURE_2D, n.TEXTURE_WRAP_T, n.CLAMP_TO_EDGE); n.texParameteri(n.TEXTURE_2D, n.TEXTURE_MAG_FILTER, k ? n.LINEAR : n.NEAREST); n.texParameteri(n.TEXTURE_2D, n.TEXTURE_MIN_FILTER, k ? n.LINEAR : n.NEAREST); n.bindTexture(n.TEXTURE_2D, null); this.we = null; f.Ag = a; f.zg = d; b.push(f); return f }; k.prototype.av = function(a, b, k) { this.oe(); var t = this.p; this.te && (k = !1); t.bindTexture(t.TEXTURE_2D, b); t.pixelStorei(t.UNPACK_PREMULTIPLY_ALPHA_WEBGL, !0); try { t.texImage2D(t.TEXTURE_2D, 0, t.RGBA, t.RGBA, k ? t.UNSIGNED_SHORT_4_4_4_4 : t.UNSIGNED_BYTE, a) } catch (n) { console && console.error && console.error("Error updating WebGL texture: ", n) } t.bindTexture(t.TEXTURE_2D, null); this.we = null }; k.prototype.deleteTexture = function(a) { a && ("undefined" !== typeof a.ei && 1 < a.ei ? a.ei-- : (this.oe(), a === this.we && (this.p.bindTexture(this.p.TEXTURE_2D, null), this.we = null), a === this.bf && (this.p.activeTexture(this.p.TEXTURE1), this.p.bindTexture(this.p.TEXTURE_2D, null), this.p.activeTexture(this.p.TEXTURE0), this.bf = null), Da(b, a), "undefined" !== typeof a.on && delete s[a.on], this.p.deleteTexture(a))) }; k.prototype.td = function(a) { if (a !== this.rp) { var b = this.Xc(); b.type = 6; this.rp = b.$c = a; this.Yb = !1 } }; lb = k })(); (function() { function k() { return "undefined" !== typeof jQuery ? jQuery(window).width() : window.innerWidth } function r() { return "undefined" !== typeof jQuery ? jQuery(window).height() : window.innerHeight } function a(c) { if (c && (c.getContext || c.dc) && !c.c2runtime) { c.c2runtime = this; var e = this; this.sc = (this.$g = /crosswalk/i.test(navigator.userAgent) || /xwalk/i.test(navigator.userAgent) || !("undefined" === typeof window.c2isCrosswalk || !window.c2isCrosswalk)) || "undefined" !== typeof window.device && ("undefined" !== typeof window.device.cordova || "undefined" !== typeof window.device.phonegap) || "undefined" !== typeof window.c2iscordova && window.c2iscordova; this.tb = !!c.dc; this.Nf = "undefined" !== typeof window.AppMobi || this.tb; this.rc = !!window.c2cocoonjs; this.Ec = !!window.c2ejecta; this.rc && (CocoonJS.App.onSuspended.addEventListener(function() { e.setSuspended(!0) }), CocoonJS.App.onActivated.addEventListener(function() { e.setSuspended(!1) })); this.Ec && (document.addEventListener("pagehide", function() { e.setSuspended(!0) }), document.addEventListener("pageshow", function() { e.setSuspended(!1) }), document.addEventListener("resize", function() { e.setSize(window.innerWidth, window.innerHeight) })); this.ya = this.tb || this.rc || this.Ec; this.te = /msie/i.test(navigator.userAgent) || /trident/i.test(navigator.userAgent) || /iemobile/i.test(navigator.userAgent) || /edge\//i.test(navigator.userAgent); this.fo = /tizen/i.test(navigator.userAgent); this.Mi = /android/i.test(navigator.userAgent) && !this.fo && !this.te; this.sl = (/iphone/i.test(navigator.userAgent) || /ipod/i.test(navigator.userAgent)) && !this.te; this.jo = /ipad/i.test(navigator.userAgent); this.Si = this.sl || this.jo || this.Ec; this.Mt = this.sl && /os\s6/i.test(navigator.userAgent); this.Zg = (/chrome/i.test(navigator.userAgent) || /chromium/i.test(navigator.userAgent)) && !this.te; this.bo = /amazonwebappplatform/i.test(navigator.userAgent); this.Ft = /firefox/i.test(navigator.userAgent); this.eo = /safari/i.test(navigator.userAgent) && !this.Zg && !this.te; this.It = /windows/i.test(navigator.userAgent); this.ue = "undefined" !== typeof window.c2nodewebkit || /nodewebkit/i.test(navigator.userAgent); this.ho = !("undefined" === typeof window.c2isWindows8 || !window.c2isWindows8); this.Kt = !("undefined" === typeof window.c2isWindows8Capable || !window.c2isWindows8Capable); this.Pf = !("undefined" === typeof window.c2isWindowsPhone8 || !window.c2isWindowsPhone8); this.Oi = !("undefined" === typeof window.c2isWindowsPhone81 || !window.c2isWindowsPhone81); this.ql = this.ho || this.Kt || this.Oi; this.Dt = !("undefined" === typeof window.c2isBlackberry10 || !window.c2isBlackberry10); this.Ni = this.Mi && !this.Zg && !this.$g && !this.Ft && !this.bo && !this.ya; this.devicePixelRatio = 1; this.ld = this.sc || this.$g || this.Nf || this.rc || this.Mi || this.Si || this.Pf || this.Oi || this.Dt || this.fo || this.Ec; this.ld || (this.ld = /(blackberry|bb10|playbook|palm|symbian|nokia|windows\s+ce|phone|mobile|tablet|kindle|silk)/i.test(navigator.userAgent)); "undefined" === typeof cr_is_preview || this.ue || "?nw" !== window.location.search && !/nodewebkit/i.test(navigator.userAgent) || (this.ue = !0); this.Et = "undefined" !== typeof cr_is_preview && -1 < window.location.search.indexOf("debug"); this.canvas = c; this.rn = document.getElementById("c2canvasdiv"); this.ka = this.u = this.p = null; this.Ok = ""; this.Ei = !1; this.Uo = this.Vo = 0; this.canvas.oncontextmenu = function(c) { c.preventDefault && c.preventDefault(); return !1 }; this.canvas.onselectstart = function(c) { c.preventDefault && c.preventDefault(); return !1 }; this.tb && (window.c2runtime = this); this.ue && (window.ondragover = function(c) { c.preventDefault(); return !1 }, window.ondrop = function(c) { c.preventDefault(); return !1 }, require("nw.gui").App.clearCache()); this.Ni && "undefined" !== typeof jQuery && jQuery("canvas").parents("*").css("overflow", "visible"); this.width = c.width; this.height = c.height; this.O = this.width; this.N = this.height; this.pi = this.width; this.oi = this.height; this.ih = window.innerWidth; this.hh = window.innerHeight; this.Ms = !1; this.aa = !0; this.bh = !1; Date.now || (Date.now = function() { return +new Date }); this.plugins = []; this.types = {}; this.r = []; this.Qa = []; this.xl = {}; this.Tc = []; this.Hk = {}; this.Nd = []; this.ug = []; this.Yj = []; this.yr = []; this.Ar = []; this.Fp = null; this.Ne = {}; this.nl = this.re = !1; this.Rc = 0; this.pl = !1; this.Qc = []; this.Sd = this.Jb = this.bj = this.km = ""; this.Oh = this.Cp = !1; this.yk = this.rh = this.Md = this.Pe = 0; this.vf = 1; this.Gb = new bb; this.Bd = new bb; this.Xi = 0; this.Jo = !0; this.lj = this.Gi = this.Ig = this.xd = this.df = this.Nk = 0; this.Cg = null; this.wi = []; this.Gk = []; this.Ai = -1; this.Cl = [ [] ]; this.Am = this.hj = 0; this.xj(null); this.Jg = this.Po = this.vh = 0; this.Ph = []; this.Uj = this.Aj = -1; this.fh = !0; this.Xf = 0; this.ah = !1; this.Mu = 0; this.Df = null; this.tt = !1; this.ul = 0; this.Zb = this.dl = this.am = !1; this.To = new ba; this.Ll = new ba; this.Ml = new ba; this.Bj = []; this.Zc = new db([]); this.um = new db([]); this.Cf = []; this.Tg = {}; this.Gf = {}; this.Bf = {}; this.tg = {}; this.ln = {}; this.qo = this.aj = this.$b = this.vc = this.po = this.$i = this.za = null; this.rg = this.rl = !1; this.Pk = [null, null]; this.Re = 0; this.Di = ""; this.ye = {}; this.Lj = this.Wf = null; this.kj = []; this.wu() } } function b(c) { c.target.result.createObjectStore("saves", { keyPath: "slot" }) } function s(c, e, m, f) { var a = indexedDB.open("_C2SaveStates"); a.onupgradeneeded = b; a.onerror = f; a.onsuccess = function(a) { a = a.target.result; a.onerror = f; a.transaction(["saves"], "readwrite").objectStore("saves").put({ slot: c, data: e }).onsuccess = m } } function g(c, e, m) { var f = indexedDB.open("_C2SaveStates"); f.onupgradeneeded = b; f.onerror = m; f.onsuccess = function(f) { f = f.target.result; f.onerror = m; var a = f.transaction(["saves"]).objectStore("saves").get(c); a.onsuccess = function() { a.result ? e(a.result.data) : e(null) } } } function d() { J("Reloading for continuous preview"); window.c2cocoonjs ? CocoonJS.App.reload() : -1 < window.location.search.indexOf("continuous") ? window.location.reload(!0) : window.location += "?continuous" } function u(c) { var e, m = {}; for (e in c) !c.hasOwnProperty(e) || c[e] instanceof ba || c[e] && "undefined" !== typeof c[e].gw || (m[e] = c[e]); return m } a.prototype.wu = function() { var c = this, e; e = this.Pf ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest; var m = "data.js"; if (this.ho || this.Pf || this.Oi) m = "data.json"; e.open("GET", m, !0); var f = !1; if (!this.ya && "response" in e && "responseType" in e) try { e.responseType = "json", f = "json" === e.responseType } catch (a) { f = !1 } if (!f && "responseType" in e) try { e.responseType = "text" } catch (h) {} if ("overrideMimeType" in e) try { e.overrideMimeType("application/json; charset=utf-8") } catch (b) {} this.Pf ? e.onreadystatechange = function() { 4 === e.readyState && c.dj(JSON.parse(e.responseText)) } : (e.onload = function() { if (f) c.dj(e.response); else if (c.Ec) { var m = e.responseText, m = m.substr(m.indexOf("{")); c.dj(JSON.parse(m)) } else c.dj(JSON.parse(e.responseText)) }, e.onerror = function(c) { da("Error requesting " + m + ":"); da(c) }); e.send() }; a.prototype.At = function() { var c = this, e, m, f, a, h, b, l, q, p; this.devicePixelRatio = (this.Ye = (!this.ya || this.Ec) && this.Yu && !this.Ni) ? window.devicePixelRatio || window.webkitDevicePixelRatio || window.mozDevicePixelRatio || window.msDevicePixelRatio || 1 : 1; this.xb(); m = !(!this.Ms && (!this.nk || this.ue || this.ql || this.Pf || this.$g || this.sc || this.bo)); 0 < this.Xb && this.setSize(k(), r(), !0); try { this.hs && (this.rc || this.Ec || !this.ya) && (e = { alpha: m, depth: !1, antialias: !1, failIfMajorPerformanceCaveat: !0 }, this.p = this.canvas.getContext("webgl", e) || this.canvas.getContext("experimental-webgl", e)) } catch (d) {} if (this.p) { this.ya || (this.ub = document.createElement("canvas"), jQuery(this.ub).appendTo(this.canvas.parentNode), this.ub.oncontextmenu = function() { return !1 }, this.ub.onselectstart = function() { return !1 }, this.ub.width = this.pi, this.ub.height = this.oi, jQuery(this.ub).css({ width: this.pi + "px", height: this.oi + "px" }), this.lp(), this.Ul = this.ub.getContext("2d")); this.u = new lb(this.p, this.ld); this.u.kg(this.canvas.width, this.canvas.height); this.u.Bn = 0 !== this.bs; this.ka = null; this.canvas.addEventListener("webglcontextlost", function(e) { e.preventDefault(); c.Wt(); J("[Construct 2] WebGL context lost"); window.cr_setSuspended(!0) }, !1); this.canvas.addEventListener("webglcontextrestored", function() { c.u.Xn(); c.u.kg(c.u.width, c.u.height, !0); c.vc = null; c.$b = null; c.Pk[0] = null; c.Pk[1] = null; c.Xt(); c.aa = !0; J("[Construct 2] WebGL context restored"); window.cr_setSuspended(!1) }, !1); e = 0; for (m = this.r.length; e < m; e++) for (h = this.r[e], f = 0, a = h.J.length; f < a; f++) l = h.J[f], l.wb = this.u.$k(l.id), this.rg = this.rg || this.u.Ch(l.wb); e = 0; for (m = this.Tc.length; e < m; e++) { q = this.Tc[e]; f = 0; for (a = q.J.length; f < a; f++) l = q.J[f], l.wb = this.u.$k(l.id); f = 0; for (a = q.P.length; f < a; f++) for (p = q.P[f], h = 0, b = p.J.length; h < b; h++) l = p.J[h], l.wb = this.u.$k(l.id), this.rg = this.rg || this.u.Ch(l.wb) } } else { if (0 < this.Xb && this.tb) { this.canvas = null; document.oncontextmenu = function() { return !1 }; document.onselectstart = function() { return !1 }; this.ka = AppMobi.canvas.getContext("2d"); try { this.ka.samplingMode = this.ca ? "smooth" : "sharp", this.ka.globalScale = 1, this.ka.HTML5CompatibilityMode = !0, this.ka.imageSmoothingEnabled = this.ca } catch (A) {} 0 !== this.width && 0 !== this.height && (this.ka.width = this.width, this.ka.height = this.height) } this.ka || (e = this.rc ? { antialias: !!this.ca, alpha: m } : { alpha: m }, this.ka = this.canvas.getContext("2d", e), this.ka.webkitImageSmoothingEnabled = this.ca, this.ka.mozImageSmoothingEnabled = this.ca, this.ka.msImageSmoothingEnabled = this.ca, this.ka.imageSmoothingEnabled = this.ca); this.Ul = this.ub = null } this.Tj = function() { c.qb(!1) }; window == window.top || this.ya || this.ql || this.Pf || (document.addEventListener("mousedown", function() { window.focus() }, !0), document.addEventListener("touchstart", function() { window.focus() }, !0)); "undefined" !== typeof cr_is_preview && (this.rc && console.log("[Construct 2] In preview-over-wifi via CocoonJS mode"), -1 < window.location.search.indexOf("continuous") && (J("Reloading for continuous preview"), this.bj = "__c2_continuouspreview", this.Oh = !0), this.fu && !this.ld && (jQuery(window).focus(function() { c.setSuspended(!1) }), jQuery(window).blur(function() { c.setSuspended(!0) }))); this.ya || (e = function(c) { if (kb(c) && document.activeElement && document.activeElement !== document.getElementsByTagName("body")[0] && document.activeElement.blur) try { document.activeElement.blur() } catch (e) {} }, window.navigator.pointerEnabled ? document.addEventListener("pointerdown", e) : window.navigator.msPointerEnabled ? document.addEventListener("MSPointerDown", e) : document.addEventListener("touchstart", e), document.addEventListener("mousedown", e)); 0 === this.Xb && this.Ye && 1 < this.devicePixelRatio && this.setSize(this.eb, this.cb, !0); this.Op(); this.pt(); this.go(); this.R = {} }; a.prototype.setSize = function(c, e, m) { var f = 0, a = 0, h = 0, b = 0, b = 0, l = this.Mt && this.eo && !navigator.standalone && !this.ya && !this.sc; l && (e += 60); if (this.ih !== c || this.hh !== e || m) { this.ih = c; this.hh = e; var q = this.Xb, p = (document.mozFullScreen || document.webkitIsFullScreen || !!document.msFullscreenElement || document.fullScreen || this.ah) && !this.sc; if (p || 0 !== this.Xb || m) p && 0 < this.Re && (q = this.Re), m = this.devicePixelRatio, 4 <= q ? (h = this.eb / this.cb, c / e > h ? (h *= e, 5 === q ? (b = h * m / this.eb, 1 < b ? b = Math.floor(b) : 1 > b && (b = 1 / Math.ceil(1 / b)), h = this.eb * b / m, b = this.cb * b / m, f = (c - h) / 2, a = (e - b) / 2, c = h, e = b) : (f = (c - h) / 2, c = h)) : (b = c / h, 5 === q ? (b = b * m / this.cb, 1 < b ? b = Math.floor(b) : 1 > b && (b = 1 / Math.ceil(1 / b)), h = this.eb * b / m, b = this.cb * b / m, f = (c - h) / 2, a = (e - b) / 2, c = h) : a = (e - b) / 2, e = b), p && !this.ue && (a = f = 0)) : this.ue && this.ah && 0 === this.In && (f = Math.floor((c - this.eb) / 2), a = Math.floor((e - this.cb) / 2), c = this.eb, e = this.cb), 2 > q && (this.yg = m), this.Ye && this.jo && 1 < m && (1024 <= c && (c = 1023), 1024 <= e && (e = 1023)), this.pi = Math.round(c), this.oi = Math.round(e), this.width = Math.round(c * m), this.height = Math.round(e * m), this.aa = !0, this.aq ? (this.O = this.width, this.N = this.height, this.Dc = !0) : this.width < this.eb && this.height < this.cb || 1 === q ? (this.O = this.width, this.N = this.height, this.Dc = !0) : (this.O = this.eb, this.N = this.cb, this.Dc = !1, 2 === q ? (h = this.eb / this.cb, q = this.ih / this.hh, q < h ? this.O = this.N * q : q > h && (this.N = this.O / q)) : 3 === q && (h = this.eb / this.cb, q = this.ih / this.hh, q > h ? this.O = this.N * q : q < h && (this.N = this.O / q))), this.rn && !this.ya && (jQuery(this.rn).css({ width: Math.round(c) + "px", height: Math.round(e) + "px", "margin-left": Math.floor(f) + "px", "margin-top": Math.floor(a) + "px" }), "undefined" !== typeof cr_is_preview && jQuery("#borderwrap").css({ width: Math.round(c) + "px", height: Math.round(e) + "px" })), this.canvas && (this.canvas.width = Math.round(c * m), this.canvas.height = Math.round(e * m), this.Ec ? (this.canvas.style.left = Math.floor(f) + "px", this.canvas.style.top = Math.floor(a) + "px", this.canvas.style.width = Math.round(c) + "px", this.canvas.style.height = Math.round(e) + "px") : this.Ye && !this.ya && jQuery(this.canvas).css({ width: Math.round(c) + "px", height: Math.round(e) + "px" })), this.ub && (this.ub.width = Math.round(c), this.ub.height = Math.round(e), jQuery(this.ub).css({ width: Math.round(c) + "px", height: Math.round(e) + "px" })), this.u && this.u.kg(Math.round(c * m), Math.round(e * m)), this.tb && this.ka && (this.ka.width = Math.round(c), this.ka.height = Math.round(e)), this.ka && (this.ka.webkitImageSmoothingEnabled = this.ca, this.ka.mozImageSmoothingEnabled = this.ca, this.ka.msImageSmoothingEnabled = this.ca, this.ka.imageSmoothingEnabled = this.ca), this.Op(), this.ya || !l && !this.sl || window.setTimeout(function() { window.scrollTo(0, 1) }, 100) } }; a.prototype.Op = function() { /*if (this.Cr && 0 !== this.Sl) { var c = "portrait"; 2 === this.Sl && (c = "landscape"); screen.orientation && screen.orientation.lock ? screen.orientation.lock(c) : screen.lockOrientation ? screen.lockOrientation(c) : screen.webkitLockOrientation ? screen.webkitLockOrientation(c) : screen.mozLockOrientation ? screen.mozLockOrientation(c) : screen.msLockOrientation && screen.msLockOrientation(c) }*/ }; a.prototype.Wt = function() { this.u.Kr(); this.rl = !0; var c, e, m; c = 0; for (e = this.r.length; c < e; c++) m = this.r[c], m.mj && m.mj() }; a.prototype.Xt = function() { this.rl = !1; var c, e, m; c = 0; for (e = this.r.length; c < e; c++) m = this.r[c], m.Ql && m.Ql() }; a.prototype.lp = function() { if (!this.ya) { var c = (document.mozFullScreen || document.webkitIsFullScreen || document.fullScreen || document.msFullscreenElement || this.ah) && !this.sc ? jQuery(this.canvas).offset() : jQuery(this.canvas).position(); c.position = "absolute"; jQuery(this.ub).css(c) } }; var t = window.cancelAnimationFrame || window.mozCancelAnimationFrame || window.webkitCancelAnimationFrame || window.msCancelAnimationFrame || window.oCancelAnimationFrame; a.prototype.setSuspended = function(c) { var e; if (c && !this.bh) for (J("[Construct 2] Suspending"), this.bh = !0, -1 !== this.Aj && t && t(this.Aj), -1 !== this.Uj && clearTimeout(this.Uj), c = 0, e = this.Ph.length; c < e; c++) this.Ph[c](!0); else if (!c && this.bh) { J("[Construct 2] Resuming"); this.bh = !1; this.Xi = Ya(); this.df = Ya(); c = this.rh = this.Gi = 0; for (e = this.Ph.length; c < e; c++) this.Ph[c](!1); this.qb(!1) } }; a.prototype.en = function(c) { this.Ph.push(c) }; a.prototype.ee = function(c) { return this.kj[c] }; a.prototype.dj = function(c) { c && c.project || da("Project model unavailable"); c = c.project; this.name = c[0]; this.Hn = c[1]; this.Xb = c[12]; this.In = c[12]; this.eb = c[10]; this.cb = c[11]; this.hp = this.eb / 2; this.ip = this.cb / 2; this.ya && !this.Ec && (4 <= c[12] || 0 === c[12]) && (J("[Construct 2] Letterbox scale fullscreen modes are not supported on this platform - falling back to 'Scale outer'"), this.In = this.Xb = 3); this.Gm = c[18]; this.kh = c[19]; 0 === this.kh && (this.Wf = new Image, this.Wf.src = "loading-logo.png"); this.vh = c[21]; this.kj = jc(); this.vd = new X(this); var e, m, f, a, h, b, l, q, p; e = 0; for (m = c[2].length; e < m; e++) l = c[2][e], f = this.ee(l[0]), mb(l, f.prototype), p = new f(this), p.Kj = l[1], p.ve = l[2], p.Mo = l[9], p.W && p.W(), this.plugins.push(p); this.kj = jc(); e = 0; for (m = c[3].length; e < m; e++) { l = c[3][e]; h = this.ee(l[1]); p = null; f = 0; for (a = this.plugins.length; f < a; f++) if (this.plugins[f] instanceof h) { p = this.plugins[f]; break } var d = new p.Fa(p); d.name = l[0]; d.K = l[2]; d.ll = l[3].slice(0); d.$u = l[3].length; d.Dr = l[4]; d.Os = l[5]; d.U = l[11]; d.K ? (d.$f = [], d.Od = this.Jg++, d.Da = null) : (d.$f = null, d.Od = -1, d.Da = []); d.Bi = null; d.Jf = null; d.Dn = null; d.tc = !1; d.Vb = null; l[6] ? (d.wm = l[6][0], d.Jp = l[6][1], d.xm = l[6][2]) : (d.wm = null, d.Jp = 0, d.xm = 0); d.Ub = l[7] ? l[7] : null; d.index = e; d.d = []; d.ti = []; d.Ee = [new nb(d)]; d.Ld = 0; d.Ac = null; d.Qr = 0; d.ng = !0; d.Zj = ob; d.Nn = pb; d.Ws = qb; d.Y = rb; d.Eh = sb; d.wj = tb; d.nf = vb; d.Ii = wb; d.Rk = xb; d.Wk = yb; d.wc = zb; d.On = Ab; d.li = new eb(this.eb, this.cb); d.Zh = !0; d.$h = !1; d.R = {}; d.toString = Bb; d.Qa = []; f = 0; for (a = l[8].length; f < a; f++) { q = l[8][f]; var A = this.ee(q[1]), w = null; h = 0; for (b = this.Qa.length; h < b; h++) if (this.Qa[h] instanceof A) { w = this.Qa[h]; break } w || (w = new A(this), w.Jl = [], w.jj = new ba, w.W && w.W(), this.Qa.push(w), bc.Lu && w instanceof bc.Lu && (this.Fp = w)); - 1 === w.Jl.indexOf(d) && w.Jl.push(d); h = new w.Fa(w, d); h.name = q[0]; h.U = q[2]; h.W(); d.Qa.push(h) } d.global = l[9]; d.ol = l[10]; d.J = []; f = 0; for (a = l[12].length; f < a; f++) d.J.push({ id: l[12][f][0], name: l[12][f][1], wb: -1, lc: !0, index: f }); d.vw = l[13]; this.Gm && !d.K && !d.ol && p.ve || d.W(); d.name && (this.types[d.name] = d); this.r.push(d); p.Kj && (f = new p.wa(d), f.uid = this.vh++, f.op = this.Po++, f.We = 0, f.Qg = Cb, f.toString = Db, f.C = l[14], f.W(), d.d.push(f), this.ye[f.uid.toString()] = f) } e = 0; for (m = c[4].length; e < m; e++) for (h = c[4][e], b = this.r[h[0]], f = 1, a = h.length; f < a; f++) l = this.r[h[f]], l.Da.push(b), b.$f.push(l); e = 0; for (m = c[27].length; e < m; e++) { h = c[27][e]; b = []; f = 0; for (a = h.length; f < a; f++) b.push(this.r[h[f]]); f = 0; for (a = b.length; f < a; f++) b[f].tc = !0, b[f].Vb = b } if (0 < this.Jg) for (e = 0, m = this.r.length; e < m; e++) if (l = this.r[e], !l.K && l.Da.length) { l.Bi = Array(this.Jg); l.Jf = Array(this.Jg); l.Dn = Array(this.Jg); d = []; f = w = A = q = 0; for (a = l.Da.length; f < a; f++) for (p = l.Da[f], l.Bi[p.Od] = q, q += p.$u, l.Jf[p.Od] = A, A += p.Dr, l.Dn[p.Od] = w, w += p.Os, h = 0, b = p.J.length; h < b; h++) d.push(xa({}, p.J[h])); l.J = d.concat(l.J); f = 0; for (a = l.J.length; f < a; f++) l.J[f].index = f } e = 0; for (m = c[5].length; e < m; e++) l = c[5][e], f = new Eb(this, l), this.xl[f.name] = f, this.Tc.push(f); e = 0; for (m = c[6].length; e < m; e++) l = c[6][e], f = new Fb(this, l), this.Hk[f.name] = f, this.Nd.push(f); e = 0; for (m = this.Nd.length; e < m; e++) this.Nd[e].Oa(); e = 0; for (m = this.Nd.length; e < m; e++) this.Nd[e].Vp(); e = 0; for (m = this.Yj.length; e < m; e++) this.Yj[e].Oa(); this.Yj.length = 0; this.Br = c[7]; this.Di = c[8]; this.rd = c[9]; this.yg = 1; this.hs = c[13]; this.ca = c[14]; this.nk = c[15]; this.Yu = c[17]; this.Sl = c[20]; this.Cr = 0 < this.Sl; this.fu = c[22]; this.Dc = this.aq = c[23]; this.bs = c[24]; this.lu = c[25]; this.Mj = Date.now(); this.kj.length = 0; this.At() }; var n = !1; a.prototype.$p = function(c, e) { c.cocoonLazyLoad = !0; c.onerror = function(e) { n = c.nn = !0; console && console.error && console.error("Error loading image '" + c.src + "': ", e) }; this.Ec ? c.src = e : c.src || ("undefined" !== typeof XAPKReader ? XAPKReader.get(e, function(e) { c.src = e }, function(m) { n = c.nn = !0; console && console.error && console.error("Error extracting image '" + e + "' from expansion file: ", m) }) : c.src = e); this.ug.push(c) }; a.prototype.Ls = function(c) { var e, m; e = 0; for (m = this.ug.length; e < m; e++) if (this.ug[e].Mr === c) return this.ug[e]; return null }; var f = 0, p = !1; a.prototype.pt = function() { this.Df && (f = this.Df.Iu(this.Br)) }; a.prototype.kn = function() { var c = f, e = 0, m = 0, a = !0, h, b, m = 0; for (h = this.ug.length; m < h; m++) { b = this.ug[m]; var l = b.Lr; if (!l || 0 >= l) l = 5E4; c += l; b.src && (b.complete || b.loaded) && !b.nn ? e += l : a = !1 } a && this.lu && this.Df && (p || (this.Df.Nu(), p = !0), m = this.Df.Xs(), e += m, m < f && (a = !1)); this.of = 0 == c ? 0 : e / c; return a }; a.prototype.go = function() { if (this.ka || this.u) { var c = this.ka || this.Ul; this.ub && this.lp(); this.of = 0; this.oo = -1; if (this.kn()) this.qt(); else { var e = Date.now() - this.Mj; if (c) { var m = this.width, f = this.height, a = this.devicePixelRatio; this.ub && (m = this.pi, f = this.oi, a = 1); if (3 !== this.kh && (this.rc || 500 <= e && this.oo != this.of)) { c.clearRect(0, 0, m, f); var e = m / 2, f = f / 2, m = 0 === this.kh && this.Wf.complete, h = 40 * a, b = 0, l = 80 * a, q; m && (l = this.Wf.width * a, q = this.Wf.height * a, h = l / 2, b = q / 2, c.drawImage(this.Wf, S(e - h), S(f - b), l, q)); 1 >= this.kh ? (e = S(e - h) + .5, f = S(f + (b + (m ? 12 * a : 0))) + .5, c.fillStyle = n ? "red" : "DodgerBlue", c.fillRect(e, f, Math.floor(l * this.of), 6 * a), c.strokeStyle = "black", c.strokeRect(e, f, l, 6 * a), c.strokeStyle = "white", c.strokeRect(e - 1 * a, f - 1 * a, l + 2 * a, 8 * a)) : 2 === this.kh && (c.font = this.Ec ? "12pt ArialMT" : "12pt Arial", c.fillStyle = n ? "#f00" : "#999", c.uw = "middle", a = Math.round(100 * this.of) + "%", m = c.measureText ? c.measureText(a) : null, c.fillText(a, e - (m ? m.width : 0) / 2, f)) } this.oo = this.of } setTimeout(function(c) { return function() { c.go() } }(this), this.rc ? 10 : 100) } } }; a.prototype.qt = function() { this.ub && (this.canvas.parentNode.removeChild(this.ub), this.ub = this.Ul = null); this.Mj = Date.now(); this.df = Ya(); var c, e, m; if (this.Gm) for (c = 0, e = this.r.length; c < e; c++) m = this.r[c], m.K || m.ol || !m.qa.ve || m.W(); else this.fh = !1; c = 0; for (e = this.Tc.length; c < e; c++) this.Tc[c].Nr(); 2 <= this.Xb && (c = this.eb / this.cb, e = this.width / this.height, this.yg = 2 !== this.Xb && e > c || 2 === this.Xb && e < c ? this.height / this.cb : this.width / this.eb); this.Hn ? this.xl[this.Hn].rm() : this.Tc[0].rm(); this.Gm || (this.Xf = 1, this.trigger(X.prototype.k.Rm, null)); navigator.splashscreen && navigator.splashscreen.hide && navigator.splashscreen.hide(); c = 0; for (e = this.r.length; c < e; c++) m = this.r[c], m.Vt && m.Vt(); document.hidden || document.webkitHidden || document.mozHidden || document.msHidden ? window.cr_setSuspended(!0) : this.qb(!1); this.tb && AppMobi.webview.execute("onGameReady();") }; var x = window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || window.msRequestAnimationFrame || window.oRequestAnimationFrame; a.prototype.qb = function(c) { if (this.za) { var e = Ya(); if (this.tt && this.am && 29 > e - this.ul) this.am = !1, this.ul = e, x ? this.Aj = x(this.Tj, this.canvas) : this.Uj = setTimeout(this.Tj, this.ld ? 1 : 16); else { this.am = !0; this.ul = e; var m = this.Xb, f = (document.mozFullScreen || document.webkitIsFullScreen || document.fullScreen || !!document.msFullscreenElement) && !this.sc; (f || this.ah) && 0 < this.Re && (m = this.Re); 0 < m && (!this.Si || window.self !== window.top) && (m = window.innerHeight, this.ih === window.innerWidth && this.hh === m || this.setSize(k(), r())); this.ya || (f ? (this.Ei || (this.Ok = jQuery(this.canvas).css("margin") || "0", this.Ei = !0), this.Zg || this.ue || jQuery(this.canvas).css({ "margin-left": "" + Math.floor((screen.width - this.width / this.devicePixelRatio) / 2) + "px", "margin-top": "" + Math.floor((screen.height - this.height / this.devicePixelRatio) / 2) + "px" })) : this.Ei ? (this.Zg || this.ue || jQuery(this.canvas).css("margin", this.Ok), this.Ok = "", this.Ei = !1, 0 === this.Xb && this.setSize(Math.round(this.Vo / this.devicePixelRatio), Math.round(this.Uo / this.devicePixelRatio), !0)) : (this.Vo = this.width, this.Uo = this.height)); this.fh && (f = this.kn(), this.Xf = this.of, f && (this.fh = !1, this.of = 1, this.trigger(X.prototype.k.Rm, null))); this.Qt(); !this.aa && !this.rc || this.rl || this.Oh || c || (this.aa = !1, this.u ? this.Cc() : this.ed(), this.Lj && (this.canvas && this.canvas.toDataURL && (this.canvas.toDataURL(this.Lj[0], this.Lj[1]), this.trigger(X.prototype.k.Bq, null)), this.Lj = null)); this.nw || (this.xd++, this.Ig++, this.Gi++); this.rh += Ya() - e; this.bh || c || (x ? this.Aj = x(this.Tj, this.canvas) : this.Uj = setTimeout(this.Tj, this.ld ? 1 : 16)) } } }; a.prototype.Qt = function() { var c, e, m, f, a, h, l, b, q; c = Ya(); 1E3 <= c - this.df && (this.df += 1E3, 1E3 <= c - this.df && (this.df = c), this.Nk = this.Gi, this.Gi = 0, this.yk = this.rh, this.rh = 0); this.Jo && (0 !== this.Xi && (e = c - this.Xi, 0 !== e || this.Et ? (this.Md = e / 1E3, .5 < this.Md ? this.Md = 0 : .1 < this.Md && (this.Md = .1)) : (10 <= this.xw && (this.Jo = !1), this.Md = 1 / 60)), this.Xi = c); this.Pe = this.Md * this.vf; this.Gb.add(this.Pe); this.Bd.add(this.Md); c = (document.mozFullScreen || document.webkitIsFullScreen || document.fullScreen || !!document.msFullscreenElement || this.ah) && !this.sc; 2 <= this.Xb || c && 0 < this.Re ? (e = this.eb / this.cb, m = this.width / this.height, f = this.Xb, c && 0 < this.Re && (f = this.Re), this.yg = 2 !== f && m > e || 2 === f && m < e ? this.height / this.cb : this.width / this.eb, this.za && (this.za.lm(this.za.scrollX), this.za.mm(this.za.scrollY))) : this.yg = this.Ye ? this.devicePixelRatio : 1; this.xb(); this.Rc++; this.vd.zu(); this.Rc--; this.xb(); this.Rc++; m = this.To.be(); c = 0; for (e = m.length; c < e; c++) m[c].pw(); c = 0; for (e = this.r.length; c < e; c++) if (l = this.r[c], !l.K && (l.Qa.length || l.Da.length)) for (m = 0, f = l.d.length; m < f; m++) for (b = l.d[m], a = 0, h = b.L.length; a < h; a++) b.L[a].qb(); c = 0; for (e = this.r.length; c < e; c++) if (l = this.r[c], !l.K && (l.Qa.length || l.Da.length)) for (m = 0, f = l.d.length; m < f; m++) for (b = l.d[m], a = 0, h = b.L.length; a < h; a++) q = b.L[a], q.ku && q.ku(); m = this.Ll.be(); c = 0; for (e = m.length; c < e; c++) m[c].qb(); this.Rc--; this.ut(); for (c = 0; this.Cg && 10 > c++;) this.An(this.Cg); c = 0; for (e = this.Nd.length; c < e; c++) this.Nd[c].fl = !1; this.za.Gg && this.za.Gg.Va(); this.Bj.length = 0; this.Rc++; c = 0; for (e = this.r.length; c < e; c++) if (l = this.r[c], !l.K && (l.Qa.length || l.Da.length)) for (m = 0, f = l.d.length; m < f; m++) for (b = l.d[m], a = 0, h = b.L.length; a < h; a++) q = b.L[a], q.Rh && q.Rh(); m = this.Ml.be(); c = 0; for (e = m.length; c < e; c++) m[c].Rh(); this.Rc-- }; a.prototype.An = function(c) { var e = this.za; this.za.Ou(); var f, a, h, l, b, q, d; if (this.u) for (f = 0, a = this.r.length; f < a; f++) b = this.r[f], b.K || !b.Cm || b.global && 0 !== b.d.length || -1 !== c.Xg.indexOf(b) || b.Cm(); e == c && (this.vd.Sb.length = 0); c.rm(); f = 0; for (a = this.r.length; f < a; f++) if (b = this.r[f], b.global || b.qa.Kj) for (c = 0, e = b.d.length; c < e; c++) if (q = b.d[c], q.Pl && q.Pl(), q.L) for (h = 0, l = q.L.length; h < l; h++) d = q.L[h], d.Pl && d.Pl(); this.aa = !0; this.xb() }; a.prototype.pg = function(c) { this.Ll.add(c) }; a.prototype.Qu = function(c) { this.Ml.add(c) }; a.prototype.Uk = function(c) { return c && -1 !== c.uh ? this.Md * c.uh : this.Pe }; a.prototype.ed = function() { this.za.ed(this.ka); this.tb && this.ka.present() }; a.prototype.Cc = function() { this.za.Cc(this.u); this.u.nu() }; a.prototype.mk = function(c) { c && this.wi.push(c) }; a.prototype.vu = function(c) { Da(this.wi, c) }; a.prototype.Ng = function(c) { c = c.toString(); return this.ye.hasOwnProperty(c) ? this.ye[c] : null }; var h = []; a.prototype.Ie = function(c) { var e, f; e = c.type.name; var a = null; if (this.Ne.hasOwnProperty(e)) { if (a = this.Ne[e], a.contains(c)) return } else a = h.length ? h.pop() : new ba, this.Ne[e] = a; a.add(c); this.re = !0; if (c.tc) for (e = 0, f = c.siblings.length; e < f; e++) this.Ie(c.siblings[e]); this.nl && a.sg.push(c); this.Rc++; this.trigger(Object.getPrototypeOf(c.type.qa).k.Dq, c); this.Rc-- }; a.prototype.xb = function() { if (this.re) { var c, e, f, a, h, l; this.nl = !0; f = 0; for (h = this.Qc.length; f < h; ++f) for (c = this.Qc[f], e = c.type, e.d.push(c), a = 0, l = e.Da.length; a < l; ++a) e.Da[a].d.push(c), e.Da[a].ng = !0; this.Qc.length = 0; this.tq(); Xa(this.Ne); this.re = this.nl = !1 } }; a.prototype.tq = function() { for (var c in this.Ne) this.Ne.hasOwnProperty(c) && this.fq(this.Ne[c]) }; a.prototype.fq = function(c) { var e = c.be(), f = e[0].type, a, l, b, q, d, p; Za(f.d, c); f.ng = !0; 0 === f.d.length && (f.$h = !1); a = 0; for (l = f.Da.length; a < l; ++a) p = f.Da[a], Za(p.d, c), p.ng = !0; a = 0; for (l = this.vd.Sb.length; a < l; ++a) if (d = this.vd.Sb[a], d.Kb.hasOwnProperty(f.index) && Za(d.Kb[f.index].Qd, c), !f.K) for (b = 0, q = f.Da.length; b < q; ++b) p = f.Da[b], d.Kb.hasOwnProperty(p.index) && Za(d.Kb[p.index].Qd, c); if (d = e[0].i) { if (d.ad) for (b = d.d, a = 0, l = b.length; a < l; ++a) q = b[a], c.contains(q) && (q.na(), d.fc.update(q, q.Qb, null), q.Qb.set(0, 0, -1, -1)); Za(d.d, c); d.Ih(0) } for (a = 0; a < e.length; ++a) this.dq(e[a], f); c.clear(); h.push(c); this.aa = !0 }; a.prototype.dq = function(c, e) { var f, a, h; f = 0; for (a = this.wi.length; f < a; ++f) this.wi[f](c); c.me && e.li.update(c, c.me, null); (f = c.i) && f.ig(c, !0); if (c.L) for (f = 0, a = c.L.length; f < a; ++f) h = c.L[f], h.fg && h.fg(), h.behavior.jj.remove(c); this.To.remove(c); this.Ll.remove(c); this.Ml.remove(c); c.fg && c.fg(); this.ye.hasOwnProperty(c.uid.toString()) && delete this.ye[c.uid.toString()]; this.lj--; 100 > e.ti.length && e.ti.push(c) }; a.prototype.wn = function(c, e, f, a) { if (c.K) { var h = S(Math.random() * c.$f.length); return this.wn(c.$f[h], e, f, a) } return c.Ac ? this.ne(c.Ac, e, !1, f, a, !1) : null }; var w = []; a.prototype.ne = function(c, e, f, a, h, l) { var b, q, d, p; if (!c) return null; var A = this.r[c[1]], n = A.qa.ve; if (this.fh && n && !A.ol || n && !this.u && 11 === c[0][11]) return null; var k = e; n || (e = null); var g; A.ti.length ? (g = A.ti.pop(), g.ec = !0, A.qa.wa.call(g, A)) : (g = new A.qa.wa(A), g.ec = !1); g.uid = f && !l ? c[2] : this.vh++; this.ye[g.uid.toString()] = g; g.op = this.Po++; g.We = A.d.length; b = 0; for (q = this.Qc.length; b < q; ++b) this.Qc[b].type === A && g.We++; g.Qg = Cb; g.toString = Db; d = c[3]; if (g.ec) Xa(g.R); else { g.R = {}; if ("undefined" !== typeof cr_is_preview) for (g.$n = [], g.$n.length = d.length, b = 0, q = d.length; b < q; b++) g.$n[b] = d[b][1]; g.ab = []; g.ab.length = d.length } b = 0; for (q = d.length; b < q; b++) g.ab[b] = d[b][0]; if (n) { var y = c[0]; g.x = ea(a) ? y[0] : a; g.y = ea(h) ? y[1] : h; g.z = y[2]; g.width = y[3]; g.height = y[4]; g.depth = y[5]; g.j = y[6]; g.opacity = y[7]; g.Mb = y[8]; g.Nb = y[9]; g.Lb = y[10]; b = y[11]; !this.u && A.J.length && (g.Lb = b); g.Dg = gb(g.Lb); this.p && hb(g, g.Lb, this.p); if (g.ec) { b = 0; for (q = y[12].length; b < q; b++) for (d = 0, p = y[12][b].length; d < p; d++) g.Ha[b][d] = y[12][b][d]; g.La.set(0, 0, 0, 0); g.me.set(0, 0, -1, -1); g.Qb.set(0, 0, -1, -1); g.Db.Jh(g.La); g.rk.length = 0 } else { g.Ha = y[12].slice(0); b = 0; for (q = g.Ha.length; b < q; b++) g.Ha[b] = y[12][b].slice(0); g.ba = []; g.fe = []; g.fe.length = A.J.length; g.La = new T(0, 0, 0, 0); g.me = new T(0, 0, -1, -1); g.Qb = new T(0, 0, -1, -1); g.Db = new ua; g.rk = []; g.T = Gb; g.fw = Hb; g.yb = Ib; g.na = Jb; g.Xu = Kb; g.Xp = Lb; g.jd = Mb } g.Sh = !1; g.Tu = 0; g.Su = 0; g.Ru = null; 14 === y.length && (g.Sh = !0, g.Tu = y[13][0], g.Su = y[13][1], g.Ru = y[13][2]); b = 0; for (q = A.J.length; b < q; b++) g.fe[b] = !0; g.ae = Nb; g.ae(); g.Yp = !!g.ba.length; g.qk = !0; g.tk = !0; A.Zh = !0; g.visible = !0; g.uh = -1; g.i = e; g.bd = e.d.length; "undefined" === typeof g.da && (g.da = null); this.aa = g.Gd = !0 } var x; b = w.length = 0; for (q = A.Da.length; b < q; b++) w.push.apply(w, A.Da[b].Qa); w.push.apply(w, A.Qa); if (g.ec) for (b = 0, q = w.length; b < q; b++) { var t = w[b]; x = g.L[b]; x.ec = !0; t.behavior.wa.call(x, t, g); y = c[4][b]; d = 0; for (p = y.length; d < p; d++) x.C[d] = y[d]; x.W(); t.behavior.jj.add(g) } else for (g.L = [], b = 0, q = w.length; b < q; b++) t = w[b], x = new t.behavior.wa(t, g), x.ec = !1, x.C = c[4][b].slice(0), x.W(), g.L.push(x), t.behavior.jj.add(g); y = c[5]; if (g.ec) for (b = 0, q = y.length; b < q; b++) g.C[b] = y[b]; else g.C = y.slice(0); this.Qc.push(g); this.re = !0; e && (e.xg(g, !0), 1 !== e.Ic || 1 !== e.Jc) && (A.$h = !0); this.lj++; if (A.tc) { if (g.tc = !0, g.ec ? g.siblings.length = 0 : g.siblings = [], !f && !l) { b = 0; for (q = A.Vb.length; b < q; b++) if (A.Vb[b] !== A) { if (!A.Vb[b].Ac) return null; g.siblings.push(this.ne(A.Vb[b].Ac, k, !1, n ? g.x : a, n ? g.y : h, !0)) } b = 0; for (q = g.siblings.length; b < q; b++) for (g.siblings[b].siblings.push(g), d = 0; d < q; d++) b !== d && g.siblings[b].siblings.push(g.siblings[d]) } } else g.tc = !1, g.siblings = null; g.W(); b = 0; for (q = g.L.length; b < q; b++) g.L[b].ju && g.L[b].ju(); return g }; a.prototype.Yk = function(c) { var e, f; e = 0; for (f = this.za.P.length; e < f; e++) { var a = this.za.P[e]; if (jb(a.name, c)) return a } return null }; a.prototype.Mg = function(c) { c = S(c); 0 > c && (c = 0); c >= this.za.P.length && (c = this.za.P.length - 1); return this.za.P[c] }; a.prototype.wk = function(c) { var e, f; e = 0; for (f = c.length; e < f; e++) c[e].Y().fa = !0 }; a.prototype.Eh = function(c) { var e, f; e = 0; for (f = c.length; e < f; e++) c[e].Eh() }; a.prototype.wj = function(c) { var e, f; e = 0; for (f = c.length; e < f; e++) c[e].wj() }; a.prototype.nf = function(c) { var e, f; e = 0; for (f = c.length; e < f; e++) c[e].nf() }; a.prototype.Tp = function(c) { if (c.Zh) { var e, f, a = c.d; e = 0; for (f = a.length; e < f; ++e) a[e].Xp(); a = this.Qc; e = 0; for (f = a.length; e < f; ++e) a[e].type === c && a[e].Xp(); c.Zh = !1 } }; a.prototype.Kn = function(c, e, f, a) { var b, h, l = c ? 1 !== c.Ic || 1 !== c.Jc : !1; if (e.K) for (c = 0, b = e.$f.length; c < b; ++c) h = e.$f[c], l || h.$h ? Ba(a, h.d) : (this.Tp(h), h.li.zj(f, a)); else l || e.$h ? Ba(a, e.d) : (this.Tp(e), e.li.zj(f, a)) }; a.prototype.ct = function(c, e, f, a) { var b, h; b = 0; for (h = e.length; b < h; ++b) this.Kn(c, e[b], f, a) }; a.prototype.bt = function(c, e, f) { var a = this.Fp; a && this.ct(c, a.Jl, e, f) }; a.prototype.Qj = function(c, e, f) { var a = c.Y(), b, h, l, q, d, p; if (a.fa) for (a.fa = !1, b = a.d.length = 0, q = c.d.length; b < q; b++) l = c.d[b], l.na(), d = l.i.Eb(e, f, !0), p = l.i.Eb(e, f, !1), l.yb(d, p) && a.d.push(l); else { b = h = 0; for (q = a.d.length; b < q; b++) l = a.d[b], l.na(), d = l.i.Eb(e, f, !0), p = l.i.Eb(e, f, !1), l.yb(d, p) && (a.d[h] = a.d[b], h++); a.d.length = h } c.wc(); return a.el() }; a.prototype.tf = function(c, e) { if (!(c && e && c !== e && c.Gd && e.Gd)) return !1; c.na(); e.na(); var f = c.i, a = e.i, b, h, l, q, d, p, g, A; if (f === a || f.Ic === a.Ic && a.Jc === a.Jc && f.scale === a.scale && f.j === a.j && f.cd === a.cd) { if (!c.La.Bt(e.La) || !c.Db.ao(e.Db) || c.Sh && e.Sh) return !1; if (c.Sh) return this.Ip(c, e); if (e.Sh) return this.Ip(e, c); g = c.da && !c.da.Qf(); b = e.da && !e.da.Qf(); if (!g && !b) return !0; g ? (c.da.Ef(c.width, c.height, c.j), g = c.da) : (this.Zc.lg(c.Db, c.x, c.y, c.width, c.height), g = this.Zc); b ? (e.da.Ef(e.width, e.height, e.j), A = e.da) : (this.Zc.lg(e.Db, e.x, e.y, e.width, e.height), A = this.Zc); return g.Yg(A, e.x - c.x, e.y - c.y) } g = c.da && !c.da.Qf(); b = e.da && !e.da.Qf(); g ? (c.da.Ef(c.width, c.height, c.j), this.Zc.xp(c.da)) : this.Zc.lg(c.Db, c.x, c.y, c.width, c.height); g = this.Zc; b ? (e.da.Ef(e.width, e.height, e.j), this.um.xp(e.da)) : this.um.lg(e.Db, e.x, e.y, e.width, e.height); A = this.um; b = 0; for (h = g.Wc; b < h; b++) l = 2 * b, q = l + 1, d = g.fb[l], p = g.fb[q], g.fb[l] = f.Ea(d + c.x, p + c.y, !0), g.fb[q] = f.Ea(d + c.x, p + c.y, !1); g.na(); b = 0; for (h = A.Wc; b < h; b++) l = 2 * b, q = l + 1, d = A.fb[l], p = A.fb[q], A.fb[l] = a.Ea(d + e.x, p + e.y, !0), A.fb[q] = a.Ea(d + e.x, p + e.y, !1); A.na(); return g.Yg(A, 0, 0) }; var y = new ua; new T(0, 0, 0, 0); var l = []; a.prototype.Ip = function(c, e) { var f, a, b, h, q = e.La, d = c.x, p = c.y; c.jw(q, l); var g = e.da && !e.da.Qf(); f = 0; for (a = l.length; f < a; ++f) if (b = l[f], h = b.qw, q.Ct(h, d, p) && (y.Jh(h), y.offset(d, p), y.ao(e.Db))) if (g) if (e.da.Ef(e.width, e.height, e.j), b.Xl) { if (b.Xl.Yg(e.da, e.x - (d + h.left), e.y - (p + h.top))) return l.length = 0, !0 } else { if (this.Zc.lg(y, 0, 0, h.right - h.left, h.bottom - h.top), this.Zc.Yg(e.da, e.x, e.y)) return l.length = 0, !0 } else if (b.Xl) { if (this.Zc.lg(e.Db, 0, 0, e.width, e.height), b.Xl.Yg(this.Zc, -(d + h.left), -(p + h.top))) return l.length = 0, !0 } else return l.length = 0, !0; l.length = 0; return !1 }; a.prototype.Pp = function(c, e) { if (!e) return !1; var f, a, b, h, l; f = 0; for (a = c.Qa.length; f < a; f++) if (c.Qa[f].behavior instanceof e) return !0; if (!c.K) for (f = 0, a = c.Da.length; f < a; f++) for (l = c.Da[f], b = 0, h = l.Qa.length; b < h; b++) if (l.Qa[b].behavior instanceof e) return !0; return !1 }; a.prototype.Qp = function(c) { return this.Pp(c, bc.Ev) }; a.prototype.Bm = function(c) { return this.Pp(c, bc.Fv) }; var q = []; a.prototype.uf = function(c) { var e, f, a; c.na(); this.bt(c.i, c.La, q); e = 0; for (f = q.length; e < f; ++e) if (a = q[e], a.R.solidEnabled && this.tf(c, a)) return q.length = 0, a; q.length = 0; return null }; a.prototype.ru = function(c, e, f, a) { a = a || 50; var b = c.x, h = c.y, l, q = null, d = null; for (l = 0; l < a; l++) if (c.x = b + e * l, c.y = h + f * l, c.T(), !this.tf(c, q) && ((q = this.uf(c)) && (d = q), !q && !q)) return d && this.pu(c, e, f, d), !0; c.x = b; c.y = h; c.T(); return !1 }; a.prototype.pu = function(c, e, f, a) { var b = 2, h, l = !1; h = !1; for (var q = c.x, d = c.y; 16 >= b;) h = 1 / b, b *= 2, c.x += e * h * (l ? 1 : -1), c.y += f * h * (l ? 1 : -1), c.T(), this.tf(c, a) ? h = l = !0 : (h = l = !1, q = c.x, d = c.y); h && (c.x = q, c.y = d, c.T()) }; a.prototype.su = function(c) { var e = 0, f = c.x, a = c.y, b = 0, h = 0, l = 0, q = this.uf(c); if (q) { for (; 100 >= e;) { switch (b) { case 0: h = 0; l = -1; e++; break; case 1: h = 1; l = -1; break; case 2: h = 1; l = 0; break; case 3: l = h = 1; break; case 4: h = 0; l = 1; break; case 5: h = -1; l = 1; break; case 6: h = -1; l = 0; break; case 7: l = h = -1 } b = (b + 1) % 8; c.x = S(f + h * e); c.y = S(a + l * e); c.T(); if (!this.tf(c, q) && (q = this.uf(c), !q)) return } c.x = f; c.y = a; c.T() } }; a.prototype.uu = function(c, e) { c.Gd && e.Gd && this.Bj.push([c, e]) }; a.prototype.Jr = function(c, e) { var f, a, b; f = 0; for (a = this.Bj.length; f < a; f++) if (b = this.Bj[f], b[0] == c && b[1] == e || b[0] == e && b[1] == c) return !0; return !1 }; a.prototype.Hr = function(c, e, f) { var a = c.x, b = c.y, h = oa(10, Ua(e, f, a, b)), l = La(e, f, a, b), q = this.uf(c); if (!q) return Ia(l + ra); var d = q, p, g, A, w, n = V(5); for (p = 1; 36 > p; p++) if (g = l - p * n, c.x = e + Math.cos(g) * h, c.y = f + Math.sin(g) * h, c.T(), !this.tf(c, d) && (d = this.uf(c), !d)) { A = g; break } 36 === p && (A = Ia(l + ra)); d = q; for (p = 1; 36 > p; p++) if (g = l + p * n, c.x = e + Math.cos(g) * h, c.y = f + Math.sin(g) * h, c.T(), !this.tf(c, d) && (d = this.uf(c), !d)) { w = g; break } 36 === p && (w = Ia(l + ra)); c.x = a; c.y = b; c.T(); if (w === A) return w; c = Ma(w, A) / 2; c = Oa(w, A) ? Ia(A + c + ra) : Ia(w + c); A = Math.cos(l); l = Math.sin(l); w = Math.cos(c); c = Math.sin(c); e = A * w + l * c; return La(0, 0, A - 2 * e * w, l - 2 * e * c) }; var A = -1; a.prototype.trigger = function(c, e, f) { if (!this.za) return !1; var a = this.za.Gg; if (!a) return !1; var b = !1, h, l, q; A++; var d = a.Ck; l = 0; for (q = d.length; l < q; ++l) h = this.Mp(c, e, d[l], f), b = b || h; h = this.Mp(c, e, a, f); A--; return b || h }; a.prototype.Mp = function(c, e, f, a) { var b = !1, h, l, q, d; if (e) for (q = this.zm(c, e, e.type.name, f, a), b = b || q, d = e.type.Da, h = 0, l = d.length; h < l; ++h) q = this.zm(c, e, d[h].name, f, a), b = b || q; else q = this.zm(c, e, "system", f, a), b = b || q; return b }; a.prototype.zm = function(c, e, f, a, b) { var h, l = !1, q = !1, q = "undefined" !== typeof b, d = (q ? a.Fn : a.Np)[f]; if (!d) return l; var p = null; a = 0; for (h = d.length; a < h; ++a) if (d[a].method == c) { p = d[a].Hg; break } if (!p) return l; c = q ? p[b] : p; if (!c) return null; a = 0; for (h = c.length; a < h; a++) b = c[a][0], q = c[a][1], q = this.Js(e, f, b, q), l = l || q; return l }; a.prototype.Js = function(c, e, f, a) { var b, h, l = !1; this.Am++; var q = this.Ab().Wb; q && this.Eh(q.Ce); var d = 1 < this.Am; this.Eh(f.Ce); d && this.qu(); var p = this.xj(f); p.Wb = f; c && (b = this.types[e].Y(), b.fa = !1, b.d.length = 1, b.d[0] = c, this.types[e].wc()); c = !0; if (f.parent) { e = p.Hp; for (b = f.parent; b;) e.push(b), b = b.parent; e.reverse(); b = 0; for (h = e.length; b < h; b++) if (!e[b].Bu()) { c = !1; break } } c && (this.Ig++, f.Uc ? f.Au(a) : f.Va(), l = l || p.cf); this.sj(); d && this.iu(); this.nf(f.Ce); q && this.nf(q.Ce); this.re && 0 === this.Rc && 0 === A && !this.pl && this.xb(); this.Am--; return l }; a.prototype.Tk = function() { var c = this.Ab(); return c.Wb.kb[c.$a] }; a.prototype.qu = function() { this.hj++; this.hj >= this.Cl.length && this.Cl.push([]) }; a.prototype.iu = function() { this.hj-- }; a.prototype.Ln = function() { return this.Cl[this.hj] }; a.prototype.xj = function(c) { this.Ai++; this.Ai >= this.Gk.length && this.Gk.push(new Ob); var e = this.Ab(); e.reset(c); return e }; a.prototype.sj = function() { this.Ai-- }; a.prototype.Ab = function() { return this.Gk[this.Ai] }; a.prototype.Mn = function(c, e) { for (var f, a, b, h, l, q; e;) { f = 0; for (a = e.Lc.length; f < a; f++) if (q = e.Lc[f], q instanceof Pb && jb(c, q.name)) return q; e = e.parent } f = 0; for (a = this.Nd.length; f < a; f++) for (l = this.Nd[f], b = 0, h = l.pe.length; b < h; b++) if (q = l.pe[b], q instanceof Pb && jb(c, q.name)) return q; return null }; a.prototype.Pn = function(c) { var e, f; e = 0; for (f = this.Tc.length; e < f; e++) if (this.Tc[e].U === c) return this.Tc[e]; return null }; a.prototype.Ki = function(c) { var e, f; e = 0; for (f = this.r.length; e < f; e++) if (this.r[e].U === c) return this.r[e]; return null }; a.prototype.Ss = function(c) { var e, f; e = 0; for (f = this.Cf.length; e < f; e++) if (this.Cf[e].U === c) return this.Cf[e]; return null }; a.prototype.ut = function() { var c = this, e = this.km, f = this.Sd, a = this.bj, b = !1; this.Cp && (b = !0, e = "__c2_continuouspreview", this.Cp = !1); if (e.length) { this.xb(); f = this.Fu(); if (window.indexedDB && !this.rc) s(e, f, function() { J("Saved state to IndexedDB storage (" + f.length + " bytes)"); c.Sd = f; c.trigger(X.prototype.k.gk, null); c.Sd = ""; b && d() }, function(a) { try { localStorage.setItem("__c2save_" + e, f), J("Saved state to WebStorage (" + f.length + " bytes)"), c.Sd = f, c.trigger(X.prototype.k.gk, null), c.Sd = "", b && d() } catch (h) { J("Failed to save game state: " + a + "; " + h) } }); else try { localStorage.setItem("__c2save_" + e, f), J("Saved state to WebStorage (" + f.length + " bytes)"), c.Sd = f, this.trigger(X.prototype.k.gk, null), c.Sd = "", b && d() } catch (h) { J("Error saving to WebStorage: " + h) } this.Jb = this.bj = this.km = "" } a.length && (window.indexedDB && !this.rc ? g(a, function(f) { f ? (c.Jb = f, J("Loaded state from IndexedDB storage (" + c.Jb.length + " bytes)")) : (c.Jb = localStorage.getItem("__c2save_" + a) || "", J("Loaded state from WebStorage (" + c.Jb.length + " bytes)")); c.Oh = !1; c.Jb.length || c.trigger(X.prototype.k.fk, null) }, function() { c.Jb = localStorage.getItem("__c2save_" + a) || ""; J("Loaded state from WebStorage (" + c.Jb.length + " bytes)"); c.Oh = !1; c.Jb.length || c.trigger(X.prototype.k.fk, null) }) : (this.Jb = localStorage.getItem("__c2save_" + a) || "", J("Loaded state from WebStorage (" + this.Jb.length + " bytes)"), this.Oh = !1, c.Jb.length || c.trigger(X.prototype.k.fk, null)), this.km = this.bj = ""); this.Jb.length && (this.xb(), this.Ot(this.Jb), this.Sd = this.Jb, this.trigger(X.prototype.k.Lq, null), this.Jb = this.Sd = "") }; a.prototype.Fu = function() { var c, f, a, b, h, l, q, d = { c2save: !0, version: 1, rt: { time: this.Gb.X, walltime: this.Bd.X, timescale: this.vf, tickcount: this.xd, execcount: this.Ig, next_uid: this.vh, running_layout: this.za.U, start_time_offset: Date.now() - this.Mj }, types: {}, layouts: {}, events: { groups: {}, cnds: {}, acts: {}, vars: {} } }; c = 0; for (f = this.r.length; c < f; c++) if (h = this.r[c], !h.K && !this.Qp(h)) { l = { instances: [] }; Wa(h.R) && (l.ex = u(h.R)); a = 0; for (b = h.d.length; a < b; a++) l.instances.push(this.jm(h.d[a])); d.types[h.U.toString()] = l } c = 0; for (f = this.Tc.length; c < f; c++) a = this.Tc[c], d.layouts[a.U.toString()] = a.Bb(); b = d.events.groups; c = 0; for (f = this.Cf.length; c < f; c++) a = this.Cf[c], b[a.U.toString()] = this.Tg[a.Sg].Rg; f = d.events.cnds; for (q in this.Gf) this.Gf.hasOwnProperty(q) && (c = this.Gf[q], Wa(c.R) && (f[q] = { ex: u(c.R) })); f = d.events.acts; for (q in this.Bf) this.Bf.hasOwnProperty(q) && (c = this.Bf[q], Wa(c.R) && (f[q] = { ex: c.R })); f = d.events.vars; for (q in this.tg) this.tg.hasOwnProperty(q) && (c = this.tg[q], c.Pi || c.parent && !c.eh || (f[q] = c.data)); d.system = this.vd.Bb(); return JSON.stringify(d) }; a.prototype.qp = function() { var c, f, a, b, h, l; this.ye = {}; c = 0; for (f = this.r.length; c < f; c++) if (a = this.r[c], !a.K) for (b = 0, h = a.d.length; b < h; b++) l = a.d[b], this.ye[l.uid.toString()] = l }; a.prototype.Ot = function(c) { c = JSON.parse(c); if (c.c2save && !(1 < c.version)) { var f = c.rt; this.Gb.reset(); this.Gb.X = f.time; this.Bd.reset(); this.Bd.X = f.walltime || 0; this.vf = f.timescale; this.xd = f.tickcount; this.Ig = f.execcount; this.Mj = Date.now() - f.start_time_offset; var a = f.running_layout; if (a !== this.za.U) if (a = this.Pn(a)) this.An(a); else return; var b, h, l, q, d, p, g; p = c.types; for (h in p) if (p.hasOwnProperty(h) && (q = this.Ki(parseInt(h, 10))) && !q.K && !this.Qp(q)) { p[h].ex ? q.R = p[h].ex : Xa(q.R); d = q.d; l = p[h].instances; a = 0; for (b = pa(d.length, l.length); a < b; a++) this.cj(d[a], l[a]); a = l.length; for (b = d.length; a < b; a++) this.Ie(d[a]); a = d.length; for (b = l.length; a < b; a++) { d = null; if (q.qa.ve && (d = this.za.Ji(l[a].w.l), !d)) continue; d = this.ne(q.Ac, d, !1, 0, 0, !0); this.cj(d, l[a]) } q.ng = !0 } this.xb(); this.qp(); b = c.layouts; for (h in b) b.hasOwnProperty(h) && (a = this.Pn(parseInt(h, 10))) && a.Ob(b[h]); b = c.events.groups; for (h in b) b.hasOwnProperty(h) && (a = this.Ss(parseInt(h, 10))) && this.Tg[a.Sg] && (this.Tg[a.Sg].Rg = b[h]); a = c.events.cnds; for (h in a) a.hasOwnProperty(h) && this.Gf.hasOwnProperty(h) && (this.Gf[h].R = a[h].ex); a = c.events.acts; for (h in a) a.hasOwnProperty(h) && this.Bf.hasOwnProperty(h) && (this.Bf[h].R = a[h].ex); a = c.events.vars; for (h in a) a.hasOwnProperty(h) && this.tg.hasOwnProperty(h) && (this.tg[h].data = a[h]); this.vh = f.next_uid; this.vd.Ob(c.system); a = 0; for (b = this.r.length; a < b; a++) if (q = this.r[a], !q.K) for (h = 0, c = q.d.length; h < c; h++) { d = q.d[h]; if (q.tc) for (p = d.Qg(), f = d.siblings.length = 0, l = q.Vb.length; f < l; f++) g = q.Vb[f], q !== g && d.siblings.push(g.d[p]); d.Cd && d.Cd(); if (d.L) for (f = 0, l = d.L.length; f < l; f++) p = d.L[f], p.Cd && p.Cd() } this.aa = !0 } }; a.prototype.jm = function(c, f) { var a, b, h, l, q; l = c.type; h = l.qa; var d = {}; f ? d.c2 = !0 : d.uid = c.uid; Wa(c.R) && (d.ex = u(c.R)); if (c.ab && c.ab.length) for (d.ivs = {}, a = 0, b = c.ab.length; a < b; a++) d.ivs[c.type.ll[a].toString()] = c.ab[a]; if (h.ve) { h = { x: c.x, y: c.y, w: c.width, h: c.height, l: c.i.U, zi: c.jd() }; 0 !== c.j && (h.a = c.j); 1 !== c.opacity && (h.o = c.opacity);.5 !== c.Mb && (h.hX = c.Mb);.5 !== c.Nb && (h.hY = c.Nb); 0 !== c.Lb && (h.bm = c.Lb); c.visible || (h.v = c.visible); c.Gd || (h.ce = c.Gd); - 1 !== c.uh && (h.mts = c.uh); if (l.J.length) for (h.fx = [], a = 0, b = l.J.length; a < b; a++) q = l.J[a], h.fx.push({ name: q.name, active: c.fe[q.index], params: c.Ha[q.index] }); d.w = h } if (c.L && c.L.length) for (d.behs = {}, a = 0, b = c.L.length; a < b; a++) l = c.L[a], l.Bb && (d.behs[l.type.U.toString()] = l.Bb()); c.Bb && (d.data = c.Bb()); return d }; a.prototype.Us = function(c, f) { var a, b; a = 0; for (b = c.ll.length; a < b; a++) if (c.ll[a] === f) return a; return -1 }; a.prototype.Rs = function(c, f) { var a, b; a = 0; for (b = c.L.length; a < b; a++) if (c.L[a].type.U === f) return a; return -1 }; a.prototype.cj = function(c, f, a) { var b, h, l, q, d; d = c.type; l = d.qa; if (a) { if (!f.c2) return } else c.uid = f.uid; f.ex ? c.R = f.ex : Xa(c.R); if (h = f.ivs) for (b in h) h.hasOwnProperty(b) && (a = this.Us(d, parseInt(b, 10)), 0 > a || a >= c.ab.length || (c.ab[a] = h[b])); if (l.ve) { l = f.w; c.i.U !== l.l && (a = c.i, c.i = this.za.Ji(l.l), c.i ? (a.ig(c, !0), c.i.xg(c, !0), c.T(), c.i.Ih(0)) : (c.i = a, this.Ie(c))); c.x = l.x; c.y = l.y; c.width = l.w; c.height = l.h; c.bd = l.zi; c.j = l.hasOwnProperty("a") ? l.a : 0; c.opacity = l.hasOwnProperty("o") ? l.o : 1; c.Mb = l.hasOwnProperty("hX") ? l.hX : .5; c.Nb = l.hasOwnProperty("hY") ? l.hY : .5; c.visible = l.hasOwnProperty("v") ? l.v : !0; c.Gd = l.hasOwnProperty("ce") ? l.ce : !0; c.uh = l.hasOwnProperty("mts") ? l.mts : -1; c.Lb = l.hasOwnProperty("bm") ? l.bm : 0; c.Dg = gb(c.Lb); this.p && hb(c, c.Lb, this.p); c.T(); if (l.hasOwnProperty("fx")) for (a = 0, h = l.fx.length; a < h; a++) q = d.Wk(l.fx[a].name), 0 > q || (c.fe[q] = l.fx[a].active, c.Ha[q] = l.fx[a].params); c.ae() } if (d = f.behs) for (b in d) d.hasOwnProperty(b) && (l = this.Rs(c, parseInt(b, 10)), 0 > l || c.L[l].Ob(d[b])); f.data && c.Ob(f.data) }; Qb = function(c) { return new a(document.getElementById(c)) }; Rb = function(c, f) { return new a({ dc: !0, width: c, height: f }) }; window.cr_createRuntime = Qb; window.cr_createDCRuntime = Rb; window.createCocoonJSRuntime = function() { window.c2cocoonjs = !0; var c = document.createElement("screencanvas") || document.createElement("canvas"); c.sw = !0; document.body.appendChild(c); c = new a(c); window.c2runtime = c; window.addEventListener("orientationchange", function() { window.c2runtime.setSize(window.innerWidth, window.innerHeight) }); window.c2runtime.setSize(window.innerWidth, window.innerHeight); return c }; window.createEjectaRuntime = function() { var c = new a(document.getElementById("canvas")); window.c2runtime = c; window.c2runtime.setSize(window.innerWidth, window.innerHeight); return c } })(); window.cr_getC2Runtime = function() { var k = document.getElementById("c2canvas"); return k ? k.c2runtime : window.c2runtime ? window.c2runtime : null }; window.cr_sizeCanvas = function(k, r) { if (0 !== k && 0 !== r) { var a = window.cr_getC2Runtime(); a && a.setSize(k, r) } }; window.cr_setSuspended = function(k) { var r = window.cr_getC2Runtime(); r && r.setSuspended(k) }; (function() { function k(f, a) { this.b = f; this.Gg = null; this.scrollX = this.b.eb / 2; this.scrollY = this.b.cb / 2; this.scale = 1; this.j = 0; this.Kf = !0; this.name = a[0]; this.width = a[1]; this.height = a[2]; this.Rp = a[3]; this.Ap = a[4]; this.U = a[5]; var b = a[6], h, d; this.P = []; this.Xg = []; h = 0; for (d = b.length; h < d; h++) { var g = new Sb(this, b[h]); g.Ro = h; this.P.push(g) } b = a[7]; this.Xe = []; h = 0; for (d = b.length; h < d; h++) { var g = b[h], l = this.b.r[g[1]]; l.Ac || (l.Ac = g); this.Xe.push(g); - 1 === this.Xg.indexOf(l) && this.Xg.push(l) } this.J = []; this.ba = []; this.Ha = []; h = 0; for (d = a[8].length; h < d; h++) this.J.push({ id: a[8][h][0], name: a[8][h][1], wb: -1, lc: !0, index: h }), this.Ha.push(a[8][h][2].slice(0)); this.ae(); this.hg = new T(0, 0, 1, 1); this.cm = new T(0, 0, 1, 1); this.ze = {} } function r(f, a) { return f.bd - a.bd } function a(f, a) { this.bb = f; this.b = f.b; this.d = []; this.scale = 1; this.j = 0; this.Oe = !1; this.Zd = new T(0, 0, 0, 0); this.Lp = new ua; this.Ia = this.Ca = this.Ja = this.Ba = 0; this.xf = !1; this.de = -1; this.name = a[0]; this.index = a[1]; this.U = a[2]; this.visible = a[3]; this.he = a[4]; this.$d = a[5]; this.Ic = a[6]; this.Jc = a[7]; this.opacity = a[8]; this.Mk = a[9]; this.ad = a[10]; this.cd = a[11]; this.Lb = a[12]; this.gs = a[13]; this.Dg = "source-over"; this.zb = this.Cb = 0; this.fc = null; this.Vf = b(); this.Vd = !0; this.Wi = new T(0, 0, -1, -1); this.zc = new T(0, 0, -1, -1); this.ad && (this.fc = new fb(this.b.eb, this.b.cb)); this.Ae = !1; var d = a[14], h, g; this.Mf = []; h = 0; for (g = d.length; h < g; h++) { var n = d[h], l = this.b.r[n[1]]; l.Ac || (l.Ac = n, l.Qr = this.index); this.Mf.push(n); - 1 === this.bb.Xg.indexOf(l) && this.bb.Xg.push(l) } this.J = []; this.ba = []; this.Ha = []; h = 0; for (g = a[15].length; h < g; h++) this.J.push({ id: a[15][h][0], name: a[15][h][1], wb: -1, lc: !0, index: h }), this.Ha.push(a[15][h][2].slice(0)); this.ae(); this.hg = new T(0, 0, 1, 1); this.cm = new T(0, 0, 1, 1) } function b() { return u.length ? u.pop() : [] } function s(a) { a.length = 0; u.push(a) } k.prototype.Eu = function(a) { var b = a.type.U.toString(); this.ze.hasOwnProperty(b) || (this.ze[b] = []); this.ze[b].push(this.b.jm(a)) }; k.prototype.Un = function() { var a = this.P[0]; return !a.$d && 1 === a.opacity && !a.Mk && a.visible }; k.prototype.ae = function() { this.ba.length = 0; var a, b, d; a = 0; for (b = this.J.length; a < b; a++) d = this.J[a], d.lc && this.ba.push(d) }; k.prototype.Vk = function(a) { var b, d, h; b = 0; for (d = this.J.length; b < d; b++) if (h = this.J[b], h.name === a) return h; return null }; var g = [], d = !0; k.prototype.rm = function() { this.Ap && (this.Gg = this.b.Hk[this.Ap], this.Gg.Vp()); this.b.za = this; this.scrollX = this.b.eb / 2; this.scrollY = this.b.cb / 2; var a, b, n, h, w, k, l; a = 0; for (n = this.b.r.length; a < n; a++) if (b = this.b.r[a], !b.K) for (w = b.d, b = 0, h = w.length; b < h; b++) if (k = w[b], k.i) { var q = k.i.Ro; q >= this.P.length && (q = this.P.length - 1); k.i = this.P[q]; - 1 === k.i.d.indexOf(k) && k.i.d.push(k); k.i.xf = !0 } if (!d) for (a = 0, n = this.P.length; a < n; ++a) this.P[a].d.sort(r); g.length = 0; this.Fr(); a = 0; for (n = this.P.length; a < n; a++) k = this.P[a], k.Or(), k.Em(); w = !1; if (!this.Kf) { for (l in this.ze) if (this.ze.hasOwnProperty(l) && (b = this.b.Ki(parseInt(l, 10))) && !b.K && this.b.Bm(b)) { h = this.ze[l]; a = 0; for (n = h.length; a < n; a++) { k = null; if (b.qa.ve && (k = this.Ji(h[a].w.l), !k)) continue; k = this.b.ne(b.Ac, k, !1, 0, 0, !0); this.b.cj(k, h[a]); w = !0; g.push(k) } h.length = 0 } a = 0; for (n = this.P.length; a < n; a++) this.P[a].d.sort(r), this.P[a].xf = !0 } w && (this.b.xb(), this.b.qp()); for (a = 0; a < g.length; a++) if (k = g[a], k.type.tc) for (n = k.Qg(), b = 0, h = k.type.Vb.length; b < h; b++) l = k.type.Vb[b], k.type !== l && (l.d.length > n ? k.siblings.push(l.d[n]) : l.Ac && (w = this.b.ne(l.Ac, k.i, !0, k.x, k.y, !0), this.b.xb(), l.Zj(), k.siblings.push(w), g.push(w))); a = 0; for (n = this.Xe.length; a < n; a++) this.b.ne(this.Xe[a], null, !0); this.b.Cg = null; this.b.xb(); if (this.b.ka && !this.b.ya) for (a = 0, n = this.b.r.length; a < n; a++) l = this.b.r[a], !l.K && l.d.length && l.Yl && l.Yl(this.b.ka); a = 0; for (n = g.length; a < n; a++) k = g[a], this.b.trigger(Object.getPrototypeOf(k.type.qa).k.dk, k); g.length = 0; this.b.trigger(X.prototype.k.Qm, null); this.Kf = !1 }; k.prototype.Nr = function() { var a, b, d, h, g; b = a = 0; for (d = this.Xe.length; a < d; a++) h = this.Xe[a], g = this.b.r[h[1]], g.global ? this.b.ne(h, null, !0) : (this.Xe[b] = h, b++); this.Xe.length = b }; k.prototype.Ou = function() { this.b.trigger(X.prototype.k.Kq, null); this.b.vd.Sb.length = 0; var a, b, g, h, w, n; if (!this.Kf) for (a = 0, b = this.P.length; a < b; a++) for (this.P[a].Fm(), w = this.P[a].d, g = 0, h = w.length; g < h; g++) n = w[g], n.type.global || this.b.Bm(n.type) && this.Eu(n); a = 0; for (b = this.P.length; a < b; a++) { w = this.P[a].d; g = 0; for (h = w.length; g < h; g++) n = w[g], n.type.global || this.b.Ie(n); this.b.xb(); w.length = 0; this.P[a].xf = !0 } a = 0; for (b = this.b.r.length; a < b; a++) if (w = this.b.r[a], !(w.global || w.qa.ve || w.qa.Kj || w.K)) { g = 0; for (h = w.d.length; g < h; g++) this.b.Ie(w.d[g]); this.b.xb() } d = !1 }; new T(0, 0, 0, 0); k.prototype.ed = function(a) { var b, d = a, h = !1, g = !this.b.Dc; g && (this.b.aj || (this.b.aj = document.createElement("canvas"), b = this.b.aj, b.width = this.b.O, b.height = this.b.N, this.b.qo = b.getContext("2d"), h = !0), b = this.b.aj, d = this.b.qo, b.width !== this.b.O && (b.width = this.b.O, h = !0), b.height !== this.b.N && (b.height = this.b.N, h = !0), h && (d.webkitImageSmoothingEnabled = this.b.ca, d.mozImageSmoothingEnabled = this.b.ca, d.msImageSmoothingEnabled = this.b.ca, d.imageSmoothingEnabled = this.b.ca)); d.globalAlpha = 1; d.globalCompositeOperation = "source-over"; this.b.nk && !this.Un() && d.clearRect(0, 0, this.b.O, this.b.N); var n, l, h = 0; for (n = this.P.length; h < n; h++) l = this.P[h], l.visible && 0 < l.opacity && 11 !== l.Lb && (l.d.length || !l.$d) ? l.ed(d) : l.Em(); g && a.drawImage(b, 0, 0, this.b.width, this.b.height) }; k.prototype.Cc = function(a) { var b = 0 < this.ba.length || this.b.rg || !this.b.Dc; if (b) { this.b.$b || (this.b.$b = a.Hd(this.b.O, this.b.N, this.b.ca)); if (this.b.$b.Ag !== this.b.O || this.b.$b.zg !== this.b.N) a.deleteTexture(this.b.$b), this.b.$b = a.Hd(this.b.O, this.b.N, this.b.ca); a.td(this.b.$b); this.b.Dc || a.kg(this.b.O, this.b.N) } else this.b.$b && (a.td(null), a.deleteTexture(this.b.$b), this.b.$b = null); this.b.nk && !this.Un() && a.clear(0, 0, 0, 0); var d, h, g; d = 0; for (h = this.P.length; d < h; d++) g = this.P[d], g.visible && 0 < g.opacity && (g.d.length || !g.$d) ? g.Cc(a) : g.Em(); b && (0 === this.ba.length || 1 === this.ba.length && this.b.Dc ? (1 === this.ba.length ? (b = this.ba[0].index, a.ud(this.ba[0].wb), a.jg(null, 1 / this.b.O, 1 / this.b.N, 0, 0, 1, 1, this.scale, this.j, 0, 0, this.b.O / 2, this.b.N / 2, this.Ha[b]), a.vj(this.ba[0].wb) && (this.b.aa = !0)) : a.ud(0), this.b.Dc || a.kg(this.b.width, this.b.height), a.td(null), a.pf(1), a.gc(this.b.$b), a.up(), a.sd(), a.zd(), b = this.b.width / 2, d = this.b.height / 2, a.yj(-b, d, b, d, b, -d, -b, -d), a.gc(null)) : this.dm(a, null, null, null)) }; k.prototype.Og = function() { return 0 < this.ba.length || this.b.rg || !this.b.Dc ? this.b.$b : null }; k.prototype.Qn = function() { var a = this.P[0].qc(), b, d, h; b = 1; for (d = this.P.length; b < d; b++) h = this.P[b], (0 !== h.Ic || 0 !== h.Jc) && h.qc() < a && (a = h.qc()); return a }; k.prototype.lm = function(a) { if (!this.Rp) { var b = 1 / this.Qn() * this.b.O / 2; a > this.width - b && (a = this.width - b); a < b && (a = b) } this.scrollX !== a && (this.scrollX = a, this.b.aa = !0) }; k.prototype.mm = function(a) { if (!this.Rp) { var b = 1 / this.Qn() * this.b.N / 2; a > this.height - b && (a = this.height - b); a < b && (a = b) } this.scrollY !== a && (this.scrollY = a, this.b.aa = !0) }; k.prototype.Fr = function() { this.lm(this.scrollX); this.mm(this.scrollY) }; k.prototype.dm = function(a, b, d, h) { var g = d ? d.ba : b ? b.ba : this.ba, n = 1, l = 0, q = 0, A = 0, c = this.b.O, e = this.b.N; d ? (n = d.i.qc(), l = d.i.Ta(), q = d.i.Ba, A = d.i.Ca, c = d.i.Ja, e = d.i.Ia) : b && (n = b.qc(), l = b.Ta(), q = b.Ba, A = b.Ca, c = b.Ja, e = b.Ia); var m = this.b.Pk, k, t, r, s, u = 0, z = 1, fa, P = this.b.O, H = this.b.N, M = P / 2, C = H / 2, L = b ? b.hg : this.hg, B = b ? b.cm : this.cm, D = 0, N = 0, F = 0, I = 0, G = P, ga = P, O = H, ma = H, ha = r = 0, va = d ? d.i.Ta() : 0; if (d) { k = 0; for (t = g.length; k < t; k++) r += a.Ys(g[k].wb), ha += a.Zs(g[k].wb); s = d.La; D = b.Ea(s.left, s.top, !0, !0); F = b.Ea(s.left, s.top, !1, !0); G = b.Ea(s.right, s.bottom, !0, !0); O = b.Ea(s.right, s.bottom, !1, !0); 0 !== va && (k = b.Ea(s.right, s.top, !0, !0), t = b.Ea(s.right, s.top, !1, !0), N = b.Ea(s.left, s.bottom, !0, !0), I = b.Ea(s.left, s.bottom, !1, !0), s = Math.min(D, G, k, N), G = Math.max(D, G, k, N), D = s, s = Math.min(F, O, t, I), O = Math.max(F, O, t, I), F = s); D -= r; F -= ha; G += r; O += ha; B.left = D / P; B.top = 1 - F / H; B.right = G / P; B.bottom = 1 - O / H; N = D = S(D); I = F = S(F); ga = G = sa(G); ma = O = sa(O); N -= r; I -= ha; ga += r; ma += ha; 0 > D && (D = 0); 0 > F && (F = 0); G > P && (G = P); O > H && (O = H); 0 > N && (N = 0); 0 > I && (I = 0); ga > P && (ga = P); ma > H && (ma = H); L.left = D / P; L.top = 1 - F / H; L.right = G / P; L.bottom = 1 - O / H } else L.left = B.left = 0, L.top = B.top = 0, L.right = B.right = 1, L.bottom = B.bottom = 1; ha = d && ((d.j || va) && a.Ch(g[0].wb) || 0 !== r || 0 !== ha || 1 !== d.opacity || d.type.qa.Mo) || b && !d && 1 !== b.opacity; a.up(); if (ha) { m[u] || (m[u] = a.Hd(P, H, this.b.ca)); if (m[u].Ag !== P || m[u].zg !== H) a.deleteTexture(m[u]), m[u] = a.Hd(P, H, this.b.ca); a.ud(0); a.td(m[u]); fa = ma - I; a.clearRect(N, H - I - fa, ga - N, fa); d ? d.Cc(a) : (a.gc(this.b.vc), a.pf(b.opacity), a.sd(), a.translate(-M, -C), a.zd(), a.Ud(D, O, G, O, G, F, D, F, L)); B.left = B.top = 0; B.right = B.bottom = 1; d && (s = L.top, L.top = L.bottom, L.bottom = s); u = 1; z = 0 } a.pf(1); r = g.length - 1; var va = a.Zl(g[r].wb) || !b && !d && !this.b.Dc, wa = 0; k = 0; for (t = g.length; k < t; k++) { m[u] || (m[u] = a.Hd(P, H, this.b.ca)); if (m[u].Ag !== P || m[u].zg !== H) a.deleteTexture(m[u]), m[u] = a.Hd(P, H, this.b.ca); a.ud(g[k].wb); wa = g[k].index; a.vj(g[k].wb) && (this.b.aa = !0); 0 != k || ha ? (a.jg(h, 1 / P, 1 / H, B.left, B.top, B.right, B.bottom, n, l, q, A, (q + c) / 2, (A + e) / 2, d ? d.Ha[wa] : b ? b.Ha[wa] : this.Ha[wa]), a.gc(null), k !== r || va ? (a.td(m[u]), fa = ma - I, s = H - I - fa, a.clearRect(N, s, ga - N, fa)) : (d ? a.Be(d.Cb, d.zb) : b && a.Be(b.Cb, b.zb), a.td(h)), a.gc(m[z]), a.sd(), a.translate(-M, -C), a.zd(), a.Ud(D, O, G, O, G, F, D, F, L), k !== r || va || a.gc(null)) : (a.td(m[u]), fa = ma - I, s = H - I - fa, a.clearRect(N, s, ga - N, fa), d ? (a.jg(h, 1 / d.width, 1 / d.height, B.left, B.top, B.right, B.bottom, n, l, q, A, (q + c) / 2, (A + e) / 2, d.Ha[wa]), d.Cc(a)) : (a.jg(h, 1 / P, 1 / H, 0, 0, 1, 1, n, l, q, A, (q + c) / 2, (A + e) / 2, b ? b.Ha[wa] : this.Ha[wa]), a.gc(b ? this.b.vc : this.b.$b), a.sd(), a.translate(-M, -C), a.zd(), a.Ud(D, O, G, O, G, F, D, F, L)), B.left = B.top = 0, B.right = B.bottom = 1, d && !va && (s = O, O = F, F = s)); u = 0 === u ? 1 : 0; z = 0 === u ? 1 : 0 } va && (a.ud(0), d ? a.Be(d.Cb, d.zb) : b ? a.Be(b.Cb, b.zb) : this.b.Dc || (a.kg(this.b.width, this.b.height), M = this.b.width / 2, C = this.b.height / 2, F = D = 0, G = this.b.width, O = this.b.height), a.td(h), a.gc(m[z]), a.sd(), a.translate(-M, -C), a.zd(), d && 1 === g.length && !ha ? a.Ud(D, F, G, F, G, O, D, O, L) : a.Ud(D, O, G, O, G, F, D, F, L), a.gc(null)) }; k.prototype.Ji = function(a) { var b, d; b = 0; for (d = this.P.length; b < d; b++) if (this.P[b].U === a) return this.P[b]; return null }; k.prototype.Bb = function() { var a, b, d, h = { sx: this.scrollX, sy: this.scrollY, s: this.scale, a: this.j, w: this.width, h: this.height, fv: this.Kf, persist: this.ze, fx: [], layers: {} }; a = 0; for (b = this.J.length; a < b; a++) d = this.J[a], h.fx.push({ name: d.name, active: d.lc, params: this.Ha[d.index] }); a = 0; for (b = this.P.length; a < b; a++) d = this.P[a], h.layers[d.U.toString()] = d.Bb(); return h }; k.prototype.Ob = function(a) { var b, d, h, g; this.scrollX = a.sx; this.scrollY = a.sy; this.scale = a.s; this.j = a.a; this.width = a.w; this.height = a.h; this.ze = a.persist; "undefined" !== typeof a.fv && (this.Kf = a.fv); var n = a.fx; b = 0; for (d = n.length; b < d; b++) if (h = this.Vk(n[b].name)) h.lc = n[b].active, this.Ha[h.index] = n[b].params; this.ae(); b = a.layers; for (g in b) b.hasOwnProperty(g) && (a = this.Ji(parseInt(g, 10))) && a.Ob(b[g]) }; Eb = k; a.prototype.ae = function() { this.ba.length = 0; var a, b, d; a = 0; for (b = this.J.length; a < b; a++) d = this.J[a], d.lc && this.ba.push(d) }; a.prototype.Vk = function(a) { var b, d, h; b = 0; for (d = this.J.length; b < d; b++) if (h = this.J[b], h.name === a) return h; return null }; a.prototype.Or = function() { var a, b, d, h, n, k; b = a = 0; for (d = this.Mf.length; a < d; a++) { h = this.Mf[a]; n = this.b.r[h[1]]; k = this.b.Bm(n); n = !0; if (!k || this.bb.Kf) h = this.b.ne(h, this, !0), g.push(h), h.type.global && (n = !1); n && (this.Mf[b] = this.Mf[a], b++) } this.Mf.length = b; this.b.xb(); !this.b.u && this.J.length && (this.Lb = this.gs); this.Dg = gb(this.Lb); this.b.p && hb(this, this.Lb, this.b.p); this.Vd = !0 }; a.prototype.ig = function(a, b) { var d = Ca(this.d, a); 0 > d || (b && this.ad && a.Qb && a.Qb.right >= a.Qb.left && (a.na(), this.fc.update(a, a.Qb, null), a.Qb.set(0, 0, -1, -1)), d === this.d.length - 1 ? this.d.pop() : (ya(this.d, d), this.Ih(d)), this.Vd = !0) }; a.prototype.xg = function(a, b) { a.bd = this.d.length; this.d.push(a); b && this.ad && a.Qb && a.T(); this.Vd = !0 }; a.prototype.mu = function(a) { this.d.unshift(a); this.Ih(0) }; a.prototype.Ut = function(a, b, d) { var h = a.jd(); b = b.jd(); ya(this.d, h); h < b && b--; d && b++; b === this.d.length ? this.d.push(a) : this.d.splice(b, 0, a); this.Ih(h < b ? h : b) }; a.prototype.Ih = function(a) { -1 === this.de ? this.de = a : a < this.de && (this.de = a); this.Vd = this.xf = !0 }; a.prototype.Fm = function() { if (this.xf) { -1 === this.de && (this.de = 0); var a, b, d; if (this.ad) for (a = this.de, b = this.d.length; a < b; ++a) d = this.d[a], d.bd = a, this.fc.Rt(d.Qb); else for (a = this.de, b = this.d.length; a < b; ++a) this.d[a].bd = a; this.xf = !1; this.de = -1 } }; a.prototype.qc = function(a) { return this.Vs() * (this.b.Dc || a ? this.b.yg : 1) }; a.prototype.Vs = function() { return (this.scale * this.bb.scale - 1) * this.cd + 1 }; a.prototype.Ta = function() { return this.Oe ? 0 : Ia(this.bb.j + this.j) }; var u = [], t = [], n = []; a.prototype.Rn = function() { this.Fm(); this.fc.zj(this.Ba, this.Ca, this.Ja, this.Ia, n); if (!n.length) return b(); if (1 === n.length) { var a = b(); Aa(a, n[0]); n.length = 0; return a } for (var d = !0; 1 < n.length;) { for (var a = n, g = void 0, h = void 0, k = void 0, r = void 0, l = void 0, g = 0, h = a.length; g < h - 1; g += 2) { var k = a[g], r = a[g + 1], l = b(), q = k, A = r, c = l, e = 0, m = 0, v = 0, u = q.length, E = A.length, Q = void 0, qa = void 0; for (c.length = u + E; e < u && m < E; ++v) Q = q[e], qa = A[m], Q.bd < qa.bd ? (c[v] = Q, ++e) : (c[v] = qa, ++m); for (; e < u; ++e, ++v) c[v] = q[e]; for (; m < E; ++m, ++v) c[v] = A[m]; d || (s(k), s(r)); t.push(l) } 1 === h % 2 && (d ? (k = b(), Aa(k, a[h - 1]), t.push(k)) : t.push(a[h - 1])); Aa(a, t); t.length = 0; d = !1 } a = n[0]; n.length = 0; return a }; a.prototype.ed = function(a) { this.Ae = this.Mk || 1 !== this.opacity || 0 !== this.Lb; var b = this.b.canvas, d = a, h = !1; this.Ae && (this.b.$i || (this.b.$i = document.createElement("canvas"), b = this.b.$i, b.width = this.b.O, b.height = this.b.N, this.b.po = b.getContext("2d"), h = !0), b = this.b.$i, d = this.b.po, b.width !== this.b.O && (b.width = this.b.O, h = !0), b.height !== this.b.N && (b.height = this.b.N, h = !0), h && (d.webkitImageSmoothingEnabled = this.b.ca, d.mozImageSmoothingEnabled = this.b.ca, d.msImageSmoothingEnabled = this.b.ca, d.imageSmoothingEnabled = this.b.ca), this.$d && d.clearRect(0, 0, this.b.O, this.b.N)); d.globalAlpha = 1; d.globalCompositeOperation = "source-over"; this.$d || (d.fillStyle = "rgb(" + this.he[0] + "," + this.he[1] + "," + this.he[2] + ")", d.fillRect(0, 0, this.b.O, this.b.N)); d.save(); this.Oe = !0; var h = this.Eb(0, 0, !0, !0), g = this.Eb(0, 0, !1, !0); this.Oe = !1; this.b.rd && (h = Math.round(h), g = Math.round(g)); this.fm(h, g, d); var n = this.qc(); d.scale(n, n); d.translate(-h, -g); this.ad ? (this.zc.left = this.fc.jc(this.Ba), this.zc.top = this.fc.kc(this.Ca), this.zc.right = this.fc.jc(this.Ja), this.zc.bottom = this.fc.kc(this.Ia), this.Vd || !this.zc.yi(this.Wi) ? (s(this.Vf), h = this.Rn(), this.Vd = !1, this.Wi.ni(this.zc)) : h = this.Vf) : h = this.d; for (var l, q = null, g = 0, n = h.length; g < n; ++g) l = h[g], l !== q && (this.cs(l, d), q = l); this.ad && (this.Vf = h); d.restore(); this.Ae && (a.globalCompositeOperation = this.Dg, a.globalAlpha = this.opacity, a.drawImage(b, 0, 0)) }; a.prototype.cs = function(a, b) { if (a.visible && 0 !== a.width && 0 !== a.height) { a.na(); var d = a.La; d.right < this.Ba || d.bottom < this.Ca || d.left > this.Ja || d.top > this.Ia || (b.globalCompositeOperation = a.Dg, a.ed(b)) } }; a.prototype.Em = function() { this.Oe = !0; var a = this.Eb(0, 0, !0, !0), b = this.Eb(0, 0, !1, !0); this.Oe = !1; this.b.rd && (a = Math.round(a), b = Math.round(b)); this.fm(a, b, null) }; a.prototype.fm = function(a, b, d) { var h = this.qc(); this.Ba = a; this.Ca = b; this.Ja = a + 1 / h * this.b.O; this.Ia = b + 1 / h * this.b.N; a = this.Ta(); 0 !== a && (d && (d.translate(this.b.O / 2, this.b.N / 2), d.rotate(-a), d.translate(this.b.O / -2, this.b.N / -2)), this.Zd.set(this.Ba, this.Ca, this.Ja, this.Ia), this.Zd.offset((this.Ba + this.Ja) / -2, (this.Ca + this.Ia) / -2), this.Lp.yp(this.Zd, a), this.Lp.mn(this.Zd), this.Zd.offset((this.Ba + this.Ja) / 2, (this.Ca + this.Ia) / 2), this.Ba = this.Zd.left, this.Ca = this.Zd.top, this.Ja = this.Zd.right, this.Ia = this.Zd.bottom) }; a.prototype.Cc = function(a) { var b = 0, d = 0; if (this.Ae = this.Mk || 1 !== this.opacity || 0 < this.ba.length || 0 !== this.Lb) { this.b.vc || (this.b.vc = a.Hd(this.b.O, this.b.N, this.b.ca)); if (this.b.vc.Ag !== this.b.O || this.b.vc.zg !== this.b.N) a.deleteTexture(this.b.vc), this.b.vc = a.Hd(this.b.O, this.b.N, this.b.ca); a.td(this.b.vc); this.$d && a.clear(0, 0, 0, 0) } this.$d || a.clear(this.he[0] / 255, this.he[1] / 255, this.he[2] / 255, 1); this.Oe = !0; var h = this.Eb(0, 0, !0, !0), b = this.Eb(0, 0, !1, !0); this.Oe = !1; this.b.rd && (h = Math.round(h), b = Math.round(b)); this.fm(h, b, null); h = this.qc(); a.sd(); a.scale(h, h); a.gm(-this.Ta()); a.translate((this.Ba + this.Ja) / -2, (this.Ca + this.Ia) / -2); a.zd(); this.ad ? (this.zc.left = this.fc.jc(this.Ba), this.zc.top = this.fc.kc(this.Ca), this.zc.right = this.fc.jc(this.Ja), this.zc.bottom = this.fc.kc(this.Ia), this.Vd || !this.zc.yi(this.Wi) ? (s(this.Vf), b = this.Rn(), this.Vd = !1, this.Wi.ni(this.zc)) : b = this.Vf) : b = this.d; var g, n, l = null, d = 0; for (g = b.length; d < g; ++d) n = b[d], n !== l && (this.ds(b[d], a), l = n); this.ad && (this.Vf = b); this.Ae && (b = this.ba.length ? this.ba[0].wb : 0, d = this.ba.length ? this.ba[0].index : 0, 0 === this.ba.length || 1 === this.ba.length && !a.Zl(b) && 1 === this.opacity ? (1 === this.ba.length ? (a.ud(b), a.jg(this.bb.Og(), 1 / this.b.O, 1 / this.b.N, 0, 0, 1, 1, h, this.Ta(), this.Ba, this.Ca, (this.Ba + this.Ja) / 2, (this.Ca + this.Ia) / 2, this.Ha[d]), a.vj(b) && (this.b.aa = !0)) : a.ud(0), a.td(this.bb.Og()), a.pf(this.opacity), a.gc(this.b.vc), a.Be(this.Cb, this.zb), a.sd(), a.zd(), h = this.b.O / 2, b = this.b.N / 2, a.yj(-h, b, h, b, h, -b, -h, -b), a.gc(null)) : this.bb.dm(a, this, null, this.bb.Og())) }; a.prototype.ds = function(a, b) { if (a.visible && 0 !== a.width && 0 !== a.height) { a.na(); var d = a.La; d.right < this.Ba || d.bottom < this.Ca || d.left > this.Ja || d.top > this.Ia || (a.Yp ? this.es(a, b) : (b.ud(0), b.Be(a.Cb, a.zb), a.Cc(b))) } }; a.prototype.es = function(a, b) { var d = a.ba[0].wb, h = a.ba[0].index, g = this.qc(); if (1 !== a.ba.length || b.Zl(d) || b.ou(d) || (a.j || a.i.Ta()) && b.Ch(d) || 1 !== a.opacity || a.type.qa.Mo) this.bb.dm(b, this, a, this.Ae ? this.b.vc : this.bb.Og()), b.sd(), b.scale(g, g), b.gm(-this.Ta()), b.translate((this.Ba + this.Ja) / -2, (this.Ca + this.Ia) / -2), b.zd(); else { b.ud(d); b.Be(a.Cb, a.zb); b.vj(d) && (this.b.aa = !0); var n = 0, l = 0, q = 0, A = 0; b.Ch(d) && (d = a.La, n = this.Ea(d.left, d.top, !0, !0), l = this.Ea(d.left, d.top, !1, !0), q = this.Ea(d.right, d.bottom, !0, !0), d = this.Ea(d.right, d.bottom, !1, !0), n /= windowWidth, l = 1 - l / windowHeight, q /= windowWidth, A = 1 - d / windowHeight); b.jg(this.Ae ? this.b.vc : this.bb.Og(), 1 / a.width, 1 / a.height, n, l, q, A, g, this.Ta(), this.Ba, this.Ca, (this.Ba + this.Ja) / 2, (this.Ca + this.Ia) / 2, a.Ha[h]); a.Cc(b) } }; a.prototype.Eb = function(a, b, d, h) { var g = this.b.devicePixelRatio; this.b.Ye && (a *= g, b *= g); var g = this.b.hp, n = this.b.ip, g = (this.bb.scrollX - g) * this.Ic + g, n = (this.bb.scrollY - n) * this.Jc + n, l = g, q = n, A = 1 / this.qc(!h); h ? (l -= this.b.O * A / 2, q -= this.b.N * A / 2) : (l -= this.b.width * A / 2, q -= this.b.height * A / 2); l += a * A; q += b * A; b = this.Ta(); 0 !== b && (l -= g, q -= n, a = Math.cos(b), b = Math.sin(b), h = l * a - q * b, q = q * a + l * b, l = h + g, q += n); return d ? l : q }; a.prototype.Ea = function(a, b, d, h) { var g = this.b.hp, n = this.b.ip, l = (this.bb.scrollX - g) * this.Ic + g, q = (this.bb.scrollY - n) * this.Jc + n, n = l, g = q, A = this.Ta(); if (0 !== A) { a -= l; b -= q; var c = Math.cos(-A), A = Math.sin(-A), e = a * c - b * A; b = b * c + a * A; a = e + l; b += q } l = 1 / this.qc(!h); h ? (n -= this.b.O * l / 2, g -= this.b.N * l / 2) : (n -= this.b.width * l / 2, g -= this.b.height * l / 2); n = (a - n) / l; g = (b - g) / l; a = this.b.devicePixelRatio; this.b.Ye && !h && (n /= a, g /= a); return d ? n : g }; a.prototype.Bb = function() { var a, b, d, h = { s: this.scale, a: this.j, vl: this.Ba, vt: this.Ca, vr: this.Ja, vb: this.Ia, v: this.visible, bc: this.he, t: this.$d, px: this.Ic, py: this.Jc, o: this.opacity, zr: this.cd, fx: [], instances: [] }; a = 0; for (b = this.J.length; a < b; a++) d = this.J[a], h.fx.push({ name: d.name, active: d.lc, params: this.Ha[d.index] }); return h }; a.prototype.Ob = function(a) { var b, d; this.scale = a.s; this.j = a.a; this.Ba = a.vl; this.Ca = a.vt; this.Ja = a.vr; this.Ia = a.vb; this.visible = a.v; this.he = a.bc; this.$d = a.t; this.Ic = a.px; this.Jc = a.py; this.opacity = a.o; this.cd = a.zr; var h = a.fx; a = 0; for (b = h.length; a < b; a++) if (d = this.Vk(h[a].name)) d.lc = h[a].active, this.Ha[d.index] = h[a].params; this.ae(); this.d.sort(r); this.xf = !0 }; Sb = a })(); (function() { function k(a, b) { var d, c = a.length; switch (c) { case 0: return !0; case 1: return a[0] === b[0]; case 2: return a[0] === b[0] && a[1] === b[1]; default: for (d = 0; d < c; d++) if (a[d] !== b[d]) return !1; return !0 } } function r(a, b) { return a.index - b.index } function a(a) { var b, d, c, e; 2 === a.length ? a[0].index > a[1].index && (b = a[0], a[0] = a[1], a[1] = b) : 2 < a.length && a.sort(r); a.length >= h.length && (h.length = a.length + 1); h[a.length] || (h[a.length] = []); e = h[a.length]; b = 0; for (d = e.length; b < d; b++) if (c = e[b], k(a, c)) return c; e.push(a); return a } function b(a, b) { this.b = a; this.Np = {}; this.Fn = {}; this.fl = !1; this.Wn = new ba; this.Ck = []; this.ok = []; this.name = b[0]; var d = b[1]; this.pe = []; var c, e; c = 0; for (e = d.length; c < e; c++) this.Yn(d[c], null, this.pe) } function s(a) { this.type = a; this.d = []; this.ea = []; this.fa = !0 } function g(a, b, d) { this.sheet = a; this.parent = b; this.b = a.b; this.ra = []; this.Ce = []; this.Vn = this.Vj = this.ym = this.jl = this.group = this.Ep = !1; this.kb = []; this.Nc = []; this.Lc = []; this.Sg = ""; this.Rg = this.jl = this.group = !1; this.vn = null; d[1] && (this.Sg = d[1][1].toLowerCase(), this.group = !0, this.jl = !!d[1][0], this.vn = [], this.Rg = this.jl, this.b.Cf.push(this), this.b.Tg[this.Sg] = this); this.Uc = d[2]; this.U = d[4]; this.group || (this.b.ln[this.U.toString()] = this); var c = d[5]; a = 0; for (b = c.length; a < b; a++) { var e = new Tb(this, c[a]); e.index = a; this.kb.push(e); this.dn(e.type) } c = d[6]; a = 0; for (b = c.length; a < b; a++) e = new Ub(this, c[a]), e.index = a, this.Nc.push(e); if (8 === d.length) for (d = d[7], a = 0, b = d.length; a < b; a++) this.sheet.Yn(d[a], this, this.Lc); this.Qi = !1; this.kb.length && (this.Qi = null == this.kb[0].type && this.kb[0].sb == X.prototype.k.kq) } function d(a, b) { var d, c, e; if (a && (-1 === b.indexOf(a) && b.push(a), a.tc)) for (d = 0, c = a.Vb.length; d < c; d++) e = a.Vb[d], a !== e && -1 === b.indexOf(e) && b.push(e) } function u(a, b) { this.mc = a; this.sheet = a.sheet; this.b = a.b; this.M = []; this.la = []; this.R = {}; this.index = -1; this.vg = !1; this.sb = this.b.ee(b[1]); this.trigger = 0 < b[3]; this.En = 2 === b[3]; this.md = b[4]; this.ml = b[5]; this.Nt = b[6]; this.U = b[7]; this.b.Gf[this.U.toString()] = this; - 1 === b[0] ? (this.type = null, this.Va = this.im, this.Le = null, this.xc = -1) : (this.type = this.b.r[b[0]], this.Va = this.Nt ? this.Cu : this.hm, b[2] ? (this.Le = this.type.Ii(b[2]), this.xc = this.type.Rk(b[2])) : (this.Le = null, this.xc = -1), this.mc.parent && this.mc.parent.Hj()); this.En && (this.Va = this.Du); if (10 === b.length) { var d, c, e = b[9]; d = 0; for (c = e.length; d < c; d++) { var h = new Vb(this, e[d]); this.M.push(h) } this.la.length = e.length } } function t(a, b) { this.mc = a; this.sheet = a.sheet; this.b = a.b; this.M = []; this.la = []; this.R = {}; this.index = -1; this.vg = !1; this.sb = this.b.ee(b[1]); - 1 === b[0] ? (this.type = null, this.Va = this.im, this.Le = null, this.xc = -1) : (this.type = this.b.r[b[0]], this.Va = this.hm, b[2] ? (this.Le = this.type.Ii(b[2]), this.xc = this.type.Rk(b[2])) : (this.Le = null, this.xc = -1)); this.U = b[3]; this.b.Bf[this.U.toString()] = this; if (6 === b.length) { var d, c, e = b[5]; d = 0; for (c = e.length; d < c; d++) { var h = new Vb(this, e[d]); this.M.push(h) } this.la.length = e.length } } function n(a, b) { this.B = a; this.mc = a.mc; this.sheet = a.sheet; this.b = a.b; this.type = b[0]; this.fd = null; this.De = 0; this.get = null; this.un = 0; this.bb = null; this.key = 0; this.object = null; this.index = 0; this.Uh = this.sf = this.Uh = this.sf = this.Gn = this.Qe = this.Vh = null; this.Mc = !1; var d, c, e; switch (b[0]) { case 0: case 7: this.fd = new Wb(this, b[1]); this.De = 0; this.get = this.gt; break; case 1: this.fd = new Wb(this, b[1]); this.De = 0; this.get = this.ht; break; case 5: this.fd = new Wb(this, b[1]); this.De = 0; this.get = this.lt; break; case 3: case 8: this.un = b[1]; this.get = this.et; break; case 6: this.bb = this.b.xl[b[1]]; this.get = this.mt; break; case 9: this.key = b[1]; this.get = this.kt; break; case 4: this.object = this.b.r[b[1]]; this.get = this.nt; this.mc.dn(this.object); this.B instanceof Ub ? this.mc.Hj() : this.mc.parent && this.mc.parent.Hj(); break; case 10: this.index = b[1]; a.type.K ? (this.get = this.it, this.Mc = !0) : this.get = this.jt; break; case 11: this.Vh = b[1]; this.Qe = null; this.get = this.ft; break; case 2: case 12: this.Gn = b[1]; this.get = this.dt; break; case 13: for (this.get = this.ot, this.sf = [], this.Uh = [], d = 1, c = b.length; d < c; d++) e = new Vb(this.B, b[d]), this.sf.push(e), this.Uh.push(0) } } function f(a, b, d) { this.sheet = a; this.parent = b; this.b = a.b; this.ra = []; this.name = d[1]; this.ak = d[2]; this.il = d[3]; this.eh = !!d[4]; this.Pi = !!d[5]; this.U = d[6]; this.b.tg[this.U.toString()] = this; this.data = this.il; this.parent ? (this.lf = this.eh || this.Pi ? -1 : this.b.Mu++, this.b.Ar.push(this)) : (this.lf = -1, this.b.yr.push(this)) } function p(a, b, d) { this.sheet = a; this.parent = b; this.b = a.b; this.ra = []; this.Wg = null; this.yt = d[1]; this.lc = !0 } function x() { this.Hp = []; this.reset(null) } var h = []; b.prototype.toString = function() { return this.name }; b.prototype.Yn = function(a, b, d) { switch (a[0]) { case 0: a = new Xb(this, b, a); if (a.Uc) for (d.push(a), d = 0, b = a.kb.length; d < b; d++) a.kb[d].trigger && this.Zn(a, d); else a.io() ? this.Zn(a, 0) : d.push(a); break; case 1: a = new Pb(this, b, a); d.push(a); break; case 2: a = new Yb(this, b, a), d.push(a) } }; b.prototype.Oa = function() { var a, b; a = 0; for (b = this.pe.length; a < b; a++) this.pe[a].Oa(a < b - 1 && this.pe[a + 1].Qi) }; b.prototype.Vp = function() { this.Ck.length = 0; this.ok.length = 0; this.cn(this); this.ok.length = 0 }; b.prototype.cn = function(a) { var b, d, c, e, h = a.Ck, f = a.ok, g = this.Wn.be(); b = 0; for (d = g.length; b < d; ++b) c = g[b], e = c.Wg, !c.lc || a === e || -1 < f.indexOf(e) || (f.push(e), e.cn(a), h.push(e)) }; b.prototype.Va = function(a) { this.b.rw || (this.fl = !0, a || (this.b.pl = !0)); var b, d; b = 0; for (d = this.pe.length; b < d; b++) { var c = this.pe[b]; c.Va(); this.b.wk(c.ra); this.b.re && this.b.xb() } a || (this.b.pl = !1) }; b.prototype.Zn = function(a, b) { a.Uc || this.b.Yj.push(a); var d, c, e = a.kb[b], h; h = e.type ? e.type.name : "system"; var f = (d = e.En) ? this.Fn : this.Np; f[h] || (f[h] = []); h = f[h]; f = e.sb; if (d) { if (e.M.length && (e = e.M[0], 1 === e.type && 2 === e.fd.type)) { e = e.fd.value.toLowerCase(); d = 0; for (c = h.length; d < c; d++) if (h[d].method == f) { d = h[d].Hg; d[e] ? d[e].push([a, b]) : d[e] = [ [a, b] ]; return } d = {}; d[e] = [ [a, b] ]; h.push({ method: f, Hg: d }) } } else { d = 0; for (c = h.length; d < c; d++) if (h[d].method == f) { h[d].Hg.push([a, b]); return } Y && f === Y.prototype.k.Af ? h.unshift({ method: f, Hg: [ [a, b] ] }) : h.push({ method: f, Hg: [ [a, b] ] }) } }; Fb = b; s.prototype.el = function() { return this.fa ? this.type.d.length : this.d.length }; s.prototype.pc = function() { return this.fa ? this.type.d : this.d }; s.prototype.Ah = function(a) { a && (a.b.Ab().Wb.Uc ? (this.fa && (this.d.length = 0, Aa(this.ea, a.type.d), this.fa = !1), a = this.ea.indexOf(a), -1 !== a && (this.d.push(this.ea[a]), this.ea.splice(a, 1))) : (this.fa = !1, this.d.length = 1, this.d[0] = a)) }; nb = s; window._c2hh_ = "417E4E0E570EED14CF766147927F77190F28B24E"; g.prototype.Oa = function(b) { var d, h = this.parent; if (this.group) for (this.Vj = !0; h;) { if (!h.group) { this.Vj = !1; break } h = h.parent } this.ym = !this.io() && (!this.parent || this.parent.group && this.parent.Vj); this.Vn = !!b; this.Ce = this.ra.slice(0); for (h = this.parent; h;) { b = 0; for (d = h.ra.length; b < d; b++) this.xr(h.ra[b]); h = h.parent } this.ra = a(this.ra); this.Ce = a(this.Ce); b = 0; for (d = this.kb.length; b < d; b++) this.kb[b].Oa(); b = 0; for (d = this.Nc.length; b < d; b++) this.Nc[b].Oa(); b = 0; for (d = this.Lc.length; b < d; b++) this.Lc[b].Oa(b < d - 1 && this.Lc[b + 1].Qi) }; g.prototype.dn = function(a) { d(a, this.ra) }; g.prototype.xr = function(a) { d(a, this.Ce) }; g.prototype.Hj = function() { this.Ep = !0; this.parent && this.parent.Hj() }; g.prototype.io = function() { return this.kb.length ? this.kb[0].trigger : !1 }; g.prototype.Va = function() { var a, b = !1, d, c = this.b, e = this.b.Ab(); e.Wb = this; var h = this.kb; this.Qi || (e.Fk = !1); if (this.Uc) { 0 === h.length && (b = !0); e.$a = 0; for (a = h.length; e.$a < a; e.$a++) h[e.$a].trigger || (d = h[e.$a].Va()) && (b = !0); (e.cf = b) && this.Dj() } else { e.$a = 0; for (a = h.length; e.$a < a; e.$a++) if (d = h[e.$a].Va(), !d) { e.cf = !1; this.ym && c.re && c.xb(); return } e.cf = !0; this.Dj() } this.js(e) }; g.prototype.js = function(a) { a.cf && this.Vn && (a.Fk = !0); this.ym && this.b.re && this.b.xb() }; g.prototype.Au = function(a) { this.b.Ab().Wb = this; this.kb[a].Va() && (this.Dj(), this.b.Ab().cf = !0) }; g.prototype.Dj = function() { var a = this.b.Ab(), b; a.Tb = 0; for (b = this.Nc.length; a.Tb < b; a.Tb++) if (this.Nc[a.Tb].Va()) return; this.tp() }; g.prototype.xu = function() { var a = this.b.Ab(), b; for (b = this.Nc.length; a.Tb < b; a.Tb++) if (this.Nc[a.Tb].Va()) return; this.tp() }; g.prototype.tp = function() { if (this.Lc.length) { var a, b, d, c, e = this.Lc.length - 1; this.b.xj(this); if (this.Ep) for (a = 0, b = this.Lc.length; a < b; a++) d = this.Lc[a], (c = !this.Vj || !this.group && a < e) && this.b.wj(d.ra), d.Va(), c ? this.b.nf(d.ra) : this.b.wk(d.ra); else for (a = 0, b = this.Lc.length; a < b; a++) this.Lc[a].Va(); this.b.sj() } }; g.prototype.Bu = function() { var a = this.b.Ab(); a.Wb = this; var b = !1, d; a.$a = 0; for (d = this.kb.length; a.$a < d; a.$a++) if (this.kb[a.$a].Va()) b = !0; else if (!this.Uc) return !1; return this.Uc ? b : !0 }; g.prototype.yu = function() { this.b.Ig++; var a = this.b.Ab().$a, b = this.b.xj(this); if (!this.Uc) for (b.$a = a + 1, a = this.kb.length; b.$a < a; b.$a++) if (!this.kb[b.$a].Va()) { this.b.sj(); return } this.Dj(); this.b.sj() }; g.prototype.Gt = function(a) { var b = a.index; if (0 === b) return !0; for (--b; 0 <= b; --b) if (this.kb[b].type === a.type) return !1; return !0 }; Xb = g; u.prototype.Oa = function() { var a, b, d; a = 0; for (b = this.M.length; a < b; a++) d = this.M[a], d.Oa(), d.Mc && (this.vg = !0) }; u.prototype.Du = function() { return !0 }; u.prototype.im = function() { var a, b; a = 0; for (b = this.M.length; a < b; a++) this.la[a] = this.M[a].get(); return Va(this.sb.apply(this.b.vd, this.la), this.ml) }; u.prototype.Cu = function() { var a, b; a = 0; for (b = this.M.length; a < b; a++) this.la[a] = this.M[a].get(); a = this.sb.apply(this.Le ? this.Le : this.type, this.la); this.type.wc(); return a }; u.prototype.hm = function() { var a, b, d, c, e, h, f, g, n = this.type, k = n.Y(), p = this.mc.Uc && !this.trigger; b = 0; var t = n.tc, w = n.K, s = n.Od, r = this.xc, u = -1 < r, y = this.vg, x = this.M, B = this.la, D = this.ml, N = this.sb, F; if (y) for (b = 0, e = x.length; b < e; ++b) h = x[b], h.Mc || (B[b] = h.get(0)); else for (b = 0, e = x.length; b < e; ++b) B[b] = x[b].get(0); if (k.fa) { k.d.length = 0; k.ea.length = 0; F = n.d; a = 0; for (c = F.length; a < c; ++a) { g = F[a]; if (y) for (b = 0, e = x.length; b < e; ++b) h = x[b], h.Mc && (B[b] = h.get(a)); u ? (b = 0, w && (b = g.type.Jf[s]), b = N.apply(g.L[r + b], B)) : b = N.apply(g, B); (f = Va(b, D)) ? k.d.push(g): p && k.ea.push(g) } n.finish && n.finish(!0); k.fa = !1; n.wc(); return k.el() } d = 0; F = (f = p && !this.mc.Gt(this)) ? k.ea : k.d; var I = !1; a = 0; for (c = F.length; a < c; ++a) { g = F[a]; if (y) for (b = 0, e = x.length; b < e; ++b) h = x[b], h.Mc && (B[b] = h.get(a)); u ? (b = 0, w && (b = g.type.Jf[s]), b = N.apply(g.L[r + b], B)) : b = N.apply(g, B); if (Va(b, D)) if (I = !0, f) { if (k.d.push(g), t) for (b = 0, e = g.siblings.length; b < e; b++) h = g.siblings[b], h.type.Y().d.push(h) } else { F[d] = g; if (t) for (b = 0, e = g.siblings.length; b < e; b++) h = g.siblings[b], h.type.Y().d[d] = h; d++ } else if (f) { F[d] = g; if (t) for (b = 0, e = g.siblings.length; b < e; b++) h = g.siblings[b], h.type.Y().ea[d] = h; d++ } else if (p && (k.ea.push(g), t)) for (b = 0, e = g.siblings.length; b < e; b++) h = g.siblings[b], h.type.Y().ea.push(h) } F.length = d; if (t) for (w = n.Vb, a = 0, c = w.length; a < c; a++) g = w[a].Y(), f ? g.ea.length = d : g.d.length = d; d = I; if (f && !I) for (a = 0, c = k.d.length; a < c; a++) { g = k.d[a]; if (y) for (b = 0, e = x.length; b < e; b++) h = x[b], h.Mc && (B[b] = h.get(a)); b = u ? N.apply(g.L[r], B) : N.apply(g, B); if (Va(b, D)) { I = !0; break } } n.finish && n.finish(d || p); return p ? I : k.el() }; Tb = u; t.prototype.Oa = function() { var a, b, d; a = 0; for (b = this.M.length; a < b; a++) d = this.M[a], d.Oa(), d.Mc && (this.vg = !0) }; t.prototype.im = function() { var a, b; a = 0; for (b = this.M.length; a < b; a++) this.la[a] = this.M[a].get(); return this.sb.apply(this.b.vd, this.la) }; t.prototype.hm = function() { var a = this.type.Y().pc(), b = this.type.K, d = this.type.Od, c = this.xc, e = -1 < c, h = this.vg, f = this.M, g = this.la, n = this.sb, k, p, t, w, s, r; if (h) for (p = 0, w = f.length; p < w; ++p) s = f[p], s.Mc || (g[p] = s.get(0)); else for (p = 0, w = f.length; p < w; ++p) g[p] = f[p].get(0); k = 0; for (t = a.length; k < t; ++k) { r = a[k]; if (h) for (p = 0, w = f.length; p < w; ++p) s = f[p], s.Mc && (g[p] = s.get(k)); e ? (p = 0, b && (p = r.type.Jf[d]), n.apply(r.L[c + p], g)) : n.apply(r, g) } return !1 }; Ub = t; var w = [], y = -1; n.prototype.Oa = function() { var a, b; if (11 === this.type) this.Qe = this.b.Mn(this.Vh, this.mc.parent); else if (13 === this.type) for (a = 0, b = this.sf.length; a < b; a++) this.sf[a].Oa(); this.fd && this.fd.Oa() }; n.prototype.Tt = function(a) { this.Mc || !a || a.qa.Kj || (this.Mc = !0) }; n.prototype.wp = function() { this.Mc = !0 }; n.prototype.gb = function() { y++; w.length === y && w.push(new Zb); return w[y] }; n.prototype.Ua = function() { y-- }; n.prototype.gt = function(a) { this.De = a || 0; a = this.gb(); this.fd.get(a); this.Ua(); return a.data }; n.prototype.ht = function(a) { this.De = a || 0; a = this.gb(); this.fd.get(a); this.Ua(); return R(a.data) ? a.data : "" }; n.prototype.nt = function() { return this.object }; n.prototype.et = function() { return this.un }; n.prototype.lt = function(a) { this.De = a || 0; a = this.gb(); this.fd.get(a); this.Ua(); return a.lb() ? this.b.Mg(a.data) : this.b.Yk(a.data) }; n.prototype.mt = function() { return this.bb }; n.prototype.kt = function() { return this.key }; n.prototype.jt = function() { return this.index }; n.prototype.it = function(a) { a = a || 0; var b = this.B.type, d = null, d = b.Y(), c = d.pc(); if (c.length) d = c[a % c.length].type; else if (d.ea.length) d = d.ea[a % d.ea.length].type; else if (b.d.length) d = b.d[a % b.d.length].type; else return 0; return this.index + d.Bi[b.Od] }; n.prototype.ft = function() { return this.Qe }; n.prototype.dt = function() { return this.Gn }; n.prototype.ot = function() { var a, b; a = 0; for (b = this.sf.length; a < b; a++) this.Uh[a] = this.sf[a].get(); return this.Uh }; Vb = n; f.prototype.Oa = function() { this.ra = a(this.ra) }; f.prototype.qf = function(a) { var b = this.b.Ln(); this.parent && !this.eh && b ? (this.lf >= b.length && (b.length = this.lf + 1), b[this.lf] = a) : this.data = a }; f.prototype.Pg = function() { var a = this.b.Ln(); return !this.parent || this.eh || !a || this.Pi ? this.data : this.lf >= a.length || "undefined" === typeof a[this.lf] ? this.il : a[this.lf] }; f.prototype.Va = function() { !this.parent || this.eh || this.Pi || this.qf(this.il) }; Pb = f; p.prototype.toString = function() { return "include:" + this.Wg.toString() }; p.prototype.Oa = function() { this.Wg = this.b.Hk[this.yt]; this.sheet.Wn.add(this); this.ra = a(this.ra); for (var b = this.parent; b;) b.group && b.vn.push(this), b = b.parent; this.Uu() }; p.prototype.Va = function() { this.parent && this.b.Eh(this.b.r); this.Wg.fl || this.Wg.Va(!0); this.parent && this.b.nf(this.b.r) }; p.prototype.Uu = function() { for (var a = this.parent; a;) { if (a.group && !a.Rg) { this.lc = !1; return } a = a.parent } this.lc = !0 }; Yb = p; x.prototype.reset = function(a) { this.Wb = a; this.Tb = this.$a = 0; this.Hp.length = 0; this.Fk = this.cf = !1 }; Ob = x })(); (function() { function k(a, b) { this.B = a; this.b = a.b; this.type = b[0]; this.get = [this.xs, this.ts, this.Fs, this.Is, this.ls, this.Gs, this.Bs, this.os, this.As, this.Es, this.ms, this.Ds, this.qs, this.Cs, this.ys, this.zs, this.us, this.vs, this.ns, this.Hs, this.Cn, this.ws, this.Cn, this.rs][this.type]; var k = null; this.Pb = this.M = this.la = this.sb = this.Sj = this.pb = this.first = this.value = null; this.xc = -1; this.Pd = null; this.Hm = -1; this.Qe = this.Vh = null; this.Fh = !1; switch (this.type) { case 0: case 1: case 2: this.value = b[1]; break; case 3: this.first = new Wb(a, b[1]); break; case 18: this.first = new Wb(a, b[1]); this.pb = new Wb(a, b[2]); this.Sj = new Wb(a, b[3]); break; case 19: this.sb = this.b.ee(b[1]); this.sb !== X.prototype.xa.random && this.sb !== X.prototype.xa.tn || this.B.wp(); this.la = []; this.M = []; 3 === b.length ? (k = b[2], this.la.length = k.length + 1) : this.la.length = 1; break; case 20: this.Pb = this.b.r[b[1]]; this.xc = -1; this.sb = this.b.ee(b[2]); this.Fh = b[3]; ac.Function && this.sb === ac.Function.prototype.xa.jv && this.B.wp(); this.Pd = b[4] ? new Wb(a, b[4]) : null; this.la = []; this.M = []; 6 === b.length ? (k = b[5], this.la.length = k.length + 1) : this.la.length = 1; break; case 21: this.Pb = this.b.r[b[1]]; this.Fh = b[2]; this.Pd = b[3] ? new Wb(a, b[3]) : null; this.Hm = b[4]; break; case 22: this.Pb = this.b.r[b[1]]; this.Pb.Ii(b[2]); this.xc = this.Pb.Rk(b[2]); this.sb = this.b.ee(b[3]); this.Fh = b[4]; this.Pd = b[5] ? new Wb(a, b[5]) : null; this.la = []; this.M = []; 7 === b.length ? (k = b[6], this.la.length = k.length + 1) : this.la.length = 1; break; case 23: this.Vh = b[1], this.Qe = null } this.B.Tt(this.Pb); 4 <= this.type && 17 >= this.type && (this.first = new Wb(a, b[1]), this.pb = new Wb(a, b[2])); if (k) { var g, d; g = 0; for (d = k.length; g < d; g++) this.M.push(new Wb(a, k[g])) } } function r(a, b) { this.type = a || W.zf; this.data = b || 0; this.cg = null; this.type == W.zf && (this.data = Math.floor(this.data)) } k.prototype.Oa = function() { 23 === this.type && (this.Qe = this.B.b.Mn(this.Vh, this.B.mc.parent)); this.first && this.first.Oa(); this.pb && this.pb.Oa(); this.Sj && this.Sj.Oa(); this.Pd && this.Pd.Oa(); if (this.M) { var a, b; a = 0; for (b = this.M.length; a < b; a++) this.M[a].Oa() } }; k.prototype.Hs = function(a) { this.la[0] = a; a = this.B.gb(); var b, k; b = 0; for (k = this.M.length; b < k; b++) this.M[b].get(a), this.la[b + 1] = a.data; this.B.Ua(); this.sb.apply(this.b.vd, this.la) }; k.prototype.Cn = function(a) { var b = this.Pb.Y(), k = b.pc(); if (!k.length) if (b.ea.length) k = b.ea; else { this.Fh ? a.Pa("") : a.ma(0); return } this.la[0] = a; a.cg = this.Pb; a = this.B.gb(); var g, b = 0; for (g = this.M.length; b < g; b++) this.M[b].get(a), this.la[b + 1] = a.data; b = this.B.De; this.Pd && (this.Pd.get(a), a.lb() && (b = a.data, k = this.Pb.d)); this.B.Ua(); b %= k.length; 0 > b && (b += k.length); k = k[b]; - 1 < this.xc ? (a = 0, this.Pb.K && (a = k.type.Jf[this.Pb.Od]), this.sb.apply(k.L[this.xc + a], this.la)) : this.sb.apply(k, this.la) }; k.prototype.ws = function(a) { var b = this.Pb.Y(), k = b.pc(); if (!k.length) if (b.ea.length) k = b.ea; else { this.Fh ? a.Pa("") : a.ma(0); return } b = this.B.De; if (this.Pd) { var g = this.B.gb(); this.Pd.get(g); if (g.lb()) { b = g.data; k = this.Pb.d; b %= k.length; 0 > b && (b += k.length); k = k[b].ab[this.Hm]; R(k) ? a.Pa(k) : a.D(k); this.B.Ua(); return } this.B.Ua() } b %= k.length; 0 > b && (b += k.length); k = k[b]; b = 0; this.Pb.K && (b = k.type.Bi[this.Pb.Od]); k = k.ab[this.Hm + b]; R(k) ? a.Pa(k) : a.D(k) }; k.prototype.xs = function(a) { a.type = W.zf; a.data = this.value }; k.prototype.ts = function(a) { a.type = W.yf; a.data = this.value }; k.prototype.Fs = function(a) { a.type = W.String; a.data = this.value }; k.prototype.Is = function(a) { this.first.get(a); a.lb() && (a.data = -a.data) }; k.prototype.ls = function(a) { this.first.get(a); var b = this.B.gb(); this.pb.get(b); a.lb() && b.lb() && (a.data += b.data, b.Rf() && a.Zf()); this.B.Ua() }; k.prototype.Gs = function(a) { this.first.get(a); var b = this.B.gb(); this.pb.get(b); a.lb() && b.lb() && (a.data -= b.data, b.Rf() && a.Zf()); this.B.Ua() }; k.prototype.Bs = function(a) { this.first.get(a); var b = this.B.gb(); this.pb.get(b); a.lb() && b.lb() && (a.data *= b.data, b.Rf() && a.Zf()); this.B.Ua() }; k.prototype.os = function(a) { this.first.get(a); var b = this.B.gb(); this.pb.get(b); a.lb() && b.lb() && (a.data /= b.data, a.Zf()); this.B.Ua() }; k.prototype.As = function(a) { this.first.get(a); var b = this.B.gb(); this.pb.get(b); a.lb() && b.lb() && (a.data %= b.data, b.Rf() && a.Zf()); this.B.Ua() }; k.prototype.Es = function(a) { this.first.get(a); var b = this.B.gb(); this.pb.get(b); a.lb() && b.lb() && (a.data = Math.pow(a.data, b.data), b.Rf() && a.Zf()); this.B.Ua() }; k.prototype.ms = function(a) { this.first.get(a); var b = this.B.gb(); this.pb.get(b); a.lb() ? b.Ri() ? a.Pa(a.data.toString() + b.data) : a.data && b.data ? a.ma(1) : a.ma(0) : a.Ri() && (a.data = b.Ri() ? a.data + b.data : a.data + (Math.round(1E10 * b.data) / 1E10).toString()); this.B.Ua() }; k.prototype.Ds = function(a) { this.first.get(a); var b = this.B.gb(); this.pb.get(b); a.lb() && b.lb() && (a.data || b.data ? a.ma(1) : a.ma(0)); this.B.Ua() }; k.prototype.ns = function(a) { this.first.get(a); a.data ? this.pb.get(a) : this.Sj.get(a) }; k.prototype.qs = function(a) { this.first.get(a); var b = this.B.gb(); this.pb.get(b); a.ma(a.data === b.data ? 1 : 0); this.B.Ua() }; k.prototype.Cs = function(a) { this.first.get(a); var b = this.B.gb(); this.pb.get(b); a.ma(a.data !== b.data ? 1 : 0); this.B.Ua() }; k.prototype.ys = function(a) { this.first.get(a); var b = this.B.gb(); this.pb.get(b); a.ma(a.data < b.data ? 1 : 0); this.B.Ua() }; k.prototype.zs = function(a) { this.first.get(a); var b = this.B.gb(); this.pb.get(b); a.ma(a.data <= b.data ? 1 : 0); this.B.Ua() }; k.prototype.us = function(a) { this.first.get(a); var b = this.B.gb(); this.pb.get(b); a.ma(a.data > b.data ? 1 : 0); this.B.Ua() }; k.prototype.vs = function(a) { this.first.get(a); var b = this.B.gb(); this.pb.get(b); a.ma(a.data >= b.data ? 1 : 0); this.B.Ua() }; k.prototype.rs = function(a) { var b = this.Qe.Pg(); ia(b) ? a.D(b) : a.Pa(b) }; Wb = k; r.prototype.Rf = function() { return this.type === W.yf }; r.prototype.lb = function() { return this.type === W.zf || this.type === W.yf }; r.prototype.Ri = function() { return this.type === W.String }; r.prototype.Zf = function() { this.Rf() || (this.Ri() && (this.data = parseFloat(this.data)), this.type = W.yf) }; r.prototype.ma = function(a) { this.type = W.zf; this.data = Math.floor(a) }; r.prototype.D = function(a) { this.type = W.yf; this.data = a }; r.prototype.Pa = function(a) { this.type = W.String; this.data = a }; r.prototype.Ku = function(a) { ia(a) ? (this.type = W.yf, this.data = a) : R(a) ? (this.type = W.String, this.data = a.toString()) : (this.type = W.zf, this.data = 0) }; Zb = r; W = { zf: 0, yf: 1, String: 2 } })(); function X(k) { this.b = k; this.Sb = [] } X.prototype.Bb = function() { var k = {}, r, a, b, s, g, d, u, t; k.waits = []; var n = k.waits, f; r = 0; for (a = this.Sb.length; r < a; r++) { d = this.Sb[r]; f = { t: d.time, st: d.Dp, s: d.qm, ev: d.Hf.U, sm: [], sols: {} }; d.Hf.Nc[d.Tb] && (f.act = d.Hf.Nc[d.Tb].U); b = 0; for (s = d.ra.length; b < s; b++) f.sm.push(d.ra[b].U); for (g in d.Kb) if (d.Kb.hasOwnProperty(g)) { u = this.b.r[parseInt(g, 10)]; t = { sa: d.Kb[g].Ej, insts: [] }; b = 0; for (s = d.Kb[g].Qd.length; b < s; b++) t.insts.push(d.Kb[g].Qd[b].uid); f.sols[u.U.toString()] = t } n.push(f) } return k }; X.prototype.Ob = function(k) { k = k.waits; var r, a, b, s, g, d, u, t, n, f, p; r = this.Sb.length = 0; for (a = k.length; r < a; r++) if (d = k[r], t = this.b.ln[d.ev.toString()]) { n = -1; b = 0; for (s = t.Nc.length; b < s; b++) if (t.Nc[b].U === d.act) { n = b; break } if (-1 !== n) { u = { Kb: {}, ra: [], Dk: !1 }; u.time = d.t; u.Dp = d.st || ""; u.qm = !!d.s; u.Hf = t; u.Tb = n; b = 0; for (s = d.sm.length; b < s; b++)(t = this.b.Ki(d.sm[b])) && u.ra.push(t); for (g in d.sols) if (d.sols.hasOwnProperty(g) && (t = this.b.Ki(parseInt(g, 10)))) { n = d.sols[g]; f = { Ej: n.sa, Qd: [] }; b = 0; for (s = n.insts.length; b < s; b++)(p = this.b.Ng(n.insts[b])) && f.Qd.push(p); u.Kb[t.index.toString()] = f } this.Sb.push(u) } } }; (function() { function k() {} function r() {} function a() {} var b = X.prototype; k.prototype.mq = function() { return !0 }; k.prototype.Qm = function() { return !0 }; k.prototype.Kq = function() { return !0 }; k.prototype.lq = function(a) { var b = this.b.Tk(), g = b.R.Every_lastTime || 0, k = this.b.Gb.X; "undefined" === typeof b.R.Every_seconds && (b.R.Every_seconds = a); var f = b.R.Every_seconds; if (k >= g + f) return b.R.Every_lastTime = g + f, k >= b.R.Every_lastTime + .04 && (b.R.Every_lastTime = k), b.R.Every_seconds = a, !0; k < g - .1 && (b.R.Every_lastTime = k); return !1 }; k.prototype.gq = function(a, b, g) { return $b(a.Pg(), b, g) }; k.prototype.qq = function(a) { return (a = this.b.Tg[a.toLowerCase()]) && a.Rg }; k.prototype.kq = function() { var a = this.b.Ab(); return a.Fk ? !1 : !a.cf }; k.prototype.Rm = function() { return !0 }; k.prototype.Bq = function() { return !0 }; k.prototype.gk = function() { return !0 }; k.prototype.Lq = function() { return !0 }; k.prototype.fk = function() { return !0 }; k.prototype.cq = function(a, b, g) { return Ma(V(a), V(g)) <= V(b) }; k.prototype.Nm = function(a, b) { return Oa(V(a), V(b)) }; k.prototype.pq = function(a, b, g) { a = Ka(a); b = Ka(b); g = Ka(g); return Oa(g, b) ? Oa(a, b) && !Oa(a, g) : !(!Oa(a, b) && Oa(a, g)) }; b.k = new k; r.prototype.nq = function(a) { this.b.fh || this.b.Cg || (this.b.Cg = a) }; r.prototype.iq = function(a, b, g, k) { if (b && a && (b = this.b.wn(a, b, g, k))) { this.b.Rc++; var f; this.b.trigger(Object.getPrototypeOf(a.qa).k.dk, b); if (b.tc) for (g = 0, k = b.siblings.length; g < k; g++) f = b.siblings[g], this.b.trigger(Object.getPrototypeOf(f.type.qa).k.dk, f); this.b.Rc--; a = a.Y(); a.fa = !1; a.d.length = 1; a.d[0] = b; if (b.tc) for (g = 0, k = b.siblings.length; g < k; g++) f = b.siblings[g], a = f.type.Y(), a.fa = !1, a.d.length = 1, a.d[0] = f } }; r.prototype.dr = function(a, b) { a && a.visible !== b && (a.visible = b, this.b.aa = !0) }; r.prototype.cr = function(a, b) { a && (b = Ea(b / 100, 0, 1), a.opacity !== b && (a.opacity = b, this.b.aa = !0)) }; r.prototype.hr = function(a, b) { 0 === a.ak ? ia(b) ? a.qf(b) : a.qf(parseFloat(b)) : 1 === a.ak && a.qf(b.toString()) }; r.prototype.bq = function(a, b) { 0 === a.ak ? ia(b) ? a.qf(a.Pg() + b) : a.qf(a.Pg() + parseFloat(b)) : 1 === a.ak && a.qf(a.Pg() + b.toString()) }; var s = [], g = []; r.prototype.or = function(a) { if (!(0 > a)) { var b, k, n, f = this.b.Ab(), p; p = s.length ? s.pop() : { Kb: {}, ra: [] }; p.Dk = !1; p.time = this.b.Gb.X + a; p.Dp = ""; p.qm = !1; p.Hf = f.Wb; p.Tb = f.Tb + 1; a = 0; for (b = this.b.r.length; a < b; a++) n = this.b.r[a], k = n.Y(), k.fa && -1 === f.Wb.ra.indexOf(n) || (p.ra.push(n), n = void 0, n = g.length ? g.pop() : { Qd: [] }, n.Ej = !1, n.Ej = k.fa, Aa(n.Qd, k.d), p.Kb[a.toString()] = n); this.Sb.push(p); return !0 } }; b.F = new r; a.prototype["int"] = function(a, b) { R(b) ? (a.ma(parseInt(b, 10)), isNaN(a.data) && (a.data = 0)) : a.ma(b) }; a.prototype["float"] = function(a, b) { R(b) ? (a.D(parseFloat(b)), isNaN(a.data) && (a.data = 0)) : a.D(b) }; a.prototype.Pu = function(a, b) { R(b) ? a.Pa(b) : a.Pa(b.toString()) }; a.prototype.random = function(a, b, g) { void 0 === g ? a.D(Math.random() * b) : a.D(Math.random() * (g - b) + b) }; a.prototype.sqrt = function(a, b) { a.D(Math.sqrt(b)) }; a.prototype.abs = function(a, b) { a.D(Math.abs(b)) }; a.prototype.round = function(a, b) { a.ma(Math.round(b)) }; a.prototype.floor = function(a, b) { a.ma(Math.floor(b)) }; a.prototype.ceil = function(a, b) { a.ma(Math.ceil(b)) }; a.prototype.sin = function(a, b) { a.D(Math.sin(V(b))) }; a.prototype.cos = function(a, b) { a.D(Math.cos(V(b))) }; a.prototype.tan = function(a, b) { a.D(Math.tan(V(b))) }; a.prototype.asin = function(a, b) { a.D(Fa(Math.asin(b))) }; a.prototype.acos = function(a, b) { a.D(Fa(Math.acos(b))) }; a.prototype.atan = function(a, b) { a.D(Fa(Math.atan(b))) }; a.prototype.exp = function(a, b) { a.D(Math.exp(b)) }; a.prototype.log10 = function(a, b) { a.D(Math.log(b) / Math.LN10) }; a.prototype.max = function(a) { var b = arguments[1]; "number" !== typeof b && (b = 0); var g, k, f; g = 2; for (k = arguments.length; g < k; g++) f = arguments[g], "number" === typeof f && b < f && (b = f); a.D(b) }; a.prototype.min = function(a) { var b = arguments[1]; "number" !== typeof b && (b = 0); var g, k, f; g = 2; for (k = arguments.length; g < k; g++) f = arguments[g], "number" === typeof f && b > f && (b = f); a.D(b) }; a.prototype.Pe = function(a) { a.D(this.b.Pe) }; a.prototype.vf = function(a) { a.D(this.b.vf) }; a.prototype.time = function(a) { a.D(this.b.Gb.X) }; a.prototype.xd = function(a) { a.ma(this.b.xd) }; a.prototype.lj = function(a) { a.ma(this.b.lj) }; a.prototype.Nk = function(a) { a.ma(this.b.Nk) }; a.prototype.j = function(a, b, g, k, f) { a.D(Fa(La(b, g, k, f))) }; a.prototype.find = function(a, b, g) { R(b) && R(g) ? a.ma(b.search(new RegExp(cb(g), "i"))) : a.ma(-1) }; a.prototype.left = function(a, b, g) { a.Pa(R(b) ? b.substr(0, g) : "") }; a.prototype.right = function(a, b, g) { a.Pa(R(b) ? b.substr(b.length - g) : "") }; a.prototype.replace = function(a, b, g, k) { R(b) && R(g) && R(k) ? a.Pa(b.replace(new RegExp(cb(g), "gi"), k)) : a.Pa(R(b) ? b : "") }; a.prototype.trim = function(a, b) { a.Pa(R(b) ? b.trim() : "") }; a.prototype.tn = function(a) { var b = S(Math.random() * (arguments.length - 1)); a.Ku(arguments[b + 1]) }; a.prototype.yk = function(a) { a.D(this.b.yk / 1E3) }; a.prototype.Xf = function(a) { a.D(this.b.Xf) }; b.xa = new a; b.zu = function() { var a, b, k, n, f, p, r = this.b.Ab(); a = 0; for (k = this.Sb.length; a < k; a++) { n = this.Sb[a]; if (-1 === n.time) { if (!n.qm) continue } else if (n.time > this.b.Gb.X) continue; r.Wb = n.Hf; r.Tb = n.Tb; r.$a = 0; for (b in n.Kb) n.Kb.hasOwnProperty(b) && (f = this.b.r[parseInt(b, 10)].Y(), p = n.Kb[b], f.fa = p.Ej, Aa(f.d, p.Qd), f = p, f.Qd.length = 0, g.push(f)); n.Hf.xu(); this.b.wk(n.ra); n.Dk = !0 } b = a = 0; for (k = this.Sb.length; a < k; a++) n = this.Sb[a], this.Sb[b] = n, n.Dk ? (Xa(n.Kb), n.ra.length = 0, s.push(n)) : b++; this.Sb.length = b } })(); (function() { mb = function(k, a) { var b = k[1], s = k[3], g = k[4], d = k[5], u = k[6], t = k[7], n = k[8]; a.k || (a.k = {}); a.F || (a.F = {}); a.xa || (a.xa = {}); var f = a.k, p = a.F, x = a.xa; s && (f.ov = function(a, b) { return $b(this.x, a, b) }, f.hq = function(a, b) { return $b(this.y, a, b) }, f.uv = function() { var a = this.i; this.na(); var b = this.La; return !(b.right < a.Ba || b.bottom < a.Ca || b.left > a.Ja || b.top > a.Ia) }, f.vv = function() { this.na(); var a = this.La, b = this.b.za; return 0 > a.right || 0 > a.bottom || a.left > b.width || a.top > b.height }, f.Hv = function(a, b, d) { var f = this.Y(), g = f.pc(); if (!g.length) return !1; var k = g[0], c = k, e = Ua(k.x, k.y, b, d), m, n, p; m = 1; for (n = g.length; m < n; m++) if (k = g[m], p = Ua(k.x, k.y, b, d), 0 === a && p < e || 1 === a && p > e) e = p, c = k; f.Ah(c); return !0 }, p.Xv = function(a) { this.x !== a && (this.x = a, this.T()) }, p.Yv = function(a) { this.y !== a && (this.y = a, this.T()) }, p.gr = function(a, b) { if (this.x !== a || this.y !== b) this.x = a, this.y = b, this.T() }, p.Uv = function(a, b) { var d = a.Ws(this); if (d) { var f; d.Xk ? (f = d.Xk(b, !0), d = d.Xk(b, !1)) : (f = d.x, d = d.y); if (this.x !== f || this.y !== d) this.x = f, this.y = d, this.T() } }, p.Av = function(a) { 0 !== a && (this.x += Math.cos(this.j) * a, this.y += Math.sin(this.j) * a, this.T()) }, p.zv = function(a, b) { 0 !== b && (this.x += Math.cos(V(a)) * b, this.y += Math.sin(V(a)) * b, this.T()) }, x.pr = function(a) { a.D(this.x) }, x.qr = function(a) { a.D(this.y) }, x.Pe = function(a) { a.D(this.b.Uk(this)) }); g && (f.nv = function(a, b) { return $b(this.width, a, b) }, f.kv = function(a, b) { return $b(this.height, a, b) }, p.ir = function(a) { this.width !== a && (this.width = a, this.T()) }, p.Sv = function(a) { this.height !== a && (this.height = a, this.T()) }, p.Vv = function(a, b) { if (this.width !== a || this.height !== b) this.width = a, this.height = b, this.T() }, x.bw = function(a) { a.D(this.width) }, x.qv = function(a) { a.D(this.height) }, x.gv = function(a) { this.na(); a.D(this.La.left) }, x.iv = function(a) { this.na(); a.D(this.La.top) }, x.hv = function(a) { this.na(); a.D(this.La.right) }, x.dv = function(a) { this.na(); a.D(this.La.bottom) }); d && (f.cq = function(a, b) { return Ma(this.j, V(b)) <= V(a) }, f.Nm = function(a) { return Oa(this.j, V(a)) }, f.pq = function(a, b) { var d = Ka(a), f = Ka(b), g = Ia(this.j); return Oa(f, d) ? Oa(g, d) && !Oa(g, f) : !(!Oa(g, d) && Oa(g, f)) }, p.Yq = function(a) { a = V(Ha(a)); isNaN(a) || this.j === a || (this.j = a, this.T()) }, p.Xq = function(a) { 0 === a || isNaN(a) || (this.j += V(a), this.j = Ia(this.j), this.T()) }, p.Lv = function(a) { 0 === a || isNaN(a) || (this.j -= V(a), this.j = Ia(this.j), this.T()) }, p.Mv = function(a, b) { var d = Na(this.j, V(b), V(a)); isNaN(d) || this.j === d || (this.j = d, this.T()) }, p.Nv = function(a, b, d) { a = Na(this.j, Math.atan2(d - this.y, b - this.x), V(a)); isNaN(a) || this.j === a || (this.j = a, this.T()) }, p.Wv = function(a, b) { var d = Math.atan2(b - this.y, a - this.x); isNaN(d) || this.j === d || (this.j = d, this.T()) }, x.cv = function(a) { a.D(Ja(this.j)) }); b || (f.lv = function(a, b, d) { return $b(this.ab[a], b, d) }, f.sv = function(a) { return this.ab[a] }, f.Iv = function(a, b) { var d = this.Y(), f = d.pc(); if (!f.length) return !1; var g = f[0], k = g, c = g.ab[b], e, m, n; e = 1; for (m = f.length; e < m; e++) if (g = f[e], n = g.ab[b], 0 === a && n < c || 1 === a && n > c) c = n, k = g; d.Ah(k); return !0 }, f.Gv = function(a) { var b, d, f, g, k; if (this.b.Tk().ml) { k = this.Y(); if (k.fa) for (k.fa = !1, k.d.length = 0, k.ea.length = 0, f = this.d, b = 0, d = f.length; b < d; b++) g = f[b], g.uid === a ? k.ea.push(g) : k.d.push(g); else { f = b = 0; for (d = k.d.length; b < d; b++) g = k.d[b], k.d[f] = g, g.uid === a ? k.ea.push(g) : f++; k.d.length = f } this.wc(); return !!k.d.length } g = this.b.Ng(a); if (!g) return !1; k = this.Y(); if (!k.fa && -1 === k.d.indexOf(g)) return !1; if (this.K) for (a = g.type.Da, b = 0, d = a.length; b < d; b++) { if (a[b] === this) return k.Ah(g), this.wc(), !0 } else if (g.type === this) return k.Ah(g), this.wc(), !0; return !1 }, f.dk = function() { return !0 }, f.Dq = function() { return !0 }, p.Tv = function(a, b) { var d = this.ab; ia(d[a]) ? d[a] = ia(b) ? b : parseFloat(b) : R(d[a]) && (d[a] = R(b) ? b : b.toString()) }, p.bv = function(a, b) { var d = this.ab; ia(d[a]) ? d[a] = ia(b) ? d[a] + b : d[a] + parseFloat(b) : R(d[a]) && (d[a] = R(b) ? d[a] + b : d[a] + b.toString()) }, p.Zv = function(a, b) { var d = this.ab; ia(d[a]) && (d[a] = ia(b) ? d[a] - b : d[a] - parseFloat(b)) }, p.Ov = function(a, b) { this.ab[a] = b ? 1 : 0 }, p.$v = function(a) { this.ab[a] = 1 - this.ab[a] }, p.jq = function() { this.b.Ie(this) }, p.uq || (p.uq = function(a) { var b, d; try { b = JSON.parse(a) } catch (f) { return } this.b.cj(this, b, !0); this.Cd && this.Cd(); if (this.L) for (a = 0, b = this.L.length; a < b; ++a) d = this.L[a], d.Cd && d.Cd() }), x.pv = function(a) { var b = a.cg.d.length, d, f, g; d = 0; for (f = this.b.Qc.length; d < f; d++) g = this.b.Qc[d], a.cg.K ? 0 <= g.type.Da.indexOf(a.cg) && b++ : g.type === a.cg && b++; a.ma(b) }, x.Kv = function(a) { a.ma(a.cg.Y().pc().length) }, x.aw = function(a) { a.ma(this.uid) }, x.rv = function(a) { a.ma(this.Qg()) }, x.Mm || (x.Mm = function(a) { a.Pa(JSON.stringify(this.b.jm(this, !0))) })); u && (f.wv = function() { return this.visible }, p.Zm = function(a) { !a !== !this.visible && (this.visible = a, this.b.aa = !0) }, f.mv = function(a, b) { return $b(ib(100 * this.opacity), a, b) }, p.er = function(a) { a /= 100; 0 > a ? a = 0 : 1 < a && (a = 1); a !== this.opacity && (this.opacity = a, this.b.aa = !0) }, x.Opacity = function(a) { a.D(ib(100 * this.opacity)) }); t && (f.tv = function(a) { return a ? this.i === a : !1 }, f.Jv = function(a) { var b = this.Y(), d = b.pc(); if (!d.length) return !1; var f = d[0], g = f, k, c; k = 1; for (c = d.length; k < c; k++) if (f = d[k], 0 === a) { if (f.i.index > g.i.index || f.i.index === g.i.index && f.jd() > g.jd()) g = f } else if (f.i.index < g.i.index || f.i.index === g.i.index && f.jd() < g.jd()) g = f; b.Ah(g); return !0 }, p.Dv = function() { var a = this.i, b = a.d; b.length && b[b.length - 1] === this || (a.ig(this, !1), a.xg(this, !1), this.b.aa = !0) }, p.Bv = function() { var a = this.i, b = a.d; b.length && b[0] === this || (a.ig(this, !1), a.mu(this), this.b.aa = !0) }, p.Cv = function(a) { a && a != this.i && (this.i.ig(this, !0), this.i = a, a.xg(this, !0), this.b.aa = !0) }, p.ew = function(a, b) { var d = 0 === a; if (b) { var f = b.Nn(this); f && f.uid !== this.uid && (this.i.index !== f.i.index && (this.i.ig(this, !0), this.i = f.i, f.i.xg(this, !0)), this.i.Ut(this, f, d), this.b.aa = !0) } }, x.yv = function(a) { a.ma(this.i.Ro) }, x.xv = function(a) { a.Pa(this.i.name) }, x.dw = function(a) { a.ma(this.jd()) }); n && (p.Qv = function(a, b) { if (this.b.u) { var d = this.type.Wk(b); if (!(0 > d)) { var f = 1 === a; this.fe[d] !== f && (this.fe[d] = f, this.ae(), this.b.aa = !0) } } }, p.Rv = function(a, b, d) { if (this.b.u) { var f = this.type.Wk(a); 0 > f || (a = this.type.J[f], f = this.Ha[f], b = Math.floor(b), 0 > b || b >= f.length || (1 === this.b.u.$s(a.wb, b) && (d /= 100), f[b] !== d && (f[b] = d, a.lc && (this.b.aa = !0)))) } }) }; Gb = function() { this.tk = this.qk = !0; this.type.Zh = !0; this.b.aa = !0; var k, a, b = this.rk; k = 0; for (a = b.length; k < a; ++k) b[k](this); this.i.ad && this.na() }; Hb = function(k) { k && this.rk.push(k) }; Jb = function() { if (this.qk) { var k = this.La, a = this.Db; k.set(this.x, this.y, this.x + this.width, this.y + this.height); k.offset(-this.Mb * this.width, -this.Nb * this.height); this.j ? (k.offset(-this.x, -this.y), a.yp(k, this.j), a.offset(this.x, this.y), a.mn(k)) : a.Jh(k); k.normalize(); this.qk = !1; this.Xu() } }; var k = new T(0, 0, 0, 0); Kb = function() { if (this.i.ad) { var r = this.i.fc, a = this.La; k.set(r.jc(a.left), r.kc(a.top), r.jc(a.right), r.kc(a.bottom)); this.Qb.yi(k) || (this.Qb.right < this.Qb.left ? r.update(this, null, k) : r.update(this, this.Qb, k), this.Qb.ni(k), this.i.Vd = !0) } }; Lb = function() { if (this.tk && this.Gd) { this.na(); var r = this.type.li, a = this.La; k.set(r.jc(a.left), r.kc(a.top), r.jc(a.right), r.kc(a.bottom)); this.me.yi(k) || (this.me.right < this.me.left ? r.update(this, null, k) : r.update(this, this.me, k), this.me.ni(k), this.tk = !1) } }; Ib = function(k, a) { return this.La.yb(k, a) && this.Db.yb(k, a) ? this.da && !this.da.Qf() ? (this.da.Ef(this.width, this.height, this.j), this.da.yb(k - this.x, a - this.y)) : !0 : !1 }; Cb = function() { this.type.Zj(); return this.We }; Mb = function() { this.i.Fm(); return this.bd }; Nb = function() { this.ba.length = 0; var k, a; k = 0; for (a = this.fe.length; k < a; k++) this.fe[k] && this.ba.push(this.type.J[k]); this.Yp = !!this.ba.length }; Db = function() { return "Inst" + this.op }; pb = function(k) { if (k && k.tc && k.type != this) { var a, b, s; a = 0; for (b = k.siblings.length; a < b; a++) if (s = k.siblings[a], s.type == this) return s } k = this.Y().pc(); return k.length ? k[0] : null }; qb = function(k) { var a = this.Y().pc(); return a.length ? a[k.Qg() % a.length] : null }; ob = function() { if (this.ng && !this.K) { var k, a; k = 0; for (a = this.d.length; k < a; k++) this.d[k].We = k; var b = k, s = this.b.Qc; k = 0; for (a = s.length; k < a; ++k) s[k].type === this && (s[k].We = b++); this.ng = !1 } }; Ab = function(k) { if (k < this.d.length) return this.d[k]; k -= this.d.length; var a = this.b.Qc, b, s; b = 0; for (s = a.length; b < s; ++b) if (a[b].type === this) { if (0 === k) return a[b]; --k } return null }; rb = function() { return this.Ee[this.Ld] }; sb = function() { this.Ld++; this.Ld === this.Ee.length ? this.Ee.push(new nb(this)) : this.Ee[this.Ld].fa = !0 }; tb = function() { this.Ld++; this.Ld === this.Ee.length && this.Ee.push(new nb(this)); var k = this.Ee[this.Ld], a = this.Ee[this.Ld - 1]; a.fa ? k.fa = !0 : (k.fa = !1, Aa(k.d, a.d), Aa(k.ea, a.ea)) }; vb = function() { this.Ld-- }; wb = function(k) { var a, b, s, g, d, u = 0; if (!this.K) for (a = 0, b = this.Da.length; a < b; a++) for (d = this.Da[a], s = 0, g = d.Qa.length; s < g; s++) { if (k === d.Qa[s].name) return this.R.lastBehIndex = u, d.Qa[s]; u++ } a = 0; for (b = this.Qa.length; a < b; a++) { if (k === this.Qa[a].name) return this.R.lastBehIndex = u, this.Qa[a]; u++ } return null }; xb = function(k) { return this.Ii(k) ? this.R.lastBehIndex : -1 }; yb = function(k) { var a, b; a = 0; for (b = this.J.length; a < b; a++) if (this.J[a].name === k) return a; return -1 }; zb = function() { if (this.tc && !this.K) { var k, a, b, s, g, d, u; this.Zj(); d = this.Y(); var t = d.fa, n = (k = this.b.Ab()) && k.Wb && k.Wb.Uc; k = 0; for (a = this.Vb.length; k < a; k++) if (g = this.Vb[k], g !== this && (g.Zj(), u = g.Y(), u.fa = t, !t)) { u.d.length = d.d.length; b = 0; for (s = d.d.length; b < s; b++) u.d[b] = g.On(d.d[b].We); if (n) for (u.ea.length = d.ea.length, b = 0, s = d.ea.length; b < s; b++) u.ea[b] = g.On(d.ea[b].We) } } }; Bb = function() { return "Type" + this.U }; $b = function(k, a, b) { if ("undefined" === typeof k || "undefined" === typeof b) return !1; switch (a) { case 0: return k === b; case 1: return k !== b; case 2: return k < b; case 3: return k <= b; case 4: return k > b; case 5: return k >= b; default: return !1 } } })(); var ic = {}; function kc(k) { this.b = k } (function() { function k(a) { a = Math.pow(10, a / 20); 0 > a && (a = 0); 1 < a && (a = 1); return a } function r(a) { 0 > a && (a = 0); 1 < a && (a = 1); return Math.log(a) / Math.log(10) * 20 } function a(a) { a = a.toLowerCase(); return U.hasOwnProperty(a) && U[a].length ? U[a][0].oc() : C.destination } function b() { return C.createGain ? C.createGain() : C.createGainNode() } function s(a) { return C.createDelay ? C.createDelay(a) : C.createDelayNode(a) } function g(a) { a.start ? a.start(0) : a.noteOn(0) } function d(a, b, c) { a.start ? a.start(0, b) : a.noteGrainOn(0, b, c - b) } function u(a) { try { a.stop ? a.stop(0) : a.noteOff(0) } catch (b) {} } function t(a, c, e, d, f, h) { this.type = "filter"; this.Vc = [a, c, e, d, f, h]; this.V = b(); this.I = b(); this.I.gain.value = h; this.G = b(); this.G.gain.value = 1 - h; this.Ra = C.createBiquadFilter(); this.Ra.type = "number" === typeof this.Ra.type ? a : vc[a]; this.Ra.frequency.value = c; this.Ra.detune && (this.Ra.detune.value = e); this.Ra.Q.value = d; this.Ra.gain.value = f; this.V.connect(this.Ra); this.V.connect(this.G); this.Ra.connect(this.I) } function n(a, c, e) { this.type = "delay"; this.Vc = [a, c, e]; this.V = b(); this.I = b(); this.I.gain.value = e; this.G = b(); this.G.gain.value = 1 - e; this.sh = b(); this.Bc = s(a); this.Bc.delayTime.value = a; this.vi = b(); this.vi.gain.value = c; this.V.connect(this.sh); this.V.connect(this.G); this.sh.connect(this.I); this.sh.connect(this.Bc); this.Bc.connect(this.vi); this.vi.connect(this.sh) } function f(a, c, e, d) { this.type = "convolve"; this.Vc = [c, e, d]; this.V = b(); this.I = b(); this.I.gain.value = e; this.G = b(); this.G.gain.value = 1 - e; this.Me = C.createConvolver(); a && (this.Me.normalize = c, this.Me.buffer = a); this.V.connect(this.Me); this.V.connect(this.G); this.Me.connect(this.I) } function p(a, c, e, d, f) { this.type = "flanger"; this.Vc = [a, c, e, d, f]; this.V = b(); this.G = b(); this.G.gain.value = 1 - f / 2; this.I = b(); this.I.gain.value = f / 2; this.Ci = b(); this.Ci.gain.value = d; this.Bc = s(a + c); this.Bc.delayTime.value = a; this.nb = C.createOscillator(); this.nb.frequency.value = e; this.cc = b(); this.cc.gain.value = c; this.V.connect(this.Bc); this.V.connect(this.G); this.Bc.connect(this.I); this.Bc.connect(this.Ci); this.Ci.connect(this.Bc); this.nb.connect(this.cc); this.cc.connect(this.Bc.delayTime); g(this.nb) } function x(a, c, e, d, f, h) { this.type = "phaser"; this.Vc = [a, c, e, d, f, h]; this.V = b(); this.G = b(); this.G.gain.value = 1 - h / 2; this.I = b(); this.I.gain.value = h / 2; this.Ra = C.createBiquadFilter(); this.Ra.type = "number" === typeof this.Ra.type ? 7 : "allpass"; this.Ra.frequency.value = a; this.Ra.detune && (this.Ra.detune.value = c); this.Ra.Q.value = e; this.nb = C.createOscillator(); this.nb.frequency.value = f; this.cc = b(); this.cc.gain.value = d; this.V.connect(this.Ra); this.V.connect(this.G); this.Ra.connect(this.I); this.nb.connect(this.cc); this.cc.connect(this.Ra.frequency); g(this.nb) } function h(a) { this.type = "gain"; this.Vc = [a]; this.Z = b(); this.Z.gain.value = a } function w(a, c) { this.type = "tremolo"; this.Vc = [a, c]; this.Z = b(); this.Z.gain.value = 1 - c / 2; this.nb = C.createOscillator(); this.nb.frequency.value = a; this.cc = b(); this.cc.gain.value = c / 2; this.nb.connect(this.cc); this.cc.connect(this.Z.gain); g(this.nb) } function y(a, c) { this.type = "ringmod"; this.Vc = [a, c]; this.V = b(); this.I = b(); this.I.gain.value = c; this.G = b(); this.G.gain.value = 1 - c; this.Gh = b(); this.Gh.gain.value = 0; this.nb = C.createOscillator(); this.nb.frequency.value = a; this.nb.connect(this.Gh.gain); g(this.nb); this.V.connect(this.Gh); this.V.connect(this.G); this.Gh.connect(this.I) } function l(a, c, e, d, f) { this.type = "distortion"; this.Vc = [a, c, e, d, f]; this.V = b(); this.uj = b(); this.tj = b(); this.Gu(e, Math.pow(10, d / 20)); this.I = b(); this.I.gain.value = f; this.G = b(); this.G.gain.value = 1 - f; this.bk = C.createWaveShaper(); this.si = new Float32Array(65536); this.Ps(a, c); this.bk.si = this.si; this.V.connect(this.uj); this.V.connect(this.G); this.uj.connect(this.bk); this.bk.connect(this.tj); this.tj.connect(this.I) } function q(a, b, c, e, d) { this.type = "compressor"; this.Vc = [a, b, c, e, d]; this.Z = C.createDynamicsCompressor(); try { this.Z.threshold.value = a, this.Z.knee.value = b, this.Z.ratio.value = c, this.Z.attack.value = e, this.Z.release.value = d } catch (f) {} } function A(a, b) { this.type = "analyser"; this.Vc = [a, b]; this.Z = C.createAnalyser(); this.Z.fftSize = a; this.Z.smoothingTimeConstant = b; this.Ns = new Float32Array(this.Z.frequencyBinCount); this.Bp = new Uint8Array(a); this.zh = 0 } function c() { this.H = null; this.fj = 0; this.Fe = []; this.Il = this.Vi = this.Ui = 0 } function e(a, c) { this.src = a; this.S = M; this.Sc = c; this.gn = !1; var e = this; this.Gl = this.Tl = null; this.gg = []; this.Fj = 0; this.Km = this.Kk = this.Gp = this.oj = !1; 1 === M && c && (this.S = 0, this.Tl = b()); this.Ke = this.ga = null; var d; switch (this.S) { case 0: this.ga = new Audio; this.ga.addEventListener("canplaythrough", function() { e.Km = !0 }); 1 === M && C.createMediaElementSource && !/wiiu/i.test(navigator.userAgent) && (this.Gp = !0, this.ga.addEventListener("canplay", function() { e.Gl || (e.Gl = C.createMediaElementSource(e.ga), e.Gl.connect(e.Tl)) })); this.ga.autoplay = !1; this.ga.ow = "auto"; this.ga.src = a; break; case 1: d = new XMLHttpRequest; d.open("GET", a, !0); d.responseType = "arraybuffer"; d.onload = function() { e.Ke = d.response; e.Pr() }; d.onerror = function() { e.Kk = !0 }; d.send(); break; case 2: this.ga = !0; break; case 3: this.ga = !0 } } function m(c, e) { var d = this; this.tag = e; this.hc = this.hd = !0; this.src = c.src; this.buffer = c; this.S = M; this.Sc = c.Sc; this.playbackRate = 1; this.xk = !0; this.Fc = this.Wd = !1; this.Rb = 0; this.dh = this.Sf = this.md = !1; this.volume = 1; this.$e = 1 === F && !this.Sc || 2 === F; this.ag = 1; this.startTime = this.$e ? z.Gb.X : z.Bd.X; this.Na = this.Sa = null; this.od = !1; this.Ma = null; this.ep = this.dp = this.cp = this.bp = this.gp = this.fp = 0; this.n = null; var f = !1; 1 !== this.S || 0 !== this.buffer.S || this.buffer.Gp || (this.S = 0); switch (this.S) { case 0: this.Sc ? (this.n = c.ga, f = !c.gn, c.gn = !0) : (this.n = new Audio, this.n.autoplay = !1, this.n.src = c.ga.src, f = !0); f && this.n.addEventListener("ended", function() { P = d.tag; d.hc = !0; z.trigger(kc.prototype.k.ek, fa) }); break; case 1: this.Sa = b(); this.Sa.connect(a(e)); 1 === this.buffer.S ? c.ga && (this.n = C.createBufferSource(), this.n.buffer = c.ga, this.n.connect(this.Sa)) : (this.n = this.buffer.ga, this.buffer.Tl.connect(this.Sa)); break; case 2: this.n = new window.Media(H + this.src, null, null, function(a) { a === window.Media.MEDIA_STOPPED && (d.xk = !0, d.hc = !0, P = d.tag, z.trigger(kc.prototype.k.ek, fa)) }); break; case 3: this.n = !0 } } function v(a) { za.length = 0; if (a.length) { var b, c, e; b = 0; for (c = B.length; b < c; b++) e = B[b], jb(a, e.tag) && za.push(e) } else D && !D.Ve() && (za.length = 1, za[0] = D) } function K(a, b) { U.hasOwnProperty(a) ? U[a].push(b) : U[a] = [b]; var c, e, d, f, h = C.destination; if (U.hasOwnProperty(a) && (d = U[a], d.length)) for (h = d[0].oc(), c = 0, e = d.length; c < e; c++) f = d[c], c + 1 === e ? f.yc(C.destination) : f.yc(d[c + 1].oc()); v(a); c = 0; for (e = za.length; c < e; c++) za[c].tu(h); Ga && ub === a && (Ga.disconnect(), Ga.connect(h)) } function E() {} function Q() {} var qa = kc.prototype; qa.Fa = function(a) { this.qa = a; this.b = a.b }; qa.Fa.prototype.W = function() {}; var z = null, fa = null, P = "", H = "", M = 0, C = null, L = [], B = [], D = null, N = !1, F = 0, I = !1, G = 1, ga = 0, O = 0, ma = 1, ha = 1, va = 10, wa = 1E4, tc = 1, Ga = null, ub = "", Qa = !1, Ra = [], U = {}, vc = "lowpass highpass bandpass lowshelf highshelf peaking notch allpass".split(" "); t.prototype.yc = function(a) { this.I.disconnect(); this.I.connect(a); this.G.disconnect(); this.G.connect(a) }; t.prototype.remove = function() { this.V.disconnect(); this.Ra.disconnect(); this.I.disconnect(); this.G.disconnect() }; t.prototype.oc = function() { return this.V }; n.prototype.yc = function(a) { this.I.disconnect(); this.I.connect(a); this.G.disconnect(); this.G.connect(a) }; n.prototype.remove = function() { this.V.disconnect(); this.sh.disconnect(); this.Bc.disconnect(); this.vi.disconnect(); this.I.disconnect(); this.G.disconnect() }; n.prototype.oc = function() { return this.V }; f.prototype.yc = function(a) { this.I.disconnect(); this.I.connect(a); this.G.disconnect(); this.G.connect(a) }; f.prototype.remove = function() { this.V.disconnect(); this.Me.disconnect(); this.I.disconnect(); this.G.disconnect() }; f.prototype.oc = function() { return this.V }; p.prototype.yc = function(a) { this.G.disconnect(); this.G.connect(a); this.I.disconnect(); this.I.connect(a) }; p.prototype.remove = function() { this.V.disconnect(); this.Bc.disconnect(); this.nb.disconnect(); this.cc.disconnect(); this.G.disconnect(); this.I.disconnect(); this.Ci.disconnect() }; p.prototype.oc = function() { return this.V }; x.prototype.yc = function(a) { this.G.disconnect(); this.G.connect(a); this.I.disconnect(); this.I.connect(a) }; x.prototype.remove = function() { this.V.disconnect(); this.Ra.disconnect(); this.nb.disconnect(); this.cc.disconnect(); this.G.disconnect(); this.I.disconnect() }; x.prototype.oc = function() { return this.V }; h.prototype.yc = function(a) { this.Z.disconnect(); this.Z.connect(a) }; h.prototype.remove = function() { this.Z.disconnect() }; h.prototype.oc = function() { return this.Z }; w.prototype.yc = function(a) { this.Z.disconnect(); this.Z.connect(a) }; w.prototype.remove = function() { this.nb.disconnect(); this.cc.disconnect(); this.Z.disconnect() }; w.prototype.oc = function() { return this.Z }; y.prototype.yc = function(a) { this.I.disconnect(); this.I.connect(a); this.G.disconnect(); this.G.connect(a) }; y.prototype.remove = function() { this.nb.disconnect(); this.Gh.disconnect(); this.V.disconnect(); this.I.disconnect(); this.G.disconnect() }; y.prototype.oc = function() { return this.V }; l.prototype.Gu = function(a, b) {.01 > a && (a = .01); this.uj.gain.value = a; this.tj.gain.value = Math.pow(1 / a, .6) * b }; l.prototype.shape = function(a, b, c) { var e = 1.05 * c * b - b; c = 0 > a ? -1 : 1; a = 0 > a ? -a : a; b = a < b ? a : b + e * (1 - Math.exp(-(1 / e) * (a - b))); return b * c }; l.prototype.Ps = function(a, b) { for (var c = Math.pow(10, a / 20), e = Math.pow(10, b / 20), d = 0, f = 0; 32768 > f; ++f) d = f / 32768, d = this.shape(d, c, e), this.si[32768 + f] = d, this.si[32768 - f - 1] = -d }; l.prototype.yc = function(a) { this.I.disconnect(); this.I.connect(a); this.G.disconnect(); this.G.connect(a) }; l.prototype.remove = function() { this.V.disconnect(); this.uj.disconnect(); this.bk.disconnect(); this.tj.disconnect(); this.I.disconnect(); this.G.disconnect() }; l.prototype.oc = function() { return this.V }; q.prototype.yc = function(a) { this.Z.disconnect(); this.Z.connect(a) }; q.prototype.remove = function() { this.Z.disconnect() }; q.prototype.oc = function() { return this.Z }; A.prototype.qb = function() { this.Z.getFloatFrequencyData(this.Ns); this.Z.getByteTimeDomainData(this.Bp); for (var a = this.Z.fftSize, b = 0, c = this.zh = 0, e = 0; b < a; b++) e = (this.Bp[b] - 128) / 128, 0 > e && (e = -e), this.zh < e && (this.zh = e), c += e * e; this.zh = r(this.zh); r(Math.sqrt(c / a)) }; A.prototype.yc = function(a) { this.Z.disconnect(); this.Z.connect(a) }; A.prototype.remove = function() { this.Z.disconnect() }; A.prototype.oc = function() { return this.Z }; c.prototype.Hh = function(a) { if (this.H = a) this.Ui = this.H.x, this.Vi = this.H.y; this.Fe.length = 0 }; c.prototype.Li = function() { return !!this.H }; c.prototype.qb = function(a) { this.H && 0 !== a && (this.Il = La(this.Ui, this.Vi, this.H.x, this.H.y), a = Ua(this.Ui, this.Vi, this.H.x, this.H.y) / a, 4 > this.Fe.length || this.Fe.shift(), this.Fe.push(a), this.Ui = this.H.x, this.Vi = this.H.y) }; c.prototype.Sn = function() { if (!this.Fe.length) return 0; var a, b, c = 0; a = 0; for (b = this.Fe.length; a < b; a++) c += this.Fe[a]; return c / this.Fe.length }; c.prototype.al = function() { return Math.cos(this.Il) * this.Sn() }; c.prototype.bl = function() { return Math.sin(this.Il) * this.Sn() }; var uc = !1; e.prototype.Pr = function() { if (!this.ga && this.Ke) { var a = this; if (C.decodeAudioData) C.decodeAudioData(this.Ke, function(b) { a.ga = b; a.Ke = null; var c, e, d; if (ea(a.qj) || I) ea(a.mi) || (c = a.mi.Me, c.normalize = a.Qo, c.buffer = b); else if (a.gg.length) { c = 0; for (e = a.gg.length; c < e; c++) { b = a.gg[c]; d = new m(a, b.Kp); d.Gj(!0); if ("undefined" !== typeof b.So && (b.H = z.Ng(b.So), !b.H)) continue; if (b.H) { var f = Pa(b.H.x, b.H.y, -b.H.i.Ta(), ga, O, !0), h = Pa(b.H.x, b.H.y, -b.H.i.Ta(), ga, O, !1); d.om(f, h, Fa(b.H.j - b.H.i.Ta()), b.gl, b.Kl, b.Nl); d.Hh(b.H) } else d.om(b.x, b.y, b.rr, b.gl, b.Kl, b.Nl); d.play(a.Dl, a.Jm, a.Fj); a.oj && d.pause(); B.push(d) } a.gg.length = 0 } else d = new m(a, a.qj), d.play(a.Dl, a.Jm, a.Fj), a.oj && d.pause(), B.push(d) }, function() { a.Kk = !0 }); else if (this.ga = C.createBuffer(this.Ke, !1), this.Ke = null, ea(this.qj) || I) ea(this.mi) || (b = this.mi.Me, b.normalize = this.Qo, b.buffer = this.ga); else { var b = new m(this, this.qj); b.play(this.Dl, this.Jm, this.Fj); this.oj && b.pause(); B.push(b) } } }; e.prototype.co = function() { switch (this.S) { case 0: var a = 4 <= this.ga.readyState; a && (this.Km = !0); return a || this.Km; case 1: return !!this.Ke || !!this.ga; case 2: return !0; case 3: return !0 } return !1 }; e.prototype.Ht = function() { switch (this.S) { case 0: return this.co(); case 1: return !!this.ga; case 2: return !0; case 3: return !0 } return !1 }; e.prototype.xt = function() { switch (this.S) { case 0: return !!this.ga.error; case 1: return this.Kk } return !1 }; m.prototype.Ve = function() { var a; switch (this.S) { case 0: return this.n.ended; case 1: if (1 === this.buffer.S) { if (!this.hd && !this.hc && this.n.loop || this.Fc) return !1; a = this.$e ? z.Gb.X : z.Bd.X; return a - this.startTime > this.buffer.ga.duration } return this.n.ended; case 2: return this.xk; case 3: !0 } return !0 }; m.prototype.Ir = function() { return this.hd || this.hc ? !0 : this.Ve() }; m.prototype.Gj = function(b) { 1 === M && (!this.od && b ? this.Sa && (this.Na || (this.Na = C.createPanner(), this.Na.panningModel = "number" === typeof this.Na.panningModel ? ma : ["equalpower", "HRTF", "soundfield"][ma], this.Na.distanceModel = "number" === typeof this.Na.distanceModel ? ha : ["linear", "inverse", "exponential"][ha], this.Na.refDistance = va, this.Na.maxDistance = wa, this.Na.rolloffFactor = tc), this.Sa.disconnect(), this.Sa.connect(this.Na), this.Na.connect(a(this.tag)), this.od = !0) : this.od && !b && this.Sa && (this.Na.disconnect(), this.Sa.disconnect(), this.Sa.connect(a(this.tag)), this.od = !1)) }; m.prototype.om = function(a, b, c, e, d, f) { this.od && 1 === M && (this.Na.setPosition(a, b, 0), this.Na.setOrientation(Math.cos(V(c)), Math.sin(V(c)), 0), this.Na.coneInnerAngle = e, this.Na.coneOuterAngle = d, this.Na.coneOuterGain = f, this.fp = a, this.gp = b, this.bp = c, this.cp = e, this.dp = d, this.ep = f) }; m.prototype.Hh = function(a) { this.od && 1 === M && (this.Ma || (this.Ma = new c), this.Ma.Hh(a)) }; m.prototype.qb = function(a) { if (this.od && 1 === M && this.Ma && this.Ma.Li() && this.Of()) { this.Ma.qb(a); a = this.Ma.H; var b = Pa(a.x, a.y, -a.i.Ta(), ga, O, !0), c = Pa(a.x, a.y, -a.i.Ta(), ga, O, !1); this.Na.setPosition(b, c, 0); b = 0; "undefined" !== typeof this.Ma.H.j && (b = a.j - a.i.Ta(), this.Na.setOrientation(Math.cos(b), Math.sin(b), 0)); b = Pa(this.Ma.al(), this.Ma.bl(), -a.i.Ta(), 0, 0, !0); c = Pa(this.Ma.al(), this.Ma.bl(), -a.i.Ta(), 0, 0, !1); this.Na.setVelocity(b, c, 0) } }; m.prototype.play = function(a, b, c) { var e = this.n; this.md = a; this.volume = b; c = c || 0; switch (this.S) { case 0: 1 !== e.playbackRate && (e.playbackRate = 1); e.volume !== b * G && (e.volume = b * G); e.loop !== a && (e.loop = a); e.muted && (e.muted = !1); if (e.currentTime !== c) try { e.currentTime = c } catch (f) {} if (this.Sc && Qa && !z.Zb) Ra.push(this); else try { this.n.play() } catch (h) { console && console.log && console.log("[C2] WARNING: exception trying to play audio '" + this.buffer.src + "': ", h) } break; case 1: this.muted = !1; this.ag = 1; if (1 === this.buffer.S) this.hd || (this.n = C.createBufferSource(), this.n.buffer = this.buffer.ga, this.n.connect(this.Sa)), this.n.loop = a, this.Sa.gain.value = b * G, 0 === c ? g(this.n) : d(this.n, c, this.Se()); else { 1 !== e.playbackRate && (e.playbackRate = 1); e.loop !== a && (e.loop = a); this.Sa.gain.value = b * G; if (e.currentTime !== c) try { e.currentTime = c } catch (k) {} this.Sc && Qa && !z.Zb ? Ra.push(this) : e.play() } break; case 2: (!this.hd && this.hc || 0 !== c) && e.seekTo(c); e.play(); this.xk = !1; break; case 3: z.tb ? AppMobi.context.playSound(this.src, a) : AppMobi.player.playSound(this.src, a) } this.playbackRate = 1; this.startTime = (this.$e ? z.Gb.X : z.Bd.X) - c; this.Fc = this.hc = this.hd = !1 }; m.prototype.stop = function() { switch (this.S) { case 0: this.n.paused || this.n.pause(); break; case 1: 1 === this.buffer.S ? u(this.n) : this.n.paused || this.n.pause(); break; case 2: this.n.stop(); break; case 3: z.tb && AppMobi.context.stopSound(this.src) } this.hc = !0; this.Fc = !1 }; m.prototype.pause = function() { if (!(this.hd || this.hc || this.Ve() || this.Fc)) { switch (this.S) { case 0: this.n.paused || this.n.pause(); break; case 1: 1 === this.buffer.S ? (this.Rb = this.Zk(), this.md && (this.Rb %= this.Se()), u(this.n)) : this.n.paused || this.n.pause(); break; case 2: this.n.pause(); break; case 3: z.tb && AppMobi.context.stopSound(this.src) } this.Fc = !0 } }; m.prototype.sp = function() { if (!(this.hd || this.hc || this.Ve()) && this.Fc) { switch (this.S) { case 0: this.n.play(); break; case 1: 1 === this.buffer.S ? (this.n = C.createBufferSource(), this.n.buffer = this.buffer.ga, this.n.connect(this.Sa), this.n.loop = this.md, this.Sa.gain.value = G * this.volume * this.ag, this.startTime = (this.$e ? z.Gb.X : z.Bd.X) - this.Rb, d(this.n, this.Rb, this.Se())) : this.n.play(); break; case 2: this.n.play(); break; case 3: z.tb && AppMobi.context.resumeSound(this.src) } this.Fc = !1 } }; m.prototype.seek = function(a) { if (!(this.hd || this.hc || this.Ve())) switch (this.S) { case 0: try { this.n.currentTime = a } catch (b) {} break; case 1: if (1 === this.buffer.S) this.Fc ? this.Rb = a : (this.pause(), this.Rb = a, this.sp()); else try { this.n.currentTime = a } catch (c) {} break; case 3: z.tb && AppMobi.context.seekSound(this.src, a) } }; m.prototype.tu = function(a) { 1 === this.S && (this.od ? (this.Na.disconnect(), this.Na.connect(a)) : (this.Sa.disconnect(), this.Sa.connect(a))) }; m.prototype.Se = function() { switch (this.S) { case 0: if ("undefined" !== typeof this.n.duration) return this.n.duration; break; case 1: return this.buffer.ga.duration; case 2: return this.n.getDuration(); case 3: if (z.tb) return AppMobi.context.getDurationSound(this.src) } return 0 }; m.prototype.Zk = function() { var a = this.Se(), b = 0; switch (this.S) { case 0: "undefined" !== typeof this.n.currentTime && (b = this.n.currentTime); break; case 1: if (1 === this.buffer.S) { if (this.Fc) return this.Rb; b = (this.$e ? z.Gb.X : z.Bd.X) - this.startTime } else "undefined" !== typeof this.n.currentTime && (b = this.n.currentTime); break; case 3: z.tb && (b = AppMobi.context.getPlaybackTimeSound(this.src)) }!this.md && b > a && (b = a); return b }; m.prototype.Of = function() { return !this.Fc && !this.hd && !this.hc && !this.Ve() }; m.prototype.Vu = function() { var a = this.volume * G; switch (this.S) { case 0: this.n.volume && this.n.volume !== a && (this.n.volume = a); break; case 1: this.Sa.gain.value = a * this.ag } }; m.prototype.xi = function(a) { switch (this.S) { case 0: this.n.muted !== !!a && (this.n.muted = !!a); break; case 1: this.ag = a ? 0 : 1, this.Sa.gain.value = G * this.volume * this.ag } }; m.prototype.Hu = function() { this.Sf = !0; this.xi(this.Sf || this.dh) }; m.prototype.vp = function(a) { this.dh = !!a; this.xi(this.Sf || this.dh) }; m.prototype.Wp = function() { var a = this.playbackRate; this.$e && (a *= z.vf); switch (this.S) { case 0: this.n.playbackRate !== a && (this.n.playbackRate = a); break; case 1: 1 === this.buffer.S ? this.n.playbackRate.value !== a && (this.n.playbackRate.value = a) : this.n.playbackRate !== a && (this.n.playbackRate = a) } }; m.prototype.Ju = function(a) { switch (this.S) { case 0: a ? this.Of() ? (this.n.pause(), this.Wd = !0) : this.Wd = !1 : this.Wd && this.n.play(); break; case 1: a ? this.Of() ? (1 === this.buffer.S ? (this.Rb = this.Zk(), this.md && (this.Rb %= this.Se()), u(this.n)) : this.n.pause(), this.Wd = !0) : this.Wd = !1 : this.Wd && (1 === this.buffer.S ? (this.n = C.createBufferSource(), this.n.buffer = this.buffer.ga, this.n.connect(this.Sa), this.n.loop = this.md, this.Sa.gain.value = G * this.volume * this.ag, this.startTime = (this.$e ? z.Gb.X : z.Bd.X) - this.Rb, d(this.n, this.Rb, this.Se())) : this.n.play()); break; case 2: a ? this.Of() ? (this.n.pause(), this.Wd = !0) : this.Wd = !1 : this.Wd && this.n.play() } }; qa.wa = function(a) { this.type = a; z = this.b = a.b; fa = this; this.Ib = null; this.jh = -600; !(this.b.Si || this.b.Mi && (this.b.Zg || this.b.Ni)) || this.b.$g || this.b.ya || (Qa = !0); C = null; "undefined" !== typeof AudioContext ? (M = 1, C = new AudioContext) : "undefined" !== typeof webkitAudioContext && (M = 1, C = new webkitAudioContext); (this.b.Si && 1 === M || Qa) && document.addEventListener("touchstart", function() { var a, b, c; !uc && C && (a = C.createBuffer(1, 1, 22050), b = C.createBufferSource(), b.buffer = a, b.connect(C.destination), g(b), uc = !0); if (Qa) { if (!I) for (a = 0, b = Ra.length; a < b; ++a) c = Ra[a], c.hc || c.Fc || c.n.play(); Ra.length = 0 } }, !0); 1 !== M && (this.b.sc && "undefined" !== typeof window.Media ? M = 2 : this.b.Nf && (M = 3)); 2 === M && (H = location.href, a = H.lastIndexOf("/"), -1 < a && (H = H.substr(0, a + 1)), H = H.replace("file://", "")); if (this.b.eo && this.b.It && "undefined" === typeof Audio) alert("It looks like you're using Safari for Windows without Quicktime. Audio cannot be played until Quicktime is installed."), this.b.Ie(this); else { if (this.b.tb) N = this.b.Mi; else try { N = !!(new Audio).canPlayType('audio/ogg; codecs="vorbis"') } catch (b) { N = !1 } this.b.pg(this) } }; var na = qa.wa.prototype; na.W = function() { this.b.Df = this; F = this.C[0]; this.Xd = this.C[1]; this.gu = 0 !== this.C[2]; ma = this.C[3]; ha = this.C[4]; this.jh = -this.C[5]; va = this.C[6]; wa = this.C[7]; tc = this.C[8]; this.Ib = new c; var b = this.b.O || this.b.width, e = this.b.N || this.b.height; 1 === M && (C.listener.speedOfSound = this.C[9], C.listener.dopplerFactor = this.C[10], C.listener.setPosition(b / 2, e / 2, this.jh), C.listener.setOrientation(0, 0, 1, 0, -1, 0), window.c2OnAudioMicStream = function(b, c) { Ga && Ga.disconnect(); ub = c.toLowerCase(); Ga = C.createMediaStreamSource(b); Ga.connect(a(ub)) }); this.b.en(function(a) { fa.du(a) }); var d = this; this.b.mk(function(a) { d.Ol(a) }) }; na.Ol = function(a) { var b, c, e; b = 0; for (c = B.length; b < c; b++) e = B[b], e.Ma && e.Ma.H === a && (e.Ma.H = null, e.od && e.Of() && e.md && e.stop()); this.Ib.H === a && (this.Ib.H = null) }; na.Bb = function() { var a = { silent: I, masterVolume: G, listenerZ: this.jh, listenerUid: this.Ib.Li() ? this.Ib.H.uid : -1, playing: [], effects: {} }, b = a.playing, c, e, d, f, h, g; c = 0; for (e = B.length; c < e; c++) d = B[c], !d.Of() || 3 === this.Xd || d.Sc && 1 === this.Xd || !d.Sc && 2 === this.Xd || (f = d.Zk(), d.md && (f %= d.Se()), f = { tag: d.tag, buffersrc: d.buffer.src, is_music: d.Sc, playbackTime: f, volume: d.volume, looping: d.md, muted: d.Sf, playbackRate: d.playbackRate, paused: d.Fc, resume_position: d.Rb }, d.od && (f.pan = {}, g = f.pan, d.Ma && d.Ma.Li() ? g.objUid = d.Ma.H.uid : (g.x = d.fp, g.y = d.gp, g.a = d.bp), g.ia = d.cp, g.oa = d.dp, g.og = d.ep), b.push(f)); b = a.effects; for (h in U) if (U.hasOwnProperty(h)) { d = []; c = 0; for (e = U[h].length; c < e; c++) d.push({ type: U[h][c].type, params: U[h][c].Vc }); b[h] = d } return a }; var Sa = []; na.Ob = function(a) { var b = a.silent; G = a.masterVolume; this.jh = a.listenerZ; this.Ib.Hh(null); var e = a.listenerUid; - 1 !== e && (this.Ib.fj = e, Sa.push(this.Ib)); var e = a.playing, d, g, k, m, v, s, r, u, E, z, Q; if (3 !== this.Xd) for (d = 0, g = B.length; d < g; d++) E = B[d], E.Sc && 1 === this.Xd || (E.Sc || 2 !== this.Xd) && E.stop(); for (v in U) if (U.hasOwnProperty(v)) for (d = 0, g = U[v].length; d < g; d++) U[v][d].remove(); Xa(U); for (v in a.effects) if (a.effects.hasOwnProperty(v)) for (s = a.effects[v], d = 0, g = s.length; d < g; d++) switch (k = s[d].type, z = s[d].params, k) { case "filter": K(v, new t(z[0], z[1], z[2], z[3], z[4], z[5])); break; case "delay": K(v, new n(z[0], z[1], z[2])); break; case "convolve": k = z[2]; E = this.Hi(k, !1); E.ga ? k = new f(E.ga, z[0], z[1], k) : (k = new f(null, z[0], z[1], k), E.Qo = z[0], E.mi = k); K(v, k); break; case "flanger": K(v, new p(z[0], z[1], z[2], z[3], z[4])); break; case "phaser": K(v, new x(z[0], z[1], z[2], z[3], z[4], z[5])); break; case "gain": K(v, new h(z[0])); break; case "tremolo": K(v, new w(z[0], z[1])); break; case "ringmod": K(v, new y(z[0], z[1])); break; case "distortion": K(v, new l(z[0], z[1], z[2], z[3], z[4])); break; case "compressor": K(v, new q(z[0], z[1], z[2], z[3], z[4])); break; case "analyser": K(v, new A(z[0], z[1])) } d = 0; for (g = e.length; d < g; d++) 3 === this.Xd || (a = e[d], k = a.buffersrc, m = a.is_music, v = a.tag, s = a.playbackTime, r = a.looping, u = a.volume, Q = (z = a.pan) && z.hasOwnProperty("objUid") ? z.objUid : -1, m && 1 === this.Xd) || !m && 2 === this.Xd || ((E = this.Qk(k, v, m, r, u)) ? (E.Rb = a.resume_position, E.Gj(!!z), E.play(r, u, s), E.Wp(), E.Vu(), E.xi(E.Sf || E.dh), a.paused && E.pause(), a.muted && E.Hu(), E.xi(E.Sf || E.dh), z && (-1 !== Q ? (E.Ma = E.Ma || new c, E.Ma.fj = Q, Sa.push(E.Ma)) : E.om(z.x, z.y, z.a, z.ia, z.oa, z.og))) : (E = this.Hi(k, m), E.Fj = s, E.oj = a.paused, z && (-1 !== Q ? E.gg.push({ So: Q, gl: z.ia, Kl: z.oa, Nl: z.og, Kp: v }) : E.gg.push({ x: z.x, y: z.y, rr: z.a, gl: z.ia, Kl: z.oa, Nl: z.og, Kp: v })))); if (b && !I) { d = 0; for (g = B.length; d < g; d++) B[d].vp(!0); I = !0 } else if (!b && I) { d = 0; for (g = B.length; d < g; d++) B[d].vp(!1); I = !1 } }; na.Cd = function() { var a, b, c, e; a = 0; for (b = Sa.length; a < b; a++) c = Sa[a], e = this.b.Ng(c.fj), c.Hh(e), c.fj = -1, e && (ga = e.x, O = e.y); Sa.length = 0 }; na.du = function(a) { if (!this.gu) { !a && C && C.resume && C.resume(); var b, c; b = 0; for (c = B.length; b < c; b++) B[b].Ju(a); a && C && C.suspend && C.suspend() } }; na.qb = function() { var a = this.b.Pe, b, c, e; b = 0; for (c = B.length; b < c; b++) e = B[b], e.qb(a), 0 === e.S || 3 === e.S || e.hd || e.hc || !e.Ve() || (e.hc = !0, P = e.tag, z.trigger(kc.prototype.k.ek, fa)), 0 !== F && e.Wp(); var d, f; for (d in U) if (U.hasOwnProperty(d)) for (e = U[d], b = 0, c = e.length; b < c; b++) f = e[b], f.qb && f.qb(); 1 === M && this.Ib.Li() && (this.Ib.qb(a), ga = this.Ib.H.x, O = this.Ib.H.y, C.listener.setPosition(this.Ib.H.x, this.Ib.H.y, this.jh), C.listener.setVelocity(this.Ib.al(), this.Ib.bl(), 0)) }; var Ta = []; na.Iu = function(a) { var b, c, e, d, f, h = 0; b = 0; for (c = a.length; b < c; ++b) if (e = a[b], d = e[0], e = 2 * e[1], (f = 4 < d.length && ".ogg" === d.substr(d.length - 4)) && N || !f && !N) Ta.push({ filename: d, size: e, H: null }), h += e; return h }; na.Nu = function() { var a, b, c, e; a = 0; for (b = Ta.length; a < b; ++a) c = Ta[a], e = this.b.Di + c.filename, c.H = this.Hi(e, !1) }; na.Xs = function() { var a = 0, b, c, e; b = 0; for (c = Ta.length; b < c; ++b) e = Ta[b], e.H.Ht() || e.H.xt() || this.b.ya || this.b.Ni ? a += e.size : e.H.co() && (a += Math.floor(e.size / 2)); return a }; na.Hi = function(a, b) { var c, d, f, h = null; c = 0; for (d = L.length; c < d; c++) if (f = L[c], f.src === a) { h = f; break } h || (h = new e(a, b), L.push(h)); return h }; na.Qk = function(a, b, c, e, d) { var f, h, g; f = 0; for (h = B.length; f < h; f++) if (g = B[f], g.src === a && (g.Ir() || c)) return g.tag = b, g; a = this.Hi(a, c); if (!a.ga) return "" !== b && (a.qj = b, a.Dl = e, a.Jm = d), null; g = new m(a, b); B.push(g); return g }; var za = []; E.prototype.ek = function(a) { return jb(P, a) }; qa.k = new E; Q.prototype.Play = function(a, b, c, e) { !I && (c = k(c), D = this.Qk(this.b.Di + a[0] + (N ? ".ogg" : ".m4a"), e, a[1], 0 !== b, c)) && (D.Gj(!1), D.play(0 !== b, c)) }; Q.prototype.Wq = function(a, b, c, e, d) { !I && (e = k(e), D = this.Qk(this.b.Di + b.toLowerCase() + (N ? ".ogg" : ".m4a"), d, 1 === a, 0 !== c, e)) && (D.Gj(!1), D.play(0 !== c, e)) }; Q.prototype.fr = function(a, b) { v(a); var c, e; c = 0; for (e = za.length; c < e; c++) 0 === b ? za[c].pause() : za[c].sp() }; qa.F = new Q; qa.xa = new function() {} })(); function lc(k) { this.b = k } (function() { function k() {} function r() {} function a() {} var b = lc.prototype; b.Fa = function(a) { this.qa = a; this.b = a.b }; b.Fa.prototype.W = function() {}; b.wa = function(a) { this.type = a; this.b = a.b }; b.wa.prototype.W = function() { var a = this; window.addEventListener("resize", function() { a.b.trigger(lc.prototype.k.Rq, a) }); "undefined" !== typeof navigator.onLine && (window.addEventListener("online", function() { a.b.trigger(lc.prototype.k.Nq, a) }), window.addEventListener("offline", function() { a.b.trigger(lc.prototype.k.Mq, a) })); "undefined" !== typeof window.applicationCache && (window.applicationCache.addEventListener("updateready", function() { a.b.Xf = 1; a.b.trigger(lc.prototype.k.Xm, a) }), window.applicationCache.addEventListener("progress", function(b) { a.b.Xf = b.loaded / b.total })); this.b.tb || (document.addEventListener("appMobi.device.update.available", function() { a.b.trigger(lc.prototype.k.Xm, a) }), document.addEventListener("backbutton", function() { a.b.trigger(lc.prototype.k.ck, a) }), document.addEventListener("menubutton", function() { a.b.trigger(lc.prototype.k.Sm, a) }), document.addEventListener("searchbutton", function() { a.b.trigger(lc.prototype.k.Sq, a) }), document.addEventListener("tizenhwkey", function(b) { var d; switch (b.keyName) { case "back": d = a.b.trigger(lc.prototype.k.ck, a); !d && window.tizen && window.tizen.application.getCurrentApplication().exit(); break; case "menu": (d = a.b.trigger(lc.prototype.k.Sm, a)) || b.preventDefault() } })); this.b.Oi && (WinJS.Application.onbackclick = function() { return !!a.b.trigger(lc.prototype.k.ck, a) }); this.b.en(function(b) { b ? a.b.trigger(lc.prototype.k.Oq, a) : a.b.trigger(lc.prototype.k.Pq, a) }); this.Lt = "undefined" !== typeof window.is_scirra_arcade }; k.prototype.Nq = function() { return !0 }; k.prototype.Mq = function() { return !0 }; k.prototype.Xm = function() { return !0 }; k.prototype.Pq = function() { return !0 }; k.prototype.Oq = function() { return !0 }; k.prototype.Rq = function() { return !0 }; k.prototype.ck = function() { return !0 }; k.prototype.Sm = function() { return !0 }; k.prototype.Sq = function() { return !0 }; b.k = new k; r.prototype.oq = function(a, b) { Play68.goHome(); /*this.b.rc ? CocoonJS.App.openURL(a) : this.b.Ec ? ejecta.openURL(a) : this.b.ql ? Windows.System.Launcher.launchUriAsync(new Windows.Foundation.Uri(a)) : navigator.app && navigator.app.loadUrl ? navigator.app.loadUrl(a, { openExternal: !0 }) : this.b.sc ? window.open(a, "_system") : this.Lt || this.b.ya || window.open(a, b)*/ }; b.F = new r; a.prototype.URL = function(a) { // a.Pa(this.b.ya ? "" : window.location.toString()) }; b.xa = new a })(); function mc(k) { this.b = k } (function() { function k() {} var r = mc.prototype; r.Fa = function(a) { this.qa = a; this.b = a.b }; r.Fa.prototype.W = function() {}; r.wa = function(a) { this.type = a; this.b = a.b; this.Ti = Array(256); this.$j = Array(256); this.He = 0 }; var a = r.wa.prototype; a.W = function() { var a = this; this.b.ya || (jQuery(document).keydown(function(b) { a.Yt(b) }), jQuery(document).keyup(function(b) { a.Zt(b) })) }; var b = [32, 33, 34, 35, 36, 37, 38, 39, 40, 44]; a.Yt = function(a) { var g = !1; window != window.top && -1 < b.indexOf(a.which) && (a.preventDefault(), g = !0, a.stopPropagation()); if (this.Ti[a.which]) this.$j[a.which] && !g && a.preventDefault(); else { this.Ti[a.which] = !0; this.He = a.which; this.b.Zb = !0; this.b.trigger(mc.prototype.k.zq, this); var d = this.b.trigger(mc.prototype.k.Om, this), k = this.b.trigger(mc.prototype.k.Iq, this); this.b.Zb = !1; if (d || k) this.$j[a.which] = !0, g || a.preventDefault() } }; a.Zt = function(a) { this.Ti[a.which] = !1; this.He = a.which; this.b.Zb = !0; this.b.trigger(mc.prototype.k.Aq, this); var b = this.b.trigger(mc.prototype.k.Pm, this), d = this.b.trigger(mc.prototype.k.Jq, this); this.b.Zb = !1; if (b || d || this.$j[a.which]) this.$j[a.which] = !0, a.preventDefault() }; a.Bb = function() { return { triggerKey: this.He } }; a.Ob = function(a) { this.He = a.triggerKey }; k.prototype.rq = function(a) { return this.Ti[a] }; k.prototype.Om = function(a) { return a === this.He }; k.prototype.zq = function() { return !0 }; k.prototype.Aq = function() { return !0 }; k.prototype.Pm = function(a) { return a === this.He }; k.prototype.Iq = function(a) { return a === this.He }; k.prototype.Jq = function(a) { return a === this.He }; r.k = new k; r.F = new function() {}; r.xa = new function() {} })(); function Y(k) { this.b = k } (function() { function k() { if (0 === this.Bk.length) { var a = document.createElement("canvas"); a.width = this.width; a.height = this.height; var b = a.getContext("2d"); this.mg ? b.drawImage(this.Aa, this.dg, this.eg, this.width, this.height, 0, 0, this.width, this.height) : b.drawImage(this.Aa, 0, 0, this.width, this.height); this.Bk = a.toDataURL("image/png") } return this.Bk } function r() {} function a(a) { a[0] = 0; a[1] = 0; a[2] = 0; x.push(a) } function b(a, b) { return a < b ? "" + a + "," + b : "" + b + "," + a } function s(a, d, c, e) { d = d.uid; c = c.uid; var f = b(d, c); if (a.hasOwnProperty(f)) a[f][2] = e; else { var h = x.length ? x.pop() : [0, 0, 0]; h[0] = d; h[1] = c; h[2] = e; a[f] = h } } function g(d, f, c) { f = b(f.uid, c.uid); d.hasOwnProperty(f) && (a(d[f]), delete d[f]) } function d(a, d, c) { d = b(d.uid, c.uid); if (a.hasOwnProperty(d)) return h = a[d][2], !0; h = -2; return !1 } function u() {} var t = Y.prototype; t.Fa = function(a) { this.qa = a; this.b = a.b }; var n = t.Fa.prototype; n.W = function() { if (!this.K) { var a, b, c, e, d, f, h, g, l; this.Oc = []; this.Ug = !1; a = 0; for (b = this.Ub.length; a < b; a++) { d = this.Ub[a]; h = {}; h.name = d[0]; h.speed = d[1]; h.loop = d[2]; h.em = d[3]; h.Cj = d[4]; h.jp = d[5]; h.U = d[6]; h.frames = []; c = 0; for (e = d[7].length; c < e; c++) f = d[7][c], g = {}, g.wm = f[0], g.Jp = f[1], g.dg = f[2], g.eg = f[3], g.width = f[4], g.height = f[5], g.duration = f[6], g.Mb = f[7], g.Nb = f[8], g.hl = f[9], g.rj = f[10], g.kp = f[11], g.mg = 0 !== g.width, g.Bk = "", g.kw = k, l = { left: 0, top: 0, right: 1, bottom: 1 }, g.pm = l, g.Ka = null, (l = this.b.Ls(f[0])) ? g.Aa = l : (g.Aa = new Image, g.Aa.Mr = f[0], g.Aa.Lr = f[1], g.Aa.Gr = null, this.b.$p(g.Aa, f[0])), h.frames.push(g), this.Oc.push(g); this.Ub[a] = h } } }; n.Up = function() { var a, b, c; a = 0; for (b = this.d.length; a < b; a++) c = this.d[a], c.qi = c.nc.Ka }; n.mj = function() { if (!this.K) { var a, b, c; a = 0; for (b = this.Oc.length; a < b; ++a) c = this.Oc[a], c.Aa.Gr = null, c.Ka = null; this.Ug = !1; this.Up() } }; n.Ql = function() { if (!this.K && this.d.length) { var a, b, c; a = 0; for (b = this.Oc.length; a < b; ++a) c = this.Oc[a], c.Ka = this.b.u.ej(c.Aa, this.b.ca, c.kp); this.Up() } }; n.Pt = function() { if (!this.K && !this.Ug && this.b.u) { var a, b, c; a = 0; for (b = this.Oc.length; a < b; ++a) c = this.Oc[a], c.Ka = this.b.u.ej(c.Aa, this.b.ca, c.kp); this.Ug = !0 } }; n.Cm = function() { if (!this.K && !this.d.length && this.Ug) { var a, b, c; a = 0; for (b = this.Oc.length; a < b; ++a) c = this.Oc[a], this.b.u.deleteTexture(c.Ka), c.Ka = null; this.Ug = !1 } }; var f = []; n.Yl = function(a) { var b, c, e; b = f.length = 0; for (c = this.Oc.length; b < c; ++b) e = this.Oc[b].Aa, -1 === f.indexOf(e) && (a.drawImage(e, 0, 0), f.push(e)) }; t.wa = function(a) { this.type = a; this.b = a.b; a = this.type.Ub[0].frames[0].rj; this.ec ? this.da.Kh(a) : this.da = new db(a) }; var p = t.wa.prototype; p.W = function() { this.visible = 0 === this.C[0]; this.Vg = this.Ze = !1; this.Gd = 0 !== this.C[3]; 1 === this.type.Ub.length && 1 === this.type.Ub[0].frames.length || 0 === this.type.Ub[0].speed || (this.b.pg(this), this.Ze = !0); this.Ga = this.Jn(this.C[1]) || this.type.Ub[0]; this.A = this.C[2]; 0 > this.A && (this.A = 0); this.A >= this.Ga.frames.length && (this.A = this.Ga.frames.length - 1); var a = this.Ga.frames[this.A]; this.da.Kh(a.rj); this.Mb = a.Mb; this.Nb = a.Nb; this.Eg = this.Ga.speed; this.ec ? this.Pc.reset() : this.Pc = new bb; this.gd = this.Pc.X; this.Dd = !0; this.Ed = 0; this.Je = !0; this.hi = this.hn = ""; this.sn = 0; this.Bg = -1; this.type.Pt(); var b, c, e, d, f, h, g, a = 0; for (b = this.type.Ub.length; a < b; a++) for (d = this.type.Ub[a], c = 0, e = d.frames.length; c < e; c++) f = d.frames[c], 0 === f.width && (f.width = f.Aa.width, f.height = f.Aa.height), f.mg && (g = f.Aa, h = f.pm, h.left = f.dg / g.width, h.top = f.eg / g.height, h.right = (f.dg + f.width) / g.width, h.bottom = (f.eg + f.height) / g.height, 0 === f.dg && 0 === f.eg && f.width === g.width && f.height === g.height && (f.mg = !1)); this.nc = this.Ga.frames[this.A]; this.qi = this.nc.Ka }; p.Bb = function() { var a = { a: this.Ga.U, f: this.A, cas: this.Eg, fs: this.gd, ar: this.Ed, at: this.Pc.X }; this.Dd || (a.ap = this.Dd); this.Je || (a.af = this.Je); return a }; p.Ob = function(a) { var b = this.Qs(a.a); b && (this.Ga = b); this.A = a.f; 0 > this.A && (this.A = 0); this.A >= this.Ga.frames.length && (this.A = this.Ga.frames.length - 1); this.Eg = a.cas; this.gd = a.fs; this.Ed = a.ar; this.Pc.reset(); this.Pc.X = a.at; this.Dd = a.hasOwnProperty("ap") ? a.ap : !0; this.Je = a.hasOwnProperty("af") ? a.af : !0; this.nc = this.Ga.frames[this.A]; this.qi = this.nc.Ka; this.da.Kh(this.nc.rj); this.Mb = this.nc.Mb; this.Nb = this.nc.Nb }; p.pk = function(a) { this.A = a ? 0 : this.Ga.frames.length - 1; this.Dd = !1; this.hn = this.Ga.name; this.Vg = !0; this.b.trigger(Y.prototype.k.yq, this); this.b.trigger(Y.prototype.k.xq, this); this.Vg = !1; this.Ed = 0 }; p.mw = function() { return this.Pc.X }; p.qb = function() { this.Pc.add(this.b.Uk(this)); this.hi.length && this.zn(); 0 <= this.Bg && this.Ek(); var a = this.Pc.X, b = this.Ga, c = b.frames[this.A], e = c.duration / this.Eg; this.Dd && a >= this.gd + e && (this.Je ? this.A++ : this.A--, this.gd += e, this.A >= b.frames.length && (b.jp ? (this.Je = !1, this.A = b.frames.length - 2) : b.loop ? this.A = b.Cj : (this.Ed++, this.Ed >= b.em ? this.pk(!1) : this.A = b.Cj)), 0 > this.A && (b.jp ? (this.A = 1, this.Je = !0, b.loop || (this.Ed++, this.Ed >= b.em && this.pk(!0))) : b.loop ? this.A = b.Cj : (this.Ed++, this.Ed >= b.em ? this.pk(!0) : this.A = b.Cj)), 0 > this.A ? this.A = 0 : this.A >= b.frames.length && (this.A = b.frames.length - 1), a > this.gd + b.frames[this.A].duration / this.Eg && (this.gd = a), a = b.frames[this.A], this.Af(c, a), this.b.aa = !0) }; p.Jn = function(a) { var b, c, e; b = 0; for (c = this.type.Ub.length; b < c; b++) if (e = this.type.Ub[b], jb(e.name, a)) return e; return null }; p.Qs = function(a) { var b, c, e; b = 0; for (c = this.type.Ub.length; b < c; b++) if (e = this.type.Ub[b], e.U === a) return e; return null }; p.zn = function() { var a = this.Ga.frames[this.A], b = this.Jn(this.hi); this.hi = ""; !b || jb(b.name, this.Ga.name) && this.Dd || (this.Ga = b, this.Eg = b.speed, 0 > this.A && (this.A = 0), this.A >= this.Ga.frames.length && (this.A = this.Ga.frames.length - 1), 1 === this.sn && (this.A = 0), this.Dd = !0, this.gd = this.Pc.X, this.Je = !0, this.Af(a, this.Ga.frames[this.A]), this.b.aa = !0) }; p.Ek = function() { var a = this.Ga.frames[this.A], b = this.A; this.A = S(this.Bg); 0 > this.A && (this.A = 0); this.A >= this.Ga.frames.length && (this.A = this.Ga.frames.length - 1); b !== this.A && (this.Af(a, this.Ga.frames[this.A]), this.gd = this.Pc.X, this.b.aa = !0); this.Bg = -1 }; p.Af = function(a, b) { var c = a.width, e = a.height, d = b.width, f = b.height; c != d && (this.width *= d / c); e != f && (this.height *= f / e); this.Mb = b.Mb; this.Nb = b.Nb; this.da.Kh(b.rj); this.T(); this.nc = b; this.qi = b.Ka; c = 0; for (e = this.L.length; c < e; c++) d = this.L[c], d.cu && d.cu(a, b); this.b.trigger(Y.prototype.k.Af, this) }; p.ed = function(a) { a.globalAlpha = this.opacity; var b = this.nc, c = b.mg, e = b.Aa, d = this.x, f = this.y, h = this.width, g = this.height; if (0 === this.j && 0 <= h && 0 <= g) d -= this.Mb * h, f -= this.Nb * g, this.b.rd && (d = Math.round(d), f = Math.round(f)), c ? a.drawImage(e, b.dg, b.eg, b.width, b.height, d, f, h, g) : a.drawImage(e, d, f, h, g); else { this.b.rd && (d = Math.round(d), f = Math.round(f)); a.save(); var k = 0 < h ? 1 : -1, l = 0 < g ? 1 : -1; a.translate(d, f); 1 === k && 1 === l || a.scale(k, l); a.rotate(this.j * k * l); d = 0 - this.Mb * la(h); f = 0 - this.Nb * la(g); c ? a.drawImage(e, b.dg, b.eg, b.width, b.height, d, f, la(h), la(g)) : a.drawImage(e, d, f, la(h), la(g)); a.restore() } }; p.Cc = function(a) { a.gc(this.qi); a.pf(this.opacity); var b = this.nc, c = this.Db; if (this.b.rd) { var e = Math.round(this.x) - this.x, d = Math.round(this.y) - this.y; b.mg ? a.Ud(c.ta + e, c.ua + d, c.ib + e, c.jb + d, c.Ya + e, c.Za + d, c.Wa + e, c.Xa + d, b.pm) : a.yj(c.ta + e, c.ua + d, c.ib + e, c.jb + d, c.Ya + e, c.Za + d, c.Wa + e, c.Xa + d) } else b.mg ? a.Ud(c.ta, c.ua, c.ib, c.jb, c.Ya, c.Za, c.Wa, c.Xa, b.pm) : a.yj(c.ta, c.ua, c.ib, c.jb, c.Ya, c.Za, c.Wa, c.Xa) }; p.Ts = function(a) { var b = this.nc, c, e; c = 0; for (e = b.hl.length; c < e; c++) if (jb(a, b.hl[c][0])) return c; return -1 }; p.Xk = function(a, b) { var c = this.nc, e = c.hl, d; d = R(a) ? this.Ts(a) : a - 1; d = S(d); if (0 > d || d >= e.length) return b ? this.x : this.y; var f = (e[d][1] - c.Mb) * this.width, e = e[d][2], e = (e - c.Nb) * this.height, c = Math.cos(this.j); d = Math.sin(this.j); var h = f * c - e * d, e = e * c + f * d, f = h + this.x, e = e + this.y; return b ? f : e }; var x = [], h = -2, w = []; r.prototype.Cq = function(b) { if (!b) return !1; var f = this.b, c = f.Tk(), e = c.type; c.R.collmemory || (c.R.collmemory = {}, f.mk(function(b) { return function(c) { c = c.uid; var e, d; for (e in b) b.hasOwnProperty(e) && (d = b[e], d[0] === c || d[1] === c) && (a(b[e]), delete b[e]) } }(c.R.collmemory))); var c = c.R.collmemory, k = e.Y(), l = b.Y(), k = k.pc(), n, p, t, r, z, y, u, x = this.b.xd, M = x - 1, C = f.Ab().Wb; for (p = 0; p < k.length; p++) { t = k[p]; l.fa ? (t.na(), this.b.Kn(t.i, b, t.La, w), n = w) : n = l.pc(); for (r = 0; r < n.length; r++) z = n[r], f.tf(t, z) || f.Jr(t, z) ? (y = d(c, t, z), y = !y || h < M, s(c, t, z, x), y && (f.wj(C.ra), y = e.Y(), u = b.Y(), y.fa = !1, u.fa = !1, e === b ? (y.d.length = 2, y.d[0] = t, y.d[1] = z, e.wc()) : (y.d.length = 1, u.d.length = 1, y.d[0] = t, u.d[0] = z, e.wc(), b.wc()), C.yu(), f.nf(C.ra))) : g(c, t, z); w.length = 0 } return !1 }; var y = new ba, l = !1; new T(0, 0, 0, 0); n.finish = function(a) { if (l) { if (a) { var b = this.b.Ab().Wb.Uc; a = null.Y(); var c = y.be(), e, d; if (a.fa) { a.fa = !1; a.d.length = c.length; e = 0; for (d = c.length; e < d; e++) a.d[e] = c[e]; if (b) for (e = a.ea.length = 0, d = null.d.length; e < d; e++) c = null.d[e], y.contains(c) || a.ea.push(c) } else if (b) for (b = a.d.length, a.d.length = b + c.length, e = 0, d = c.length; e < d; e++) a.d[b + e] = c[e], Da(a.ea, c[e]); else Aa(a.d, c); null.wc() } y.clear(); l = !1 } }; r.prototype.xq = function(a) { return jb(this.hn, a) }; r.prototype.yq = function() { return !0 }; r.prototype.Af = function() { return !0 }; t.k = new r; u.prototype.mr = function() { this.Dd = !1 }; u.prototype.lr = function(a) { this.Dd = !0; this.gd = this.Pc.X; 1 === a && 0 !== this.A && (this.Bg = 0, this.Vg || this.Ek()); this.Ze || (this.b.pg(this), this.Ze = !0) }; u.prototype.Zq = function(a, b) { this.hi = a; this.sn = b; this.Ze || (this.b.pg(this), this.Ze = !0); this.Vg || this.zn() }; u.prototype.$q = function(a) { this.Bg = a; this.Ze || (this.b.pg(this), this.Ze = !0); this.Vg || this.Ek() }; u.prototype.Ym = function(a) { var b = this.nc, c = b.width * a * (0 > this.width ? -1 : 1); a = b.height * a * (0 > this.height ? -1 : 1); if (this.width !== c || this.height !== a) this.width = c, this.height = a, this.T() }; t.F = new u; t.xa = new function() {} })(); function nc(k) { this.b = k } (function() { function k(a, b) { return a.length ? a.pop() : new b } function r(a, b, d) { if (d) { var f; d = 0; for (f = b.length; d < f; d++) a.length < u && a.push(b[d]); b.length = 0 } else for (f in b) Object.prototype.hasOwnProperty.call(b, f) && (a.length < u && a.push(b[f]), delete b[f]) } function a(a, b, d) { var f = a.Hb; d = d.replace(/\s\s*$/, ""); b >= f.length && f.push(k(t, Object)); b = f[b]; b.text = d; b.width = a.Fl(d); a.Yd = oa(a.Yd, b.width) } function b() {} function s() {} var g = nc.prototype; g.W = function() {}; g.Fa = function(a) { this.qa = a; this.b = a.b }; var d = g.Fa.prototype; d.W = function() { this.K || (this.Aa = new Image, this.b.$p(this.Aa, this.wm), this.Ka = null) }; d.mj = function() { this.K || (this.Ka = null) }; d.Ql = function() { if (!this.K && this.d.length) { this.Ka || (this.Ka = this.b.u.ej(this.Aa, this.b.ca, this.xm)); var a, b; a = 0; for (b = this.d.length; a < b; a++) this.d[a].Ka = this.Ka } }; d.Cm = function() { this.K || this.d.length || !this.Ka || (this.b.u.deleteTexture(this.Ka), this.Ka = null) }; d.Yl = function(a) { a.drawImage(this.Aa, 0, 0) }; g.wa = function(a) { this.type = a; this.b = a.b }; d = g.wa.prototype; d.fg = function() { r(t, this.Hb, !0); r(n, this.ji, !1); r(f, this.ki, !1); Xa(this.le) }; d.W = function() { this.Aa = this.type.Aa; this.ii = this.C[0]; this.ke = this.C[1]; this.characterSet = this.C[2]; this.text = this.C[3]; this.dd = this.C[4]; this.visible = 0 === this.C[5]; this.Te = this.C[6] / 2; this.wf = this.C[7] / 2; this.Xh = 0 === this.C[9]; this.Ff = this.C[10]; this.lineHeight = this.C[11]; this.wd = this.Yd = 0; this.ec ? (this.Hb.length = 0, Xa(this.ji), Xa(this.ki), Xa(this.le)) : (this.Hb = [], this.ji = {}, this.ki = {}, this.le = {}); this.ic = !0; this.ff = this.width; this.b.u && (this.type.Ka || (this.type.Ka = this.b.u.ej(this.type.Aa, this.b.ca, this.type.xm)), this.Ka = this.type.Ka); this.kr() }; d.Bb = function() { var a = { t: this.text, csc: this.dd, csp: this.Ff, lh: this.lineHeight, tw: this.Yd, th: this.wd, lrt: this.ef, cw: {} }, b; for (b in this.le) a.cw[b] = this.le[b]; return a }; d.Ob = function(a) { this.text = a.t; this.dd = a.csc; this.Ff = a.csp; this.lineHeight = a.lh; this.Yd = a.tw; this.wd = a.th; this.ef = a.lrt; for (var b in a.cw) this.le[b] = a.cw[b]; this.ic = !0; this.ff = this.width }; var u = 1E3, t = [], n = [], f = []; d.kr = function() { for (var a = this.Aa, b = a.width, d = a.height, a = this.ii, g = this.ke, p = a / b, t = g / d, c = this.characterSet, b = Math.floor(b / a), d = Math.floor(d / g), e = 0; e < c.length && !(e >= b * d); e++) { var m = e % b, v = Math.floor(e / b), r = c.charAt(e); if (this.b.u) { var s = this.ki, u = m * p, x = v * t, m = (m + 1) * p, v = (v + 1) * t; void 0 === s[r] && (s[r] = k(f, T)); s[r].left = u; s[r].top = x; s[r].right = m; s[r].bottom = v } else s = this.ji, m *= a, v *= g, u = a, x = g, void 0 === s[r] && (s[r] = k(n, Object)), s[r].x = m, s[r].y = v, s[r].Zp = u, s[r].Tn = x } }; var p = []; g.jk = function(a) { p.length = 0; for (var b = "", d, f = 0; f < a.length;) if (d = a.charAt(f), "\n" === d) b.length && (p.push(b), b = ""), p.push("\n"), ++f; else if (" " === d || "\t" === d || "-" === d) { do b += a.charAt(f), f++; while (f < a.length && (" " === a.charAt(f) || "\t" === a.charAt(f))); p.push(b); b = "" } else f < a.length && (b += d, f++); b.length && p.push(b) }; g.kk = function(a) { var b = a.text, d = a.Hb; if (b && b.length) { var f = a.width; if (2 >= f) r(t, d, !0); else { var g = a.dd, n = a.Ff; if (b.length * (a.ii * g + n) - n <= f && -1 === b.indexOf("\n") && (n = a.Fl(b), n <= f)) { r(t, d, !0); d.push(k(t, Object)); d[0].text = b; d[0].width = n; a.Yd = n; a.wd = a.ke * g + a.lineHeight; return } this.lk(a); a.wd = d.length * (a.ke * g + a.lineHeight) } } else r(t, d, !0) }; g.lk = function(b) { var d = b.Xh, f = b.text, g = b.Hb, k = b.width; d && (this.jk(f), f = p); var n = "", c, e, m, v = 0, r = !1; for (m = 0; m < f.length; m++) "\n" === f[m] ? (!0 === r ? r = !1 : (a(b, v, n), v++), n = "") : (r = !1, c = n, n += f[m], e = b.Fl(n.replace(/\s\s*$/, "")), e > k && ("" === c ? (a(b, v, n), n = "", r = !0) : (a(b, v, c), n = f[m]), v++, d || " " !== n || (n = ""))); n.replace(/\s\s*$/, "").length && (a(b, v, n), v++); for (m = v; m < g.length; m++) t.length < u && t.push(g[m]); g.length = v }; d.Fl = function(a) { for (var b = this.Ff, d = a.length, f = 0, g = 0; g < d; g++) f += this.Sk(a.charAt(g)) * this.dd + b; return f - (0 < f ? b : 0) }; d.Sk = function(a) { var b = this.le; return void 0 !== b[a] ? b[a] : this.ii }; d.pp = function() { if (this.ic || this.width !== this.ff) this.wd = this.Yd = 0, this.type.qa.kk(this), this.ic = !1, this.ff = this.width }; d.ed = function(a) { var b = this.Aa; if ("" !== this.text && null != b && (this.pp(), !(this.height < this.ke * this.dd + this.lineHeight))) { a.globalAlpha = this.opacity; var b = this.x, d = this.y; this.b.rd && (b = Math.round(b), d = Math.round(d)); var f = this.i.Ba, g = this.i.Ca, k = this.i.Ja, c = this.i.Ia; a.save(); a.translate(b, d); a.rotate(this.j); for (var e = this.Te, m = this.dd, n = this.ke * m, p = this.lineHeight, t = this.Ff, r = this.Hb, s, z = -(this.Mb * this.width), u = -(this.Nb * this.height), u = u + this.wf * oa(0, this.height - this.wd), x, H, M, C = 0; C < r.length; C++) { var L = r[C].text; s = e * oa(0, this.width - r[C].width); x = z + s; u += p; if (d + u + n < g) u += n; else { for (var B = 0; B < L.length; B++) { H = L.charAt(B); s = this.Sk(H); var D = this.ji[H]; if (b + x + s * m + t < f) x += s * m + t; else { if (x + s * m > this.width + 1E-5) break; void 0 !== D && (H = x, M = u, 0 === this.j && (H = Math.round(H), M = Math.round(M)), a.drawImage(this.Aa, D.x, D.y, D.Zp, D.Tn, H, M, D.Zp * m, D.Tn * m)); x += s * m + t; if (b + x > k) break } } u += n; if (u + n + p > this.height || d + u > c) break } } a.restore() } }; var x = new ua; d.Cc = function(a) { a.gc(this.Ka); a.pf(this.opacity); if (this.text && (this.pp(), !(this.height < this.ke * this.dd + this.lineHeight))) { this.na(); var b = this.Db, d = 0, f = 0; this.b.rd && (d = Math.round(this.x) - this.x, f = Math.round(this.y) - this.y); var g = this.i.Ba, k = this.i.Ca, c = this.i.Ja, e = this.i.Ia, m = this.j, n = this.Te, p = this.wf, t = this.dd, r = this.ke * t, s = this.lineHeight, z = this.Ff, u = this.Hb, P = this.wd, H, M, C; 0 !== m && (M = Math.cos(m), C = Math.sin(m)); for (var d = b.ta + d, b = b.ua + f, L, p = p * oa(0, this.height - P), B, D, P = 0; P < u.length; P++) if (f = u[P].text, L = H = n * oa(0, this.width - u[P].width), p += s, 0 === m && b + p + r < k) p += r; else { for (var N = 0; N < f.length; N++) { var F = f.charAt(N); H = this.Sk(F); F = this.ki[F]; if (d + L + H * t + z < g) L += H * t + z; else { if (L + H * t > this.width + 1E-5) break; if (void 0 !== F) { var I = this.ii * t, G = this.ke * t; B = L; D = p; 0 === m && (B = Math.round(B), D = Math.round(D)); x.ta = B; x.ua = D; x.ib = B + I; x.jb = D; x.Wa = B; x.Xa = D + G; x.Ya = B + I; x.Za = D + G; 0 !== m && (B = x, D = M, I = C, G = void 0, G = B.ta * D - B.ua * I, B.ua = B.ua * D + B.ta * I, B.ta = G, G = B.ib * D - B.jb * I, B.jb = B.jb * D + B.ib * I, B.ib = G, G = B.Wa * D - B.Xa * I, B.Xa = B.Xa * D + B.Wa * I, B.Wa = G, G = B.Ya * D - B.Za * I, B.Za = B.Za * D + B.Ya * I, B.Ya = G); x.offset(d, b); a.Ud(x.ta, x.ua, x.ib, x.jb, x.Ya, x.Za, x.Wa, x.Xa, F) } L += H * t + z; if (0 === m && d + L > c) break } } p += r; if (p + r + s > this.height || b + p > e) break } } }; g.k = new function() {}; b.prototype.ik = function(a) { ia(a) && 1E9 > a && (a = Math.round(1E10 * a) / 1E10); a = a.toString(); this.text !== a && (this.text = a, this.ic = !0, this.b.aa = !0) }; b.prototype.Ym = function(a) { a !== this.dd && (this.dd = a, this.ic = !0, this.b.aa = !0) }; d.Pv = function(a, b) { var d = parseInt(b, 10); this.le[a] !== d && (this.le[a] = d, this.ic = !0, this.b.aa = !0) }; g.F = new b; s.prototype.Text = function(a) { a.Pa(this.text) }; g.xa = new s })(); function oc(k) { this.b = k } (function() { function k() { return u.length ? u.pop() : {} } function r(a) { var b, d; b = 0; for (d = a.length; b < d; b++) u.push(a[b]); a.length = 0 } function a() {} function b() {} var s = oc.prototype; s.W = function() { s.F.ir = function(a) { this.width !== a && (this.width = a, this.ic = !0, this.T()) } }; s.Fa = function(a) { this.qa = a; this.b = a.b }; var g = s.Fa.prototype; g.W = function() {}; g.mj = function() { if (!this.K) { var a, b, d; a = 0; for (b = this.d.length; a < b; a++) d = this.d[a], d.nd = null, d.mf = null, d.ac = null } }; s.wa = function(a) { this.type = a; this.b = a.b; this.ec ? this.Hb.length = 0 : this.Hb = []; this.ic = !0 }; g = s.wa.prototype; g.W = function() { this.text = this.C[0]; this.visible = 0 === this.C[1]; this.font = this.C[2]; this.color = this.C[3]; this.Te = this.C[4]; this.wf = this.C[5]; this.Xh = 0 === this.C[7]; this.ff = this.Zi = this.width; this.Yi = this.height; this.yl = this.C[8]; this.Fi = this.If = ""; this.wd = this.Yd = this.Dh = 0; this.eu(); this.ac = this.mf = this.nd = null; this.Oo = !1; this.ef = this.b.xd; this.ec ? this.hg.set(0, 0, 1, 1) : this.hg = new T(0, 0, 1, 1); this.b.u && this.b.pg(this) }; g.eu = function() { var a = this.font.split(" "), b; for (b = 0; b < a.length; b++) if ("pt" === a[b].substr(a[b].length - 2, 2)) { this.Dh = parseInt(a[b].substr(0, a[b].length - 2)); this.$l = Math.ceil(this.Dh / 72 * 96) + 4; 0 < b && (this.Fi = a[b - 1]); this.If = a[b + 1]; for (b += 2; b < a.length; b++) this.If += " " + a[b]; break } }; g.Bb = function() { return { t: this.text, f: this.font, c: this.color, ha: this.Te, va: this.wf, wr: this.Xh, lho: this.yl, fn: this.If, fs: this.Fi, ps: this.Dh, pxh: this.$l, tw: this.Yd, th: this.wd, lrt: this.ef } }; g.Ob = function(a) { this.text = a.t; this.font = a.f; this.color = a.c; this.Te = a.ha; this.wf = a.va; this.Xh = a.wr; this.yl = a.lho; this.If = a.fn; this.Fi = a.fs; this.Dh = a.ps; this.$l = a.pxh; this.Yd = a.tw; this.wd = a.th; this.ef = a.lrt; this.ic = !0; this.ff = this.Zi = this.width; this.Yi = this.height }; g.qb = function() { if (this.b.u && this.ac && 300 <= this.b.xd - this.ef) { var a = this.i; this.na(); var b = this.La; if (b.right < a.Ba || b.bottom < a.Ca || b.left > a.Ja || b.top > a.Ia) this.b.u.deleteTexture(this.ac), this.nd = this.mf = this.ac = null } }; g.fg = function() { this.nd = this.mf = null; this.b.u && this.ac && this.b.u.deleteTexture(this.ac); this.ac = null }; g.ww = function() { this.font = this.Fi + " " + this.Dh.toString() + "pt " + this.If; this.ic = !0; this.b.aa = !0 }; g.ed = function(a, b) { a.font = this.font; a.textBaseline = "top"; a.fillStyle = this.color; a.globalAlpha = b ? 1 : this.opacity; var d = 1; b && (d = this.i.qc(), a.save(), a.scale(d, d)); if (this.ic || this.width !== this.ff) this.type.qa.kk(this.text, this.Hb, a, this.width, this.Xh), this.ic = !1, this.ff = this.width; this.na(); var d = b ? 0 : this.Db.ta, g = b ? 0 : this.Db.ua; this.b.rd && (d = d + .5 | 0, g = g + .5 | 0); 0 === this.j || b || (a.save(), a.translate(d, g), a.rotate(this.j), g = d = 0); var k = g + this.height, h = this.$l, h = h + this.yl, r, s; 1 === this.wf ? g += Math.max(this.height / 2 - this.Hb.length * h / 2, 0) : 2 === this.wf && (g += Math.max(this.height - this.Hb.length * h - 2, 0)); for (s = 0; s < this.Hb.length && !(r = d, 1 === this.Te ? r = d + (this.width - this.Hb[s].width) / 2 : 2 === this.Te && (r = d + (this.width - this.Hb[s].width)), a.fillText(this.Hb[s].text, r, g), g += h, g >= k - h); s++); (0 !== this.j || b) && a.restore(); this.ef = this.b.xd }; g.Cc = function(a) { if (!(1 > this.width || 1 > this.height)) { var b = this.ic || this.Oo; this.Oo = !1; var d = this.i.qc(), g = this.i.Ta(), k = this.hg, h = d * this.width, r = d * this.height, s = Math.ceil(h), l = Math.ceil(r), q = this.b.O / 2, u = this.b.N / 2; this.mf || (this.nd = document.createElement("canvas"), this.nd.width = s, this.nd.height = l, this.Zi = s, this.Yi = l, b = !0, this.mf = this.nd.getContext("2d")); if (s !== this.Zi || l !== this.Yi) this.nd.width = s, this.nd.height = l, this.ac && (a.deleteTexture(this.ac), this.ac = null), b = !0; b && (this.mf.clearRect(0, 0, s, l), this.ed(this.mf, !0), this.ac || (this.ac = a.Hd(s, l, this.b.ca, this.b.ld)), a.av(this.nd, this.ac, this.b.ld)); this.Zi = s; this.Yi = l; a.gc(this.ac); a.pf(this.opacity); a.sd(); a.translate(-q, -u); a.zd(); var c = this.Db, b = this.i.Ea(c.ta, c.ua, !0, !0), q = this.i.Ea(c.ta, c.ua, !1, !0), u = this.i.Ea(c.ib, c.jb, !0, !0), e = this.i.Ea(c.ib, c.jb, !1, !0), m = this.i.Ea(c.Ya, c.Za, !0, !0), v = this.i.Ea(c.Ya, c.Za, !1, !0), K = this.i.Ea(c.Wa, c.Xa, !0, !0), c = this.i.Ea(c.Wa, c.Xa, !1, !0); if (this.b.rd || 0 === this.j && 0 === g) var E = (b + .5 | 0) - b, Q = (q + .5 | 0) - q, b = b + E, q = q + Q, u = u + E, e = e + Q, m = m + E, v = v + Q, K = K + E, c = c + Q; 0 === this.j && 0 === g ? (u = b + s, e = q, m = u, v = q + l, K = b, c = v, k.right = 1, k.bottom = 1) : (k.right = h / s, k.bottom = r / l); a.Ud(b, q, u, e, m, v, K, c, k); a.sd(); a.scale(d, d); a.gm(-this.i.Ta()); a.translate((this.i.Ba + this.i.Ja) / -2, (this.i.Ca + this.i.Ia) / -2); a.zd(); this.ef = this.b.xd } }; var d = []; s.jk = function(a) { d.length = 0; for (var b = "", f, g = 0; g < a.length;) if (f = a.charAt(g), "\n" === f) b.length && (d.push(b), b = ""), d.push("\n"), ++g; else if (" " === f || "\t" === f || "-" === f) { do b += a.charAt(g), g++; while (g < a.length && (" " === a.charAt(g) || "\t" === a.charAt(g))); d.push(b); b = "" } else g < a.length && (b += f, g++); b.length && d.push(b) }; var u = []; s.kk = function(a, b, d, g, s) { if (a && a.length) if (2 >= g) r(b); else { if (100 >= a.length && -1 === a.indexOf("\n")) { var h = d.measureText(a).width; if (h <= g) { r(b); b.push(k()); b[0].text = a; b[0].width = h; return } } this.lk(a, b, d, g, s) } else r(b) }; s.lk = function(a, b, f, g, r) { r && (this.jk(a), a = d); var h = "", s, y, l, q = 0; console.log(a,b,f,g,r); //updateShare(play68Score); //Play68.setRankingScoreDesc(play68Score); for (l = 0; l < a.length; l++) "\n" === a[l] ? (q >= b.length && b.push(k()), y = b[q], y.text = h, y.width = f.measureText(h).width, q++, h = "") : (s = h, h += a[l], y = f.measureText(h).width, y >= g && (q >= b.length && b.push(k()), y = b[q], y.text = s, y.width = f.measureText(s).width, q++, h = a[l], r || " " !== h || (h = ""))); h.length && (q >= b.length && b.push(k()), y = b[q], y.text = h, y.width = f.measureText(h).width, q++); for (l = q; l < b.length; l++) u.push(b[l]); b.length = q }; s.k = new function() {}; a.prototype.ik = function(a) { ia(a) && 1E9 > a && (a = Math.round(1E10 * a) / 1E10); a = a.toString(); this.text !== a && (this.text = a, this.ic = !0, this.b.aa = !0) }; s.F = new a; b.prototype.Text = function(a) { a.Pa(this.text) }; s.xa = new b })(); function Z(k) { this.b = k } (function() { function k(a) { n = a.x; f = a.y; p = a.z } function r(a) { x = a.x; h = a.y; w = a.z } function a(a, c, d, f) { var g; g = y.length ? y.pop() : new b; g.init(a, c, d, f); return g } function b() { this.Nh = this.id = this.hf = this.gf = this.y = this.x = this.Oj = this.Nj = this.wl = this.time = this.tm = 0; this.Th = this.Xj = !1 } function s() {} function g() {} var d = Z.prototype; d.Fa = function(a) { this.qa = a; this.b = a.b }; d.Fa.prototype.W = function() {}; d.wa = function(a) { this.type = a; this.b = a.b; this.touches = []; this.Hl = !1 }; var u = d.wa.prototype, t = { left: 0, top: 0 }; u.Kg = function(a) { var b, c; b = 0; for (c = this.touches.length; b < c; b++) if (this.touches[b].id === a) return b; return -1 }; var n = 0, f = 0, p = 0, x = 0, h = 0, w = 0, y = []; b.prototype.init = function(a, b, c, d) { var f = Ya(); this.tm = this.wl = this.time = f; this.Nj = a; this.Oj = b; this.x = a; this.y = b; this.gf = a; this.hf = b; this.id = c; this.Nh = d; this.Th = this.Xj = !1 }; b.prototype.update = function(a, b, c) { this.wl = this.time; this.time = a; this.gf = this.x; this.hf = this.y; this.x = b; this.y = c; !this.Th && 15 <= Ua(this.Nj, this.Oj, this.x, this.y) && (this.Th = !0) }; b.prototype.St = function(a, b) { !this.Xj && 500 <= Ya() - this.tm && !this.Th && 15 > Ua(this.Nj, this.Oj, this.x, this.y) && (this.Xj = !0, a.yd = this.Nh, a.qg = this.id, a.Lf = b, a.b.trigger(Z.prototype.k.Gq, a), a.Jd = this.x, a.Kd = this.y, a.b.trigger(Z.prototype.k.Hq, a), a.Lf = 0) }; var l = -1E3, q = -1E3, A = -1E4; b.prototype.Io = function(a, b) { if (!this.Xj) { var c = Ya(); 333 >= c - this.tm && !this.Th && 15 > Ua(this.Nj, this.Oj, this.x, this.y) && (a.yd = this.Nh, a.qg = this.id, a.Lf = b, 666 >= c - A && 25 > Ua(l, q, this.x, this.y) ? (a.b.trigger(Z.prototype.k.Eq, a), a.Jd = this.x, a.Kd = this.y, a.b.trigger(Z.prototype.k.Fq, a), q = l = -1E3, A = -1E4) : (a.b.trigger(Z.prototype.k.Tq, a), a.Jd = this.x, a.Kd = this.y, a.b.trigger(Z.prototype.k.Uq, a), l = this.x, q = this.y, A = c), a.Lf = 0) } }; u.W = function() { this.Jt = !("undefined" === typeof window.c2isWindows8 || !window.c2isWindows8); this.Lf = this.qg = this.yd = this.Kd = this.Jd = this.bn = this.an = this.$m = this.ur = this.tr = this.sr = this.yh = this.xh = this.wh = 0; this.Zu = 0 !== this.C[0]; var a = 0 < this.b.Xb ? document : this.b.canvas, b = document; this.b.tb ? b = a = window.Canvas : this.b.rc && (b = a = window); var c = this; window.navigator.pointerEnabled ? (a.addEventListener("pointerdown", function(a) { c.Xo(a) }, !1), a.addEventListener("pointermove", function(a) { c.Wo(a) }, !1), b.addEventListener("pointerup", function(a) { c.nj(a, !1) }, !1), b.addEventListener("pointercancel", function(a) { c.nj(a, !0) }, !1), this.b.canvas && (this.b.canvas.addEventListener("MSGestureHold", function(a) { a.preventDefault() }, !1), document.addEventListener("MSGestureHold", function(a) { a.preventDefault() }, !1), this.b.canvas.addEventListener("gesturehold", function(a) { a.preventDefault() }, !1), document.addEventListener("gesturehold", function(a) { a.preventDefault() }, !1))) : window.navigator.msPointerEnabled ? (a.addEventListener("MSPointerDown", function(a) { c.Xo(a) }, !1), a.addEventListener("MSPointerMove", function(a) { c.Wo(a) }, !1), b.addEventListener("MSPointerUp", function(a) { c.nj(a, !1) }, !1), b.addEventListener("MSPointerCancel", function(a) { c.nj(a, !0) }, !1), this.b.canvas && (this.b.canvas.addEventListener("MSGestureHold", function(a) { a.preventDefault() }, !1), document.addEventListener("MSGestureHold", function(a) { a.preventDefault() }, !1))) : (a.addEventListener("touchstart", function(a) { c.Zo(a) }, !1), a.addEventListener("touchmove", function(a) { c.Yo(a) }, !1), b.addEventListener("touchend", function(a) { c.Rl(a, !1) }, !1), b.addEventListener("touchcancel", function(a) { c.Rl(a, !0) }, !1)); if (this.Jt) { var d = function(a) { a = a.reading; c.$m = a.accelerationX; c.an = a.accelerationY; c.bn = a.accelerationZ }, f = function(a) { a = a.reading; c.wh = a.yawDegrees; c.xh = a.pitchDegrees; c.yh = a.rollDegrees }, g = Windows.Devices.Sensors.Accelerometer.getDefault(); g && (g.reportInterval = Math.max(g.minimumReportInterval, 16), g.addEventListener("readingchanged", d)); var h = Windows.Devices.Sensors.Inclinometer.getDefault(); h && (h.reportInterval = Math.max(h.minimumReportInterval, 16), h.addEventListener("readingchanged", f)); document.addEventListener("visibilitychange", function() { document.hidden || document.msHidden ? (g && g.removeEventListener("readingchanged", d), h && h.removeEventListener("readingchanged", f)) : (g && g.addEventListener("readingchanged", d), h && h.addEventListener("readingchanged", f)) }, !1) } else window.addEventListener("deviceorientation", function(a) { c.wh = a.alpha || 0; c.xh = a.beta || 0; c.yh = a.gamma || 0 }, !1), window.addEventListener("devicemotion", function(a) { a.accelerationIncludingGravity && (c.sr = a.accelerationIncludingGravity.x || 0, c.tr = a.accelerationIncludingGravity.y || 0, c.ur = a.accelerationIncludingGravity.z || 0); a.acceleration && (c.$m = a.acceleration.x || 0, c.an = a.acceleration.y || 0, c.bn = a.acceleration.z || 0) }, !1); this.Zu && !this.b.ya && (jQuery(document).mousemove(function(a) { c.au(a) }), jQuery(document).mousedown(function(a) { c.$t(a) }), jQuery(document).mouseup(function(a) { c.bu(a) })); this.b.Nf && !this.b.tb && AppMobi.accelerometer.watchAcceleration(k, { frequency: 40, adjustForRotation: !0 }); this.b.sc && navigator.accelerometer && navigator.accelerometer.watchAcceleration && navigator.accelerometer.watchAcceleration(r, null, { frequency: 40 }); this.b.Qu(this) }; u.Wo = function(a) { if (a.pointerType !== a.MSPOINTER_TYPE_MOUSE && "mouse" !== a.pointerType) { a.preventDefault && a.preventDefault(); var b = this.Kg(a.pointerId), c = Ya(); if (0 <= b) { var d = this.b.ya ? t : jQuery(this.b.canvas).offset(), b = this.touches[b]; 2 > c - b.time || b.update(c, a.pageX - d.left, a.pageY - d.top) } } }; u.Xo = function(b) { if (b.pointerType !== b.MSPOINTER_TYPE_MOUSE && "mouse" !== b.pointerType) { b.preventDefault && kb(b) && b.preventDefault(); var c = this.b.ya ? t : jQuery(this.b.canvas).offset(), d = b.pageX - c.left, c = b.pageY - c.top; Ya(); this.yd = this.touches.length; this.qg = b.pointerId; this.touches.push(a(d, c, b.pointerId, this.yd)); this.b.Zb = !0; this.b.trigger(Z.prototype.k.Um, this); this.b.trigger(Z.prototype.k.Wm, this); this.Jd = d; this.Kd = c; this.b.trigger(Z.prototype.k.hk, this); this.b.Zb = !1 } }; u.nj = function(a, b) { if (a.pointerType !== a.MSPOINTER_TYPE_MOUSE && "mouse" !== a.pointerType) { a.preventDefault && kb(a) && a.preventDefault(); var c = this.Kg(a.pointerId); this.yd = 0 <= c ? this.touches[c].Nh : -1; this.qg = 0 <= c ? this.touches[c].id : -1; this.b.Zb = !0; this.b.trigger(Z.prototype.k.Tm, this); this.b.trigger(Z.prototype.k.Vm, this); 0 <= c && (b || this.touches[c].Io(this, c), 100 > y.length && y.push(this.touches[c]), this.touches.splice(c, 1)); this.b.Zb = !1 } }; u.Yo = function(a) { a.preventDefault && a.preventDefault(); var b = Ya(), c, d, f, g; c = 0; for (d = a.changedTouches.length; c < d; c++) if (f = a.changedTouches[c], g = this.Kg(f.identifier), 0 <= g) { var h = this.b.ya ? t : jQuery(this.b.canvas).offset(); g = this.touches[g]; 2 > b - g.time || g.update(b, f.pageX - h.left, f.pageY - h.top) } }; u.Zo = function(b) { b.preventDefault && kb(b) && b.preventDefault(); var c = this.b.ya ? t : jQuery(this.b.canvas).offset(); Ya(); this.b.Zb = !0; var d, f, g, h; d = 0; for (f = b.changedTouches.length; d < f; d++) if (g = b.changedTouches[d], h = this.Kg(g.identifier), -1 === h) { h = g.pageX - c.left; var k = g.pageY - c.top; this.yd = this.touches.length; this.qg = g.identifier; this.touches.push(a(h, k, g.identifier, this.yd)); this.b.trigger(Z.prototype.k.Um, this); this.b.trigger(Z.prototype.k.Wm, this); this.Jd = h; this.Kd = k; this.b.trigger(Z.prototype.k.hk, this) } this.b.Zb = !1 }; u.Rl = function(a, b) { a.preventDefault && kb(a) && a.preventDefault(); this.b.Zb = !0; var c, d, f; c = 0; for (d = a.changedTouches.length; c < d; c++) f = a.changedTouches[c], f = this.Kg(f.identifier), 0 <= f && (this.yd = this.touches[f].Nh, this.qg = this.touches[f].id, this.b.trigger(Z.prototype.k.Tm, this), this.b.trigger(Z.prototype.k.Vm, this), b || this.touches[f].Io(this, f), 100 > y.length && y.push(this.touches[f]), this.touches.splice(f, 1)); this.b.Zb = !1 }; u.hw = function() { return this.b.Nf && 0 === this.wh && 0 !== p ? 90 * p : this.b.sc && 0 === this.wh && 0 !== w ? 90 * w : this.wh }; u.iw = function() { return this.b.Nf && 0 === this.xh && 0 !== f ? -90 * f : this.b.sc && 0 === this.xh && 0 !== h ? 90 * h : this.xh }; u.lw = function() { return this.b.Nf && 0 === this.yh && 0 !== n ? 90 * n : this.b.sc && 0 === this.yh && 0 !== x ? 90 * x : this.yh }; u.$t = function(a) { a.preventDefault && this.b.dl && !this.b.ld && a.preventDefault(); this.Zo({ changedTouches: [{ pageX: a.pageX, pageY: a.pageY, identifier: 0 }] }); this.Hl = !0 }; u.au = function(a) { this.Hl && this.Yo({ changedTouches: [{ pageX: a.pageX, pageY: a.pageY, identifier: 0 }] }) }; u.bu = function(a) { a.preventDefault && this.b.dl && !this.b.ld && a.preventDefault(); this.b.dl = !0; this.Rl({ changedTouches: [{ pageX: a.pageX, pageY: a.pageY, identifier: 0 }] }); this.Hl = !1 }; u.Rh = function() { var a, b, c, d = Ya(); a = 0; for (b = this.touches.length; a < b; ++a) c = this.touches[a], c.time <= d - 50 && (c.wl = d), c.St(this, a) }; s.prototype.Wm = function() { return !0 }; s.prototype.Vm = function() { return !0 }; s.prototype.hk = function(a) { return a ? this.b.Qj(a, this.Jd, this.Kd) : !1 }; var c = []; s.prototype.sq = function(a) { if (!a) return !1; var b = a.Y(), d = b.pc(), f, g, h, k, l, n; h = 0; for (k = d.length; h < k; h++) { var p = d[h]; p.na(); l = 0; for (n = this.touches.length; l < n; l++) if (g = this.touches[l], f = p.i.Eb(g.x, g.y, !0), g = p.i.Eb(g.x, g.y, !1), p.yb(f, g)) { c.push(p); break } } return c.length ? (b.fa = !1, Aa(b.d, c), a.wc(), c.length = 0, !0) : !1 }; s.prototype.Um = function(a) { a = Math.floor(a); return a === this.yd }; s.prototype.Tm = function(a) { a = Math.floor(a); return a === this.yd }; s.prototype.Gq = function() { return !0 }; s.prototype.Tq = function() { return !0 }; s.prototype.Eq = function() { return !0 }; s.prototype.Hq = function(a) { return a ? this.b.Qj(a, this.Jd, this.Kd) : !1 }; s.prototype.Uq = function(a) { return a ? this.b.Qj(a, this.Jd, this.Kd) : !1 }; s.prototype.Fq = function(a) { return a ? this.b.Qj(a, this.Jd, this.Kd) : !1 }; d.k = new s; g.prototype.pr = function(a, b) { var c = this.Lf; if (0 > c || c >= this.touches.length) a.D(0); else { var d, f, g, h, k; ea(b) ? (d = this.b.Mg(0), f = d.scale, g = d.cd, h = d.Ic, k = d.j, d.scale = 1, d.cd = 1, d.Ic = 1, d.j = 0, a.D(d.Eb(this.touches[c].x, this.touches[c].y, !0)), d.scale = f, d.cd = g, d.Ic = h, d.j = k) : (d = ia(b) ? this.b.Mg(b) : this.b.Yk(b)) ? a.D(d.Eb(this.touches[c].x, this.touches[c].y, !0)) : a.D(0) } }; g.prototype.qr = function(a, b) { var c = this.Lf; if (0 > c || c >= this.touches.length) a.D(0); else { var d, f, g, h, k; ea(b) ? (d = this.b.Mg(0), f = d.scale, g = d.cd, h = d.Jc, k = d.j, d.scale = 1, d.cd = 1, d.Jc = 1, d.j = 0, a.D(d.Eb(this.touches[c].x, this.touches[c].y, !1)), d.scale = f, d.cd = g, d.Jc = h, d.j = k) : (d = ia(b) ? this.b.Mg(b) : this.b.Yk(b)) ? a.D(d.Eb(this.touches[c].x, this.touches[c].y, !1)) : a.D(0) } }; d.xa = new g })(); function pc(k) { this.b = k } (function() { function k() {} function r() {} function a() {} var b = pc.prototype; b.Fa = function(a) { this.qa = a; this.b = a.b }; b.Fa.prototype.W = function() {}; b.wa = function(a) { this.type = a; this.b = a.b }; var s = b.wa.prototype, g = "", d = "undefined" !== typeof window.is_scirra_arcade; d && (g = "arcade" + window.scirra_arcade_id); s.W = function() { "undefined" === typeof localStorage && J("[Construct 2] Webstorage plugin: local storage is not supported on this platform."); "undefined" === typeof sessionStorage && J("[Construct 2] Webstorage plugin: session storage is not supported on this platform.") }; k.prototype.vq = function(a) { return "undefined" === typeof localStorage ? !1 : null != localStorage.getItem(g + a) }; k.prototype.Qq = function() { return !0 }; b.k = new k; r.prototype.nr = function(a, b) { if ("undefined" !== typeof localStorage) try { localStorage.setItem(g + a, b); if(g + a == 'HighScore'){ play68Score = b ; }; } catch (d) { this.b.trigger(pc.prototype.k.Qq, this) } }; b.F = new r; a.prototype.wq = function(a, b) { "undefined" === typeof localStorage ? a.Pa("") : a.Pa(localStorage.getItem(g + b) || "") }; a.prototype.Mm = function(a) { if ("undefined" === typeof localStorage) a.Pa(""); else { var b = {}, k, f, p; k = 0; for (f = localStorage.length; k < f; k++) p = localStorage.key(k), d ? p.substr(0, g.length) === g && (b[p.substr(g.length)] = localStorage.getItem(p)) : b[p] = localStorage.getItem(p); a.Pa(JSON.stringify({ c2dictionary: !0, data: b })) } }; b.xa = new a })(); function qc(k) { this.b = k } (function() { function k() {} var r = qc.prototype; r.Fa = function(a) { this.behavior = a; this.b = a.b }; r.Fa.prototype.W = function() {}; r.wa = function(a, k) { this.type = a; this.behavior = a.behavior; this.q = k; this.b = a.b }; var a = r.wa.prototype; a.W = function() { var a = this.C[0]; this.Yh = this.C[1]; this.Lg = this.C[2]; this.Er = 0 !== this.C[3]; this.nm = 0 !== this.C[4]; this.Fb = Math.cos(this.q.j) * a; this.rb = Math.sin(this.q.j) * a; this.gf = this.q.x; this.hf = this.q.y; this.uc = this.q.j; this.Wj = 0; this.enabled = 0 !== this.C[5] }; a.Bb = function() { return { acc: this.Yh, g: this.Lg, dx: this.Fb, dy: this.rb, lx: this.gf, ly: this.hf, lka: this.uc, t: this.Wj, e: this.enabled } }; a.Ob = function(a) { this.Yh = a.acc; this.Lg = a.g; this.Fb = a.dx; this.rb = a.dy; this.gf = a.lx; this.hf = a.ly; this.uc = a.lka; this.Wj = a.t; this.enabled = a.e }; a.qb = function() { if (this.enabled) { var a = this.b.Uk(this.q), k, g; this.q.j !== this.uc && (this.nm && (k = Ua(0, 0, this.Fb, this.rb), this.Fb = Math.cos(this.q.j) * k, this.rb = Math.sin(this.q.j) * k), this.uc = this.q.j); 0 !== this.Yh && (k = Ua(0, 0, this.Fb, this.rb), g = 0 === this.Fb && 0 === this.rb ? this.q.j : La(0, 0, this.Fb, this.rb), k += this.Yh * a, 0 > k && (k = 0), this.Fb = Math.cos(g) * k, this.rb = Math.sin(g) * k); 0 !== this.Lg && (this.rb += this.Lg * a); this.gf = this.q.x; this.hf = this.q.y; if (0 !== this.Fb || 0 !== this.rb) if (this.q.x += this.Fb * a, this.q.y += this.rb * a, this.Wj += Ua(0, 0, this.Fb * a, this.rb * a), this.nm && (this.q.j = La(0, 0, this.Fb, this.rb), this.q.T(), this.uc = this.q.j), this.q.T(), this.Er && (k = this.b.uf(this.q))) this.b.uu(this.q, k), k = Ua(0, 0, this.Fb, this.rb), g = this.b.Hr(this.q, this.gf, this.hf), this.Fb = Math.cos(g) * k, this.rb = Math.sin(g) * k, this.q.x += this.Fb * a, this.q.y += this.rb * a, this.q.T(), this.nm && (this.uc = this.q.j = g, this.q.T()), this.b.ru(this.q, this.Fb / k, this.rb / k, Math.max(2.5 * k * a, 30)) || this.b.su(this.q) } }; r.k = new function() {}; k.prototype.br = function(a) { this.Lg = a }; r.F = new k; r.xa = new function() {} })(); function rc(k) { this.b = k } (function() { function k() {} var r = rc.prototype; r.Fa = function(a) { this.behavior = a; this.b = a.b }; r.Fa.prototype.W = function() {}; r.wa = function(a, k) { this.type = a; this.behavior = a.behavior; this.q = k; this.b = a.b }; var a = r.wa.prototype; a.W = function() { this.ob = null; this.pj = -1; this.mode = this.uc = this.Rj = this.bg = this.Td = this.Bh = 0; var a = this; this.ec || (this.No = function(k) { a.Ol(k) }); this.b.mk(this.No) }; a.Bb = function() { return { uid: this.ob ? this.ob.uid : -1, pa: this.Bh, pd: this.Td, msa: this.bg, tsa: this.Rj, lka: this.uc, m: this.mode } }; a.Ob = function(a) { this.pj = a.uid; this.Bh = a.pa; this.Td = a.pd; this.bg = a.msa; this.Rj = a.tsa; this.uc = a.lka; this.mode = a.m }; a.Cd = function() { this.ob = -1 === this.pj ? null : this.b.Ng(this.pj); this.pj = -1 }; a.Ol = function(a) { this.ob == a && (this.ob = null) }; a.fg = function() { this.ob = null; this.b.vu(this.No) }; a.qb = function() {}; a.Rh = function() { if (this.ob) { this.uc !== this.q.j && (this.bg = Ia(this.bg + (this.q.j - this.uc))); var a = this.q.x, k = this.q.y; if (3 === this.mode || 4 === this.mode) { var g = Ua(this.q.x, this.q.y, this.ob.x, this.ob.y); if (g > this.Td || 4 === this.mode && g < this.Td) k = La(this.ob.x, this.ob.y, this.q.x, this.q.y), a = this.ob.x + Math.cos(k) * this.Td, k = this.ob.y + Math.sin(k) * this.Td } else a = this.ob.x + Math.cos(this.ob.j + this.Bh) * this.Td, k = this.ob.y + Math.sin(this.ob.j + this.Bh) * this.Td; this.uc = g = Ia(this.bg + (this.ob.j - this.Rj)); 0 !== this.mode && 1 !== this.mode && 3 !== this.mode && 4 !== this.mode || this.q.x === a && this.q.y === k || (this.q.x = a, this.q.y = k, this.q.T()); 0 !== this.mode && 2 !== this.mode || this.q.j === g || (this.q.j = g, this.q.T()) } }; r.k = new function() {}; k.prototype.Vq = function(a, k) { if (a) { var g = a.Nn(this.q); g && (this.ob = g, this.Bh = La(g.x, g.y, this.q.x, this.q.y) - g.j, this.Td = Ua(g.x, g.y, this.q.x, this.q.y), this.uc = this.bg = this.q.j, this.Rj = g.j, this.mode = k) } }; r.F = new k; r.xa = new function() {} })(); function sc(k) { this.b = k; this.Jj = this.Mh = this.rf = this.Ij = 0 } (function() { function k() {} var r = sc.prototype; r.Fa = function(a) { this.behavior = a; this.b = a.b }; r.Fa.prototype.W = function() {}; r.wa = function(a, k) { this.type = a; this.behavior = a.behavior; this.q = k; this.b = a.b }; var a = r.wa.prototype; a.W = function() { this.enabled = 0 !== this.C[0] }; a.Bb = function() { return { smg: this.behavior.Ij, ss: this.behavior.rf, se: this.behavior.Mh, smd: this.behavior.Jj } }; a.Ob = function(a) { this.behavior.Ij = a.smg; this.behavior.rf = a.ss; this.behavior.Mh = a.se; this.behavior.Jj = a.smd }; a.qb = function() {}; a.Rh = function() { if (this.enabled) { var a = this.behavior.jj.be(), k = 0, g = 0, d, r, t, n = 0; d = 0; for (r = a.length; d < r; d++) { a: { t = a[d]; for (var f = void 0, p = void 0, x = void 0, f = 0, p = t.L.length; f < p; ++f) if (x = t.L[f], x.behavior instanceof sc) { t = x; break a } t = null } t && t.enabled && (k += a[d].x, g += a[d].y, ++n) } a = this.q.i.bb; r = this.b.Gb.X; t = d = 0; r >= this.behavior.rf && r < this.behavior.Mh && (d = this.behavior.Ij * Math.min(this.b.vf, 1), 0 === this.behavior.Jj && (d *= 1 - (r - this.behavior.rf) / (this.behavior.Mh - this.behavior.rf)), r = Math.random() * Math.PI * 2, t = Math.random() * d, d = Math.cos(r) * t, t *= Math.sin(r)); a.lm(k / n + d); a.mm(g / n + t) } }; k.prototype.jr = function(a, k, g) { this.behavior.Ij = a; this.behavior.rf = this.b.Gb.X; this.behavior.Mh = this.behavior.rf + k; this.behavior.Jj = g }; r.F = new k })(); function jc() { return [kc, lc, mc, Y, nc, oc, Z, pc, sc, rc, qc, X.prototype.k.qq, X.prototype.k.Qm, X.prototype.F.dr, Y.prototype.F.jq, rc.prototype.F.Vq, Y.prototype.F.mr, Y.prototype.F.gr, X.prototype.k.gq, X.prototype.F.or, kc.prototype.F.Wq, pc.prototype.k.vq, X.prototype.F.hr, X.prototype.xa["int"], pc.prototype.xa.wq, nc.prototype.F.ik, X.prototype.k.mq, pc.prototype.F.nr, Y.prototype.F.$q, kc.prototype.F.fr, X.prototype.k.lq, Y.prototype.F.Xq, Y.prototype.F.Zm, Y.prototype.F.lr, Y.prototype.k.Nm, Z.prototype.k.hk, X.prototype.F.cr, Y.prototype.F.Ym, Y.prototype.F.Yq, nc.prototype.F.Zm, mc.prototype.k.Om, Z.prototype.k.sq, mc.prototype.k.rq, mc.prototype.k.Pm, qc.prototype.F.br, X.prototype.F.iq, X.prototype.xa.tn, Y.prototype.k.Cq, X.prototype.F.bq, Y.prototype.F.er, Y.prototype.F.Zq, Y.prototype.k.hq, X.prototype.xa.min, X.prototype.xa.round, X.prototype.xa.sqrt, X.prototype.xa.max, oc.prototype.F.ik, sc.prototype.F.jr, lc.prototype.F.oq, X.prototype.F.nq, X.prototype.xa.Pu, X.prototype.xa.random ] };