<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">! function(t) {
    if ("object" == typeof exports &amp;&amp; "undefined" != typeof module) module.exports = t();
    else if ("function" == typeof define &amp;&amp; define.amd) define([], t);
    else {
        ("undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : this).PIXI = t()
    }
}(function() {
    return function() {
        function t(e, r, n) {
            function i(s, a) {
                if (!r[s]) {
                    if (!e[s]) {
                        var u = "function" == typeof require &amp;&amp; require;
                        if (!a &amp;&amp; u) return u(s, !0);
                        if (o) return o(s, !0);
                        var h = new Error("Cannot find module '" + s + "'");
                        throw h.code = "MODULE_NOT_FOUND", h
                    }
                    var l = r[s] = {
                        exports: {}
                    };
                    e[s][0].call(l.exports, function(t) {
                        var r = e[s][1][t];
                        return i(r || t)
                    }, l, l.exports, t, e, r, n)
                }
                return r[s].exports
            }
            for (var o = "function" == typeof require &amp;&amp; require, s = 0; s &lt; n.length; s++) i(n[s]);
            return i
        }
        return t
    }()({
        1: [function(t, e, r) {
            "use strict";
            "use restrict";

            function n(t) {
                var e = 32;
                return (t &amp;= -t) &amp;&amp; e--, 65535 &amp; t &amp;&amp; (e -= 16), 16711935 &amp; t &amp;&amp; (e -= 8), 252645135 &amp; t &amp;&amp; (e -= 4), 858993459 &amp; t &amp;&amp; (e -= 2), 1431655765 &amp; t &amp;&amp; (e -= 1), e
            }
            r.INT_BITS = 32, r.INT_MAX = 2147483647, r.INT_MIN = -1 &lt;&lt; 31, r.sign = function(t) {
                return (t &gt; 0) - (t &lt; 0)
            }, r.abs = function(t) {
                var e = t &gt;&gt; 31;
                return (t ^ e) - e
            }, r.min = function(t, e) {
                return e ^ (t ^ e) &amp; -(t &lt; e)
            }, r.max = function(t, e) {
                return t ^ (t ^ e) &amp; -(t &lt; e)
            }, r.isPow2 = function(t) {
                return !(t &amp; t - 1 || !t)
            }, r.log2 = function(t) {
                var e, r;
                return e = (t &gt; 65535) &lt;&lt; 4, t &gt;&gt;&gt;= e, r = (t &gt; 255) &lt;&lt; 3, t &gt;&gt;&gt;= r, e |= r, r = (t &gt; 15) &lt;&lt; 2, t &gt;&gt;&gt;= r, e |= r, r = (t &gt; 3) &lt;&lt; 1, t &gt;&gt;&gt;= r, (e |= r) | t &gt;&gt; 1
            }, r.log10 = function(t) {
                return t &gt;= 1e9 ? 9 : t &gt;= 1e8 ? 8 : t &gt;= 1e7 ? 7 : t &gt;= 1e6 ? 6 : t &gt;= 1e5 ? 5 : t &gt;= 1e4 ? 4 : t &gt;= 1e3 ? 3 : t &gt;= 100 ? 2 : t &gt;= 10 ? 1 : 0
            }, r.popCount = function(t) {
                return t -= t &gt;&gt;&gt; 1 &amp; 1431655765, 16843009 * ((t = (858993459 &amp; t) + (t &gt;&gt;&gt; 2 &amp; 858993459)) + (t &gt;&gt;&gt; 4) &amp; 252645135) &gt;&gt;&gt; 24
            }, r.countTrailingZeros = n, r.nextPow2 = function(t) {
                return t += 0 === t, --t, t |= t &gt;&gt;&gt; 1, t |= t &gt;&gt;&gt; 2, t |= t &gt;&gt;&gt; 4, t |= t &gt;&gt;&gt; 8, (t |= t &gt;&gt;&gt; 16) + 1
            }, r.prevPow2 = function(t) {
                return t |= t &gt;&gt;&gt; 1, t |= t &gt;&gt;&gt; 2, t |= t &gt;&gt;&gt; 4, t |= t &gt;&gt;&gt; 8, (t |= t &gt;&gt;&gt; 16) - (t &gt;&gt;&gt; 1)
            }, r.parity = function(t) {
                return t ^= t &gt;&gt;&gt; 16, t ^= t &gt;&gt;&gt; 8, t ^= t &gt;&gt;&gt; 4, 27030 &gt;&gt;&gt; (t &amp;= 15) &amp; 1
            };
            var i = new Array(256);
            ! function(t) {
                for (var e = 0; e &lt; 256; ++e) {
                    var r = e,
                        n = e,
                        i = 7;
                    for (r &gt;&gt;&gt;= 1; r; r &gt;&gt;&gt;= 1) n &lt;&lt;= 1, n |= 1 &amp; r, --i;
                    t[e] = n &lt;&lt; i &amp; 255
                }
            }(i), r.reverse = function(t) {
                return i[255 &amp; t] &lt;&lt; 24 | i[t &gt;&gt;&gt; 8 &amp; 255] &lt;&lt; 16 | i[t &gt;&gt;&gt; 16 &amp; 255] &lt;&lt; 8 | i[t &gt;&gt;&gt; 24 &amp; 255]
            }, r.interleave2 = function(t, e) {
                return t &amp;= 65535, t = 16711935 &amp; (t | t &lt;&lt; 8), t = 252645135 &amp; (t | t &lt;&lt; 4), t = 858993459 &amp; (t | t &lt;&lt; 2), t = 1431655765 &amp; (t | t &lt;&lt; 1), e &amp;= 65535, e = 16711935 &amp; (e | e &lt;&lt; 8), e = 252645135 &amp; (e | e &lt;&lt; 4), e = 858993459 &amp; (e | e &lt;&lt; 2), e = 1431655765 &amp; (e | e &lt;&lt; 1), t | e &lt;&lt; 1
            }, r.deinterleave2 = function(t, e) {
                return t = t &gt;&gt;&gt; e &amp; 1431655765, t = 858993459 &amp; (t | t &gt;&gt;&gt; 1), t = 252645135 &amp; (t | t &gt;&gt;&gt; 2), t = 16711935 &amp; (t | t &gt;&gt;&gt; 4), (t = 65535 &amp; (t | t &gt;&gt;&gt; 16)) &lt;&lt; 16 &gt;&gt; 16
            }, r.interleave3 = function(t, e, r) {
                return t &amp;= 1023, t = 4278190335 &amp; (t | t &lt;&lt; 16), t = 251719695 &amp; (t | t &lt;&lt; 8), t = 3272356035 &amp; (t | t &lt;&lt; 4), t = 1227133513 &amp; (t | t &lt;&lt; 2), e &amp;= 1023, e = 4278190335 &amp; (e | e &lt;&lt; 16), e = 251719695 &amp; (e | e &lt;&lt; 8), e = 3272356035 &amp; (e | e &lt;&lt; 4), e = 1227133513 &amp; (e | e &lt;&lt; 2), t |= e &lt;&lt; 1, r &amp;= 1023, r = 4278190335 &amp; (r | r &lt;&lt; 16), r = 251719695 &amp; (r | r &lt;&lt; 8), r = 3272356035 &amp; (r | r &lt;&lt; 4), r = 1227133513 &amp; (r | r &lt;&lt; 2), t | r &lt;&lt; 2
            }, r.deinterleave3 = function(t, e) {
                return t = t &gt;&gt;&gt; e &amp; 1227133513, t = 3272356035 &amp; (t | t &gt;&gt;&gt; 2), t = 251719695 &amp; (t | t &gt;&gt;&gt; 4), t = 4278190335 &amp; (t | t &gt;&gt;&gt; 8), (t = 1023 &amp; (t | t &gt;&gt;&gt; 16)) &lt;&lt; 22 &gt;&gt; 22
            }, r.nextCombination = function(t) {
                var e = t | t - 1;
                return e + 1 | (~e &amp; -~e) - 1 &gt;&gt;&gt; n(t) + 1
            }
        }, {}],
        2: [function(t, e, r) {
            "use strict";

            function n(t, e, r) {
                r = r || 2;
                var n = e &amp;&amp; e.length,
                    o = n ? e[0] * r : t.length,
                    a = i(t, 0, o, r, !0),
                    u = [];
                if (!a) return u;
                var h, l, d, f, p, v, g;
                if (n &amp;&amp; (a = c(t, e, a, r)), t.length &gt; 80 * r) {
                    h = d = t[0], l = f = t[1];
                    for (var y = r; y &lt; o; y += r) p = t[y], v = t[y + 1], p &lt; h &amp;&amp; (h = p), v &lt; l &amp;&amp; (l = v), p &gt; d &amp;&amp; (d = p), v &gt; f &amp;&amp; (f = v);
                    g = 0 !== (g = Math.max(d - h, f - l)) ? 1 / g : 0
                }
                return s(a, u, r, h, l, g), u
            }

            function i(t, e, r, n, i) {
                var o, s;
                if (i === A(t, e, r, n) &gt; 0)
                    for (o = e; o &lt; r; o += n) s = P(o, t[o], t[o + 1], s);
                else
                    for (o = r - n; o &gt;= e; o -= n) s = P(o, t[o], t[o + 1], s);
                return s &amp;&amp; T(s, s.next) &amp;&amp; (C(s), s = s.next), s
            }

            function o(t, e) {
                if (!t) return t;
                e || (e = t);
                var r, n = t;
                do {
                    if (r = !1, n.steiner || !T(n, n.next) &amp;&amp; 0 !== x(n.prev, n, n.next)) n = n.next;
                    else {
                        if (C(n), (n = e = n.prev) === n.next) break;
                        r = !0
                    }
                } while (r || n !== e);
                return e
            }

            function s(t, e, r, n, i, c, d) {
                if (t) {
                    !d &amp;&amp; c &amp;&amp; v(t, n, i, c);
                    for (var f, p, g = t; t.prev !== t.next;)
                        if (f = t.prev, p = t.next, c ? u(t, n, i, c) : a(t)) e.push(f.i / r), e.push(t.i / r), e.push(p.i / r), C(t), t = p.next, g = p.next;
                        else if ((t = p) === g) {
                        d ? 1 === d ? s(t = h(t, e, r), e, r, n, i, c, 2) : 2 === d &amp;&amp; l(t, e, r, n, i, c) : s(o(t), e, r, n, i, c, 1);
                        break
                    }
                }
            }

            function a(t) {
                var e = t.prev,
                    r = t,
                    n = t.next;
                if (x(e, r, n) &gt;= 0) return !1;
                for (var i = t.next.next; i !== t.prev;) {
                    if (_(e.x, e.y, r.x, r.y, n.x, n.y, i.x, i.y) &amp;&amp; x(i.prev, i, i.next) &gt;= 0) return !1;
                    i = i.next
                }
                return !0
            }

            function u(t, e, r, n) {
                var i = t.prev,
                    o = t,
                    s = t.next;
                if (x(i, o, s) &gt;= 0) return !1;
                for (var a = i.x &lt; o.x ? i.x &lt; s.x ? i.x : s.x : o.x &lt; s.x ? o.x : s.x, u = i.y &lt; o.y ? i.y &lt; s.y ? i.y : s.y : o.y &lt; s.y ? o.y : s.y, h = i.x &gt; o.x ? i.x &gt; s.x ? i.x : s.x : o.x &gt; s.x ? o.x : s.x, l = i.y &gt; o.y ? i.y &gt; s.y ? i.y : s.y : o.y &gt; s.y ? o.y : s.y, c = y(a, u, e, r, n), d = y(h, l, e, r, n), f = t.prevZ, p = t.nextZ; f &amp;&amp; f.z &gt;= c &amp;&amp; p &amp;&amp; p.z &lt;= d;) {
                    if (f !== t.prev &amp;&amp; f !== t.next &amp;&amp; _(i.x, i.y, o.x, o.y, s.x, s.y, f.x, f.y) &amp;&amp; x(f.prev, f, f.next) &gt;= 0) return !1;
                    if (f = f.prevZ, p !== t.prev &amp;&amp; p !== t.next &amp;&amp; _(i.x, i.y, o.x, o.y, s.x, s.y, p.x, p.y) &amp;&amp; x(p.prev, p, p.next) &gt;= 0) return !1;
                    p = p.nextZ
                }
                for (; f &amp;&amp; f.z &gt;= c;) {
                    if (f !== t.prev &amp;&amp; f !== t.next &amp;&amp; _(i.x, i.y, o.x, o.y, s.x, s.y, f.x, f.y) &amp;&amp; x(f.prev, f, f.next) &gt;= 0) return !1;
                    f = f.prevZ
                }
                for (; p &amp;&amp; p.z &lt;= d;) {
                    if (p !== t.prev &amp;&amp; p !== t.next &amp;&amp; _(i.x, i.y, o.x, o.y, s.x, s.y, p.x, p.y) &amp;&amp; x(p.prev, p, p.next) &gt;= 0) return !1;
                    p = p.nextZ
                }
                return !0
            }

            function h(t, e, r) {
                var n = t;
                do {
                    var i = n.prev,
                        o = n.next.next;
                    !T(i, o) &amp;&amp; w(i, n, n.next, o) &amp;&amp; S(i, o) &amp;&amp; S(o, i) &amp;&amp; (e.push(i.i / r), e.push(n.i / r), e.push(o.i / r), C(n), C(n.next), n = t = o), n = n.next
                } while (n !== t);
                return n
            }

            function l(t, e, r, n, i, a) {
                var u = t;
                do {
                    for (var h = u.next.next; h !== u.prev;) {
                        if (u.i !== h.i &amp;&amp; b(u, h)) {
                            var l = M(u, h);
                            return u = o(u, u.next), l = o(l, l.next), s(u, e, r, n, i, a), void s(l, e, r, n, i, a)
                        }
                        h = h.next
                    }
                    u = u.next
                } while (u !== t)
            }

            function c(t, e, r, n) {
                var s, a, u, h = [];
                for (s = 0, a = e.length; s &lt; a; s++)(u = i(t, e[s] * n, s &lt; a - 1 ? e[s + 1] * n : t.length, n, !1)) === u.next &amp;&amp; (u.steiner = !0), h.push(m(u));
                for (h.sort(d), s = 0; s &lt; h.length; s++) f(h[s], r), r = o(r, r.next);
                return r
            }

            function d(t, e) {
                return t.x - e.x
            }

            function f(t, e) {
                if (e = p(t, e)) {
                    var r = M(e, t);
                    o(r, r.next)
                }
            }

            function p(t, e) {
                var r, n = e,
                    i = t.x,
                    o = t.y,
                    s = -1 / 0;
                do {
                    if (o &lt;= n.y &amp;&amp; o &gt;= n.next.y &amp;&amp; n.next.y !== n.y) {
                        var a = n.x + (o - n.y) * (n.next.x - n.x) / (n.next.y - n.y);
                        if (a &lt;= i &amp;&amp; a &gt; s) {
                            if (s = a, a === i) {
                                if (o === n.y) return n;
                                if (o === n.next.y) return n.next
                            }
                            r = n.x &lt; n.next.x ? n : n.next
                        }
                    }
                    n = n.next
                } while (n !== e);
                if (!r) return null;
                if (i === s) return r.prev;
                var u, h = r,
                    l = r.x,
                    c = r.y,
                    d = 1 / 0;
                for (n = r.next; n !== h;) i &gt;= n.x &amp;&amp; n.x &gt;= l &amp;&amp; i !== n.x &amp;&amp; _(o &lt; c ? i : s, o, l, c, o &lt; c ? s : i, o, n.x, n.y) &amp;&amp; ((u = Math.abs(o - n.y) / (i - n.x)) &lt; d || u === d &amp;&amp; n.x &gt; r.x) &amp;&amp; S(n, t) &amp;&amp; (r = n, d = u), n = n.next;
                return r
            }

            function v(t, e, r, n) {
                var i = t;
                do {
                    null === i.z &amp;&amp; (i.z = y(i.x, i.y, e, r, n)), i.prevZ = i.prev, i.nextZ = i.next, i = i.next
                } while (i !== t);
                i.prevZ.nextZ = null, i.prevZ = null, g(i)
            }

            function g(t) {
                var e, r, n, i, o, s, a, u, h = 1;
                do {
                    for (r = t, t = null, o = null, s = 0; r;) {
                        for (s++, n = r, a = 0, e = 0; e &lt; h &amp;&amp; (a++, n = n.nextZ); e++);
                        for (u = h; a &gt; 0 || u &gt; 0 &amp;&amp; n;) 0 !== a &amp;&amp; (0 === u || !n || r.z &lt;= n.z) ? (i = r, r = r.nextZ, a--) : (i = n, n = n.nextZ, u--), o ? o.nextZ = i : t = i, i.prevZ = o, o = i;
                        r = n
                    }
                    o.nextZ = null, h *= 2
                } while (s &gt; 1);
                return t
            }

            function y(t, e, r, n, i) {
                return t = 32767 * (t - r) * i, e = 32767 * (e - n) * i, t = 16711935 &amp; (t | t &lt;&lt; 8), t = 252645135 &amp; (t | t &lt;&lt; 4), t = 858993459 &amp; (t | t &lt;&lt; 2), t = 1431655765 &amp; (t | t &lt;&lt; 1), e = 16711935 &amp; (e | e &lt;&lt; 8), e = 252645135 &amp; (e | e &lt;&lt; 4), e = 858993459 &amp; (e | e &lt;&lt; 2), e = 1431655765 &amp; (e | e &lt;&lt; 1), t | e &lt;&lt; 1
            }

            function m(t) {
                var e = t,
                    r = t;
                do {
                    e.x &lt; r.x &amp;&amp; (r = e), e = e.next
                } while (e !== t);
                return r
            }

            function _(t, e, r, n, i, o, s, a) {
                return (i - s) * (e - a) - (t - s) * (o - a) &gt;= 0 &amp;&amp; (t - s) * (n - a) - (r - s) * (e - a) &gt;= 0 &amp;&amp; (r - s) * (o - a) - (i - s) * (n - a) &gt;= 0
            }

            function b(t, e) {
                return t.next.i !== e.i &amp;&amp; t.prev.i !== e.i &amp;&amp; !E(t, e) &amp;&amp; S(t, e) &amp;&amp; S(e, t) &amp;&amp; O(t, e)
            }

            function x(t, e, r) {
                return (e.y - t.y) * (r.x - e.x) - (e.x - t.x) * (r.y - e.y)
            }

            function T(t, e) {
                return t.x === e.x &amp;&amp; t.y === e.y
            }

            function w(t, e, r, n) {
                return !!(T(t, e) &amp;&amp; T(r, n) || T(t, n) &amp;&amp; T(r, e)) || x(t, e, r) &gt; 0 != x(t, e, n) &gt; 0 &amp;&amp; x(r, n, t) &gt; 0 != x(r, n, e) &gt; 0
            }

            function E(t, e) {
                var r = t;
                do {
                    if (r.i !== t.i &amp;&amp; r.next.i !== t.i &amp;&amp; r.i !== e.i &amp;&amp; r.next.i !== e.i &amp;&amp; w(r, r.next, t, e)) return !0;
                    r = r.next
                } while (r !== t);
                return !1
            }

            function S(t, e) {
                return x(t.prev, t, t.next) &lt; 0 ? x(t, e, t.next) &gt;= 0 &amp;&amp; x(t, t.prev, e) &gt;= 0 : x(t, e, t.prev) &lt; 0 || x(t, t.next, e) &lt; 0
            }

            function O(t, e) {
                var r = t,
                    n = !1,
                    i = (t.x + e.x) / 2,
                    o = (t.y + e.y) / 2;
                do {
                    r.y &gt; o != r.next.y &gt; o &amp;&amp; r.next.y !== r.y &amp;&amp; i &lt; (r.next.x - r.x) * (o - r.y) / (r.next.y - r.y) + r.x &amp;&amp; (n = !n), r = r.next
                } while (r !== t);
                return n
            }

            function M(t, e) {
                var r = new R(t.i, t.x, t.y),
                    n = new R(e.i, e.x, e.y),
                    i = t.next,
                    o = e.prev;
                return t.next = e, e.prev = t, r.next = i, i.prev = r, n.next = r, r.prev = n, o.next = n, n.prev = o, n
            }

            function P(t, e, r, n) {
                var i = new R(t, e, r);
                return n ? (i.next = n.next, i.prev = n, n.next.prev = i, n.next = i) : (i.prev = i, i.next = i), i
            }

            function C(t) {
                t.next.prev = t.prev, t.prev.next = t.next, t.prevZ &amp;&amp; (t.prevZ.nextZ = t.nextZ), t.nextZ &amp;&amp; (t.nextZ.prevZ = t.prevZ)
            }

            function R(t, e, r) {
                this.i = t, this.x = e, this.y = r, this.prev = null, this.next = null, this.z = null, this.prevZ = null, this.nextZ = null, this.steiner = !1
            }

            function A(t, e, r, n) {
                for (var i = 0, o = e, s = r - n; o &lt; r; o += n) i += (t[s] - t[o]) * (t[o + 1] + t[s + 1]), s = o;
                return i
            }
            e.exports = n, e.exports.default = n, n.deviation = function(t, e, r, n) {
                var i = e &amp;&amp; e.length,
                    o = i ? e[0] * r : t.length,
                    s = Math.abs(A(t, 0, o, r));
                if (i)
                    for (var a = 0, u = e.length; a &lt; u; a++) {
                        var h = e[a] * r,
                            l = a &lt; u - 1 ? e[a + 1] * r : t.length;
                        s -= Math.abs(A(t, h, l, r))
                    }
                var c = 0;
                for (a = 0; a &lt; n.length; a += 3) {
                    var d = n[a] * r,
                        f = n[a + 1] * r,
                        p = n[a + 2] * r;
                    c += Math.abs((t[d] - t[p]) * (t[f + 1] - t[d + 1]) - (t[d] - t[f]) * (t[p + 1] - t[d + 1]))
                }
                return 0 === s &amp;&amp; 0 === c ? 0 : Math.abs((c - s) / s)
            }, n.flatten = function(t) {
                for (var e = t[0][0].length, r = {
                        vertices: [],
                        holes: [],
                        dimensions: e
                    }, n = 0, i = 0; i &lt; t.length; i++) {
                    for (var o = 0; o &lt; t[i].length; o++)
                        for (var s = 0; s &lt; e; s++) r.vertices.push(t[i][o][s]);
                    i &gt; 0 &amp;&amp; (n += t[i - 1].length, r.holes.push(n))
                }
                return r
            }
        }, {}],
        3: [function(t, e, r) {
            "use strict";

            function n() {}

            function i(t, e, r) {
                this.fn = t, this.context = e, this.once = r || !1
            }

            function o() {
                this._events = new n, this._eventsCount = 0
            }
            var s = Object.prototype.hasOwnProperty,
                a = "~";
            Object.create &amp;&amp; (n.prototype = Object.create(null), (new n).__proto__ || (a = !1)), o.prototype.eventNames = function() {
                var t, e, r = [];
                if (0 === this._eventsCount) return r;
                for (e in t = this._events) s.call(t, e) &amp;&amp; r.push(a ? e.slice(1) : e);
                return Object.getOwnPropertySymbols ? r.concat(Object.getOwnPropertySymbols(t)) : r
            }, o.prototype.listeners = function(t, e) {
                var r = a ? a + t : t,
                    n = this._events[r];
                if (e) return !!n;
                if (!n) return [];
                if (n.fn) return [n.fn];
                for (var i = 0, o = n.length, s = new Array(o); i &lt; o; i++) s[i] = n[i].fn;
                return s
            }, o.prototype.emit = function(t, e, r, n, i, o) {
                var s = a ? a + t : t;
                if (!this._events[s]) return !1;
                var u, h, l = this._events[s],
                    c = arguments.length;
                if (l.fn) {
                    switch (l.once &amp;&amp; this.removeListener(t, l.fn, void 0, !0), c) {
                        case 1:
                            return l.fn.call(l.context), !0;
                        case 2:
                            return l.fn.call(l.context, e), !0;
                        case 3:
                            return l.fn.call(l.context, e, r), !0;
                        case 4:
                            return l.fn.call(l.context, e, r, n), !0;
                        case 5:
                            return l.fn.call(l.context, e, r, n, i), !0;
                        case 6:
                            return l.fn.call(l.context, e, r, n, i, o), !0
                    }
                    for (h = 1, u = new Array(c - 1); h &lt; c; h++) u[h - 1] = arguments[h];
                    l.fn.apply(l.context, u)
                } else {
                    var d, f = l.length;
                    for (h = 0; h &lt; f; h++) switch (l[h].once &amp;&amp; this.removeListener(t, l[h].fn, void 0, !0), c) {
                        case 1:
                            l[h].fn.call(l[h].context);
                            break;
                        case 2:
                            l[h].fn.call(l[h].context, e);
                            break;
                        case 3:
                            l[h].fn.call(l[h].context, e, r);
                            break;
                        case 4:
                            l[h].fn.call(l[h].context, e, r, n);
                            break;
                        default:
                            if (!u)
                                for (d = 1, u = new Array(c - 1); d &lt; c; d++) u[d - 1] = arguments[d];
                            l[h].fn.apply(l[h].context, u)
                    }
                }
                return !0
            }, o.prototype.on = function(t, e, r) {
                var n = new i(e, r || this),
                    o = a ? a + t : t;
                return this._events[o] ? this._events[o].fn ? this._events[o] = [this._events[o], n] : this._events[o].push(n) : (this._events[o] = n, this._eventsCount++), this
            }, o.prototype.once = function(t, e, r) {
                var n = new i(e, r || this, !0),
                    o = a ? a + t : t;
                return this._events[o] ? this._events[o].fn ? this._events[o] = [this._events[o], n] : this._events[o].push(n) : (this._events[o] = n, this._eventsCount++), this
            }, o.prototype.removeListener = function(t, e, r, i) {
                var o = a ? a + t : t;
                if (!this._events[o]) return this;
                if (!e) return 0 == --this._eventsCount ? this._events = new n : delete this._events[o], this;
                var s = this._events[o];
                if (s.fn) s.fn !== e || i &amp;&amp; !s.once || r &amp;&amp; s.context !== r || (0 == --this._eventsCount ? this._events = new n : delete this._events[o]);
                else {
                    for (var u = 0, h = [], l = s.length; u &lt; l; u++)(s[u].fn !== e || i &amp;&amp; !s[u].once || r &amp;&amp; s[u].context !== r) &amp;&amp; h.push(s[u]);
                    h.length ? this._events[o] = 1 === h.length ? h[0] : h : 0 == --this._eventsCount ? this._events = new n : delete this._events[o]
                }
                return this
            }, o.prototype.removeAllListeners = function(t) {
                var e;
                return t ? (e = a ? a + t : t, this._events[e] &amp;&amp; (0 == --this._eventsCount ? this._events = new n : delete this._events[e])) : (this._events = new n, this._eventsCount = 0), this
            }, o.prototype.off = o.prototype.removeListener, o.prototype.addListener = o.prototype.on, o.prototype.setMaxListeners = function() {
                return this
            }, o.prefixed = a, o.EventEmitter = o, void 0 !== e &amp;&amp; (e.exports = o)
        }, {}],
        4: [function(t, e, r) {
            ! function(t) {
                var r = /iPhone/i,
                    n = /iPod/i,
                    i = /iPad/i,
                    o = /(?=.*\bAndroid\b)(?=.*\bMobile\b)/i,
                    s = /Android/i,
                    a = /(?=.*\bAndroid\b)(?=.*\bSD4930UR\b)/i,
                    u = /(?=.*\bAndroid\b)(?=.*\b(?:KFOT|KFTT|KFJWI|KFJWA|KFSOWI|KFTHWI|KFTHWA|KFAPWI|KFAPWA|KFARWI|KFASWI|KFSAWI|KFSAWA)\b)/i,
                    h = /Windows Phone/i,
                    l = /(?=.*\bWindows\b)(?=.*\bARM\b)/i,
                    c = /BlackBerry/i,
                    d = /BB10/i,
                    f = /Opera Mini/i,
                    p = /(CriOS|Chrome)(?=.*\bMobile\b)/i,
                    v = /(?=.*\bFirefox\b)(?=.*\bMobile\b)/i,
                    g = new RegExp("(?:Nexus 7|BNTV250|Kindle Fire|Silk|GT-P1000)", "i"),
                    y = function(t, e) {
                        return t.test(e)
                    },
                    m = function(t) {
                        var e = t || navigator.userAgent,
                            m = e.split("[FBAN");
                        if (void 0 !== m[1] &amp;&amp; (e = m[0]), void 0 !== (m = e.split("Twitter"))[1] &amp;&amp; (e = m[0]), this.apple = {
                                phone: y(r, e),
                                ipod: y(n, e),
                                tablet: !y(r, e) &amp;&amp; y(i, e),
                                device: y(r, e) || y(n, e) || y(i, e)
                            }, this.amazon = {
                                phone: y(a, e),
                                tablet: !y(a, e) &amp;&amp; y(u, e),
                                device: y(a, e) || y(u, e)
                            }, this.android = {
                                phone: y(a, e) || y(o, e),
                                tablet: !y(a, e) &amp;&amp; !y(o, e) &amp;&amp; (y(u, e) || y(s, e)),
                                device: y(a, e) || y(u, e) || y(o, e) || y(s, e)
                            }, this.windows = {
                                phone: y(h, e),
                                tablet: y(l, e),
                                device: y(h, e) || y(l, e)
                            }, this.other = {
                                blackberry: y(c, e),
                                blackberry10: y(d, e),
                                opera: y(f, e),
                                firefox: y(v, e),
                                chrome: y(p, e),
                                device: y(c, e) || y(d, e) || y(f, e) || y(v, e) || y(p, e)
                            }, this.seven_inch = y(g, e), this.any = this.apple.device || this.android.device || this.windows.device || this.other.device || this.seven_inch, this.phone = this.apple.phone || this.android.phone || this.windows.phone, this.tablet = this.apple.tablet || this.android.tablet || this.windows.tablet, "undefined" == typeof window) return this
                    },
                    _ = function() {
                        var t = new m;
                        return t.Class = m, t
                    };
                void 0 !== e &amp;&amp; e.exports &amp;&amp; "undefined" == typeof window ? e.exports = m : void 0 !== e &amp;&amp; e.exports &amp;&amp; "undefined" != typeof window ? e.exports = _() : t.isMobile = _()
            }(this)
        }, {}],
        5: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function i(t, e) {
                return t._head ? (t._tail._next = e, e._prev = t._tail, t._tail = e) : (t._head = e, t._tail = e), e._owner = t, e
            }
            Object.defineProperty(r, "__esModule", {
                value: !0
            });
            var o = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                s = function() {
                    function t(e, r, i) {
                        void 0 === r &amp;&amp; (r = !1), n(this, t), this._fn = e, this._once = r, this._thisArg = i, this._next = this._prev = this._owner = null
                    }
                    return o(t, [{
                        key: "detach",
                        value: function() {
                            return null !== this._owner &amp;&amp; (this._owner.detach(this), !0)
                        }
                    }]), t
                }(),
                a = function() {
                    function t() {
                        n(this, t), this._head = this._tail = void 0
                    }
                    return o(t, [{
                        key: "handlers",
                        value: function() {
                            var t = !(arguments.length &lt;= 0 || void 0 === arguments[0]) &amp;&amp; arguments[0],
                                e = this._head;
                            if (t) return !!e;
                            for (var r = []; e;) r.push(e), e = e._next;
                            return r
                        }
                    }, {
                        key: "has",
                        value: function(t) {
                            if (!(t instanceof s)) throw new Error("MiniSignal#has(): First arg must be a MiniSignalBinding object.");
                            return t._owner === this
                        }
                    }, {
                        key: "dispatch",
                        value: function() {
                            var t = this._head;
                            if (!t) return !1;
                            for (; t;) t._once &amp;&amp; this.detach(t), t._fn.apply(t._thisArg, arguments), t = t._next;
                            return !0
                        }
                    }, {
                        key: "add",
                        value: function(t) {
                            var e = arguments.length &lt;= 1 || void 0 === arguments[1] ? null : arguments[1];
                            if ("function" != typeof t) throw new Error("MiniSignal#add(): First arg must be a Function.");
                            return i(this, new s(t, !1, e))
                        }
                    }, {
                        key: "once",
                        value: function(t) {
                            var e = arguments.length &lt;= 1 || void 0 === arguments[1] ? null : arguments[1];
                            if ("function" != typeof t) throw new Error("MiniSignal#once(): First arg must be a Function.");
                            return i(this, new s(t, !0, e))
                        }
                    }, {
                        key: "detach",
                        value: function(t) {
                            if (!(t instanceof s)) throw new Error("MiniSignal#detach(): First arg must be a MiniSignalBinding object.");
                            return t._owner !== this ? this : (t._prev &amp;&amp; (t._prev._next = t._next), t._next &amp;&amp; (t._next._prev = t._prev), t === this._head ? (this._head = t._next, null === t._next &amp;&amp; (this._tail = null)) : t === this._tail &amp;&amp; (this._tail = t._prev, this._tail._next = null), t._owner = null, this)
                        }
                    }, {
                        key: "detachAll",
                        value: function() {
                            var t = this._head;
                            if (!t) return this;
                            for (this._head = this._tail = null; t;) t._owner = null, t = t._next;
                            return this
                        }
                    }]), t
                }();
            a.MiniSignalBinding = s, r.default = a, e.exports = r.default
        }, {}],
        6: [function(t, e, r) {
            "use strict";

            function n(t) {
                if (null === t || void 0 === t) throw new TypeError("Object.assign cannot be called with null or undefined");
                return Object(t)
            }
            var i = Object.getOwnPropertySymbols,
                o = Object.prototype.hasOwnProperty,
                s = Object.prototype.propertyIsEnumerable;
            e.exports = function() {
                try {
                    if (!Object.assign) return !1;
                    var t = new String("abc");
                    if (t[5] = "de", "5" === Object.getOwnPropertyNames(t)[0]) return !1;
                    for (var e = {}, r = 0; r &lt; 10; r++) e["_" + String.fromCharCode(r)] = r;
                    if ("0123456789" !== Object.getOwnPropertyNames(e).map(function(t) {
                            return e[t]
                        }).join("")) return !1;
                    var n = {};
                    return "abcdefghijklmnopqrst".split("").forEach(function(t) {
                        n[t] = t
                    }), "abcdefghijklmnopqrst" === Object.keys(Object.assign({}, n)).join("")
                } catch (t) {
                    return !1
                }
            }() ? Object.assign : function(t, e) {
                for (var r, a, u = n(t), h = 1; h &lt; arguments.length; h++) {
                    r = Object(arguments[h]);
                    for (var l in r) o.call(r, l) &amp;&amp; (u[l] = r[l]);
                    if (i) {
                        a = i(r);
                        for (var c = 0; c &lt; a.length; c++) s.call(r, a[c]) &amp;&amp; (u[a[c]] = r[a[c]])
                    }
                }
                return u
            }
        }, {}],
        7: [function(t, e, r) {
            "use strict";
            e.exports = function(t, e) {
                e = e || {};
                for (var r = {
                        key: ["source", "protocol", "authority", "userInfo", "user", "password", "host", "port", "relative", "path", "directory", "file", "query", "anchor"],
                        q: {
                            name: "queryKey",
                            parser: /(?:^|&amp;)([^&amp;=]*)=?([^&amp;]*)/g
                        },
                        parser: {
                            strict: /^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,
                            loose: /^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/
                        }
                    }, n = r.parser[e.strictMode ? "strict" : "loose"].exec(t), i = {}, o = 14; o--;) i[r.key[o]] = n[o] || "";
                return i[r.q.name] = {}, i[r.key[12]].replace(r.q.parser, function(t, e, n) {
                    e &amp;&amp; (i[r.q.name][e] = n)
                }), i
            }
        }, {}],
        8: [function(t, e, r) {
            (function(t) {
                function e(t, e) {
                    for (var r = 0, n = t.length - 1; n &gt;= 0; n--) {
                        var i = t[n];
                        "." === i ? t.splice(n, 1) : ".." === i ? (t.splice(n, 1), r++) : r &amp;&amp; (t.splice(n, 1), r--)
                    }
                    if (e)
                        for (; r--; r) t.unshift("..");
                    return t
                }

                function n(t, e) {
                    if (t.filter) return t.filter(e);
                    for (var r = [], n = 0; n &lt; t.length; n++) e(t[n], n, t) &amp;&amp; r.push(t[n]);
                    return r
                }
                var i = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/,
                    o = function(t) {
                        return i.exec(t).slice(1)
                    };
                r.resolve = function() {
                    for (var r = "", i = !1, o = arguments.length - 1; o &gt;= -1 &amp;&amp; !i; o--) {
                        var s = o &gt;= 0 ? arguments[o] : t.cwd();
                        if ("string" != typeof s) throw new TypeError("Arguments to path.resolve must be strings");
                        s &amp;&amp; (r = s + "/" + r, i = "/" === s.charAt(0))
                    }
                    return r = e(n(r.split("/"), function(t) {
                        return !!t
                    }), !i).join("/"), (i ? "/" : "") + r || "."
                }, r.normalize = function(t) {
                    var i = r.isAbsolute(t),
                        o = "/" === s(t, -1);
                    return (t = e(n(t.split("/"), function(t) {
                        return !!t
                    }), !i).join("/")) || i || (t = "."), t &amp;&amp; o &amp;&amp; (t += "/"), (i ? "/" : "") + t
                }, r.isAbsolute = function(t) {
                    return "/" === t.charAt(0)
                }, r.join = function() {
                    var t = Array.prototype.slice.call(arguments, 0);
                    return r.normalize(n(t, function(t, e) {
                        if ("string" != typeof t) throw new TypeError("Arguments to path.join must be strings");
                        return t
                    }).join("/"))
                }, r.relative = function(t, e) {
                    function n(t) {
                        for (var e = 0; e &lt; t.length &amp;&amp; "" === t[e]; e++);
                        for (var r = t.length - 1; r &gt;= 0 &amp;&amp; "" === t[r]; r--);
                        return e &gt; r ? [] : t.slice(e, r - e + 1)
                    }
                    t = r.resolve(t).substr(1), e = r.resolve(e).substr(1);
                    for (var i = n(t.split("/")), o = n(e.split("/")), s = Math.min(i.length, o.length), a = s, u = 0; u &lt; s; u++)
                        if (i[u] !== o[u]) {
                            a = u;
                            break
                        }
                    for (var h = [], u = a; u &lt; i.length; u++) h.push("..");
                    return (h = h.concat(o.slice(a))).join("/")
                }, r.sep = "/", r.delimiter = ":", r.dirname = function(t) {
                    var e = o(t),
                        r = e[0],
                        n = e[1];
                    return r || n ? (n &amp;&amp; (n = n.substr(0, n.length - 1)), r + n) : "."
                }, r.basename = function(t, e) {
                    var r = o(t)[2];
                    return e &amp;&amp; r.substr(-1 * e.length) === e &amp;&amp; (r = r.substr(0, r.length - e.length)), r
                }, r.extname = function(t) {
                    return o(t)[3]
                };
                var s = "b" === "ab".substr(-1) ? function(t, e, r) {
                    return t.substr(e, r)
                } : function(t, e, r) {
                    return e &lt; 0 &amp;&amp; (e = t.length + e), t.substr(e, r)
                }
            }).call(this, t("_process"))
        }, {
            _process: 26
        }],
        9: [function(t, e, r) {
            var n = new ArrayBuffer(0),
                i = function(t, e, r, i) {
                    this.gl = t, this.buffer = t.createBuffer(), this.type = e || t.ARRAY_BUFFER, this.drawType = i || t.STATIC_DRAW, this.data = n, r &amp;&amp; this.upload(r), this._updateID = 0
                };
            i.prototype.upload = function(t, e, r) {
                r || this.bind();
                var n = this.gl;
                t = t || this.data, e = e || 0, this.data.byteLength &gt;= t.byteLength ? n.bufferSubData(this.type, e, t) : n.bufferData(this.type, t, this.drawType), this.data = t
            }, i.prototype.bind = function() {
                this.gl.bindBuffer(this.type, this.buffer)
            }, i.createVertexBuffer = function(t, e, r) {
                return new i(t, t.ARRAY_BUFFER, e, r)
            }, i.createIndexBuffer = function(t, e, r) {
                return new i(t, t.ELEMENT_ARRAY_BUFFER, e, r)
            }, i.create = function(t, e, r, n) {
                return new i(t, e, r, n)
            }, i.prototype.destroy = function() {
                this.gl.deleteBuffer(this.buffer)
            }, e.exports = i
        }, {}],
        10: [function(t, e, r) {
            var n = t("./GLTexture"),
                i = function(t, e, r) {
                    this.gl = t, this.framebuffer = t.createFramebuffer(), this.stencil = null, this.texture = null, this.width = e || 100, this.height = r || 100
                };
            i.prototype.enableTexture = function(t) {
                var e = this.gl;
                this.texture = t || new n(e), this.texture.bind(), this.bind(), e.framebufferTexture2D(e.FRAMEBUFFER, e.COLOR_ATTACHMENT0, e.TEXTURE_2D, this.texture.texture, 0)
            }, i.prototype.enableStencil = function() {
                if (!this.stencil) {
                    var t = this.gl;
                    this.stencil = t.createRenderbuffer(), t.bindRenderbuffer(t.RENDERBUFFER, this.stencil), t.framebufferRenderbuffer(t.FRAMEBUFFER, t.DEPTH_STENCIL_ATTACHMENT, t.RENDERBUFFER, this.stencil), t.renderbufferStorage(t.RENDERBUFFER, t.DEPTH_STENCIL, this.width, this.height)
                }
            }, i.prototype.clear = function(t, e, r, n) {
                this.bind();
                var i = this.gl;
                i.clearColor(t, e, r, n), i.clear(i.COLOR_BUFFER_BIT | i.DEPTH_BUFFER_BIT)
            }, i.prototype.bind = function() {
                var t = this.gl;
                t.bindFramebuffer(t.FRAMEBUFFER, this.framebuffer)
            }, i.prototype.unbind = function() {
                var t = this.gl;
                t.bindFramebuffer(t.FRAMEBUFFER, null)
            }, i.prototype.resize = function(t, e) {
                var r = this.gl;
                this.width = t, this.height = e, this.texture &amp;&amp; this.texture.uploadData(null, t, e), this.stencil &amp;&amp; (r.bindRenderbuffer(r.RENDERBUFFER, this.stencil), r.renderbufferStorage(r.RENDERBUFFER, r.DEPTH_STENCIL, t, e))
            }, i.prototype.destroy = function() {
                var t = this.gl;
                this.texture &amp;&amp; this.texture.destroy(), t.deleteFramebuffer(this.framebuffer), this.gl = null, this.stencil = null, this.texture = null
            }, i.createRGBA = function(t, e, r, o) {
                var s = n.fromData(t, null, e, r);
                s.enableNearestScaling(), s.enableWrapClamp();
                var a = new i(t, e, r);
                return a.enableTexture(s), a.unbind(), a
            }, i.createFloat32 = function(t, e, r, o) {
                var s = new n.fromData(t, o, e, r);
                s.enableNearestScaling(), s.enableWrapClamp();
                var a = new i(t, e, r);
                return a.enableTexture(s), a.unbind(), a
            }, e.exports = i
        }, {
            "./GLTexture": 12
        }],
        11: [function(t, e, r) {
            var n = t("./shader/compileProgram"),
                i = t("./shader/extractAttributes"),
                o = t("./shader/extractUniforms"),
                s = t("./shader/setPrecision"),
                a = t("./shader/generateUniformAccessObject"),
                u = function(t, e, r, u, h) {
                    this.gl = t, u &amp;&amp; (e = s(e, u), r = s(r, u)), this.program = n(t, e, r, h), this.attributes = i(t, this.program), this.uniformData = o(t, this.program), this.uniforms = a(t, this.uniformData)
                };
            u.prototype.bind = function() {
                return this.gl.useProgram(this.program), this
            }, u.prototype.destroy = function() {
                this.attributes = null, this.uniformData = null, this.uniforms = null, this.gl.deleteProgram(this.program)
            }, e.exports = u
        }, {
            "./shader/compileProgram": 17,
            "./shader/extractAttributes": 19,
            "./shader/extractUniforms": 20,
            "./shader/generateUniformAccessObject": 21,
            "./shader/setPrecision": 25
        }],
        12: [function(t, e, r) {
            var n = function(t, e, r, n, i) {
                this.gl = t, this.texture = t.createTexture(), this.mipmap = !1, this.premultiplyAlpha = !1, this.width = e || -1, this.height = r || -1, this.format = n || t.RGBA, this.type = i || t.UNSIGNED_BYTE
            };
            n.prototype.upload = function(t) {
                this.bind();
                var e = this.gl;
                e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL, this.premultiplyAlpha);
                var r = t.videoWidth || t.width,
                    n = t.videoHeight || t.height;
                n !== this.height || r !== this.width ? e.texImage2D(e.TEXTURE_2D, 0, this.format, this.format, this.type, t) : e.texSubImage2D(e.TEXTURE_2D, 0, 0, 0, this.format, this.type, t), this.width = r, this.height = n
            };
            var i = !1;
            n.prototype.uploadData = function(t, e, r) {
                this.bind();
                var n = this.gl;
                if (t instanceof Float32Array) {
                    if (!i) {
                        if (!n.getExtension("OES_texture_float")) throw new Error("floating point textures not available");
                        i = !0
                    }
                    this.type = n.FLOAT
                } else this.type = this.type || n.UNSIGNED_BYTE;
                n.pixelStorei(n.UNPACK_PREMULTIPLY_ALPHA_WEBGL, this.premultiplyAlpha), e !== this.width || r !== this.height ? n.texImage2D(n.TEXTURE_2D, 0, this.format, e, r, 0, this.format, this.type, t || null) : n.texSubImage2D(n.TEXTURE_2D, 0, 0, 0, e, r, this.format, this.type, t || null), this.width = e, this.height = r
            }, n.prototype.bind = function(t) {
                var e = this.gl;
                void 0 !== t &amp;&amp; e.activeTexture(e.TEXTURE0 + t), e.bindTexture(e.TEXTURE_2D, this.texture)
            }, n.prototype.unbind = function() {
                var t = this.gl;
                t.bindTexture(t.TEXTURE_2D, null)
            }, n.prototype.minFilter = function(t) {
                var e = this.gl;
                this.bind(), this.mipmap ? e.texParameteri(e.TEXTURE_2D, e.TEXTURE_MIN_FILTER, t ? e.LINEAR_MIPMAP_LINEAR : e.NEAREST_MIPMAP_NEAREST) : e.texParameteri(e.TEXTURE_2D, e.TEXTURE_MIN_FILTER, t ? e.LINEAR : e.NEAREST)
            }, n.prototype.magFilter = function(t) {
                var e = this.gl;
                this.bind(), e.texParameteri(e.TEXTURE_2D, e.TEXTURE_MAG_FILTER, t ? e.LINEAR : e.NEAREST)
            }, n.prototype.enableMipmap = function() {
                var t = this.gl;
                this.bind(), this.mipmap = !0, t.generateMipmap(t.TEXTURE_2D)
            }, n.prototype.enableLinearScaling = function() {
                this.minFilter(!0), this.magFilter(!0)
            }, n.prototype.enableNearestScaling = function() {
                this.minFilter(!1), this.magFilter(!1)
            }, n.prototype.enableWrapClamp = function() {
                var t = this.gl;
                this.bind(), t.texParameteri(t.TEXTURE_2D, t.TEXTURE_WRAP_S, t.CLAMP_TO_EDGE), t.texParameteri(t.TEXTURE_2D, t.TEXTURE_WRAP_T, t.CLAMP_TO_EDGE)
            }, n.prototype.enableWrapRepeat = function() {
                var t = this.gl;
                this.bind(), t.texParameteri(t.TEXTURE_2D, t.TEXTURE_WRAP_S, t.REPEAT), t.texParameteri(t.TEXTURE_2D, t.TEXTURE_WRAP_T, t.REPEAT)
            }, n.prototype.enableWrapMirrorRepeat = function() {
                var t = this.gl;
                this.bind(), t.texParameteri(t.TEXTURE_2D, t.TEXTURE_WRAP_S, t.MIRRORED_REPEAT), t.texParameteri(t.TEXTURE_2D, t.TEXTURE_WRAP_T, t.MIRRORED_REPEAT)
            }, n.prototype.destroy = function() {
                this.gl.deleteTexture(this.texture)
            }, n.fromSource = function(t, e, r) {
                var i = new n(t);
                return i.premultiplyAlpha = r || !1, i.upload(e), i
            }, n.fromData = function(t, e, r, i) {
                var o = new n(t);
                return o.uploadData(e, r, i), o
            }, e.exports = n
        }, {}],
        13: [function(t, e, r) {
            function n(t, e) {
                if (this.nativeVaoExtension = null, n.FORCE_NATIVE || (this.nativeVaoExtension = t.getExtension("OES_vertex_array_object") || t.getExtension("MOZ_OES_vertex_array_object") || t.getExtension("WEBKIT_OES_vertex_array_object")), this.nativeState = e, this.nativeVaoExtension) {
                    this.nativeVao = this.nativeVaoExtension.createVertexArrayOES();
                    var r = t.getParameter(t.MAX_VERTEX_ATTRIBS);
                    this.nativeState = {
                        tempAttribState: new Array(r),
                        attribState: new Array(r)
                    }
                }
                this.gl = t, this.attributes = [], this.indexBuffer = null, this.dirty = !1
            }
            var i = t("./setVertexAttribArrays");
            n.prototype.constructor = n, e.exports = n, n.FORCE_NATIVE = !1, n.prototype.bind = function() {
                if (this.nativeVao) {
                    if (this.nativeVaoExtension.bindVertexArrayOES(this.nativeVao), this.dirty) return this.dirty = !1, this.activate(), this;
                    this.indexBuffer &amp;&amp; this.indexBuffer.bind()
                } else this.activate();
                return this
            }, n.prototype.unbind = function() {
                return this.nativeVao &amp;&amp; this.nativeVaoExtension.bindVertexArrayOES(null), this
            }, n.prototype.activate = function() {
                for (var t = this.gl, e = null, r = 0; r &lt; this.attributes.length; r++) {
                    var n = this.attributes[r];
                    e !== n.buffer &amp;&amp; (n.buffer.bind(), e = n.buffer), t.vertexAttribPointer(n.attribute.location, n.attribute.size, n.type || t.FLOAT, n.normalized || !1, n.stride || 0, n.start || 0)
                }
                return i(t, this.attributes, this.nativeState), this.indexBuffer &amp;&amp; this.indexBuffer.bind(), this
            }, n.prototype.addAttribute = function(t, e, r, n, i, o) {
                return this.attributes.push({
                    buffer: t,
                    attribute: e,
                    location: e.location,
                    type: r || this.gl.FLOAT,
                    normalized: n || !1,
                    stride: i || 0,
                    start: o || 0
                }), this.dirty = !0, this
            }, n.prototype.addIndex = function(t) {
                return this.indexBuffer = t, this.dirty = !0, this
            }, n.prototype.clear = function() {
                return this.nativeVao &amp;&amp; this.nativeVaoExtension.bindVertexArrayOES(this.nativeVao), this.attributes.length = 0, this.indexBuffer = null, this
            }, n.prototype.draw = function(t, e, r) {
                var n = this.gl;
                return this.indexBuffer ? n.drawElements(t, e || this.indexBuffer.data.length, n.UNSIGNED_SHORT, 2 * (r || 0)) : n.drawArrays(t, r, e || this.getSize()), this
            }, n.prototype.destroy = function() {
                this.gl = null, this.indexBuffer = null, this.attributes = null, this.nativeState = null, this.nativeVao &amp;&amp; this.nativeVaoExtension.deleteVertexArrayOES(this.nativeVao), this.nativeVaoExtension = null, this.nativeVao = null
            }, n.prototype.getSize = function() {
                var t = this.attributes[0];
                return t.buffer.data.length / (t.stride / 4 || t.attribute.size)
            }
        }, {
            "./setVertexAttribArrays": 16
        }],
        14: [function(t, e, r) {
            e.exports = function(t, e) {
                var r = t.getContext("webgl", e) || t.getContext("experimental-webgl", e);
                if (!r) throw new Error("This browser does not support webGL. Try using the canvas renderer");
                return r
            }
        }, {}],
        15: [function(t, e, r) {
            var n = {
                createContext: t("./createContext"),
                setVertexAttribArrays: t("./setVertexAttribArrays"),
                GLBuffer: t("./GLBuffer"),
                GLFramebuffer: t("./GLFramebuffer"),
                GLShader: t("./GLShader"),
                GLTexture: t("./GLTexture"),
                VertexArrayObject: t("./VertexArrayObject"),
                shader: t("./shader")
            };
            void 0 !== e &amp;&amp; e.exports &amp;&amp; (e.exports = n), "undefined" != typeof window &amp;&amp; (window.PIXI = window.PIXI || {}, window.PIXI.glCore = n)
        }, {
            "./GLBuffer": 9,
            "./GLFramebuffer": 10,
            "./GLShader": 11,
            "./GLTexture": 12,
            "./VertexArrayObject": 13,
            "./createContext": 14,
            "./setVertexAttribArrays": 16,
            "./shader": 22
        }],
        16: [function(t, e, r) {
            e.exports = function(t, e, r) {
                var n;
                if (r) {
                    var i = r.tempAttribState,
                        o = r.attribState;
                    for (n = 0; n &lt; i.length; n++) i[n] = !1;
                    for (n = 0; n &lt; e.length; n++) i[e[n].attribute.location] = !0;
                    for (n = 0; n &lt; o.length; n++) o[n] !== i[n] &amp;&amp; (o[n] = i[n], r.attribState[n] ? t.enableVertexAttribArray(n) : t.disableVertexAttribArray(n))
                } else
                    for (n = 0; n &lt; e.length; n++) {
                        var s = e[n];
                        t.enableVertexAttribArray(s.attribute.location)
                    }
            }
        }, {}],
        17: [function(t, e, r) {
            var n = function(t, e, r) {
                var n = t.createShader(e);
                return t.shaderSource(n, r), t.compileShader(n), t.getShaderParameter(n, t.COMPILE_STATUS) ? n : (console.log(t.getShaderInfoLog(n)), null)
            };
            e.exports = function(t, e, r, i) {
                var o = n(t, t.VERTEX_SHADER, e),
                    s = n(t, t.FRAGMENT_SHADER, r),
                    a = t.createProgram();
                if (t.attachShader(a, o), t.attachShader(a, s), i)
                    for (var u in i) t.bindAttribLocation(a, i[u], u);
                return t.linkProgram(a), t.getProgramParameter(a, t.LINK_STATUS) || (console.error("Pixi.js Error: Could not initialize shader."), console.error("gl.VALIDATE_STATUS", t.getProgramParameter(a, t.VALIDATE_STATUS)), console.error("gl.getError()", t.getError()), "" !== t.getProgramInfoLog(a) &amp;&amp; console.warn("Pixi.js Warning: gl.getProgramInfoLog()", t.getProgramInfoLog(a)), t.deleteProgram(a), a = null), t.deleteShader(o), t.deleteShader(s), a
            }
        }, {}],
        18: [function(t, e, r) {
            var n = function(t) {
                for (var e = new Array(t), r = 0; r &lt; e.length; r++) e[r] = !1;
                return e
            };
            e.exports = function(t, e) {
                switch (t) {
                    case "float":
                        return 0;
                    case "vec2":
                        return new Float32Array(2 * e);
                    case "vec3":
                        return new Float32Array(3 * e);
                    case "vec4":
                        return new Float32Array(4 * e);
                    case "int":
                    case "sampler2D":
                        return 0;
                    case "ivec2":
                        return new Int32Array(2 * e);
                    case "ivec3":
                        return new Int32Array(3 * e);
                    case "ivec4":
                        return new Int32Array(4 * e);
                    case "bool":
                        return !1;
                    case "bvec2":
                        return n(2 * e);
                    case "bvec3":
                        return n(3 * e);
                    case "bvec4":
                        return n(4 * e);
                    case "mat2":
                        return new Float32Array([1, 0, 0, 1]);
                    case "mat3":
                        return new Float32Array([1, 0, 0, 0, 1, 0, 0, 0, 1]);
                    case "mat4":
                        return new Float32Array([1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1])
                }
            }
        }, {}],
        19: [function(t, e, r) {
            var n = t("./mapType"),
                i = t("./mapSize"),
                o = function(t, e, r, n) {
                    gl.vertexAttribPointer(this.location, this.size, t || gl.FLOAT, e || !1, r || 0, n || 0)
                };
            e.exports = function(t, e) {
                for (var r = {}, s = t.getProgramParameter(e, t.ACTIVE_ATTRIBUTES), a = 0; a &lt; s; a++) {
                    var u = t.getActiveAttrib(e, a),
                        h = n(t, u.type);
                    r[u.name] = {
                        type: h,
                        size: i(h),
                        location: t.getAttribLocation(e, u.name),
                        pointer: o
                    }
                }
                return r
            }
        }, {
            "./mapSize": 23,
            "./mapType": 24
        }],
        20: [function(t, e, r) {
            var n = t("./mapType"),
                i = t("./defaultValue");
            e.exports = function(t, e) {
                for (var r = {}, o = t.getProgramParameter(e, t.ACTIVE_UNIFORMS), s = 0; s &lt; o; s++) {
                    var a = t.getActiveUniform(e, s),
                        u = a.name.replace(/\[.*?\]/, ""),
                        h = n(t, a.type);
                    r[u] = {
                        type: h,
                        size: a.size,
                        location: t.getUniformLocation(e, u),
                        value: i(h, a.size)
                    }
                }
                return r
            }
        }, {
            "./defaultValue": 18,
            "./mapType": 24
        }],
        21: [function(t, e, r) {
            function n(t, e) {
                return function(r) {
                    this.data[t].value = r;
                    var n = this.data[t].location;
                    1 === e.size ? s[e.type](this.gl, n, r) : a[e.type](this.gl, n, r)
                }
            }

            function i(t, e) {
                for (var r = e, n = 0; n &lt; t.length - 1; n++) {
                    var i = r[t[n]] || {
                        data: {}
                    };
                    r[t[n]] = i, r = i
                }
                return r
            }
            var o = function(t) {
                    return function() {
                        return this.data[t].value
                    }
                },
                s = {
                    float: function(t, e, r) {
                        t.uniform1f(e, r)
                    },
                    vec2: function(t, e, r) {
                        t.uniform2f(e, r[0], r[1])
                    },
                    vec3: function(t, e, r) {
                        t.uniform3f(e, r[0], r[1], r[2])
                    },
                    vec4: function(t, e, r) {
                        t.uniform4f(e, r[0], r[1], r[2], r[3])
                    },
                    int: function(t, e, r) {
                        t.uniform1i(e, r)
                    },
                    ivec2: function(t, e, r) {
                        t.uniform2i(e, r[0], r[1])
                    },
                    ivec3: function(t, e, r) {
                        t.uniform3i(e, r[0], r[1], r[2])
                    },
                    ivec4: function(t, e, r) {
                        t.uniform4i(e, r[0], r[1], r[2], r[3])
                    },
                    bool: function(t, e, r) {
                        t.uniform1i(e, r)
                    },
                    bvec2: function(t, e, r) {
                        t.uniform2i(e, r[0], r[1])
                    },
                    bvec3: function(t, e, r) {
                        t.uniform3i(e, r[0], r[1], r[2])
                    },
                    bvec4: function(t, e, r) {
                        t.uniform4i(e, r[0], r[1], r[2], r[3])
                    },
                    mat2: function(t, e, r) {
                        t.uniformMatrix2fv(e, !1, r)
                    },
                    mat3: function(t, e, r) {
                        t.uniformMatrix3fv(e, !1, r)
                    },
                    mat4: function(t, e, r) {
                        t.uniformMatrix4fv(e, !1, r)
                    },
                    sampler2D: function(t, e, r) {
                        t.uniform1i(e, r)
                    }
                },
                a = {
                    float: function(t, e, r) {
                        t.uniform1fv(e, r)
                    },
                    vec2: function(t, e, r) {
                        t.uniform2fv(e, r)
                    },
                    vec3: function(t, e, r) {
                        t.uniform3fv(e, r)
                    },
                    vec4: function(t, e, r) {
                        t.uniform4fv(e, r)
                    },
                    int: function(t, e, r) {
                        t.uniform1iv(e, r)
                    },
                    ivec2: function(t, e, r) {
                        t.uniform2iv(e, r)
                    },
                    ivec3: function(t, e, r) {
                        t.uniform3iv(e, r)
                    },
                    ivec4: function(t, e, r) {
                        t.uniform4iv(e, r)
                    },
                    bool: function(t, e, r) {
                        t.uniform1iv(e, r)
                    },
                    bvec2: function(t, e, r) {
                        t.uniform2iv(e, r)
                    },
                    bvec3: function(t, e, r) {
                        t.uniform3iv(e, r)
                    },
                    bvec4: function(t, e, r) {
                        t.uniform4iv(e, r)
                    },
                    sampler2D: function(t, e, r) {
                        t.uniform1iv(e, r)
                    }
                };
            e.exports = function(t, e) {
                var r = {
                    data: {}
                };
                r.gl = t;
                for (var s = Object.keys(e), a = 0; a &lt; s.length; a++) {
                    var u = s[a],
                        h = u.split("."),
                        l = h[h.length - 1],
                        c = i(h, r),
                        d = e[u];
                    c.data[l] = d, c.gl = t, Object.defineProperty(c, l, {
                        get: o(l),
                        set: n(l, d)
                    })
                }
                return r
            }
        }, {}],
        22: [function(t, e, r) {
            e.exports = {
                compileProgram: t("./compileProgram"),
                defaultValue: t("./defaultValue"),
                extractAttributes: t("./extractAttributes"),
                extractUniforms: t("./extractUniforms"),
                generateUniformAccessObject: t("./generateUniformAccessObject"),
                setPrecision: t("./setPrecision"),
                mapSize: t("./mapSize"),
                mapType: t("./mapType")
            }
        }, {
            "./compileProgram": 17,
            "./defaultValue": 18,
            "./extractAttributes": 19,
            "./extractUniforms": 20,
            "./generateUniformAccessObject": 21,
            "./mapSize": 23,
            "./mapType": 24,
            "./setPrecision": 25
        }],
        23: [function(t, e, r) {
            var n = {
                float: 1,
                vec2: 2,
                vec3: 3,
                vec4: 4,
                int: 1,
                ivec2: 2,
                ivec3: 3,
                ivec4: 4,
                bool: 1,
                bvec2: 2,
                bvec3: 3,
                bvec4: 4,
                mat2: 4,
                mat3: 9,
                mat4: 16,
                sampler2D: 1
            };
            e.exports = function(t) {
                return n[t]
            }
        }, {}],
        24: [function(t, e, r) {
            var n = null,
                i = {
                    FLOAT: "float",
                    FLOAT_VEC2: "vec2",
                    FLOAT_VEC3: "vec3",
                    FLOAT_VEC4: "vec4",
                    INT: "int",
                    INT_VEC2: "ivec2",
                    INT_VEC3: "ivec3",
                    INT_VEC4: "ivec4",
                    BOOL: "bool",
                    BOOL_VEC2: "bvec2",
                    BOOL_VEC3: "bvec3",
                    BOOL_VEC4: "bvec4",
                    FLOAT_MAT2: "mat2",
                    FLOAT_MAT3: "mat3",
                    FLOAT_MAT4: "mat4",
                    SAMPLER_2D: "sampler2D"
                };
            e.exports = function(t, e) {
                if (!n) {
                    var r = Object.keys(i);
                    n = {};
                    for (var o = 0; o &lt; r.length; ++o) {
                        var s = r[o];
                        n[t[s]] = i[s]
                    }
                }
                return n[e]
            }
        }, {}],
        25: [function(t, e, r) {
            e.exports = function(t, e) {
                return "precision" !== t.substring(0, 9) ? "precision " + e + " float;\n" + t : t
            }
        }, {}],
        26: [function(t, e, r) {
            function n() {
                throw new Error("setTimeout has not been defined")
            }

            function i() {
                throw new Error("clearTimeout has not been defined")
            }

            function o(t) {
                if (c === setTimeout) return setTimeout(t, 0);
                if ((c === n || !c) &amp;&amp; setTimeout) return c = setTimeout, setTimeout(t, 0);
                try {
                    return c(t, 0)
                } catch (e) {
                    try {
                        return c.call(null, t, 0)
                    } catch (e) {
                        return c.call(this, t, 0)
                    }
                }
            }

            function s(t) {
                if (d === clearTimeout) return clearTimeout(t);
                if ((d === i || !d) &amp;&amp; clearTimeout) return d = clearTimeout, clearTimeout(t);
                try {
                    return d(t)
                } catch (e) {
                    try {
                        return d.call(null, t)
                    } catch (e) {
                        return d.call(this, t)
                    }
                }
            }

            function a() {
                g &amp;&amp; p &amp;&amp; (g = !1, p.length ? v = p.concat(v) : y = -1, v.length &amp;&amp; u())
            }

            function u() {
                if (!g) {
                    var t = o(a);
                    g = !0;
                    for (var e = v.length; e;) {
                        for (p = v, v = []; ++y &lt; e;) p &amp;&amp; p[y].run();
                        y = -1, e = v.length
                    }
                    p = null, g = !1, s(t)
                }
            }

            function h(t, e) {
                this.fun = t, this.array = e
            }

            function l() {}
            var c, d, f = e.exports = {};
            ! function() {
                try {
                    c = "function" == typeof setTimeout ? setTimeout : n
                } catch (t) {
                    c = n
                }
                try {
                    d = "function" == typeof clearTimeout ? clearTimeout : i
                } catch (t) {
                    d = i
                }
            }();
            var p, v = [],
                g = !1,
                y = -1;
            f.nextTick = function(t) {
                var e = new Array(arguments.length - 1);
                if (arguments.length &gt; 1)
                    for (var r = 1; r &lt; arguments.length; r++) e[r - 1] = arguments[r];
                v.push(new h(t, e)), 1 !== v.length || g || o(u)
            }, h.prototype.run = function() {
                this.fun.apply(null, this.array)
            }, f.title = "browser", f.browser = !0, f.env = {}, f.argv = [], f.version = "", f.versions = {}, f.on = l, f.addListener = l, f.once = l, f.off = l, f.removeListener = l, f.removeAllListeners = l, f.emit = l, f.prependListener = l, f.prependOnceListener = l, f.listeners = function(t) {
                return []
            }, f.binding = function(t) {
                throw new Error("process.binding is not supported")
            }, f.cwd = function() {
                return "/"
            }, f.chdir = function(t) {
                throw new Error("process.chdir is not supported")
            }, f.umask = function() {
                return 0
            }
        }, {}],
        27: [function(t, e, r) {
            (function(t) {
                ! function(n) {
                    function i(t) {
                        throw new RangeError(A[t])
                    }

                    function o(t, e) {
                        for (var r = t.length, n = []; r--;) n[r] = e(t[r]);
                        return n
                    }

                    function s(t, e) {
                        var r = t.split("@"),
                            n = "";
                        return r.length &gt; 1 &amp;&amp; (n = r[0] + "@", t = r[1]), n + o((t = t.replace(R, ".")).split("."), e).join(".")
                    }

                    function a(t) {
                        for (var e, r, n = [], i = 0, o = t.length; i &lt; o;)(e = t.charCodeAt(i++)) &gt;= 55296 &amp;&amp; e &lt;= 56319 &amp;&amp; i &lt; o ? 56320 == (64512 &amp; (r = t.charCodeAt(i++))) ? n.push(((1023 &amp; e) &lt;&lt; 10) + (1023 &amp; r) + 65536) : (n.push(e), i--) : n.push(e);
                        return n
                    }

                    function u(t) {
                        return o(t, function(t) {
                            var e = "";
                            return t &gt; 65535 &amp;&amp; (e += L((t -= 65536) &gt;&gt;&gt; 10 &amp; 1023 | 55296), t = 56320 | 1023 &amp; t), e += L(t)
                        }).join("")
                    }

                    function h(t) {
                        return t - 48 &lt; 10 ? t - 22 : t - 65 &lt; 26 ? t - 65 : t - 97 &lt; 26 ? t - 97 : b
                    }

                    function l(t, e) {
                        return t + 22 + 75 * (t &lt; 26) - ((0 != e) &lt;&lt; 5)
                    }

                    function c(t, e, r) {
                        var n = 0;
                        for (t = r ? D(t / E) : t &gt;&gt; 1, t += D(t / e); t &gt; I * T &gt;&gt; 1; n += b) t = D(t / I);
                        return D(n + (I + 1) * t / (t + w))
                    }

                    function d(t) {
                        var e, r, n, o, s, a, l, d, f, p, v = [],
                            g = t.length,
                            y = 0,
                            m = O,
                            w = S;
                        for ((r = t.lastIndexOf(M)) &lt; 0 &amp;&amp; (r = 0), n = 0; n &lt; r; ++n) t.charCodeAt(n) &gt;= 128 &amp;&amp; i("not-basic"), v.push(t.charCodeAt(n));
                        for (o = r &gt; 0 ? r + 1 : 0; o &lt; g;) {
                            for (s = y, a = 1, l = b; o &gt;= g &amp;&amp; i("invalid-input"), ((d = h(t.charCodeAt(o++))) &gt;= b || d &gt; D((_ - y) / a)) &amp;&amp; i("overflow"), y += d * a, f = l &lt;= w ? x : l &gt;= w + T ? T : l - w, !(d &lt; f); l += b) a &gt; D(_ / (p = b - f)) &amp;&amp; i("overflow"), a *= p;
                            w = c(y - s, e = v.length + 1, 0 == s), D(y / e) &gt; _ - m &amp;&amp; i("overflow"), m += D(y / e), y %= e, v.splice(y++, 0, m)
                        }
                        return u(v)
                    }

                    function f(t) {
                        var e, r, n, o, s, u, h, d, f, p, v, g, y, m, w, E = [];
                        for (g = (t = a(t)).length, e = O, r = 0, s = S, u = 0; u &lt; g; ++u)(v = t[u]) &lt; 128 &amp;&amp; E.push(L(v));
                        for (n = o = E.length, o &amp;&amp; E.push(M); n &lt; g;) {
                            for (h = _, u = 0; u &lt; g; ++u)(v = t[u]) &gt;= e &amp;&amp; v &lt; h &amp;&amp; (h = v);
                            for (h - e &gt; D((_ - r) / (y = n + 1)) &amp;&amp; i("overflow"), r += (h - e) * y, e = h, u = 0; u &lt; g; ++u)
                                if ((v = t[u]) &lt; e &amp;&amp; ++r &gt; _ &amp;&amp; i("overflow"), v == e) {
                                    for (d = r, f = b; p = f &lt;= s ? x : f &gt;= s + T ? T : f - s, !(d &lt; p); f += b) w = d - p, m = b - p, E.push(L(l(p + w % m, 0))), d = D(w / m);
                                    E.push(L(l(d, 0))), s = c(r, y, n == o), r = 0, ++n
                                }++r, ++e
                        }
                        return E.join("")
                    }
                    var p = "object" == typeof r &amp;&amp; r &amp;&amp; !r.nodeType &amp;&amp; r,
                        v = "object" == typeof e &amp;&amp; e &amp;&amp; !e.nodeType &amp;&amp; e,
                        g = "object" == typeof t &amp;&amp; t;
                    g.global !== g &amp;&amp; g.window !== g &amp;&amp; g.self !== g || (n = g);
                    var y, m, _ = 2147483647,
                        b = 36,
                        x = 1,
                        T = 26,
                        w = 38,
                        E = 700,
                        S = 72,
                        O = 128,
                        M = "-",
                        P = /^xn--/,
                        C = /[^\x20-\x7E]/,
                        R = /[\x2E\u3002\uFF0E\uFF61]/g,
                        A = {
                            overflow: "Overflow: input needs wider integers to process",
                            "not-basic": "Illegal input &gt;= 0x80 (not a basic code point)",
                            "invalid-input": "Invalid input"
                        },
                        I = b - x,
                        D = Math.floor,
                        L = String.fromCharCode;
                    if (y = {
                            version: "1.4.1",
                            ucs2: {
                                decode: a,
                                encode: u
                            },
                            decode: d,
                            encode: f,
                            toASCII: function(t) {
                                return s(t, function(t) {
                                    return C.test(t) ? "xn--" + f(t) : t
                                })
                            },
                            toUnicode: function(t) {
                                return s(t, function(t) {
                                    return P.test(t) ? d(t.slice(4).toLowerCase()) : t
                                })
                            }
                        }, p &amp;&amp; v)
                        if (e.exports == p) v.exports = y;
                        else
                            for (m in y) y.hasOwnProperty(m) &amp;&amp; (p[m] = y[m]);
                    else n.punycode = y
                }(this)
            }).call(this, "undefined" != typeof global ? global : "undefined" != typeof self ? self : "undefined" != typeof window ? window : {})
        }, {}],
        28: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                return Object.prototype.hasOwnProperty.call(t, e)
            }
            e.exports = function(t, e, r, o) {
                e = e || "&amp;", r = r || "=";
                var s = {};
                if ("string" != typeof t || 0 === t.length) return s;
                var a = /\+/g;
                t = t.split(e);
                var u = 1e3;
                o &amp;&amp; "number" == typeof o.maxKeys &amp;&amp; (u = o.maxKeys);
                var h = t.length;
                u &gt; 0 &amp;&amp; h &gt; u &amp;&amp; (h = u);
                for (var l = 0; l &lt; h; ++l) {
                    var c, d, f, p, v = t[l].replace(a, "%20"),
                        g = v.indexOf(r);
                    g &gt;= 0 ? (c = v.substr(0, g), d = v.substr(g + 1)) : (c = v, d = ""), f = decodeURIComponent(c), p = decodeURIComponent(d), n(s, f) ? i(s[f]) ? s[f].push(p) : s[f] = [s[f], p] : s[f] = p
                }
                return s
            };
            var i = Array.isArray || function(t) {
                return "[object Array]" === Object.prototype.toString.call(t)
            }
        }, {}],
        29: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (t.map) return t.map(e);
                for (var r = [], n = 0; n &lt; t.length; n++) r.push(e(t[n], n));
                return r
            }
            var i = function(t) {
                switch (typeof t) {
                    case "string":
                        return t;
                    case "boolean":
                        return t ? "true" : "false";
                    case "number":
                        return isFinite(t) ? t : "";
                    default:
                        return ""
                }
            };
            e.exports = function(t, e, r, a) {
                return e = e || "&amp;", r = r || "=", null === t &amp;&amp; (t = void 0), "object" == typeof t ? n(s(t), function(s) {
                    var a = encodeURIComponent(i(s)) + r;
                    return o(t[s]) ? n(t[s], function(t) {
                        return a + encodeURIComponent(i(t))
                    }).join(e) : a + encodeURIComponent(i(t[s]))
                }).join(e) : a ? encodeURIComponent(i(a)) + r + encodeURIComponent(i(t)) : ""
            };
            var o = Array.isArray || function(t) {
                    return "[object Array]" === Object.prototype.toString.call(t)
                },
                s = Object.keys || function(t) {
                    var e = [];
                    for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; e.push(r);
                    return e
                }
        }, {}],
        30: [function(t, e, r) {
            "use strict";
            r.decode = r.parse = t("./decode"), r.encode = r.stringify = t("./encode")
        }, {
            "./decode": 28,
            "./encode": 29
        }],
        31: [function(t, e, r) {
            "use strict";
            e.exports = function(t, e, r) {
                var n, i = t.length;
                if (!(e &gt;= i || 0 === r)) {
                    var o = i - (r = e + r &gt; i ? i - e : r);
                    for (n = e; n &lt; o; ++n) t[n] = t[n + r];
                    t.length = o
                }
            }
        }, {}],
        32: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var o = "function" == typeof Symbol &amp;&amp; "symbol" == typeof Symbol.iterator ? function(t) {
                    return typeof t
                } : function(t) {
                    return t &amp;&amp; "function" == typeof Symbol &amp;&amp; t.constructor === Symbol &amp;&amp; t !== Symbol.prototype ? "symbol" : typeof t
                },
                s = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                a = n(t("mini-signals")),
                u = n(t("parse-uri")),
                h = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("./async")),
                l = n(t("./Resource")),
                c = /(#[\w-]+)?$/,
                d = function() {
                    function t() {
                        var e = this,
                            r = arguments.length &gt; 0 &amp;&amp; void 0 !== arguments[0] ? arguments[0] : "",
                            n = arguments.length &gt; 1 &amp;&amp; void 0 !== arguments[1] ? arguments[1] : 10;
                        i(this, t), this.baseUrl = r, this.progress = 0, this.loading = !1, this.defaultQueryString = "", this._beforeMiddleware = [], this._afterMiddleware = [], this._resourcesParsing = [], this._boundLoadResource = function(t, r) {
                            return e._loadResource(t, r)
                        }, this._queue = h.queue(this._boundLoadResource, n), this._queue.pause(), this.resources = {}, this.onProgress = new a.default, this.onError = new a.default, this.onLoad = new a.default, this.onStart = new a.default, this.onComplete = new a.default
                    }
                    return t.prototype.add = function(t, e, r, n) {
                        if (Array.isArray(t)) {
                            for (var i = 0; i &lt; t.length; ++i) this.add(t[i]);
                            return this
                        }
                        if ("object" === (void 0 === t ? "undefined" : o(t)) &amp;&amp; (n = e || t.callback || t.onComplete, r = t, e = t.url, t = t.name || t.key || t.url), "string" != typeof e &amp;&amp; (n = r, r = e, e = t), "string" != typeof e) throw new Error("No url passed to add resource to loader.");
                        if ("function" == typeof r &amp;&amp; (n = r, r = null), this.loading &amp;&amp; (!r || !r.parentResource)) throw new Error("Cannot add resources while the loader is running.");
                        if (this.resources[t]) throw new Error('Resource named "' + t + '" already exists.');
                        if (e = this._prepareUrl(e), this.resources[t] = new l.default(t, e, r), "function" == typeof n &amp;&amp; this.resources[t].onAfterMiddleware.once(n), this.loading) {
                            for (var s = r.parentResource, a = [], u = 0; u &lt; s.children.length; ++u) s.children[u].isComplete || a.push(s.children[u]);
                            var h = s.progressChunk * (a.length + 1) / (a.length + 2);
                            s.children.push(this.resources[t]), s.progressChunk = h;
                            for (var c = 0; c &lt; a.length; ++c) a[c].progressChunk = h;
                            this.resources[t].progressChunk = h
                        }
                        return this._queue.push(this.resources[t]), this
                    }, t.prototype.pre = function(t) {
                        return this._beforeMiddleware.push(t), this
                    }, t.prototype.use = function(t) {
                        return this._afterMiddleware.push(t), this
                    }, t.prototype.reset = function() {
                        this.progress = 0, this.loading = !1, this._queue.kill(), this._queue.pause();
                        for (var t in this.resources) {
                            var e = this.resources[t];
                            e._onLoadBinding &amp;&amp; e._onLoadBinding.detach(), e.isLoading &amp;&amp; e.abort()
                        }
                        return this.resources = {}, this
                    }, t.prototype.load = function(t) {
                        if ("function" == typeof t &amp;&amp; this.onComplete.once(t), this.loading) return this;
                        if (this._queue.idle()) this._onStart(), this._onComplete();
                        else {
                            for (var e = 100 / this._queue._tasks.length, r = 0; r &lt; this._queue._tasks.length; ++r) this._queue._tasks[r].data.progressChunk = e;
                            this._onStart(), this._queue.resume()
                        }
                        return this
                    }, t.prototype._prepareUrl = function(t) {
                        var e = (0, u.default)(t, {
                                strictMode: !0
                            }),
                            r = void 0;
                        if (r = e.protocol || !e.path || 0 === t.indexOf("//") ? t : this.baseUrl.length &amp;&amp; this.baseUrl.lastIndexOf("/") !== this.baseUrl.length - 1 &amp;&amp; "/" !== t.charAt(0) ? this.baseUrl + "/" + t : this.baseUrl + t, this.defaultQueryString) {
                            var n = c.exec(r)[0]; - 1 !== (r = r.substr(0, r.length - n.length)).indexOf("?") ? r += "&amp;" + this.defaultQueryString : r += "?" + this.defaultQueryString, r += n
                        }
                        return r
                    }, t.prototype._loadResource = function(t, e) {
                        var r = this;
                        t._dequeue = e, h.eachSeries(this._beforeMiddleware, function(e, n) {
                            e.call(r, t, function() {
                                n(t.isComplete ? {} : null)
                            })
                        }, function() {
                            t.isComplete ? r._onLoad(t) : (t._onLoadBinding = t.onComplete.once(r._onLoad, r), t.load())
                        }, !0)
                    }, t.prototype._onStart = function() {
                        this.progress = 0, this.loading = !0, this.onStart.dispatch(this)
                    }, t.prototype._onComplete = function() {
                        this.progress = 100, this.loading = !1, this.onComplete.dispatch(this, this.resources)
                    }, t.prototype._onLoad = function(t) {
                        var e = this;
                        t._onLoadBinding = null, this._resourcesParsing.push(t), t._dequeue(), h.eachSeries(this._afterMiddleware, function(r, n) {
                            r.call(e, t, n)
                        }, function() {
                            t.onAfterMiddleware.dispatch(t), e.progress += t.progressChunk, e.onProgress.dispatch(e, t), t.error ? e.onError.dispatch(t.error, e, t) : e.onLoad.dispatch(e, t), e._resourcesParsing.splice(e._resourcesParsing.indexOf(t), 1), e._queue.idle() &amp;&amp; 0 === e._resourcesParsing.length &amp;&amp; e._onComplete()
                        }, !0)
                    }, s(t, [{
                        key: "concurrency",
                        get: function() {
                            return this._queue.concurrency
                        },
                        set: function(t) {
                            this._queue.concurrency = t
                        }
                    }]), t
                }();
            r.default = d
        }, {
            "./Resource": 33,
            "./async": 34,
            "mini-signals": 5,
            "parse-uri": 7
        }],
        33: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function o() {}

            function s(t, e, r) {
                e &amp;&amp; 0 === e.indexOf(".") &amp;&amp; (e = e.substring(1)), e &amp;&amp; (t[e] = r)
            }

            function a(t) {
                return t.toString().replace("object ", "")
            }
            r.__esModule = !0;
            var u = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                h = n(t("parse-uri")),
                l = n(t("mini-signals")),
                c = !(!window.XDomainRequest || "withCredentials" in new XMLHttpRequest),
                d = null,
                f = function() {
                    function t(e, r, n) {
                        if (i(this, t), "string" != typeof e || "string" != typeof r) throw new Error("Both name and url are required for constructing a resource.");
                        n = n || {}, this._flags = 0, this._setFlag(t.STATUS_FLAGS.DATA_URL, 0 === r.indexOf("data:")), this.name = e, this.url = r, this.extension = this._getExtension(), this.data = null, this.crossOrigin = !0 === n.crossOrigin ? "anonymous" : n.crossOrigin, this.loadType = n.loadType || this._determineLoadType(), this.xhrType = n.xhrType, this.metadata = n.metadata || {}, this.error = null, this.xhr = null, this.children = [], this.type = t.TYPE.UNKNOWN, this.progressChunk = 0, this._dequeue = o, this._onLoadBinding = null, this._boundComplete = this.complete.bind(this), this._boundOnError = this._onError.bind(this), this._boundOnProgress = this._onProgress.bind(this), this._boundXhrOnError = this._xhrOnError.bind(this), this._boundXhrOnAbort = this._xhrOnAbort.bind(this), this._boundXhrOnLoad = this._xhrOnLoad.bind(this), this._boundXdrOnTimeout = this._xdrOnTimeout.bind(this), this.onStart = new l.default, this.onProgress = new l.default, this.onComplete = new l.default, this.onAfterMiddleware = new l.default
                    }
                    return t.setExtensionLoadType = function(e, r) {
                        s(t._loadTypeMap, e, r)
                    }, t.setExtensionXhrType = function(e, r) {
                        s(t._xhrTypeMap, e, r)
                    }, t.prototype.complete = function() {
                        if (this.data &amp;&amp; this.data.removeEventListener &amp;&amp; (this.data.removeEventListener("error", this._boundOnError, !1), this.data.removeEventListener("load", this._boundComplete, !1), this.data.removeEventListener("progress", this._boundOnProgress, !1), this.data.removeEventListener("canplaythrough", this._boundComplete, !1)), this.xhr &amp;&amp; (this.xhr.removeEventListener ? (this.xhr.removeEventListener("error", this._boundXhrOnError, !1), this.xhr.removeEventListener("abort", this._boundXhrOnAbort, !1), this.xhr.removeEventListener("progress", this._boundOnProgress, !1), this.xhr.removeEventListener("load", this._boundXhrOnLoad, !1)) : (this.xhr.onerror = null, this.xhr.ontimeout = null, this.xhr.onprogress = null, this.xhr.onload = null)), this.isComplete) throw new Error("Complete called again for an already completed resource.");
                        this._setFlag(t.STATUS_FLAGS.COMPLETE, !0), this._setFlag(t.STATUS_FLAGS.LOADING, !1), this.onComplete.dispatch(this)
                    }, t.prototype.abort = function(e) {
                        if (!this.error) {
                            if (this.error = new Error(e), this.xhr) this.xhr.abort();
                            else if (this.xdr) this.xdr.abort();
                            else if (this.data)
                                if (this.data.src) this.data.src = t.EMPTY_GIF;
                                else
                                    for (; this.data.firstChild;) this.data.removeChild(this.data.firstChild);
                            this.complete()
                        }
                    }, t.prototype.load = function(e) {
                        var r = this;
                        if (!this.isLoading)
                            if (this.isComplete) e &amp;&amp; setTimeout(function() {
                                return e(r)
                            }, 1);
                            else switch (e &amp;&amp; this.onComplete.once(e), this._setFlag(t.STATUS_FLAGS.LOADING, !0), this.onStart.dispatch(this), !1 !== this.crossOrigin &amp;&amp; "string" == typeof this.crossOrigin || (this.crossOrigin = this._determineCrossOrigin(this.url)), this.loadType) {
                                case t.LOAD_TYPE.IMAGE:
                                    this.type = t.TYPE.IMAGE, this._loadElement("image");
                                    break;
                                case t.LOAD_TYPE.AUDIO:
                                    this.type = t.TYPE.AUDIO, this._loadSourceElement("audio");
                                    break;
                                case t.LOAD_TYPE.VIDEO:
                                    this.type = t.TYPE.VIDEO, this._loadSourceElement("video");
                                    break;
                                case t.LOAD_TYPE.XHR:
                                default:
                                    c &amp;&amp; this.crossOrigin ? this._loadXdr() : this._loadXhr()
                            }
                    }, t.prototype._hasFlag = function(t) {
                        return !!(this._flags &amp; t)
                    }, t.prototype._setFlag = function(t, e) {
                        this._flags = e ? this._flags | t : this._flags &amp; ~t
                    }, t.prototype._loadElement = function(t) {
                        this.metadata.loadElement ? this.data = this.metadata.loadElement : "image" === t &amp;&amp; void 0 !== window.Image ? this.data = new Image : this.data = document.createElement(t), this.crossOrigin &amp;&amp; (this.data.crossOrigin = this.crossOrigin), this.metadata.skipSource || (this.data.src = this.url), this.data.addEventListener("error", this._boundOnError, !1), this.data.addEventListener("load", this._boundComplete, !1), this.data.addEventListener("progress", this._boundOnProgress, !1)
                    }, t.prototype._loadSourceElement = function(t) {
                        if (this.metadata.loadElement ? this.data = this.metadata.loadElement : "audio" === t &amp;&amp; void 0 !== window.Audio ? this.data = new Audio : this.data = document.createElement(t), null !== this.data) {
                            if (!this.metadata.skipSource)
                                if (navigator.isCocoonJS) this.data.src = Array.isArray(this.url) ? this.url[0] : this.url;
                                else if (Array.isArray(this.url))
                                for (var e = this.metadata.mimeType, r = 0; r &lt; this.url.length; ++r) this.data.appendChild(this._createSource(t, this.url[r], Array.isArray(e) ? e[r] : e));
                            else {
                                var n = this.metadata.mimeType;
                                this.data.appendChild(this._createSource(t, this.url, Array.isArray(n) ? n[0] : n))
                            }
                            this.data.addEventListener("error", this._boundOnError, !1), this.data.addEventListener("load", this._boundComplete, !1), this.data.addEventListener("progress", this._boundOnProgress, !1), this.data.addEventListener("canplaythrough", this._boundComplete, !1), this.data.load()
                        } else this.abort("Unsupported element: " + t)
                    }, t.prototype._loadXhr = function() {
                        "string" != typeof this.xhrType &amp;&amp; (this.xhrType = this._determineXhrType());
                        var e = this.xhr = new XMLHttpRequest;
                        e.open("GET", this.url, !0), this.xhrType === t.XHR_RESPONSE_TYPE.JSON || this.xhrType === t.XHR_RESPONSE_TYPE.DOCUMENT ? e.responseType = t.XHR_RESPONSE_TYPE.TEXT : e.responseType = this.xhrType, e.addEventListener("error", this._boundXhrOnError, !1), e.addEventListener("abort", this._boundXhrOnAbort, !1), e.addEventListener("progress", this._boundOnProgress, !1), e.addEventListener("load", this._boundXhrOnLoad, !1), e.send()
                    }, t.prototype._loadXdr = function() {
                        "string" != typeof this.xhrType &amp;&amp; (this.xhrType = this._determineXhrType());
                        var t = this.xhr = new XDomainRequest;
                        t.timeout = 5e3, t.onerror = this._boundXhrOnError, t.ontimeout = this._boundXdrOnTimeout, t.onprogress = this._boundOnProgress, t.onload = this._boundXhrOnLoad, t.open("GET", this.url, !0), setTimeout(function() {
                            return t.send()
                        }, 1)
                    }, t.prototype._createSource = function(t, e, r) {
                        r || (r = t + "/" + this._getExtension(e));
                        var n = document.createElement("source");
                        return n.src = e, n.type = r, n
                    }, t.prototype._onError = function(t) {
                        this.abort("Failed to load element using: " + t.target.nodeName)
                    }, t.prototype._onProgress = function(t) {
                        t &amp;&amp; t.lengthComputable &amp;&amp; this.onProgress.dispatch(this, t.loaded / t.total)
                    }, t.prototype._xhrOnError = function() {
                        var t = this.xhr;
                        this.abort(a(t) + " Request failed. Status: " + t.status + ', text: "' + t.statusText + '"')
                    }, t.prototype._xhrOnAbort = function() {
                        this.abort(a(this.xhr) + " Request was aborted by the user.")
                    }, t.prototype._xdrOnTimeout = function() {
                        this.abort(a(this.xhr) + " Request timed out.")
                    }, t.prototype._xhrOnLoad = function() {
                        var e = this.xhr,
                            r = "",
                            n = void 0 === e.status ? 200 : e.status;
                        if ("" !== e.responseType &amp;&amp; "text" !== e.responseType &amp;&amp; void 0 !== e.responseType || (r = e.responseText), 0 === n &amp;&amp; (r.length &gt; 0 || e.responseType === t.XHR_RESPONSE_TYPE.BUFFER) ? n = 200 : 1223 === n &amp;&amp; (n = 204), 2 === (n / 100 | 0)) {
                            if (this.xhrType === t.XHR_RESPONSE_TYPE.TEXT) this.data = r, this.type = t.TYPE.TEXT;
                            else if (this.xhrType === t.XHR_RESPONSE_TYPE.JSON) try {
                                this.data = JSON.parse(r), this.type = t.TYPE.JSON
                            } catch (t) {
                                return void this.abort("Error trying to parse loaded json: " + t)
                            } else if (this.xhrType === t.XHR_RESPONSE_TYPE.DOCUMENT) try {
                                if (window.DOMParser) {
                                    var i = new DOMParser;
                                    this.data = i.parseFromString(r, "text/xml")
                                } else {
                                    var o = document.createElement("div");
                                    o.innerHTML = r, this.data = o
                                }
                                this.type = t.TYPE.XML
                            } catch (t) {
                                return void this.abort("Error trying to parse loaded xml: " + t)
                            } else this.data = e.response || r;
                            this.complete()
                        } else this.abort("[" + e.status + "] " + e.statusText + ": " + e.responseURL)
                    }, t.prototype._determineCrossOrigin = function(t, e) {
                        if (0 === t.indexOf("data:")) return "";
                        e = e || window.location, d || (d = document.createElement("a")), d.href = t;
                        var r = !(t = (0, h.default)(d.href, {
                                strictMode: !0
                            })).port &amp;&amp; "" === e.port || t.port === e.port,
                            n = t.protocol ? t.protocol + ":" : "";
                        return t.host === e.hostname &amp;&amp; r &amp;&amp; n === e.protocol ? "" : "anonymous"
                    }, t.prototype._determineXhrType = function() {
                        return t._xhrTypeMap[this.extension] || t.XHR_RESPONSE_TYPE.TEXT
                    }, t.prototype._determineLoadType = function() {
                        return t._loadTypeMap[this.extension] || t.LOAD_TYPE.XHR
                    }, t.prototype._getExtension = function() {
                        var t = this.url,
                            e = "";
                        if (this.isDataUrl) {
                            var r = t.indexOf("/");
                            e = t.substring(r + 1, t.indexOf(";", r))
                        } else {
                            var n = t.indexOf("?"),
                                i = t.indexOf("#"),
                                o = Math.min(n &gt; -1 ? n : t.length, i &gt; -1 ? i : t.length);
                            e = (t = t.substring(0, o)).substring(t.lastIndexOf(".") + 1)
                        }
                        return e.toLowerCase()
                    }, t.prototype._getMimeFromXhrType = function(e) {
                        switch (e) {
                            case t.XHR_RESPONSE_TYPE.BUFFER:
                                return "application/octet-binary";
                            case t.XHR_RESPONSE_TYPE.BLOB:
                                return "application/blob";
                            case t.XHR_RESPONSE_TYPE.DOCUMENT:
                                return "application/xml";
                            case t.XHR_RESPONSE_TYPE.JSON:
                                return "application/json";
                            case t.XHR_RESPONSE_TYPE.DEFAULT:
                            case t.XHR_RESPONSE_TYPE.TEXT:
                            default:
                                return "text/plain"
                        }
                    }, u(t, [{
                        key: "isDataUrl",
                        get: function() {
                            return this._hasFlag(t.STATUS_FLAGS.DATA_URL)
                        }
                    }, {
                        key: "isComplete",
                        get: function() {
                            return this._hasFlag(t.STATUS_FLAGS.COMPLETE)
                        }
                    }, {
                        key: "isLoading",
                        get: function() {
                            return this._hasFlag(t.STATUS_FLAGS.LOADING)
                        }
                    }]), t
                }();
            r.default = f, f.STATUS_FLAGS = {
                NONE: 0,
                DATA_URL: 1,
                COMPLETE: 2,
                LOADING: 4
            }, f.TYPE = {
                UNKNOWN: 0,
                JSON: 1,
                XML: 2,
                IMAGE: 3,
                AUDIO: 4,
                VIDEO: 5,
                TEXT: 6
            }, f.LOAD_TYPE = {
                XHR: 1,
                IMAGE: 2,
                AUDIO: 3,
                VIDEO: 4
            }, f.XHR_RESPONSE_TYPE = {
                DEFAULT: "text",
                BUFFER: "arraybuffer",
                BLOB: "blob",
                DOCUMENT: "document",
                JSON: "json",
                TEXT: "text"
            }, f._loadTypeMap = {
                gif: f.LOAD_TYPE.IMAGE,
                png: f.LOAD_TYPE.IMAGE,
                bmp: f.LOAD_TYPE.IMAGE,
                jpg: f.LOAD_TYPE.IMAGE,
                jpeg: f.LOAD_TYPE.IMAGE,
                tif: f.LOAD_TYPE.IMAGE,
                tiff: f.LOAD_TYPE.IMAGE,
                webp: f.LOAD_TYPE.IMAGE,
                tga: f.LOAD_TYPE.IMAGE,
                svg: f.LOAD_TYPE.IMAGE,
                "svg+xml": f.LOAD_TYPE.IMAGE,
                mp3: f.LOAD_TYPE.AUDIO,
                ogg: f.LOAD_TYPE.AUDIO,
                wav: f.LOAD_TYPE.AUDIO,
                mp4: f.LOAD_TYPE.VIDEO,
                webm: f.LOAD_TYPE.VIDEO
            }, f._xhrTypeMap = {
                xhtml: f.XHR_RESPONSE_TYPE.DOCUMENT,
                html: f.XHR_RESPONSE_TYPE.DOCUMENT,
                htm: f.XHR_RESPONSE_TYPE.DOCUMENT,
                xml: f.XHR_RESPONSE_TYPE.DOCUMENT,
                tmx: f.XHR_RESPONSE_TYPE.DOCUMENT,
                svg: f.XHR_RESPONSE_TYPE.DOCUMENT,
                tsx: f.XHR_RESPONSE_TYPE.DOCUMENT,
                gif: f.XHR_RESPONSE_TYPE.BLOB,
                png: f.XHR_RESPONSE_TYPE.BLOB,
                bmp: f.XHR_RESPONSE_TYPE.BLOB,
                jpg: f.XHR_RESPONSE_TYPE.BLOB,
                jpeg: f.XHR_RESPONSE_TYPE.BLOB,
                tif: f.XHR_RESPONSE_TYPE.BLOB,
                tiff: f.XHR_RESPONSE_TYPE.BLOB,
                webp: f.XHR_RESPONSE_TYPE.BLOB,
                tga: f.XHR_RESPONSE_TYPE.BLOB,
                json: f.XHR_RESPONSE_TYPE.JSON,
                text: f.XHR_RESPONSE_TYPE.TEXT,
                txt: f.XHR_RESPONSE_TYPE.TEXT,
                ttf: f.XHR_RESPONSE_TYPE.BUFFER,
                otf: f.XHR_RESPONSE_TYPE.BUFFER
            }, f.EMPTY_GIF = "data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="
        }, {
            "mini-signals": 5,
            "parse-uri": 7
        }],
        34: [function(t, e, r) {
            "use strict";

            function n() {}

            function i(t) {
                return function() {
                    if (null === t) throw new Error("Callback was already called.");
                    var e = t;
                    t = null, e.apply(this, arguments)
                }
            }
            r.__esModule = !0, r.eachSeries = function(t, e, r, n) {
                var i = 0,
                    o = t.length;
                ! function s(a) {
                    a || i === o ? r &amp;&amp; r(a) : n ? setTimeout(function() {
                        e(t[i++], s)
                    }, 1) : e(t[i++], s)
                }()
            }, r.queue = function(t, e) {
                function r(t, e, r) {
                    if (null != r &amp;&amp; "function" != typeof r) throw new Error("task callback must be a function");
                    if (a.started = !0, null == t &amp;&amp; a.idle()) setTimeout(function() {
                        return a.drain()
                    }, 1);
                    else {
                        var i = {
                            data: t,
                            callback: "function" == typeof r ? r : n
                        };
                        e ? a._tasks.unshift(i) : a._tasks.push(i), setTimeout(function() {
                            return a.process()
                        }, 1)
                    }
                }

                function o(t) {
                    return function() {
                        s -= 1, t.callback.apply(t, arguments), null != arguments[0] &amp;&amp; a.error(arguments[0], t.data), s &lt;= a.concurrency - a.buffer &amp;&amp; a.unsaturated(), a.idle() &amp;&amp; a.drain(), a.process()
                    }
                }
                if (null == e) e = 1;
                else if (0 === e) throw new Error("Concurrency must not be zero");
                var s = 0,
                    a = {
                        _tasks: [],
                        concurrency: e,
                        saturated: n,
                        unsaturated: n,
                        buffer: e / 4,
                        empty: n,
                        drain: n,
                        error: n,
                        started: !1,
                        paused: !1,
                        push: function(t, e) {
                            r(t, !1, e)
                        },
                        kill: function() {
                            s = 0, a.drain = n, a.started = !1, a._tasks = []
                        },
                        unshift: function(t, e) {
                            r(t, !0, e)
                        },
                        process: function() {
                            for (; !a.paused &amp;&amp; s &lt; a.concurrency &amp;&amp; a._tasks.length;) {
                                var e = a._tasks.shift();
                                0 === a._tasks.length &amp;&amp; a.empty(), (s += 1) === a.concurrency &amp;&amp; a.saturated(), t(e.data, i(o(e)))
                            }
                        },
                        length: function() {
                            return a._tasks.length
                        },
                        running: function() {
                            return s
                        },
                        idle: function() {
                            return a._tasks.length + s === 0
                        },
                        pause: function() {
                            !0 !== a.paused &amp;&amp; (a.paused = !0)
                        },
                        resume: function() {
                            if (!1 !== a.paused) {
                                a.paused = !1;
                                for (var t = 1; t &lt;= a.concurrency; t++) a.process()
                            }
                        }
                    };
                return a
            }
        }, {}],
        35: [function(t, e, r) {
            "use strict";
            r.__esModule = !0, r.encodeBinary = function(t) {
                for (var e = "", r = 0; r &lt; t.length;) {
                    for (var i = [0, 0, 0], o = [0, 0, 0, 0], s = 0; s &lt; i.length; ++s) r &lt; t.length ? i[s] = 255 &amp; t.charCodeAt(r++) : i[s] = 0;
                    switch (o[0] = i[0] &gt;&gt; 2, o[1] = (3 &amp; i[0]) &lt;&lt; 4 | i[1] &gt;&gt; 4, o[2] = (15 &amp; i[1]) &lt;&lt; 2 | i[2] &gt;&gt; 6, o[3] = 63 &amp; i[2], r - (t.length - 1)) {
                        case 2:
                            o[3] = 64, o[2] = 64;
                            break;
                        case 1:
                            o[3] = 64
                    }
                    for (var a = 0; a &lt; o.length; ++a) e += n.charAt(o[a])
                }
                return e
            };
            var n = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="
        }, {}],
        36: [function(t, e, r) {
            "use strict";
            var n = t("./Loader").default,
                i = t("./Resource").default,
                o = t("./async"),
                s = t("./b64");
            n.Resource = i, n.async = o, n.base64 = s, e.exports = n, e.exports.default = n
        }, {
            "./Loader": 32,
            "./Resource": 33,
            "./async": 34,
            "./b64": 35
        }],
        37: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }
            r.__esModule = !0;
            var i = "function" == typeof Symbol &amp;&amp; "symbol" == typeof Symbol.iterator ? function(t) {
                return typeof t
            } : function(t) {
                return t &amp;&amp; "function" == typeof Symbol &amp;&amp; t.constructor === Symbol &amp;&amp; t !== Symbol.prototype ? "symbol" : typeof t
            };
            r.blobMiddlewareFactory = function() {
                return function(t, e) {
                    if (t.data) {
                        if (t.xhr &amp;&amp; t.xhrType === o.default.XHR_RESPONSE_TYPE.BLOB)
                            if (window.Blob &amp;&amp; "string" != typeof t.data) {
                                if (0 === t.data.type.indexOf("image")) {
                                    var r = function() {
                                        var r = a.createObjectURL(t.data);
                                        return t.blob = t.data, t.data = new Image, t.data.src = r, t.type = o.default.TYPE.IMAGE, t.data.onload = function() {
                                            a.revokeObjectURL(r), t.data.onload = null, e()
                                        }, {
                                            v: void 0
                                        }
                                    }();
                                    if ("object" === (void 0 === r ? "undefined" : i(r))) return r.v
                                }
                            } else {
                                var n = t.xhr.getResponseHeader("content-type");
                                if (n &amp;&amp; 0 === n.indexOf("image")) return t.data = new Image, t.data.src = "data:" + n + ";base64," + s.default.encodeBinary(t.xhr.responseText), t.type = o.default.TYPE.IMAGE, void(t.data.onload = function() {
                                    t.data.onload = null, e()
                                })
                            }
                        e()
                    } else e()
                }
            };
            var o = n(t("../../Resource")),
                s = n(t("../../b64")),
                a = window.URL || window.webkitURL
        }, {
            "../../Resource": 33,
            "../../b64": 35
        }],
        38: [function(t, e, r) {
            "use strict";

            function n() {
                this.protocol = null, this.slashes = null, this.auth = null, this.host = null, this.port = null, this.hostname = null, this.hash = null, this.search = null, this.query = null, this.pathname = null, this.path = null, this.href = null
            }

            function i(t, e, r) {
                if (t &amp;&amp; s.isObject(t) &amp;&amp; t instanceof n) return t;
                var i = new n;
                return i.parse(t, e, r), i
            }
            var o = t("punycode"),
                s = t("./util");
            r.parse = i, r.resolve = function(t, e) {
                return i(t, !1, !0).resolve(e)
            }, r.resolveObject = function(t, e) {
                return t ? i(t, !1, !0).resolveObject(e) : e
            }, r.format = function(t) {
                return s.isString(t) &amp;&amp; (t = i(t)), t instanceof n ? t.format() : n.prototype.format.call(t)
            }, r.Url = n;
            var a = /^([a-z0-9.+-]+:)/i,
                u = /:[0-9]*$/,
                h = /^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,
                l = ["&lt;", "&gt;", '"', "`", " ", "\r", "\n", "\t"],
                c = ["{", "}", "|", "\\", "^", "`"].concat(l),
                d = ["'"].concat(c),
                f = ["%", "/", "?", ";", "#"].concat(d),
                p = ["/", "?", "#"],
                v = /^[+a-z0-9A-Z_-]{0,63}$/,
                g = /^([+a-z0-9A-Z_-]{0,63})(.*)$/,
                y = {
                    javascript: !0,
                    "javascript:": !0
                },
                m = {
                    javascript: !0,
                    "javascript:": !0
                },
                _ = {
                    http: !0,
                    https: !0,
                    ftp: !0,
                    gopher: !0,
                    file: !0,
                    "http:": !0,
                    "https:": !0,
                    "ftp:": !0,
                    "gopher:": !0,
                    "file:": !0
                },
                b = t("querystring");
            n.prototype.parse = function(t, e, r) {
                if (!s.isString(t)) throw new TypeError("Parameter 'url' must be a string, not " + typeof t);
                var n = t.indexOf("?"),
                    i = -1 !== n &amp;&amp; n &lt; t.indexOf("#") ? "?" : "#",
                    u = t.split(i),
                    l = /\\/g;
                u[0] = u[0].replace(l, "/");
                var c = t = u.join(i);
                if (c = c.trim(), !r &amp;&amp; 1 === t.split("#").length) {
                    var x = h.exec(c);
                    if (x) return this.path = c, this.href = c, this.pathname = x[1], x[2] ? (this.search = x[2], this.query = e ? b.parse(this.search.substr(1)) : this.search.substr(1)) : e &amp;&amp; (this.search = "", this.query = {}), this
                }
                var T = a.exec(c);
                if (T) {
                    var w = (T = T[0]).toLowerCase();
                    this.protocol = w, c = c.substr(T.length)
                }
                if (r || T || c.match(/^\/\/[^@\/]+@[^@\/]+/)) {
                    var E = "//" === c.substr(0, 2);
                    !E || T &amp;&amp; m[T] || (c = c.substr(2), this.slashes = !0)
                }
                if (!m[T] &amp;&amp; (E || T &amp;&amp; !_[T])) {
                    for (var S = -1, O = 0; O &lt; p.length; O++) - 1 !== (C = c.indexOf(p[O])) &amp;&amp; (-1 === S || C &lt; S) &amp;&amp; (S = C);
                    var M, P; - 1 !== (P = -1 === S ? c.lastIndexOf("@") : c.lastIndexOf("@", S)) &amp;&amp; (M = c.slice(0, P), c = c.slice(P + 1), this.auth = decodeURIComponent(M)), S = -1;
                    for (O = 0; O &lt; f.length; O++) {
                        var C = c.indexOf(f[O]); - 1 !== C &amp;&amp; (-1 === S || C &lt; S) &amp;&amp; (S = C)
                    } - 1 === S &amp;&amp; (S = c.length), this.host = c.slice(0, S), c = c.slice(S), this.parseHost(), this.hostname = this.hostname || "";
                    var R = "[" === this.hostname[0] &amp;&amp; "]" === this.hostname[this.hostname.length - 1];
                    if (!R)
                        for (var A = this.hostname.split(/\./), O = 0, I = A.length; O &lt; I; O++) {
                            var D = A[O];
                            if (D &amp;&amp; !D.match(v)) {
                                for (var L = "", N = 0, B = D.length; N &lt; B; N++) D.charCodeAt(N) &gt; 127 ? L += "x" : L += D[N];
                                if (!L.match(v)) {
                                    var k = A.slice(0, O),
                                        F = A.slice(O + 1),
                                        j = D.match(g);
                                    j &amp;&amp; (k.push(j[1]), F.unshift(j[2])), F.length &amp;&amp; (c = "/" + F.join(".") + c), this.hostname = k.join(".");
                                    break
                                }
                            }
                        }
                    this.hostname.length &gt; 255 ? this.hostname = "" : this.hostname = this.hostname.toLowerCase(), R || (this.hostname = o.toASCII(this.hostname));
                    var U = this.port ? ":" + this.port : "",
                        X = this.hostname || "";
                    this.host = X + U, this.href += this.host, R &amp;&amp; (this.hostname = this.hostname.substr(1, this.hostname.length - 2), "/" !== c[0] &amp;&amp; (c = "/" + c))
                }
                if (!y[w])
                    for (var O = 0, I = d.length; O &lt; I; O++) {
                        var G = d[O];
                        if (-1 !== c.indexOf(G)) {
                            var W = encodeURIComponent(G);
                            W === G &amp;&amp; (W = escape(G)), c = c.split(G).join(W)
                        }
                    }
                var H = c.indexOf("#"); - 1 !== H &amp;&amp; (this.hash = c.substr(H), c = c.slice(0, H));
                var V = c.indexOf("?");
                if (-1 !== V ? (this.search = c.substr(V), this.query = c.substr(V + 1), e &amp;&amp; (this.query = b.parse(this.query)), c = c.slice(0, V)) : e &amp;&amp; (this.search = "", this.query = {}), c &amp;&amp; (this.pathname = c), _[w] &amp;&amp; this.hostname &amp;&amp; !this.pathname &amp;&amp; (this.pathname = "/"), this.pathname || this.search) {
                    var U = this.pathname || "",
                        Y = this.search || "";
                    this.path = U + Y
                }
                return this.href = this.format(), this
            }, n.prototype.format = function() {
                var t = this.auth || "";
                t &amp;&amp; (t = (t = encodeURIComponent(t)).replace(/%3A/i, ":"), t += "@");
                var e = this.protocol || "",
                    r = this.pathname || "",
                    n = this.hash || "",
                    i = !1,
                    o = "";
                this.host ? i = t + this.host : this.hostname &amp;&amp; (i = t + (-1 === this.hostname.indexOf(":") ? this.hostname : "[" + this.hostname + "]"), this.port &amp;&amp; (i += ":" + this.port)), this.query &amp;&amp; s.isObject(this.query) &amp;&amp; Object.keys(this.query).length &amp;&amp; (o = b.stringify(this.query));
                var a = this.search || o &amp;&amp; "?" + o || "";
                return e &amp;&amp; ":" !== e.substr(-1) &amp;&amp; (e += ":"), this.slashes || (!e || _[e]) &amp;&amp; !1 !== i ? (i = "//" + (i || ""), r &amp;&amp; "/" !== r.charAt(0) &amp;&amp; (r = "/" + r)) : i || (i = ""), n &amp;&amp; "#" !== n.charAt(0) &amp;&amp; (n = "#" + n), a &amp;&amp; "?" !== a.charAt(0) &amp;&amp; (a = "?" + a), r = r.replace(/[?#]/g, function(t) {
                    return encodeURIComponent(t)
                }), a = a.replace("#", "%23"), e + i + r + a + n
            }, n.prototype.resolve = function(t) {
                return this.resolveObject(i(t, !1, !0)).format()
            }, n.prototype.resolveObject = function(t) {
                if (s.isString(t)) {
                    var e = new n;
                    e.parse(t, !1, !0), t = e
                }
                for (var r = new n, i = Object.keys(this), o = 0; o &lt; i.length; o++) {
                    var a = i[o];
                    r[a] = this[a]
                }
                if (r.hash = t.hash, "" === t.href) return r.href = r.format(), r;
                if (t.slashes &amp;&amp; !t.protocol) {
                    for (var u = Object.keys(t), h = 0; h &lt; u.length; h++) {
                        var l = u[h];
                        "protocol" !== l &amp;&amp; (r[l] = t[l])
                    }
                    return _[r.protocol] &amp;&amp; r.hostname &amp;&amp; !r.pathname &amp;&amp; (r.path = r.pathname = "/"), r.href = r.format(), r
                }
                if (t.protocol &amp;&amp; t.protocol !== r.protocol) {
                    if (!_[t.protocol]) {
                        for (var c = Object.keys(t), d = 0; d &lt; c.length; d++) {
                            var f = c[d];
                            r[f] = t[f]
                        }
                        return r.href = r.format(), r
                    }
                    if (r.protocol = t.protocol, t.host || m[t.protocol]) r.pathname = t.pathname;
                    else {
                        for (w = (t.pathname || "").split("/"); w.length &amp;&amp; !(t.host = w.shift()););
                        t.host || (t.host = ""), t.hostname || (t.hostname = ""), "" !== w[0] &amp;&amp; w.unshift(""), w.length &lt; 2 &amp;&amp; w.unshift(""), r.pathname = w.join("/")
                    }
                    if (r.search = t.search, r.query = t.query, r.host = t.host || "", r.auth = t.auth, r.hostname = t.hostname || t.host, r.port = t.port, r.pathname || r.search) {
                        var p = r.pathname || "",
                            v = r.search || "";
                        r.path = p + v
                    }
                    return r.slashes = r.slashes || t.slashes, r.href = r.format(), r
                }
                var g = r.pathname &amp;&amp; "/" === r.pathname.charAt(0),
                    y = t.host || t.pathname &amp;&amp; "/" === t.pathname.charAt(0),
                    b = y || g || r.host &amp;&amp; t.pathname,
                    x = b,
                    T = r.pathname &amp;&amp; r.pathname.split("/") || [],
                    w = t.pathname &amp;&amp; t.pathname.split("/") || [],
                    E = r.protocol &amp;&amp; !_[r.protocol];
                if (E &amp;&amp; (r.hostname = "", r.port = null, r.host &amp;&amp; ("" === T[0] ? T[0] = r.host : T.unshift(r.host)), r.host = "", t.protocol &amp;&amp; (t.hostname = null, t.port = null, t.host &amp;&amp; ("" === w[0] ? w[0] = t.host : w.unshift(t.host)), t.host = null), b = b &amp;&amp; ("" === w[0] || "" === T[0])), y) r.host = t.host || "" === t.host ? t.host : r.host, r.hostname = t.hostname || "" === t.hostname ? t.hostname : r.hostname, r.search = t.search, r.query = t.query, T = w;
                else if (w.length) T || (T = []), T.pop(), T = T.concat(w), r.search = t.search, r.query = t.query;
                else if (!s.isNullOrUndefined(t.search)) return E &amp;&amp; (r.hostname = r.host = T.shift(), (R = !!(r.host &amp;&amp; r.host.indexOf("@") &gt; 0) &amp;&amp; r.host.split("@")) &amp;&amp; (r.auth = R.shift(), r.host = r.hostname = R.shift())), r.search = t.search, r.query = t.query, s.isNull(r.pathname) &amp;&amp; s.isNull(r.search) || (r.path = (r.pathname ? r.pathname : "") + (r.search ? r.search : "")), r.href = r.format(), r;
                if (!T.length) return r.pathname = null, r.search ? r.path = "/" + r.search : r.path = null, r.href = r.format(), r;
                for (var S = T.slice(-1)[0], O = (r.host || t.host || T.length &gt; 1) &amp;&amp; ("." === S || ".." === S) || "" === S, M = 0, P = T.length; P &gt;= 0; P--) "." === (S = T[P]) ? T.splice(P, 1) : ".." === S ? (T.splice(P, 1), M++) : M &amp;&amp; (T.splice(P, 1), M--);
                if (!b &amp;&amp; !x)
                    for (; M--; M) T.unshift("..");
                !b || "" === T[0] || T[0] &amp;&amp; "/" === T[0].charAt(0) || T.unshift(""), O &amp;&amp; "/" !== T.join("/").substr(-1) &amp;&amp; T.push("");
                var C = "" === T[0] || T[0] &amp;&amp; "/" === T[0].charAt(0);
                if (E) {
                    r.hostname = r.host = C ? "" : T.length ? T.shift() : "";
                    var R = !!(r.host &amp;&amp; r.host.indexOf("@") &gt; 0) &amp;&amp; r.host.split("@");
                    R &amp;&amp; (r.auth = R.shift(), r.host = r.hostname = R.shift())
                }
                return (b = b || r.host &amp;&amp; T.length) &amp;&amp; !C &amp;&amp; T.unshift(""), T.length ? r.pathname = T.join("/") : (r.pathname = null, r.path = null), s.isNull(r.pathname) &amp;&amp; s.isNull(r.search) || (r.path = (r.pathname ? r.pathname : "") + (r.search ? r.search : "")), r.auth = t.auth || r.auth, r.slashes = r.slashes || t.slashes, r.href = r.format(), r
            }, n.prototype.parseHost = function() {
                var t = this.host,
                    e = u.exec(t);
                e &amp;&amp; (":" !== (e = e[0]) &amp;&amp; (this.port = e.substr(1)), t = t.substr(0, t.length - e.length)), t &amp;&amp; (this.hostname = t)
            }
        }, {
            "./util": 39,
            punycode: 27,
            querystring: 30
        }],
        39: [function(t, e, r) {
            "use strict";
            e.exports = {
                isString: function(t) {
                    return "string" == typeof t
                },
                isObject: function(t) {
                    return "object" == typeof t &amp;&amp; null !== t
                },
                isNull: function(t) {
                    return null === t
                },
                isNullOrUndefined: function(t) {
                    return null == t
                }
            }
        }, {}],
        40: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var o = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../core")),
                s = n(t("ismobilejs")),
                a = n(t("./accessibleTarget"));
            o.utils.mixins.delayMixin(o.DisplayObject.prototype, a.default);
            var u = 100,
                h = 0,
                l = 0,
                c = 2,
                d = function() {
                    function t(e) {
                        i(this, t), !s.default.tablet &amp;&amp; !s.default.phone || navigator.isCocoonJS || this.createTouchHook();
                        var r = document.createElement("div");
                        r.style.width = u + "px", r.style.height = u + "px", r.style.position = "absolute", r.style.top = h + "px", r.style.left = l + "px", r.style.zIndex = c, this.div = r, this.pool = [], this.renderId = 0, this.debug = !1, this.renderer = e, this.children = [], this._onKeyDown = this._onKeyDown.bind(this), this._onMouseMove = this._onMouseMove.bind(this), this.isActive = !1, this.isMobileAccessabillity = !1, window.addEventListener("keydown", this._onKeyDown, !1)
                    }
                    return t.prototype.createTouchHook = function() {
                        var t = this,
                            e = document.createElement("button");
                        e.style.width = "1px", e.style.height = "1px", e.style.position = "absolute", e.style.top = "-1000px", e.style.left = "-1000px", e.style.zIndex = 2, e.style.backgroundColor = "#FF0000", e.title = "HOOK DIV", e.addEventListener("focus", function() {
                            t.isMobileAccessabillity = !0, t.activate(), document.body.removeChild(e)
                        }), document.body.appendChild(e)
                    }, t.prototype.activate = function() {
                        this.isActive || (this.isActive = !0, window.document.addEventListener("mousemove", this._onMouseMove, !0), window.removeEventListener("keydown", this._onKeyDown, !1), this.renderer.on("postrender", this.update, this), this.renderer.view.parentNode &amp;&amp; this.renderer.view.parentNode.appendChild(this.div))
                    }, t.prototype.deactivate = function() {
                        this.isActive &amp;&amp; !this.isMobileAccessabillity &amp;&amp; (this.isActive = !1, window.document.removeEventListener("mousemove", this._onMouseMove), window.addEventListener("keydown", this._onKeyDown, !1), this.renderer.off("postrender", this.update), this.div.parentNode &amp;&amp; this.div.parentNode.removeChild(this.div))
                    }, t.prototype.updateAccessibleObjects = function(t) {
                        if (t.visible) {
                            t.accessible &amp;&amp; t.interactive &amp;&amp; (t._accessibleActive || this.addChild(t), t.renderId = this.renderId);
                            for (var e = t.children, r = 0; r &lt; e.length; r++) this.updateAccessibleObjects(e[r])
                        }
                    }, t.prototype.update = function() {
                        if (this.renderer.renderingToScreen) {
                            this.updateAccessibleObjects(this.renderer._lastObjectRendered);
                            var t = this.renderer.view.getBoundingClientRect(),
                                e = t.width / this.renderer.width,
                                r = t.height / this.renderer.height,
                                n = this.div;
                            n.style.left = t.left + "px", n.style.top = t.top + "px", n.style.width = this.renderer.width + "px", n.style.height = this.renderer.height + "px";
                            for (var i = 0; i &lt; this.children.length; i++) {
                                var s = this.children[i];
                                if (s.renderId !== this.renderId) s._accessibleActive = !1, o.utils.removeItems(this.children, i, 1), this.div.removeChild(s._accessibleDiv), this.pool.push(s._accessibleDiv), s._accessibleDiv = null, i--, 0 === this.children.length &amp;&amp; this.deactivate();
                                else {
                                    n = s._accessibleDiv;
                                    var a = s.hitArea,
                                        u = s.worldTransform;
                                    s.hitArea ? (n.style.left = (u.tx + a.x * u.a) * e + "px", n.style.top = (u.ty + a.y * u.d) * r + "px", n.style.width = a.width * u.a * e + "px", n.style.height = a.height * u.d * r + "px") : (a = s.getBounds(), this.capHitArea(a), n.style.left = a.x * e + "px", n.style.top = a.y * r + "px", n.style.width = a.width * e + "px", n.style.height = a.height * r + "px", n.title !== s.accessibleTitle &amp;&amp; null !== s.accessibleTitle &amp;&amp; (n.title = s.accessibleTitle), n.getAttribute("aria-label") !== s.accessibleHint &amp;&amp; null !== s.accessibleHint &amp;&amp; n.setAttribute("aria-label", s.accessibleHint))
                                }
                            }
                            this.renderId++
                        }
                    }, t.prototype.capHitArea = function(t) {
                        t.x &lt; 0 &amp;&amp; (t.width += t.x, t.x = 0), t.y &lt; 0 &amp;&amp; (t.height += t.y, t.y = 0), t.x + t.width &gt; this.renderer.width &amp;&amp; (t.width = this.renderer.width - t.x), t.y + t.height &gt; this.renderer.height &amp;&amp; (t.height = this.renderer.height - t.y)
                    }, t.prototype.addChild = function(t) {
                        var e = this.pool.pop();
                        e || ((e = document.createElement("button")).style.width = u + "px", e.style.height = u + "px", e.style.backgroundColor = this.debug ? "rgba(255,0,0,0.5)" : "transparent", e.style.position = "absolute", e.style.zIndex = c, e.style.borderStyle = "none", navigator.userAgent.toLowerCase().indexOf("chrome") &gt; -1 ? e.setAttribute("aria-live", "off") : e.setAttribute("aria-live", "polite"), navigator.userAgent.match(/rv:.*Gecko\//) ? e.setAttribute("aria-relevant", "additions") : e.setAttribute("aria-relevant", "text"), e.addEventListener("click", this._onClick.bind(this)), e.addEventListener("focus", this._onFocus.bind(this)), e.addEventListener("focusout", this._onFocusOut.bind(this))), t.accessibleTitle &amp;&amp; null !== t.accessibleTitle ? e.title = t.accessibleTitle : t.accessibleHint &amp;&amp; null !== t.accessibleHint || (e.title = "displayObject " + t.tabIndex), t.accessibleHint &amp;&amp; null !== t.accessibleHint &amp;&amp; e.setAttribute("aria-label", t.accessibleHint), t._accessibleActive = !0, t._accessibleDiv = e, e.displayObject = t, this.children.push(t), this.div.appendChild(t._accessibleDiv), t._accessibleDiv.tabIndex = t.tabIndex
                    }, t.prototype._onClick = function(t) {
                        var e = this.renderer.plugins.interaction;
                        e.dispatchEvent(t.target.displayObject, "click", e.eventData)
                    }, t.prototype._onFocus = function(t) {
                        t.target.getAttribute("aria-live", "off") || t.target.setAttribute("aria-live", "assertive");
                        var e = this.renderer.plugins.interaction;
                        e.dispatchEvent(t.target.displayObject, "mouseover", e.eventData)
                    }, t.prototype._onFocusOut = function(t) {
                        t.target.getAttribute("aria-live", "off") || t.target.setAttribute("aria-live", "polite");
                        var e = this.renderer.plugins.interaction;
                        e.dispatchEvent(t.target.displayObject, "mouseout", e.eventData)
                    }, t.prototype._onKeyDown = function(t) {
                        9 === t.keyCode &amp;&amp; this.activate()
                    }, t.prototype._onMouseMove = function(t) {
                        0 === t.movementX &amp;&amp; 0 === t.movementY || this.deactivate()
                    }, t.prototype.destroy = function() {
                        this.div = null;
                        for (var t = 0; t &lt; this.children.length; t++) this.children[t].div = null;
                        window.document.removeEventListener("mousemove", this._onMouseMove), window.removeEventListener("keydown", this._onKeyDown), this.pool = null, this.children = null, this.renderer = null
                    }, t
                }();
            r.default = d, o.WebGLRenderer.registerPlugin("accessibility", d), o.CanvasRenderer.registerPlugin("accessibility", d)
        }, {
            "../core": 65,
            "./accessibleTarget": 41,
            ismobilejs: 4
        }],
        41: [function(t, e, r) {
            "use strict";
            r.__esModule = !0, r.default = {
                accessible: !1,
                accessibleTitle: null,
                accessibleHint: null,
                tabIndex: 0,
                _accessibleActive: !1,
                _accessibleDiv: !1
            }
        }, {}],
        42: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }
            r.__esModule = !0;
            var i = t("./accessibleTarget");
            Object.defineProperty(r, "accessibleTarget", {
                enumerable: !0,
                get: function() {
                    return n(i).default
                }
            });
            var o = t("./AccessibilityManager");
            Object.defineProperty(r, "AccessibilityManager", {
                enumerable: !0,
                get: function() {
                    return n(o).default
                }
            })
        }, {
            "./AccessibilityManager": 40,
            "./accessibleTarget": 41
        }],
        43: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var o = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                s = t("./autoDetectRenderer"),
                a = n(t("./display/Container")),
                u = t("./ticker"),
                h = n(t("./settings")),
                l = t("./const"),
                c = function() {
                    function t(e, r, n, o, l) {
                        i(this, t), "number" == typeof e &amp;&amp; (e = Object.assign({
                            width: e,
                            height: r || h.default.RENDER_OPTIONS.height,
                            forceCanvas: !!o,
                            sharedTicker: !!l
                        }, n)), this._options = e = Object.assign({
                            autoStart: !0,
                            sharedTicker: !1,
                            forceCanvas: !1,
                            sharedLoader: !1
                        }, e), this.renderer = (0, s.autoDetectRenderer)(e), this.stage = new a.default, this._ticker = null, this.ticker = e.sharedTicker ? u.shared : new u.Ticker, e.autoStart &amp;&amp; this.start()
                    }
                    return t.prototype.render = function() {
                        this.renderer.render(this.stage)
                    }, t.prototype.stop = function() {
                        this._ticker.stop()
                    }, t.prototype.start = function() {
                        this._ticker.start()
                    }, t.prototype.destroy = function(t, e) {
                        if (this._ticker) {
                            var r = this._ticker;
                            this.ticker = null, r.destroy()
                        }
                        this.stage.destroy(e), this.stage = null, this.renderer.destroy(t), this.renderer = null, this._options = null
                    }, o(t, [{
                        key: "ticker",
                        set: function(t) {
                            this._ticker &amp;&amp; this._ticker.remove(this.render, this), this._ticker = t, t &amp;&amp; t.add(this.render, this, l.UPDATE_PRIORITY.LOW)
                        },
                        get: function() {
                            return this._ticker
                        }
                    }, {
                        key: "view",
                        get: function() {
                            return this.renderer.view
                        }
                    }, {
                        key: "screen",
                        get: function() {
                            return this.renderer.screen
                        }
                    }]), t
                }();
            r.default = c
        }, {
            "./autoDetectRenderer": 45,
            "./const": 46,
            "./display/Container": 48,
            "./settings": 101,
            "./ticker": 121
        }],
        44: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function i(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function o(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }

            function s(t, e) {
                if (t instanceof Array) {
                    if ("precision" !== t[0].substring(0, 9)) {
                        var r = t.slice(0);
                        return r.unshift("precision " + e + " float;"), r
                    }
                } else if ("precision" !== t.trim().substring(0, 9)) return "precision " + e + " float;\n" + t;
                return t
            }
            r.__esModule = !0;
            var a = t("pixi-gl-core"),
                u = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("./settings")),
                h = function(t) {
                    function e(r, o, a, h, l) {
                        return n(this, e), i(this, t.call(this, r, s(o, l || u.default.PRECISION_VERTEX), s(a, l || u.default.PRECISION_FRAGMENT), void 0, h))
                    }
                    return o(e, t), e
                }(a.GLShader);
            r.default = h
        }, {
            "./settings": 101,
            "pixi-gl-core": 15
        }],
        45: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }
            r.__esModule = !0, r.autoDetectRenderer = function(t, e, r, n) {
                var a = t &amp;&amp; t.forceCanvas;
                return void 0 !== n &amp;&amp; (a = n), !a &amp;&amp; i.isWebGLSupported() ? new s.default(t, e, r) : new o.default(t, e, r)
            };
            var i = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("./utils")),
                o = n(t("./renderers/canvas/CanvasRenderer")),
                s = n(t("./renderers/webgl/WebGLRenderer"))
        }, {
            "./renderers/canvas/CanvasRenderer": 77,
            "./renderers/webgl/WebGLRenderer": 84,
            "./utils": 125
        }],
        46: [function(t, e, r) {
            "use strict";
            r.__esModule = !0;
            r.VERSION = "4.8.1", r.PI_2 = 2 * Math.PI, r.RAD_TO_DEG = 180 / Math.PI, r.DEG_TO_RAD = Math.PI / 180, r.RENDERER_TYPE = {
                UNKNOWN: 0,
                WEBGL: 1,
                CANVAS: 2
            }, r.BLEND_MODES = {
                NORMAL: 0,
                ADD: 1,
                MULTIPLY: 2,
                SCREEN: 3,
                OVERLAY: 4,
                DARKEN: 5,
                LIGHTEN: 6,
                COLOR_DODGE: 7,
                COLOR_BURN: 8,
                HARD_LIGHT: 9,
                SOFT_LIGHT: 10,
                DIFFERENCE: 11,
                EXCLUSION: 12,
                HUE: 13,
                SATURATION: 14,
                COLOR: 15,
                LUMINOSITY: 16,
                NORMAL_NPM: 17,
                ADD_NPM: 18,
                SCREEN_NPM: 19
            }, r.DRAW_MODES = {
                POINTS: 0,
                LINES: 1,
                LINE_LOOP: 2,
                LINE_STRIP: 3,
                TRIANGLES: 4,
                TRIANGLE_STRIP: 5,
                TRIANGLE_FAN: 6
            }, r.SCALE_MODES = {
                LINEAR: 0,
                NEAREST: 1
            }, r.WRAP_MODES = {
                CLAMP: 0,
                REPEAT: 1,
                MIRRORED_REPEAT: 2
            }, r.GC_MODES = {
                AUTO: 0,
                MANUAL: 1
            }, r.URL_FILE_EXTENSION = /\.(\w{3,4})(?:$|\?|#)/i, r.DATA_URI = /^\s*data:(?:([\w-]+)\/([\w+.-]+))?(?:;charset=([\w-]+))?(?:;(base64))?,(.*)/i, r.SVG_SIZE = /&lt;svg[^&gt;]*(?:\s(width|height)=('|")(\d*(?:\.\d+)?)(?:px)?('|"))[^&gt;]*(?:\s(width|height)=('|")(\d*(?:\.\d+)?)(?:px)?('|"))[^&gt;]*&gt;/i, r.SHAPES = {
                POLY: 0,
                RECT: 1,
                CIRC: 2,
                ELIP: 3,
                RREC: 4
            }, r.PRECISION = {
                LOW: "lowp",
                MEDIUM: "mediump",
                HIGH: "highp"
            }, r.TRANSFORM_MODE = {
                STATIC: 0,
                DYNAMIC: 1
            }, r.TEXT_GRADIENT = {
                LINEAR_VERTICAL: 0,
                LINEAR_HORIZONTAL: 1
            }, r.UPDATE_PRIORITY = {
                INTERACTION: 50,
                HIGH: 25,
                NORMAL: 0,
                LOW: -25,
                UTILITY: -50
            }
        }, {}],
        47: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = t("../math"),
                o = function() {
                    function t() {
                        n(this, t), this.minX = 1 / 0, this.minY = 1 / 0, this.maxX = -1 / 0, this.maxY = -1 / 0, this.rect = null
                    }
                    return t.prototype.isEmpty = function() {
                        return this.minX &gt; this.maxX || this.minY &gt; this.maxY
                    }, t.prototype.clear = function() {
                        this.updateID++, this.minX = 1 / 0, this.minY = 1 / 0, this.maxX = -1 / 0, this.maxY = -1 / 0
                    }, t.prototype.getRectangle = function(t) {
                        return this.minX &gt; this.maxX || this.minY &gt; this.maxY ? i.Rectangle.EMPTY : (t = t || new i.Rectangle(0, 0, 1, 1), t.x = this.minX, t.y = this.minY, t.width = this.maxX - this.minX, t.height = this.maxY - this.minY, t)
                    }, t.prototype.addPoint = function(t) {
                        this.minX = Math.min(this.minX, t.x), this.maxX = Math.max(this.maxX, t.x), this.minY = Math.min(this.minY, t.y), this.maxY = Math.max(this.maxY, t.y)
                    }, t.prototype.addQuad = function(t) {
                        var e = this.minX,
                            r = this.minY,
                            n = this.maxX,
                            i = this.maxY,
                            o = t[0],
                            s = t[1];
                        e = o &lt; e ? o : e, r = s &lt; r ? s : r, n = o &gt; n ? o : n, i = s &gt; i ? s : i, o = t[2], s = t[3], e = o &lt; e ? o : e, r = s &lt; r ? s : r, n = o &gt; n ? o : n, i = s &gt; i ? s : i, o = t[4], s = t[5], e = o &lt; e ? o : e, r = s &lt; r ? s : r, n = o &gt; n ? o : n, i = s &gt; i ? s : i, o = t[6], s = t[7], e = o &lt; e ? o : e, r = s &lt; r ? s : r, n = o &gt; n ? o : n, i = s &gt; i ? s : i, this.minX = e, this.minY = r, this.maxX = n, this.maxY = i
                    }, t.prototype.addFrame = function(t, e, r, n, i) {
                        var o = t.worldTransform,
                            s = o.a,
                            a = o.b,
                            u = o.c,
                            h = o.d,
                            l = o.tx,
                            c = o.ty,
                            d = this.minX,
                            f = this.minY,
                            p = this.maxX,
                            v = this.maxY,
                            g = s * e + u * r + l,
                            y = a * e + h * r + c;
                        d = g &lt; d ? g : d, f = y &lt; f ? y : f, p = g &gt; p ? g : p, v = y &gt; v ? y : v, y = a * n + h * r + c, d = (g = s * n + u * r + l) &lt; d ? g : d, f = y &lt; f ? y : f, p = g &gt; p ? g : p, v = y &gt; v ? y : v, y = a * e + h * i + c, d = (g = s * e + u * i + l) &lt; d ? g : d, f = y &lt; f ? y : f, p = g &gt; p ? g : p, v = y &gt; v ? y : v, y = a * n + h * i + c, d = (g = s * n + u * i + l) &lt; d ? g : d, f = y &lt; f ? y : f, p = g &gt; p ? g : p, v = y &gt; v ? y : v, this.minX = d, this.minY = f, this.maxX = p, this.maxY = v
                    }, t.prototype.addVertices = function(t, e, r, n) {
                        for (var i = t.worldTransform, o = i.a, s = i.b, a = i.c, u = i.d, h = i.tx, l = i.ty, c = this.minX, d = this.minY, f = this.maxX, p = this.maxY, v = r; v &lt; n; v += 2) {
                            var g = e[v],
                                y = e[v + 1],
                                m = o * g + a * y + h,
                                _ = u * y + s * g + l;
                            c = m &lt; c ? m : c, d = _ &lt; d ? _ : d, f = m &gt; f ? m : f, p = _ &gt; p ? _ : p
                        }
                        this.minX = c, this.minY = d, this.maxX = f, this.maxY = p
                    }, t.prototype.addBounds = function(t) {
                        var e = this.minX,
                            r = this.minY,
                            n = this.maxX,
                            i = this.maxY;
                        this.minX = t.minX &lt; e ? t.minX : e, this.minY = t.minY &lt; r ? t.minY : r, this.maxX = t.maxX &gt; n ? t.maxX : n, this.maxY = t.maxY &gt; i ? t.maxY : i
                    }, t.prototype.addBoundsMask = function(t, e) {
                        var r = t.minX &gt; e.minX ? t.minX : e.minX,
                            n = t.minY &gt; e.minY ? t.minY : e.minY,
                            i = t.maxX &lt; e.maxX ? t.maxX : e.maxX,
                            o = t.maxY &lt; e.maxY ? t.maxY : e.maxY;
                        if (r &lt;= i &amp;&amp; n &lt;= o) {
                            var s = this.minX,
                                a = this.minY,
                                u = this.maxX,
                                h = this.maxY;
                            this.minX = r &lt; s ? r : s, this.minY = n &lt; a ? n : a, this.maxX = i &gt; u ? i : u, this.maxY = o &gt; h ? o : h
                        }
                    }, t.prototype.addBoundsArea = function(t, e) {
                        var r = t.minX &gt; e.x ? t.minX : e.x,
                            n = t.minY &gt; e.y ? t.minY : e.y,
                            i = t.maxX &lt; e.x + e.width ? t.maxX : e.x + e.width,
                            o = t.maxY &lt; e.y + e.height ? t.maxY : e.y + e.height;
                        if (r &lt;= i &amp;&amp; n &lt;= o) {
                            var s = this.minX,
                                a = this.minY,
                                u = this.maxX,
                                h = this.maxY;
                            this.minX = r &lt; s ? r : s, this.minY = n &lt; a ? n : a, this.maxX = i &gt; u ? i : u, this.maxY = o &gt; h ? o : h
                        }
                    }, t
                }();
            r.default = o
        }, {
            "../math": 70
        }],
        48: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function i(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function o(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var s = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                a = t("../utils"),
                u = function(t) {
                    function e() {
                        n(this, e);
                        var r = i(this, t.call(this));
                        return r.children = [], r
                    }
                    return o(e, t), e.prototype.onChildrenChange = function() {}, e.prototype.addChild = function(t) {
                        var e = arguments.length;
                        if (e &gt; 1)
                            for (var r = 0; r &lt; e; r++) this.addChild(arguments[r]);
                        else t.parent &amp;&amp; t.parent.removeChild(t), t.parent = this, t.transform._parentID = -1, this.children.push(t), this._boundsID++, this.onChildrenChange(this.children.length - 1), t.emit("added", this);
                        return t
                    }, e.prototype.addChildAt = function(t, e) {
                        if (e &lt; 0 || e &gt; this.children.length) throw new Error(t + "addChildAt: The index " + e + " supplied is out of bounds " + this.children.length);
                        return t.parent &amp;&amp; t.parent.removeChild(t), t.parent = this, t.transform._parentID = -1, this.children.splice(e, 0, t), this._boundsID++, this.onChildrenChange(e), t.emit("added", this), t
                    }, e.prototype.swapChildren = function(t, e) {
                        if (t !== e) {
                            var r = this.getChildIndex(t),
                                n = this.getChildIndex(e);
                            this.children[r] = e, this.children[n] = t, this.onChildrenChange(r &lt; n ? r : n)
                        }
                    }, e.prototype.getChildIndex = function(t) {
                        var e = this.children.indexOf(t);
                        if (-1 === e) throw new Error("The supplied DisplayObject must be a child of the caller");
                        return e
                    }, e.prototype.setChildIndex = function(t, e) {
                        if (e &lt; 0 || e &gt;= this.children.length) throw new Error("The index " + e + " supplied is out of bounds " + this.children.length);
                        var r = this.getChildIndex(t);
                        (0, a.removeItems)(this.children, r, 1), this.children.splice(e, 0, t), this.onChildrenChange(e)
                    }, e.prototype.getChildAt = function(t) {
                        if (t &lt; 0 || t &gt;= this.children.length) throw new Error("getChildAt: Index (" + t + ") does not exist.");
                        return this.children[t]
                    }, e.prototype.removeChild = function(t) {
                        var e = arguments.length;
                        if (e &gt; 1)
                            for (var r = 0; r &lt; e; r++) this.removeChild(arguments[r]);
                        else {
                            var n = this.children.indexOf(t);
                            if (-1 === n) return null;
                            t.parent = null, t.transform._parentID = -1, (0, a.removeItems)(this.children, n, 1), this._boundsID++, this.onChildrenChange(n), t.emit("removed", this)
                        }
                        return t
                    }, e.prototype.removeChildAt = function(t) {
                        var e = this.getChildAt(t);
                        return e.parent = null, e.transform._parentID = -1, (0, a.removeItems)(this.children, t, 1), this._boundsID++, this.onChildrenChange(t), e.emit("removed", this), e
                    }, e.prototype.removeChildren = function() {
                        var t = arguments.length &gt; 0 &amp;&amp; void 0 !== arguments[0] ? arguments[0] : 0,
                            e = arguments[1],
                            r = t,
                            n = "number" == typeof e ? e : this.children.length,
                            i = n - r,
                            o = void 0;
                        if (i &gt; 0 &amp;&amp; i &lt;= n) {
                            o = this.children.splice(r, i);
                            for (var s = 0; s &lt; o.length; ++s) o[s].parent = null, o[s].transform &amp;&amp; (o[s].transform._parentID = -1);
                            this._boundsID++, this.onChildrenChange(t);
                            for (var a = 0; a &lt; o.length; ++a) o[a].emit("removed", this);
                            return o
                        }
                        if (0 === i &amp;&amp; 0 === this.children.length) return [];
                        throw new RangeError("removeChildren: numeric values are outside the acceptable range.")
                    }, e.prototype.updateTransform = function() {
                        this._boundsID++, this.transform.updateTransform(this.parent.transform), this.worldAlpha = this.alpha * this.parent.worldAlpha;
                        for (var t = 0, e = this.children.length; t &lt; e; ++t) {
                            var r = this.children[t];
                            r.visible &amp;&amp; r.updateTransform()
                        }
                    }, e.prototype.calculateBounds = function() {
                        this._bounds.clear(), this._calculateBounds();
                        for (var t = 0; t &lt; this.children.length; t++) {
                            var e = this.children[t];
                            e.visible &amp;&amp; e.renderable &amp;&amp; (e.calculateBounds(), e._mask ? (e._mask.calculateBounds(), this._bounds.addBoundsMask(e._bounds, e._mask._bounds)) : e.filterArea ? this._bounds.addBoundsArea(e._bounds, e.filterArea) : this._bounds.addBounds(e._bounds))
                        }
                        this._lastBoundsID = this._boundsID
                    }, e.prototype._calculateBounds = function() {}, e.prototype.renderWebGL = function(t) {
                        if (this.visible &amp;&amp; !(this.worldAlpha &lt;= 0) &amp;&amp; this.renderable)
                            if (this._mask || this._filters) this.renderAdvancedWebGL(t);
                            else {
                                this._renderWebGL(t);
                                for (var e = 0, r = this.children.length; e &lt; r; ++e) this.children[e].renderWebGL(t)
                            }
                    }, e.prototype.renderAdvancedWebGL = function(t) {
                        t.flush();
                        var e = this._filters,
                            r = this._mask;
                        if (e) {
                            this._enabledFilters || (this._enabledFilters = []), this._enabledFilters.length = 0;
                            for (var n = 0; n &lt; e.length; n++) e[n].enabled &amp;&amp; this._enabledFilters.push(e[n]);
                            this._enabledFilters.length &amp;&amp; t.filterManager.pushFilter(this, this._enabledFilters)
                        }
                        r &amp;&amp; t.maskManager.pushMask(this, this._mask), this._renderWebGL(t);
                        for (var i = 0, o = this.children.length; i &lt; o; i++) this.children[i].renderWebGL(t);
                        t.flush(), r &amp;&amp; t.maskManager.popMask(this, this._mask), e &amp;&amp; this._enabledFilters &amp;&amp; this._enabledFilters.length &amp;&amp; t.filterManager.popFilter()
                    }, e.prototype._renderWebGL = function(t) {}, e.prototype._renderCanvas = function(t) {}, e.prototype.renderCanvas = function(t) {
                        if (this.visible &amp;&amp; !(this.worldAlpha &lt;= 0) &amp;&amp; this.renderable) {
                            this._mask &amp;&amp; t.maskManager.pushMask(this._mask), this._renderCanvas(t);
                            for (var e = 0, r = this.children.length; e &lt; r; ++e) this.children[e].renderCanvas(t);
                            this._mask &amp;&amp; t.maskManager.popMask(t)
                        }
                    }, e.prototype.destroy = function(e) {
                        t.prototype.destroy.call(this);
                        var r = "boolean" == typeof e ? e : e &amp;&amp; e.children,
                            n = this.removeChildren(0, this.children.length);
                        if (r)
                            for (var i = 0; i &lt; n.length; ++i) n[i].destroy(e)
                    }, s(e, [{
                        key: "width",
                        get: function() {
                            return this.scale.x * this.getLocalBounds().width
                        },
                        set: function(t) {
                            var e = this.getLocalBounds().width;
                            this.scale.x = 0 !== e ? t / e : 1, this._width = t
                        }
                    }, {
                        key: "height",
                        get: function() {
                            return this.scale.y * this.getLocalBounds().height
                        },
                        set: function(t) {
                            var e = this.getLocalBounds().height;
                            this.scale.y = 0 !== e ? t / e : 1, this._height = t
                        }
                    }]), e
                }(function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("./DisplayObject")).default);
            r.default = u, u.prototype.containerUpdateTransform = u.prototype.updateTransform
        }, {
            "../utils": 125,
            "./DisplayObject": 49
        }],
        49: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function o(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function s(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var a = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                u = n(t("eventemitter3")),
                h = t("../const"),
                l = n(t("../settings")),
                c = n(t("./TransformStatic")),
                d = n(t("./Transform")),
                f = n(t("./Bounds")),
                p = t("../math"),
                v = function(t) {
                    function e() {
                        i(this, e);
                        var r = o(this, t.call(this)),
                            n = l.default.TRANSFORM_MODE === h.TRANSFORM_MODE.STATIC ? c.default : d.default;
                        return r.tempDisplayObjectParent = null, r.transform = new n, r.alpha = 1, r.visible = !0, r.renderable = !0, r.parent = null, r.worldAlpha = 1, r.filterArea = null, r._filters = null, r._enabledFilters = null, r._bounds = new f.default, r._boundsID = 0, r._lastBoundsID = -1, r._boundsRect = null, r._localBoundsRect = null, r._mask = null, r._destroyed = !1, r
                    }
                    return s(e, t), e.prototype.updateTransform = function() {
                        this.transform.updateTransform(this.parent.transform), this.worldAlpha = this.alpha * this.parent.worldAlpha, this._bounds.updateID++
                    }, e.prototype._recursivePostUpdateTransform = function() {
                        this.parent ? (this.parent._recursivePostUpdateTransform(), this.transform.updateTransform(this.parent.transform)) : this.transform.updateTransform(this._tempDisplayObjectParent.transform)
                    }, e.prototype.getBounds = function(t, e) {
                        return t || (this.parent ? (this._recursivePostUpdateTransform(), this.updateTransform()) : (this.parent = this._tempDisplayObjectParent, this.updateTransform(), this.parent = null)), this._boundsID !== this._lastBoundsID &amp;&amp; this.calculateBounds(), e || (this._boundsRect || (this._boundsRect = new p.Rectangle), e = this._boundsRect), this._bounds.getRectangle(e)
                    }, e.prototype.getLocalBounds = function(t) {
                        var e = this.transform,
                            r = this.parent;
                        this.parent = null, this.transform = this._tempDisplayObjectParent.transform, t || (this._localBoundsRect || (this._localBoundsRect = new p.Rectangle), t = this._localBoundsRect);
                        var n = this.getBounds(!1, t);
                        return this.parent = r, this.transform = e, n
                    }, e.prototype.toGlobal = function(t, e) {
                        return arguments.length &gt; 2 &amp;&amp; void 0 !== arguments[2] &amp;&amp; arguments[2] || (this._recursivePostUpdateTransform(), this.parent ? this.displayObjectUpdateTransform() : (this.parent = this._tempDisplayObjectParent, this.displayObjectUpdateTransform(), this.parent = null)), this.worldTransform.apply(t, e)
                    }, e.prototype.toLocal = function(t, e, r, n) {
                        return e &amp;&amp; (t = e.toGlobal(t, r, n)), n || (this._recursivePostUpdateTransform(), this.parent ? this.displayObjectUpdateTransform() : (this.parent = this._tempDisplayObjectParent, this.displayObjectUpdateTransform(), this.parent = null)), this.worldTransform.applyInverse(t, r)
                    }, e.prototype.renderWebGL = function(t) {}, e.prototype.renderCanvas = function(t) {}, e.prototype.setParent = function(t) {
                        if (!t || !t.addChild) throw new Error("setParent: Argument must be a Container");
                        return t.addChild(this), t
                    }, e.prototype.setTransform = function() {
                        var t = arguments.length &gt; 0 &amp;&amp; void 0 !== arguments[0] ? arguments[0] : 0,
                            e = arguments.length &gt; 1 &amp;&amp; void 0 !== arguments[1] ? arguments[1] : 0,
                            r = arguments.length &gt; 2 &amp;&amp; void 0 !== arguments[2] ? arguments[2] : 1,
                            n = arguments.length &gt; 3 &amp;&amp; void 0 !== arguments[3] ? arguments[3] : 1,
                            i = arguments.length &gt; 4 &amp;&amp; void 0 !== arguments[4] ? arguments[4] : 0,
                            o = arguments.length &gt; 5 &amp;&amp; void 0 !== arguments[5] ? arguments[5] : 0,
                            s = arguments.length &gt; 6 &amp;&amp; void 0 !== arguments[6] ? arguments[6] : 0,
                            a = arguments.length &gt; 7 &amp;&amp; void 0 !== arguments[7] ? arguments[7] : 0,
                            u = arguments.length &gt; 8 &amp;&amp; void 0 !== arguments[8] ? arguments[8] : 0;
                        return this.position.x = t, this.position.y = e, this.scale.x = r || 1, this.scale.y = n || 1, this.rotation = i, this.skew.x = o, this.skew.y = s, this.pivot.x = a, this.pivot.y = u, this
                    }, e.prototype.destroy = function() {
                        this.removeAllListeners(), this.parent &amp;&amp; this.parent.removeChild(this), this.transform = null, this.parent = null, this._bounds = null, this._currentBounds = null, this._mask = null, this.filterArea = null, this.interactive = !1, this.interactiveChildren = !1, this._destroyed = !0
                    }, a(e, [{
                        key: "_tempDisplayObjectParent",
                        get: function() {
                            return null === this.tempDisplayObjectParent &amp;&amp; (this.tempDisplayObjectParent = new e), this.tempDisplayObjectParent
                        }
                    }, {
                        key: "x",
                        get: function() {
                            return this.position.x
                        },
                        set: function(t) {
                            this.transform.position.x = t
                        }
                    }, {
                        key: "y",
                        get: function() {
                            return this.position.y
                        },
                        set: function(t) {
                            this.transform.position.y = t
                        }
                    }, {
                        key: "worldTransform",
                        get: function() {
                            return this.transform.worldTransform
                        }
                    }, {
                        key: "localTransform",
                        get: function() {
                            return this.transform.localTransform
                        }
                    }, {
                        key: "position",
                        get: function() {
                            return this.transform.position
                        },
                        set: function(t) {
                            this.transform.position.copy(t)
                        }
                    }, {
                        key: "scale",
                        get: function() {
                            return this.transform.scale
                        },
                        set: function(t) {
                            this.transform.scale.copy(t)
                        }
                    }, {
                        key: "pivot",
                        get: function() {
                            return this.transform.pivot
                        },
                        set: function(t) {
                            this.transform.pivot.copy(t)
                        }
                    }, {
                        key: "skew",
                        get: function() {
                            return this.transform.skew
                        },
                        set: function(t) {
                            this.transform.skew.copy(t)
                        }
                    }, {
                        key: "rotation",
                        get: function() {
                            return this.transform.rotation
                        },
                        set: function(t) {
                            this.transform.rotation = t
                        }
                    }, {
                        key: "worldVisible",
                        get: function() {
                            var t = this;
                            do {
                                if (!t.visible) return !1;
                                t = t.parent
                            } while (t);
                            return !0
                        }
                    }, {
                        key: "mask",
                        get: function() {
                            return this._mask
                        },
                        set: function(t) {
                            this._mask &amp;&amp; (this._mask.renderable = !0, this._mask.isMask = !1), this._mask = t, this._mask &amp;&amp; (this._mask.renderable = !1, this._mask.isMask = !0)
                        }
                    }, {
                        key: "filters",
                        get: function() {
                            return this._filters &amp;&amp; this._filters.slice()
                        },
                        set: function(t) {
                            this._filters = t &amp;&amp; t.slice()
                        }
                    }]), e
                }(u.default);
            r.default = v, v.prototype.displayObjectUpdateTransform = v.prototype.updateTransform
        }, {
            "../const": 46,
            "../math": 70,
            "../settings": 101,
            "./Bounds": 47,
            "./Transform": 50,
            "./TransformStatic": 52,
            eventemitter3: 3
        }],
        50: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function i(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function o(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var s = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                a = t("../math"),
                u = function(t) {
                    function e() {
                        n(this, e);
                        var r = i(this, t.call(this));
                        return r.position = new a.Point(0, 0), r.scale = new a.Point(1, 1), r.skew = new a.ObservablePoint(r.updateSkew, r, 0, 0), r.pivot = new a.Point(0, 0), r._rotation = 0, r._cx = 1, r._sx = 0, r._cy = 0, r._sy = 1, r
                    }
                    return o(e, t), e.prototype.updateSkew = function() {
                        this._cx = Math.cos(this._rotation + this.skew._y), this._sx = Math.sin(this._rotation + this.skew._y), this._cy = -Math.sin(this._rotation - this.skew._x), this._sy = Math.cos(this._rotation - this.skew._x)
                    }, e.prototype.updateLocalTransform = function() {
                        var t = this.localTransform;
                        t.a = this._cx * this.scale.x, t.b = this._sx * this.scale.x, t.c = this._cy * this.scale.y, t.d = this._sy * this.scale.y, t.tx = this.position.x - (this.pivot.x * t.a + this.pivot.y * t.c), t.ty = this.position.y - (this.pivot.x * t.b + this.pivot.y * t.d)
                    }, e.prototype.updateTransform = function(t) {
                        var e = this.localTransform;
                        e.a = this._cx * this.scale.x, e.b = this._sx * this.scale.x, e.c = this._cy * this.scale.y, e.d = this._sy * this.scale.y, e.tx = this.position.x - (this.pivot.x * e.a + this.pivot.y * e.c), e.ty = this.position.y - (this.pivot.x * e.b + this.pivot.y * e.d);
                        var r = t.worldTransform,
                            n = this.worldTransform;
                        n.a = e.a * r.a + e.b * r.c, n.b = e.a * r.b + e.b * r.d, n.c = e.c * r.a + e.d * r.c, n.d = e.c * r.b + e.d * r.d, n.tx = e.tx * r.a + e.ty * r.c + r.tx, n.ty = e.tx * r.b + e.ty * r.d + r.ty, this._worldID++
                    }, e.prototype.setFromMatrix = function(t) {
                        t.decompose(this)
                    }, s(e, [{
                        key: "rotation",
                        get: function() {
                            return this._rotation
                        },
                        set: function(t) {
                            this._rotation = t, this.updateSkew()
                        }
                    }]), e
                }(function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("./TransformBase")).default);
            r.default = u
        }, {
            "../math": 70,
            "./TransformBase": 51
        }],
        51: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = t("../math"),
                o = function() {
                    function t() {
                        n(this, t), this.worldTransform = new i.Matrix, this.localTransform = new i.Matrix, this._worldID = 0, this._parentID = 0
                    }
                    return t.prototype.updateLocalTransform = function() {}, t.prototype.updateTransform = function(t) {
                        var e = t.worldTransform,
                            r = this.worldTransform,
                            n = this.localTransform;
                        r.a = n.a * e.a + n.b * e.c, r.b = n.a * e.b + n.b * e.d, r.c = n.c * e.a + n.d * e.c, r.d = n.c * e.b + n.d * e.d, r.tx = n.tx * e.a + n.ty * e.c + e.tx, r.ty = n.tx * e.b + n.ty * e.d + e.ty, this._worldID++
                    }, t
                }();
            r.default = o, o.prototype.updateWorldTransform = o.prototype.updateTransform, o.IDENTITY = new o
        }, {
            "../math": 70
        }],
        52: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function i(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function o(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var s = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                a = t("../math"),
                u = function(t) {
                    function e() {
                        n(this, e);
                        var r = i(this, t.call(this));
                        return r.position = new a.ObservablePoint(r.onChange, r, 0, 0), r.scale = new a.ObservablePoint(r.onChange, r, 1, 1), r.pivot = new a.ObservablePoint(r.onChange, r, 0, 0), r.skew = new a.ObservablePoint(r.updateSkew, r, 0, 0), r._rotation = 0, r._cx = 1, r._sx = 0, r._cy = 0, r._sy = 1, r._localID = 0, r._currentLocalID = 0, r
                    }
                    return o(e, t), e.prototype.onChange = function() {
                        this._localID++
                    }, e.prototype.updateSkew = function() {
                        this._cx = Math.cos(this._rotation + this.skew._y), this._sx = Math.sin(this._rotation + this.skew._y), this._cy = -Math.sin(this._rotation - this.skew._x), this._sy = Math.cos(this._rotation - this.skew._x), this._localID++
                    }, e.prototype.updateLocalTransform = function() {
                        var t = this.localTransform;
                        this._localID !== this._currentLocalID &amp;&amp; (t.a = this._cx * this.scale._x, t.b = this._sx * this.scale._x, t.c = this._cy * this.scale._y, t.d = this._sy * this.scale._y, t.tx = this.position._x - (this.pivot._x * t.a + this.pivot._y * t.c), t.ty = this.position._y - (this.pivot._x * t.b + this.pivot._y * t.d), this._currentLocalID = this._localID, this._parentID = -1)
                    }, e.prototype.updateTransform = function(t) {
                        var e = this.localTransform;
                        if (this._localID !== this._currentLocalID &amp;&amp; (e.a = this._cx * this.scale._x, e.b = this._sx * this.scale._x, e.c = this._cy * this.scale._y, e.d = this._sy * this.scale._y, e.tx = this.position._x - (this.pivot._x * e.a + this.pivot._y * e.c), e.ty = this.position._y - (this.pivot._x * e.b + this.pivot._y * e.d), this._currentLocalID = this._localID, this._parentID = -1), this._parentID !== t._worldID) {
                            var r = t.worldTransform,
                                n = this.worldTransform;
                            n.a = e.a * r.a + e.b * r.c, n.b = e.a * r.b + e.b * r.d, n.c = e.c * r.a + e.d * r.c, n.d = e.c * r.b + e.d * r.d, n.tx = e.tx * r.a + e.ty * r.c + r.tx, n.ty = e.tx * r.b + e.ty * r.d + r.ty, this._parentID = t._worldID, this._worldID++
                        }
                    }, e.prototype.setFromMatrix = function(t) {
                        t.decompose(this), this._localID++
                    }, s(e, [{
                        key: "rotation",
                        get: function() {
                            return this._rotation
                        },
                        set: function(t) {
                            this._rotation = t, this.updateSkew()
                        }
                    }]), e
                }(function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("./TransformBase")).default);
            r.default = u
        }, {
            "../math": 70,
            "./TransformBase": 51
        }],
        53: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function o(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function s(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var a = n(t("../display/Container")),
                u = n(t("../textures/RenderTexture")),
                h = n(t("../textures/Texture")),
                l = n(t("./GraphicsData")),
                c = n(t("../sprites/Sprite")),
                d = t("../math"),
                f = t("../utils"),
                p = t("../const"),
                v = n(t("../display/Bounds")),
                g = n(t("./utils/bezierCurveTo")),
                y = n(t("../renderers/canvas/CanvasRenderer")),
                m = void 0,
                _ = new d.Matrix,
                b = new d.Point,
                x = new Float32Array(4),
                T = new Float32Array(4),
                w = function(t) {
                    function e() {
                        var r = arguments.length &gt; 0 &amp;&amp; void 0 !== arguments[0] &amp;&amp; arguments[0];
                        i(this, e);
                        var n = o(this, t.call(this));
                        return n.fillAlpha = 1, n.lineWidth = 0, n.nativeLines = r, n.lineColor = 0, n.lineAlignment = .5, n.graphicsData = [], n.tint = 16777215, n._prevTint = 16777215, n.blendMode = p.BLEND_MODES.NORMAL, n.currentPath = null, n._webGL = {}, n.isMask = !1, n.boundsPadding = 0, n._localBounds = new v.default, n.dirty = 0, n.fastRectDirty = -1, n.clearDirty = 0, n.boundsDirty = -1, n.cachedSpriteDirty = !1, n._spriteRect = null, n._fastRect = !1, n
                    }
                    return s(e, t), e.prototype.clone = function() {
                        var t = new e;
                        t.renderable = this.renderable, t.fillAlpha = this.fillAlpha, t.lineWidth = this.lineWidth, t.lineColor = this.lineColor, t.lineAlignment = this.lineAlignment, t.tint = this.tint, t.blendMode = this.blendMode, t.isMask = this.isMask, t.boundsPadding = this.boundsPadding, t.dirty = 0, t.cachedSpriteDirty = this.cachedSpriteDirty;
                        for (var r = 0; r &lt; this.graphicsData.length; ++r) t.graphicsData.push(this.graphicsData[r].clone());
                        return t.currentPath = t.graphicsData[t.graphicsData.length - 1], t.updateLocalBounds(), t
                    }, e.prototype._quadraticCurveLength = function(t, e, r, n, i, o) {
                        var s = t - (2 * r + i),
                            a = e - (2 * n + o),
                            u = (r - 2) * t * 2,
                            h = (n - 2) * e * 2,
                            l = 4 * (s * s + a * a),
                            c = 4 * (s * u + a * h),
                            d = u * u + h * h,
                            f = 2 * Math.sqrt(l + c + d),
                            p = Math.sqrt(l),
                            v = 2 * l * p,
                            g = 2 * Math.sqrt(d),
                            y = c / p;
                        return (v * f + p * c * (f - g) + (4 * d * l - c * c) * Math.log((2 * p + y + f) / (y + g))) / (4 * v)
                    }, e.prototype._bezierCurveLength = function(t, e, r, n, i, o, s, a) {
                        for (var u = 0, h = 0, l = 0, c = 0, d = 0, f = 0, p = 0, v = 0, g = 0, y = 0, m = 0, _ = t, b = e, x = 1; x &lt;= 10; ++x) y = _ - (v = (p = (f = (d = 1 - (h = x / 10)) * d) * d) * t + 3 * f * h * r + 3 * d * (l = h * h) * i + (c = l * h) * s), m = b - (g = p * e + 3 * f * h * n + 3 * d * l * o + c * a), _ = v, b = g, u += Math.sqrt(y * y + m * m);
                        return u
                    }, e.prototype._segmentsCount = function(t) {
                        var r = Math.ceil(t / e.CURVES.maxLength);
                        return r &lt; e.CURVES.minSegments ? r = e.CURVES.minSegments : r &gt; e.CURVES.maxSegments &amp;&amp; (r = e.CURVES.maxSegments), r
                    }, e.prototype.lineStyle = function() {
                        var t = arguments.length &gt; 0 &amp;&amp; void 0 !== arguments[0] ? arguments[0] : 0,
                            e = arguments.length &gt; 1 &amp;&amp; void 0 !== arguments[1] ? arguments[1] : 0,
                            r = arguments.length &gt; 2 &amp;&amp; void 0 !== arguments[2] ? arguments[2] : 1,
                            n = arguments.length &gt; 3 &amp;&amp; void 0 !== arguments[3] ? arguments[3] : .5;
                        if (this.lineWidth = t, this.lineColor = e, this.lineAlpha = r, this.lineAlignment = n, this.currentPath)
                            if (this.currentPath.shape.points.length) {
                                var i = new d.Polygon(this.currentPath.shape.points.slice(-2));
                                i.closed = !1, this.drawShape(i)
                            } else this.currentPath.lineWidth = this.lineWidth, this.currentPath.lineColor = this.lineColor, this.currentPath.lineAlpha = this.lineAlpha, this.currentPath.lineAlignment = this.lineAlignment;
                        return this
                    }, e.prototype.moveTo = function(t, e) {
                        var r = new d.Polygon([t, e]);
                        return r.closed = !1, this.drawShape(r), this
                    }, e.prototype.lineTo = function(t, e) {
                        return this.currentPath.shape.points.push(t, e), this.dirty++, this
                    }, e.prototype.quadraticCurveTo = function(t, r, n, i) {
                        this.currentPath ? 0 === this.currentPath.shape.points.length &amp;&amp; (this.currentPath.shape.points = [0, 0]) : this.moveTo(0, 0);
                        var o = this.currentPath.shape.points,
                            s = 0,
                            a = 0;
                        0 === o.length &amp;&amp; this.moveTo(0, 0);
                        for (var u = o[o.length - 2], h = o[o.length - 1], l = e.CURVES.adaptive ? this._segmentsCount(this._quadraticCurveLength(u, h, t, r, n, i)) : 20, c = 1; c &lt;= l; ++c) {
                            var d = c / l;
                            s = u + (t - u) * d, a = h + (r - h) * d, o.push(s + (t + (n - t) * d - s) * d, a + (r + (i - r) * d - a) * d)
                        }
                        return this.dirty++, this
                    }, e.prototype.bezierCurveTo = function(t, r, n, i, o, s) {
                        this.currentPath ? 0 === this.currentPath.shape.points.length &amp;&amp; (this.currentPath.shape.points = [0, 0]) : this.moveTo(0, 0);
                        var a = this.currentPath.shape.points,
                            u = a[a.length - 2],
                            h = a[a.length - 1];
                        a.length -= 2;
                        var l = e.CURVES.adaptive ? this._segmentsCount(this._bezierCurveLength(u, h, t, r, n, i, o, s)) : 20;
                        return (0, g.default)(u, h, t, r, n, i, o, s, l, a), this.dirty++, this
                    }, e.prototype.arcTo = function(t, e, r, n, i) {
                        this.currentPath ? 0 === this.currentPath.shape.points.length &amp;&amp; this.currentPath.shape.points.push(t, e) : this.moveTo(t, e);
                        var o = this.currentPath.shape.points,
                            s = o[o.length - 2],
                            a = o[o.length - 1] - e,
                            u = s - t,
                            h = n - e,
                            l = r - t,
                            c = Math.abs(a * l - u * h);
                        if (c &lt; 1e-8 || 0 === i) o[o.length - 2] === t &amp;&amp; o[o.length - 1] === e || o.push(t, e);
                        else {
                            var d = a * a + u * u,
                                f = h * h + l * l,
                                p = a * h + u * l,
                                v = i * Math.sqrt(d) / c,
                                g = i * Math.sqrt(f) / c,
                                y = v * p / d,
                                m = g * p / f,
                                _ = v * l + g * u,
                                b = v * h + g * a,
                                x = u * (g + y),
                                T = a * (g + y),
                                w = l * (v + m),
                                E = h * (v + m),
                                S = Math.atan2(T - b, x - _),
                                O = Math.atan2(E - b, w - _);
                            this.arc(_ + t, b + e, i, S, O, u * h &gt; l * a)
                        }
                        return this.dirty++, this
                    }, e.prototype.arc = function(t, r, n, i, o) {
                        var s = arguments.length &gt; 5 &amp;&amp; void 0 !== arguments[5] &amp;&amp; arguments[5];
                        if (i === o) return this;
                        !s &amp;&amp; o &lt;= i ? o += p.PI_2 : s &amp;&amp; i &lt;= o &amp;&amp; (i += p.PI_2);
                        var a = o - i,
                            u = e.CURVES.adaptive ? this._segmentsCount(Math.abs(a) * n) : 40 * Math.ceil(Math.abs(a) / p.PI_2);
                        if (0 === a) return this;
                        var h = t + Math.cos(i) * n,
                            l = r + Math.sin(i) * n,
                            c = this.currentPath ? this.currentPath.shape.points : null;
                        c ? c[c.length - 2] === h &amp;&amp; c[c.length - 1] === l || c.push(h, l) : (this.moveTo(h, l), c = this.currentPath.shape.points);
                        for (var d = a / (2 * u), f = 2 * d, v = Math.cos(d), g = Math.sin(d), y = u - 1, m = y % 1 / y, _ = 0; _ &lt;= y; ++_) {
                            var b = d + i + f * (_ + m * _),
                                x = Math.cos(b),
                                T = -Math.sin(b);
                            c.push((v * x + g * T) * n + t, (v * -T + g * x) * n + r)
                        }
                        return this.dirty++, this
                    }, e.prototype.beginFill = function() {
                        var t = arguments.length &gt; 0 &amp;&amp; void 0 !== arguments[0] ? arguments[0] : 0,
                            e = arguments.length &gt; 1 &amp;&amp; void 0 !== arguments[1] ? arguments[1] : 1;
                        return this.filling = !0, this.fillColor = t, this.fillAlpha = e, this.currentPath &amp;&amp; this.currentPath.shape.points.length &lt;= 2 &amp;&amp; (this.currentPath.fill = this.filling, this.currentPath.fillColor = this.fillColor, this.currentPath.fillAlpha = this.fillAlpha), this
                    }, e.prototype.endFill = function() {
                        return this.filling = !1, this.fillColor = null, this.fillAlpha = 1, this
                    }, e.prototype.drawRect = function(t, e, r, n) {
                        return this.drawShape(new d.Rectangle(t, e, r, n)), this
                    }, e.prototype.drawRoundedRect = function(t, e, r, n, i) {
                        return this.drawShape(new d.RoundedRectangle(t, e, r, n, i)), this
                    }, e.prototype.drawCircle = function(t, e, r) {
                        return this.drawShape(new d.Circle(t, e, r)), this
                    }, e.prototype.drawEllipse = function(t, e, r, n) {
                        return this.drawShape(new d.Ellipse(t, e, r, n)), this
                    }, e.prototype.drawPolygon = function(t) {
                        var e = t,
                            r = !0;
                        if (e instanceof d.Polygon &amp;&amp; (r = e.closed, e = e.points), !Array.isArray(e)) {
                            e = new Array(arguments.length);
                            for (var n = 0; n &lt; e.length; ++n) e[n] = arguments[n]
                        }
                        var i = new d.Polygon(e);
                        return i.closed = r, this.drawShape(i), this
                    }, e.prototype.drawStar = function(t, e, r, n, i) {
                        var o = arguments.length &gt; 5 &amp;&amp; void 0 !== arguments[5] ? arguments[5] : 0;
                        i = i || n / 2;
                        for (var s = -1 * Math.PI / 2 + o, a = 2 * r, u = p.PI_2 / a, h = [], l = 0; l &lt; a; l++) {
                            var c = l % 2 ? i : n,
                                d = l * u + s;
                            h.push(t + c * Math.cos(d), e + c * Math.sin(d))
                        }
                        return this.drawPolygon(h)
                    }, e.prototype.clear = function() {
                        return (this.lineWidth || this.filling || this.graphicsData.length &gt; 0) &amp;&amp; (this.lineWidth = 0, this.lineAlignment = .5, this.filling = !1, this.boundsDirty = -1, this.dirty++, this.clearDirty++, this.graphicsData.length = 0), this.currentPath = null, this._spriteRect = null, this
                    }, e.prototype.isFastRect = function() {
                        return 1 === this.graphicsData.length &amp;&amp; this.graphicsData[0].shape.type === p.SHAPES.RECT &amp;&amp; !this.graphicsData[0].lineWidth
                    }, e.prototype._renderWebGL = function(t) {
                        this.dirty !== this.fastRectDirty &amp;&amp; (this.fastRectDirty = this.dirty, this._fastRect = this.isFastRect()), this._fastRect ? this._renderSpriteRect(t) : (t.setObjectRenderer(t.plugins.graphics), t.plugins.graphics.render(this))
                    }, e.prototype._renderSpriteRect = function(t) {
                        var e = this.graphicsData[0].shape;
                        this._spriteRect || (this._spriteRect = new c.default(new h.default(h.default.WHITE)));
                        var r = this._spriteRect;
                        if (16777215 === this.tint) r.tint = this.graphicsData[0].fillColor;
                        else {
                            var n = x,
                                i = T;
                            (0, f.hex2rgb)(this.graphicsData[0].fillColor, n), (0, f.hex2rgb)(this.tint, i), n[0] *= i[0], n[1] *= i[1], n[2] *= i[2], r.tint = (0, f.rgb2hex)(n)
                        }
                        r.alpha = this.graphicsData[0].fillAlpha, r.worldAlpha = this.worldAlpha * r.alpha, r.blendMode = this.blendMode, r._texture._frame.width = e.width, r._texture._frame.height = e.height, r.transform.worldTransform = this.transform.worldTransform, r.anchor.set(-e.x / e.width, -e.y / e.height), r._onAnchorUpdate(), r._renderWebGL(t)
                    }, e.prototype._renderCanvas = function(t) {
                        !0 !== this.isMask &amp;&amp; t.plugins.graphics.render(this)
                    }, e.prototype._calculateBounds = function() {
                        this.boundsDirty !== this.dirty &amp;&amp; (this.boundsDirty = this.dirty, this.updateLocalBounds(), this.cachedSpriteDirty = !0);
                        var t = this._localBounds;
                        this._bounds.addFrame(this.transform, t.minX, t.minY, t.maxX, t.maxY)
                    }, e.prototype.containsPoint = function(t) {
                        this.worldTransform.applyInverse(t, b);
                        for (var e = this.graphicsData, r = 0; r &lt; e.length; ++r) {
                            var n = e[r];
                            if (n.fill &amp;&amp; (n.shape &amp;&amp; n.shape.contains(b.x, b.y))) {
                                if (n.holes)
                                    for (var i = 0; i &lt; n.holes.length; i++)
                                        if (n.holes[i].contains(b.x, b.y)) return !1;
                                return !0
                            }
                        }
                        return !1
                    }, e.prototype.updateLocalBounds = function() {
                        var t = 1 / 0,
                            e = -1 / 0,
                            r = 1 / 0,
                            n = -1 / 0;
                        if (this.graphicsData.length)
                            for (var i = 0, o = 0, s = 0, a = 0, u = 0, h = 0; h &lt; this.graphicsData.length; h++) {
                                var l = this.graphicsData[h],
                                    c = l.type,
                                    d = l.lineWidth;
                                if (i = l.shape, c === p.SHAPES.RECT || c === p.SHAPES.RREC) o = i.x - d / 2, s = i.y - d / 2, a = i.width + d, u = i.height + d, t = o &lt; t ? o : t, e = o + a &gt; e ? o + a : e, r = s &lt; r ? s : r, n = s + u &gt; n ? s + u : n;
                                else if (c === p.SHAPES.CIRC) o = i.x, s = i.y, a = i.radius + d / 2, u = i.radius + d / 2, t = o - a &lt; t ? o - a : t, e = o + a &gt; e ? o + a : e, r = s - u &lt; r ? s - u : r, n = s + u &gt; n ? s + u : n;
                                else if (c === p.SHAPES.ELIP) o = i.x, s = i.y, a = i.width + d / 2, u = i.height + d / 2, t = o - a &lt; t ? o - a : t, e = o + a &gt; e ? o + a : e, r = s - u &lt; r ? s - u : r, n = s + u &gt; n ? s + u : n;
                                else
                                    for (var f = i.points, v = 0, g = 0, y = 0, m = 0, _ = 0, b = 0, x = 0, T = 0, w = 0; w + 2 &lt; f.length; w += 2) o = f[w], s = f[w + 1], v = f[w + 2], g = f[w + 3], y = Math.abs(v - o), m = Math.abs(g - s), u = d, (a = Math.sqrt(y * y + m * m)) &lt; 1e-9 || (b = (u / a * y + m) / 2, T = (g + s) / 2, t = (x = (v + o) / 2) - (_ = (u / a * m + y) / 2) &lt; t ? x - _ : t, e = x + _ &gt; e ? x + _ : e, r = T - b &lt; r ? T - b : r, n = T + b &gt; n ? T + b : n)
                            } else t = 0, e = 0, r = 0, n = 0;
                        var E = this.boundsPadding;
                        this._localBounds.minX = t - E, this._localBounds.maxX = e + E, this._localBounds.minY = r - E, this._localBounds.maxY = n + E
                    }, e.prototype.drawShape = function(t) {
                        this.currentPath &amp;&amp; this.currentPath.shape.points.length &lt;= 2 &amp;&amp; this.graphicsData.pop(), this.currentPath = null;
                        var e = new l.default(this.lineWidth, this.lineColor, this.lineAlpha, this.fillColor, this.fillAlpha, this.filling, this.nativeLines, t, this.lineAlignment);
                        return this.graphicsData.push(e), e.type === p.SHAPES.POLY &amp;&amp; (e.shape.closed = e.shape.closed || this.filling, this.currentPath = e), this.dirty++, e
                    }, e.prototype.generateCanvasTexture = function(t) {
                        var e = arguments.length &gt; 1 &amp;&amp; void 0 !== arguments[1] ? arguments[1] : 1,
                            r = this.getLocalBounds(),
                            n = u.default.create(r.width, r.height, t, e);
                        m || (m = new y.default), this.transform.updateLocalTransform(), this.transform.localTransform.copy(_), _.invert(), _.tx -= r.x, _.ty -= r.y, m.render(this, n, !0, _);
                        var i = h.default.fromCanvas(n.baseTexture._canvasRenderTarget.canvas, t, "graphics");
                        return i.baseTexture.resolution = e, i.baseTexture.update(), i
                    }, e.prototype.closePath = function() {
                        var t = this.currentPath;
                        return t &amp;&amp; t.shape &amp;&amp; t.shape.close(), this
                    }, e.prototype.addHole = function() {
                        var t = this.graphicsData.pop();
                        return this.currentPath = this.graphicsData[this.graphicsData.length - 1], this.currentPath.addHole(t.shape), this.currentPath = null, this
                    }, e.prototype.destroy = function(e) {
                        t.prototype.destroy.call(this, e);
                        for (var r = 0; r &lt; this.graphicsData.length; ++r) this.graphicsData[r].destroy();
                        for (var n in this._webGL)
                            for (var i = 0; i &lt; this._webGL[n].data.length; ++i) this._webGL[n].data[i].destroy();
                        this._spriteRect &amp;&amp; this._spriteRect.destroy(), this.graphicsData = null, this.currentPath = null, this._webGL = null, this._localBounds = null
                    }, e
                }(a.default);
            r.default = w, w._SPRITE_TEXTURE = null, w.CURVES = {
                adaptive: !1,
                maxLength: 10,
                minSegments: 8,
                maxSegments: 2048
            }
        }, {
            "../const": 46,
            "../display/Bounds": 47,
            "../display/Container": 48,
            "../math": 70,
            "../renderers/canvas/CanvasRenderer": 77,
            "../sprites/Sprite": 102,
            "../textures/RenderTexture": 113,
            "../textures/Texture": 115,
            "../utils": 125,
            "./GraphicsData": 54,
            "./utils/bezierCurveTo": 56
        }],
        54: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function() {
                function t(e, r, i, o, s, a, u, h, l) {
                    n(this, t), this.lineWidth = e, this.lineAlignment = l, this.nativeLines = u, this.lineColor = r, this.lineAlpha = i, this._lineTint = r, this.fillColor = o, this.fillAlpha = s, this._fillTint = o, this.fill = a, this.holes = [], this.shape = h, this.type = h.type
                }
                return t.prototype.clone = function() {
                    return new t(this.lineWidth, this.lineColor, this.lineAlpha, this.fillColor, this.fillAlpha, this.fill, this.nativeLines, this.shape)
                }, t.prototype.addHole = function(t) {
                    this.holes.push(t)
                }, t.prototype.destroy = function() {
                    this.shape = null, this.holes = null
                }, t
            }();
            r.default = i
        }, {}],
        55: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("../../renderers/canvas/CanvasRenderer")),
                o = t("../../const"),
                s = function() {
                    function t(e) {
                        n(this, t), this.renderer = e
                    }
                    return t.prototype.render = function(t) {
                        var e = this.renderer,
                            r = e.context,
                            n = t.worldAlpha,
                            i = t.transform.worldTransform,
                            s = e.resolution;
                        this._prevTint !== this.tint &amp;&amp; (this.dirty = !0), r.setTransform(i.a * s, i.b * s, i.c * s, i.d * s, i.tx * s, i.ty * s), t.dirty &amp;&amp; (this.updateGraphicsTint(t), t.dirty = !1), e.setBlendMode(t.blendMode);
                        for (var a = 0; a &lt; t.graphicsData.length; a++) {
                            var u = t.graphicsData[a],
                                h = u.shape,
                                l = u._fillTint,
                                c = u._lineTint;
                            if (r.lineWidth = u.lineWidth, u.type === o.SHAPES.POLY) {
                                r.beginPath(), this.renderPolygon(h.points, h.closed, r);
                                for (var d = 0; d &lt; u.holes.length; d++) this.renderPolygon(u.holes[d].points, !0, r);
                                u.fill &amp;&amp; (r.globalAlpha = u.fillAlpha * n, r.fillStyle = "#" + ("00000" + (0 | l).toString(16)).substr(-6), r.fill()), u.lineWidth &amp;&amp; (r.globalAlpha = u.lineAlpha * n, r.strokeStyle = "#" + ("00000" + (0 | c).toString(16)).substr(-6), r.stroke())
                            } else if (u.type === o.SHAPES.RECT)(u.fillColor || 0 === u.fillColor) &amp;&amp; (r.globalAlpha = u.fillAlpha * n, r.fillStyle = "#" + ("00000" + (0 | l).toString(16)).substr(-6), r.fillRect(h.x, h.y, h.width, h.height)), u.lineWidth &amp;&amp; (r.globalAlpha = u.lineAlpha * n, r.strokeStyle = "#" + ("00000" + (0 | c).toString(16)).substr(-6), r.strokeRect(h.x, h.y, h.width, h.height));
                            else if (u.type === o.SHAPES.CIRC) r.beginPath(), r.arc(h.x, h.y, h.radius, 0, 2 * Math.PI), r.closePath(), u.fill &amp;&amp; (r.globalAlpha = u.fillAlpha * n, r.fillStyle = "#" + ("00000" + (0 | l).toString(16)).substr(-6), r.fill()), u.lineWidth &amp;&amp; (r.globalAlpha = u.lineAlpha * n, r.strokeStyle = "#" + ("00000" + (0 | c).toString(16)).substr(-6), r.stroke());
                            else if (u.type === o.SHAPES.ELIP) {
                                var f = 2 * h.width,
                                    p = 2 * h.height,
                                    v = h.x - f / 2,
                                    g = h.y - p / 2;
                                r.beginPath();
                                var y = f / 2 * .5522848,
                                    m = p / 2 * .5522848,
                                    _ = v + f,
                                    b = g + p,
                                    x = v + f / 2,
                                    T = g + p / 2;
                                r.moveTo(v, T), r.bezierCurveTo(v, T - m, x - y, g, x, g), r.bezierCurveTo(x + y, g, _, T - m, _, T), r.bezierCurveTo(_, T + m, x + y, b, x, b), r.bezierCurveTo(x - y, b, v, T + m, v, T), r.closePath(), u.fill &amp;&amp; (r.globalAlpha = u.fillAlpha * n, r.fillStyle = "#" + ("00000" + (0 | l).toString(16)).substr(-6), r.fill()), u.lineWidth &amp;&amp; (r.globalAlpha = u.lineAlpha * n, r.strokeStyle = "#" + ("00000" + (0 | c).toString(16)).substr(-6), r.stroke())
                            } else if (u.type === o.SHAPES.RREC) {
                                var w = h.x,
                                    E = h.y,
                                    S = h.width,
                                    O = h.height,
                                    M = h.radius,
                                    P = Math.min(S, O) / 2 | 0;
                                M = M &gt; P ? P : M, r.beginPath(), r.moveTo(w, E + M), r.lineTo(w, E + O - M), r.quadraticCurveTo(w, E + O, w + M, E + O), r.lineTo(w + S - M, E + O), r.quadraticCurveTo(w + S, E + O, w + S, E + O - M), r.lineTo(w + S, E + M), r.quadraticCurveTo(w + S, E, w + S - M, E), r.lineTo(w + M, E), r.quadraticCurveTo(w, E, w, E + M), r.closePath(), (u.fillColor || 0 === u.fillColor) &amp;&amp; (r.globalAlpha = u.fillAlpha * n, r.fillStyle = "#" + ("00000" + (0 | l).toString(16)).substr(-6), r.fill()), u.lineWidth &amp;&amp; (r.globalAlpha = u.lineAlpha * n, r.strokeStyle = "#" + ("00000" + (0 | c).toString(16)).substr(-6), r.stroke())
                            }
                        }
                    }, t.prototype.updateGraphicsTint = function(t) {
                        t._prevTint = t.tint;
                        for (var e = (t.tint &gt;&gt; 16 &amp; 255) / 255, r = (t.tint &gt;&gt; 8 &amp; 255) / 255, n = (255 &amp; t.tint) / 255, i = 0; i &lt; t.graphicsData.length; ++i) {
                            var o = t.graphicsData[i],
                                s = 0 | o.fillColor,
                                a = 0 | o.lineColor;
                            o._fillTint = ((s &gt;&gt; 16 &amp; 255) / 255 * e * 255 &lt;&lt; 16) + ((s &gt;&gt; 8 &amp; 255) / 255 * r * 255 &lt;&lt; 8) + (255 &amp; s) / 255 * n * 255, o._lineTint = ((a &gt;&gt; 16 &amp; 255) / 255 * e * 255 &lt;&lt; 16) + ((a &gt;&gt; 8 &amp; 255) / 255 * r * 255 &lt;&lt; 8) + (255 &amp; a) / 255 * n * 255
                        }
                    }, t.prototype.renderPolygon = function(t, e, r) {
                        r.moveTo(t[0], t[1]);
                        for (var n = 1; n &lt; t.length / 2; ++n) r.lineTo(t[2 * n], t[2 * n + 1]);
                        e &amp;&amp; r.closePath()
                    }, t.prototype.destroy = function() {
                        this.renderer = null
                    }, t
                }();
            r.default = s, i.default.registerPlugin("graphics", s)
        }, {
            "../../const": 46,
            "../../renderers/canvas/CanvasRenderer": 77
        }],
        56: [function(t, e, r) {
            "use strict";
            r.__esModule = !0, r.default = function(t, e, r, n, i, o, s, a, u) {
                var h = arguments.length &gt; 9 &amp;&amp; void 0 !== arguments[9] ? arguments[9] : [],
                    l = 0,
                    c = 0,
                    d = 0,
                    f = 0,
                    p = 0;
                h.push(t, e);
                for (var v = 1, g = 0; v &lt;= u; ++v) d = (c = (l = 1 - (g = v / u)) * l) * l, p = (f = g * g) * g, h.push(d * t + 3 * c * g * r + 3 * l * f * i + p * s, d * e + 3 * c * g * n + 3 * l * f * o + p * a);
                return h
            }
        }, {}],
        57: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function o(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function s(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var a = t("../../utils"),
                u = t("../../const"),
                h = n(t("../../renderers/webgl/utils/ObjectRenderer")),
                l = n(t("../../renderers/webgl/WebGLRenderer")),
                c = n(t("./WebGLGraphicsData")),
                d = n(t("./shaders/PrimitiveShader")),
                f = n(t("./utils/buildPoly")),
                p = n(t("./utils/buildRectangle")),
                v = n(t("./utils/buildRoundedRectangle")),
                g = n(t("./utils/buildCircle")),
                y = function(t) {
                    function e(r) {
                        i(this, e);
                        var n = o(this, t.call(this, r));
                        return n.graphicsDataPool = [], n.primitiveShader = null, n.gl = r.gl, n.CONTEXT_UID = 0, n
                    }
                    return s(e, t), e.prototype.onContextChange = function() {
                        this.gl = this.renderer.gl, this.CONTEXT_UID = this.renderer.CONTEXT_UID, this.primitiveShader = new d.default(this.gl)
                    }, e.prototype.destroy = function() {
                        h.default.prototype.destroy.call(this);
                        for (var t = 0; t &lt; this.graphicsDataPool.length; ++t) this.graphicsDataPool[t].destroy();
                        this.graphicsDataPool = null
                    }, e.prototype.render = function(t) {
                        var e = this.renderer,
                            r = e.gl,
                            n = void 0,
                            i = t._webGL[this.CONTEXT_UID];
                        i &amp;&amp; t.dirty === i.dirty || (this.updateGraphics(t), i = t._webGL[this.CONTEXT_UID]);
                        var o = this.primitiveShader;
                        e.bindShader(o), e.state.setBlendMode(t.blendMode);
                        for (var s = 0, u = i.data.length; s &lt; u; s++) {
                            var h = (n = i.data[s]).shader;
                            e.bindShader(h), h.uniforms.translationMatrix = t.transform.worldTransform.toArray(!0), h.uniforms.tint = (0, a.hex2rgb)(t.tint), h.uniforms.alpha = t.worldAlpha, e.bindVao(n.vao), n.nativeLines ? r.drawArrays(r.LINES, 0, n.points.length / 6) : n.vao.draw(r.TRIANGLE_STRIP, n.indices.length)
                        }
                    }, e.prototype.updateGraphics = function(t) {
                        var e = this.renderer.gl,
                            r = t._webGL[this.CONTEXT_UID];
                        if (r || (r = t._webGL[this.CONTEXT_UID] = {
                                lastIndex: 0,
                                data: [],
                                gl: e,
                                clearDirty: -1,
                                dirty: -1
                            }), r.dirty = t.dirty, t.clearDirty !== r.clearDirty) {
                            r.clearDirty = t.clearDirty;
                            for (var n = 0; n &lt; r.data.length; n++) this.graphicsDataPool.push(r.data[n]);
                            r.data.length = 0, r.lastIndex = 0
                        }
                        for (var i = void 0, o = void 0, s = r.lastIndex; s &lt; t.graphicsData.length; s++) {
                            var a = t.graphicsData[s];
                            i = this.getWebGLData(r, 0), a.nativeLines &amp;&amp; a.lineWidth &amp;&amp; (o = this.getWebGLData(r, 0, !0), r.lastIndex++), a.type === u.SHAPES.POLY &amp;&amp; (0, f.default)(a, i, o), a.type === u.SHAPES.RECT ? (0, p.default)(a, i, o) : a.type === u.SHAPES.CIRC || a.type === u.SHAPES.ELIP ? (0, g.default)(a, i, o) : a.type === u.SHAPES.RREC &amp;&amp; (0, v.default)(a, i, o), r.lastIndex++
                        }
                        this.renderer.bindVao(null);
                        for (var h = 0; h &lt; r.data.length; h++)(i = r.data[h]).dirty &amp;&amp; i.upload()
                    }, e.prototype.getWebGLData = function(t, e, r) {
                        var n = t.data[t.data.length - 1];
                        return (!n || n.nativeLines !== r || n.points.length &gt; 32e4) &amp;&amp; ((n = this.graphicsDataPool.pop() || new c.default(this.renderer.gl, this.primitiveShader, this.renderer.state.attribsState)).nativeLines = r, n.reset(e), t.data.push(n)), n.dirty = !0, n
                    }, e
                }(h.default);
            r.default = y, l.default.registerPlugin("graphics", y)
        }, {
            "../../const": 46,
            "../../renderers/webgl/WebGLRenderer": 84,
            "../../renderers/webgl/utils/ObjectRenderer": 94,
            "../../utils": 125,
            "./WebGLGraphicsData": 58,
            "./shaders/PrimitiveShader": 59,
            "./utils/buildCircle": 60,
            "./utils/buildPoly": 62,
            "./utils/buildRectangle": 63,
            "./utils/buildRoundedRectangle": 64
        }],
        58: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("pixi-gl-core")),
                o = function() {
                    function t(e, r, o) {
                        n(this, t), this.gl = e, this.color = [0, 0, 0], this.points = [], this.indices = [], this.buffer = i.default.GLBuffer.createVertexBuffer(e), this.indexBuffer = i.default.GLBuffer.createIndexBuffer(e), this.dirty = !0, this.nativeLines = !1, this.glPoints = null, this.glIndices = null, this.shader = r, this.vao = new i.default.VertexArrayObject(e, o).addIndex(this.indexBuffer).addAttribute(this.buffer, r.attributes.aVertexPosition, e.FLOAT, !1, 24, 0).addAttribute(this.buffer, r.attributes.aColor, e.FLOAT, !1, 24, 8)
                    }
                    return t.prototype.reset = function() {
                        this.points.length = 0, this.indices.length = 0
                    }, t.prototype.upload = function() {
                        this.glPoints = new Float32Array(this.points), this.buffer.upload(this.glPoints), this.glIndices = new Uint16Array(this.indices), this.indexBuffer.upload(this.glIndices), this.dirty = !1
                    }, t.prototype.destroy = function() {
                        this.color = null, this.points = null, this.indices = null, this.vao.destroy(), this.buffer.destroy(), this.indexBuffer.destroy(), this.gl = null, this.buffer = null, this.indexBuffer = null, this.glPoints = null, this.glIndices = null
                    }, t
                }();
            r.default = o
        }, {
            "pixi-gl-core": 15
        }],
        59: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function i(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function o(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var s = function(t) {
                function e(r) {
                    return n(this, e), i(this, t.call(this, r, ["attribute vec2 aVertexPosition;", "attribute vec4 aColor;", "uniform mat3 translationMatrix;", "uniform mat3 projectionMatrix;", "uniform float alpha;", "uniform vec3 tint;", "varying vec4 vColor;", "void main(void){", "   gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);", "   vColor = aColor * vec4(tint * alpha, alpha);", "}"].join("\n"), ["varying vec4 vColor;", "void main(void){", "   gl_FragColor = vColor;", "}"].join("\n")))
                }
                return o(e, t), e
            }(function(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }(t("../../../Shader")).default);
            r.default = s
        }, {
            "../../../Shader": 44
        }],
        60: [function(t, e, r) {
            "use strict";
            r.__esModule = !0, r.default = function(t, e, r) {
                var s = t.shape,
                    a = s.x,
                    u = s.y,
                    h = void 0,
                    l = void 0;
                if (t.type === i.SHAPES.CIRC ? (h = s.radius, l = s.radius) : (h = s.width, l = s.height), 0 !== h &amp;&amp; 0 !== l) {
                    var c = Math.floor(30 * Math.sqrt(s.radius)) || Math.floor(15 * Math.sqrt(s.width + s.height)),
                        d = 2 * Math.PI / c;
                    if (t.fill) {
                        var f = (0, o.hex2rgb)(t.fillColor),
                            p = t.fillAlpha,
                            v = f[0] * p,
                            g = f[1] * p,
                            y = f[2] * p,
                            m = e.points,
                            _ = e.indices,
                            b = m.length / 6;
                        _.push(b);
                        for (var x = 0; x &lt; c + 1; x++) m.push(a, u, v, g, y, p), m.push(a + Math.sin(d * x) * h, u + Math.cos(d * x) * l, v, g, y, p), _.push(b++, b++);
                        _.push(b - 1)
                    }
                    if (t.lineWidth) {
                        var T = t.points;
                        t.points = [];
                        for (var w = 0; w &lt; c + 1; w++) t.points.push(a + Math.sin(d * -w) * h, u + Math.cos(d * -w) * l);
                        (0, n.default)(t, e, r), t.points = T
                    }
                }
            };
            var n = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("./buildLine")),
                i = t("../../../const"),
                o = t("../../../utils")
        }, {
            "../../../const": 46,
            "../../../utils": 125,
            "./buildLine": 61
        }],
        61: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                var r = t.points;
                if (0 !== r.length) {
                    var n = new o.Point(r[0], r[1]),
                        i = new o.Point(r[r.length - 2], r[r.length - 1]);
                    if (n.x === i.x &amp;&amp; n.y === i.y) {
                        (r = r.slice()).pop(), r.pop();
                        var a = (i = new o.Point(r[r.length - 2], r[r.length - 1])).x + .5 * (n.x - i.x),
                            u = i.y + .5 * (n.y - i.y);
                        r.unshift(a, u), r.push(a, u)
                    }
                    var h = e.points,
                        l = e.indices,
                        c = r.length / 2,
                        d = r.length,
                        f = h.length / 6,
                        p = t.lineWidth / 2,
                        v = (0, s.hex2rgb)(t.lineColor),
                        g = t.lineAlpha,
                        y = v[0] * g,
                        m = v[1] * g,
                        _ = v[2] * g,
                        b = r[0],
                        x = r[1],
                        T = r[2],
                        w = r[3],
                        E = 0,
                        S = 0,
                        O = -(x - w),
                        M = b - T,
                        P = 0,
                        C = 0,
                        R = 0,
                        A = 0,
                        I = Math.sqrt(O * O + M * M);
                    O /= I, M /= I, O *= p, M *= p;
                    var D = t.lineAlignment,
                        L = 2 * (1 - D),
                        N = 2 * D;
                    h.push(b - O * L, x - M * L, y, m, _, g), h.push(b + O * N, x + M * N, y, m, _, g);
                    for (var B = 1; B &lt; c - 1; ++B) {
                        b = r[2 * (B - 1)], x = r[2 * (B - 1) + 1], T = r[2 * B], w = r[2 * B + 1], E = r[2 * (B + 1)], S = r[2 * (B + 1) + 1], O = -(x - w), M = b - T, O /= I = Math.sqrt(O * O + M * M), M /= I, O *= p, M *= p, P = -(w - S), C = T - E, P /= I = Math.sqrt(P * P + C * C), C /= I;
                        var k = -M + x - (-M + w),
                            F = -O + T - (-O + b),
                            j = (-O + b) * (-M + w) - (-O + T) * (-M + x),
                            U = -(C *= p) + S - (-C + w),
                            X = -(P *= p) + T - (-P + E),
                            G = (-P + E) * (-C + w) - (-P + T) * (-C + S),
                            W = k * X - U * F;
                        if (Math.abs(W) &lt; .1) W += 10.1, h.push(T - O * L, w - M * L, y, m, _, g), h.push(T + O * N, w + M * N, y, m, _, g);
                        else {
                            var H = (F * G - X * j) / W,
                                V = (U * j - k * G) / W;
                            (H - T) * (H - T) + (V - w) * (V - w) &gt; 196 * p * p ? (R = O - P, A = M - C, R /= I = Math.sqrt(R * R + A * A), A /= I, R *= p, A *= p, h.push(T - R * L, w - A * L), h.push(y, m, _, g), h.push(T + R * N, w + A * N), h.push(y, m, _, g), h.push(T - R * N * L, w - A * L), h.push(y, m, _, g), d++) : (h.push(T + (H - T) * L, w + (V - w) * L), h.push(y, m, _, g), h.push(T - (H - T) * N, w - (V - w) * N), h.push(y, m, _, g))
                        }
                    }
                    b = r[2 * (c - 2)], x = r[2 * (c - 2) + 1], T = r[2 * (c - 1)], O = -(x - (w = r[2 * (c - 1) + 1])), M = b - T, O /= I = Math.sqrt(O * O + M * M), M /= I, O *= p, M *= p, h.push(T - O * L, w - M * L), h.push(y, m, _, g), h.push(T + O * N, w + M * N), h.push(y, m, _, g), l.push(f);
                    for (var Y = 0; Y &lt; d; ++Y) l.push(f++);
                    l.push(f - 1)
                }
            }

            function i(t, e) {
                var r = 0,
                    n = t.points;
                if (0 !== n.length) {
                    var i = e.points,
                        o = n.length / 2,
                        a = (0, s.hex2rgb)(t.lineColor),
                        u = t.lineAlpha,
                        h = a[0] * u,
                        l = a[1] * u,
                        c = a[2] * u;
                    for (r = 1; r &lt; o; r++) {
                        var d = n[2 * (r - 1)],
                            f = n[2 * (r - 1) + 1],
                            p = n[2 * r],
                            v = n[2 * r + 1];
                        i.push(d, f), i.push(h, l, c, u), i.push(p, v), i.push(h, l, c, u)
                    }
                }
            }
            r.__esModule = !0, r.default = function(t, e, r) {
                t.nativeLines ? i(t, r) : n(t, e)
            };
            var o = t("../../../math"),
                s = t("../../../utils")
        }, {
            "../../../math": 70,
            "../../../utils": 125
        }],
        62: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }
            r.__esModule = !0, r.default = function(t, e, r) {
                t.points = t.shape.points.slice();
                var n = t.points;
                if (t.fill &amp;&amp; n.length &gt;= 6) {
                    for (var a = [], u = t.holes, h = 0; h &lt; u.length; h++) {
                        var l = u[h];
                        a.push(n.length / 2), n = n.concat(l.points)
                    }
                    var c = e.points,
                        d = e.indices,
                        f = n.length / 2,
                        p = (0, o.hex2rgb)(t.fillColor),
                        v = t.fillAlpha,
                        g = p[0] * v,
                        y = p[1] * v,
                        m = p[2] * v,
                        _ = (0, s.default)(n, a, 2);
                    if (!_) return;
                    for (var b = c.length / 6, x = 0; x &lt; _.length; x += 3) d.push(_[x] + b), d.push(_[x] + b), d.push(_[x + 1] + b), d.push(_[x + 2] + b), d.push(_[x + 2] + b);
                    for (var T = 0; T &lt; f; T++) c.push(n[2 * T], n[2 * T + 1], g, y, m, v)
                }
                t.lineWidth &gt; 0 &amp;&amp; (0, i.default)(t, e, r)
            };
            var i = n(t("./buildLine")),
                o = t("../../../utils"),
                s = n(t("earcut"))
        }, {
            "../../../utils": 125,
            "./buildLine": 61,
            earcut: 2
        }],
        63: [function(t, e, r) {
            "use strict";
            r.__esModule = !0, r.default = function(t, e, r) {
                var o = t.shape,
                    s = o.x,
                    a = o.y,
                    u = o.width,
                    h = o.height;
                if (t.fill) {
                    var l = (0, i.hex2rgb)(t.fillColor),
                        c = t.fillAlpha,
                        d = l[0] * c,
                        f = l[1] * c,
                        p = l[2] * c,
                        v = e.points,
                        g = e.indices,
                        y = v.length / 6;
                    v.push(s, a), v.push(d, f, p, c), v.push(s + u, a), v.push(d, f, p, c), v.push(s, a + h), v.push(d, f, p, c), v.push(s + u, a + h), v.push(d, f, p, c), g.push(y, y, y + 1, y + 2, y + 3, y + 3)
                }
                if (t.lineWidth) {
                    var m = t.points;
                    t.points = [s, a, s + u, a, s + u, a + h, s, a + h, s, a], (0, n.default)(t, e, r), t.points = m
                }
            };
            var n = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("./buildLine")),
                i = t("../../../utils")
        }, {
            "../../../utils": 125,
            "./buildLine": 61
        }],
        64: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e, r) {
                return t + (e - t) * r
            }

            function o(t, e, r, n, o, s) {
                for (var a = arguments.length &gt; 6 &amp;&amp; void 0 !== arguments[6] ? arguments[6] : [], u = 0, h = 0, l = 0, c = 0, d = 0, f = 0, p = 0, v = 0; p &lt;= 20; ++p) u = i(t, r, v = p / 20), h = i(e, n, v), l = i(r, o, v), c = i(n, s, v), d = i(u, l, v), f = i(h, c, v), a.push(d, f);
                return a
            }
            r.__esModule = !0, r.default = function(t, e, r) {
                var n = t.shape,
                    i = n.x,
                    h = n.y,
                    l = n.width,
                    c = n.height,
                    d = n.radius,
                    f = [];
                if (f.push(i, h + d), o(i, h + c - d, i, h + c, i + d, h + c, f), o(i + l - d, h + c, i + l, h + c, i + l, h + c - d, f), o(i + l, h + d, i + l, h, i + l - d, h, f), o(i + d, h, i, h, i, h + d + 1e-10, f), t.fill) {
                    for (var p = (0, u.hex2rgb)(t.fillColor), v = t.fillAlpha, g = p[0] * v, y = p[1] * v, m = p[2] * v, _ = e.points, b = e.indices, x = _.length / 6, T = (0, s.default)(f, null, 2), w = 0, E = T.length; w &lt; E; w += 3) b.push(T[w] + x), b.push(T[w] + x), b.push(T[w + 1] + x), b.push(T[w + 2] + x), b.push(T[w + 2] + x);
                    for (var S = 0, O = f.length; S &lt; O; S++) _.push(f[S], f[++S], g, y, m, v)
                }
                if (t.lineWidth) {
                    var M = t.points;
                    t.points = f, (0, a.default)(t, e, r), t.points = M
                }
            };
            var s = n(t("earcut")),
                a = n(t("./buildLine")),
                u = t("../../../utils")
        }, {
            "../../../utils": 125,
            "./buildLine": 61,
            earcut: 2
        }],
        65: [function(t, e, r) {
            "use strict";

            function n(t) {
                if (t &amp;&amp; t.__esModule) return t;
                var e = {};
                if (null != t)
                    for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                return e.default = t, e
            }

            function i(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }
            r.__esModule = !0, r.autoDetectRenderer = r.Application = r.Filter = r.SpriteMaskFilter = r.Quad = r.RenderTarget = r.ObjectRenderer = r.WebGLManager = r.Shader = r.CanvasRenderTarget = r.TextureUvs = r.VideoBaseTexture = r.BaseRenderTexture = r.RenderTexture = r.BaseTexture = r.TextureMatrix = r.Texture = r.Spritesheet = r.CanvasGraphicsRenderer = r.GraphicsRenderer = r.GraphicsData = r.Graphics = r.TextMetrics = r.TextStyle = r.Text = r.SpriteRenderer = r.CanvasTinter = r.CanvasSpriteRenderer = r.Sprite = r.TransformBase = r.TransformStatic = r.Transform = r.Container = r.DisplayObject = r.Bounds = r.glCore = r.WebGLRenderer = r.CanvasRenderer = r.ticker = r.utils = r.settings = void 0;
            var o = t("./const");
            Object.keys(o).forEach(function(t) {
                "default" !== t &amp;&amp; "__esModule" !== t &amp;&amp; Object.defineProperty(r, t, {
                    enumerable: !0,
                    get: function() {
                        return o[t]
                    }
                })
            });
            var s = t("./math");
            Object.keys(s).forEach(function(t) {
                "default" !== t &amp;&amp; "__esModule" !== t &amp;&amp; Object.defineProperty(r, t, {
                    enumerable: !0,
                    get: function() {
                        return s[t]
                    }
                })
            });
            var a = t("pixi-gl-core");
            Object.defineProperty(r, "glCore", {
                enumerable: !0,
                get: function() {
                    return i(a).default
                }
            });
            var u = t("./display/Bounds");
            Object.defineProperty(r, "Bounds", {
                enumerable: !0,
                get: function() {
                    return i(u).default
                }
            });
            var h = t("./display/DisplayObject");
            Object.defineProperty(r, "DisplayObject", {
                enumerable: !0,
                get: function() {
                    return i(h).default
                }
            });
            var l = t("./display/Container");
            Object.defineProperty(r, "Container", {
                enumerable: !0,
                get: function() {
                    return i(l).default
                }
            });
            var c = t("./display/Transform");
            Object.defineProperty(r, "Transform", {
                enumerable: !0,
                get: function() {
                    return i(c).default
                }
            });
            var d = t("./display/TransformStatic");
            Object.defineProperty(r, "TransformStatic", {
                enumerable: !0,
                get: function() {
                    return i(d).default
                }
            });
            var f = t("./display/TransformBase");
            Object.defineProperty(r, "TransformBase", {
                enumerable: !0,
                get: function() {
                    return i(f).default
                }
            });
            var p = t("./sprites/Sprite");
            Object.defineProperty(r, "Sprite", {
                enumerable: !0,
                get: function() {
                    return i(p).default
                }
            });
            var v = t("./sprites/canvas/CanvasSpriteRenderer");
            Object.defineProperty(r, "CanvasSpriteRenderer", {
                enumerable: !0,
                get: function() {
                    return i(v).default
                }
            });
            var g = t("./sprites/canvas/CanvasTinter");
            Object.defineProperty(r, "CanvasTinter", {
                enumerable: !0,
                get: function() {
                    return i(g).default
                }
            });
            var y = t("./sprites/webgl/SpriteRenderer");
            Object.defineProperty(r, "SpriteRenderer", {
                enumerable: !0,
                get: function() {
                    return i(y).default
                }
            });
            var m = t("./text/Text");
            Object.defineProperty(r, "Text", {
                enumerable: !0,
                get: function() {
                    return i(m).default
                }
            });
            var _ = t("./text/TextStyle");
            Object.defineProperty(r, "TextStyle", {
                enumerable: !0,
                get: function() {
                    return i(_).default
                }
            });
            var b = t("./text/TextMetrics");
            Object.defineProperty(r, "TextMetrics", {
                enumerable: !0,
                get: function() {
                    return i(b).default
                }
            });
            var x = t("./graphics/Graphics");
            Object.defineProperty(r, "Graphics", {
                enumerable: !0,
                get: function() {
                    return i(x).default
                }
            });
            var T = t("./graphics/GraphicsData");
            Object.defineProperty(r, "GraphicsData", {
                enumerable: !0,
                get: function() {
                    return i(T).default
                }
            });
            var w = t("./graphics/webgl/GraphicsRenderer");
            Object.defineProperty(r, "GraphicsRenderer", {
                enumerable: !0,
                get: function() {
                    return i(w).default
                }
            });
            var E = t("./graphics/canvas/CanvasGraphicsRenderer");
            Object.defineProperty(r, "CanvasGraphicsRenderer", {
                enumerable: !0,
                get: function() {
                    return i(E).default
                }
            });
            var S = t("./textures/Spritesheet");
            Object.defineProperty(r, "Spritesheet", {
                enumerable: !0,
                get: function() {
                    return i(S).default
                }
            });
            var O = t("./textures/Texture");
            Object.defineProperty(r, "Texture", {
                enumerable: !0,
                get: function() {
                    return i(O).default
                }
            });
            var M = t("./textures/TextureMatrix");
            Object.defineProperty(r, "TextureMatrix", {
                enumerable: !0,
                get: function() {
                    return i(M).default
                }
            });
            var P = t("./textures/BaseTexture");
            Object.defineProperty(r, "BaseTexture", {
                enumerable: !0,
                get: function() {
                    return i(P).default
                }
            });
            var C = t("./textures/RenderTexture");
            Object.defineProperty(r, "RenderTexture", {
                enumerable: !0,
                get: function() {
                    return i(C).default
                }
            });
            var R = t("./textures/BaseRenderTexture");
            Object.defineProperty(r, "BaseRenderTexture", {
                enumerable: !0,
                get: function() {
                    return i(R).default
                }
            });
            var A = t("./textures/VideoBaseTexture");
            Object.defineProperty(r, "VideoBaseTexture", {
                enumerable: !0,
                get: function() {
                    return i(A).default
                }
            });
            var I = t("./textures/TextureUvs");
            Object.defineProperty(r, "TextureUvs", {
                enumerable: !0,
                get: function() {
                    return i(I).default
                }
            });
            var D = t("./renderers/canvas/utils/CanvasRenderTarget");
            Object.defineProperty(r, "CanvasRenderTarget", {
                enumerable: !0,
                get: function() {
                    return i(D).default
                }
            });
            var L = t("./Shader");
            Object.defineProperty(r, "Shader", {
                enumerable: !0,
                get: function() {
                    return i(L).default
                }
            });
            var N = t("./renderers/webgl/managers/WebGLManager");
            Object.defineProperty(r, "WebGLManager", {
                enumerable: !0,
                get: function() {
                    return i(N).default
                }
            });
            var B = t("./renderers/webgl/utils/ObjectRenderer");
            Object.defineProperty(r, "ObjectRenderer", {
                enumerable: !0,
                get: function() {
                    return i(B).default
                }
            });
            var k = t("./renderers/webgl/utils/RenderTarget");
            Object.defineProperty(r, "RenderTarget", {
                enumerable: !0,
                get: function() {
                    return i(k).default
                }
            });
            var F = t("./renderers/webgl/utils/Quad");
            Object.defineProperty(r, "Quad", {
                enumerable: !0,
                get: function() {
                    return i(F).default
                }
            });
            var j = t("./renderers/webgl/filters/spriteMask/SpriteMaskFilter");
            Object.defineProperty(r, "SpriteMaskFilter", {
                enumerable: !0,
                get: function() {
                    return i(j).default
                }
            });
            var U = t("./renderers/webgl/filters/Filter");
            Object.defineProperty(r, "Filter", {
                enumerable: !0,
                get: function() {
                    return i(U).default
                }
            });
            var X = t("./Application");
            Object.defineProperty(r, "Application", {
                enumerable: !0,
                get: function() {
                    return i(X).default
                }
            });
            var G = t("./autoDetectRenderer");
            Object.defineProperty(r, "autoDetectRenderer", {
                enumerable: !0,
                get: function() {
                    return G.autoDetectRenderer
                }
            });
            var W = n(t("./utils")),
                H = n(t("./ticker")),
                V = i(t("./settings")),
                Y = i(t("./renderers/canvas/CanvasRenderer")),
                z = i(t("./renderers/webgl/WebGLRenderer"));
            r.settings = V.default, r.utils = W, r.ticker = H, r.CanvasRenderer = Y.default, r.WebGLRenderer = z.default
        }, {
            "./Application": 43,
            "./Shader": 44,
            "./autoDetectRenderer": 45,
            "./const": 46,
            "./display/Bounds": 47,
            "./display/Container": 48,
            "./display/DisplayObject": 49,
            "./display/Transform": 50,
            "./display/TransformBase": 51,
            "./display/TransformStatic": 52,
            "./graphics/Graphics": 53,
            "./graphics/GraphicsData": 54,
            "./graphics/canvas/CanvasGraphicsRenderer": 55,
            "./graphics/webgl/GraphicsRenderer": 57,
            "./math": 70,
            "./renderers/canvas/CanvasRenderer": 77,
            "./renderers/canvas/utils/CanvasRenderTarget": 79,
            "./renderers/webgl/WebGLRenderer": 84,
            "./renderers/webgl/filters/Filter": 86,
            "./renderers/webgl/filters/spriteMask/SpriteMaskFilter": 89,
            "./renderers/webgl/managers/WebGLManager": 93,
            "./renderers/webgl/utils/ObjectRenderer": 94,
            "./renderers/webgl/utils/Quad": 95,
            "./renderers/webgl/utils/RenderTarget": 96,
            "./settings": 101,
            "./sprites/Sprite": 102,
            "./sprites/canvas/CanvasSpriteRenderer": 103,
            "./sprites/canvas/CanvasTinter": 104,
            "./sprites/webgl/SpriteRenderer": 106,
            "./text/Text": 108,
            "./text/TextMetrics": 109,
            "./text/TextStyle": 110,
            "./textures/BaseRenderTexture": 111,
            "./textures/BaseTexture": 112,
            "./textures/RenderTexture": 113,
            "./textures/Spritesheet": 114,
            "./textures/Texture": 115,
            "./textures/TextureMatrix": 116,
            "./textures/TextureUvs": 117,
            "./textures/VideoBaseTexture": 118,
            "./ticker": 121,
            "./utils": 125,
            "pixi-gl-core": 15
        }],
        66: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &lt; 0 ? -1 : t &gt; 0 ? 1 : 0
            }
            r.__esModule = !0;
            var i = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("./Matrix")),
                o = [1, 1, 0, -1, -1, -1, 0, 1, 1, 1, 0, -1, -1, -1, 0, 1],
                s = [0, 1, 1, 1, 0, -1, -1, -1, 0, 1, 1, 1, 0, -1, -1, -1],
                a = [0, -1, -1, -1, 0, 1, 1, 1, 0, 1, 1, 1, 0, -1, -1, -1],
                u = [1, 1, 0, -1, -1, -1, 0, 1, -1, -1, 0, 1, 1, 1, 0, -1],
                h = [],
                l = [];
            ! function() {
                for (var t = 0; t &lt; 16; t++) {
                    var e = [];
                    l.push(e);
                    for (var r = 0; r &lt; 16; r++)
                        for (var c = n(o[t] * o[r] + a[t] * s[r]), d = n(s[t] * o[r] + u[t] * s[r]), f = n(o[t] * a[r] + a[t] * u[r]), p = n(s[t] * a[r] + u[t] * u[r]), v = 0; v &lt; 16; v++)
                            if (o[v] === c &amp;&amp; s[v] === d &amp;&amp; a[v] === f &amp;&amp; u[v] === p) {
                                e.push(v);
                                break
                            }
                }
                for (var g = 0; g &lt; 16; g++) {
                    var y = new i.default;
                    y.set(o[g], s[g], a[g], u[g], 0, 0), h.push(y)
                }
            }();
            var c = {
                E: 0,
                SE: 1,
                S: 2,
                SW: 3,
                W: 4,
                NW: 5,
                N: 6,
                NE: 7,
                MIRROR_VERTICAL: 8,
                MIRROR_HORIZONTAL: 12,
                uX: function(t) {
                    return o[t]
                },
                uY: function(t) {
                    return s[t]
                },
                vX: function(t) {
                    return a[t]
                },
                vY: function(t) {
                    return u[t]
                },
                inv: function(t) {
                    return 8 &amp; t ? 15 &amp; t : 7 &amp; -t
                },
                add: function(t, e) {
                    return l[t][e]
                },
                sub: function(t, e) {
                    return l[t][c.inv(e)]
                },
                rotate180: function(t) {
                    return 4 ^ t
                },
                isVertical: function(t) {
                    return 2 == (3 &amp; t)
                },
                byDirection: function(t, e) {
                    return 2 * Math.abs(t) &lt;= Math.abs(e) ? e &gt;= 0 ? c.S : c.N : 2 * Math.abs(e) &lt;= Math.abs(t) ? t &gt; 0 ? c.E : c.W : e &gt; 0 ? t &gt; 0 ? c.SE : c.SW : t &gt; 0 ? c.NE : c.NW
                },
                matrixAppendRotationInv: function(t, e) {
                    var r = arguments.length &gt; 2 &amp;&amp; void 0 !== arguments[2] ? arguments[2] : 0,
                        n = arguments.length &gt; 3 &amp;&amp; void 0 !== arguments[3] ? arguments[3] : 0,
                        i = h[c.inv(e)];
                    i.tx = r, i.ty = n, t.append(i)
                }
            };
            r.default = c
        }, {
            "./Matrix": 67
        }],
        67: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                o = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("./Point")),
                s = t("../const"),
                a = function() {
                    function t() {
                        var e = arguments.length &gt; 0 &amp;&amp; void 0 !== arguments[0] ? arguments[0] : 1,
                            r = arguments.length &gt; 1 &amp;&amp; void 0 !== arguments[1] ? arguments[1] : 0,
                            i = arguments.length &gt; 2 &amp;&amp; void 0 !== arguments[2] ? arguments[2] : 0,
                            o = arguments.length &gt; 3 &amp;&amp; void 0 !== arguments[3] ? arguments[3] : 1,
                            s = arguments.length &gt; 4 &amp;&amp; void 0 !== arguments[4] ? arguments[4] : 0,
                            a = arguments.length &gt; 5 &amp;&amp; void 0 !== arguments[5] ? arguments[5] : 0;
                        n(this, t), this.a = e, this.b = r, this.c = i, this.d = o, this.tx = s, this.ty = a, this.array = null
                    }
                    return t.prototype.fromArray = function(t) {
                        this.a = t[0], this.b = t[1], this.c = t[3], this.d = t[4], this.tx = t[2], this.ty = t[5]
                    }, t.prototype.set = function(t, e, r, n, i, o) {
                        return this.a = t, this.b = e, this.c = r, this.d = n, this.tx = i, this.ty = o, this
                    }, t.prototype.toArray = function(t, e) {
                        this.array || (this.array = new Float32Array(9));
                        var r = e || this.array;
                        return t ? (r[0] = this.a, r[1] = this.b, r[2] = 0, r[3] = this.c, r[4] = this.d, r[5] = 0, r[6] = this.tx, r[7] = this.ty, r[8] = 1) : (r[0] = this.a, r[1] = this.c, r[2] = this.tx, r[3] = this.b, r[4] = this.d, r[5] = this.ty, r[6] = 0, r[7] = 0, r[8] = 1), r
                    }, t.prototype.apply = function(t, e) {
                        e = e || new o.default;
                        var r = t.x,
                            n = t.y;
                        return e.x = this.a * r + this.c * n + this.tx, e.y = this.b * r + this.d * n + this.ty, e
                    }, t.prototype.applyInverse = function(t, e) {
                        e = e || new o.default;
                        var r = 1 / (this.a * this.d + this.c * -this.b),
                            n = t.x,
                            i = t.y;
                        return e.x = this.d * r * n + -this.c * r * i + (this.ty * this.c - this.tx * this.d) * r, e.y = this.a * r * i + -this.b * r * n + (-this.ty * this.a + this.tx * this.b) * r, e
                    }, t.prototype.translate = function(t, e) {
                        return this.tx += t, this.ty += e, this
                    }, t.prototype.scale = function(t, e) {
                        return this.a *= t, this.d *= e, this.c *= t, this.b *= e, this.tx *= t, this.ty *= e, this
                    }, t.prototype.rotate = function(t) {
                        var e = Math.cos(t),
                            r = Math.sin(t),
                            n = this.a,
                            i = this.c,
                            o = this.tx;
                        return this.a = n * e - this.b * r, this.b = n * r + this.b * e, this.c = i * e - this.d * r, this.d = i * r + this.d * e, this.tx = o * e - this.ty * r, this.ty = o * r + this.ty * e, this
                    }, t.prototype.append = function(t) {
                        var e = this.a,
                            r = this.b,
                            n = this.c,
                            i = this.d;
                        return this.a = t.a * e + t.b * n, this.b = t.a * r + t.b * i, this.c = t.c * e + t.d * n, this.d = t.c * r + t.d * i, this.tx = t.tx * e + t.ty * n + this.tx, this.ty = t.tx * r + t.ty * i + this.ty, this
                    }, t.prototype.setTransform = function(t, e, r, n, i, o, s, a, u) {
                        return this.a = Math.cos(s + u) * i, this.b = Math.sin(s + u) * i, this.c = -Math.sin(s - a) * o, this.d = Math.cos(s - a) * o, this.tx = t - (r * this.a + n * this.c), this.ty = e - (r * this.b + n * this.d), this
                    }, t.prototype.prepend = function(t) {
                        var e = this.tx;
                        if (1 !== t.a || 0 !== t.b || 0 !== t.c || 1 !== t.d) {
                            var r = this.a,
                                n = this.c;
                            this.a = r * t.a + this.b * t.c, this.b = r * t.b + this.b * t.d, this.c = n * t.a + this.d * t.c, this.d = n * t.b + this.d * t.d
                        }
                        return this.tx = e * t.a + this.ty * t.c + t.tx, this.ty = e * t.b + this.ty * t.d + t.ty, this
                    }, t.prototype.decompose = function(t) {
                        var e = this.a,
                            r = this.b,
                            n = this.c,
                            i = this.d,
                            o = -Math.atan2(-n, i),
                            a = Math.atan2(r, e),
                            u = Math.abs(o + a);
                        return u &lt; 1e-5 || Math.abs(s.PI_2 - u) &lt; 1e-5 ? (t.rotation = a, e &lt; 0 &amp;&amp; i &gt;= 0 &amp;&amp; (t.rotation += t.rotation &lt;= 0 ? Math.PI : -Math.PI), t.skew.x = t.skew.y = 0) : (t.rotation = 0, t.skew.x = o, t.skew.y = a), t.scale.x = Math.sqrt(e * e + r * r), t.scale.y = Math.sqrt(n * n + i * i), t.position.x = this.tx, t.position.y = this.ty, t
                    }, t.prototype.invert = function() {
                        var t = this.a,
                            e = this.b,
                            r = this.c,
                            n = this.d,
                            i = this.tx,
                            o = t * n - e * r;
                        return this.a = n / o, this.b = -e / o, this.c = -r / o, this.d = t / o, this.tx = (r * this.ty - n * i) / o, this.ty = -(t * this.ty - e * i) / o, this
                    }, t.prototype.identity = function() {
                        return this.a = 1, this.b = 0, this.c = 0, this.d = 1, this.tx = 0, this.ty = 0, this
                    }, t.prototype.clone = function() {
                        var e = new t;
                        return e.a = this.a, e.b = this.b, e.c = this.c, e.d = this.d, e.tx = this.tx, e.ty = this.ty, e
                    }, t.prototype.copy = function(t) {
                        return t.a = this.a, t.b = this.b, t.c = this.c, t.d = this.d, t.tx = this.tx, t.ty = this.ty, t
                    }, i(t, null, [{
                        key: "IDENTITY",
                        get: function() {
                            return new t
                        }
                    }, {
                        key: "TEMP_MATRIX",
                        get: function() {
                            return new t
                        }
                    }]), t
                }();
            r.default = a
        }, {
            "../const": 46,
            "./Point": 69
        }],
        68: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                o = function() {
                    function t(e, r) {
                        var i = arguments.length &gt; 2 &amp;&amp; void 0 !== arguments[2] ? arguments[2] : 0,
                            o = arguments.length &gt; 3 &amp;&amp; void 0 !== arguments[3] ? arguments[3] : 0;
                        n(this, t), this._x = i, this._y = o, this.cb = e, this.scope = r
                    }
                    return t.prototype.set = function(t, e) {
                        var r = t || 0,
                            n = e || (0 !== e ? r : 0);
                        this._x === r &amp;&amp; this._y === n || (this._x = r, this._y = n, this.cb.call(this.scope))
                    }, t.prototype.copy = function(t) {
                        this._x === t.x &amp;&amp; this._y === t.y || (this._x = t.x, this._y = t.y, this.cb.call(this.scope))
                    }, i(t, [{
                        key: "x",
                        get: function() {
                            return this._x
                        },
                        set: function(t) {
                            this._x !== t &amp;&amp; (this._x = t, this.cb.call(this.scope))
                        }
                    }, {
                        key: "y",
                        get: function() {
                            return this._y
                        },
                        set: function(t) {
                            this._y !== t &amp;&amp; (this._y = t, this.cb.call(this.scope))
                        }
                    }]), t
                }();
            r.default = o
        }, {}],
        69: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function() {
                function t() {
                    var e = arguments.length &gt; 0 &amp;&amp; void 0 !== arguments[0] ? arguments[0] : 0,
                        r = arguments.length &gt; 1 &amp;&amp; void 0 !== arguments[1] ? arguments[1] : 0;
                    n(this, t), this.x = e, this.y = r
                }
                return t.prototype.clone = function() {
                    return new t(this.x, this.y)
                }, t.prototype.copy = function(t) {
                    this.set(t.x, t.y)
                }, t.prototype.equals = function(t) {
                    return t.x === this.x &amp;&amp; t.y === this.y
                }, t.prototype.set = function(t, e) {
                    this.x = t || 0, this.y = e || (0 !== e ? this.x : 0)
                }, t
            }();
            r.default = i
        }, {}],
        70: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }
            r.__esModule = !0;
            var i = t("./Point");
            Object.defineProperty(r, "Point", {
                enumerable: !0,
                get: function() {
                    return n(i).default
                }
            });
            var o = t("./ObservablePoint");
            Object.defineProperty(r, "ObservablePoint", {
                enumerable: !0,
                get: function() {
                    return n(o).default
                }
            });
            var s = t("./Matrix");
            Object.defineProperty(r, "Matrix", {
                enumerable: !0,
                get: function() {
                    return n(s).default
                }
            });
            var a = t("./GroupD8");
            Object.defineProperty(r, "GroupD8", {
                enumerable: !0,
                get: function() {
                    return n(a).default
                }
            });
            var u = t("./shapes/Circle");
            Object.defineProperty(r, "Circle", {
                enumerable: !0,
                get: function() {
                    return n(u).default
                }
            });
            var h = t("./shapes/Ellipse");
            Object.defineProperty(r, "Ellipse", {
                enumerable: !0,
                get: function() {
                    return n(h).default
                }
            });
            var l = t("./shapes/Polygon");
            Object.defineProperty(r, "Polygon", {
                enumerable: !0,
                get: function() {
                    return n(l).default
                }
            });
            var c = t("./shapes/Rectangle");
            Object.defineProperty(r, "Rectangle", {
                enumerable: !0,
                get: function() {
                    return n(c).default
                }
            });
            var d = t("./shapes/RoundedRectangle");
            Object.defineProperty(r, "RoundedRectangle", {
                enumerable: !0,
                get: function() {
                    return n(d).default
                }
            })
        }, {
            "./GroupD8": 66,
            "./Matrix": 67,
            "./ObservablePoint": 68,
            "./Point": 69,
            "./shapes/Circle": 71,
            "./shapes/Ellipse": 72,
            "./shapes/Polygon": 73,
            "./shapes/Rectangle": 74,
            "./shapes/RoundedRectangle": 75
        }],
        71: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("./Rectangle")),
                o = t("../../const"),
                s = function() {
                    function t() {
                        var e = arguments.length &gt; 0 &amp;&amp; void 0 !== arguments[0] ? arguments[0] : 0,
                            r = arguments.length &gt; 1 &amp;&amp; void 0 !== arguments[1] ? arguments[1] : 0,
                            i = arguments.length &gt; 2 &amp;&amp; void 0 !== arguments[2] ? arguments[2] : 0;
                        n(this, t), this.x = e, this.y = r, this.radius = i, this.type = o.SHAPES.CIRC
                    }
                    return t.prototype.clone = function() {
                        return new t(this.x, this.y, this.radius)
                    }, t.prototype.contains = function(t, e) {
                        if (this.radius &lt;= 0) return !1;
                        var r = this.radius * this.radius,
                            n = this.x - t,
                            i = this.y - e;
                        return n *= n, i *= i, n + i &lt;= r
                    }, t.prototype.getBounds = function() {
                        return new i.default(this.x - this.radius, this.y - this.radius, 2 * this.radius, 2 * this.radius)
                    }, t
                }();
            r.default = s
        }, {
            "../../const": 46,
            "./Rectangle": 74
        }],
        72: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("./Rectangle")),
                o = t("../../const"),
                s = function() {
                    function t() {
                        var e = arguments.length &gt; 0 &amp;&amp; void 0 !== arguments[0] ? arguments[0] : 0,
                            r = arguments.length &gt; 1 &amp;&amp; void 0 !== arguments[1] ? arguments[1] : 0,
                            i = arguments.length &gt; 2 &amp;&amp; void 0 !== arguments[2] ? arguments[2] : 0,
                            s = arguments.length &gt; 3 &amp;&amp; void 0 !== arguments[3] ? arguments[3] : 0;
                        n(this, t), this.x = e, this.y = r, this.width = i, this.height = s, this.type = o.SHAPES.ELIP
                    }
                    return t.prototype.clone = function() {
                        return new t(this.x, this.y, this.width, this.height)
                    }, t.prototype.contains = function(t, e) {
                        if (this.width &lt;= 0 || this.height &lt;= 0) return !1;
                        var r = (t - this.x) / this.width,
                            n = (e - this.y) / this.height;
                        return r *= r, n *= n, r + n &lt;= 1
                    }, t.prototype.getBounds = function() {
                        return new i.default(this.x - this.width, this.y - this.height, this.width, this.height)
                    }, t
                }();
            r.default = s
        }, {
            "../../const": 46,
            "./Rectangle": 74
        }],
        73: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("../Point")),
                o = t("../../const"),
                s = function() {
                    function t() {
                        for (var e = arguments.length, r = Array(e), s = 0; s &lt; e; s++) r[s] = arguments[s];
                        if (n(this, t), Array.isArray(r[0]) &amp;&amp; (r = r[0]), r[0] instanceof i.default) {
                            for (var a = [], u = 0, h = r.length; u &lt; h; u++) a.push(r[u].x, r[u].y);
                            r = a
                        }
                        this.closed = !0, this.points = r, this.type = o.SHAPES.POLY
                    }
                    return t.prototype.clone = function() {
                        return new t(this.points.slice())
                    }, t.prototype.close = function() {
                        var t = this.points;
                        t[0] === t[t.length - 2] &amp;&amp; t[1] === t[t.length - 1] || t.push(t[0], t[1])
                    }, t.prototype.contains = function(t, e) {
                        for (var r = !1, n = this.points.length / 2, i = 0, o = n - 1; i &lt; n; o = i++) {
                            var s = this.points[2 * i],
                                a = this.points[2 * i + 1],
                                u = this.points[2 * o],
                                h = this.points[2 * o + 1];
                            a &gt; e != h &gt; e &amp;&amp; t &lt; (e - a) / (h - a) * (u - s) + s &amp;&amp; (r = !r)
                        }
                        return r
                    }, t
                }();
            r.default = s
        }, {
            "../../const": 46,
            "../Point": 69
        }],
        74: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                o = t("../../const"),
                s = function() {
                    function t() {
                        var e = arguments.length &gt; 0 &amp;&amp; void 0 !== arguments[0] ? arguments[0] : 0,
                            r = arguments.length &gt; 1 &amp;&amp; void 0 !== arguments[1] ? arguments[1] : 0,
                            i = arguments.length &gt; 2 &amp;&amp; void 0 !== arguments[2] ? arguments[2] : 0,
                            s = arguments.length &gt; 3 &amp;&amp; void 0 !== arguments[3] ? arguments[3] : 0;
                        n(this, t), this.x = Number(e), this.y = Number(r), this.width = Number(i), this.height = Number(s), this.type = o.SHAPES.RECT
                    }
                    return t.prototype.clone = function() {
                        return new t(this.x, this.y, this.width, this.height)
                    }, t.prototype.copy = function(t) {
                        return this.x = t.x, this.y = t.y, this.width = t.width, this.height = t.height, this
                    }, t.prototype.contains = function(t, e) {
                        return !(this.width &lt;= 0 || this.height &lt;= 0) &amp;&amp; (t &gt;= this.x &amp;&amp; t &lt; this.x + this.width &amp;&amp; e &gt;= this.y &amp;&amp; e &lt; this.y + this.height)
                    }, t.prototype.pad = function(t, e) {
                        t = t || 0, e = e || (0 !== e ? t : 0), this.x -= t, this.y -= e, this.width += 2 * t, this.height += 2 * e
                    }, t.prototype.fit = function(t) {
                        this.x &lt; t.x &amp;&amp; (this.width += this.x, this.width &lt; 0 &amp;&amp; (this.width = 0), this.x = t.x), this.y &lt; t.y &amp;&amp; (this.height += this.y, this.height &lt; 0 &amp;&amp; (this.height = 0), this.y = t.y), this.x + this.width &gt; t.x + t.width &amp;&amp; (this.width = t.width - this.x, this.width &lt; 0 &amp;&amp; (this.width = 0)), this.y + this.height &gt; t.y + t.height &amp;&amp; (this.height = t.height - this.y, this.height &lt; 0 &amp;&amp; (this.height = 0))
                    }, t.prototype.enlarge = function(t) {
                        var e = Math.min(this.x, t.x),
                            r = Math.max(this.x + this.width, t.x + t.width),
                            n = Math.min(this.y, t.y),
                            i = Math.max(this.y + this.height, t.y + t.height);
                        this.x = e, this.width = r - e, this.y = n, this.height = i - n
                    }, i(t, [{
                        key: "left",
                        get: function() {
                            return this.x
                        }
                    }, {
                        key: "right",
                        get: function() {
                            return this.x + this.width
                        }
                    }, {
                        key: "top",
                        get: function() {
                            return this.y
                        }
                    }, {
                        key: "bottom",
                        get: function() {
                            return this.y + this.height
                        }
                    }], [{
                        key: "EMPTY",
                        get: function() {
                            return new t(0, 0, 0, 0)
                        }
                    }]), t
                }();
            r.default = s
        }, {
            "../../const": 46
        }],
        75: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = t("../../const"),
                o = function() {
                    function t() {
                        var e = arguments.length &gt; 0 &amp;&amp; void 0 !== arguments[0] ? arguments[0] : 0,
                            r = arguments.length &gt; 1 &amp;&amp; void 0 !== arguments[1] ? arguments[1] : 0,
                            o = arguments.length &gt; 2 &amp;&amp; void 0 !== arguments[2] ? arguments[2] : 0,
                            s = arguments.length &gt; 3 &amp;&amp; void 0 !== arguments[3] ? arguments[3] : 0,
                            a = arguments.length &gt; 4 &amp;&amp; void 0 !== arguments[4] ? arguments[4] : 20;
                        n(this, t), this.x = e, this.y = r, this.width = o, this.height = s, this.radius = a, this.type = i.SHAPES.RREC
                    }
                    return t.prototype.clone = function() {
                        return new t(this.x, this.y, this.width, this.height, this.radius)
                    }, t.prototype.contains = function(t, e) {
                        if (this.width &lt;= 0 || this.height &lt;= 0) return !1;
                        if (t &gt;= this.x &amp;&amp; t &lt;= this.x + this.width &amp;&amp; e &gt;= this.y &amp;&amp; e &lt;= this.y + this.height) {
                            if (e &gt;= this.y + this.radius &amp;&amp; e &lt;= this.y + this.height - this.radius || t &gt;= this.x + this.radius &amp;&amp; t &lt;= this.x + this.width - this.radius) return !0;
                            var r = t - (this.x + this.radius),
                                n = e - (this.y + this.radius),
                                i = this.radius * this.radius;
                            if (r * r + n * n &lt;= i) return !0;
                            if ((r = t - (this.x + this.width - this.radius)) * r + n * n &lt;= i) return !0;
                            if (n = e - (this.y + this.height - this.radius), r * r + n * n &lt;= i) return !0;
                            if ((r = t - (this.x + this.radius)) * r + n * n &lt;= i) return !0
                        }
                        return !1
                    }, t
                }();
            r.default = o
        }, {
            "../../const": 46
        }],
        76: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function o(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function s(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var a = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                u = t("../utils"),
                h = t("../math"),
                l = t("../const"),
                c = n(t("../settings")),
                d = n(t("../display/Container")),
                f = n(t("../textures/RenderTexture")),
                p = n(t("eventemitter3")),
                v = new h.Matrix,
                g = function(t) {
                    function e(r, n, s, a) {
                        i(this, e);
                        var f = o(this, t.call(this));
                        return (0, u.sayHello)(r), "number" == typeof n &amp;&amp; (n = Object.assign({
                            width: n,
                            height: s || c.default.RENDER_OPTIONS.height
                        }, a)), n = Object.assign({}, c.default.RENDER_OPTIONS, n), f.options = n, f.type = l.RENDERER_TYPE.UNKNOWN, f.screen = new h.Rectangle(0, 0, n.width, n.height), f.view = n.view || document.createElement("canvas"), f.resolution = n.resolution || c.default.RESOLUTION, f.transparent = n.transparent, f.autoResize = n.autoResize || !1, f.blendModes = null, f.preserveDrawingBuffer = n.preserveDrawingBuffer, f.clearBeforeRender = n.clearBeforeRender, f.roundPixels = n.roundPixels, f._backgroundColor = 0, f._backgroundColorRgba = [0, 0, 0, 0], f._backgroundColorString = "#000000", f.backgroundColor = n.backgroundColor || f._backgroundColor, f._tempDisplayObjectParent = new d.default, f._lastObjectRendered = f._tempDisplayObjectParent, f
                    }
                    return s(e, t), e.prototype.resize = function(t, e) {
                        this.screen.width = t, this.screen.height = e, this.view.width = t * this.resolution, this.view.height = e * this.resolution, this.autoResize &amp;&amp; (this.view.style.width = t + "px", this.view.style.height = e + "px")
                    }, e.prototype.generateTexture = function(t, e, r, n) {
                        n = n || t.getLocalBounds();
                        var i = f.default.create(0 | n.width, 0 | n.height, e, r);
                        return v.tx = -n.x, v.ty = -n.y, this.render(t, i, !1, v, !0), i
                    }, e.prototype.destroy = function(t) {
                        t &amp;&amp; this.view.parentNode &amp;&amp; this.view.parentNode.removeChild(this.view), this.type = l.RENDERER_TYPE.UNKNOWN, this.view = null, this.screen = null, this.resolution = 0, this.transparent = !1, this.autoResize = !1, this.blendModes = null, this.options = null, this.preserveDrawingBuffer = !1, this.clearBeforeRender = !1, this.roundPixels = !1, this._backgroundColor = 0, this._backgroundColorRgba = null, this._backgroundColorString = null, this._tempDisplayObjectParent = null, this._lastObjectRendered = null
                    }, a(e, [{
                        key: "width",
                        get: function() {
                            return this.view.width
                        }
                    }, {
                        key: "height",
                        get: function() {
                            return this.view.height
                        }
                    }, {
                        key: "backgroundColor",
                        get: function() {
                            return this._backgroundColor
                        },
                        set: function(t) {
                            this._backgroundColor = t, this._backgroundColorString = (0, u.hex2string)(t), (0, u.hex2rgb)(t, this._backgroundColorRgba)
                        }
                    }]), e
                }(p.default);
            r.default = g
        }, {
            "../const": 46,
            "../display/Container": 48,
            "../math": 70,
            "../settings": 101,
            "../textures/RenderTexture": 113,
            "../utils": 125,
            eventemitter3: 3
        }],
        77: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function o(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function s(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var a = n(t("../SystemRenderer")),
                u = n(t("./utils/CanvasMaskManager")),
                h = n(t("./utils/CanvasRenderTarget")),
                l = n(t("./utils/mapCanvasBlendModesToPixi")),
                c = t("../../utils"),
                d = t("../../const"),
                f = n(t("../../settings")),
                p = function(t) {
                    function e(r, n, s) {
                        i(this, e);
                        var a = o(this, t.call(this, "Canvas", r, n, s));
                        return a.type = d.RENDERER_TYPE.CANVAS, a.rootContext = a.view.getContext("2d", {
                            alpha: a.transparent
                        }), a.context = a.rootContext, a.refresh = !0, a.maskManager = new u.default(a), a.smoothProperty = "imageSmoothingEnabled", a.rootContext.imageSmoothingEnabled || (a.rootContext.webkitImageSmoothingEnabled ? a.smoothProperty = "webkitImageSmoothingEnabled" : a.rootContext.mozImageSmoothingEnabled ? a.smoothProperty = "mozImageSmoothingEnabled" : a.rootContext.oImageSmoothingEnabled ? a.smoothProperty = "oImageSmoothingEnabled" : a.rootContext.msImageSmoothingEnabled &amp;&amp; (a.smoothProperty = "msImageSmoothingEnabled")), a.initPlugins(), a.blendModes = (0, l.default)(), a._activeBlendMode = null, a.renderingToScreen = !1, a.resize(a.options.width, a.options.height), a
                    }
                    return s(e, t), e.prototype.render = function(t, e, r, n, i) {
                        if (this.view) {
                            this.renderingToScreen = !e, this.emit("prerender");
                            var o = this.resolution;
                            e ? ((e = e.baseTexture || e)._canvasRenderTarget || (e._canvasRenderTarget = new h.default(e.width, e.height, e.resolution), e.source = e._canvasRenderTarget.canvas, e.valid = !0), this.context = e._canvasRenderTarget.context, this.resolution = e._canvasRenderTarget.resolution) : this.context = this.rootContext;
                            var s = this.context;
                            if (e || (this._lastObjectRendered = t), !i) {
                                var a = t.parent,
                                    u = this._tempDisplayObjectParent.transform.worldTransform;
                                n ? (n.copy(u), this._tempDisplayObjectParent.transform._worldID = -1) : u.identity(), t.parent = this._tempDisplayObjectParent, t.updateTransform(), t.parent = a
                            }
                            s.save(), s.setTransform(1, 0, 0, 1, 0, 0), s.globalAlpha = 1, this._activeBlendMode = d.BLEND_MODES.NORMAL, s.globalCompositeOperation = this.blendModes[d.BLEND_MODES.NORMAL], navigator.isCocoonJS &amp;&amp; this.view.screencanvas &amp;&amp; (s.fillStyle = "black", s.clear()), (void 0 !== r ? r : this.clearBeforeRender) &amp;&amp; this.renderingToScreen &amp;&amp; (this.transparent ? s.clearRect(0, 0, this.width, this.height) : (s.fillStyle = this._backgroundColorString, s.fillRect(0, 0, this.width, this.height)));
                            var l = this.context;
                            this.context = s, t.renderCanvas(this), this.context = l, s.restore(), this.resolution = o, this.emit("postrender")
                        }
                    }, e.prototype.clear = function(t) {
                        var e = this.context;
                        t = t || this._backgroundColorString, !this.transparent &amp;&amp; t ? (e.fillStyle = t, e.fillRect(0, 0, this.width, this.height)) : e.clearRect(0, 0, this.width, this.height)
                    }, e.prototype.setBlendMode = function(t) {
                        this._activeBlendMode !== t &amp;&amp; (this._activeBlendMode = t, this.context.globalCompositeOperation = this.blendModes[t])
                    }, e.prototype.destroy = function(e) {
                        this.destroyPlugins(), t.prototype.destroy.call(this, e), this.context = null, this.refresh = !0, this.maskManager.destroy(), this.maskManager = null, this.smoothProperty = null
                    }, e.prototype.resize = function(e, r) {
                        t.prototype.resize.call(this, e, r), this.smoothProperty &amp;&amp; (this.rootContext[this.smoothProperty] = f.default.SCALE_MODE === d.SCALE_MODES.LINEAR)
                    }, e.prototype.invalidateBlendMode = function() {
                        this._activeBlendMode = this.blendModes.indexOf(this.context.globalCompositeOperation)
                    }, e
                }(a.default);
            r.default = p, c.pluginTarget.mixin(p)
        }, {
            "../../const": 46,
            "../../settings": 101,
            "../../utils": 125,
            "../SystemRenderer": 76,
            "./utils/CanvasMaskManager": 78,
            "./utils/CanvasRenderTarget": 79,
            "./utils/mapCanvasBlendModesToPixi": 81
        }],
        78: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = t("../../../const"),
                o = function() {
                    function t(e) {
                        n(this, t), this.renderer = e
                    }
                    return t.prototype.pushMask = function(t) {
                        var e = this.renderer;
                        e.context.save();
                        var r = t.alpha,
                            n = t.transform.worldTransform,
                            i = e.resolution;
                        e.context.setTransform(n.a * i, n.b * i, n.c * i, n.d * i, n.tx * i, n.ty * i), t._texture || (this.renderGraphicsShape(t), e.context.clip()), t.worldAlpha = r
                    }, t.prototype.renderGraphicsShape = function(t) {
                        var e = this.renderer.context,
                            r = t.graphicsData.length;
                        if (0 !== r) {
                            e.beginPath();
                            for (var n = 0; n &lt; r; n++) {
                                var o = t.graphicsData[n],
                                    s = o.shape;
                                if (o.type === i.SHAPES.POLY) {
                                    var a = s.points;
                                    e.moveTo(a[0], a[1]);
                                    for (var u = 1; u &lt; a.length / 2; u++) e.lineTo(a[2 * u], a[2 * u + 1]);
                                    a[0] === a[a.length - 2] &amp;&amp; a[1] === a[a.length - 1] &amp;&amp; e.closePath()
                                } else if (o.type === i.SHAPES.RECT) e.rect(s.x, s.y, s.width, s.height), e.closePath();
                                else if (o.type === i.SHAPES.CIRC) e.arc(s.x, s.y, s.radius, 0, 2 * Math.PI), e.closePath();
                                else if (o.type === i.SHAPES.ELIP) {
                                    var h = 2 * s.width,
                                        l = 2 * s.height,
                                        c = s.x - h / 2,
                                        d = s.y - l / 2,
                                        f = h / 2 * .5522848,
                                        p = l / 2 * .5522848,
                                        v = c + h,
                                        g = d + l,
                                        y = c + h / 2,
                                        m = d + l / 2;
                                    e.moveTo(c, m), e.bezierCurveTo(c, m - p, y - f, d, y, d), e.bezierCurveTo(y + f, d, v, m - p, v, m), e.bezierCurveTo(v, m + p, y + f, g, y, g), e.bezierCurveTo(y - f, g, c, m + p, c, m), e.closePath()
                                } else if (o.type === i.SHAPES.RREC) {
                                    var _ = s.x,
                                        b = s.y,
                                        x = s.width,
                                        T = s.height,
                                        w = s.radius,
                                        E = Math.min(x, T) / 2 | 0;
                                    w = w &gt; E ? E : w, e.moveTo(_, b + w), e.lineTo(_, b + T - w), e.quadraticCurveTo(_, b + T, _ + w, b + T), e.lineTo(_ + x - w, b + T), e.quadraticCurveTo(_ + x, b + T, _ + x, b + T - w), e.lineTo(_ + x, b + w), e.quadraticCurveTo(_ + x, b, _ + x - w, b), e.lineTo(_ + w, b), e.quadraticCurveTo(_, b, _, b + w), e.closePath()
                                }
                            }
                        }
                    }, t.prototype.popMask = function(t) {
                        t.context.restore(), t.invalidateBlendMode()
                    }, t.prototype.destroy = function() {}, t
                }();
            r.default = o
        }, {
            "../../../const": 46
        }],
        79: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                o = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("../../../settings")),
                s = function() {
                    function t(e, r, i) {
                        n(this, t), this.canvas = document.createElement("canvas"), this.context = this.canvas.getContext("2d"), this.resolution = i || o.default.RESOLUTION, this.resize(e, r)
                    }
                    return t.prototype.clear = function() {
                        this.context.setTransform(1, 0, 0, 1, 0, 0), this.context.clearRect(0, 0, this.canvas.width, this.canvas.height)
                    }, t.prototype.resize = function(t, e) {
                        this.canvas.width = t * this.resolution, this.canvas.height = e * this.resolution
                    }, t.prototype.destroy = function() {
                        this.context = null, this.canvas = null
                    }, i(t, [{
                        key: "width",
                        get: function() {
                            return this.canvas.width
                        },
                        set: function(t) {
                            this.canvas.width = t
                        }
                    }, {
                        key: "height",
                        get: function() {
                            return this.canvas.height
                        },
                        set: function(t) {
                            this.canvas.height = t
                        }
                    }]), t
                }();
            r.default = s
        }, {
            "../../../settings": 101
        }],
        80: [function(t, e, r) {
            "use strict";

            function n(t) {
                var e = document.createElement("canvas");
                e.width = 6, e.height = 1;
                var r = e.getContext("2d");
                return r.fillStyle = t, r.fillRect(0, 0, 6, 1), e
            }
            r.__esModule = !0, r.default = function() {
                if ("undefined" == typeof document) return !1;
                var t = n("#ff00ff"),
                    e = n("#ffff00"),
                    r = document.createElement("canvas");
                r.width = 6, r.height = 1;
                var i = r.getContext("2d");
                i.globalCompositeOperation = "multiply", i.drawImage(t, 0, 0), i.drawImage(e, 2, 0);
                var o = i.getImageData(2, 0, 1, 1);
                if (!o) return !1;
                var s = o.data;
                return 255 === s[0] &amp;&amp; 0 === s[1] &amp;&amp; 0 === s[2]
            }
        }, {}],
        81: [function(t, e, r) {
            "use strict";
            r.__esModule = !0, r.default = function() {
                var t = arguments.length &gt; 0 &amp;&amp; void 0 !== arguments[0] ? arguments[0] : [];
                return (0, i.default)() ? (t[n.BLEND_MODES.NORMAL] = "source-over", t[n.BLEND_MODES.ADD] = "lighter", t[n.BLEND_MODES.MULTIPLY] = "multiply", t[n.BLEND_MODES.SCREEN] = "screen", t[n.BLEND_MODES.OVERLAY] = "overlay", t[n.BLEND_MODES.DARKEN] = "darken", t[n.BLEND_MODES.LIGHTEN] = "lighten", t[n.BLEND_MODES.COLOR_DODGE] = "color-dodge", t[n.BLEND_MODES.COLOR_BURN] = "color-burn", t[n.BLEND_MODES.HARD_LIGHT] = "hard-light", t[n.BLEND_MODES.SOFT_LIGHT] = "soft-light", t[n.BLEND_MODES.DIFFERENCE] = "difference", t[n.BLEND_MODES.EXCLUSION] = "exclusion", t[n.BLEND_MODES.HUE] = "hue", t[n.BLEND_MODES.SATURATION] = "saturate", t[n.BLEND_MODES.COLOR] = "color", t[n.BLEND_MODES.LUMINOSITY] = "luminosity") : (t[n.BLEND_MODES.NORMAL] = "source-over", t[n.BLEND_MODES.ADD] = "lighter", t[n.BLEND_MODES.MULTIPLY] = "source-over", t[n.BLEND_MODES.SCREEN] = "source-over", t[n.BLEND_MODES.OVERLAY] = "source-over", t[n.BLEND_MODES.DARKEN] = "source-over", t[n.BLEND_MODES.LIGHTEN] = "source-over", t[n.BLEND_MODES.COLOR_DODGE] = "source-over", t[n.BLEND_MODES.COLOR_BURN] = "source-over", t[n.BLEND_MODES.HARD_LIGHT] = "source-over", t[n.BLEND_MODES.SOFT_LIGHT] = "source-over", t[n.BLEND_MODES.DIFFERENCE] = "source-over", t[n.BLEND_MODES.EXCLUSION] = "source-over", t[n.BLEND_MODES.HUE] = "source-over", t[n.BLEND_MODES.SATURATION] = "source-over", t[n.BLEND_MODES.COLOR] = "source-over", t[n.BLEND_MODES.LUMINOSITY] = "source-over"), t[n.BLEND_MODES.NORMAL_NPM] = t[n.BLEND_MODES.NORMAL], t[n.BLEND_MODES.ADD_NPM] = t[n.BLEND_MODES.ADD], t[n.BLEND_MODES.SCREEN_NPM] = t[n.BLEND_MODES.SCREEN], t
            };
            var n = t("../../../const"),
                i = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("./canUseNewCanvasBlendModes"))
        }, {
            "../../../const": 46,
            "./canUseNewCanvasBlendModes": 80
        }],
        82: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = t("../../const"),
                o = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("../../settings")),
                s = function() {
                    function t(e) {
                        n(this, t), this.renderer = e, this.count = 0, this.checkCount = 0, this.maxIdle = o.default.GC_MAX_IDLE, this.checkCountMax = o.default.GC_MAX_CHECK_COUNT, this.mode = o.default.GC_MODE
                    }
                    return t.prototype.update = function() {
                        this.count++, this.mode !== i.GC_MODES.MANUAL &amp;&amp; ++this.checkCount &gt; this.checkCountMax &amp;&amp; (this.checkCount = 0, this.run())
                    }, t.prototype.run = function() {
                        for (var t = this.renderer.textureManager, e = t._managedTextures, r = !1, n = 0; n &lt; e.length; n++) {
                            var i = e[n];
                            !i._glRenderTargets &amp;&amp; this.count - i.touched &gt; this.maxIdle &amp;&amp; (t.destroyTexture(i, !0), e[n] = null, r = !0)
                        }
                        if (r) {
                            for (var o = 0, s = 0; s &lt; e.length; s++) null !== e[s] &amp;&amp; (e[o++] = e[s]);
                            e.length = o
                        }
                    }, t.prototype.unload = function(t) {
                        var e = this.renderer.textureManager;
                        t._texture &amp;&amp; t._texture._glRenderTargets &amp;&amp; e.destroyTexture(t._texture, !0);
                        for (var r = t.children.length - 1; r &gt;= 0; r--) this.unload(t.children[r])
                    }, t
                }();
            r.default = s
        }, {
            "../../const": 46,
            "../../settings": 101
        }],
        83: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = t("pixi-gl-core"),
                o = t("../../const"),
                s = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("./utils/RenderTarget")),
                a = t("../../utils"),
                u = function() {
                    function t(e) {
                        n(this, t), this.renderer = e, this.gl = e.gl, this._managedTextures = []
                    }
                    return t.prototype.bindTexture = function() {}, t.prototype.getTexture = function() {}, t.prototype.updateTexture = function(t, e) {
                        var r = this.gl,
                            n = !!t._glRenderTargets;
                        if (!t.hasLoaded) return null;
                        var a = this.renderer.boundTextures;
                        if (void 0 === e) {
                            e = 0;
                            for (var u = 0; u &lt; a.length; ++u)
                                if (a[u] === t) {
                                    e = u;
                                    break
                                }
                        }
                        a[e] = t, r.activeTexture(r.TEXTURE0 + e);
                        var h = t._glTextures[this.renderer.CONTEXT_UID];
                        if (h) n ? t._glRenderTargets[this.renderer.CONTEXT_UID].resize(t.width, t.height) : h.upload(t.source);
                        else {
                            if (n) {
                                var l = new s.default(this.gl, t.width, t.height, t.scaleMode, t.resolution);
                                l.resize(t.width, t.height), t._glRenderTargets[this.renderer.CONTEXT_UID] = l, h = l.texture
                            } else(h = new i.GLTexture(this.gl, null, null, null, null)).bind(e), h.premultiplyAlpha = !0, h.upload(t.source);
                            t._glTextures[this.renderer.CONTEXT_UID] = h, t.on("update", this.updateTexture, this), t.on("dispose", this.destroyTexture, this), this._managedTextures.push(t), t.isPowerOfTwo ? (t.mipmap &amp;&amp; h.enableMipmap(), t.wrapMode === o.WRAP_MODES.CLAMP ? h.enableWrapClamp() : t.wrapMode === o.WRAP_MODES.REPEAT ? h.enableWrapRepeat() : h.enableWrapMirrorRepeat()) : h.enableWrapClamp(), t.scaleMode === o.SCALE_MODES.NEAREST ? h.enableNearestScaling() : h.enableLinearScaling()
                        }
                        return h
                    }, t.prototype.destroyTexture = function(t, e) {
                        if ((t = t.baseTexture || t).hasLoaded) {
                            var r = this.renderer.CONTEXT_UID,
                                n = t._glTextures,
                                i = t._glRenderTargets;
                            if (n[r] &amp;&amp; (this.renderer.unbindTexture(t), n[r].destroy(), t.off("update", this.updateTexture, this), t.off("dispose", this.destroyTexture, this), delete n[r], !e)) {
                                var o = this._managedTextures.indexOf(t); - 1 !== o &amp;&amp; (0, a.removeItems)(this._managedTextures, o, 1)
                            }
                            i &amp;&amp; i[r] &amp;&amp; (i[r].destroy(), delete i[r])
                        }
                    }, t.prototype.removeAll = function() {
                        for (var t = 0; t &lt; this._managedTextures.length; ++t) {
                            var e = this._managedTextures[t];
                            e._glTextures[this.renderer.CONTEXT_UID] &amp;&amp; delete e._glTextures[this.renderer.CONTEXT_UID]
                        }
                    }, t.prototype.destroy = function() {
                        for (var t = 0; t &lt; this._managedTextures.length; ++t) {
                            var e = this._managedTextures[t];
                            this.destroyTexture(e, !0), e.off("update", this.updateTexture, this), e.off("dispose", this.destroyTexture, this)
                        }
                        this._managedTextures = null
                    }, t
                }();
            r.default = u
        }, {
            "../../const": 46,
            "../../utils": 125,
            "./utils/RenderTarget": 96,
            "pixi-gl-core": 15
        }],
        84: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function o(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function s(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var a = n(t("../SystemRenderer")),
                u = n(t("./managers/MaskManager")),
                h = n(t("./managers/StencilManager")),
                l = n(t("./managers/FilterManager")),
                c = n(t("./utils/RenderTarget")),
                d = n(t("./utils/ObjectRenderer")),
                f = n(t("./TextureManager")),
                p = n(t("../../textures/BaseTexture")),
                v = n(t("./TextureGarbageCollector")),
                g = n(t("./WebGLState")),
                y = n(t("./utils/mapWebGLDrawModesToPixi")),
                m = n(t("./utils/validateContext")),
                _ = t("../../utils"),
                b = n(t("pixi-gl-core")),
                x = t("../../const"),
                T = 0,
                w = function(t) {
                    function e(r, n, s) {
                        i(this, e);
                        var a = o(this, t.call(this, "WebGL", r, n, s));
                        return a.legacy = a.options.legacy, a.legacy &amp;&amp; (b.default.VertexArrayObject.FORCE_NATIVE = !0), a.type = x.RENDERER_TYPE.WEBGL, a.handleContextLost = a.handleContextLost.bind(a), a.handleContextRestored = a.handleContextRestored.bind(a), a.view.addEventListener("webglcontextlost", a.handleContextLost, !1), a.view.addEventListener("webglcontextrestored", a.handleContextRestored, !1), a._contextOptions = {
                            alpha: a.transparent,
                            antialias: a.options.antialias,
                            premultipliedAlpha: a.transparent &amp;&amp; "notMultiplied" !== a.transparent,
                            stencil: !0,
                            preserveDrawingBuffer: a.options.preserveDrawingBuffer,
                            powerPreference: a.options.powerPreference
                        }, a._backgroundColorRgba[3] = a.transparent ? 0 : 1, a.maskManager = new u.default(a), a.stencilManager = new h.default(a), a.emptyRenderer = new d.default(a), a.currentRenderer = a.emptyRenderer, a.textureManager = null, a.filterManager = null, a.initPlugins(), a.options.context &amp;&amp; (0, m.default)(a.options.context), a.gl = a.options.context || b.default.createContext(a.view, a._contextOptions), a.CONTEXT_UID = T++, a.state = new g.default(a.gl), a.renderingToScreen = !0, a.boundTextures = null, a._activeShader = null, a._activeVao = null, a._activeRenderTarget = null, a._initContext(), a.drawModes = (0, y.default)(a.gl), a._nextTextureLocation = 0, a.setBlendMode(0), a
                    }
                    return s(e, t), e.prototype._initContext = function() {
                        var t = this.gl;
                        t.isContextLost() &amp;&amp; t.getExtension("WEBGL_lose_context") &amp;&amp; t.getExtension("WEBGL_lose_context").restoreContext();
                        var e = t.getParameter(t.MAX_TEXTURE_IMAGE_UNITS);
                        this._activeShader = null, this._activeVao = null, this.boundTextures = new Array(e), this.emptyTextures = new Array(e), this.textureManager = new f.default(this), this.filterManager = new l.default(this), this.textureGC = new v.default(this), this.state.resetToDefault(), this.rootRenderTarget = new c.default(t, this.width, this.height, null, this.resolution, !0), this.rootRenderTarget.clearColor = this._backgroundColorRgba, this.bindRenderTarget(this.rootRenderTarget);
                        var r = new b.default.GLTexture.fromData(t, null, 1, 1),
                            n = {
                                _glTextures: {}
                            };
                        n._glTextures[this.CONTEXT_UID] = {};
                        for (var i = 0; i &lt; e; i++) {
                            var o = new p.default;
                            o._glTextures[this.CONTEXT_UID] = r, this.boundTextures[i] = n, this.emptyTextures[i] = o, this.bindTexture(null, i)
                        }
                        this.emit("context", t), this.resize(this.screen.width, this.screen.height)
                    }, e.prototype.render = function(t, e, r, n, i) {
                        if (this.renderingToScreen = !e, this.emit("prerender"), this.gl &amp;&amp; !this.gl.isContextLost()) {
                            if (this._nextTextureLocation = 0, e || (this._lastObjectRendered = t), !i) {
                                var o = t.parent;
                                t.parent = this._tempDisplayObjectParent, t.updateTransform(), t.parent = o
                            }
                            this.bindRenderTexture(e, n), this.currentRenderer.start(), (void 0 !== r ? r : this.clearBeforeRender) &amp;&amp; this._activeRenderTarget.clear(), t.renderWebGL(this), this.currentRenderer.flush(), this.textureGC.update(), this.emit("postrender")
                        }
                    }, e.prototype.setObjectRenderer = function(t) {
                        this.currentRenderer !== t &amp;&amp; (this.currentRenderer.stop(), this.currentRenderer = t, this.currentRenderer.start())
                    }, e.prototype.flush = function() {
                        this.setObjectRenderer(this.emptyRenderer)
                    }, e.prototype.resize = function(t, e) {
                        a.default.prototype.resize.call(this, t, e), this.rootRenderTarget.resize(t, e), this._activeRenderTarget === this.rootRenderTarget &amp;&amp; (this.rootRenderTarget.activate(), this._activeShader &amp;&amp; (this._activeShader.uniforms.projectionMatrix = this.rootRenderTarget.projectionMatrix.toArray(!0)))
                    }, e.prototype.setBlendMode = function(t) {
                        this.state.setBlendMode(t)
                    }, e.prototype.clear = function(t) {
                        this._activeRenderTarget.clear(t)
                    }, e.prototype.setTransform = function(t) {
                        this._activeRenderTarget.transform = t
                    }, e.prototype.clearRenderTexture = function(t, e) {
                        var r = t.baseTexture._glRenderTargets[this.CONTEXT_UID];
                        return r &amp;&amp; r.clear(e), this
                    }, e.prototype.bindRenderTexture = function(t, e) {
                        var r = void 0;
                        if (t) {
                            var n = t.baseTexture;
                            n._glRenderTargets[this.CONTEXT_UID] || this.textureManager.updateTexture(n, 0), this.unbindTexture(n), (r = n._glRenderTargets[this.CONTEXT_UID]).setFrame(t.frame)
                        } else r = this.rootRenderTarget;
                        return r.transform = e, this.bindRenderTarget(r), this
                    }, e.prototype.bindRenderTarget = function(t) {
                        return t !== this._activeRenderTarget &amp;&amp; (this._activeRenderTarget = t, t.activate(), this._activeShader &amp;&amp; (this._activeShader.uniforms.projectionMatrix = t.projectionMatrix.toArray(!0)), this.stencilManager.setMaskStack(t.stencilMaskStack)), this
                    }, e.prototype.bindShader = function(t, e) {
                        return this._activeShader !== t &amp;&amp; (this._activeShader = t, t.bind(), !1 !== e &amp;&amp; (t.uniforms.projectionMatrix = this._activeRenderTarget.projectionMatrix.toArray(!0))), this
                    }, e.prototype.bindTexture = function(t, e, r) {
                        if (t = t || this.emptyTextures[e], t = t.baseTexture || t, t.touched = this.textureGC.count, r) e = e || 0;
                        else {
                            for (var n = 0; n &lt; this.boundTextures.length; n++)
                                if (this.boundTextures[n] === t) return n;
                            void 0 === e &amp;&amp; (this._nextTextureLocation++, this._nextTextureLocation %= this.boundTextures.length, e = this.boundTextures.length - this._nextTextureLocation - 1)
                        }
                        var i = this.gl,
                            o = t._glTextures[this.CONTEXT_UID];
                        return o ? (this.boundTextures[e] = t, i.activeTexture(i.TEXTURE0 + e), i.bindTexture(i.TEXTURE_2D, o.texture)) : this.textureManager.updateTexture(t, e), e
                    }, e.prototype.unbindTexture = function(t) {
                        var e = this.gl;
                        t = t.baseTexture || t;
                        for (var r = 0; r &lt; this.boundTextures.length; r++) this.boundTextures[r] === t &amp;&amp; (this.boundTextures[r] = this.emptyTextures[r], e.activeTexture(e.TEXTURE0 + r), e.bindTexture(e.TEXTURE_2D, this.emptyTextures[r]._glTextures[this.CONTEXT_UID].texture));
                        return this
                    }, e.prototype.createVao = function() {
                        return new b.default.VertexArrayObject(this.gl, this.state.attribState)
                    }, e.prototype.bindVao = function(t) {
                        return this._activeVao === t ? this : (t ? t.bind() : this._activeVao &amp;&amp; this._activeVao.unbind(), this._activeVao = t, this)
                    }, e.prototype.reset = function() {
                        this.setObjectRenderer(this.emptyRenderer), this.bindVao(null), this._activeShader = null, this._activeRenderTarget = this.rootRenderTarget;
                        for (var t = 0; t &lt; this.boundTextures.length; t++) this.boundTextures[t] = this.emptyTextures[t];
                        return this.rootRenderTarget.activate(), this.state.resetToDefault(), this
                    }, e.prototype.handleContextLost = function(t) {
                        t.preventDefault()
                    }, e.prototype.handleContextRestored = function() {
                        this.textureManager.removeAll(), this.filterManager.destroy(!0), this._initContext()
                    }, e.prototype.destroy = function(e) {
                        this.destroyPlugins(), this.view.removeEventListener("webglcontextlost", this.handleContextLost), this.view.removeEventListener("webglcontextrestored", this.handleContextRestored), this.textureManager.destroy(), t.prototype.destroy.call(this, e), this.uid = 0, this.maskManager.destroy(), this.stencilManager.destroy(), this.filterManager.destroy(), this.maskManager = null, this.filterManager = null, this.textureManager = null, this.currentRenderer = null, this.handleContextLost = null, this.handleContextRestored = null, this._contextOptions = null, this.gl.useProgram(null), this.gl.getExtension("WEBGL_lose_context") &amp;&amp; this.gl.getExtension("WEBGL_lose_context").loseContext(), this.gl = null
                    }, e
                }(a.default);
            r.default = w, _.pluginTarget.mixin(w)
        }, {
            "../../const": 46,
            "../../textures/BaseTexture": 112,
            "../../utils": 125,
            "../SystemRenderer": 76,
            "./TextureGarbageCollector": 82,
            "./TextureManager": 83,
            "./WebGLState": 85,
            "./managers/FilterManager": 90,
            "./managers/MaskManager": 91,
            "./managers/StencilManager": 92,
            "./utils/ObjectRenderer": 94,
            "./utils/RenderTarget": 96,
            "./utils/mapWebGLDrawModesToPixi": 99,
            "./utils/validateContext": 100,
            "pixi-gl-core": 15
        }],
        85: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("./utils/mapWebGLBlendModesToPixi")),
                o = function() {
                    function t(e) {
                        n(this, t), this.activeState = new Uint8Array(16), this.defaultState = new Uint8Array(16), this.defaultState[0] = 1, this.stackIndex = 0, this.stack = [], this.gl = e, this.maxAttribs = e.getParameter(e.MAX_VERTEX_ATTRIBS), this.attribState = {
                            tempAttribState: new Array(this.maxAttribs),
                            attribState: new Array(this.maxAttribs)
                        }, this.blendModes = (0, i.default)(e), this.nativeVaoExtension = e.getExtension("OES_vertex_array_object") || e.getExtension("MOZ_OES_vertex_array_object") || e.getExtension("WEBKIT_OES_vertex_array_object")
                    }
                    return t.prototype.push = function() {
                        var t = this.stack[this.stackIndex];
                        t || (t = this.stack[this.stackIndex] = new Uint8Array(16)), ++this.stackIndex;
                        for (var e = 0; e &lt; this.activeState.length; e++) t[e] = this.activeState[e]
                    }, t.prototype.pop = function() {
                        var t = this.stack[--this.stackIndex];
                        this.setState(t)
                    }, t.prototype.setState = function(t) {
                        this.setBlend(t[0]), this.setDepthTest(t[1]), this.setFrontFace(t[2]), this.setCullFace(t[3]), this.setBlendMode(t[4])
                    }, t.prototype.setBlend = function(t) {
                        t = t ? 1 : 0, this.activeState[0] !== t &amp;&amp; (this.activeState[0] = t, this.gl[t ? "enable" : "disable"](this.gl.BLEND))
                    }, t.prototype.setBlendMode = function(t) {
                        if (t !== this.activeState[4]) {
                            this.activeState[4] = t;
                            var e = this.blendModes[t];
                            2 === e.length ? this.gl.blendFunc(e[0], e[1]) : this.gl.blendFuncSeparate(e[0], e[1], e[2], e[3])
                        }
                    }, t.prototype.setDepthTest = function(t) {
                        t = t ? 1 : 0, this.activeState[1] !== t &amp;&amp; (this.activeState[1] = t, this.gl[t ? "enable" : "disable"](this.gl.DEPTH_TEST))
                    }, t.prototype.setCullFace = function(t) {
                        t = t ? 1 : 0, this.activeState[3] !== t &amp;&amp; (this.activeState[3] = t, this.gl[t ? "enable" : "disable"](this.gl.CULL_FACE))
                    }, t.prototype.setFrontFace = function(t) {
                        t = t ? 1 : 0, this.activeState[2] !== t &amp;&amp; (this.activeState[2] = t, this.gl.frontFace(this.gl[t ? "CW" : "CCW"]))
                    }, t.prototype.resetAttributes = function() {
                        for (var t = 0; t &lt; this.attribState.tempAttribState.length; t++) this.attribState.tempAttribState[t] = 0;
                        for (var e = 0; e &lt; this.attribState.attribState.length; e++) this.attribState.attribState[e] = 0;
                        for (var r = 1; r &lt; this.maxAttribs; r++) this.gl.disableVertexAttribArray(r)
                    }, t.prototype.resetToDefault = function() {
                        this.nativeVaoExtension &amp;&amp; this.nativeVaoExtension.bindVertexArrayOES(null), this.resetAttributes();
                        for (var t = 0; t &lt; this.activeState.length; ++t) this.activeState[t] = 32;
                        this.gl.pixelStorei(this.gl.UNPACK_FLIP_Y_WEBGL, !1), this.setState(this.defaultState)
                    }, t
                }();
            r.default = o
        }, {
            "./utils/mapWebGLBlendModesToPixi": 98
        }],
        86: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var o = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                s = n(t("./extractUniformsFromSrc")),
                a = t("../../../utils"),
                u = t("../../../const"),
                h = n(t("../../../settings")),
                l = {},
                c = function() {
                    function t(e, r, n) {
                        i(this, t), this.vertexSrc = e || t.defaultVertexSrc, this.fragmentSrc = r || t.defaultFragmentSrc, this._blendMode = u.BLEND_MODES.NORMAL, this.uniformData = n || (0, s.default)(this.vertexSrc, this.fragmentSrc, "projectionMatrix|uSampler"), this.uniforms = {};
                        for (var o in this.uniformData) this.uniforms[o] = this.uniformData[o].value, this.uniformData[o].type &amp;&amp; (this.uniformData[o].type = this.uniformData[o].type.toLowerCase());
                        this.glShaders = {}, l[this.vertexSrc + this.fragmentSrc] || (l[this.vertexSrc + this.fragmentSrc] = (0, a.uid)()), this.glShaderKey = l[this.vertexSrc + this.fragmentSrc], this.padding = 4, this.resolution = h.default.FILTER_RESOLUTION, this.enabled = !0, this.autoFit = !0
                    }
                    return t.prototype.apply = function(t, e, r, n, i) {
                        t.applyFilter(this, e, r, n)
                    }, o(t, [{
                        key: "blendMode",
                        get: function() {
                            return this._blendMode
                        },
                        set: function(t) {
                            this._blendMode = t
                        }
                    }], [{
                        key: "defaultVertexSrc",
                        get: function() {
                            return ["attribute vec2 aVertexPosition;", "attribute vec2 aTextureCoord;", "uniform mat3 projectionMatrix;", "uniform mat3 filterMatrix;", "varying vec2 vTextureCoord;", "varying vec2 vFilterCoord;", "void main(void){", "   gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);", "   vFilterCoord = ( filterMatrix * vec3( aTextureCoord, 1.0)  ).xy;", "   vTextureCoord = aTextureCoord ;", "}"].join("\n")
                        }
                    }, {
                        key: "defaultFragmentSrc",
                        get: function() {
                            return ["varying vec2 vTextureCoord;", "varying vec2 vFilterCoord;", "uniform sampler2D uSampler;", "uniform sampler2D filterSampler;", "void main(void){", "   vec4 masky = texture2D(filterSampler, vFilterCoord);", "   vec4 sample = texture2D(uSampler, vTextureCoord);", "   vec4 color;", "   if(mod(vFilterCoord.x, 1.0) &gt; 0.5)", "   {", "     color = vec4(1.0, 0.0, 0.0, 1.0);", "   }", "   else", "   {", "     color = vec4(0.0, 1.0, 0.0, 1.0);", "   }", "   gl_FragColor = mix(sample, masky, 0.5);", "   gl_FragColor *= sample.a;", "}"].join("\n")
                        }
                    }]), t
                }();
            r.default = c
        }, {
            "../../../const": 46,
            "../../../settings": 101,
            "../../../utils": 125,
            "./extractUniformsFromSrc": 87
        }],
        87: [function(t, e, r) {
            "use strict";

            function n(t) {
                for (var e = new RegExp("^(projectionMatrix|uSampler|filterArea|filterClamp)$"), r = {}, n = void 0, o = t.replace(/\s+/g, " ").split(/\s*;\s*/), s = 0; s &lt; o.length; s++) {
                    var a = o[s].trim();
                    if (a.indexOf("uniform") &gt; -1) {
                        var u = a.split(" "),
                            h = u[1],
                            l = u[2],
                            c = 1;
                        l.indexOf("[") &gt; -1 &amp;&amp; (l = (n = l.split(/\[|]/))[0], c *= Number(n[1])), l.match(e) || (r[l] = {
                            value: i(h, c),
                            name: l,
                            type: h
                        })
                    }
                }
                return r
            }
            r.__esModule = !0, r.default = function(t, e, r) {
                var i = n(t),
                    o = n(e);
                return Object.assign(i, o)
            };
            var i = function(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }(t("pixi-gl-core")).default.shader.defaultValue
        }, {
            "pixi-gl-core": 15
        }],
        88: [function(t, e, r) {
            "use strict";
            r.__esModule = !0, r.calculateScreenSpaceMatrix = function(t, e, r) {
                var n = t.identity();
                return n.translate(e.x / r.width, e.y / r.height), n.scale(r.width, r.height), n
            }, r.calculateNormalizedScreenSpaceMatrix = function(t, e, r) {
                var n = t.identity();
                n.translate(e.x / r.width, e.y / r.height);
                var i = r.width / e.width,
                    o = r.height / e.height;
                return n.scale(i, o), n
            }, r.calculateSpriteMatrix = function(t, e, r, i) {
                var o = i._texture.orig,
                    s = t.set(r.width, 0, 0, r.height, e.x, e.y),
                    a = i.worldTransform.copy(n.Matrix.TEMP_MATRIX);
                return a.invert(), s.prepend(a), s.scale(1 / o.width, 1 / o.height), s.translate(i.anchor.x, i.anchor.y), s
            };
            var n = t("../../../math")
        }, {
            "../../../math": 70
        }],
        89: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function o(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function s(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var a = n(t("../Filter")),
                u = t("../../../../math"),
                h = (t("path"), n(t("../../../../textures/TextureMatrix"))),
                l = function(t) {
                    function e(r) {
                        i(this, e);
                        var n = new u.Matrix,
                            s = o(this, t.call(this, "attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\nuniform mat3 otherMatrix;\n\nvarying vec2 vMaskCoord;\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n    gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n\n    vTextureCoord = aTextureCoord;\n    vMaskCoord = ( otherMatrix * vec3( aTextureCoord, 1.0)  ).xy;\n}\n", "varying vec2 vMaskCoord;\nvarying vec2 vTextureCoord;\n\nuniform sampler2D uSampler;\nuniform sampler2D mask;\nuniform float alpha;\nuniform vec4 maskClamp;\n\nvoid main(void)\n{\n    float clip = step(3.5,\n        step(maskClamp.x, vMaskCoord.x) +\n        step(maskClamp.y, vMaskCoord.y) +\n        step(vMaskCoord.x, maskClamp.z) +\n        step(vMaskCoord.y, maskClamp.w));\n\n    vec4 original = texture2D(uSampler, vTextureCoord);\n    vec4 masky = texture2D(mask, vMaskCoord);\n\n    original *= (masky.r * masky.a * alpha * clip);\n\n    gl_FragColor = original;\n}\n"));
                        return r.renderable = !1, s.maskSprite = r, s.maskMatrix = n, s
                    }
                    return s(e, t), e.prototype.apply = function(t, e, r) {
                        var n = this.maskSprite,
                            i = this.maskSprite.texture;
                        i.valid &amp;&amp; (i.transform || (i.transform = new h.default(i, 0)), i.transform.update(), this.uniforms.mask = i, this.uniforms.otherMatrix = t.calculateSpriteMatrix(this.maskMatrix, n).prepend(i.transform.mapCoord), this.uniforms.alpha = n.worldAlpha, this.uniforms.maskClamp = i.transform.uClampFrame, t.applyFilter(this, e, r))
                    }, e
                }(a.default);
            r.default = l
        }, {
            "../../../../math": 70,
            "../../../../textures/TextureMatrix": 116,
            "../Filter": 86,
            path: 8
        }],
        90: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function o(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }

            function s(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var a = n(t("./WebGLManager")),
                u = n(t("../utils/RenderTarget")),
                h = n(t("../utils/Quad")),
                l = t("../../../math"),
                c = n(t("../../../Shader")),
                d = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../filters/filterTransforms")),
                f = n(t("bit-twiddle")),
                p = function() {
                    function t() {
                        s(this, t), this.renderTarget = null, this.target = null, this.resolution = 1, this.sourceFrame = new l.Rectangle, this.destinationFrame = new l.Rectangle, this.filters = []
                    }
                    return t.prototype.clear = function() {
                        this.filters = null, this.target = null, this.renderTarget = null
                    }, t
                }(),
                v = function(t) {
                    function e(r) {
                        s(this, e);
                        var n = i(this, t.call(this, r));
                        return n.gl = n.renderer.gl, n.quad = new h.default(n.gl, r.state.attribState), n.shaderCache = {}, n.pool = {}, n.filterData = null, n.managedFilters = [], n.renderer.on("prerender", n.onPrerender, n), n._screenWidth = r.view.width, n._screenHeight = r.view.height, n
                    }
                    return o(e, t), e.prototype.pushFilter = function(t, e) {
                        var r = this.renderer,
                            n = this.filterData;
                        if (!n) {
                            n = this.renderer._activeRenderTarget.filterStack;
                            var i = new p;
                            i.sourceFrame = i.destinationFrame = this.renderer._activeRenderTarget.size, i.renderTarget = r._activeRenderTarget, this.renderer._activeRenderTarget.filterData = n = {
                                index: 0,
                                stack: [i]
                            }, this.filterData = n
                        }
                        var o = n.stack[++n.index],
                            s = n.stack[0].destinationFrame;
                        o || (o = n.stack[n.index] = new p);
                        var a = t.filterArea &amp;&amp; 0 === t.filterArea.x &amp;&amp; 0 === t.filterArea.y &amp;&amp; t.filterArea.width === r.screen.width &amp;&amp; t.filterArea.height === r.screen.height,
                            u = e[0].resolution,
                            h = 0 | e[0].padding,
                            l = a ? r.screen : t.filterArea || t.getBounds(!0),
                            c = o.sourceFrame,
                            d = o.destinationFrame;
                        c.x = (l.x * u | 0) / u, c.y = (l.y * u | 0) / u, c.width = (l.width * u | 0) / u, c.height = (l.height * u | 0) / u, a || (n.stack[0].renderTarget.transform || e[0].autoFit &amp;&amp; c.fit(s), c.pad(h)), d.width = c.width, d.height = c.height;
                        var f = this.getPotRenderTarget(r.gl, c.width, c.height, u);
                        o.target = t, o.filters = e, o.resolution = u, o.renderTarget = f, f.setFrame(d, c), r.bindRenderTarget(f), f.clear()
                    }, e.prototype.popFilter = function() {
                        var t = this.filterData,
                            e = t.stack[t.index - 1],
                            r = t.stack[t.index];
                        this.quad.map(r.renderTarget.size, r.sourceFrame).upload();
                        var n = r.filters;
                        if (1 === n.length) n[0].apply(this, r.renderTarget, e.renderTarget, !1, r), this.freePotRenderTarget(r.renderTarget);
                        else {
                            var i = r.renderTarget,
                                o = this.getPotRenderTarget(this.renderer.gl, r.sourceFrame.width, r.sourceFrame.height, r.resolution);
                            o.setFrame(r.destinationFrame, r.sourceFrame), o.clear();
                            var s = 0;
                            for (s = 0; s &lt; n.length - 1; ++s) {
                                n[s].apply(this, i, o, !0, r);
                                var a = i;
                                i = o, o = a
                            }
                            n[s].apply(this, i, e.renderTarget, !1, r), this.freePotRenderTarget(i), this.freePotRenderTarget(o)
                        }
                        r.clear(), t.index--, 0 === t.index &amp;&amp; (this.filterData = null)
                    }, e.prototype.applyFilter = function(t, e, r, n) {
                        var i = this.renderer,
                            o = i.gl,
                            s = t.glShaders[i.CONTEXT_UID];
                        s || (t.glShaderKey ? (s = this.shaderCache[t.glShaderKey]) || (s = new c.default(this.gl, t.vertexSrc, t.fragmentSrc), t.glShaders[i.CONTEXT_UID] = this.shaderCache[t.glShaderKey] = s, this.managedFilters.push(t)) : (s = t.glShaders[i.CONTEXT_UID] = new c.default(this.gl, t.vertexSrc, t.fragmentSrc), this.managedFilters.push(t)), i.bindVao(null), this.quad.initVao(s)), i.bindVao(this.quad.vao), i.bindRenderTarget(r), n &amp;&amp; (o.disable(o.SCISSOR_TEST), i.clear(), o.enable(o.SCISSOR_TEST)), r === i.maskManager.scissorRenderTarget &amp;&amp; i.maskManager.pushScissorMask(null, i.maskManager.scissorData), i.bindShader(s);
                        var a = this.renderer.emptyTextures[0];
                        this.renderer.boundTextures[0] = a, this.syncUniforms(s, t), i.state.setBlendMode(t.blendMode), o.activeTexture(o.TEXTURE0), o.bindTexture(o.TEXTURE_2D, e.texture.texture), this.quad.vao.draw(this.renderer.gl.TRIANGLES, 6, 0), o.bindTexture(o.TEXTURE_2D, a._glTextures[this.renderer.CONTEXT_UID].texture)
                    }, e.prototype.syncUniforms = function(t, e) {
                        var r = e.uniformData,
                            n = e.uniforms,
                            i = 1,
                            o = void 0;
                        if (t.uniforms.filterArea) {
                            o = this.filterData.stack[this.filterData.index];
                            var s = t.uniforms.filterArea;
                            s[0] = o.renderTarget.size.width, s[1] = o.renderTarget.size.height, s[2] = o.sourceFrame.x, s[3] = o.sourceFrame.y, t.uniforms.filterArea = s
                        }
                        if (t.uniforms.filterClamp) {
                            o = o || this.filterData.stack[this.filterData.index];
                            var a = t.uniforms.filterClamp;
                            a[0] = 0, a[1] = 0, a[2] = (o.sourceFrame.width - 1) / o.renderTarget.size.width, a[3] = (o.sourceFrame.height - 1) / o.renderTarget.size.height, t.uniforms.filterClamp = a
                        }
                        for (var u in r) {
                            var h = r[u].type;
                            if ("sampler2d" === h &amp;&amp; 0 !== n[u]) {
                                if (n[u].baseTexture) t.uniforms[u] = this.renderer.bindTexture(n[u].baseTexture, i);
                                else {
                                    t.uniforms[u] = i;
                                    var l = this.renderer.gl;
                                    this.renderer.boundTextures[i] = this.renderer.emptyTextures[i], l.activeTexture(l.TEXTURE0 + i), n[u].texture.bind()
                                }
                                i++
                            } else if ("mat3" === h) void 0 !== n[u].a ? t.uniforms[u] = n[u].toArray(!0) : t.uniforms[u] = n[u];
                            else if ("vec2" === h)
                                if (void 0 !== n[u].x) {
                                    var c = t.uniforms[u] || new Float32Array(2);
                                    c[0] = n[u].x, c[1] = n[u].y, t.uniforms[u] = c
                                } else t.uniforms[u] = n[u];
                            else "float" === h ? t.uniforms.data[u].value !== r[u] &amp;&amp; (t.uniforms[u] = n[u]) : t.uniforms[u] = n[u]
                        }
                    }, e.prototype.getRenderTarget = function(t, e) {
                        var r = this.filterData.stack[this.filterData.index],
                            n = this.getPotRenderTarget(this.renderer.gl, r.sourceFrame.width, r.sourceFrame.height, e || r.resolution);
                        return n.setFrame(r.destinationFrame, r.sourceFrame), n
                    }, e.prototype.returnRenderTarget = function(t) {
                        this.freePotRenderTarget(t)
                    }, e.prototype.calculateScreenSpaceMatrix = function(t) {
                        var e = this.filterData.stack[this.filterData.index];
                        return d.calculateScreenSpaceMatrix(t, e.sourceFrame, e.renderTarget.size)
                    }, e.prototype.calculateNormalizedScreenSpaceMatrix = function(t) {
                        var e = this.filterData.stack[this.filterData.index];
                        return d.calculateNormalizedScreenSpaceMatrix(t, e.sourceFrame, e.renderTarget.size, e.destinationFrame)
                    }, e.prototype.calculateSpriteMatrix = function(t, e) {
                        var r = this.filterData.stack[this.filterData.index];
                        return d.calculateSpriteMatrix(t, r.sourceFrame, r.renderTarget.size, e)
                    }, e.prototype.destroy = function() {
                        var t = arguments.length &gt; 0 &amp;&amp; void 0 !== arguments[0] &amp;&amp; arguments[0],
                            e = this.renderer,
                            r = this.managedFilters;
                        e.off("prerender", this.onPrerender, this);
                        for (var n = 0; n &lt; r.length; n++) t || r[n].glShaders[e.CONTEXT_UID].destroy(), delete r[n].glShaders[e.CONTEXT_UID];
                        this.shaderCache = {}, t ? this.pool = {} : this.emptyPool()
                    }, e.prototype.getPotRenderTarget = function(t, e, r, n) {
                        var i = "screen";
                        r *= n, (e *= n) === this._screenWidth &amp;&amp; r === this._screenHeight || (i = (65535 &amp; (e = f.default.nextPow2(e))) &lt;&lt; 16 | 65535 &amp; (r = f.default.nextPow2(r))), this.pool[i] || (this.pool[i] = []);
                        var o = this.pool[i].pop();
                        if (!o) {
                            var s = this.renderer.boundTextures[0];
                            t.activeTexture(t.TEXTURE0), o = new u.default(t, e, r, null, 1), t.bindTexture(t.TEXTURE_2D, s._glTextures[this.renderer.CONTEXT_UID].texture)
                        }
                        return o.resolution = n, o.defaultFrame.width = o.size.width = e / n, o.defaultFrame.height = o.size.height = r / n, o.filterPoolKey = i, o
                    }, e.prototype.emptyPool = function() {
                        for (var t in this.pool) {
                            var e = this.pool[t];
                            if (e)
                                for (var r = 0; r &lt; e.length; r++) e[r].destroy(!0)
                        }
                        this.pool = {}
                    }, e.prototype.freePotRenderTarget = function(t) {
                        this.pool[t.filterPoolKey].push(t)
                    }, e.prototype.onPrerender = function() {
                        if (this._screenWidth !== this.renderer.view.width || this._screenHeight !== this.renderer.view.height) {
                            this._screenWidth = this.renderer.view.width, this._screenHeight = this.renderer.view.height;
                            var t = this.pool.screen;
                            if (t)
                                for (var e = 0; e &lt; t.length; e++) t[e].destroy(!0);
                            this.pool.screen = []
                        }
                    }, e
                }(a.default);
            r.default = v
        }, {
            "../../../Shader": 44,
            "../../../math": 70,
            "../filters/filterTransforms": 88,
            "../utils/Quad": 95,
            "../utils/RenderTarget": 96,
            "./WebGLManager": 93,
            "bit-twiddle": 1
        }],
        91: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function o(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function s(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var a = n(t("./WebGLManager")),
                u = n(t("../filters/spriteMask/SpriteMaskFilter")),
                h = function(t) {
                    function e(r) {
                        i(this, e);
                        var n = o(this, t.call(this, r));
                        return n.scissor = !1, n.scissorData = null, n.scissorRenderTarget = null, n.enableScissor = !0, n.alphaMaskPool = [], n.alphaMaskIndex = 0, n
                    }
                    return s(e, t), e.prototype.pushMask = function(t, e) {
                        if (e.texture) this.pushSpriteMask(t, e);
                        else if (this.enableScissor &amp;&amp; !this.scissor &amp;&amp; this.renderer._activeRenderTarget.root &amp;&amp; !this.renderer.stencilManager.stencilMaskStack.length &amp;&amp; e.isFastRect()) {
                            var r = e.worldTransform,
                                n = Math.atan2(r.b, r.a);
                            (n = Math.round(n * (180 / Math.PI))) % 90 ? this.pushStencilMask(e) : this.pushScissorMask(t, e)
                        } else this.pushStencilMask(e)
                    }, e.prototype.popMask = function(t, e) {
                        e.texture ? this.popSpriteMask(t, e) : this.enableScissor &amp;&amp; !this.renderer.stencilManager.stencilMaskStack.length ? this.popScissorMask(t, e) : this.popStencilMask(t, e)
                    }, e.prototype.pushSpriteMask = function(t, e) {
                        var r = this.alphaMaskPool[this.alphaMaskIndex];
                        r || (r = this.alphaMaskPool[this.alphaMaskIndex] = [new u.default(e)]), r[0].resolution = this.renderer.resolution, r[0].maskSprite = e, t.filterArea = e.getBounds(!0), this.renderer.filterManager.pushFilter(t, r), this.alphaMaskIndex++
                    }, e.prototype.popSpriteMask = function() {
                        this.renderer.filterManager.popFilter(), this.alphaMaskIndex--
                    }, e.prototype.pushStencilMask = function(t) {
                        this.renderer.currentRenderer.stop(), this.renderer.stencilManager.pushStencil(t)
                    }, e.prototype.popStencilMask = function() {
                        this.renderer.currentRenderer.stop(), this.renderer.stencilManager.popStencil()
                    }, e.prototype.pushScissorMask = function(t, e) {
                        e.renderable = !0;
                        var r = this.renderer._activeRenderTarget,
                            n = e.getBounds();
                        n.fit(r.size), e.renderable = !1, this.renderer.gl.enable(this.renderer.gl.SCISSOR_TEST);
                        var i = this.renderer.resolution;
                        this.renderer.gl.scissor(n.x * i, (r.root ? r.size.height - n.y - n.height : n.y) * i, n.width * i, n.height * i), this.scissorRenderTarget = r, this.scissorData = e, this.scissor = !0
                    }, e.prototype.popScissorMask = function() {
                        this.scissorRenderTarget = null, this.scissorData = null, this.scissor = !1;
                        var t = this.renderer.gl;
                        t.disable(t.SCISSOR_TEST)
                    }, e
                }(a.default);
            r.default = h
        }, {
            "../filters/spriteMask/SpriteMaskFilter": 89,
            "./WebGLManager": 93
        }],
        92: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function i(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function o(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var s = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("./WebGLManager")),
                a = function(t) {
                    function e(r) {
                        n(this, e);
                        var o = i(this, t.call(this, r));
                        return o.stencilMaskStack = null, o
                    }
                    return o(e, t), e.prototype.setMaskStack = function(t) {
                        this.stencilMaskStack = t;
                        var e = this.renderer.gl;
                        0 === t.length ? e.disable(e.STENCIL_TEST) : e.enable(e.STENCIL_TEST)
                    }, e.prototype.pushStencil = function(t) {
                        this.renderer.setObjectRenderer(this.renderer.plugins.graphics), this.renderer._activeRenderTarget.attachStencilBuffer();
                        var e = this.renderer.gl,
                            r = this.stencilMaskStack.length;
                        0 === r &amp;&amp; e.enable(e.STENCIL_TEST), this.stencilMaskStack.push(t), e.colorMask(!1, !1, !1, !1), e.stencilFunc(e.EQUAL, r, this._getBitwiseMask()), e.stencilOp(e.KEEP, e.KEEP, e.INCR), this.renderer.plugins.graphics.render(t), this._useCurrent()
                    }, e.prototype.popStencil = function() {
                        this.renderer.setObjectRenderer(this.renderer.plugins.graphics);
                        var t = this.renderer.gl,
                            e = this.stencilMaskStack.pop();
                        0 === this.stencilMaskStack.length ? (t.disable(t.STENCIL_TEST), t.clear(t.STENCIL_BUFFER_BIT), t.clearStencil(0)) : (t.colorMask(!1, !1, !1, !1), t.stencilOp(t.KEEP, t.KEEP, t.DECR), this.renderer.plugins.graphics.render(e), this._useCurrent())
                    }, e.prototype._useCurrent = function() {
                        var t = this.renderer.gl;
                        t.colorMask(!0, !0, !0, !0), t.stencilFunc(t.EQUAL, this.stencilMaskStack.length, this._getBitwiseMask()), t.stencilOp(t.KEEP, t.KEEP, t.KEEP)
                    }, e.prototype._getBitwiseMask = function() {
                        return (1 &lt;&lt; this.stencilMaskStack.length) - 1
                    }, e.prototype.destroy = function() {
                        s.default.prototype.destroy.call(this), this.stencilMaskStack.stencilStack = null
                    }, e
                }(s.default);
            r.default = a
        }, {
            "./WebGLManager": 93
        }],
        93: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function() {
                function t(e) {
                    n(this, t), this.renderer = e, this.renderer.on("context", this.onContextChange, this)
                }
                return t.prototype.onContextChange = function() {}, t.prototype.destroy = function() {
                    this.renderer.off("context", this.onContextChange, this), this.renderer = null
                }, t
            }();
            r.default = i
        }, {}],
        94: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function i(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function o(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var s = function(t) {
                function e() {
                    return n(this, e), i(this, t.apply(this, arguments))
                }
                return o(e, t), e.prototype.start = function() {}, e.prototype.stop = function() {
                    this.flush()
                }, e.prototype.flush = function() {}, e.prototype.render = function(t) {}, e
            }(function(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }(t("../managers/WebGLManager")).default);
            r.default = s
        }, {
            "../managers/WebGLManager": 93
        }],
        95: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var o = n(t("pixi-gl-core")),
                s = n(t("../../../utils/createIndicesForQuads")),
                a = function() {
                    function t(e, r) {
                        i(this, t), this.gl = e, this.vertices = new Float32Array([-1, -1, 1, -1, 1, 1, -1, 1]), this.uvs = new Float32Array([0, 0, 1, 0, 1, 1, 0, 1]), this.interleaved = new Float32Array(16);
                        for (var n = 0; n &lt; 4; n++) this.interleaved[4 * n] = this.vertices[2 * n], this.interleaved[4 * n + 1] = this.vertices[2 * n + 1], this.interleaved[4 * n + 2] = this.uvs[2 * n], this.interleaved[4 * n + 3] = this.uvs[2 * n + 1];
                        this.indices = (0, s.default)(1), this.vertexBuffer = o.default.GLBuffer.createVertexBuffer(e, this.interleaved, e.STATIC_DRAW), this.indexBuffer = o.default.GLBuffer.createIndexBuffer(e, this.indices, e.STATIC_DRAW), this.vao = new o.default.VertexArrayObject(e, r)
                    }
                    return t.prototype.initVao = function(t) {
                        this.vao.clear().addIndex(this.indexBuffer).addAttribute(this.vertexBuffer, t.attributes.aVertexPosition, this.gl.FLOAT, !1, 16, 0).addAttribute(this.vertexBuffer, t.attributes.aTextureCoord, this.gl.FLOAT, !1, 16, 8)
                    }, t.prototype.map = function(t, e) {
                        var r = 0,
                            n = 0;
                        return this.uvs[0] = r, this.uvs[1] = n, this.uvs[2] = r + e.width / t.width, this.uvs[3] = n, this.uvs[4] = r + e.width / t.width, this.uvs[5] = n + e.height / t.height, this.uvs[6] = r, this.uvs[7] = n + e.height / t.height, r = e.x, n = e.y, this.vertices[0] = r, this.vertices[1] = n, this.vertices[2] = r + e.width, this.vertices[3] = n, this.vertices[4] = r + e.width, this.vertices[5] = n + e.height, this.vertices[6] = r, this.vertices[7] = n + e.height, this
                    }, t.prototype.upload = function() {
                        for (var t = 0; t &lt; 4; t++) this.interleaved[4 * t] = this.vertices[2 * t], this.interleaved[4 * t + 1] = this.vertices[2 * t + 1], this.interleaved[4 * t + 2] = this.uvs[2 * t], this.interleaved[4 * t + 3] = this.uvs[2 * t + 1];
                        return this.vertexBuffer.upload(this.interleaved), this
                    }, t.prototype.destroy = function() {
                        var t = this.gl;
                        t.deleteBuffer(this.vertexBuffer), t.deleteBuffer(this.indexBuffer)
                    }, t
                }();
            r.default = a
        }, {
            "../../../utils/createIndicesForQuads": 123,
            "pixi-gl-core": 15
        }],
        96: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = t("../../../math"),
                o = t("../../../const"),
                s = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("../../../settings")),
                a = t("pixi-gl-core"),
                u = function() {
                    function t(e, r, u, h, l, c) {
                        n(this, t), this.gl = e, this.frameBuffer = null, this.texture = null, this.clearColor = [0, 0, 0, 0], this.size = new i.Rectangle(0, 0, 1, 1), this.resolution = l || s.default.RESOLUTION, this.projectionMatrix = new i.Matrix, this.transform = null, this.frame = null, this.defaultFrame = new i.Rectangle, this.destinationFrame = null, this.sourceFrame = null, this.stencilBuffer = null, this.stencilMaskStack = [], this.filterData = null, this.filterPoolKey = "", this.scaleMode = void 0 !== h ? h : s.default.SCALE_MODE, this.root = c, this.root ? (this.frameBuffer = new a.GLFramebuffer(e, 100, 100), this.frameBuffer.framebuffer = null) : (this.frameBuffer = a.GLFramebuffer.createRGBA(e, 100, 100), this.scaleMode === o.SCALE_MODES.NEAREST ? this.frameBuffer.texture.enableNearestScaling() : this.frameBuffer.texture.enableLinearScaling(), this.texture = this.frameBuffer.texture), this.setFrame(), this.resize(r, u)
                    }
                    return t.prototype.clear = function(t) {
                        var e = t || this.clearColor;
                        this.frameBuffer.clear(e[0], e[1], e[2], e[3])
                    }, t.prototype.attachStencilBuffer = function() {
                        this.root || this.frameBuffer.enableStencil()
                    }, t.prototype.setFrame = function(t, e) {
                        this.destinationFrame = t || this.destinationFrame || this.defaultFrame, this.sourceFrame = e || this.sourceFrame || this.destinationFrame
                    }, t.prototype.activate = function() {
                        var t = this.gl;
                        this.frameBuffer.bind(), this.calculateProjection(this.destinationFrame, this.sourceFrame), this.transform &amp;&amp; this.projectionMatrix.append(this.transform), this.destinationFrame !== this.sourceFrame ? (t.enable(t.SCISSOR_TEST), t.scissor(0 | this.destinationFrame.x, 0 | this.destinationFrame.y, this.destinationFrame.width * this.resolution | 0, this.destinationFrame.height * this.resolution | 0)) : t.disable(t.SCISSOR_TEST), t.viewport(0 | this.destinationFrame.x, 0 | this.destinationFrame.y, this.destinationFrame.width * this.resolution | 0, this.destinationFrame.height * this.resolution | 0)
                    }, t.prototype.calculateProjection = function(t, e) {
                        var r = this.projectionMatrix;
                        e = e || t, r.identity(), this.root ? (r.a = 1 / t.width * 2, r.d = -1 / t.height * 2, r.tx = -1 - e.x * r.a, r.ty = 1 - e.y * r.d) : (r.a = 1 / t.width * 2, r.d = 1 / t.height * 2, r.tx = -1 - e.x * r.a, r.ty = -1 - e.y * r.d)
                    }, t.prototype.resize = function(t, e) {
                        if (t |= 0, e |= 0, this.size.width !== t || this.size.height !== e) {
                            this.size.width = t, this.size.height = e, this.defaultFrame.width = t, this.defaultFrame.height = e, this.frameBuffer.resize(t * this.resolution, e * this.resolution);
                            var r = this.frame || this.size;
                            this.calculateProjection(r)
                        }
                    }, t.prototype.destroy = function() {
                        this.frameBuffer.destroy(), this.frameBuffer = null, this.texture = null
                    }, t
                }();
            r.default = u
        }, {
            "../../../const": 46,
            "../../../math": 70,
            "../../../settings": 101,
            "pixi-gl-core": 15
        }],
        97: [function(t, e, r) {
            "use strict";

            function n(t) {
                for (var e = "", r = 0; r &lt; t; ++r) r &gt; 0 &amp;&amp; (e += "\nelse "), r &lt; t - 1 &amp;&amp; (e += "if(test == " + r + ".0){}");
                return e
            }
            r.__esModule = !0, r.default = function(t, e) {
                var r = !e;
                if (0 === t) throw new Error("Invalid value of `0` passed to `checkMaxIfStatementsInShader`");
                if (r) {
                    var s = document.createElement("canvas");
                    s.width = 1, s.height = 1, e = i.default.createContext(s)
                }
                for (var a = e.createShader(e.FRAGMENT_SHADER);;) {
                    var u = o.replace(/%forloop%/gi, n(t));
                    if (e.shaderSource(a, u), e.compileShader(a), e.getShaderParameter(a, e.COMPILE_STATUS)) break;
                    t = t / 2 | 0
                }
                return r &amp;&amp; e.getExtension("WEBGL_lose_context") &amp;&amp; e.getExtension("WEBGL_lose_context").loseContext(), t
            };
            var i = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("pixi-gl-core")),
                o = ["precision mediump float;", "void main(void){", "float test = 0.1;", "%forloop%", "gl_FragColor = vec4(0.0);", "}"].join("\n")
        }, {
            "pixi-gl-core": 15
        }],
        98: [function(t, e, r) {
            "use strict";
            r.__esModule = !0, r.default = function(t) {
                var e = arguments.length &gt; 1 &amp;&amp; void 0 !== arguments[1] ? arguments[1] : [];
                return e[n.BLEND_MODES.NORMAL] = [t.ONE, t.ONE_MINUS_SRC_ALPHA], e[n.BLEND_MODES.ADD] = [t.ONE, t.DST_ALPHA], e[n.BLEND_MODES.MULTIPLY] = [t.DST_COLOR, t.ONE_MINUS_SRC_ALPHA], e[n.BLEND_MODES.SCREEN] = [t.ONE, t.ONE_MINUS_SRC_COLOR], e[n.BLEND_MODES.OVERLAY] = [t.ONE, t.ONE_MINUS_SRC_ALPHA], e[n.BLEND_MODES.DARKEN] = [t.ONE, t.ONE_MINUS_SRC_ALPHA], e[n.BLEND_MODES.LIGHTEN] = [t.ONE, t.ONE_MINUS_SRC_ALPHA], e[n.BLEND_MODES.COLOR_DODGE] = [t.ONE, t.ONE_MINUS_SRC_ALPHA], e[n.BLEND_MODES.COLOR_BURN] = [t.ONE, t.ONE_MINUS_SRC_ALPHA], e[n.BLEND_MODES.HARD_LIGHT] = [t.ONE, t.ONE_MINUS_SRC_ALPHA], e[n.BLEND_MODES.SOFT_LIGHT] = [t.ONE, t.ONE_MINUS_SRC_ALPHA], e[n.BLEND_MODES.DIFFERENCE] = [t.ONE, t.ONE_MINUS_SRC_ALPHA], e[n.BLEND_MODES.EXCLUSION] = [t.ONE, t.ONE_MINUS_SRC_ALPHA], e[n.BLEND_MODES.HUE] = [t.ONE, t.ONE_MINUS_SRC_ALPHA], e[n.BLEND_MODES.SATURATION] = [t.ONE, t.ONE_MINUS_SRC_ALPHA], e[n.BLEND_MODES.COLOR] = [t.ONE, t.ONE_MINUS_SRC_ALPHA], e[n.BLEND_MODES.LUMINOSITY] = [t.ONE, t.ONE_MINUS_SRC_ALPHA], e[n.BLEND_MODES.NORMAL_NPM] = [t.SRC_ALPHA, t.ONE_MINUS_SRC_ALPHA, t.ONE, t.ONE_MINUS_SRC_ALPHA], e[n.BLEND_MODES.ADD_NPM] = [t.SRC_ALPHA, t.DST_ALPHA, t.ONE, t.DST_ALPHA], e[n.BLEND_MODES.SCREEN_NPM] = [t.SRC_ALPHA, t.ONE_MINUS_SRC_COLOR, t.ONE, t.ONE_MINUS_SRC_COLOR], e
            };
            var n = t("../../../const")
        }, {
            "../../../const": 46
        }],
        99: [function(t, e, r) {
            "use strict";
            r.__esModule = !0, r.default = function(t) {
                var e = arguments.length &gt; 1 &amp;&amp; void 0 !== arguments[1] ? arguments[1] : {};
                return e[n.DRAW_MODES.POINTS] = t.POINTS, e[n.DRAW_MODES.LINES] = t.LINES, e[n.DRAW_MODES.LINE_LOOP] = t.LINE_LOOP, e[n.DRAW_MODES.LINE_STRIP] = t.LINE_STRIP, e[n.DRAW_MODES.TRIANGLES] = t.TRIANGLES, e[n.DRAW_MODES.TRIANGLE_STRIP] = t.TRIANGLE_STRIP, e[n.DRAW_MODES.TRIANGLE_FAN] = t.TRIANGLE_FAN, e
            };
            var n = t("../../../const")
        }, {
            "../../../const": 46
        }],
        100: [function(t, e, r) {
            "use strict";
            r.__esModule = !0, r.default = function(t) {
                t.getContextAttributes().stencil || console.warn("Provided WebGL context does not have a stencil buffer, masks may not render correctly")
            }
        }, {}],
        101: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }
            r.__esModule = !0;
            var i = n(t("./utils/maxRecommendedTextures")),
                o = n(t("./utils/canUploadSameBuffer"));
            r.default = {
                TARGET_FPMS: .06,
                MIPMAP_TEXTURES: !0,
                RESOLUTION: 1,
                FILTER_RESOLUTION: 1,
                SPRITE_MAX_TEXTURES: (0, i.default)(32),
                SPRITE_BATCH_SIZE: 4096,
                RETINA_PREFIX: /@([0-9\.]+)x/,
                RENDER_OPTIONS: {
                    view: null,
                    antialias: !1,
                    forceFXAA: !1,
                    autoResize: !1,
                    transparent: !1,
                    backgroundColor: 0,
                    clearBeforeRender: !0,
                    preserveDrawingBuffer: !1,
                    roundPixels: !1,
                    width: 800,
                    height: 600,
                    legacy: !1
                },
                TRANSFORM_MODE: 0,
                GC_MODE: 0,
                GC_MAX_IDLE: 3600,
                GC_MAX_CHECK_COUNT: 600,
                WRAP_MODE: 0,
                SCALE_MODE: 0,
                PRECISION_VERTEX: "highp",
                PRECISION_FRAGMENT: "mediump",
                CAN_UPLOAD_SAME_BUFFER: (0, o.default)(),
                MESH_CANVAS_PADDING: 0
            }
        }, {
            "./utils/canUploadSameBuffer": 122,
            "./utils/maxRecommendedTextures": 127
        }],
        102: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function o(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function s(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var a = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                u = t("../math"),
                h = t("../utils"),
                l = t("../const"),
                c = n(t("../textures/Texture")),
                d = n(t("../display/Container")),
                f = new u.Point,
                p = function(t) {
                    function e(r) {
                        i(this, e);
                        var n = o(this, t.call(this));
                        return n._anchor = new u.ObservablePoint(n._onAnchorUpdate, n), n._texture = null, n._width = 0, n._height = 0, n._tint = null, n._tintRGB = null, n.tint = 16777215, n.blendMode = l.BLEND_MODES.NORMAL, n.shader = null, n.cachedTint = 16777215, n.texture = r || c.default.EMPTY, n.vertexData = new Float32Array(8), n.vertexTrimmedData = null, n._transformID = -1, n._textureID = -1, n._transformTrimmedID = -1, n._textureTrimmedID = -1, n.pluginName = "sprite", n
                    }
                    return s(e, t), e.prototype._onTextureUpdate = function() {
                        this._textureID = -1, this._textureTrimmedID = -1, this.cachedTint = 16777215, this._width &amp;&amp; (this.scale.x = (0, h.sign)(this.scale.x) * this._width / this._texture.orig.width), this._height &amp;&amp; (this.scale.y = (0, h.sign)(this.scale.y) * this._height / this._texture.orig.height)
                    }, e.prototype._onAnchorUpdate = function() {
                        this._transformID = -1, this._transformTrimmedID = -1
                    }, e.prototype.calculateVertices = function() {
                        if (this._transformID !== this.transform._worldID || this._textureID !== this._texture._updateID) {
                            this._transformID = this.transform._worldID, this._textureID = this._texture._updateID;
                            var t = this._texture,
                                e = this.transform.worldTransform,
                                r = e.a,
                                n = e.b,
                                i = e.c,
                                o = e.d,
                                s = e.tx,
                                a = e.ty,
                                u = this.vertexData,
                                h = t.trim,
                                l = t.orig,
                                c = this._anchor,
                                d = 0,
                                f = 0,
                                p = 0,
                                v = 0;
                            h ? (d = (f = h.x - c._x * l.width) + h.width, p = (v = h.y - c._y * l.height) + h.height) : (d = (f = -c._x * l.width) + l.width, p = (v = -c._y * l.height) + l.height), u[0] = r * f + i * v + s, u[1] = o * v + n * f + a, u[2] = r * d + i * v + s, u[3] = o * v + n * d + a, u[4] = r * d + i * p + s, u[5] = o * p + n * d + a, u[6] = r * f + i * p + s, u[7] = o * p + n * f + a
                        }
                    }, e.prototype.calculateTrimmedVertices = function() {
                        if (this.vertexTrimmedData) {
                            if (this._transformTrimmedID === this.transform._worldID &amp;&amp; this._textureTrimmedID === this._texture._updateID) return
                        } else this.vertexTrimmedData = new Float32Array(8);
                        this._transformTrimmedID = this.transform._worldID, this._textureTrimmedID = this._texture._updateID;
                        var t = this._texture,
                            e = this.vertexTrimmedData,
                            r = t.orig,
                            n = this._anchor,
                            i = this.transform.worldTransform,
                            o = i.a,
                            s = i.b,
                            a = i.c,
                            u = i.d,
                            h = i.tx,
                            l = i.ty,
                            c = -n._x * r.width,
                            d = c + r.width,
                            f = -n._y * r.height,
                            p = f + r.height;
                        e[0] = o * c + a * f + h, e[1] = u * f + s * c + l, e[2] = o * d + a * f + h, e[3] = u * f + s * d + l, e[4] = o * d + a * p + h, e[5] = u * p + s * d + l, e[6] = o * c + a * p + h, e[7] = u * p + s * c + l
                    }, e.prototype._renderWebGL = function(t) {
                        this.calculateVertices(), t.setObjectRenderer(t.plugins[this.pluginName]), t.plugins[this.pluginName].render(this)
                    }, e.prototype._renderCanvas = function(t) {
                        t.plugins[this.pluginName].render(this)
                    }, e.prototype._calculateBounds = function() {
                        var t = this._texture.trim,
                            e = this._texture.orig;
                        !t || t.width === e.width &amp;&amp; t.height === e.height ? (this.calculateVertices(), this._bounds.addQuad(this.vertexData)) : (this.calculateTrimmedVertices(), this._bounds.addQuad(this.vertexTrimmedData))
                    }, e.prototype.getLocalBounds = function(e) {
                        return 0 === this.children.length ? (this._bounds.minX = this._texture.orig.width * -this._anchor._x, this._bounds.minY = this._texture.orig.height * -this._anchor._y, this._bounds.maxX = this._texture.orig.width * (1 - this._anchor._x), this._bounds.maxY = this._texture.orig.height * (1 - this._anchor._y), e || (this._localBoundsRect || (this._localBoundsRect = new u.Rectangle), e = this._localBoundsRect), this._bounds.getRectangle(e)) : t.prototype.getLocalBounds.call(this, e)
                    }, e.prototype.containsPoint = function(t) {
                        this.worldTransform.applyInverse(t, f);
                        var e = this._texture.orig.width,
                            r = this._texture.orig.height,
                            n = -e * this.anchor.x,
                            i = 0;
                        return f.x &gt;= n &amp;&amp; f.x &lt; n + e &amp;&amp; (i = -r * this.anchor.y, f.y &gt;= i &amp;&amp; f.y &lt; i + r)
                    }, e.prototype.destroy = function(e) {
                        if (t.prototype.destroy.call(this, e), this._texture.off("update", this._onTextureUpdate, this), this._anchor = null, "boolean" == typeof e ? e : e &amp;&amp; e.texture) {
                            var r = "boolean" == typeof e ? e : e &amp;&amp; e.baseTexture;
                            this._texture.destroy(!!r)
                        }
                        this._texture = null, this.shader = null
                    }, e.from = function(t) {
                        return new e(c.default.from(t))
                    }, e.fromFrame = function(t) {
                        var r = h.TextureCache[t];
                        if (!r) throw new Error('The frameId "' + t + '" does not exist in the texture cache');
                        return new e(r)
                    }, e.fromImage = function(t, r, n) {
                        return new e(c.default.fromImage(t, r, n))
                    }, a(e, [{
                        key: "width",
                        get: function() {
                            return Math.abs(this.scale.x) * this._texture.orig.width
                        },
                        set: function(t) {
                            var e = (0, h.sign)(this.scale.x) || 1;
                            this.scale.x = e * t / this._texture.orig.width, this._width = t
                        }
                    }, {
                        key: "height",
                        get: function() {
                            return Math.abs(this.scale.y) * this._texture.orig.height
                        },
                        set: function(t) {
                            var e = (0, h.sign)(this.scale.y) || 1;
                            this.scale.y = e * t / this._texture.orig.height, this._height = t
                        }
                    }, {
                        key: "anchor",
                        get: function() {
                            return this._anchor
                        },
                        set: function(t) {
                            this._anchor.copy(t)
                        }
                    }, {
                        key: "tint",
                        get: function() {
                            return this._tint
                        },
                        set: function(t) {
                            this._tint = t, this._tintRGB = (t &gt;&gt; 16) + (65280 &amp; t) + ((255 &amp; t) &lt;&lt; 16)
                        }
                    }, {
                        key: "texture",
                        get: function() {
                            return this._texture
                        },
                        set: function(t) {
                            this._texture !== t &amp;&amp; (this._texture = t, this.cachedTint = 16777215, this._textureID = -1, this._textureTrimmedID = -1, t &amp;&amp; (t.baseTexture.hasLoaded ? this._onTextureUpdate() : t.once("update", this._onTextureUpdate, this)))
                        }
                    }]), e
                }(d.default);
            r.default = p
        }, {
            "../const": 46,
            "../display/Container": 48,
            "../math": 70,
            "../textures/Texture": 115,
            "../utils": 125
        }],
        103: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var o = n(t("../../renderers/canvas/CanvasRenderer")),
                s = t("../../const"),
                a = t("../../math"),
                u = n(t("./CanvasTinter")),
                h = new a.Matrix,
                l = function() {
                    function t(e) {
                        i(this, t), this.renderer = e
                    }
                    return t.prototype.render = function(t) {
                        var e = t._texture,
                            r = this.renderer,
                            n = e._frame.width,
                            i = e._frame.height,
                            o = t.transform.worldTransform,
                            l = 0,
                            c = 0;
                        if (!(e.orig.width &lt;= 0 || e.orig.height &lt;= 0) &amp;&amp; e.baseTexture.source &amp;&amp; (r.setBlendMode(t.blendMode), e.valid)) {
                            r.context.globalAlpha = t.worldAlpha;
                            var d = e.baseTexture.scaleMode === s.SCALE_MODES.LINEAR;
                            r.smoothProperty &amp;&amp; r.context[r.smoothProperty] !== d &amp;&amp; (r.context[r.smoothProperty] = d), e.trim ? (l = e.trim.width / 2 + e.trim.x - t.anchor.x * e.orig.width, c = e.trim.height / 2 + e.trim.y - t.anchor.y * e.orig.height) : (l = (.5 - t.anchor.x) * e.orig.width, c = (.5 - t.anchor.y) * e.orig.height), e.rotate &amp;&amp; (o.copy(h), o = h, a.GroupD8.matrixAppendRotationInv(o, e.rotate, l, c), l = 0, c = 0), l -= n / 2, c -= i / 2, r.roundPixels ? (r.context.setTransform(o.a, o.b, o.c, o.d, o.tx * r.resolution | 0, o.ty * r.resolution | 0), l |= 0, c |= 0) : r.context.setTransform(o.a, o.b, o.c, o.d, o.tx * r.resolution, o.ty * r.resolution);
                            var f = e.baseTexture.resolution;
                            16777215 !== t.tint ? (t.cachedTint === t.tint &amp;&amp; t.tintedTexture.tintId === t._texture._updateID || (t.cachedTint = t.tint, t.tintedTexture = u.default.getTintedTexture(t, t.tint)), r.context.drawImage(t.tintedTexture, 0, 0, n * f, i * f, l * r.resolution, c * r.resolution, n * r.resolution, i * r.resolution)) : r.context.drawImage(e.baseTexture.source, e._frame.x * f, e._frame.y * f, n * f, i * f, l * r.resolution, c * r.resolution, n * r.resolution, i * r.resolution)
                        }
                    }, t.prototype.destroy = function() {
                        this.renderer = null
                    }, t
                }();
            r.default = l, o.default.registerPlugin("sprite", l)
        }, {
            "../../const": 46,
            "../../math": 70,
            "../../renderers/canvas/CanvasRenderer": 77,
            "./CanvasTinter": 104
        }],
        104: [function(t, e, r) {
            "use strict";
            r.__esModule = !0;
            var n = t("../../utils"),
                i = {
                    getTintedTexture: function(t, e) {
                        var r = t._texture,
                            n = "#" + ("00000" + (0 | (e = i.roundColor(e))).toString(16)).substr(-6);
                        r.tintCache = r.tintCache || {};
                        var o = r.tintCache[n],
                            s = void 0;
                        if (o) {
                            if (o.tintId === r._updateID) return r.tintCache[n];
                            s = r.tintCache[n]
                        } else s = i.canvas || document.createElement("canvas");
                        if (i.tintMethod(r, e, s), s.tintId = r._updateID, i.convertTintToImage) {
                            var a = new Image;
                            a.src = s.toDataURL(), r.tintCache[n] = a
                        } else r.tintCache[n] = s, i.canvas = null;
                        return s
                    },
                    tintWithMultiply: function(t, e, r) {
                        var n = r.getContext("2d"),
                            i = t._frame.clone(),
                            o = t.baseTexture.resolution;
                        i.x *= o, i.y *= o, i.width *= o, i.height *= o, r.width = Math.ceil(i.width), r.height = Math.ceil(i.height), n.save(), n.fillStyle = "#" + ("00000" + (0 | e).toString(16)).substr(-6), n.fillRect(0, 0, i.width, i.height), n.globalCompositeOperation = "multiply", n.drawImage(t.baseTexture.source, i.x, i.y, i.width, i.height, 0, 0, i.width, i.height), n.globalCompositeOperation = "destination-atop", n.drawImage(t.baseTexture.source, i.x, i.y, i.width, i.height, 0, 0, i.width, i.height), n.restore()
                    },
                    tintWithOverlay: function(t, e, r) {
                        var n = r.getContext("2d"),
                            i = t._frame.clone(),
                            o = t.baseTexture.resolution;
                        i.x *= o, i.y *= o, i.width *= o, i.height *= o, r.width = Math.ceil(i.width), r.height = Math.ceil(i.height), n.save(), n.globalCompositeOperation = "copy", n.fillStyle = "#" + ("00000" + (0 | e).toString(16)).substr(-6), n.fillRect(0, 0, i.width, i.height), n.globalCompositeOperation = "destination-atop", n.drawImage(t.baseTexture.source, i.x, i.y, i.width, i.height, 0, 0, i.width, i.height), n.restore()
                    },
                    tintWithPerPixel: function(t, e, r) {
                        var i = r.getContext("2d"),
                            o = t._frame.clone(),
                            s = t.baseTexture.resolution;
                        o.x *= s, o.y *= s, o.width *= s, o.height *= s, r.width = Math.ceil(o.width), r.height = Math.ceil(o.height), i.save(), i.globalCompositeOperation = "copy", i.drawImage(t.baseTexture.source, o.x, o.y, o.width, o.height, 0, 0, o.width, o.height), i.restore();
                        for (var a = (0, n.hex2rgb)(e), u = a[0], h = a[1], l = a[2], c = i.getImageData(0, 0, o.width, o.height), d = c.data, f = 0; f &lt; d.length; f += 4) d[f + 0] *= u, d[f + 1] *= h, d[f + 2] *= l;
                        i.putImageData(c, 0, 0)
                    },
                    roundColor: function(t) {
                        var e = i.cacheStepsPerColorChannel,
                            r = (0, n.hex2rgb)(t);
                        return r[0] = Math.min(255, r[0] / e * e), r[1] = Math.min(255, r[1] / e * e), r[2] = Math.min(255, r[2] / e * e), (0, n.rgb2hex)(r)
                    },
                    cacheStepsPerColorChannel: 8,
                    convertTintToImage: !1,
                    canUseMultiply: (0, function(t) {
                        return t &amp;&amp; t.__esModule ? t : {
                            default: t
                        }
                    }(t("../../renderers/canvas/utils/canUseNewCanvasBlendModes")).default)(),
                    tintMethod: 0
                };
            i.tintMethod = i.canUseMultiply ? i.tintWithMultiply : i.tintWithPerPixel, r.default = i
        }, {
            "../../renderers/canvas/utils/canUseNewCanvasBlendModes": 80,
            "../../utils": 125
        }],
        105: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function() {
                function t(e) {
                    n(this, t), this.vertices = new ArrayBuffer(e), this.float32View = new Float32Array(this.vertices), this.uint32View = new Uint32Array(this.vertices)
                }
                return t.prototype.destroy = function() {
                    this.vertices = null, this.positions = null, this.uvs = null, this.colors = null
                }, t
            }();
            r.default = i
        }, {}],
        106: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function o(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function s(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var a = n(t("../../renderers/webgl/utils/ObjectRenderer")),
                u = n(t("../../renderers/webgl/WebGLRenderer")),
                h = n(t("../../utils/createIndicesForQuads")),
                l = n(t("./generateMultiTextureShader")),
                c = n(t("../../renderers/webgl/utils/checkMaxIfStatmentsInShader")),
                d = n(t("./BatchBuffer")),
                f = n(t("../../settings")),
                p = t("../../utils"),
                v = n(t("pixi-gl-core")),
                g = n(t("bit-twiddle")),
                y = 0,
                m = 0,
                _ = function(t) {
                    function e(r) {
                        i(this, e);
                        var n = o(this, t.call(this, r));
                        n.vertSize = 5, n.vertByteSize = 4 * n.vertSize, n.size = f.default.SPRITE_BATCH_SIZE, n.buffers = [];
                        for (var s = 1; s &lt;= g.default.nextPow2(n.size); s *= 2) n.buffers.push(new d.default(4 * s * n.vertByteSize));
                        n.indices = (0, h.default)(n.size), n.shader = null, n.currentIndex = 0, n.groups = [];
                        for (var a = 0; a &lt; n.size; a++) n.groups[a] = {
                            textures: [],
                            textureCount: 0,
                            ids: [],
                            size: 0,
                            start: 0,
                            blend: 0
                        };
                        return n.sprites = [], n.vertexBuffers = [], n.vaos = [], n.vaoMax = 2, n.vertexCount = 0, n.renderer.on("prerender", n.onPrerender, n), n
                    }
                    return s(e, t), e.prototype.onContextChange = function() {
                        var t = this.renderer.gl;
                        this.renderer.legacy ? this.MAX_TEXTURES = 1 : (this.MAX_TEXTURES = Math.min(t.getParameter(t.MAX_TEXTURE_IMAGE_UNITS), f.default.SPRITE_MAX_TEXTURES), this.MAX_TEXTURES = (0, c.default)(this.MAX_TEXTURES, t)), this.shader = (0, l.default)(t, this.MAX_TEXTURES), this.indexBuffer = v.default.GLBuffer.createIndexBuffer(t, this.indices, t.STATIC_DRAW), this.renderer.bindVao(null);
                        for (var e = this.shader.attributes, r = 0; r &lt; this.vaoMax; r++) {
                            var n = this.vertexBuffers[r] = v.default.GLBuffer.createVertexBuffer(t, null, t.STREAM_DRAW),
                                i = this.renderer.createVao().addIndex(this.indexBuffer).addAttribute(n, e.aVertexPosition, t.FLOAT, !1, this.vertByteSize, 0).addAttribute(n, e.aTextureCoord, t.UNSIGNED_SHORT, !0, this.vertByteSize, 8).addAttribute(n, e.aColor, t.UNSIGNED_BYTE, !0, this.vertByteSize, 12);
                            e.aTextureId &amp;&amp; i.addAttribute(n, e.aTextureId, t.FLOAT, !1, this.vertByteSize, 16), this.vaos[r] = i
                        }
                        this.vao = this.vaos[0], this.currentBlendMode = 99999, this.boundTextures = new Array(this.MAX_TEXTURES)
                    }, e.prototype.onPrerender = function() {
                        this.vertexCount = 0
                    }, e.prototype.render = function(t) {
                        this.currentIndex &gt;= this.size &amp;&amp; this.flush(), t._texture._uvs &amp;&amp; (this.sprites[this.currentIndex++] = t)
                    }, e.prototype.flush = function() {
                        if (0 !== this.currentIndex) {
                            var t = this.renderer.gl,
                                e = this.MAX_TEXTURES,
                                r = g.default.nextPow2(this.currentIndex),
                                n = g.default.log2(r),
                                i = this.buffers[n],
                                o = this.sprites,
                                s = this.groups,
                                a = i.float32View,
                                u = i.uint32View,
                                h = this.boundTextures,
                                l = this.renderer.boundTextures,
                                c = this.renderer.textureGC.count,
                                d = 0,
                                _ = void 0,
                                b = void 0,
                                x = 1,
                                T = 0,
                                w = s[0],
                                E = void 0,
                                S = void 0,
                                O = p.premultiplyBlendMode[o[0]._texture.baseTexture.premultipliedAlpha ? 1 : 0][o[0].blendMode];
                            w.textureCount = 0, w.start = 0, w.blend = O, y++;
                            var M = void 0;
                            for (M = 0; M &lt; e; ++M) {
                                var P = l[M];
                                P._enabled !== y ? (h[M] = P, P._virtalBoundId = M, P._enabled = y) : h[M] = this.renderer.emptyTextures[M]
                            }
                            for (y++, M = 0; M &lt; this.currentIndex; ++M) {
                                var C = o[M];
                                o[M] = null, _ = C._texture.baseTexture;
                                var R = p.premultiplyBlendMode[Number(_.premultipliedAlpha)][C.blendMode];
                                if (O !== R &amp;&amp; (O = R, b = null, T = e, y++), b !== _ &amp;&amp; (b = _, _._enabled !== y)) {
                                    if (T === e &amp;&amp; (y++, w.size = M - w.start, T = 0, (w = s[x++]).blend = O, w.textureCount = 0, w.start = M), _.touched = c, -1 === _._virtalBoundId)
                                        for (var A = 0; A &lt; e; ++A) {
                                            var I = (A + m) % e,
                                                D = h[I];
                                            if (D._enabled !== y) {
                                                m++, D._virtalBoundId = -1, _._virtalBoundId = I, h[I] = _;
                                                break
                                            }
                                        }
                                    _._enabled = y, w.textureCount++, w.ids[T] = _._virtalBoundId, w.textures[T++] = _
                                }
                                if (E = C.vertexData, S = C._texture._uvs.uvsUint32, this.renderer.roundPixels) {
                                    var L = this.renderer.resolution;
                                    a[d] = (E[0] * L | 0) / L, a[d + 1] = (E[1] * L | 0) / L, a[d + 5] = (E[2] * L | 0) / L, a[d + 6] = (E[3] * L | 0) / L, a[d + 10] = (E[4] * L | 0) / L, a[d + 11] = (E[5] * L | 0) / L, a[d + 15] = (E[6] * L | 0) / L, a[d + 16] = (E[7] * L | 0) / L
                                } else a[d] = E[0], a[d + 1] = E[1], a[d + 5] = E[2], a[d + 6] = E[3], a[d + 10] = E[4], a[d + 11] = E[5], a[d + 15] = E[6], a[d + 16] = E[7];
                                u[d + 2] = S[0], u[d + 7] = S[1], u[d + 12] = S[2], u[d + 17] = S[3];
                                var N = Math.min(C.worldAlpha, 1),
                                    B = N &lt; 1 &amp;&amp; _.premultipliedAlpha ? (0, p.premultiplyTint)(C._tintRGB, N) : C._tintRGB + (255 * N &lt;&lt; 24);
                                u[d + 3] = u[d + 8] = u[d + 13] = u[d + 18] = B, a[d + 4] = a[d + 9] = a[d + 14] = a[d + 19] = _._virtalBoundId, d += 20
                            }
                            if (w.size = M - w.start, f.default.CAN_UPLOAD_SAME_BUFFER) this.vertexBuffers[this.vertexCount].upload(i.vertices, 0, !0);
                            else {
                                if (this.vaoMax &lt;= this.vertexCount) {
                                    this.vaoMax++;
                                    var k = this.shader.attributes,
                                        F = this.vertexBuffers[this.vertexCount] = v.default.GLBuffer.createVertexBuffer(t, null, t.STREAM_DRAW),
                                        j = this.renderer.createVao().addIndex(this.indexBuffer).addAttribute(F, k.aVertexPosition, t.FLOAT, !1, this.vertByteSize, 0).addAttribute(F, k.aTextureCoord, t.UNSIGNED_SHORT, !0, this.vertByteSize, 8).addAttribute(F, k.aColor, t.UNSIGNED_BYTE, !0, this.vertByteSize, 12);
                                    k.aTextureId &amp;&amp; j.addAttribute(F, k.aTextureId, t.FLOAT, !1, this.vertByteSize, 16), this.vaos[this.vertexCount] = j
                                }
                                this.renderer.bindVao(this.vaos[this.vertexCount]), this.vertexBuffers[this.vertexCount].upload(i.vertices, 0, !1), this.vertexCount++
                            }
                            for (M = 0; M &lt; e; ++M) l[M]._virtalBoundId = -1;
                            for (M = 0; M &lt; x; ++M) {
                                for (var U = s[M], X = U.textureCount, G = 0; G &lt; X; G++) b = U.textures[G], l[U.ids[G]] !== b &amp;&amp; this.renderer.bindTexture(b, U.ids[G], !0), b._virtalBoundId = -1;
                                this.renderer.state.setBlendMode(U.blend), t.drawElements(t.TRIANGLES, 6 * U.size, t.UNSIGNED_SHORT, 6 * U.start * 2)
                            }
                            this.currentIndex = 0
                        }
                    }, e.prototype.start = function() {
                        this.renderer.bindShader(this.shader), f.default.CAN_UPLOAD_SAME_BUFFER &amp;&amp; (this.renderer.bindVao(this.vaos[this.vertexCount]), this.vertexBuffers[this.vertexCount].bind())
                    }, e.prototype.stop = function() {
                        this.flush()
                    }, e.prototype.destroy = function() {
                        for (var e = 0; e &lt; this.vaoMax; e++) this.vertexBuffers[e] &amp;&amp; this.vertexBuffers[e].destroy(), this.vaos[e] &amp;&amp; this.vaos[e].destroy();
                        this.indexBuffer &amp;&amp; this.indexBuffer.destroy(), this.renderer.off("prerender", this.onPrerender, this), t.prototype.destroy.call(this), this.shader &amp;&amp; (this.shader.destroy(), this.shader = null), this.vertexBuffers = null, this.vaos = null, this.indexBuffer = null, this.indices = null, this.sprites = null;
                        for (var r = 0; r &lt; this.buffers.length; ++r) this.buffers[r].destroy()
                    }, e
                }(a.default);
            r.default = _, u.default.registerPlugin("sprite", _)
        }, {
            "../../renderers/webgl/WebGLRenderer": 84,
            "../../renderers/webgl/utils/ObjectRenderer": 94,
            "../../renderers/webgl/utils/checkMaxIfStatmentsInShader": 97,
            "../../settings": 101,
            "../../utils": 125,
            "../../utils/createIndicesForQuads": 123,
            "./BatchBuffer": 105,
            "./generateMultiTextureShader": 107,
            "bit-twiddle": 1,
            "pixi-gl-core": 15
        }],
        107: [function(t, e, r) {
            "use strict";

            function n(t) {
                var e = "";
                e += "\n", e += "\n";
                for (var r = 0; r &lt; t; r++) r &gt; 0 &amp;&amp; (e += "\nelse "), r &lt; t - 1 &amp;&amp; (e += "if(textureId == " + r + ".0)"), e += "\n{", e += "\n\tcolor = texture2D(uSamplers[" + r + "], vTextureCoord);", e += "\n}";
                return e += "\n", e += "\n"
            }
            r.__esModule = !0, r.default = function(t, e) {
                var r = o;
                r = (r = r.replace(/%count%/gi, e)).replace(/%forloop%/gi, n(e));
                for (var s = new i.default(t, "precision highp float;\nattribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\nattribute vec4 aColor;\nattribute float aTextureId;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\nvarying vec4 vColor;\nvarying float vTextureId;\n\nvoid main(void){\n    gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n\n    vTextureCoord = aTextureCoord;\n    vTextureId = aTextureId;\n    vColor = aColor;\n}\n", r), a = [], u = 0; u &lt; e; u++) a[u] = u;
                return s.bind(), s.uniforms.uSamplers = a, s
            };
            var i = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("../../Shader")),
                o = (t("path"), ["varying vec2 vTextureCoord;", "varying vec4 vColor;", "varying float vTextureId;", "uniform sampler2D uSamplers[%count%];", "void main(void){", "vec4 color;", "float textureId = floor(vTextureId+0.5);", "%forloop%", "gl_FragColor = color * vColor;", "}"].join("\n"))
        }, {
            "../../Shader": 44,
            path: 8
        }],
        108: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function o(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function s(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var a = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                u = n(t("../sprites/Sprite")),
                h = n(t("../textures/Texture")),
                l = t("../math"),
                c = t("../utils"),
                d = t("../const"),
                f = n(t("../settings")),
                p = n(t("./TextStyle")),
                v = n(t("./TextMetrics")),
                g = n(t("../utils/trimCanvas")),
                y = {
                    texture: !0,
                    children: !1,
                    baseTexture: !0
                },
                m = function(t) {
                    function e(r, n, s) {
                        i(this, e), (s = s || document.createElement("canvas")).width = 3, s.height = 3;
                        var a = h.default.fromCanvas(s, f.default.SCALE_MODE, "text");
                        a.orig = new l.Rectangle, a.trim = new l.Rectangle;
                        var u = o(this, t.call(this, a));
                        return h.default.addToCache(u._texture, u._texture.baseTexture.textureCacheIds[0]), u.canvas = s, u.context = u.canvas.getContext("2d"), u.resolution = f.default.RESOLUTION, u._text = null, u._style = null, u._styleListener = null, u._font = "", u.text = r, u.style = n, u.localStyleID = -1, u
                    }
                    return s(e, t), e.prototype.updateText = function(t) {
                        var e = this._style;
                        if (this.localStyleID !== e.styleID &amp;&amp; (this.dirty = !0, this.localStyleID = e.styleID), this.dirty || !t) {
                            this._font = this._style.toFontString();
                            var r = this.context,
                                n = v.default.measureText(this._text, this._style, this._style.wordWrap, this.canvas),
                                i = n.width,
                                o = n.height,
                                s = n.lines,
                                a = n.lineHeight,
                                u = n.lineWidths,
                                h = n.maxLineWidth,
                                l = n.fontProperties;
                            this.canvas.width = Math.ceil((Math.max(1, i) + 2 * e.padding) * this.resolution), this.canvas.height = Math.ceil((Math.max(1, o) + 2 * e.padding) * this.resolution), r.scale(this.resolution, this.resolution), r.clearRect(0, 0, this.canvas.width, this.canvas.height), r.font = this._font, r.strokeStyle = e.stroke, r.lineWidth = e.strokeThickness, r.textBaseline = e.textBaseline, r.lineJoin = e.lineJoin, r.miterLimit = e.miterLimit;
                            var c = void 0,
                                d = void 0;
                            if (e.dropShadow) {
                                r.fillStyle = e.dropShadowColor, r.globalAlpha = e.dropShadowAlpha, r.shadowBlur = e.dropShadowBlur, e.dropShadowBlur &gt; 0 &amp;&amp; (r.shadowColor = e.dropShadowColor);
                                for (var f = Math.cos(e.dropShadowAngle) * e.dropShadowDistance, p = Math.sin(e.dropShadowAngle) * e.dropShadowDistance, g = 0; g &lt; s.length; g++) c = e.strokeThickness / 2, d = e.strokeThickness / 2 + g * a + l.ascent, "right" === e.align ? c += h - u[g] : "center" === e.align &amp;&amp; (c += (h - u[g]) / 2), e.fill &amp;&amp; (this.drawLetterSpacing(s[g], c + f + e.padding, d + p + e.padding), e.stroke &amp;&amp; e.strokeThickness &amp;&amp; (r.strokeStyle = e.dropShadowColor, this.drawLetterSpacing(s[g], c + f + e.padding, d + p + e.padding, !0), r.strokeStyle = e.stroke))
                            }
                            r.shadowBlur = 0, r.globalAlpha = 1, r.fillStyle = this._generateFillStyle(e, s);
                            for (var y = 0; y &lt; s.length; y++) c = e.strokeThickness / 2, d = e.strokeThickness / 2 + y * a + l.ascent, "right" === e.align ? c += h - u[y] : "center" === e.align &amp;&amp; (c += (h - u[y]) / 2), e.stroke &amp;&amp; e.strokeThickness &amp;&amp; this.drawLetterSpacing(s[y], c + e.padding, d + e.padding, !0), e.fill &amp;&amp; this.drawLetterSpacing(s[y], c + e.padding, d + e.padding);
                            this.updateTexture()
                        }
                    }, e.prototype.drawLetterSpacing = function(t, e, r) {
                        var n = arguments.length &gt; 3 &amp;&amp; void 0 !== arguments[3] &amp;&amp; arguments[3],
                            i = this._style.letterSpacing;
                        if (0 !== i)
                            for (var o = String.prototype.split.call(t, ""), s = e, a = 0, u = ""; a &lt; t.length;) u = o[a++], n ? this.context.strokeText(u, s, r) : this.context.fillText(u, s, r), s += this.context.measureText(u).width + i;
                        else n ? this.context.strokeText(t, e, r) : this.context.fillText(t, e, r)
                    }, e.prototype.updateTexture = function() {
                        var t = this.canvas;
                        if (this._style.trim) {
                            var e = (0, g.default)(t);
                            t.width = e.width, t.height = e.height, this.context.putImageData(e.data, 0, 0)
                        }
                        var r = this._texture,
                            n = this._style,
                            i = n.trim ? 0 : n.padding,
                            o = r.baseTexture;
                        o.hasLoaded = !0, o.resolution = this.resolution, o.realWidth = t.width, o.realHeight = t.height, o.width = t.width / this.resolution, o.height = t.height / this.resolution, r.trim.width = r._frame.width = t.width / this.resolution, r.trim.height = r._frame.height = t.height / this.resolution, r.trim.x = -i, r.trim.y = -i, r.orig.width = r._frame.width - 2 * i, r.orig.height = r._frame.height - 2 * i, this._onTextureUpdate(), o.emit("update", o), this.dirty = !1
                    }, e.prototype.renderWebGL = function(e) {
                        this.resolution !== e.resolution &amp;&amp; (this.resolution = e.resolution, this.dirty = !0), this.updateText(!0), t.prototype.renderWebGL.call(this, e)
                    }, e.prototype._renderCanvas = function(e) {
                        this.resolution !== e.resolution &amp;&amp; (this.resolution = e.resolution, this.dirty = !0), this.updateText(!0), t.prototype._renderCanvas.call(this, e)
                    }, e.prototype.getLocalBounds = function(e) {
                        return this.updateText(!0), t.prototype.getLocalBounds.call(this, e)
                    }, e.prototype._calculateBounds = function() {
                        this.updateText(!0), this.calculateVertices(), this._bounds.addQuad(this.vertexData)
                    }, e.prototype._onStyleChange = function() {
                        this.dirty = !0
                    }, e.prototype._generateFillStyle = function(t, e) {
                        if (!Array.isArray(t.fill)) return t.fill;
                        if (navigator.isCocoonJS) return t.fill[0];
                        var r = void 0,
                            n = void 0,
                            i = void 0,
                            o = void 0,
                            s = this.canvas.width / this.resolution,
                            a = this.canvas.height / this.resolution,
                            u = t.fill.slice(),
                            h = t.fillGradientStops.slice();
                        if (!h.length)
                            for (var l = u.length + 1, c = 1; c &lt; l; ++c) h.push(c / l);
                        if (u.unshift(t.fill[0]), h.unshift(0), u.push(t.fill[t.fill.length - 1]), h.push(1), t.fillGradientType === d.TEXT_GRADIENT.LINEAR_VERTICAL) {
                            r = this.context.createLinearGradient(s / 2, 0, s / 2, a), n = (u.length + 1) * e.length, i = 0;
                            for (var f = 0; f &lt; e.length; f++) {
                                i += 1;
                                for (var p = 0; p &lt; u.length; p++) o = "number" == typeof h[p] ? h[p] / e.length + f / e.length : i / n, r.addColorStop(o, u[p]), i++
                            }
                        } else {
                            r = this.context.createLinearGradient(0, a / 2, s, a / 2), n = u.length + 1, i = 1;
                            for (var v = 0; v &lt; u.length; v++) o = "number" == typeof h[v] ? h[v] : i / n, r.addColorStop(o, u[v]), i++
                        }
                        return r
                    }, e.prototype.destroy = function(e) {
                        "boolean" == typeof e &amp;&amp; (e = {
                            children: e
                        }), e = Object.assign({}, y, e), t.prototype.destroy.call(this, e), this.context = null, this.canvas = null, this._style = null
                    }, a(e, [{
                        key: "width",
                        get: function() {
                            return this.updateText(!0), Math.abs(this.scale.x) * this._texture.orig.width
                        },
                        set: function(t) {
                            this.updateText(!0);
                            var e = (0, c.sign)(this.scale.x) || 1;
                            this.scale.x = e * t / this._texture.orig.width, this._width = t
                        }
                    }, {
                        key: "height",
                        get: function() {
                            return this.updateText(!0), Math.abs(this.scale.y) * this._texture.orig.height
                        },
                        set: function(t) {
                            this.updateText(!0);
                            var e = (0, c.sign)(this.scale.y) || 1;
                            this.scale.y = e * t / this._texture.orig.height, this._height = t
                        }
                    }, {
                        key: "style",
                        get: function() {
                            return this._style
                        },
                        set: function(t) {
                            (t = t || {}) instanceof p.default ? this._style = t : this._style = new p.default(t), this.localStyleID = -1, this.dirty = !0
                        }
                    }, {
                        key: "text",
                        get: function() {
                            return this._text
                        },
                        set: function(t) {
                            t = String("" === t || null === t || void 0 === t ? " " : t), this._text !== t &amp;&amp; (this._text = t, this.dirty = !0)
                        }
                    }]), e
                }(u.default);
            r.default = m
        }, {
            "../const": 46,
            "../math": 70,
            "../settings": 101,
            "../sprites/Sprite": 102,
            "../textures/Texture": 115,
            "../utils": 125,
            "../utils/trimCanvas": 130,
            "./TextMetrics": 109,
            "./TextStyle": 110
        }],
        109: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function() {
                function t(e, r, i, o, s, a, u, h, l) {
                    n(this, t), this.text = e, this.style = r, this.width = i, this.height = o, this.lines = s, this.lineWidths = a, this.lineHeight = u, this.maxLineWidth = h, this.fontProperties = l
                }
                return t.measureText = function(e, r, n) {
                    var i = arguments.length &gt; 3 &amp;&amp; void 0 !== arguments[3] ? arguments[3] : t._canvas;
                    n = n || r.wordWrap;
                    var o = r.toFontString(),
                        s = t.measureFont(o),
                        a = i.getContext("2d");
                    a.font = o;
                    for (var u = (n ? t.wordWrap(e, r, i) : e).split(/(?:\r\n|\r|\n)/), h = new Array(u.length), l = 0, c = 0; c &lt; u.length; c++) {
                        var d = a.measureText(u[c]).width + (u[c].length - 1) * r.letterSpacing;
                        h[c] = d, l = Math.max(l, d)
                    }
                    var f = l + r.strokeThickness;
                    r.dropShadow &amp;&amp; (f += r.dropShadowDistance);
                    var p = r.lineHeight || s.fontSize + r.strokeThickness,
                        v = Math.max(p, s.fontSize + r.strokeThickness) + (u.length - 1) * (p + r.leading);
                    return r.dropShadow &amp;&amp; (v += r.dropShadowDistance), new t(e, r, f, v, u, h, p + r.leading, l, s)
                }, t.wordWrap = function(e, r) {
                    for (var n = (arguments.length &gt; 2 &amp;&amp; void 0 !== arguments[2] ? arguments[2] : t._canvas).getContext("2d"), i = 0, o = "", s = "", a = {}, u = r.letterSpacing, h = r.whiteSpace, l = t.collapseSpaces(h), c = t.collapseNewlines(h), d = !l, f = r.wordWrapWidth + u, p = t.tokenize(e), v = 0; v &lt; p.length; v++) {
                        var g = p[v];
                        if (t.isNewline(g)) {
                            if (!c) {
                                s += t.addLine(o), d = !l, o = "", i = 0;
                                continue
                            }
                            g = " "
                        }
                        if (l) {
                            var y = t.isBreakingSpace(g),
                                m = t.isBreakingSpace(o[o.length - 1]);
                            if (y &amp;&amp; m) continue
                        }
                        var _ = t.getFromCache(g, u, a, n);
                        if (_ &gt; f)
                            if ("" !== o &amp;&amp; (s += t.addLine(o), o = "", i = 0), t.canBreakWords(g, r.breakWords))
                                for (var b = g.split(""), x = 0; x &lt; b.length; x++) {
                                    for (var T = b[x], w = 1; b[x + w];) {
                                        var E = b[x + w],
                                            S = T[T.length - 1];
                                        if (t.canBreakChars(S, E, g, x, r.breakWords)) break;
                                        T += E, w++
                                    }
                                    x += T.length - 1;
                                    var O = t.getFromCache(T, u, a, n);
                                    O + i &gt; f &amp;&amp; (s += t.addLine(o), d = !1, o = "", i = 0), o += T, i += O
                                } else {
                                    o.length &gt; 0 &amp;&amp; (s += t.addLine(o), o = "", i = 0);
                                    var M = v === p.length - 1;
                                    s += t.addLine(g, !M), d = !1, o = "", i = 0
                                } else _ + i &gt; f &amp;&amp; (d = !1, s += t.addLine(o), o = "", i = 0), (o.length &gt; 0 || !t.isBreakingSpace(g) || d) &amp;&amp; (o += g, i += _)
                    }
                    return s += t.addLine(o, !1)
                }, t.addLine = function(e) {
                    var r = !(arguments.length &gt; 1 &amp;&amp; void 0 !== arguments[1]) || arguments[1];
                    return e = t.trimRight(e), e = r ? e + "\n" : e
                }, t.getFromCache = function(t, e, r, n) {
                    var i = r[t];
                    if (void 0 === i) {
                        var o = t.length * e;
                        i = n.measureText(t).width + o, r[t] = i
                    }
                    return i
                }, t.collapseSpaces = function(t) {
                    return "normal" === t || "pre-line" === t
                }, t.collapseNewlines = function(t) {
                    return "normal" === t
                }, t.trimRight = function(e) {
                    if ("string" != typeof e) return "";
                    for (var r = e.length - 1; r &gt;= 0; r--) {
                        var n = e[r];
                        if (!t.isBreakingSpace(n)) break;
                        e = e.slice(0, -1)
                    }
                    return e
                }, t.isNewline = function(e) {
                    return "string" == typeof e &amp;&amp; t._newlines.indexOf(e.charCodeAt(0)) &gt;= 0
                }, t.isBreakingSpace = function(e) {
                    return "string" == typeof e &amp;&amp; t._breakingSpaces.indexOf(e.charCodeAt(0)) &gt;= 0
                }, t.tokenize = function(e) {
                    var r = [],
                        n = "";
                    if ("string" != typeof e) return r;
                    for (var i = 0; i &lt; e.length; i++) {
                        var o = e[i];
                        t.isBreakingSpace(o) || t.isNewline(o) ? ("" !== n &amp;&amp; (r.push(n), n = ""), r.push(o)) : n += o
                    }
                    return "" !== n &amp;&amp; r.push(n), r
                }, t.canBreakWords = function(t, e) {
                    return e
                }, t.canBreakChars = function(t, e, r, n, i) {
                    return !0
                }, t.measureFont = function(e) {
                    if (t._fonts[e]) return t._fonts[e];
                    var r = {},
                        n = t._canvas,
                        i = t._context;
                    i.font = e;
                    var o = t.METRICS_STRING + t.BASELINE_SYMBOL,
                        s = Math.ceil(i.measureText(o).width),
                        a = Math.ceil(i.measureText(t.BASELINE_SYMBOL).width),
                        u = 2 * a;
                    a = a * t.BASELINE_MULTIPLIER | 0, n.width = s, n.height = u, i.fillStyle = "#f00", i.fillRect(0, 0, s, u), i.font = e, i.textBaseline = "alphabetic", i.fillStyle = "#000", i.fillText(o, 0, a);
                    var h = i.getImageData(0, 0, s, u).data,
                        l = h.length,
                        c = 4 * s,
                        d = 0,
                        f = 0,
                        p = !1;
                    for (d = 0; d &lt; a; ++d) {
                        for (var v = 0; v &lt; c; v += 4)
                            if (255 !== h[f + v]) {
                                p = !0;
                                break
                            }
                        if (p) break;
                        f += c
                    }
                    for (r.ascent = a - d, f = l - c, p = !1, d = u; d &gt; a; --d) {
                        for (var g = 0; g &lt; c; g += 4)
                            if (255 !== h[f + g]) {
                                p = !0;
                                break
                            }
                        if (p) break;
                        f -= c
                    }
                    return r.descent = d - a, r.fontSize = r.ascent + r.descent, t._fonts[e] = r, r
                }, t.clearMetrics = function() {
                    var e = arguments.length &gt; 0 &amp;&amp; void 0 !== arguments[0] ? arguments[0] : "";
                    e ? delete t._fonts[e] : t._fonts = {}
                }, t
            }();
            r.default = i;
            var o = document.createElement("canvas");
            o.width = o.height = 10, i._canvas = o, i._context = o.getContext("2d"), i._fonts = {}, i.METRICS_STRING = "|Ã‰q", i.BASELINE_SYMBOL = "M", i.BASELINE_MULTIPLIER = 1.4, i._newlines = [10, 13], i._breakingSpaces = [9, 32, 8192, 8193, 8194, 8195, 8196, 8197, 8198, 8200, 8201, 8202, 8287, 12288]
        }, {}],
        110: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function i(t) {
                return "number" == typeof t ? (0, l.hex2string)(t) : ("string" == typeof t &amp;&amp; 0 === t.indexOf("0x") &amp;&amp; (t = t.replace("0x", "#")), t)
            }

            function o(t) {
                if (Array.isArray(t)) {
                    for (var e = 0; e &lt; t.length; ++e) t[e] = i(t[e]);
                    return t
                }
                return i(t)
            }

            function s(t, e) {
                if (!Array.isArray(t) || !Array.isArray(e)) return !1;
                if (t.length !== e.length) return !1;
                for (var r = 0; r &lt; t.length; ++r)
                    if (t[r] !== e[r]) return !1;
                return !0
            }

            function a(t, e, r) {
                for (var n in r) Array.isArray(e[n]) ? t[n] = e[n].slice() : t[n] = e[n]
            }
            r.__esModule = !0;
            var u = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                h = t("../const"),
                l = t("../utils"),
                c = {
                    align: "left",
                    breakWords: !1,
                    dropShadow: !1,
                    dropShadowAlpha: 1,
                    dropShadowAngle: Math.PI / 6,
                    dropShadowBlur: 0,
                    dropShadowColor: "black",
                    dropShadowDistance: 5,
                    fill: "black",
                    fillGradientType: h.TEXT_GRADIENT.LINEAR_VERTICAL,
                    fillGradientStops: [],
                    fontFamily: "Arial",
                    fontSize: 26,
                    fontStyle: "normal",
                    fontVariant: "normal",
                    fontWeight: "normal",
                    letterSpacing: 0,
                    lineHeight: 0,
                    lineJoin: "miter",
                    miterLimit: 10,
                    padding: 0,
                    stroke: "black",
                    strokeThickness: 0,
                    textBaseline: "alphabetic",
                    trim: !1,
                    whiteSpace: "pre",
                    wordWrap: !1,
                    wordWrapWidth: 100,
                    leading: 0
                },
                d = function() {
                    function t(e) {
                        n(this, t), this.styleID = 0, this.reset(), a(this, e, e)
                    }
                    return t.prototype.clone = function() {
                        var e = {};
                        return a(e, this, c), new t(e)
                    }, t.prototype.reset = function() {
                        a(this, c, c)
                    }, t.prototype.toFontString = function() {
                        var t = "number" == typeof this.fontSize ? this.fontSize + "px" : this.fontSize,
                            e = this.fontFamily;
                        Array.isArray(this.fontFamily) || (e = this.fontFamily.split(","));
                        for (var r = e.length - 1; r &gt;= 0; r--) {
                            var n = e[r].trim();
                            /([\"\'])[^\'\"]+\1/.test(n) || (n = '"' + n + '"'), e[r] = n
                        }
                        return this.fontStyle + " " + this.fontVariant + " " + this.fontWeight + " " + t + " " + e.join(",")
                    }, u(t, [{
                        key: "align",
                        get: function() {
                            return this._align
                        },
                        set: function(t) {
                            this._align !== t &amp;&amp; (this._align = t, this.styleID++)
                        }
                    }, {
                        key: "breakWords",
                        get: function() {
                            return this._breakWords
                        },
                        set: function(t) {
                            this._breakWords !== t &amp;&amp; (this._breakWords = t, this.styleID++)
                        }
                    }, {
                        key: "dropShadow",
                        get: function() {
                            return this._dropShadow
                        },
                        set: function(t) {
                            this._dropShadow !== t &amp;&amp; (this._dropShadow = t, this.styleID++)
                        }
                    }, {
                        key: "dropShadowAlpha",
                        get: function() {
                            return this._dropShadowAlpha
                        },
                        set: function(t) {
                            this._dropShadowAlpha !== t &amp;&amp; (this._dropShadowAlpha = t, this.styleID++)
                        }
                    }, {
                        key: "dropShadowAngle",
                        get: function() {
                            return this._dropShadowAngle
                        },
                        set: function(t) {
                            this._dropShadowAngle !== t &amp;&amp; (this._dropShadowAngle = t, this.styleID++)
                        }
                    }, {
                        key: "dropShadowBlur",
                        get: function() {
                            return this._dropShadowBlur
                        },
                        set: function(t) {
                            this._dropShadowBlur !== t &amp;&amp; (this._dropShadowBlur = t, this.styleID++)
                        }
                    }, {
                        key: "dropShadowColor",
                        get: function() {
                            return this._dropShadowColor
                        },
                        set: function(t) {
                            var e = o(t);
                            this._dropShadowColor !== e &amp;&amp; (this._dropShadowColor = e, this.styleID++)
                        }
                    }, {
                        key: "dropShadowDistance",
                        get: function() {
                            return this._dropShadowDistance
                        },
                        set: function(t) {
                            this._dropShadowDistance !== t &amp;&amp; (this._dropShadowDistance = t, this.styleID++)
                        }
                    }, {
                        key: "fill",
                        get: function() {
                            return this._fill
                        },
                        set: function(t) {
                            var e = o(t);
                            this._fill !== e &amp;&amp; (this._fill = e, this.styleID++)
                        }
                    }, {
                        key: "fillGradientType",
                        get: function() {
                            return this._fillGradientType
                        },
                        set: function(t) {
                            this._fillGradientType !== t &amp;&amp; (this._fillGradientType = t, this.styleID++)
                        }
                    }, {
                        key: "fillGradientStops",
                        get: function() {
                            return this._fillGradientStops
                        },
                        set: function(t) {
                            s(this._fillGradientStops, t) || (this._fillGradientStops = t, this.styleID++)
                        }
                    }, {
                        key: "fontFamily",
                        get: function() {
                            return this._fontFamily
                        },
                        set: function(t) {
                            this.fontFamily !== t &amp;&amp; (this._fontFamily = t, this.styleID++)
                        }
                    }, {
                        key: "fontSize",
                        get: function() {
                            return this._fontSize
                        },
                        set: function(t) {
                            this._fontSize !== t &amp;&amp; (this._fontSize = t, this.styleID++)
                        }
                    }, {
                        key: "fontStyle",
                        get: function() {
                            return this._fontStyle
                        },
                        set: function(t) {
                            this._fontStyle !== t &amp;&amp; (this._fontStyle = t, this.styleID++)
                        }
                    }, {
                        key: "fontVariant",
                        get: function() {
                            return this._fontVariant
                        },
                        set: function(t) {
                            this._fontVariant !== t &amp;&amp; (this._fontVariant = t, this.styleID++)
                        }
                    }, {
                        key: "fontWeight",
                        get: function() {
                            return this._fontWeight
                        },
                        set: function(t) {
                            this._fontWeight !== t &amp;&amp; (this._fontWeight = t, this.styleID++)
                        }
                    }, {
                        key: "letterSpacing",
                        get: function() {
                            return this._letterSpacing
                        },
                        set: function(t) {
                            this._letterSpacing !== t &amp;&amp; (this._letterSpacing = t, this.styleID++)
                        }
                    }, {
                        key: "lineHeight",
                        get: function() {
                            return this._lineHeight
                        },
                        set: function(t) {
                            this._lineHeight !== t &amp;&amp; (this._lineHeight = t, this.styleID++)
                        }
                    }, {
                        key: "leading",
                        get: function() {
                            return this._leading
                        },
                        set: function(t) {
                            this._leading !== t &amp;&amp; (this._leading = t, this.styleID++)
                        }
                    }, {
                        key: "lineJoin",
                        get: function() {
                            return this._lineJoin
                        },
                        set: function(t) {
                            this._lineJoin !== t &amp;&amp; (this._lineJoin = t, this.styleID++)
                        }
                    }, {
                        key: "miterLimit",
                        get: function() {
                            return this._miterLimit
                        },
                        set: function(t) {
                            this._miterLimit !== t &amp;&amp; (this._miterLimit = t, this.styleID++)
                        }
                    }, {
                        key: "padding",
                        get: function() {
                            return this._padding
                        },
                        set: function(t) {
                            this._padding !== t &amp;&amp; (this._padding = t, this.styleID++)
                        }
                    }, {
                        key: "stroke",
                        get: function() {
                            return this._stroke
                        },
                        set: function(t) {
                            var e = o(t);
                            this._stroke !== e &amp;&amp; (this._stroke = e, this.styleID++)
                        }
                    }, {
                        key: "strokeThickness",
                        get: function() {
                            return this._strokeThickness
                        },
                        set: function(t) {
                            this._strokeThickness !== t &amp;&amp; (this._strokeThickness = t, this.styleID++)
                        }
                    }, {
                        key: "textBaseline",
                        get: function() {
                            return this._textBaseline
                        },
                        set: function(t) {
                            this._textBaseline !== t &amp;&amp; (this._textBaseline = t, this.styleID++)
                        }
                    }, {
                        key: "trim",
                        get: function() {
                            return this._trim
                        },
                        set: function(t) {
                            this._trim !== t &amp;&amp; (this._trim = t, this.styleID++)
                        }
                    }, {
                        key: "whiteSpace",
                        get: function() {
                            return this._whiteSpace
                        },
                        set: function(t) {
                            this._whiteSpace !== t &amp;&amp; (this._whiteSpace = t, this.styleID++)
                        }
                    }, {
                        key: "wordWrap",
                        get: function() {
                            return this._wordWrap
                        },
                        set: function(t) {
                            this._wordWrap !== t &amp;&amp; (this._wordWrap = t, this.styleID++)
                        }
                    }, {
                        key: "wordWrapWidth",
                        get: function() {
                            return this._wordWrapWidth
                        },
                        set: function(t) {
                            this._wordWrapWidth !== t &amp;&amp; (this._wordWrapWidth = t, this.styleID++)
                        }
                    }]), t
                }();
            r.default = d
        }, {
            "../const": 46,
            "../utils": 125
        }],
        111: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function o(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function s(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var a = n(t("./BaseTexture")),
                u = n(t("../settings")),
                h = function(t) {
                    function e() {
                        var r = arguments.length &gt; 0 &amp;&amp; void 0 !== arguments[0] ? arguments[0] : 100,
                            n = arguments.length &gt; 1 &amp;&amp; void 0 !== arguments[1] ? arguments[1] : 100,
                            s = arguments[2],
                            a = arguments[3];
                        i(this, e);
                        var h = o(this, t.call(this, null, s));
                        return h.resolution = a || u.default.RESOLUTION, h.width = Math.ceil(r), h.height = Math.ceil(n), h.realWidth = h.width * h.resolution, h.realHeight = h.height * h.resolution, h.scaleMode = void 0 !== s ? s : u.default.SCALE_MODE, h.hasLoaded = !0, h._glRenderTargets = {}, h._canvasRenderTarget = null, h.valid = !1, h
                    }
                    return s(e, t), e.prototype.resize = function(t, e) {
                        t = Math.ceil(t), e = Math.ceil(e), t === this.width &amp;&amp; e === this.height || (this.valid = t &gt; 0 &amp;&amp; e &gt; 0, this.width = t, this.height = e, this.realWidth = this.width * this.resolution, this.realHeight = this.height * this.resolution, this.valid &amp;&amp; this.emit("update", this))
                    }, e.prototype.destroy = function() {
                        t.prototype.destroy.call(this, !0), this.renderer = null
                    }, e
                }(a.default);
            r.default = h
        }, {
            "../settings": 101,
            "./BaseTexture": 112
        }],
        112: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function o(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function s(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var a = t("../utils"),
                u = n(t("../settings")),
                h = n(t("eventemitter3")),
                l = n(t("../utils/determineCrossOrigin")),
                c = n(t("bit-twiddle")),
                d = function(t) {
                    function e(r, n, s) {
                        i(this, e);
                        var h = o(this, t.call(this));
                        return h.uid = (0, a.uid)(), h.touched = 0, h.resolution = s || u.default.RESOLUTION, h.width = 100, h.height = 100, h.realWidth = 100, h.realHeight = 100, h.scaleMode = void 0 !== n ? n : u.default.SCALE_MODE, h.hasLoaded = !1, h.isLoading = !1, h.source = null, h.origSource = null, h.imageType = null, h.sourceScale = 1, h.premultipliedAlpha = !0, h.imageUrl = null, h.isPowerOfTwo = !1, h.mipmap = u.default.MIPMAP_TEXTURES, h.wrapMode = u.default.WRAP_MODE, h._glTextures = {}, h._enabled = 0, h._virtalBoundId = -1, h._destroyed = !1, h.textureCacheIds = [], r &amp;&amp; h.loadSource(r), h
                    }
                    return s(e, t), e.prototype.update = function() {
                        this.source &amp;&amp; ("svg" !== this.imageType &amp;&amp; (this.realWidth = this.source.naturalWidth || this.source.videoWidth || this.source.width, this.realHeight = this.source.naturalHeight || this.source.videoHeight || this.source.height, this._updateDimensions()), this.emit("update", this))
                    }, e.prototype._updateDimensions = function() {
                        this.width = this.realWidth / this.resolution, this.height = this.realHeight / this.resolution, this.isPowerOfTwo = c.default.isPow2(this.realWidth) &amp;&amp; c.default.isPow2(this.realHeight)
                    }, e.prototype.loadSource = function(t) {
                        var e = this.isLoading;
                        this.hasLoaded = !1, this.isLoading = !1, e &amp;&amp; this.source &amp;&amp; (this.source.onload = null, this.source.onerror = null);
                        var r = !this.source;
                        if (this.source = t, (t.src &amp;&amp; t.complete || t.getContext) &amp;&amp; t.width &amp;&amp; t.height) this._updateImageType(), "svg" === this.imageType ? this._loadSvgSource() : this._sourceLoaded(), r &amp;&amp; this.emit("loaded", this);
                        else if (!t.getContext) {
                            this.isLoading = !0;
                            var n = this;
                            if (t.onload = function() {
                                    n._updateImageType(), t.onload = null, t.onerror = null, n.isLoading &amp;&amp; (n.isLoading = !1, n._sourceLoaded(), "svg" !== n.imageType ? n.emit("loaded", n) : n._loadSvgSource())
                                }, t.onerror = function() {
                                    t.onload = null, t.onerror = null, n.isLoading &amp;&amp; (n.isLoading = !1, n.emit("error", n))
                                }, t.complete &amp;&amp; t.src) {
                                if (t.onload = null, t.onerror = null, "svg" === n.imageType) return void n._loadSvgSource();
                                this.isLoading = !1, t.width &amp;&amp; t.height ? (this._sourceLoaded(), e &amp;&amp; this.emit("loaded", this)) : e &amp;&amp; this.emit("error", this)
                            }
                        }
                    }, e.prototype._updateImageType = function() {
                        if (this.imageUrl) {
                            var t = (0, a.decomposeDataUri)(this.imageUrl),
                                e = void 0;
                            if (t &amp;&amp; "image" === t.mediaType) {
                                var r = t.subType.split("+")[0];
                                if (!(e = (0, a.getUrlFileExtension)("." + r))) throw new Error("Invalid image type in data URI.")
                            } else(e = (0, a.getUrlFileExtension)(this.imageUrl)) || (e = "png");
                            this.imageType = e
                        }
                    }, e.prototype._loadSvgSource = function() {
                        if ("svg" === this.imageType) {
                            var t = (0, a.decomposeDataUri)(this.imageUrl);
                            t ? this._loadSvgSourceUsingDataUri(t) : this._loadSvgSourceUsingXhr()
                        }
                    }, e.prototype._loadSvgSourceUsingDataUri = function(t) {
                        var e = void 0;
                        if ("base64" === t.encoding) {
                            if (!atob) throw new Error("Your browser doesn't support base64 conversions.");
                            e = atob(t.data)
                        } else e = t.data;
                        this._loadSvgSourceUsingString(e)
                    }, e.prototype._loadSvgSourceUsingXhr = function() {
                        var t = this,
                            e = new XMLHttpRequest;
                        e.onload = function() {
                            if (e.readyState !== e.DONE || 200 !== e.status) throw new Error("Failed to load SVG using XHR.");
                            t._loadSvgSourceUsingString(e.response)
                        }, e.onerror = function() {
                            return t.emit("error", t)
                        }, e.open("GET", this.imageUrl, !0), e.send()
                    }, e.prototype._loadSvgSourceUsingString = function(t) {
                        var r = (0, a.getSvgSize)(t),
                            n = r.width,
                            i = r.height;
                        if (!n || !i) throw new Error("The SVG image must have width and height defined (in pixels), canvas API needs them.");
                        this.realWidth = Math.round(n * this.sourceScale), this.realHeight = Math.round(i * this.sourceScale), this._updateDimensions();
                        var o = document.createElement("canvas");
                        o.width = this.realWidth, o.height = this.realHeight, o._pixiId = "canvas_" + (0, a.uid)(), o.getContext("2d").drawImage(this.source, 0, 0, n, i, 0, 0, this.realWidth, this.realHeight), this.origSource = this.source, this.source = o, e.addToCache(this, o._pixiId), this.isLoading = !1, this._sourceLoaded(), this.emit("loaded", this)
                    }, e.prototype._sourceLoaded = function() {
                        this.hasLoaded = !0, this.update()
                    }, e.prototype.destroy = function() {
                        this.imageUrl &amp;&amp; (delete a.TextureCache[this.imageUrl], this.imageUrl = null, navigator.isCocoonJS || (this.source.src = "")), this.source = null, this.dispose(), e.removeFromCache(this), this.textureCacheIds = null, this._destroyed = !0
                    }, e.prototype.dispose = function() {
                        this.emit("dispose", this)
                    }, e.prototype.updateSourceImage = function(t) {
                        this.source.src = t, this.loadSource(this.source)
                    }, e.fromImage = function(t, r, n, i) {
                        var o = a.BaseTextureCache[t];
                        if (!o) {
                            var s = new Image;
                            void 0 === r &amp;&amp; 0 !== t.indexOf("data:") ? s.crossOrigin = (0, l.default)(t) : r &amp;&amp; (s.crossOrigin = "string" == typeof r ? r : "anonymous"), (o = new e(s, n)).imageUrl = t, i &amp;&amp; (o.sourceScale = i), o.resolution = (0, a.getResolutionOfUrl)(t), s.src = t, e.addToCache(o, t)
                        }
                        return o
                    }, e.fromCanvas = function(t, r) {
                        var n = arguments.length &gt; 2 &amp;&amp; void 0 !== arguments[2] ? arguments[2] : "canvas";
                        t._pixiId || (t._pixiId = n + "_" + (0, a.uid)());
                        var i = a.BaseTextureCache[t._pixiId];
                        return i || (i = new e(t, r), e.addToCache(i, t._pixiId)), i
                    }, e.from = function(t, r, n) {
                        if ("string" == typeof t) return e.fromImage(t, void 0, r, n);
                        if (t instanceof HTMLImageElement) {
                            var i = t.src,
                                o = a.BaseTextureCache[i];
                            return o || ((o = new e(t, r)).imageUrl = i, n &amp;&amp; (o.sourceScale = n), o.resolution = (0, a.getResolutionOfUrl)(i), e.addToCache(o, i)), o
                        }
                        return t instanceof HTMLCanvasElement ? e.fromCanvas(t, r) : t
                    }, e.addToCache = function(t, e) {
                        e &amp;&amp; (-1 === t.textureCacheIds.indexOf(e) &amp;&amp; t.textureCacheIds.push(e), a.BaseTextureCache[e] &amp;&amp; console.warn("BaseTexture added to the cache with an id [" + e + "] that already had an entry"), a.BaseTextureCache[e] = t)
                    }, e.removeFromCache = function(t) {
                        if ("string" == typeof t) {
                            var e = a.BaseTextureCache[t];
                            if (e) {
                                var r = e.textureCacheIds.indexOf(t);
                                return r &gt; -1 &amp;&amp; e.textureCacheIds.splice(r, 1), delete a.BaseTextureCache[t], e
                            }
                        } else if (t &amp;&amp; t.textureCacheIds) {
                            for (var n = 0; n &lt; t.textureCacheIds.length; ++n) delete a.BaseTextureCache[t.textureCacheIds[n]];
                            return t.textureCacheIds.length = 0, t
                        }
                        return null
                    }, e
                }(h.default);
            r.default = d
        }, {
            "../settings": 101,
            "../utils": 125,
            "../utils/determineCrossOrigin": 124,
            "bit-twiddle": 1,
            eventemitter3: 3
        }],
        113: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function o(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function s(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var a = n(t("./BaseRenderTexture")),
                u = function(t) {
                    function e(r, n) {
                        i(this, e);
                        var s = null;
                        if (!(r instanceof a.default)) {
                            var u = arguments[1],
                                h = arguments[2],
                                l = arguments[3],
                                c = arguments[4];
                            console.warn("Please use RenderTexture.create(" + u + ", " + h + ") instead of the ctor directly."), s = arguments[0], n = null, r = new a.default(u, h, l, c)
                        }
                        var d = o(this, t.call(this, r, n));
                        return d.legacyRenderer = s, d.valid = !0, d._updateUvs(), d
                    }
                    return s(e, t), e.prototype.resize = function(t, e, r) {
                        t = Math.ceil(t), e = Math.ceil(e), this.valid = t &gt; 0 &amp;&amp; e &gt; 0, this._frame.width = this.orig.width = t, this._frame.height = this.orig.height = e, r || this.baseTexture.resize(t, e), this._updateUvs()
                    }, e.create = function(t, r, n, i) {
                        return new e(new a.default(t, r, n, i))
                    }, e
                }(n(t("./Texture")).default);
            r.default = u
        }, {
            "./BaseRenderTexture": 111,
            "./Texture": 115
        }],
        114: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                o = t("../"),
                s = t("../utils"),
                a = function() {
                    function t(e, r) {
                        var i = arguments.length &gt; 2 &amp;&amp; void 0 !== arguments[2] ? arguments[2] : null;
                        n(this, t), this.baseTexture = e, this.textures = {}, this.data = r, this.resolution = this._updateResolution(i || this.baseTexture.imageUrl), this._frames = this.data.frames, this._frameKeys = Object.keys(this._frames), this._batchIndex = 0, this._callback = null
                    }
                    return i(t, null, [{
                        key: "BATCH_SIZE",
                        get: function() {
                            return 1e3
                        }
                    }]), t.prototype._updateResolution = function(t) {
                        var e = this.data.meta.scale,
                            r = (0, s.getResolutionOfUrl)(t, null);
                        return null === r &amp;&amp; (r = void 0 !== e ? parseFloat(e) : 1), 1 !== r &amp;&amp; (this.baseTexture.resolution = r, this.baseTexture.update()), r
                    }, t.prototype.parse = function(e) {
                        this._batchIndex = 0, this._callback = e, this._frameKeys.length &lt;= t.BATCH_SIZE ? (this._processFrames(0), this._parseComplete()) : this._nextBatch()
                    }, t.prototype._processFrames = function(e) {
                        for (var r = e, n = t.BATCH_SIZE, i = this.baseTexture.sourceScale; r - e &lt; n &amp;&amp; r &lt; this._frameKeys.length;) {
                            var s = this._frameKeys[r],
                                a = this._frames[s],
                                u = a.frame;
                            if (u) {
                                var h = null,
                                    l = null,
                                    c = !1 !== a.trimmed &amp;&amp; a.sourceSize ? a.sourceSize : a.frame,
                                    d = new o.Rectangle(0, 0, Math.floor(c.w * i) / this.resolution, Math.floor(c.h * i) / this.resolution);
                                h = a.rotated ? new o.Rectangle(Math.floor(u.x * i) / this.resolution, Math.floor(u.y * i) / this.resolution, Math.floor(u.h * i) / this.resolution, Math.floor(u.w * i) / this.resolution) : new o.Rectangle(Math.floor(u.x * i) / this.resolution, Math.floor(u.y * i) / this.resolution, Math.floor(u.w * i) / this.resolution, Math.floor(u.h * i) / this.resolution), !1 !== a.trimmed &amp;&amp; a.spriteSourceSize &amp;&amp; (l = new o.Rectangle(Math.floor(a.spriteSourceSize.x * i) / this.resolution, Math.floor(a.spriteSourceSize.y * i) / this.resolution, Math.floor(u.w * i) / this.resolution, Math.floor(u.h * i) / this.resolution)), this.textures[s] = new o.Texture(this.baseTexture, h, d, l, a.rotated ? 2 : 0), o.Texture.addToCache(this.textures[s], s)
                            }
                            r++
                        }
                    }, t.prototype._parseComplete = function() {
                        var t = this._callback;
                        this._callback = null, this._batchIndex = 0, t.call(this, this.textures)
                    }, t.prototype._nextBatch = function() {
                        var e = this;
                        this._processFrames(this._batchIndex * t.BATCH_SIZE), this._batchIndex++, setTimeout(function() {
                            e._batchIndex * t.BATCH_SIZE &lt; e._frameKeys.length ? e._nextBatch() : e._parseComplete()
                        }, 0)
                    }, t.prototype.destroy = function() {
                        var t = arguments.length &gt; 0 &amp;&amp; void 0 !== arguments[0] &amp;&amp; arguments[0];
                        for (var e in this.textures) this.textures[e].destroy();
                        this._frames = null, this._frameKeys = null, this.data = null, this.textures = null, t &amp;&amp; this.baseTexture.destroy(), this.baseTexture = null
                    }, t
                }();
            r.default = a
        }, {
            "../": 65,
            "../utils": 125
        }],
        115: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function o(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function s(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }

            function a(t) {
                t.destroy = function() {}, t.on = function() {}, t.once = function() {}, t.emit = function() {}
            }
            r.__esModule = !0;
            var u = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                h = n(t("./BaseTexture")),
                l = n(t("./VideoBaseTexture")),
                c = n(t("./TextureUvs")),
                d = n(t("eventemitter3")),
                f = t("../math"),
                p = t("../utils"),
                v = n(t("../settings")),
                g = function(t) {
                    function e(r, n, s, a, u) {
                        i(this, e);
                        var h = o(this, t.call(this));
                        if (h.noFrame = !1, n || (h.noFrame = !0, n = new f.Rectangle(0, 0, 1, 1)), r instanceof e &amp;&amp; (r = r.baseTexture), h.baseTexture = r, h._frame = n, h.trim = a, h.valid = !1, h.requiresUpdate = !1, h._uvs = null, h.orig = s || n, h._rotate = Number(u || 0), !0 === u) h._rotate = 2;
                        else if (h._rotate % 2 != 0) throw new Error("attempt to use diamond-shaped UVs. If you are sure, set rotation manually");
                        return r.hasLoaded ? (h.noFrame &amp;&amp; (n = new f.Rectangle(0, 0, r.width, r.height), r.on("update", h.onBaseTextureUpdated, h)), h.frame = n) : r.once("loaded", h.onBaseTextureLoaded, h), h._updateID = 0, h.transform = null, h.textureCacheIds = [], h
                    }
                    return s(e, t), e.prototype.update = function() {
                        this.baseTexture.update()
                    }, e.prototype.onBaseTextureLoaded = function(t) {
                        this._updateID++, this.noFrame ? this.frame = new f.Rectangle(0, 0, t.width, t.height) : this.frame = this._frame, this.baseTexture.on("update", this.onBaseTextureUpdated, this), this.emit("update", this)
                    }, e.prototype.onBaseTextureUpdated = function(t) {
                        this._updateID++, this._frame.width = t.width, this._frame.height = t.height, this.emit("update", this)
                    }, e.prototype.destroy = function(t) {
                        this.baseTexture &amp;&amp; (t &amp;&amp; (p.TextureCache[this.baseTexture.imageUrl] &amp;&amp; e.removeFromCache(this.baseTexture.imageUrl), this.baseTexture.destroy()), this.baseTexture.off("update", this.onBaseTextureUpdated, this), this.baseTexture.off("loaded", this.onBaseTextureLoaded, this), this.baseTexture = null), this._frame = null, this._uvs = null, this.trim = null, this.orig = null, this.valid = !1, e.removeFromCache(this), this.textureCacheIds = null
                    }, e.prototype.clone = function() {
                        return new e(this.baseTexture, this.frame, this.orig, this.trim, this.rotate)
                    }, e.prototype._updateUvs = function() {
                        this._uvs || (this._uvs = new c.default), this._uvs.set(this._frame, this.baseTexture, this.rotate), this._updateID++
                    }, e.fromImage = function(t, r, n, i) {
                        var o = p.TextureCache[t];
                        return o || (o = new e(h.default.fromImage(t, r, n, i)), e.addToCache(o, t)), o
                    }, e.fromFrame = function(t) {
                        var e = p.TextureCache[t];
                        if (!e) throw new Error('The frameId "' + t + '" does not exist in the texture cache');
                        return e
                    }, e.fromCanvas = function(t, r) {
                        var n = arguments.length &gt; 2 &amp;&amp; void 0 !== arguments[2] ? arguments[2] : "canvas";
                        return new e(h.default.fromCanvas(t, r, n))
                    }, e.fromVideo = function(t, r) {
                        return "string" == typeof t ? e.fromVideoUrl(t, r) : new e(l.default.fromVideo(t, r))
                    }, e.fromVideoUrl = function(t, r) {
                        return new e(l.default.fromUrl(t, r))
                    }, e.from = function(t) {
                        if ("string" == typeof t) {
                            var r = p.TextureCache[t];
                            return r || (null !== t.match(/\.(mp4|webm|ogg|h264|avi|mov)$/) ? e.fromVideoUrl(t) : e.fromImage(t))
                        }
                        return t instanceof HTMLImageElement ? new e(h.default.from(t)) : t instanceof HTMLCanvasElement ? e.fromCanvas(t, v.default.SCALE_MODE, "HTMLCanvasElement") : t instanceof HTMLVideoElement ? e.fromVideo(t) : t instanceof h.default ? new e(t) : t
                    }, e.fromLoader = function(t, r, n) {
                        var i = new h.default(t, void 0, (0, p.getResolutionOfUrl)(r)),
                            o = new e(i);
                        return i.imageUrl = r, n || (n = r), h.default.addToCache(o.baseTexture, n), e.addToCache(o, n), n !== r &amp;&amp; (h.default.addToCache(o.baseTexture, r), e.addToCache(o, r)), o
                    }, e.addToCache = function(t, e) {
                        e &amp;&amp; (-1 === t.textureCacheIds.indexOf(e) &amp;&amp; t.textureCacheIds.push(e), p.TextureCache[e] &amp;&amp; console.warn("Texture added to the cache with an id [" + e + "] that already had an entry"), p.TextureCache[e] = t)
                    }, e.removeFromCache = function(t) {
                        if ("string" == typeof t) {
                            var e = p.TextureCache[t];
                            if (e) {
                                var r = e.textureCacheIds.indexOf(t);
                                return r &gt; -1 &amp;&amp; e.textureCacheIds.splice(r, 1), delete p.TextureCache[t], e
                            }
                        } else if (t &amp;&amp; t.textureCacheIds) {
                            for (var n = 0; n &lt; t.textureCacheIds.length; ++n) p.TextureCache[t.textureCacheIds[n]] === t &amp;&amp; delete p.TextureCache[t.textureCacheIds[n]];
                            return t.textureCacheIds.length = 0, t
                        }
                        return null
                    }, u(e, [{
                        key: "frame",
                        get: function() {
                            return this._frame
                        },
                        set: function(t) {
                            this._frame = t, this.noFrame = !1;
                            var e = t.x,
                                r = t.y,
                                n = t.width,
                                i = t.height,
                                o = e + n &gt; this.baseTexture.width,
                                s = r + i &gt; this.baseTexture.height;
                            if (o || s) {
                                var a = o &amp;&amp; s ? "and" : "or",
                                    u = "X: " + e + " + " + n + " = " + (e + n) + " &gt; " + this.baseTexture.width,
                                    h = "Y: " + r + " + " + i + " = " + (r + i) + " &gt; " + this.baseTexture.height;
                                throw new Error("Texture Error: frame does not fit inside the base Texture dimensions: " + u + " " + a + " " + h)
                            }
                            this.valid = n &amp;&amp; i &amp;&amp; this.baseTexture.hasLoaded, this.trim || this.rotate || (this.orig = t), this.valid &amp;&amp; this._updateUvs()
                        }
                    }, {
                        key: "rotate",
                        get: function() {
                            return this._rotate
                        },
                        set: function(t) {
                            this._rotate = t, this.valid &amp;&amp; this._updateUvs()
                        }
                    }, {
                        key: "width",
                        get: function() {
                            return this.orig.width
                        }
                    }, {
                        key: "height",
                        get: function() {
                            return this.orig.height
                        }
                    }]), e
                }(d.default);
            r.default = g, g.EMPTY = new g(new h.default), a(g.EMPTY), a(g.EMPTY.baseTexture), g.WHITE = function() {
                var t = document.createElement("canvas");
                t.width = 10, t.height = 10;
                var e = t.getContext("2d");
                return e.fillStyle = "white", e.fillRect(0, 0, 10, 10), new g(new h.default(t))
            }(), a(g.WHITE), a(g.WHITE.baseTexture)
        }, {
            "../math": 70,
            "../settings": 101,
            "../utils": 125,
            "./BaseTexture": 112,
            "./TextureUvs": 117,
            "./VideoBaseTexture": 118,
            eventemitter3: 3
        }],
        116: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                o = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("../math/Matrix")),
                s = new o.default,
                a = function() {
                    function t(e, r) {
                        n(this, t), this._texture = e, this.mapCoord = new o.default, this.uClampFrame = new Float32Array(4), this.uClampOffset = new Float32Array(2), this._lastTextureID = -1, this.clampOffset = 0, this.clampMargin = void 0 === r ? .5 : r
                    }
                    return t.prototype.multiplyUvs = function(t, e) {
                        void 0 === e &amp;&amp; (e = t);
                        for (var r = this.mapCoord, n = 0; n &lt; t.length; n += 2) {
                            var i = t[n],
                                o = t[n + 1];
                            e[n] = i * r.a + o * r.c + r.tx, e[n + 1] = i * r.b + o * r.d + r.ty
                        }
                        return e
                    }, t.prototype.update = function(t) {
                        var e = this._texture;
                        if (!e || !e.valid) return !1;
                        if (!t &amp;&amp; this._lastTextureID === e._updateID) return !1;
                        this._lastTextureID = e._updateID;
                        var r = e._uvs;
                        this.mapCoord.set(r.x1 - r.x0, r.y1 - r.y0, r.x3 - r.x0, r.y3 - r.y0, r.x0, r.y0);
                        var n = e.orig,
                            i = e.trim;
                        i &amp;&amp; (s.set(n.width / i.width, 0, 0, n.height / i.height, -i.x / i.width, -i.y / i.height), this.mapCoord.append(s));
                        var o = e.baseTexture,
                            a = this.uClampFrame,
                            u = this.clampMargin / o.resolution,
                            h = this.clampOffset;
                        return a[0] = (e._frame.x + u + h) / o.width, a[1] = (e._frame.y + u + h) / o.height, a[2] = (e._frame.x + e._frame.width - u + h) / o.width, a[3] = (e._frame.y + e._frame.height - u + h) / o.height, this.uClampOffset[0] = h / o.realWidth, this.uClampOffset[1] = h / o.realHeight, !0
                    }, i(t, [{
                        key: "texture",
                        get: function() {
                            return this._texture
                        },
                        set: function(t) {
                            this._texture = t, this._lastTextureID = -1
                        }
                    }]), t
                }();
            r.default = a
        }, {
            "../math/Matrix": 67
        }],
        117: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("../math/GroupD8")),
                o = function() {
                    function t() {
                        n(this, t), this.x0 = 0, this.y0 = 0, this.x1 = 1, this.y1 = 0, this.x2 = 1, this.y2 = 1, this.x3 = 0, this.y3 = 1, this.uvsUint32 = new Uint32Array(4)
                    }
                    return t.prototype.set = function(t, e, r) {
                        var n = e.width,
                            o = e.height;
                        if (r) {
                            var s = t.width / 2 / n,
                                a = t.height / 2 / o,
                                u = t.x / n + s,
                                h = t.y / o + a;
                            r = i.default.add(r, i.default.NW), this.x0 = u + s * i.default.uX(r), this.y0 = h + a * i.default.uY(r), r = i.default.add(r, 2), this.x1 = u + s * i.default.uX(r), this.y1 = h + a * i.default.uY(r), r = i.default.add(r, 2), this.x2 = u + s * i.default.uX(r), this.y2 = h + a * i.default.uY(r), r = i.default.add(r, 2), this.x3 = u + s * i.default.uX(r), this.y3 = h + a * i.default.uY(r)
                        } else this.x0 = t.x / n, this.y0 = t.y / o, this.x1 = (t.x + t.width) / n, this.y1 = t.y / o, this.x2 = (t.x + t.width) / n, this.y2 = (t.y + t.height) / o, this.x3 = t.x / n, this.y3 = (t.y + t.height) / o;
                        this.uvsUint32[0] = (65535 * this.y0 &amp; 65535) &lt;&lt; 16 | 65535 * this.x0 &amp; 65535, this.uvsUint32[1] = (65535 * this.y1 &amp; 65535) &lt;&lt; 16 | 65535 * this.x1 &amp; 65535, this.uvsUint32[2] = (65535 * this.y2 &amp; 65535) &lt;&lt; 16 | 65535 * this.x2 &amp; 65535, this.uvsUint32[3] = (65535 * this.y3 &amp; 65535) &lt;&lt; 16 | 65535 * this.x3 &amp; 65535
                    }, t
                }();
            r.default = o
        }, {
            "../math/GroupD8": 66
        }],
        118: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function o(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function s(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }

            function a(t, e) {
                e || (e = "video/" + t.substr(t.lastIndexOf(".") + 1));
                var r = document.createElement("source");
                return r.src = t, r.type = e, r
            }
            r.__esModule = !0;
            var u = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                h = n(t("./BaseTexture")),
                l = t("../utils"),
                c = t("../ticker"),
                d = t("../const"),
                f = n(t("../utils/determineCrossOrigin")),
                p = function(t) {
                    function e(r, n) {
                        if (i(this, e), !r) throw new Error("No video source element specified.");
                        (r.readyState === r.HAVE_ENOUGH_DATA || r.readyState === r.HAVE_FUTURE_DATA) &amp;&amp; r.width &amp;&amp; r.height &amp;&amp; (r.complete = !0);
                        var s = o(this, t.call(this, r, n));
                        return s.width = r.videoWidth, s.height = r.videoHeight, s._autoUpdate = !0, s._isAutoUpdating = !1, s.autoPlay = !0, s.update = s.update.bind(s), s._onCanPlay = s._onCanPlay.bind(s), r.addEventListener("play", s._onPlayStart.bind(s)), r.addEventListener("pause", s._onPlayStop.bind(s)), s.hasLoaded = !1, s.__loaded = !1, s._isSourceReady() ? s._onCanPlay() : (r.addEventListener("canplay", s._onCanPlay), r.addEventListener("canplaythrough", s._onCanPlay)), s
                    }
                    return s(e, t), e.prototype._isSourcePlaying = function() {
                        var t = this.source;
                        return t.currentTime &gt; 0 &amp;&amp; !1 === t.paused &amp;&amp; !1 === t.ended &amp;&amp; t.readyState &gt; 2
                    }, e.prototype._isSourceReady = function() {
                        return 3 === this.source.readyState || 4 === this.source.readyState
                    }, e.prototype._onPlayStart = function() {
                        this.hasLoaded || this._onCanPlay(), !this._isAutoUpdating &amp;&amp; this.autoUpdate &amp;&amp; (c.shared.add(this.update, this, d.UPDATE_PRIORITY.HIGH), this._isAutoUpdating = !0)
                    }, e.prototype._onPlayStop = function() {
                        this._isAutoUpdating &amp;&amp; (c.shared.remove(this.update, this), this._isAutoUpdating = !1)
                    }, e.prototype._onCanPlay = function() {
                        this.hasLoaded = !0, this.source &amp;&amp; (this.source.removeEventListener("canplay", this._onCanPlay), this.source.removeEventListener("canplaythrough", this._onCanPlay), this.width = this.source.videoWidth, this.height = this.source.videoHeight, this.__loaded || (this.__loaded = !0, this.emit("loaded", this)), this._isSourcePlaying() ? this._onPlayStart() : this.autoPlay &amp;&amp; this.source.play())
                    }, e.prototype.destroy = function() {
                        this._isAutoUpdating &amp;&amp; c.shared.remove(this.update, this), this.source &amp;&amp; this.source._pixiId &amp;&amp; (h.default.removeFromCache(this.source._pixiId), delete this.source._pixiId, this.source.pause(), this.source.src = "", this.source.load()), t.prototype.destroy.call(this)
                    }, e.fromVideo = function(t, r) {
                        t._pixiId || (t._pixiId = "video_" + (0, l.uid)());
                        var n = l.BaseTextureCache[t._pixiId];
                        return n || (n = new e(t, r), h.default.addToCache(n, t._pixiId)), n
                    }, e.fromUrl = function(t, r, n) {
                        var i = document.createElement("video");
                        i.setAttribute("webkit-playsinline", ""), i.setAttribute("playsinline", "");
                        var o = Array.isArray(t) ? t[0].src || t[0] : t.src || t;
                        if (void 0 === n &amp;&amp; 0 !== o.indexOf("data:") ? i.crossOrigin = (0, f.default)(o) : n &amp;&amp; (i.crossOrigin = "string" == typeof n ? n : "anonymous"), Array.isArray(t))
                            for (var s = 0; s &lt; t.length; ++s) i.appendChild(a(t[s].src || t[s], t[s].mime));
                        else i.appendChild(a(o, t.mime));
                        return i.load(), e.fromVideo(i, r)
                    }, u(e, [{
                        key: "autoUpdate",
                        get: function() {
                            return this._autoUpdate
                        },
                        set: function(t) {
                            t !== this._autoUpdate &amp;&amp; (this._autoUpdate = t, !this._autoUpdate &amp;&amp; this._isAutoUpdating ? (c.shared.remove(this.update, this), this._isAutoUpdating = !1) : this._autoUpdate &amp;&amp; !this._isAutoUpdating &amp;&amp; (c.shared.add(this.update, this, d.UPDATE_PRIORITY.HIGH), this._isAutoUpdating = !0))
                        }
                    }]), e
                }(h.default);
            r.default = p, p.fromUrls = p.fromUrl
        }, {
            "../const": 46,
            "../ticker": 121,
            "../utils": 125,
            "../utils/determineCrossOrigin": 124,
            "./BaseTexture": 112
        }],
        119: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var o = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                s = n(t("../settings")),
                a = t("../const"),
                u = n(t("./TickerListener")),
                h = function() {
                    function t() {
                        var e = this;
                        i(this, t), this._head = new u.default(null, null, 1 / 0), this._requestId = null, this._maxElapsedMS = 100, this.autoStart = !1, this.deltaTime = 1, this.elapsedMS = 1 / s.default.TARGET_FPMS, this.lastTime = -1, this.speed = 1, this.started = !1, this._tick = function(t) {
                            e._requestId = null, e.started &amp;&amp; (e.update(t), e.started &amp;&amp; null === e._requestId &amp;&amp; e._head.next &amp;&amp; (e._requestId = requestAnimationFrame(e._tick)))
                        }
                    }
                    return t.prototype._requestIfNeeded = function() {
                        null === this._requestId &amp;&amp; this._head.next &amp;&amp; (this.lastTime = performance.now(), this._requestId = requestAnimationFrame(this._tick))
                    }, t.prototype._cancelIfNeeded = function() {
                        null !== this._requestId &amp;&amp; (cancelAnimationFrame(this._requestId), this._requestId = null)
                    }, t.prototype._startIfPossible = function() {
                        this.started ? this._requestIfNeeded() : this.autoStart &amp;&amp; this.start()
                    }, t.prototype.add = function(t, e) {
                        var r = arguments.length &gt; 2 &amp;&amp; void 0 !== arguments[2] ? arguments[2] : a.UPDATE_PRIORITY.NORMAL;
                        return this._addListener(new u.default(t, e, r))
                    }, t.prototype.addOnce = function(t, e) {
                        var r = arguments.length &gt; 2 &amp;&amp; void 0 !== arguments[2] ? arguments[2] : a.UPDATE_PRIORITY.NORMAL;
                        return this._addListener(new u.default(t, e, r, !0))
                    }, t.prototype._addListener = function(t) {
                        var e = this._head.next,
                            r = this._head;
                        if (e) {
                            for (; e;) {
                                if (t.priority &gt; e.priority) {
                                    t.connect(r);
                                    break
                                }
                                r = e, e = e.next
                            }
                            t.previous || t.connect(r)
                        } else t.connect(r);
                        return this._startIfPossible(), this
                    }, t.prototype.remove = function(t, e) {
                        for (var r = this._head.next; r;) r = r.match(t, e) ? r.destroy() : r.next;
                        return this._head.next || this._cancelIfNeeded(), this
                    }, t.prototype.start = function() {
                        this.started || (this.started = !0, this._requestIfNeeded())
                    }, t.prototype.stop = function() {
                        this.started &amp;&amp; (this.started = !1, this._cancelIfNeeded())
                    }, t.prototype.destroy = function() {
                        this.stop();
                        for (var t = this._head.next; t;) t = t.destroy(!0);
                        this._head.destroy(), this._head = null
                    }, t.prototype.update = function() {
                        var t = arguments.length &gt; 0 &amp;&amp; void 0 !== arguments[0] ? arguments[0] : performance.now(),
                            e = void 0;
                        if (t &gt; this.lastTime) {
                            (e = this.elapsedMS = t - this.lastTime) &gt; this._maxElapsedMS &amp;&amp; (e = this._maxElapsedMS), this.deltaTime = e * s.default.TARGET_FPMS * this.speed;
                            for (var r = this._head, n = r.next; n;) n = n.emit(this.deltaTime);
                            r.next || this._cancelIfNeeded()
                        } else this.deltaTime = this.elapsedMS = 0;
                        this.lastTime = t
                    }, o(t, [{
                        key: "FPS",
                        get: function() {
                            return 1e3 / this.elapsedMS
                        }
                    }, {
                        key: "minFPS",
                        get: function() {
                            return 1e3 / this._maxElapsedMS
                        },
                        set: function(t) {
                            var e = Math.min(Math.max(0, t) / 1e3, s.default.TARGET_FPMS);
                            this._maxElapsedMS = 1 / e
                        }
                    }]), t
                }();
            r.default = h
        }, {
            "../const": 46,
            "../settings": 101,
            "./TickerListener": 120
        }],
        120: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function() {
                function t(e) {
                    var r = arguments.length &gt; 1 &amp;&amp; void 0 !== arguments[1] ? arguments[1] : null,
                        i = arguments.length &gt; 2 &amp;&amp; void 0 !== arguments[2] ? arguments[2] : 0,
                        o = arguments.length &gt; 3 &amp;&amp; void 0 !== arguments[3] &amp;&amp; arguments[3];
                    n(this, t), this.fn = e, this.context = r, this.priority = i, this.once = o, this.next = null, this.previous = null, this._destroyed = !1
                }
                return t.prototype.match = function(t, e) {
                    return e = e || null, this.fn === t &amp;&amp; this.context === e
                }, t.prototype.emit = function(t) {
                    this.fn &amp;&amp; (this.context ? this.fn.call(this.context, t) : this.fn(t));
                    var e = this.next;
                    return this.once &amp;&amp; this.destroy(!0), this._destroyed &amp;&amp; (this.next = null), e
                }, t.prototype.connect = function(t) {
                    this.previous = t, t.next &amp;&amp; (t.next.previous = this), this.next = t.next, t.next = this
                }, t.prototype.destroy = function() {
                    var t = arguments.length &gt; 0 &amp;&amp; void 0 !== arguments[0] &amp;&amp; arguments[0];
                    this._destroyed = !0, this.fn = null, this.context = null, this.previous &amp;&amp; (this.previous.next = this.next), this.next &amp;&amp; (this.next.previous = this.previous);
                    var e = this.next;
                    return this.next = t ? null : e, this.previous = null, e
                }, t
            }();
            r.default = i
        }, {}],
        121: [function(t, e, r) {
            "use strict";
            r.__esModule = !0, r.Ticker = r.shared = void 0;
            var n = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("./Ticker")),
                i = new n.default;
            i.autoStart = !0, i.destroy = function() {}, r.shared = i, r.Ticker = n.default
        }, {
            "./Ticker": 119
        }],
        122: [function(t, e, r) {
            "use strict";
            r.__esModule = !0, r.default = function() {
                return !(navigator.platform &amp;&amp; /iPad|iPhone|iPod/.test(navigator.platform))
            }
        }, {}],
        123: [function(t, e, r) {
            "use strict";
            r.__esModule = !0, r.default = function(t) {
                for (var e = 6 * t, r = new Uint16Array(e), n = 0, i = 0; n &lt; e; n += 6, i += 4) r[n + 0] = i + 0, r[n + 1] = i + 1, r[n + 2] = i + 2, r[n + 3] = i + 0, r[n + 4] = i + 2, r[n + 5] = i + 3;
                return r
            }
        }, {}],
        124: [function(t, e, r) {
            "use strict";
            r.__esModule = !0, r.default = function(t) {
                var e = arguments.length &gt; 1 &amp;&amp; void 0 !== arguments[1] ? arguments[1] : window.location;
                if (0 === t.indexOf("data:")) return "";
                e = e || window.location, i || (i = document.createElement("a")), i.href = t;
                var r = !(t = n.default.parse(i.href)).port &amp;&amp; "" === e.port || t.port === e.port;
                return t.hostname === e.hostname &amp;&amp; r &amp;&amp; t.protocol === e.protocol ? "" : "anonymous"
            };
            var n = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("url")),
                i = void 0
        }, {
            url: 38
        }],
        125: [function(t, e, r) {
            "use strict";

            function n(t) {
                if (t &amp;&amp; t.__esModule) return t;
                var e = {};
                if (null != t)
                    for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                return e.default = t, e
            }

            function i(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }
            r.__esModule = !0, r.premultiplyBlendMode = r.BaseTextureCache = r.TextureCache = r.earcut = r.mixins = r.pluginTarget = r.EventEmitter = r.removeItems = r.isMobile = void 0, r.uid = function() {
                return ++p
            }, r.hex2rgb = function(t, e) {
                return e = e || [], e[0] = (t &gt;&gt; 16 &amp; 255) / 255, e[1] = (t &gt;&gt; 8 &amp; 255) / 255, e[2] = (255 &amp; t) / 255, e
            }, r.hex2string = function(t) {
                return t = t.toString(16), "#" + (t = "000000".substr(0, 6 - t.length) + t)
            }, r.rgb2hex = function(t) {
                return (255 * t[0] &lt;&lt; 16) + (255 * t[1] &lt;&lt; 8) + (255 * t[2] | 0)
            }, r.getResolutionOfUrl = function(t, e) {
                var r = s.default.RETINA_PREFIX.exec(t);
                return r ? parseFloat(r[1]) : void 0 !== e ? e : 1
            }, r.decomposeDataUri = function(t) {
                var e = o.DATA_URI.exec(t);
                if (e) return {
                    mediaType: e[1] ? e[1].toLowerCase() : void 0,
                    subType: e[2] ? e[2].toLowerCase() : void 0,
                    charset: e[3] ? e[3].toLowerCase() : void 0,
                    encoding: e[4] ? e[4].toLowerCase() : void 0,
                    data: e[5]
                }
            }, r.getUrlFileExtension = function(t) {
                var e = o.URL_FILE_EXTENSION.exec(t);
                if (e) return e[1].toLowerCase()
            }, r.getSvgSize = function(t) {
                var e = o.SVG_SIZE.exec(t),
                    r = {};
                return e &amp;&amp; (r[e[1]] = Math.round(parseFloat(e[3])), r[e[5]] = Math.round(parseFloat(e[7]))), r
            }, r.skipHello = function() {
                v = !0
            }, r.sayHello = function(t) {
                if (!v) {
                    if (navigator.userAgent.toLowerCase().indexOf("chrome") &gt; -1) {
                        var e = ["\n %c %c %c PixiJS " + o.VERSION + " - âœ° " + t + " âœ°  %c  %c  http://www.pixijs.com/  %c %c â™¥%câ™¥%câ™¥ \n\n", "background: #ff66a5; padding:5px 0;", "background: #ff66a5; padding:5px 0;", "color: #ff66a5; background: #030307; padding:5px 0;", "background: #ff66a5; padding:5px 0;", "background: #ffc3dc; padding:5px 0;", "background: #ff66a5; padding:5px 0;", "color: #ff2424; background: #fff; padding:5px 0;", "color: #ff2424; background: #fff; padding:5px 0;", "color: #ff2424; background: #fff; padding:5px 0;"];
                        window.console.log.apply(console, e)
                    } else window.console &amp;&amp; window.console.log("PixiJS " + o.VERSION + " - " + t + " - http://www.pixijs.com/");
                    v = !0
                }
            }, r.isWebGLSupported = function() {
                var t = {
                    stencil: !0,
                    failIfMajorPerformanceCaveat: !0
                };
                try {
                    if (!window.WebGLRenderingContext) return !1;
                    var e = document.createElement("canvas"),
                        r = e.getContext("webgl", t) || e.getContext("experimental-webgl", t),
                        n = !(!r || !r.getContextAttributes().stencil);
                    if (r) {
                        var i = r.getExtension("WEBGL_lose_context");
                        i &amp;&amp; i.loseContext()
                    }
                    return r = null, n
                } catch (t) {
                    return !1
                }
            }, r.sign = function(t) {
                return 0 === t ? 0 : t &lt; 0 ? -1 : 1
            }, r.destroyTextureCache = function() {
                var t = void 0;
                for (t in g) g[t].destroy();
                for (t in y) y[t].destroy()
            }, r.clearTextureCache = function() {
                var t = void 0;
                for (t in g) delete g[t];
                for (t in y) delete y[t]
            }, r.correctBlendMode = function(t, e) {
                return m[e ? 1 : 0][t]
            }, r.premultiplyTint = function(t, e) {
                if (1 === e) return (255 * e &lt;&lt; 24) + t;
                if (0 === e) return 0;
                var r = t &gt;&gt; 16 &amp; 255,
                    n = t &gt;&gt; 8 &amp; 255,
                    i = 255 &amp; t;
                return r = r * e + .5 | 0, n = n * e + .5 | 0, i = i * e + .5 | 0, (255 * e &lt;&lt; 24) + (r &lt;&lt; 16) + (n &lt;&lt; 8) + i
            }, r.premultiplyRgba = function(t, e, r, n) {
                return r = r || new Float32Array(4), n || void 0 === n ? (r[0] = t[0] * e, r[1] = t[1] * e, r[2] = t[2] * e) : (r[0] = t[0], r[1] = t[1], r[2] = t[2]), r[3] = e, r
            }, r.premultiplyTintToRgba = function(t, e, r, n) {
                return r = r || new Float32Array(4), r[0] = (t &gt;&gt; 16 &amp; 255) / 255, r[1] = (t &gt;&gt; 8 &amp; 255) / 255, r[2] = (255 &amp; t) / 255, (n || void 0 === n) &amp;&amp; (r[0] *= e, r[1] *= e, r[2] *= e), r[3] = e, r
            };
            var o = t("../const"),
                s = i(t("../settings")),
                a = i(t("eventemitter3")),
                u = i(t("./pluginTarget")),
                h = n(t("./mixin")),
                l = n(t("ismobilejs")),
                c = i(t("remove-array-items")),
                d = i(t("./mapPremultipliedBlendModes")),
                f = i(t("earcut")),
                p = 0,
                v = !1;
            r.isMobile = l, r.removeItems = c.default, r.EventEmitter = a.default, r.pluginTarget = u.default, r.mixins = h, r.earcut = f.default;
            var g = r.TextureCache = Object.create(null),
                y = r.BaseTextureCache = Object.create(null),
                m = r.premultiplyBlendMode = (0, d.default)()
        }, {
            "../const": 46,
            "../settings": 101,
            "./mapPremultipliedBlendModes": 126,
            "./mixin": 128,
            "./pluginTarget": 129,
            earcut: 2,
            eventemitter3: 3,
            ismobilejs: 4,
            "remove-array-items": 31
        }],
        126: [function(t, e, r) {
            "use strict";
            r.__esModule = !0, r.default = function() {
                for (var t = [], e = [], r = 0; r &lt; 32; r++) t[r] = r, e[r] = r;
                t[n.BLEND_MODES.NORMAL_NPM] = n.BLEND_MODES.NORMAL, t[n.BLEND_MODES.ADD_NPM] = n.BLEND_MODES.ADD, t[n.BLEND_MODES.SCREEN_NPM] = n.BLEND_MODES.SCREEN, e[n.BLEND_MODES.NORMAL] = n.BLEND_MODES.NORMAL_NPM, e[n.BLEND_MODES.ADD] = n.BLEND_MODES.ADD_NPM, e[n.BLEND_MODES.SCREEN] = n.BLEND_MODES.SCREEN_NPM;
                var i = [];
                return i.push(e), i.push(t), i
            };
            var n = t("../const")
        }, {
            "../const": 46
        }],
        127: [function(t, e, r) {
            "use strict";
            r.__esModule = !0, r.default = function(t) {
                return n.default.tablet || n.default.phone ? 4 : t
            };
            var n = function(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }(t("ismobilejs"))
        }, {
            ismobilejs: 4
        }],
        128: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (t &amp;&amp; e)
                    for (var r = Object.keys(e), n = 0; n &lt; r.length; ++n) {
                        var i = r[n];
                        Object.defineProperty(t, i, Object.getOwnPropertyDescriptor(e, i))
                    }
            }
            r.__esModule = !0, r.mixin = n, r.delayMixin = function(t, e) {
                i.push(t, e)
            }, r.performMixins = function() {
                for (var t = 0; t &lt; i.length; t += 2) n(i[t], i[t + 1]);
                i.length = 0
            };
            var i = []
        }, {}],
        129: [function(t, e, r) {
            "use strict";

            function n(t) {
                t.__plugins = {}, t.registerPlugin = function(e, r) {
                    t.__plugins[e] = r
                }, t.prototype.initPlugins = function() {
                    this.plugins = this.plugins || {};
                    for (var e in t.__plugins) this.plugins[e] = new t.__plugins[e](this)
                }, t.prototype.destroyPlugins = function() {
                    for (var t in this.plugins) this.plugins[t].destroy(), this.plugins[t] = null;
                    this.plugins = null
                }
            }
            r.__esModule = !0, r.default = {
                mixin: function(t) {
                    n(t)
                }
            }
        }, {}],
        130: [function(t, e, r) {
            "use strict";
            r.__esModule = !0, r.default = function(t) {
                var e = t.width,
                    r = t.height,
                    n = t.getContext("2d"),
                    i = n.getImageData(0, 0, e, r).data,
                    o = i.length,
                    s = {
                        top: null,
                        left: null,
                        right: null,
                        bottom: null
                    },
                    a = void 0,
                    u = void 0,
                    h = void 0;
                for (a = 0; a &lt; o; a += 4) 0 !== i[a + 3] &amp;&amp; (u = a / 4 % e, h = ~~(a / 4 / e), null === s.top &amp;&amp; (s.top = h), null === s.left ? s.left = u : u &lt; s.left &amp;&amp; (s.left = u), null === s.right ? s.right = u + 1 : s.right &lt; u &amp;&amp; (s.right = u + 1), null === s.bottom ? s.bottom = h : s.bottom &lt; h &amp;&amp; (s.bottom = h));
                return e = s.right - s.left, {
                    height: r = s.bottom - s.top + 1,
                    width: e,
                    data: n.getImageData(s.left, s.top, e, r)
                }
            }
        }, {}],
        131: [function(t, e, r) {
            "use strict";

            function n(t) {
                if (!i[t]) {
                    var e = (new Error).stack;
                    void 0 === e ? console.warn("Deprecation Warning: ", t) : (e = e.split("\n").splice(3).join("\n"), console.groupCollapsed ? (console.groupCollapsed("%cDeprecation Warning: %c%s", "color:#614108;background:#fffbe6", "font-weight:normal;color:#614108;background:#fffbe6", t), console.warn(e), console.groupEnd()) : (console.warn("Deprecation Warning: ", t), console.warn(e))), i[t] = !0
                }
            }
            r.__esModule = !0, r.default = function(t) {
                var e = t.mesh,
                    r = t.particles,
                    i = t.extras,
                    o = t.filters,
                    s = t.prepare,
                    a = t.loaders,
                    u = t.interaction;
                Object.defineProperties(t, {
                    SpriteBatch: {
                        get: function() {
                            throw new ReferenceError("SpriteBatch does not exist any more, please use the new ParticleContainer instead.")
                        }
                    },
                    AssetLoader: {
                        get: function() {
                            throw new ReferenceError("The loader system was overhauled in PixiJS v3, please see the new PIXI.loaders.Loader class.")
                        }
                    },
                    Stage: {
                        get: function() {
                            return n("You do not need to use a PIXI Stage any more, you can simply render any container."), t.Container
                        }
                    },
                    DisplayObjectContainer: {
                        get: function() {
                            return n("DisplayObjectContainer has been shortened to Container, please use Container from now on."), t.Container
                        }
                    },
                    Strip: {
                        get: function() {
                            return n("The Strip class has been renamed to Mesh and moved to mesh.Mesh, please use mesh.Mesh from now on."), e.Mesh
                        }
                    },
                    Rope: {
                        get: function() {
                            return n("The Rope class has been moved to mesh.Rope, please use mesh.Rope from now on."), e.Rope
                        }
                    },
                    ParticleContainer: {
                        get: function() {
                            return n("The ParticleContainer class has been moved to particles.ParticleContainer, please use particles.ParticleContainer from now on."), r.ParticleContainer
                        }
                    },
                    MovieClip: {
                        get: function() {
                            return n("The MovieClip class has been moved to extras.AnimatedSprite, please use extras.AnimatedSprite."), i.AnimatedSprite
                        }
                    },
                    TilingSprite: {
                        get: function() {
                            return n("The TilingSprite class has been moved to extras.TilingSprite, please use extras.TilingSprite from now on."), i.TilingSprite
                        }
                    },
                    BitmapText: {
                        get: function() {
                            return n("The BitmapText class has been moved to extras.BitmapText, please use extras.BitmapText from now on."), i.BitmapText
                        }
                    },
                    blendModes: {
                        get: function() {
                            return n("The blendModes has been moved to BLEND_MODES, please use BLEND_MODES from now on."), t.BLEND_MODES
                        }
                    },
                    scaleModes: {
                        get: function() {
                            return n("The scaleModes has been moved to SCALE_MODES, please use SCALE_MODES from now on."), t.SCALE_MODES
                        }
                    },
                    BaseTextureCache: {
                        get: function() {
                            return n("The BaseTextureCache class has been moved to utils.BaseTextureCache, please use utils.BaseTextureCache from now on."), t.utils.BaseTextureCache
                        }
                    },
                    TextureCache: {
                        get: function() {
                            return n("The TextureCache class has been moved to utils.TextureCache, please use utils.TextureCache from now on."), t.utils.TextureCache
                        }
                    },
                    math: {
                        get: function() {
                            return n("The math namespace is deprecated, please access members already accessible on PIXI."), t
                        }
                    },
                    AbstractFilter: {
                        get: function() {
                            return n("AstractFilter has been renamed to Filter, please use PIXI.Filter"), t.Filter
                        }
                    },
                    TransformManual: {
                        get: function() {
                            return n("TransformManual has been renamed to TransformBase, please update your pixi-spine"), t.TransformBase
                        }
                    },
                    TARGET_FPMS: {
                        get: function() {
                            return n("PIXI.TARGET_FPMS has been deprecated, please use PIXI.settings.TARGET_FPMS"), t.settings.TARGET_FPMS
                        },
                        set: function(e) {
                            n("PIXI.TARGET_FPMS has been deprecated, please use PIXI.settings.TARGET_FPMS"), t.settings.TARGET_FPMS = e
                        }
                    },
                    FILTER_RESOLUTION: {
                        get: function() {
                            return n("PIXI.FILTER_RESOLUTION has been deprecated, please use PIXI.settings.FILTER_RESOLUTION"), t.settings.FILTER_RESOLUTION
                        },
                        set: function(e) {
                            n("PIXI.FILTER_RESOLUTION has been deprecated, please use PIXI.settings.FILTER_RESOLUTION"), t.settings.FILTER_RESOLUTION = e
                        }
                    },
                    RESOLUTION: {
                        get: function() {
                            return n("PIXI.RESOLUTION has been deprecated, please use PIXI.settings.RESOLUTION"), t.settings.RESOLUTION
                        },
                        set: function(e) {
                            n("PIXI.RESOLUTION has been deprecated, please use PIXI.settings.RESOLUTION"), t.settings.RESOLUTION = e
                        }
                    },
                    MIPMAP_TEXTURES: {
                        get: function() {
                            return n("PIXI.MIPMAP_TEXTURES has been deprecated, please use PIXI.settings.MIPMAP_TEXTURES"), t.settings.MIPMAP_TEXTURES
                        },
                        set: function(e) {
                            n("PIXI.MIPMAP_TEXTURES has been deprecated, please use PIXI.settings.MIPMAP_TEXTURES"), t.settings.MIPMAP_TEXTURES = e
                        }
                    },
                    SPRITE_BATCH_SIZE: {
                        get: function() {
                            return n("PIXI.SPRITE_BATCH_SIZE has been deprecated, please use PIXI.settings.SPRITE_BATCH_SIZE"), t.settings.SPRITE_BATCH_SIZE
                        },
                        set: function(e) {
                            n("PIXI.SPRITE_BATCH_SIZE has been deprecated, please use PIXI.settings.SPRITE_BATCH_SIZE"), t.settings.SPRITE_BATCH_SIZE = e
                        }
                    },
                    SPRITE_MAX_TEXTURES: {
                        get: function() {
                            return n("PIXI.SPRITE_MAX_TEXTURES has been deprecated, please use PIXI.settings.SPRITE_MAX_TEXTURES"), t.settings.SPRITE_MAX_TEXTURES
                        },
                        set: function(e) {
                            n("PIXI.SPRITE_MAX_TEXTURES has been deprecated, please use PIXI.settings.SPRITE_MAX_TEXTURES"), t.settings.SPRITE_MAX_TEXTURES = e
                        }
                    },
                    RETINA_PREFIX: {
                        get: function() {
                            return n("PIXI.RETINA_PREFIX has been deprecated, please use PIXI.settings.RETINA_PREFIX"), t.settings.RETINA_PREFIX
                        },
                        set: function(e) {
                            n("PIXI.RETINA_PREFIX has been deprecated, please use PIXI.settings.RETINA_PREFIX"), t.settings.RETINA_PREFIX = e
                        }
                    },
                    DEFAULT_RENDER_OPTIONS: {
                        get: function() {
                            return n("PIXI.DEFAULT_RENDER_OPTIONS has been deprecated, please use PIXI.settings.DEFAULT_RENDER_OPTIONS"), t.settings.RENDER_OPTIONS
                        }
                    }
                });
                for (var h = [{
                        parent: "TRANSFORM_MODE",
                        target: "TRANSFORM_MODE"
                    }, {
                        parent: "GC_MODES",
                        target: "GC_MODE"
                    }, {
                        parent: "WRAP_MODES",
                        target: "WRAP_MODE"
                    }, {
                        parent: "SCALE_MODES",
                        target: "SCALE_MODE"
                    }, {
                        parent: "PRECISION",
                        target: "PRECISION_FRAGMENT"
                    }], l = 0; l &lt; h.length; l++) ! function(e) {
                    var r = h[e];
                    Object.defineProperty(t[r.parent], "DEFAULT", {
                        get: function() {
                            return n("PIXI." + r.parent + ".DEFAULT has been deprecated, please use PIXI.settings." + r.target), t.settings[r.target]
                        },
                        set: function(e) {
                            n("PIXI." + r.parent + ".DEFAULT has been deprecated, please use PIXI.settings." + r.target), t.settings[r.target] = e
                        }
                    })
                }(l);
                Object.defineProperties(t.settings, {
                    PRECISION: {
                        get: function() {
                            return n("PIXI.settings.PRECISION has been deprecated, please use PIXI.settings.PRECISION_FRAGMENT"), t.settings.PRECISION_FRAGMENT
                        },
                        set: function(e) {
                            n("PIXI.settings.PRECISION has been deprecated, please use PIXI.settings.PRECISION_FRAGMENT"), t.settings.PRECISION_FRAGMENT = e
                        }
                    }
                }), i.AnimatedSprite &amp;&amp; Object.defineProperties(i, {
                    MovieClip: {
                        get: function() {
                            return n("The MovieClip class has been renamed to AnimatedSprite, please use AnimatedSprite from now on."), i.AnimatedSprite
                        }
                    }
                }), i &amp;&amp; Object.defineProperties(i, {
                    TextureTransform: {
                        get: function() {
                            return n("The TextureTransform class has been renamed to TextureMatrix, please use PIXI.TextureMatrix from now on."), t.TextureMatrix
                        }
                    }
                }), t.DisplayObject.prototype.generateTexture = function(t, e, r) {
                    return n("generateTexture has moved to the renderer, please use renderer.generateTexture(displayObject)"), t.generateTexture(this, e, r)
                }, t.Graphics.prototype.generateTexture = function(t, e) {
                    return n("graphics generate texture has moved to the renderer. Or to render a graphics to a texture using canvas please use generateCanvasTexture"), this.generateCanvasTexture(t, e)
                }, t.GroupD8.isSwapWidthHeight = function(e) {
                    return n("GroupD8.isSwapWidthHeight was renamed to GroupD8.isVertical"), t.GroupD8.isVertical(e)
                }, t.RenderTexture.prototype.render = function(t, e, r, i) {
                    this.legacyRenderer.render(t, this, r, e, !i), n("RenderTexture.render is now deprecated, please use renderer.render(displayObject, renderTexture)")
                }, t.RenderTexture.prototype.getImage = function(t) {
                    return n("RenderTexture.getImage is now deprecated, please use renderer.extract.image(target)"), this.legacyRenderer.extract.image(t)
                }, t.RenderTexture.prototype.getBase64 = function(t) {
                    return n("RenderTexture.getBase64 is now deprecated, please use renderer.extract.base64(target)"), this.legacyRenderer.extract.base64(t)
                }, t.RenderTexture.prototype.getCanvas = function(t) {
                    return n("RenderTexture.getCanvas is now deprecated, please use renderer.extract.canvas(target)"), this.legacyRenderer.extract.canvas(t)
                }, t.RenderTexture.prototype.getPixels = function(t) {
                    return n("RenderTexture.getPixels is now deprecated, please use renderer.extract.pixels(target)"), this.legacyRenderer.pixels(t)
                }, t.Sprite.prototype.setTexture = function(t) {
                    this.texture = t, n("setTexture is now deprecated, please use the texture property, e.g : sprite.texture = texture;")
                }, i.BitmapText &amp;&amp; (i.BitmapText.prototype.setText = function(t) {
                    this.text = t, n("setText is now deprecated, please use the text property, e.g : myBitmapText.text = 'my text';")
                }), t.Text.prototype.setText = function(t) {
                    this.text = t, n("setText is now deprecated, please use the text property, e.g : myText.text = 'my text';")
                }, t.Text.calculateFontProperties = function(e) {
                    return n("Text.calculateFontProperties is now deprecated, please use the TextMetrics.measureFont"), t.TextMetrics.measureFont(e)
                }, Object.defineProperties(t.Text, {
                    fontPropertiesCache: {
                        get: function() {
                            return n("Text.fontPropertiesCache is deprecated"), t.TextMetrics._fonts
                        }
                    },
                    fontPropertiesCanvas: {
                        get: function() {
                            return n("Text.fontPropertiesCanvas is deprecated"), t.TextMetrics._canvas
                        }
                    },
                    fontPropertiesContext: {
                        get: function() {
                            return n("Text.fontPropertiesContext is deprecated"), t.TextMetrics._context
                        }
                    }
                }), t.Text.prototype.setStyle = function(t) {
                    this.style = t, n("setStyle is now deprecated, please use the style property, e.g : myText.style = style;")
                }, t.Text.prototype.determineFontProperties = function(e) {
                    return n("determineFontProperties is now deprecated, please use TextMetrics.measureFont method"), t.TextMetrics.measureFont(e)
                }, t.Text.getFontStyle = function(e) {
                    return n("getFontStyle is now deprecated, please use TextStyle.toFontString() instead"), (e = e || {}) instanceof t.TextStyle || (e = new t.TextStyle(e)), e.toFontString()
                }, Object.defineProperties(t.TextStyle.prototype, {
                    font: {
                        get: function() {
                            n("text style property 'font' is now deprecated, please use the 'fontFamily', 'fontSize', 'fontStyle', 'fontVariant' and 'fontWeight' properties from now on");
                            var t = "number" == typeof this._fontSize ? this._fontSize + "px" : this._fontSize;
                            return this._fontStyle + " " + this._fontVariant + " " + this._fontWeight + " " + t + " " + this._fontFamily
                        },
                        set: function(t) {
                            n("text style property 'font' is now deprecated, please use the 'fontFamily','fontSize',fontStyle','fontVariant' and 'fontWeight' properties from now on"), t.indexOf("italic") &gt; 1 ? this._fontStyle = "italic" : t.indexOf("oblique") &gt; -1 ? this._fontStyle = "oblique" : this._fontStyle = "normal", t.indexOf("small-caps") &gt; -1 ? this._fontVariant = "small-caps" : this._fontVariant = "normal";
                            var e = t.split(" "),
                                r = -1;
                            this._fontSize = 26;
                            for (var i = 0; i &lt; e.length; ++i)
                                if (e[i].match(/(px|pt|em|%)/)) {
                                    r = i, this._fontSize = e[i];
                                    break
                                }
                            this._fontWeight = "normal";
                            for (var o = 0; o &lt; r; ++o)
                                if (e[o].match(/(bold|bolder|lighter|100|200|300|400|500|600|700|800|900)/)) {
                                    this._fontWeight = e[o];
                                    break
                                }
                            if (r &gt; -1 &amp;&amp; r &lt; e.length - 1) {
                                this._fontFamily = "";
                                for (var s = r + 1; s &lt; e.length; ++s) this._fontFamily += e[s] + " ";
                                this._fontFamily = this._fontFamily.slice(0, -1)
                            } else this._fontFamily = "Arial";
                            this.styleID++
                        }
                    }
                }), t.Texture.prototype.setFrame = function(t) {
                    this.frame = t, n("setFrame is now deprecated, please use the frame property, e.g: myTexture.frame = frame;")
                }, t.Texture.addTextureToCache = function(e, r) {
                    t.Texture.addToCache(e, r), n("Texture.addTextureToCache is deprecated, please use Texture.addToCache from now on.")
                }, t.Texture.removeTextureFromCache = function(e) {
                    return n("Texture.removeTextureFromCache is deprecated, please use Texture.removeFromCache from now on. Be aware that Texture.removeFromCache does not automatically its BaseTexture from the BaseTextureCache. For that, use BaseTexture.removeFromCache"), t.BaseTexture.removeFromCache(e), t.Texture.removeFromCache(e)
                }, Object.defineProperties(o, {
                    AbstractFilter: {
                        get: function() {
                            return n("AstractFilter has been renamed to Filter, please use PIXI.Filter"), t.AbstractFilter
                        }
                    },
                    SpriteMaskFilter: {
                        get: function() {
                            return n("filters.SpriteMaskFilter is an undocumented alias, please use SpriteMaskFilter from now on."), t.SpriteMaskFilter
                        }
                    },
                    VoidFilter: {
                        get: function() {
                            return n("VoidFilter has been renamed to AlphaFilter, please use PIXI.filters.AlphaFilter"), o.AlphaFilter
                        }
                    }
                }), t.utils.uuid = function() {
                    return n("utils.uuid() is deprecated, please use utils.uid() from now on."), t.utils.uid()
                }, t.utils.canUseNewCanvasBlendModes = function() {
                    return n("utils.canUseNewCanvasBlendModes() is deprecated, please use CanvasTinter.canUseMultiply from now on"), t.CanvasTinter.canUseMultiply
                };
                var c = !0;
                if (Object.defineProperty(t.utils, "_saidHello", {
                        set: function(t) {
                            t &amp;&amp; (n("PIXI.utils._saidHello is deprecated, please use PIXI.utils.skipHello()"), this.skipHello()), c = t
                        },
                        get: function() {
                            return c
                        }
                    }), s.BasePrepare &amp;&amp; (s.BasePrepare.prototype.register = function(t, e) {
                        return n("renderer.plugins.prepare.register is now deprecated, please use renderer.plugins.prepare.registerFindHook &amp; renderer.plugins.prepare.registerUploadHook"), t &amp;&amp; this.registerFindHook(t), e &amp;&amp; this.registerUploadHook(e), this
                    }), s.canvas &amp;&amp; Object.defineProperty(s.canvas, "UPLOADS_PER_FRAME", {
                        set: function() {
                            n("PIXI.CanvasPrepare.UPLOADS_PER_FRAME has been removed. Please set renderer.plugins.prepare.limiter.maxItemsPerFrame on your renderer")
                        },
                        get: function() {
                            return n("PIXI.CanvasPrepare.UPLOADS_PER_FRAME has been removed. Please use renderer.plugins.prepare.limiter"), NaN
                        }
                    }), s.webgl &amp;&amp; Object.defineProperty(s.webgl, "UPLOADS_PER_FRAME", {
                        set: function() {
                            n("PIXI.WebGLPrepare.UPLOADS_PER_FRAME has been removed. Please set renderer.plugins.prepare.limiter.maxItemsPerFrame on your renderer")
                        },
                        get: function() {
                            return n("PIXI.WebGLPrepare.UPLOADS_PER_FRAME has been removed. Please use renderer.plugins.prepare.limiter"), NaN
                        }
                    }), a.Loader) {
                    var d = a.Resource,
                        f = a.Loader;
                    Object.defineProperties(d.prototype, {
                        isJson: {
                            get: function() {
                                return n("The isJson property is deprecated, please use `resource.type === Resource.TYPE.JSON`."), this.type === d.TYPE.JSON
                            }
                        },
                        isXml: {
                            get: function() {
                                return n("The isXml property is deprecated, please use `resource.type === Resource.TYPE.XML`."), this.type === d.TYPE.XML
                            }
                        },
                        isImage: {
                            get: function() {
                                return n("The isImage property is deprecated, please use `resource.type === Resource.TYPE.IMAGE`."), this.type === d.TYPE.IMAGE
                            }
                        },
                        isAudio: {
                            get: function() {
                                return n("The isAudio property is deprecated, please use `resource.type === Resource.TYPE.AUDIO`."), this.type === d.TYPE.AUDIO
                            }
                        },
                        isVideo: {
                            get: function() {
                                return n("The isVideo property is deprecated, please use `resource.type === Resource.TYPE.VIDEO`."), this.type === d.TYPE.VIDEO
                            }
                        }
                    }), Object.defineProperties(f.prototype, {
                        before: {
                            get: function() {
                                return n("The before() method is deprecated, please use pre()."), this.pre
                            }
                        },
                        after: {
                            get: function() {
                                return n("The after() method is deprecated, please use use()."), this.use
                            }
                        }
                    })
                }
                u.interactiveTarget &amp;&amp; Object.defineProperty(u.interactiveTarget, "defaultCursor", {
                    set: function(t) {
                        n("Property defaultCursor has been replaced with 'cursor'. "), this.cursor = t
                    },
                    get: function() {
                        return n("Property defaultCursor has been replaced with 'cursor'. "), this.cursor
                    }
                }), u.InteractionManager &amp;&amp; (Object.defineProperty(u.InteractionManager, "defaultCursorStyle", {
                    set: function(t) {
                        n("Property defaultCursorStyle has been replaced with 'cursorStyles.default'. "), this.cursorStyles.default = t
                    },
                    get: function() {
                        return n("Property defaultCursorStyle has been replaced with 'cursorStyles.default'. "), this.cursorStyles.default
                    }
                }), Object.defineProperty(u.InteractionManager, "currentCursorStyle", {
                    set: function(t) {
                        n("Property currentCursorStyle has been removed.See the currentCursorMode property, which works differently."), this.currentCursorMode = t
                    },
                    get: function() {
                        return n("Property currentCursorStyle has been removed.See the currentCursorMode property, which works differently."), this.currentCursorMode
                    }
                }))
            };
            var i = {}
        }, {}],
        132: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../../core")),
                o = new i.Rectangle,
                s = function() {
                    function t(e) {
                        n(this, t), this.renderer = e, e.extract = this
                    }
                    return t.prototype.image = function(t) {
                        var e = new Image;
                        return e.src = this.base64(t), e
                    }, t.prototype.base64 = function(t) {
                        return this.canvas(t).toDataURL()
                    }, t.prototype.canvas = function(t) {
                        var e = this.renderer,
                            r = void 0,
                            n = void 0,
                            s = void 0,
                            a = void 0;
                        t &amp;&amp; (a = t instanceof i.RenderTexture ? t : e.generateTexture(t)), a ? (r = a.baseTexture._canvasRenderTarget.context, n = a.baseTexture._canvasRenderTarget.resolution, s = a.frame) : (r = e.rootContext, (s = o).width = this.renderer.width, s.height = this.renderer.height);
                        var u = s.width * n,
                            h = s.height * n,
                            l = new i.CanvasRenderTarget(u, h),
                            c = r.getImageData(s.x * n, s.y * n, u, h);
                        return l.context.putImageData(c, 0, 0), l.canvas
                    }, t.prototype.pixels = function(t) {
                        var e = this.renderer,
                            r = void 0,
                            n = void 0,
                            s = void 0,
                            a = void 0;
                        return t &amp;&amp; (a = t instanceof i.RenderTexture ? t : e.generateTexture(t)), a ? (r = a.baseTexture._canvasRenderTarget.context, n = a.baseTexture._canvasRenderTarget.resolution, s = a.frame) : (r = e.rootContext, (s = o).width = e.width, s.height = e.height), r.getImageData(0, 0, s.width * n, s.height * n).data
                    }, t.prototype.destroy = function() {
                        this.renderer.extract = null, this.renderer = null
                    }, t
                }();
            r.default = s, i.CanvasRenderer.registerPlugin("extract", s)
        }, {
            "../../core": 65
        }],
        133: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }
            r.__esModule = !0;
            var i = t("./webgl/WebGLExtract");
            Object.defineProperty(r, "webgl", {
                enumerable: !0,
                get: function() {
                    return n(i).default
                }
            });
            var o = t("./canvas/CanvasExtract");
            Object.defineProperty(r, "canvas", {
                enumerable: !0,
                get: function() {
                    return n(o).default
                }
            })
        }, {
            "./canvas/CanvasExtract": 132,
            "./webgl/WebGLExtract": 134
        }],
        134: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../../core")),
                o = new i.Rectangle,
                s = function() {
                    function t(e) {
                        n(this, t), this.renderer = e, e.extract = this
                    }
                    return t.prototype.image = function(t) {
                        var e = new Image;
                        return e.src = this.base64(t), e
                    }, t.prototype.base64 = function(t) {
                        return this.canvas(t).toDataURL()
                    }, t.prototype.canvas = function(t) {
                        var e = this.renderer,
                            r = void 0,
                            n = void 0,
                            s = void 0,
                            a = !1,
                            u = void 0,
                            h = !1;
                        t &amp;&amp; (t instanceof i.RenderTexture ? u = t : (u = this.renderer.generateTexture(t), h = !0)), u ? (n = (r = u.baseTexture._glRenderTargets[this.renderer.CONTEXT_UID]).resolution, s = u.frame, a = !1) : (n = (r = this.renderer.rootRenderTarget).resolution, a = !0, (s = o).width = r.size.width, s.height = r.size.height);
                        var l = s.width * n,
                            c = s.height * n,
                            d = new i.CanvasRenderTarget(l, c);
                        if (r) {
                            e.bindRenderTarget(r);
                            var f = new Uint8Array(4 * l * c),
                                p = e.gl;
                            p.readPixels(s.x * n, s.y * n, l, c, p.RGBA, p.UNSIGNED_BYTE, f);
                            var v = d.context.getImageData(0, 0, l, c);
                            v.data.set(f), d.context.putImageData(v, 0, 0), a &amp;&amp; (d.context.scale(1, -1), d.context.drawImage(d.canvas, 0, -c))
                        }
                        return h &amp;&amp; u.destroy(!0), d.canvas
                    }, t.prototype.pixels = function(t) {
                        var e = this.renderer,
                            r = void 0,
                            n = void 0,
                            s = void 0,
                            a = void 0,
                            u = !1;
                        t &amp;&amp; (t instanceof i.RenderTexture ? a = t : (a = this.renderer.generateTexture(t), u = !0)), a ? (n = (r = a.baseTexture._glRenderTargets[this.renderer.CONTEXT_UID]).resolution, s = a.frame) : (n = (r = this.renderer.rootRenderTarget).resolution, (s = o).width = r.size.width, s.height = r.size.height);
                        var h = s.width * n,
                            l = s.height * n,
                            c = new Uint8Array(4 * h * l);
                        if (r) {
                            e.bindRenderTarget(r);
                            var d = e.gl;
                            d.readPixels(s.x * n, s.y * n, h, l, d.RGBA, d.UNSIGNED_BYTE, c)
                        }
                        return u &amp;&amp; a.destroy(!0), c
                    }, t.prototype.destroy = function() {
                        this.renderer.extract = null, this.renderer = null
                    }, t
                }();
            r.default = s, i.WebGLRenderer.registerPlugin("extract", s)
        }, {
            "../../core": 65
        }],
        135: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function i(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function o(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var s = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                a = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../core")),
                u = function(t) {
                    function e(r, o) {
                        n(this, e);
                        var s = i(this, t.call(this, r[0] instanceof a.Texture ? r[0] : r[0].texture));
                        return s._textures = null, s._durations = null, s.textures = r, s._autoUpdate = !1 !== o, s.animationSpeed = 1, s.loop = !0, s.onComplete = null, s.onFrameChange = null, s.onLoop = null, s._currentTime = 0, s.playing = !1, s
                    }
                    return o(e, t), e.prototype.stop = function() {
                        this.playing &amp;&amp; (this.playing = !1, this._autoUpdate &amp;&amp; a.ticker.shared.remove(this.update, this))
                    }, e.prototype.play = function() {
                        this.playing || (this.playing = !0, this._autoUpdate &amp;&amp; a.ticker.shared.add(this.update, this, a.UPDATE_PRIORITY.HIGH))
                    }, e.prototype.gotoAndStop = function(t) {
                        this.stop();
                        var e = this.currentFrame;
                        this._currentTime = t, e !== this.currentFrame &amp;&amp; this.updateTexture()
                    }, e.prototype.gotoAndPlay = function(t) {
                        var e = this.currentFrame;
                        this._currentTime = t, e !== this.currentFrame &amp;&amp; this.updateTexture(), this.play()
                    }, e.prototype.update = function(t) {
                        var e = this.animationSpeed * t,
                            r = this.currentFrame;
                        if (null !== this._durations) {
                            var n = this._currentTime % 1 * this._durations[this.currentFrame];
                            for (n += e / 60 * 1e3; n &lt; 0;) this._currentTime--, n += this._durations[this.currentFrame];
                            var i = Math.sign(this.animationSpeed * t);
                            for (this._currentTime = Math.floor(this._currentTime); n &gt;= this._durations[this.currentFrame];) n -= this._durations[this.currentFrame] * i, this._currentTime += i;
                            this._currentTime += n / this._durations[this.currentFrame]
                        } else this._currentTime += e;
                        this._currentTime &lt; 0 &amp;&amp; !this.loop ? (this.gotoAndStop(0), this.onComplete &amp;&amp; this.onComplete()) : this._currentTime &gt;= this._textures.length &amp;&amp; !this.loop ? (this.gotoAndStop(this._textures.length - 1), this.onComplete &amp;&amp; this.onComplete()) : r !== this.currentFrame &amp;&amp; (this.loop &amp;&amp; this.onLoop &amp;&amp; (this.animationSpeed &gt; 0 &amp;&amp; this.currentFrame &lt; r ? this.onLoop() : this.animationSpeed &lt; 0 &amp;&amp; this.currentFrame &gt; r &amp;&amp; this.onLoop()), this.updateTexture())
                    }, e.prototype.updateTexture = function() {
                        this._texture = this._textures[this.currentFrame], this._textureID = -1, this.cachedTint = 16777215, this.onFrameChange &amp;&amp; this.onFrameChange(this.currentFrame)
                    }, e.prototype.destroy = function(e) {
                        this.stop(), t.prototype.destroy.call(this, e)
                    }, e.fromFrames = function(t) {
                        for (var r = [], n = 0; n &lt; t.length; ++n) r.push(a.Texture.fromFrame(t[n]));
                        return new e(r)
                    }, e.fromImages = function(t) {
                        for (var r = [], n = 0; n &lt; t.length; ++n) r.push(a.Texture.fromImage(t[n]));
                        return new e(r)
                    }, s(e, [{
                        key: "totalFrames",
                        get: function() {
                            return this._textures.length
                        }
                    }, {
                        key: "textures",
                        get: function() {
                            return this._textures
                        },
                        set: function(t) {
                            if (t[0] instanceof a.Texture) this._textures = t, this._durations = null;
                            else {
                                this._textures = [], this._durations = [];
                                for (var e = 0; e &lt; t.length; e++) this._textures.push(t[e].texture), this._durations.push(t[e].time)
                            }
                            this.gotoAndStop(0), this.updateTexture()
                        }
                    }, {
                        key: "currentFrame",
                        get: function() {
                            var t = Math.floor(this._currentTime) % this._textures.length;
                            return t &lt; 0 &amp;&amp; (t += this._textures.length), t
                        }
                    }]), e
                }(a.Sprite);
            r.default = u
        }, {
            "../core": 65
        }],
        136: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function o(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function s(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var a = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                u = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../core")),
                h = n(t("../core/math/ObservablePoint")),
                l = t("../core/utils"),
                c = n(t("../core/settings")),
                d = function(t) {
                    function e(r) {
                        var n = arguments.length &gt; 1 &amp;&amp; void 0 !== arguments[1] ? arguments[1] : {};
                        i(this, e);
                        var s = o(this, t.call(this));
                        return s._textWidth = 0, s._textHeight = 0, s._glyphs = [], s._font = {
                            tint: void 0 !== n.tint ? n.tint : 16777215,
                            align: n.align || "left",
                            name: null,
                            size: 0
                        }, s.font = n.font, s._text = r, s._maxWidth = 0, s._maxLineHeight = 0, s._letterSpacing = 0, s._anchor = new h.default(function() {
                            s.dirty = !0
                        }, s, 0, 0), s.dirty = !1, s.updateText(), s
                    }
                    return s(e, t), e.prototype.updateText = function() {
                        for (var t = e.fonts[this._font.name], r = this._font.size / t.size, n = new u.Point, i = [], o = [], s = this.text.replace(/(?:\r\n|\r)/g, "\n"), a = s.length, h = this._maxWidth * t.size / this._font.size, l = null, c = 0, d = 0, f = 0, p = -1, v = 0, g = 0, y = 0, m = 0; m &lt; a; m++) {
                            var _ = s.charCodeAt(m),
                                b = s.charAt(m);
                            if (/(?:\s)/.test(b) &amp;&amp; (p = m, v = c), "\r" !== b &amp;&amp; "\n" !== b) {
                                var x = t.chars[_];
                                x &amp;&amp; (l &amp;&amp; x.kerning[l] &amp;&amp; (n.x += x.kerning[l]), i.push({
                                    texture: x.texture,
                                    line: f,
                                    charCode: _,
                                    position: new u.Point(n.x + x.xOffset + this._letterSpacing / 2, n.y + x.yOffset)
                                }), n.x += x.xAdvance + this._letterSpacing, c = n.x, y = Math.max(y, x.yOffset + x.texture.height), l = _, -1 !== p &amp;&amp; h &gt; 0 &amp;&amp; n.x &gt; h &amp;&amp; (++g, u.utils.removeItems(i, 1 + p - g, 1 + m - p), m = p, p = -1, o.push(v), d = Math.max(d, v), f++, n.x = 0, n.y += t.lineHeight, l = null))
                            } else o.push(c), d = Math.max(d, c), ++f, ++g, n.x = 0, n.y += t.lineHeight, l = null
                        }
                        var T = s.charAt(s.length - 1);
                        "\r" !== T &amp;&amp; "\n" !== T &amp;&amp; (/(?:\s)/.test(T) &amp;&amp; (c = v), o.push(c), d = Math.max(d, c));
                        for (var w = [], E = 0; E &lt;= f; E++) {
                            var S = 0;
                            "right" === this._font.align ? S = d - o[E] : "center" === this._font.align &amp;&amp; (S = (d - o[E]) / 2), w.push(S)
                        }
                        for (var O = i.length, M = this.tint, P = 0; P &lt; O; P++) {
                            var C = this._glyphs[P];
                            C ? C.texture = i[P].texture : (C = new u.Sprite(i[P].texture), this._glyphs.push(C)), C.position.x = (i[P].position.x + w[i[P].line]) * r, C.position.y = i[P].position.y * r, C.scale.x = C.scale.y = r, C.tint = M, C.parent || this.addChild(C)
                        }
                        for (var R = O; R &lt; this._glyphs.length; ++R) this.removeChild(this._glyphs[R]);
                        if (this._textWidth = d * r, this._textHeight = (n.y + t.lineHeight) * r, 0 !== this.anchor.x || 0 !== this.anchor.y)
                            for (var A = 0; A &lt; O; A++) this._glyphs[A].x -= this._textWidth * this.anchor.x, this._glyphs[A].y -= this._textHeight * this.anchor.y;
                        this._maxLineHeight = y * r
                    }, e.prototype.updateTransform = function() {
                        this.validate(), this.containerUpdateTransform()
                    }, e.prototype.getLocalBounds = function() {
                        return this.validate(), t.prototype.getLocalBounds.call(this)
                    }, e.prototype.validate = function() {
                        this.dirty &amp;&amp; (this.updateText(), this.dirty = !1)
                    }, e.registerFont = function(t, r) {
                        var n = {},
                            i = t.getElementsByTagName("info")[0],
                            o = t.getElementsByTagName("common")[0],
                            s = t.getElementsByTagName("page"),
                            a = (0, l.getResolutionOfUrl)(s[0].getAttribute("file"), c.default.RESOLUTION),
                            h = {};
                        n.font = i.getAttribute("face"), n.size = parseInt(i.getAttribute("size"), 10), n.lineHeight = parseInt(o.getAttribute("lineHeight"), 10) / a, n.chars = {}, r instanceof u.Texture &amp;&amp; (r = [r]);
                        for (var d = 0; d &lt; s.length; d++) {
                            var f = s[d].getAttribute("id"),
                                p = s[d].getAttribute("file");
                            h[f] = r instanceof Array ? r[d] : r[p]
                        }
                        for (var v = t.getElementsByTagName("char"), g = 0; g &lt; v.length; g++) {
                            var y = v[g],
                                m = parseInt(y.getAttribute("id"), 10),
                                _ = y.getAttribute("page") || 0,
                                b = new u.Rectangle(parseInt(y.getAttribute("x"), 10) / a + h[_].frame.x / a, parseInt(y.getAttribute("y"), 10) / a + h[_].frame.y / a, parseInt(y.getAttribute("width"), 10) / a, parseInt(y.getAttribute("height"), 10) / a);
                            n.chars[m] = {
                                xOffset: parseInt(y.getAttribute("xoffset"), 10) / a,
                                yOffset: parseInt(y.getAttribute("yoffset"), 10) / a,
                                xAdvance: parseInt(y.getAttribute("xadvance"), 10) / a,
                                kerning: {},
                                texture: new u.Texture(h[_].baseTexture, b),
                                page: _
                            }
                        }
                        for (var x = t.getElementsByTagName("kerning"), T = 0; T &lt; x.length; T++) {
                            var w = x[T],
                                E = parseInt(w.getAttribute("first"), 10) / a,
                                S = parseInt(w.getAttribute("second"), 10) / a,
                                O = parseInt(w.getAttribute("amount"), 10) / a;
                            n.chars[S] &amp;&amp; (n.chars[S].kerning[E] = O)
                        }
                        return e.fonts[n.font] = n, n
                    }, a(e, [{
                        key: "tint",
                        get: function() {
                            return this._font.tint
                        },
                        set: function(t) {
                            this._font.tint = "number" == typeof t &amp;&amp; t &gt;= 0 ? t : 16777215, this.dirty = !0
                        }
                    }, {
                        key: "align",
                        get: function() {
                            return this._font.align
                        },
                        set: function(t) {
                            this._font.align = t || "left", this.dirty = !0
                        }
                    }, {
                        key: "anchor",
                        get: function() {
                            return this._anchor
                        },
                        set: function(t) {
                            "number" == typeof t ? this._anchor.set(t) : this._anchor.copy(t)
                        }
                    }, {
                        key: "font",
                        get: function() {
                            return this._font
                        },
                        set: function(t) {
                            t &amp;&amp; ("string" == typeof t ? (t = t.split(" "), this._font.name = 1 === t.length ? t[0] : t.slice(1).join(" "), this._font.size = t.length &gt;= 2 ? parseInt(t[0], 10) : e.fonts[this._font.name].size) : (this._font.name = t.name, this._font.size = "number" == typeof t.size ? t.size : parseInt(t.size, 10)), this.dirty = !0)
                        }
                    }, {
                        key: "text",
                        get: function() {
                            return this._text
                        },
                        set: function(t) {
                            t = t.toString() || " ", this._text !== t &amp;&amp; (this._text = t, this.dirty = !0)
                        }
                    }, {
                        key: "maxWidth",
                        get: function() {
                            return this._maxWidth
                        },
                        set: function(t) {
                            this._maxWidth !== t &amp;&amp; (this._maxWidth = t, this.dirty = !0)
                        }
                    }, {
                        key: "maxLineHeight",
                        get: function() {
                            return this.validate(), this._maxLineHeight
                        }
                    }, {
                        key: "textWidth",
                        get: function() {
                            return this.validate(), this._textWidth
                        }
                    }, {
                        key: "letterSpacing",
                        get: function() {
                            return this._letterSpacing
                        },
                        set: function(t) {
                            this._letterSpacing !== t &amp;&amp; (this._letterSpacing = t, this.dirty = !0)
                        }
                    }, {
                        key: "textHeight",
                        get: function() {
                            return this.validate(), this._textHeight
                        }
                    }]), e
                }(u.Container);
            r.default = d, d.fonts = {}
        }, {
            "../core": 65,
            "../core/math/ObservablePoint": 68,
            "../core/settings": 101,
            "../core/utils": 125
        }],
        137: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function i(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function o(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var s = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                a = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../core")),
                u = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("../core/sprites/canvas/CanvasTinter")),
                h = new a.Point,
                l = function(t) {
                    function e(r) {
                        var o = arguments.length &gt; 1 &amp;&amp; void 0 !== arguments[1] ? arguments[1] : 100,
                            s = arguments.length &gt; 2 &amp;&amp; void 0 !== arguments[2] ? arguments[2] : 100;
                        n(this, e);
                        var u = i(this, t.call(this, r));
                        return u.tileTransform = new a.TransformStatic, u._width = o, u._height = s, u._canvasPattern = null, u.uvTransform = r.transform || new a.TextureMatrix(r), u.pluginName = "tilingSprite", u.uvRespectAnchor = !1, u
                    }
                    return o(e, t), e.prototype._onTextureUpdate = function() {
                        this.uvTransform &amp;&amp; (this.uvTransform.texture = this._texture), this.cachedTint = 16777215
                    }, e.prototype._renderWebGL = function(t) {
                        var e = this._texture;
                        e &amp;&amp; e.valid &amp;&amp; (this.tileTransform.updateLocalTransform(), this.uvTransform.update(), t.setObjectRenderer(t.plugins[this.pluginName]), t.plugins[this.pluginName].render(this))
                    }, e.prototype._renderCanvas = function(t) {
                        var e = this._texture;
                        if (e.baseTexture.hasLoaded) {
                            var r = t.context,
                                n = this.worldTransform,
                                i = t.resolution,
                                o = e.baseTexture,
                                s = o.resolution,
                                h = this.tilePosition.x / this.tileScale.x % e._frame.width * s,
                                l = this.tilePosition.y / this.tileScale.y % e._frame.height * s;
                            if (this._textureID !== this._texture._updateID || this.cachedTint !== this.tint) {
                                this._textureID = this._texture._updateID;
                                var c = new a.CanvasRenderTarget(e._frame.width, e._frame.height, s);
                                16777215 !== this.tint ? (this.tintedTexture = u.default.getTintedTexture(this, this.tint), c.context.drawImage(this.tintedTexture, 0, 0)) : c.context.drawImage(o.source, -e._frame.x * s, -e._frame.y * s), this.cachedTint = this.tint, this._canvasPattern = c.context.createPattern(c.canvas, "repeat")
                            }
                            r.globalAlpha = this.worldAlpha, r.setTransform(n.a * i, n.b * i, n.c * i, n.d * i, n.tx * i, n.ty * i), t.setBlendMode(this.blendMode), r.fillStyle = this._canvasPattern, r.scale(this.tileScale.x / s, this.tileScale.y / s);
                            var d = this.anchor.x * -this._width,
                                f = this.anchor.y * -this._height;
                            this.uvRespectAnchor ? (r.translate(h, l), r.fillRect(-h + d, -l + f, this._width / this.tileScale.x * s, this._height / this.tileScale.y * s)) : (r.translate(h + d, l + f), r.fillRect(-h, -l, this._width / this.tileScale.x * s, this._height / this.tileScale.y * s))
                        }
                    }, e.prototype._calculateBounds = function() {
                        var t = this._width * -this._anchor._x,
                            e = this._height * -this._anchor._y,
                            r = this._width * (1 - this._anchor._x),
                            n = this._height * (1 - this._anchor._y);
                        this._bounds.addFrame(this.transform, t, e, r, n)
                    }, e.prototype.getLocalBounds = function(e) {
                        return 0 === this.children.length ? (this._bounds.minX = this._width * -this._anchor._x, this._bounds.minY = this._height * -this._anchor._y, this._bounds.maxX = this._width * (1 - this._anchor._x), this._bounds.maxY = this._height * (1 - this._anchor._y), e || (this._localBoundsRect || (this._localBoundsRect = new a.Rectangle), e = this._localBoundsRect), this._bounds.getRectangle(e)) : t.prototype.getLocalBounds.call(this, e)
                    }, e.prototype.containsPoint = function(t) {
                        this.worldTransform.applyInverse(t, h);
                        var e = this._width,
                            r = this._height,
                            n = -e * this.anchor._x;
                        if (h.x &gt;= n &amp;&amp; h.x &lt; n + e) {
                            var i = -r * this.anchor._y;
                            if (h.y &gt;= i &amp;&amp; h.y &lt; i + r) return !0
                        }
                        return !1
                    }, e.prototype.destroy = function(e) {
                        t.prototype.destroy.call(this, e), this.tileTransform = null, this.uvTransform = null
                    }, e.from = function(t, r, n) {
                        return new e(a.Texture.from(t), r, n)
                    }, e.fromFrame = function(t, r, n) {
                        var i = a.utils.TextureCache[t];
                        if (!i) throw new Error('The frameId "' + t + '" does not exist in the texture cache ' + this);
                        return new e(i, r, n)
                    }, e.fromImage = function(t, r, n, i, o) {
                        return new e(a.Texture.fromImage(t, i, o), r, n)
                    }, s(e, [{
                        key: "clampMargin",
                        get: function() {
                            return this.uvTransform.clampMargin
                        },
                        set: function(t) {
                            this.uvTransform.clampMargin = t, this.uvTransform.update(!0)
                        }
                    }, {
                        key: "tileScale",
                        get: function() {
                            return this.tileTransform.scale
                        },
                        set: function(t) {
                            this.tileTransform.scale.copy(t)
                        }
                    }, {
                        key: "tilePosition",
                        get: function() {
                            return this.tileTransform.position
                        },
                        set: function(t) {
                            this.tileTransform.position.copy(t)
                        }
                    }, {
                        key: "width",
                        get: function() {
                            return this._width
                        },
                        set: function(t) {
                            this._width = t
                        }
                    }, {
                        key: "height",
                        get: function() {
                            return this._height
                        },
                        set: function(t) {
                            this._height = t
                        }
                    }]), e
                }(a.Sprite);
            r.default = l
        }, {
            "../core": 65,
            "../core/sprites/canvas/CanvasTinter": 104
        }],
        138: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            var o = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../core")),
                s = n(t("../core/textures/Texture")),
                a = n(t("../core/textures/BaseTexture")),
                u = t("../core/utils"),
                h = o.DisplayObject,
                l = new o.Matrix;
            h.prototype._cacheAsBitmap = !1, h.prototype._cacheData = !1;
            var c = function t() {
                i(this, t), this.textureCacheId = null, this.originalRenderWebGL = null, this.originalRenderCanvas = null, this.originalCalculateBounds = null, this.originalGetLocalBounds = null, this.originalUpdateTransform = null, this.originalHitTest = null, this.originalDestroy = null, this.originalMask = null, this.originalFilterArea = null, this.sprite = null
            };
            Object.defineProperties(h.prototype, {
                cacheAsBitmap: {
                    get: function() {
                        return this._cacheAsBitmap
                    },
                    set: function(t) {
                        if (this._cacheAsBitmap !== t) {
                            this._cacheAsBitmap = t;
                            var e = void 0;
                            t ? (this._cacheData || (this._cacheData = new c), (e = this._cacheData).originalRenderWebGL = this.renderWebGL, e.originalRenderCanvas = this.renderCanvas, e.originalUpdateTransform = this.updateTransform, e.originalCalculateBounds = this._calculateBounds, e.originalGetLocalBounds = this.getLocalBounds, e.originalDestroy = this.destroy, e.originalContainsPoint = this.containsPoint, e.originalMask = this._mask, e.originalFilterArea = this.filterArea, this.renderWebGL = this._renderCachedWebGL, this.renderCanvas = this._renderCachedCanvas, this.destroy = this._cacheAsBitmapDestroy) : ((e = this._cacheData).sprite &amp;&amp; this._destroyCachedDisplayObject(), this.renderWebGL = e.originalRenderWebGL, this.renderCanvas = e.originalRenderCanvas, this._calculateBounds = e.originalCalculateBounds, this.getLocalBounds = e.originalGetLocalBounds, this.destroy = e.originalDestroy, this.updateTransform = e.originalUpdateTransform, this.containsPoint = e.originalContainsPoint, this._mask = e.originalMask, this.filterArea = e.originalFilterArea)
                        }
                    }
                }
            }), h.prototype._renderCachedWebGL = function(t) {
                !this.visible || this.worldAlpha &lt;= 0 || !this.renderable || (this._initCachedDisplayObject(t), this._cacheData.sprite._transformID = -1, this._cacheData.sprite.worldAlpha = this.worldAlpha, this._cacheData.sprite._renderWebGL(t))
            }, h.prototype._initCachedDisplayObject = function(t) {
                if (!this._cacheData || !this._cacheData.sprite) {
                    var e = this.alpha;
                    this.alpha = 1, t.currentRenderer.flush();
                    var r = this.getLocalBounds().clone();
                    if (this._filters) {
                        var n = this._filters[0].padding;
                        r.pad(n)
                    }
                    var i = t._activeRenderTarget,
                        h = t.filterManager.filterStack,
                        c = o.RenderTexture.create(0 | r.width, 0 | r.height),
                        d = "cacheAsBitmap_" + (0, u.uid)();
                    this._cacheData.textureCacheId = d, a.default.addToCache(c.baseTexture, d), s.default.addToCache(c, d);
                    var f = l;
                    f.tx = -r.x, f.ty = -r.y, this.transform.worldTransform.identity(), this.renderWebGL = this._cacheData.originalRenderWebGL, t.render(this, c, !0, f, !0), t.bindRenderTarget(i), t.filterManager.filterStack = h, this.renderWebGL = this._renderCachedWebGL, this.updateTransform = this.displayObjectUpdateTransform, this._mask = null, this.filterArea = null;
                    var p = new o.Sprite(c);
                    p.transform.worldTransform = this.transform.worldTransform, p.anchor.x = -r.x / r.width, p.anchor.y = -r.y / r.height, p.alpha = e, p._bounds = this._bounds, this._calculateBounds = this._calculateCachedBounds, this.getLocalBounds = this._getCachedLocalBounds, this._cacheData.sprite = p, this.transform._parentID = -1, this.parent ? this.updateTransform() : (this.parent = t._tempDisplayObjectParent, this.updateTransform(), this.parent = null), this.containsPoint = p.containsPoint.bind(p)
                }
            }, h.prototype._renderCachedCanvas = function(t) {
                !this.visible || this.worldAlpha &lt;= 0 || !this.renderable || (this._initCachedDisplayObjectCanvas(t), this._cacheData.sprite.worldAlpha = this.worldAlpha, this._cacheData.sprite.renderCanvas(t))
            }, h.prototype._initCachedDisplayObjectCanvas = function(t) {
                if (!this._cacheData || !this._cacheData.sprite) {
                    var e = this.getLocalBounds(),
                        r = this.alpha;
                    this.alpha = 1;
                    var n = t.context,
                        i = o.RenderTexture.create(0 | e.width, 0 | e.height),
                        h = "cacheAsBitmap_" + (0, u.uid)();
                    this._cacheData.textureCacheId = h, a.default.addToCache(i.baseTexture, h), s.default.addToCache(i, h);
                    var c = l;
                    this.transform.localTransform.copy(c), c.invert(), c.tx -= e.x, c.ty -= e.y, this.renderCanvas = this._cacheData.originalRenderCanvas, t.render(this, i, !0, c, !1), t.context = n, this.renderCanvas = this._renderCachedCanvas, this._calculateBounds = this._calculateCachedBounds, this._mask = null, this.filterArea = null;
                    var d = new o.Sprite(i);
                    d.transform.worldTransform = this.transform.worldTransform, d.anchor.x = -e.x / e.width, d.anchor.y = -e.y / e.height, d._bounds = this._bounds, d.alpha = r, this.parent ? this.updateTransform() : (this.parent = t._tempDisplayObjectParent, this.updateTransform(), this.parent = null), this.updateTransform = this.displayObjectUpdateTransform, this._cacheData.sprite = d, this.containsPoint = d.containsPoint.bind(d)
                }
            }, h.prototype._calculateCachedBounds = function() {
                this._cacheData.sprite._calculateBounds()
            }, h.prototype._getCachedLocalBounds = function() {
                return this._cacheData.sprite.getLocalBounds()
            }, h.prototype._destroyCachedDisplayObject = function() {
                this._cacheData.sprite._texture.destroy(!0), this._cacheData.sprite = null, a.default.removeFromCache(this._cacheData.textureCacheId), s.default.removeFromCache(this._cacheData.textureCacheId), this._cacheData.textureCacheId = null
            }, h.prototype._cacheAsBitmapDestroy = function(t) {
                this.cacheAsBitmap = !1, this.destroy(t)
            }
        }, {
            "../core": 65,
            "../core/textures/BaseTexture": 112,
            "../core/textures/Texture": 115,
            "../core/utils": 125
        }],
        139: [function(t, e, r) {
            "use strict";
            var n = function(t) {
                if (t &amp;&amp; t.__esModule) return t;
                var e = {};
                if (null != t)
                    for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                return e.default = t, e
            }(t("../core"));
            n.DisplayObject.prototype.name = null, n.Container.prototype.getChildByName = function(t) {
                for (var e = 0; e &lt; this.children.length; e++)
                    if (this.children[e].name === t) return this.children[e];
                return null
            }
        }, {
            "../core": 65
        }],
        140: [function(t, e, r) {
            "use strict";
            var n = function(t) {
                if (t &amp;&amp; t.__esModule) return t;
                var e = {};
                if (null != t)
                    for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                return e.default = t, e
            }(t("../core"));
            n.DisplayObject.prototype.getGlobalPosition = function() {
                var t = arguments.length &gt; 0 &amp;&amp; void 0 !== arguments[0] ? arguments[0] : new n.Point,
                    e = arguments.length &gt; 1 &amp;&amp; void 0 !== arguments[1] &amp;&amp; arguments[1];
                return this.parent ? this.parent.toGlobal(this.position, t, e) : (t.x = this.position.x, t.y = this.position.y), t
            }
        }, {
            "../core": 65
        }],
        141: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }
            r.__esModule = !0, r.BitmapText = r.TilingSpriteRenderer = r.TilingSprite = r.AnimatedSprite = void 0;
            var i = t("./AnimatedSprite");
            Object.defineProperty(r, "AnimatedSprite", {
                enumerable: !0,
                get: function() {
                    return n(i).default
                }
            });
            var o = t("./TilingSprite");
            Object.defineProperty(r, "TilingSprite", {
                enumerable: !0,
                get: function() {
                    return n(o).default
                }
            });
            var s = t("./webgl/TilingSpriteRenderer");
            Object.defineProperty(r, "TilingSpriteRenderer", {
                enumerable: !0,
                get: function() {
                    return n(s).default
                }
            });
            var a = t("./BitmapText");
            Object.defineProperty(r, "BitmapText", {
                enumerable: !0,
                get: function() {
                    return n(a).default
                }
            }), t("./cacheAsBitmap"), t("./getChildByName"), t("./getGlobalPosition")
        }, {
            "./AnimatedSprite": 135,
            "./BitmapText": 136,
            "./TilingSprite": 137,
            "./cacheAsBitmap": 138,
            "./getChildByName": 139,
            "./getGlobalPosition": 140,
            "./webgl/TilingSpriteRenderer": 142
        }],
        142: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function i(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function o(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var s = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../../core")),
                a = t("../../core/const"),
                u = (t("path"), new s.Matrix),
                h = function(t) {
                    function e(r) {
                        n(this, e);
                        var o = i(this, t.call(this, r));
                        return o.shader = null, o.simpleShader = null, o.quad = null, o
                    }
                    return o(e, t), e.prototype.onContextChange = function() {
                        var t = this.renderer.gl;
                        this.shader = new s.Shader(t, "attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\nuniform mat3 translationMatrix;\nuniform mat3 uTransform;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n    gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n\n    vTextureCoord = (uTransform * vec3(aTextureCoord, 1.0)).xy;\n}\n", "varying vec2 vTextureCoord;\n\nuniform sampler2D uSampler;\nuniform vec4 uColor;\nuniform mat3 uMapCoord;\nuniform vec4 uClampFrame;\nuniform vec2 uClampOffset;\n\nvoid main(void)\n{\n    vec2 coord = mod(vTextureCoord - uClampOffset, vec2(1.0, 1.0)) + uClampOffset;\n    coord = (uMapCoord * vec3(coord, 1.0)).xy;\n    coord = clamp(coord, uClampFrame.xy, uClampFrame.zw);\n\n    vec4 sample = texture2D(uSampler, coord);\n    gl_FragColor = sample * uColor;\n}\n"), this.simpleShader = new s.Shader(t, "attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\nuniform mat3 translationMatrix;\nuniform mat3 uTransform;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n    gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n\n    vTextureCoord = (uTransform * vec3(aTextureCoord, 1.0)).xy;\n}\n", "varying vec2 vTextureCoord;\n\nuniform sampler2D uSampler;\nuniform vec4 uColor;\n\nvoid main(void)\n{\n    vec4 sample = texture2D(uSampler, vTextureCoord);\n    gl_FragColor = sample * uColor;\n}\n"), this.renderer.bindVao(null), this.quad = new s.Quad(t, this.renderer.state.attribState), this.quad.initVao(this.shader)
                    }, e.prototype.render = function(t) {
                        var e = this.renderer,
                            r = this.quad;
                        e.bindVao(r.vao);
                        var n = r.vertices;
                        n[0] = n[6] = t._width * -t.anchor.x, n[1] = n[3] = t._height * -t.anchor.y, n[2] = n[4] = t._width * (1 - t.anchor.x), n[5] = n[7] = t._height * (1 - t.anchor.y), t.uvRespectAnchor &amp;&amp; ((n = r.uvs)[0] = n[6] = -t.anchor.x, n[1] = n[3] = -t.anchor.y, n[2] = n[4] = 1 - t.anchor.x, n[5] = n[7] = 1 - t.anchor.y), r.upload();
                        var i = t._texture,
                            o = i.baseTexture,
                            h = t.tileTransform.localTransform,
                            l = t.uvTransform,
                            c = o.isPowerOfTwo &amp;&amp; i.frame.width === o.width &amp;&amp; i.frame.height === o.height;
                        c &amp;&amp; (o._glTextures[e.CONTEXT_UID] ? c = o.wrapMode !== a.WRAP_MODES.CLAMP : o.wrapMode === a.WRAP_MODES.CLAMP &amp;&amp; (o.wrapMode = a.WRAP_MODES.REPEAT));
                        var d = c ? this.simpleShader : this.shader;
                        e.bindShader(d);
                        var f = i.width,
                            p = i.height,
                            v = t._width,
                            g = t._height;
                        u.set(h.a * f / v, h.b * f / g, h.c * p / v, h.d * p / g, h.tx / v, h.ty / g), u.invert(), c ? u.prepend(l.mapCoord) : (d.uniforms.uMapCoord = l.mapCoord.toArray(!0), d.uniforms.uClampFrame = l.uClampFrame, d.uniforms.uClampOffset = l.uClampOffset), d.uniforms.uTransform = u.toArray(!0), d.uniforms.uColor = s.utils.premultiplyTintToRgba(t.tint, t.worldAlpha, d.uniforms.uColor, o.premultipliedAlpha), d.uniforms.translationMatrix = t.transform.worldTransform.toArray(!0), d.uniforms.uSampler = e.bindTexture(i), e.setBlendMode(s.utils.correctBlendMode(t.blendMode, o.premultipliedAlpha)), r.vao.draw(this.renderer.gl.TRIANGLES, 6, 0)
                    }, e
                }(s.ObjectRenderer);
            r.default = h, s.WebGLRenderer.registerPlugin("tilingSprite", h)
        }, {
            "../../core": 65,
            "../../core/const": 46,
            path: 8
        }],
        143: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function i(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function o(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var s = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                a = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../../core")),
                u = (t("path"), function(t) {
                    function e() {
                        var r = arguments.length &gt; 0 &amp;&amp; void 0 !== arguments[0] ? arguments[0] : 1;
                        n(this, e);
                        var o = i(this, t.call(this, "attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n    gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n    vTextureCoord = aTextureCoord;\n}", "varying vec2 vTextureCoord;\n\nuniform sampler2D uSampler;\nuniform float uAlpha;\n\nvoid main(void)\n{\n   gl_FragColor = texture2D(uSampler, vTextureCoord) * uAlpha;\n}\n"));
                        return o.alpha = r, o.glShaderKey = "alpha", o
                    }
                    return o(e, t), s(e, [{
                        key: "alpha",
                        get: function() {
                            return this.uniforms.uAlpha
                        },
                        set: function(t) {
                            this.uniforms.uAlpha = t
                        }
                    }]), e
                }(a.Filter));
            r.default = u
        }, {
            "../../core": 65,
            path: 8
        }],
        144: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function o(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function s(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var a = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                u = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../../core")),
                h = n(t("./BlurXFilter")),
                l = n(t("./BlurYFilter")),
                c = function(t) {
                    function e(r, n, s, a) {
                        i(this, e);
                        var c = o(this, t.call(this));
                        return c.blurXFilter = new h.default(r, n, s, a), c.blurYFilter = new l.default(r, n, s, a), c.padding = 0, c.resolution = s || u.settings.RESOLUTION, c.quality = n || 4, c.blur = r || 8, c
                    }
                    return s(e, t), e.prototype.apply = function(t, e, r) {
                        var n = t.getRenderTarget(!0);
                        this.blurXFilter.apply(t, e, n, !0), this.blurYFilter.apply(t, n, r, !1), t.returnRenderTarget(n)
                    }, a(e, [{
                        key: "blur",
                        get: function() {
                            return this.blurXFilter.blur
                        },
                        set: function(t) {
                            this.blurXFilter.blur = this.blurYFilter.blur = t, this.padding = 2 * Math.max(Math.abs(this.blurXFilter.strength), Math.abs(this.blurYFilter.strength))
                        }
                    }, {
                        key: "quality",
                        get: function() {
                            return this.blurXFilter.quality
                        },
                        set: function(t) {
                            this.blurXFilter.quality = this.blurYFilter.quality = t
                        }
                    }, {
                        key: "blurX",
                        get: function() {
                            return this.blurXFilter.blur
                        },
                        set: function(t) {
                            this.blurXFilter.blur = t, this.padding = 2 * Math.max(Math.abs(this.blurXFilter.strength), Math.abs(this.blurYFilter.strength))
                        }
                    }, {
                        key: "blurY",
                        get: function() {
                            return this.blurYFilter.blur
                        },
                        set: function(t) {
                            this.blurYFilter.blur = t, this.padding = 2 * Math.max(Math.abs(this.blurXFilter.strength), Math.abs(this.blurYFilter.strength))
                        }
                    }, {
                        key: "blendMode",
                        get: function() {
                            return this.blurYFilter._blendMode
                        },
                        set: function(t) {
                            this.blurYFilter._blendMode = t
                        }
                    }]), e
                }(u.Filter);
            r.default = c
        }, {
            "../../core": 65,
            "./BlurXFilter": 145,
            "./BlurYFilter": 146
        }],
        145: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function o(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function s(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var a = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                u = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../../core")),
                h = n(t("./generateBlurVertSource")),
                l = n(t("./generateBlurFragSource")),
                c = n(t("./getMaxBlurKernelSize")),
                d = function(t) {
                    function e(r, n, s, a) {
                        i(this, e), a = a || 5;
                        var c = (0, h.default)(a, !0),
                            d = (0, l.default)(a),
                            f = o(this, t.call(this, c, d));
                        return f.resolution = s || u.settings.RESOLUTION, f._quality = 0, f.quality = n || 4, f.strength = r || 8, f.firstRun = !0, f
                    }
                    return s(e, t), e.prototype.apply = function(t, e, r, n) {
                        if (this.firstRun) {
                            var i = t.renderer.gl,
                                o = (0, c.default)(i);
                            this.vertexSrc = (0, h.default)(o, !0), this.fragmentSrc = (0, l.default)(o), this.firstRun = !1
                        }
                        if (this.uniforms.strength = 1 / r.size.width * (r.size.width / e.size.width), this.uniforms.strength *= this.strength, this.uniforms.strength /= this.passes, 1 === this.passes) t.applyFilter(this, e, r, n);
                        else {
                            for (var s = t.getRenderTarget(!0), a = e, u = s, d = 0; d &lt; this.passes - 1; d++) {
                                t.applyFilter(this, a, u, !0);
                                var f = u;
                                u = a, a = f
                            }
                            t.applyFilter(this, a, r, n), t.returnRenderTarget(s)
                        }
                    }, a(e, [{
                        key: "blur",
                        get: function() {
                            return this.strength
                        },
                        set: function(t) {
                            this.padding = 2 * Math.abs(t), this.strength = t
                        }
                    }, {
                        key: "quality",
                        get: function() {
                            return this._quality
                        },
                        set: function(t) {
                            this._quality = t, this.passes = t
                        }
                    }]), e
                }(u.Filter);
            r.default = d
        }, {
            "../../core": 65,
            "./generateBlurFragSource": 147,
            "./generateBlurVertSource": 148,
            "./getMaxBlurKernelSize": 149
        }],
        146: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function o(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function s(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var a = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                u = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../../core")),
                h = n(t("./generateBlurVertSource")),
                l = n(t("./generateBlurFragSource")),
                c = n(t("./getMaxBlurKernelSize")),
                d = function(t) {
                    function e(r, n, s, a) {
                        i(this, e), a = a || 5;
                        var c = (0, h.default)(a, !1),
                            d = (0, l.default)(a),
                            f = o(this, t.call(this, c, d));
                        return f.resolution = s || u.settings.RESOLUTION, f._quality = 0, f.quality = n || 4, f.strength = r || 8, f.firstRun = !0, f
                    }
                    return s(e, t), e.prototype.apply = function(t, e, r, n) {
                        if (this.firstRun) {
                            var i = t.renderer.gl,
                                o = (0, c.default)(i);
                            this.vertexSrc = (0, h.default)(o, !1), this.fragmentSrc = (0, l.default)(o), this.firstRun = !1
                        }
                        if (this.uniforms.strength = 1 / r.size.height * (r.size.height / e.size.height), this.uniforms.strength *= this.strength, this.uniforms.strength /= this.passes, 1 === this.passes) t.applyFilter(this, e, r, n);
                        else {
                            for (var s = t.getRenderTarget(!0), a = e, u = s, d = 0; d &lt; this.passes - 1; d++) {
                                t.applyFilter(this, a, u, !0);
                                var f = u;
                                u = a, a = f
                            }
                            t.applyFilter(this, a, r, n), t.returnRenderTarget(s)
                        }
                    }, a(e, [{
                        key: "blur",
                        get: function() {
                            return this.strength
                        },
                        set: function(t) {
                            this.padding = 2 * Math.abs(t), this.strength = t
                        }
                    }, {
                        key: "quality",
                        get: function() {
                            return this._quality
                        },
                        set: function(t) {
                            this._quality = t, this.passes = t
                        }
                    }]), e
                }(u.Filter);
            r.default = d
        }, {
            "../../core": 65,
            "./generateBlurFragSource": 147,
            "./generateBlurVertSource": 148,
            "./getMaxBlurKernelSize": 149
        }],
        147: [function(t, e, r) {
            "use strict";
            r.__esModule = !0, r.default = function(t) {
                for (var e = n[t], r = e.length, o = i, s = "", a = void 0, u = 0; u &lt; t; u++) {
                    var h = "gl_FragColor += texture2D(uSampler, vBlurTexCoords[%index%]) * %value%;".replace("%index%", u);
                    a = u, u &gt;= r &amp;&amp; (a = t - u - 1), s += h = h.replace("%value%", e[a]), s += "\n"
                }
                return o = o.replace("%blur%", s), o = o.replace("%size%", t)
            };
            var n = {
                    5: [.153388, .221461, .250301],
                    7: [.071303, .131514, .189879, .214607],
                    9: [.028532, .067234, .124009, .179044, .20236],
                    11: [.0093, .028002, .065984, .121703, .175713, .198596],
                    13: [.002406, .009255, .027867, .065666, .121117, .174868, .197641],
                    15: [489e-6, .002403, .009246, .02784, .065602, .120999, .174697, .197448]
                },
                i = ["varying vec2 vBlurTexCoords[%size%];", "uniform sampler2D uSampler;", "void main(void)", "{", "    gl_FragColor = vec4(0.0);", "    %blur%", "}"].join("\n")
        }, {}],
        148: [function(t, e, r) {
            "use strict";
            r.__esModule = !0, r.default = function(t, e) {
                var r = Math.ceil(t / 2),
                    i = n,
                    o = "",
                    s = void 0;
                s = e ? "vBlurTexCoords[%index%] = aTextureCoord + vec2(%sampleIndex% * strength, 0.0);" : "vBlurTexCoords[%index%] = aTextureCoord + vec2(0.0, %sampleIndex% * strength);";
                for (var a = 0; a &lt; t; a++) {
                    var u = s.replace("%index%", a);
                    o += u = u.replace("%sampleIndex%", a - (r - 1) + ".0"), o += "\n"
                }
                return i = i.replace("%blur%", o), i = i.replace("%size%", t)
            };
            var n = ["attribute vec2 aVertexPosition;", "attribute vec2 aTextureCoord;", "uniform float strength;", "uniform mat3 projectionMatrix;", "varying vec2 vBlurTexCoords[%size%];", "void main(void)", "{", "gl_Position = vec4((projectionMatrix * vec3((aVertexPosition), 1.0)).xy, 0.0, 1.0);", "%blur%", "}"].join("\n")
        }, {}],
        149: [function(t, e, r) {
            "use strict";
            r.__esModule = !0, r.default = function(t) {
                for (var e = t.getParameter(t.MAX_VARYING_VECTORS), r = 15; r &gt; e;) r -= 2;
                return r
            }
        }, {}],
        150: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function i(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function o(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var s = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                a = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../../core")),
                u = (t("path"), function(t) {
                    function e() {
                        n(this, e);
                        var r = i(this, t.call(this, "attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n    gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n    vTextureCoord = aTextureCoord;\n}", "varying vec2 vTextureCoord;\nuniform sampler2D uSampler;\nuniform float m[20];\nuniform float uAlpha;\n\nvoid main(void)\n{\n    vec4 c = texture2D(uSampler, vTextureCoord);\n\n    if (uAlpha == 0.0) {\n        gl_FragColor = c;\n        return;\n    }\n\n    // Un-premultiply alpha before applying the color matrix. See issue #3539.\n    if (c.a &gt; 0.0) {\n      c.rgb /= c.a;\n    }\n\n    vec4 result;\n\n    result.r = (m[0] * c.r);\n        result.r += (m[1] * c.g);\n        result.r += (m[2] * c.b);\n        result.r += (m[3] * c.a);\n        result.r += m[4];\n\n    result.g = (m[5] * c.r);\n        result.g += (m[6] * c.g);\n        result.g += (m[7] * c.b);\n        result.g += (m[8] * c.a);\n        result.g += m[9];\n\n    result.b = (m[10] * c.r);\n       result.b += (m[11] * c.g);\n       result.b += (m[12] * c.b);\n       result.b += (m[13] * c.a);\n       result.b += m[14];\n\n    result.a = (m[15] * c.r);\n       result.a += (m[16] * c.g);\n       result.a += (m[17] * c.b);\n       result.a += (m[18] * c.a);\n       result.a += m[19];\n\n    vec3 rgb = mix(c.rgb, result.rgb, uAlpha);\n\n    // Premultiply alpha again.\n    rgb *= result.a;\n\n    gl_FragColor = vec4(rgb, result.a);\n}\n"));
                        return r.uniforms.m = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0], r.alpha = 1, r
                    }
                    return o(e, t), e.prototype._loadMatrix = function(t) {
                        var e = t;
                        arguments.length &gt; 1 &amp;&amp; void 0 !== arguments[1] &amp;&amp; arguments[1] &amp;&amp; (this._multiply(e, this.uniforms.m, t), e = this._colorMatrix(e)), this.uniforms.m = e
                    }, e.prototype._multiply = function(t, e, r) {
                        return t[0] = e[0] * r[0] + e[1] * r[5] + e[2] * r[10] + e[3] * r[15], t[1] = e[0] * r[1] + e[1] * r[6] + e[2] * r[11] + e[3] * r[16], t[2] = e[0] * r[2] + e[1] * r[7] + e[2] * r[12] + e[3] * r[17], t[3] = e[0] * r[3] + e[1] * r[8] + e[2] * r[13] + e[3] * r[18], t[4] = e[0] * r[4] + e[1] * r[9] + e[2] * r[14] + e[3] * r[19] + e[4], t[5] = e[5] * r[0] + e[6] * r[5] + e[7] * r[10] + e[8] * r[15], t[6] = e[5] * r[1] + e[6] * r[6] + e[7] * r[11] + e[8] * r[16], t[7] = e[5] * r[2] + e[6] * r[7] + e[7] * r[12] + e[8] * r[17], t[8] = e[5] * r[3] + e[6] * r[8] + e[7] * r[13] + e[8] * r[18], t[9] = e[5] * r[4] + e[6] * r[9] + e[7] * r[14] + e[8] * r[19] + e[9], t[10] = e[10] * r[0] + e[11] * r[5] + e[12] * r[10] + e[13] * r[15], t[11] = e[10] * r[1] + e[11] * r[6] + e[12] * r[11] + e[13] * r[16], t[12] = e[10] * r[2] + e[11] * r[7] + e[12] * r[12] + e[13] * r[17], t[13] = e[10] * r[3] + e[11] * r[8] + e[12] * r[13] + e[13] * r[18], t[14] = e[10] * r[4] + e[11] * r[9] + e[12] * r[14] + e[13] * r[19] + e[14], t[15] = e[15] * r[0] + e[16] * r[5] + e[17] * r[10] + e[18] * r[15], t[16] = e[15] * r[1] + e[16] * r[6] + e[17] * r[11] + e[18] * r[16], t[17] = e[15] * r[2] + e[16] * r[7] + e[17] * r[12] + e[18] * r[17], t[18] = e[15] * r[3] + e[16] * r[8] + e[17] * r[13] + e[18] * r[18], t[19] = e[15] * r[4] + e[16] * r[9] + e[17] * r[14] + e[18] * r[19] + e[19], t
                    }, e.prototype._colorMatrix = function(t) {
                        var e = new Float32Array(t);
                        return e[4] /= 255, e[9] /= 255, e[14] /= 255, e[19] /= 255, e
                    }, e.prototype.brightness = function(t, e) {
                        var r = [t, 0, 0, 0, 0, 0, t, 0, 0, 0, 0, 0, t, 0, 0, 0, 0, 0, 1, 0];
                        this._loadMatrix(r, e)
                    }, e.prototype.greyscale = function(t, e) {
                        var r = [t, t, t, 0, 0, t, t, t, 0, 0, t, t, t, 0, 0, 0, 0, 0, 1, 0];
                        this._loadMatrix(r, e)
                    }, e.prototype.blackAndWhite = function(t) {
                        var e = [.3, .6, .1, 0, 0, .3, .6, .1, 0, 0, .3, .6, .1, 0, 0, 0, 0, 0, 1, 0];
                        this._loadMatrix(e, t)
                    }, e.prototype.hue = function(t, e) {
                        t = (t || 0) / 180 * Math.PI;
                        var r = Math.cos(t),
                            n = Math.sin(t),
                            i = 1 / 3,
                            o = (0, Math.sqrt)(i),
                            s = [r + (1 - r) * i, i * (1 - r) - o * n, i * (1 - r) + o * n, 0, 0, i * (1 - r) + o * n, r + i * (1 - r), i * (1 - r) - o * n, 0, 0, i * (1 - r) - o * n, i * (1 - r) + o * n, r + i * (1 - r), 0, 0, 0, 0, 0, 1, 0];
                        this._loadMatrix(s, e)
                    }, e.prototype.contrast = function(t, e) {
                        var r = (t || 0) + 1,
                            n = -.5 * (r - 1),
                            i = [r, 0, 0, 0, n, 0, r, 0, 0, n, 0, 0, r, 0, n, 0, 0, 0, 1, 0];
                        this._loadMatrix(i, e)
                    }, e.prototype.saturate = function() {
                        var t = arguments.length &gt; 0 &amp;&amp; void 0 !== arguments[0] ? arguments[0] : 0,
                            e = arguments[1],
                            r = 2 * t / 3 + 1,
                            n = -.5 * (r - 1),
                            i = [r, n, n, 0, 0, n, r, n, 0, 0, n, n, r, 0, 0, 0, 0, 0, 1, 0];
                        this._loadMatrix(i, e)
                    }, e.prototype.desaturate = function() {
                        this.saturate(-1)
                    }, e.prototype.negative = function(t) {
                        var e = [-1, 0, 0, 1, 0, 0, -1, 0, 1, 0, 0, 0, -1, 1, 0, 0, 0, 0, 1, 0];
                        this._loadMatrix(e, t)
                    }, e.prototype.sepia = function(t) {
                        var e = [.393, .7689999, .18899999, 0, 0, .349, .6859999, .16799999, 0, 0, .272, .5339999, .13099999, 0, 0, 0, 0, 0, 1, 0];
                        this._loadMatrix(e, t)
                    }, e.prototype.technicolor = function(t) {
                        var e = [1.9125277891456083, -.8545344976951645, -.09155508482755585, 0, 11.793603434377337, -.3087833385928097, 1.7658908555458428, -.10601743074722245, 0, -70.35205161461398, -.231103377548616, -.7501899197440212, 1.847597816108189, 0, 30.950940869491138, 0, 0, 0, 1, 0];
                        this._loadMatrix(e, t)
                    }, e.prototype.polaroid = function(t) {
                        var e = [1.438, -.062, -.062, 0, 0, -.122, 1.378, -.122, 0, 0, -.016, -.016, 1.483, 0, 0, 0, 0, 0, 1, 0];
                        this._loadMatrix(e, t)
                    }, e.prototype.toBGR = function(t) {
                        var e = [0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0];
                        this._loadMatrix(e, t)
                    }, e.prototype.kodachrome = function(t) {
                        var e = [1.1285582396593525, -.3967382283601348, -.03992559172921793, 0, 63.72958762196502, -.16404339962244616, 1.0835251566291304, -.05498805115633132, 0, 24.732407896706203, -.16786010706155763, -.5603416277695248, 1.6014850761964943, 0, 35.62982807460946, 0, 0, 0, 1, 0];
                        this._loadMatrix(e, t)
                    }, e.prototype.browni = function(t) {
                        var e = [.5997023498159715, .34553243048391263, -.2708298674538042, 0, 47.43192855600873, -.037703249837783157, .8609577587992641, .15059552388459913, 0, -36.96841498319127, .24113635128153335, -.07441037908422492, .44972182064877153, 0, -7.562075277591283, 0, 0, 0, 1, 0];
                        this._loadMatrix(e, t)
                    }, e.prototype.vintage = function(t) {
                        var e = [.6279345635605994, .3202183420819367, -.03965408211312453, 0, 9.651285835294123, .02578397704808868, .6441188644374771, .03259127616149294, 0, 7.462829176470591, .0466055556782719, -.0851232987247891, .5241648018700465, 0, 5.159190588235296, 0, 0, 0, 1, 0];
                        this._loadMatrix(e, t)
                    }, e.prototype.colorTone = function(t, e, r, n, i) {
                        t = t || .2, e = e || .15;
                        var o = ((r = r || 16770432) &gt;&gt; 16 &amp; 255) / 255,
                            s = (r &gt;&gt; 8 &amp; 255) / 255,
                            a = (255 &amp; r) / 255,
                            u = ((n = n || 3375104) &gt;&gt; 16 &amp; 255) / 255,
                            h = (n &gt;&gt; 8 &amp; 255) / 255,
                            l = (255 &amp; n) / 255,
                            c = [.3, .59, .11, 0, 0, o, s, a, t, 0, u, h, l, e, 0, o - u, s - h, a - l, 0, 0];
                        this._loadMatrix(c, i)
                    }, e.prototype.night = function(t, e) {
                        var r = [-2 * (t = t || .1), -t, 0, 0, 0, -t, 0, t, 0, 0, 0, t, 2 * t, 0, 0, 0, 0, 0, 1, 0];
                        this._loadMatrix(r, e)
                    }, e.prototype.predator = function(t, e) {
                        var r = [11.224130630493164 * t, -4.794486999511719 * t, -2.8746118545532227 * t, 0 * t, .40342438220977783 * t, -3.6330697536468506 * t, 9.193157196044922 * t, -2.951810836791992 * t, 0 * t, -1.316135048866272 * t, -3.2184197902679443 * t, -4.2375030517578125 * t, 7.476448059082031 * t, 0 * t, .8044459223747253 * t, 0, 0, 0, 1, 0];
                        this._loadMatrix(r, e)
                    }, e.prototype.lsd = function(t) {
                        var e = [2, -.4, .5, 0, 0, -.5, 2, -.4, 0, 0, -.4, -.5, 3, 0, 0, 0, 0, 0, 1, 0];
                        this._loadMatrix(e, t)
                    }, e.prototype.reset = function() {
                        var t = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0];
                        this._loadMatrix(t, !1)
                    }, s(e, [{
                        key: "matrix",
                        get: function() {
                            return this.uniforms.m
                        },
                        set: function(t) {
                            this.uniforms.m = t
                        }
                    }, {
                        key: "alpha",
                        get: function() {
                            return this.uniforms.uAlpha
                        },
                        set: function(t) {
                            this.uniforms.uAlpha = t
                        }
                    }]), e
                }(a.Filter));
            r.default = u, u.prototype.grayscale = u.prototype.greyscale
        }, {
            "../../core": 65,
            path: 8
        }],
        151: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function i(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function o(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var s = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                a = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../../core")),
                u = (t("path"), function(t) {
                    function e(r, o) {
                        n(this, e);
                        var s = new a.Matrix;
                        r.renderable = !1;
                        var u = i(this, t.call(this, "attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\nuniform mat3 filterMatrix;\n\nvarying vec2 vTextureCoord;\nvarying vec2 vFilterCoord;\n\nvoid main(void)\n{\n   gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n   vFilterCoord = ( filterMatrix * vec3( aTextureCoord, 1.0)  ).xy;\n   vTextureCoord = aTextureCoord;\n}", "varying vec2 vFilterCoord;\nvarying vec2 vTextureCoord;\n\nuniform vec2 scale;\n\nuniform sampler2D uSampler;\nuniform sampler2D mapSampler;\n\nuniform vec4 filterArea;\nuniform vec4 filterClamp;\n\nvoid main(void)\n{\n  vec4 map =  texture2D(mapSampler, vFilterCoord);\n\n  map -= 0.5;\n  map.xy *= scale / filterArea.xy;\n\n  gl_FragColor = texture2D(uSampler, clamp(vec2(vTextureCoord.x + map.x, vTextureCoord.y + map.y), filterClamp.xy, filterClamp.zw));\n}\n"));
                        return u.maskSprite = r, u.maskMatrix = s, u.uniforms.mapSampler = r._texture, u.uniforms.filterMatrix = s, u.uniforms.scale = {
                            x: 1,
                            y: 1
                        }, null !== o &amp;&amp; void 0 !== o || (o = 20), u.scale = new a.Point(o, o), u
                    }
                    return o(e, t), e.prototype.apply = function(t, e, r) {
                        this.uniforms.filterMatrix = t.calculateSpriteMatrix(this.maskMatrix, this.maskSprite), this.uniforms.scale.x = this.scale.x, this.uniforms.scale.y = this.scale.y, t.applyFilter(this, e, r)
                    }, s(e, [{
                        key: "map",
                        get: function() {
                            return this.uniforms.mapSampler
                        },
                        set: function(t) {
                            this.uniforms.mapSampler = t
                        }
                    }]), e
                }(a.Filter));
            r.default = u
        }, {
            "../../core": 65,
            path: 8
        }],
        152: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function i(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function o(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var s = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../../core")),
                a = (t("path"), function(t) {
                    function e() {
                        return n(this, e), i(this, t.call(this, "\nattribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 v_rgbNW;\nvarying vec2 v_rgbNE;\nvarying vec2 v_rgbSW;\nvarying vec2 v_rgbSE;\nvarying vec2 v_rgbM;\n\nuniform vec4 filterArea;\n\nvarying vec2 vTextureCoord;\n\nvec2 mapCoord( vec2 coord )\n{\n    coord *= filterArea.xy;\n    coord += filterArea.zw;\n\n    return coord;\n}\n\nvec2 unmapCoord( vec2 coord )\n{\n    coord -= filterArea.zw;\n    coord /= filterArea.xy;\n\n    return coord;\n}\n\nvoid texcoords(vec2 fragCoord, vec2 resolution,\n               out vec2 v_rgbNW, out vec2 v_rgbNE,\n               out vec2 v_rgbSW, out vec2 v_rgbSE,\n               out vec2 v_rgbM) {\n    vec2 inverseVP = 1.0 / resolution.xy;\n    v_rgbNW = (fragCoord + vec2(-1.0, -1.0)) * inverseVP;\n    v_rgbNE = (fragCoord + vec2(1.0, -1.0)) * inverseVP;\n    v_rgbSW = (fragCoord + vec2(-1.0, 1.0)) * inverseVP;\n    v_rgbSE = (fragCoord + vec2(1.0, 1.0)) * inverseVP;\n    v_rgbM = vec2(fragCoord * inverseVP);\n}\n\nvoid main(void) {\n\n   gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n\n   vTextureCoord = aTextureCoord;\n\n   vec2 fragCoord = vTextureCoord * filterArea.xy;\n\n   texcoords(fragCoord, filterArea.xy, v_rgbNW, v_rgbNE, v_rgbSW, v_rgbSE, v_rgbM);\n}", 'varying vec2 v_rgbNW;\nvarying vec2 v_rgbNE;\nvarying vec2 v_rgbSW;\nvarying vec2 v_rgbSE;\nvarying vec2 v_rgbM;\n\nvarying vec2 vTextureCoord;\nuniform sampler2D uSampler;\nuniform vec4 filterArea;\n\n/**\n Basic FXAA implementation based on the code on geeks3d.com with the\n modification that the texture2DLod stuff was removed since it\'s\n unsupported by WebGL.\n \n --\n \n From:\n https://github.com/mitsuhiko/webgl-meincraft\n \n Copyright (c) 2011 by Armin Ronacher.\n \n Some rights reserved.\n \n Redistribution and use in source and binary forms, with or without\n modification, are permitted provided that the following conditions are\n met:\n \n * Redistributions of source code must retain the above copyright\n notice, this list of conditions and the following disclaimer.\n \n * Redistributions in binary form must reproduce the above\n copyright notice, this list of conditions and the following\n disclaimer in the documentation and/or other materials provided\n with the distribution.\n \n * The names of the contributors may not be used to endorse or\n promote products derived from this software without specific\n prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#ifndef FXAA_REDUCE_MIN\n#define FXAA_REDUCE_MIN   (1.0/ 128.0)\n#endif\n#ifndef FXAA_REDUCE_MUL\n#define FXAA_REDUCE_MUL   (1.0 / 8.0)\n#endif\n#ifndef FXAA_SPAN_MAX\n#define FXAA_SPAN_MAX     8.0\n#endif\n\n//optimized version for mobile, where dependent\n//texture reads can be a bottleneck\nvec4 fxaa(sampler2D tex, vec2 fragCoord, vec2 resolution,\n          vec2 v_rgbNW, vec2 v_rgbNE,\n          vec2 v_rgbSW, vec2 v_rgbSE,\n          vec2 v_rgbM) {\n    vec4 color;\n    mediump vec2 inverseVP = vec2(1.0 / resolution.x, 1.0 / resolution.y);\n    vec3 rgbNW = texture2D(tex, v_rgbNW).xyz;\n    vec3 rgbNE = texture2D(tex, v_rgbNE).xyz;\n    vec3 rgbSW = texture2D(tex, v_rgbSW).xyz;\n    vec3 rgbSE = texture2D(tex, v_rgbSE).xyz;\n    vec4 texColor = texture2D(tex, v_rgbM);\n    vec3 rgbM  = texColor.xyz;\n    vec3 luma = vec3(0.299, 0.587, 0.114);\n    float lumaNW = dot(rgbNW, luma);\n    float lumaNE = dot(rgbNE, luma);\n    float lumaSW = dot(rgbSW, luma);\n    float lumaSE = dot(rgbSE, luma);\n    float lumaM  = dot(rgbM,  luma);\n    float lumaMin = min(lumaM, min(min(lumaNW, lumaNE), min(lumaSW, lumaSE)));\n    float lumaMax = max(lumaM, max(max(lumaNW, lumaNE), max(lumaSW, lumaSE)));\n    \n    mediump vec2 dir;\n    dir.x = -((lumaNW + lumaNE) - (lumaSW + lumaSE));\n    dir.y =  ((lumaNW + lumaSW) - (lumaNE + lumaSE));\n    \n    float dirReduce = max((lumaNW + lumaNE + lumaSW + lumaSE) *\n                          (0.25 * FXAA_REDUCE_MUL), FXAA_REDUCE_MIN);\n    \n    float rcpDirMin = 1.0 / (min(abs(dir.x), abs(dir.y)) + dirReduce);\n    dir = min(vec2(FXAA_SPAN_MAX, FXAA_SPAN_MAX),\n              max(vec2(-FXAA_SPAN_MAX, -FXAA_SPAN_MAX),\n                  dir * rcpDirMin)) * inverseVP;\n    \n    vec3 rgbA = 0.5 * (\n                       texture2D(tex, fragCoord * inverseVP + dir * (1.0 / 3.0 - 0.5)).xyz +\n                       texture2D(tex, fragCoord * inverseVP + dir * (2.0 / 3.0 - 0.5)).xyz);\n    vec3 rgbB = rgbA * 0.5 + 0.25 * (\n                                     texture2D(tex, fragCoord * inverseVP + dir * -0.5).xyz +\n                                     texture2D(tex, fragCoord * inverseVP + dir * 0.5).xyz);\n    \n    float lumaB = dot(rgbB, luma);\n    if ((lumaB &lt; lumaMin) || (lumaB &gt; lumaMax))\n        color = vec4(rgbA, texColor.a);\n    else\n        color = vec4(rgbB, texColor.a);\n    return color;\n}\n\nvoid main() {\n\n      vec2 fragCoord = vTextureCoord * filterArea.xy;\n\n      vec4 color;\n\n    color = fxaa(uSampler, fragCoord, filterArea.xy, v_rgbNW, v_rgbNE, v_rgbSW, v_rgbSE, v_rgbM);\n\n      gl_FragColor = color;\n}\n'))
                    }
                    return o(e, t), e
                }(s.Filter));
            r.default = a
        }, {
            "../../core": 65,
            path: 8
        }],
        153: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }
            r.__esModule = !0;
            var i = t("./fxaa/FXAAFilter");
            Object.defineProperty(r, "FXAAFilter", {
                enumerable: !0,
                get: function() {
                    return n(i).default
                }
            });
            var o = t("./noise/NoiseFilter");
            Object.defineProperty(r, "NoiseFilter", {
                enumerable: !0,
                get: function() {
                    return n(o).default
                }
            });
            var s = t("./displacement/DisplacementFilter");
            Object.defineProperty(r, "DisplacementFilter", {
                enumerable: !0,
                get: function() {
                    return n(s).default
                }
            });
            var a = t("./blur/BlurFilter");
            Object.defineProperty(r, "BlurFilter", {
                enumerable: !0,
                get: function() {
                    return n(a).default
                }
            });
            var u = t("./blur/BlurXFilter");
            Object.defineProperty(r, "BlurXFilter", {
                enumerable: !0,
                get: function() {
                    return n(u).default
                }
            });
            var h = t("./blur/BlurYFilter");
            Object.defineProperty(r, "BlurYFilter", {
                enumerable: !0,
                get: function() {
                    return n(h).default
                }
            });
            var l = t("./colormatrix/ColorMatrixFilter");
            Object.defineProperty(r, "ColorMatrixFilter", {
                enumerable: !0,
                get: function() {
                    return n(l).default
                }
            });
            var c = t("./alpha/AlphaFilter");
            Object.defineProperty(r, "AlphaFilter", {
                enumerable: !0,
                get: function() {
                    return n(c).default
                }
            })
        }, {
            "./alpha/AlphaFilter": 143,
            "./blur/BlurFilter": 144,
            "./blur/BlurXFilter": 145,
            "./blur/BlurYFilter": 146,
            "./colormatrix/ColorMatrixFilter": 150,
            "./displacement/DisplacementFilter": 151,
            "./fxaa/FXAAFilter": 152,
            "./noise/NoiseFilter": 154
        }],
        154: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function i(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function o(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var s = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                a = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../../core")),
                u = (t("path"), function(t) {
                    function e() {
                        var r = arguments.length &gt; 0 &amp;&amp; void 0 !== arguments[0] ? arguments[0] : .5,
                            o = arguments.length &gt; 1 &amp;&amp; void 0 !== arguments[1] ? arguments[1] : Math.random();
                        n(this, e);
                        var s = i(this, t.call(this, "attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n    gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n    vTextureCoord = aTextureCoord;\n}", "precision highp float;\n\nvarying vec2 vTextureCoord;\nvarying vec4 vColor;\n\nuniform float uNoise;\nuniform float uSeed;\nuniform sampler2D uSampler;\n\nfloat rand(vec2 co)\n{\n    return fract(sin(dot(co.xy, vec2(12.9898, 78.233))) * 43758.5453);\n}\n\nvoid main()\n{\n    vec4 color = texture2D(uSampler, vTextureCoord);\n    float randomValue = rand(gl_FragCoord.xy * uSeed);\n    float diff = (randomValue - 0.5) * uNoise;\n\n    // Un-premultiply alpha before applying the color matrix. See issue #3539.\n    if (color.a &gt; 0.0) {\n        color.rgb /= color.a;\n    }\n\n    color.r += diff;\n    color.g += diff;\n    color.b += diff;\n\n    // Premultiply alpha again.\n    color.rgb *= color.a;\n\n    gl_FragColor = color;\n}\n"));
                        return s.noise = r, s.seed = o, s
                    }
                    return o(e, t), s(e, [{
                        key: "noise",
                        get: function() {
                            return this.uniforms.uNoise
                        },
                        set: function(t) {
                            this.uniforms.uNoise = t
                        }
                    }, {
                        key: "seed",
                        get: function() {
                            return this.uniforms.uSeed
                        },
                        set: function(t) {
                            this.uniforms.uSeed = t
                        }
                    }]), e
                }(a.Filter));
            r.default = u
        }, {
            "../../core": 65,
            path: 8
        }],
        155: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                o = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../core")),
                s = function() {
                    function t() {
                        n(this, t), this.global = new o.Point, this.target = null, this.originalEvent = null, this.identifier = null, this.isPrimary = !1, this.button = 0, this.buttons = 0, this.width = 0, this.height = 0, this.tiltX = 0, this.tiltY = 0, this.pointerType = null, this.pressure = 0, this.rotationAngle = 0, this.twist = 0, this.tangentialPressure = 0
                    }
                    return t.prototype.getLocalPosition = function(t, e, r) {
                        return t.worldTransform.applyInverse(r || this.global, e)
                    }, t.prototype.copyEvent = function(t) {
                        t.isPrimary &amp;&amp; (this.isPrimary = !0), this.button = t.button, this.buttons = Number.isInteger(t.buttons) ? t.buttons : t.which, this.width = t.width, this.height = t.height, this.tiltX = t.tiltX, this.tiltY = t.tiltY, this.pointerType = t.pointerType, this.pressure = t.pressure, this.rotationAngle = t.rotationAngle, this.twist = t.twist || 0, this.tangentialPressure = t.tangentialPressure || 0
                    }, t.prototype.reset = function() {
                        this.isPrimary = !1
                    }, i(t, [{
                        key: "pointerId",
                        get: function() {
                            return this.identifier
                        }
                    }]), t
                }();
            r.default = s
        }, {
            "../core": 65
        }],
        156: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function() {
                function t() {
                    n(this, t), this.stopped = !1, this.target = null, this.currentTarget = null, this.type = null, this.data = null
                }
                return t.prototype.stopPropagation = function() {
                    this.stopped = !0
                }, t.prototype.reset = function() {
                    this.stopped = !1, this.currentTarget = null, this.target = null
                }, t
            }();
            r.default = i
        }, {}],
        157: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function o(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function s(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var a = "function" == typeof Symbol &amp;&amp; "symbol" == typeof Symbol.iterator ? function(t) {
                    return typeof t
                } : function(t) {
                    return t &amp;&amp; "function" == typeof Symbol &amp;&amp; t.constructor === Symbol &amp;&amp; t !== Symbol.prototype ? "symbol" : typeof t
                },
                u = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../core")),
                h = n(t("./InteractionData")),
                l = n(t("./InteractionEvent")),
                c = n(t("./InteractionTrackingData")),
                d = n(t("eventemitter3")),
                f = n(t("./interactiveTarget"));
            u.utils.mixins.delayMixin(u.DisplayObject.prototype, f.default);
            var p = 1,
                v = {
                    target: null,
                    data: {
                        global: null
                    }
                },
                g = function(t) {
                    function e(r, n) {
                        i(this, e);
                        var s = o(this, t.call(this));
                        return n = n || {}, s.renderer = r, s.autoPreventDefault = void 0 === n.autoPreventDefault || n.autoPreventDefault, s.interactionFrequency = n.interactionFrequency || 10, s.mouse = new h.default, s.mouse.identifier = p, s.mouse.global.set(-999999), s.activeInteractionData = {}, s.activeInteractionData[p] = s.mouse, s.interactionDataPool = [], s.eventData = new l.default, s.interactionDOMElement = null, s.moveWhenInside = !1, s.eventsAdded = !1, s.mouseOverRenderer = !1, s.supportsTouchEvents = "ontouchstart" in window, s.supportsPointerEvents = !!window.PointerEvent, s.onPointerUp = s.onPointerUp.bind(s), s.processPointerUp = s.processPointerUp.bind(s), s.onPointerCancel = s.onPointerCancel.bind(s), s.processPointerCancel = s.processPointerCancel.bind(s), s.onPointerDown = s.onPointerDown.bind(s), s.processPointerDown = s.processPointerDown.bind(s), s.onPointerMove = s.onPointerMove.bind(s), s.processPointerMove = s.processPointerMove.bind(s), s.onPointerOut = s.onPointerOut.bind(s), s.processPointerOverOut = s.processPointerOverOut.bind(s), s.onPointerOver = s.onPointerOver.bind(s), s.cursorStyles = {
                            default: "inherit",
                            pointer: "pointer"
                        }, s.currentCursorMode = null, s.cursor = null, s._tempPoint = new u.Point, s.resolution = 1, s.setTargetElement(s.renderer.view, s.renderer.resolution), s
                    }
                    return s(e, t), e.prototype.hitTest = function(t, e) {
                        return v.target = null, v.data.global = t, e || (e = this.renderer._lastObjectRendered), this.processInteractive(v, e, null, !0), v.target
                    }, e.prototype.setTargetElement = function(t) {
                        var e = arguments.length &gt; 1 &amp;&amp; void 0 !== arguments[1] ? arguments[1] : 1;
                        this.removeEvents(), this.interactionDOMElement = t, this.resolution = e, this.addEvents()
                    }, e.prototype.addEvents = function() {
                        this.interactionDOMElement &amp;&amp; (u.ticker.shared.add(this.update, this, u.UPDATE_PRIORITY.INTERACTION), window.navigator.msPointerEnabled ? (this.interactionDOMElement.style["-ms-content-zooming"] = "none", this.interactionDOMElement.style["-ms-touch-action"] = "none") : this.supportsPointerEvents &amp;&amp; (this.interactionDOMElement.style["touch-action"] = "none"), this.supportsPointerEvents ? (window.document.addEventListener("pointermove", this.onPointerMove, !0), this.interactionDOMElement.addEventListener("pointerdown", this.onPointerDown, !0), this.interactionDOMElement.addEventListener("pointerleave", this.onPointerOut, !0), this.interactionDOMElement.addEventListener("pointerover", this.onPointerOver, !0), window.addEventListener("pointercancel", this.onPointerCancel, !0), window.addEventListener("pointerup", this.onPointerUp, !0)) : (window.document.addEventListener("mousemove", this.onPointerMove, !0), this.interactionDOMElement.addEventListener("mousedown", this.onPointerDown, !0), this.interactionDOMElement.addEventListener("mouseout", this.onPointerOut, !0), this.interactionDOMElement.addEventListener("mouseover", this.onPointerOver, !0), window.addEventListener("mouseup", this.onPointerUp, !0)), this.supportsTouchEvents &amp;&amp; (this.interactionDOMElement.addEventListener("touchstart", this.onPointerDown, !0), this.interactionDOMElement.addEventListener("touchcancel", this.onPointerCancel, !0), this.interactionDOMElement.addEventListener("touchend", this.onPointerUp, !0), this.interactionDOMElement.addEventListener("touchmove", this.onPointerMove, !0)), this.eventsAdded = !0)
                    }, e.prototype.removeEvents = function() {
                        this.interactionDOMElement &amp;&amp; (u.ticker.shared.remove(this.update, this), window.navigator.msPointerEnabled ? (this.interactionDOMElement.style["-ms-content-zooming"] = "", this.interactionDOMElement.style["-ms-touch-action"] = "") : this.supportsPointerEvents &amp;&amp; (this.interactionDOMElement.style["touch-action"] = ""), this.supportsPointerEvents ? (window.document.removeEventListener("pointermove", this.onPointerMove, !0), this.interactionDOMElement.removeEventListener("pointerdown", this.onPointerDown, !0), this.interactionDOMElement.removeEventListener("pointerleave", this.onPointerOut, !0), this.interactionDOMElement.removeEventListener("pointerover", this.onPointerOver, !0), window.removeEventListener("pointercancel", this.onPointerCancel, !0), window.removeEventListener("pointerup", this.onPointerUp, !0)) : (window.document.removeEventListener("mousemove", this.onPointerMove, !0), this.interactionDOMElement.removeEventListener("mousedown", this.onPointerDown, !0), this.interactionDOMElement.removeEventListener("mouseout", this.onPointerOut, !0), this.interactionDOMElement.removeEventListener("mouseover", this.onPointerOver, !0), window.removeEventListener("mouseup", this.onPointerUp, !0)), this.supportsTouchEvents &amp;&amp; (this.interactionDOMElement.removeEventListener("touchstart", this.onPointerDown, !0), this.interactionDOMElement.removeEventListener("touchcancel", this.onPointerCancel, !0), this.interactionDOMElement.removeEventListener("touchend", this.onPointerUp, !0), this.interactionDOMElement.removeEventListener("touchmove", this.onPointerMove, !0)), this.interactionDOMElement = null, this.eventsAdded = !1)
                    }, e.prototype.update = function(t) {
                        if (this._deltaTime += t, !(this._deltaTime &lt; this.interactionFrequency) &amp;&amp; (this._deltaTime = 0, this.interactionDOMElement))
                            if (this.didMove) this.didMove = !1;
                            else {
                                this.cursor = null;
                                for (var e in this.activeInteractionData)
                                    if (this.activeInteractionData.hasOwnProperty(e)) {
                                        var r = this.activeInteractionData[e];
                                        if (r.originalEvent &amp;&amp; "touch" !== r.pointerType) {
                                            var n = this.configureInteractionEventForDOMEvent(this.eventData, r.originalEvent, r);
                                            this.processInteractive(n, this.renderer._lastObjectRendered, this.processPointerOverOut, !0)
                                        }
                                    }
                                this.setCursorMode(this.cursor)
                            }
                    }, e.prototype.setCursorMode = function(t) {
                        if (t = t || "default", this.currentCursorMode !== t) {
                            this.currentCursorMode = t;
                            var e = this.cursorStyles[t];
                            if (e) switch (void 0 === e ? "undefined" : a(e)) {
                                case "string":
                                    this.interactionDOMElement.style.cursor = e;
                                    break;
                                case "function":
                                    e(t);
                                    break;
                                case "object":
                                    Object.assign(this.interactionDOMElement.style, e)
                            } else "string" != typeof t || Object.prototype.hasOwnProperty.call(this.cursorStyles, t) || (this.interactionDOMElement.style.cursor = t)
                        }
                    }, e.prototype.dispatchEvent = function(t, e, r) {
                        r.stopped || (r.currentTarget = t, r.type = e, t.emit(e, r), t[e] &amp;&amp; t[e](r))
                    }, e.prototype.mapPositionToPoint = function(t, e, r) {
                        var n = void 0;
                        n = this.interactionDOMElement.parentElement ? this.interactionDOMElement.getBoundingClientRect() : {
                            x: 0,
                            y: 0,
                            width: 0,
                            height: 0
                        };
                        var i = navigator.isCocoonJS ? this.resolution : 1 / this.resolution;
                        t.x = (e - n.left) * (this.interactionDOMElement.width / n.width) * i, t.y = (r - n.top) * (this.interactionDOMElement.height / n.height) * i
                    }, e.prototype.processInteractive = function(t, e, r, n, i) {
                        if (!e || !e.visible) return !1;
                        var o = t.data.global,
                            s = !1,
                            a = i = e.interactive || i,
                            u = !0;
                        if (e.hitArea ? (n &amp;&amp; (e.worldTransform.applyInverse(o, this._tempPoint), e.hitArea.contains(this._tempPoint.x, this._tempPoint.y) ? s = !0 : (n = !1, u = !1)), a = !1) : e._mask &amp;&amp; n &amp;&amp; (e._mask.containsPoint(o) || (n = !1, u = !1)), u &amp;&amp; e.interactiveChildren &amp;&amp; e.children)
                            for (var h = e.children, l = h.length - 1; l &gt;= 0; l--) {
                                var c = h[l],
                                    d = this.processInteractive(t, c, r, n, a);
                                if (d) {
                                    if (!c.parent) continue;
                                    a = !1, d &amp;&amp; (t.target &amp;&amp; (n = !1), s = !0)
                                }
                            }
                        return i &amp;&amp; (n &amp;&amp; !t.target &amp;&amp; !e.hitArea &amp;&amp; e.containsPoint &amp;&amp; e.containsPoint(o) &amp;&amp; (s = !0), e.interactive &amp;&amp; (s &amp;&amp; !t.target &amp;&amp; (t.target = e), r &amp;&amp; r(t, e, !!s))), s
                    }, e.prototype.onPointerDown = function(t) {
                        if (!this.supportsTouchEvents || "touch" !== t.pointerType) {
                            var e = this.normalizeToPointerData(t);
                            this.autoPreventDefault &amp;&amp; e[0].isNormalized &amp;&amp; t.preventDefault();
                            for (var r = e.length, n = 0; n &lt; r; n++) {
                                var i = e[n],
                                    o = this.getInteractionDataForPointerId(i),
                                    s = this.configureInteractionEventForDOMEvent(this.eventData, i, o);
                                if (s.data.originalEvent = t, this.processInteractive(s, this.renderer._lastObjectRendered, this.processPointerDown, !0), this.emit("pointerdown", s), "touch" === i.pointerType) this.emit("touchstart", s);
                                else if ("mouse" === i.pointerType || "pen" === i.pointerType) {
                                    var a = 2 === i.button;
                                    this.emit(a ? "rightdown" : "mousedown", this.eventData)
                                }
                            }
                        }
                    }, e.prototype.processPointerDown = function(t, e, r) {
                        var n = t.data,
                            i = t.data.identifier;
                        if (r)
                            if (e.trackedPointers[i] || (e.trackedPointers[i] = new c.default(i)), this.dispatchEvent(e, "pointerdown", t), "touch" === n.pointerType) this.dispatchEvent(e, "touchstart", t);
                            else if ("mouse" === n.pointerType || "pen" === n.pointerType) {
                            var o = 2 === n.button;
                            o ? e.trackedPointers[i].rightDown = !0 : e.trackedPointers[i].leftDown = !0, this.dispatchEvent(e, o ? "rightdown" : "mousedown", t)
                        }
                    }, e.prototype.onPointerComplete = function(t, e, r) {
                        for (var n = this.normalizeToPointerData(t), i = n.length, o = t.target !== this.interactionDOMElement ? "outside" : "", s = 0; s &lt; i; s++) {
                            var a = n[s],
                                u = this.getInteractionDataForPointerId(a),
                                h = this.configureInteractionEventForDOMEvent(this.eventData, a, u);
                            if (h.data.originalEvent = t, this.processInteractive(h, this.renderer._lastObjectRendered, r, e || !o), this.emit(e ? "pointercancel" : "pointerup" + o, h), "mouse" === a.pointerType || "pen" === a.pointerType) {
                                var l = 2 === a.button;
                                this.emit(l ? "rightup" + o : "mouseup" + o, h)
                            } else "touch" === a.pointerType &amp;&amp; (this.emit(e ? "touchcancel" : "touchend" + o, h), this.releaseInteractionDataForPointerId(a.pointerId, u))
                        }
                    }, e.prototype.onPointerCancel = function(t) {
                        this.supportsTouchEvents &amp;&amp; "touch" === t.pointerType || this.onPointerComplete(t, !0, this.processPointerCancel)
                    }, e.prototype.processPointerCancel = function(t, e) {
                        var r = t.data,
                            n = t.data.identifier;
                        void 0 !== e.trackedPointers[n] &amp;&amp; (delete e.trackedPointers[n], this.dispatchEvent(e, "pointercancel", t), "touch" === r.pointerType &amp;&amp; this.dispatchEvent(e, "touchcancel", t))
                    }, e.prototype.onPointerUp = function(t) {
                        this.supportsTouchEvents &amp;&amp; "touch" === t.pointerType || this.onPointerComplete(t, !1, this.processPointerUp)
                    }, e.prototype.processPointerUp = function(t, e, r) {
                        var n = t.data,
                            i = t.data.identifier,
                            o = e.trackedPointers[i],
                            s = "touch" === n.pointerType,
                            a = "mouse" === n.pointerType || "pen" === n.pointerType,
                            u = !1;
                        if (a) {
                            var h = 2 === n.button,
                                l = c.default.FLAGS,
                                d = h ? l.RIGHT_DOWN : l.LEFT_DOWN,
                                f = void 0 !== o &amp;&amp; o.flags &amp; d;
                            r ? (this.dispatchEvent(e, h ? "rightup" : "mouseup", t), f &amp;&amp; (this.dispatchEvent(e, h ? "rightclick" : "click", t), u = !0)) : f &amp;&amp; this.dispatchEvent(e, h ? "rightupoutside" : "mouseupoutside", t), o &amp;&amp; (h ? o.rightDown = !1 : o.leftDown = !1)
                        }
                        r ? (this.dispatchEvent(e, "pointerup", t), s &amp;&amp; this.dispatchEvent(e, "touchend", t), o &amp;&amp; (a &amp;&amp; !u || this.dispatchEvent(e, "pointertap", t), s &amp;&amp; (this.dispatchEvent(e, "tap", t), o.over = !1))) : o &amp;&amp; (this.dispatchEvent(e, "pointerupoutside", t), s &amp;&amp; this.dispatchEvent(e, "touchendoutside", t)), o &amp;&amp; o.none &amp;&amp; delete e.trackedPointers[i]
                    }, e.prototype.onPointerMove = function(t) {
                        if (!this.supportsTouchEvents || "touch" !== t.pointerType) {
                            var e = this.normalizeToPointerData(t);
                            "mouse" !== e[0].pointerType &amp;&amp; "pen" !== e[0].pointerType || (this.didMove = !0, this.cursor = null);
                            for (var r = e.length, n = 0; n &lt; r; n++) {
                                var i = e[n],
                                    o = this.getInteractionDataForPointerId(i),
                                    s = this.configureInteractionEventForDOMEvent(this.eventData, i, o);
                                s.data.originalEvent = t;
                                var a = "touch" !== i.pointerType || this.moveWhenInside;
                                this.processInteractive(s, this.renderer._lastObjectRendered, this.processPointerMove, a), this.emit("pointermove", s), "touch" === i.pointerType &amp;&amp; this.emit("touchmove", s), "mouse" !== i.pointerType &amp;&amp; "pen" !== i.pointerType || this.emit("mousemove", s)
                            }
                            "mouse" === e[0].pointerType &amp;&amp; this.setCursorMode(this.cursor)
                        }
                    }, e.prototype.processPointerMove = function(t, e, r) {
                        var n = t.data,
                            i = "touch" === n.pointerType,
                            o = "mouse" === n.pointerType || "pen" === n.pointerType;
                        o &amp;&amp; this.processPointerOverOut(t, e, r), this.moveWhenInside &amp;&amp; !r || (this.dispatchEvent(e, "pointermove", t), i &amp;&amp; this.dispatchEvent(e, "touchmove", t), o &amp;&amp; this.dispatchEvent(e, "mousemove", t))
                    }, e.prototype.onPointerOut = function(t) {
                        if (!this.supportsTouchEvents || "touch" !== t.pointerType) {
                            var e = this.normalizeToPointerData(t)[0];
                            "mouse" === e.pointerType &amp;&amp; (this.mouseOverRenderer = !1, this.setCursorMode(null));
                            var r = this.getInteractionDataForPointerId(e),
                                n = this.configureInteractionEventForDOMEvent(this.eventData, e, r);
                            n.data.originalEvent = e, this.processInteractive(n, this.renderer._lastObjectRendered, this.processPointerOverOut, !1), this.emit("pointerout", n), "mouse" === e.pointerType || "pen" === e.pointerType ? this.emit("mouseout", n) : this.releaseInteractionDataForPointerId(r.identifier)
                        }
                    }, e.prototype.processPointerOverOut = function(t, e, r) {
                        var n = t.data,
                            i = t.data.identifier,
                            o = "mouse" === n.pointerType || "pen" === n.pointerType,
                            s = e.trackedPointers[i];
                        r &amp;&amp; !s &amp;&amp; (s = e.trackedPointers[i] = new c.default(i)), void 0 !== s &amp;&amp; (r &amp;&amp; this.mouseOverRenderer ? (s.over || (s.over = !0, this.dispatchEvent(e, "pointerover", t), o &amp;&amp; this.dispatchEvent(e, "mouseover", t)), o &amp;&amp; null === this.cursor &amp;&amp; (this.cursor = e.cursor)) : s.over &amp;&amp; (s.over = !1, this.dispatchEvent(e, "pointerout", this.eventData), o &amp;&amp; this.dispatchEvent(e, "mouseout", t), s.none &amp;&amp; delete e.trackedPointers[i]))
                    }, e.prototype.onPointerOver = function(t) {
                        var e = this.normalizeToPointerData(t)[0],
                            r = this.getInteractionDataForPointerId(e),
                            n = this.configureInteractionEventForDOMEvent(this.eventData, e, r);
                        n.data.originalEvent = e, "mouse" === e.pointerType &amp;&amp; (this.mouseOverRenderer = !0), this.emit("pointerover", n), "mouse" !== e.pointerType &amp;&amp; "pen" !== e.pointerType || this.emit("mouseover", n)
                    }, e.prototype.getInteractionDataForPointerId = function(t) {
                        var e = t.pointerId,
                            r = void 0;
                        return e === p || "mouse" === t.pointerType ? r = this.mouse : this.activeInteractionData[e] ? r = this.activeInteractionData[e] : ((r = this.interactionDataPool.pop() || new h.default).identifier = e, this.activeInteractionData[e] = r), r.copyEvent(t), r
                    }, e.prototype.releaseInteractionDataForPointerId = function(t) {
                        var e = this.activeInteractionData[t];
                        e &amp;&amp; (delete this.activeInteractionData[t], e.reset(), this.interactionDataPool.push(e))
                    }, e.prototype.configureInteractionEventForDOMEvent = function(t, e, r) {
                        return t.data = r, this.mapPositionToPoint(r.global, e.clientX, e.clientY), navigator.isCocoonJS &amp;&amp; "touch" === e.pointerType &amp;&amp; (r.global.x = r.global.x / this.resolution, r.global.y = r.global.y / this.resolution), "touch" === e.pointerType &amp;&amp; (e.globalX = r.global.x, e.globalY = r.global.y), r.originalEvent = e, t.reset(), t
                    }, e.prototype.normalizeToPointerData = function(t) {
                        var e = [];
                        if (this.supportsTouchEvents &amp;&amp; t instanceof TouchEvent)
                            for (var r = 0, n = t.changedTouches.length; r &lt; n; r++) {
                                var i = t.changedTouches[r];
                                void 0 === i.button &amp;&amp; (i.button = t.touches.length ? 1 : 0), void 0 === i.buttons &amp;&amp; (i.buttons = t.touches.length ? 1 : 0), void 0 === i.isPrimary &amp;&amp; (i.isPrimary = 1 === t.touches.length &amp;&amp; "touchstart" === t.type), void 0 === i.width &amp;&amp; (i.width = i.radiusX || 1), void 0 === i.height &amp;&amp; (i.height = i.radiusY || 1), void 0 === i.tiltX &amp;&amp; (i.tiltX = 0), void 0 === i.tiltY &amp;&amp; (i.tiltY = 0), void 0 === i.pointerType &amp;&amp; (i.pointerType = "touch"), void 0 === i.pointerId &amp;&amp; (i.pointerId = i.identifier || 0), void 0 === i.pressure &amp;&amp; (i.pressure = i.force || .5), i.twist = 0, i.tangentialPressure = 0, void 0 === i.layerX &amp;&amp; (i.layerX = i.offsetX = i.clientX), void 0 === i.layerY &amp;&amp; (i.layerY = i.offsetY = i.clientY), i.isNormalized = !0, e.push(i)
                            } else !(t instanceof MouseEvent) || this.supportsPointerEvents &amp;&amp; t instanceof window.PointerEvent ? e.push(t) : (void 0 === t.isPrimary &amp;&amp; (t.isPrimary = !0), void 0 === t.width &amp;&amp; (t.width = 1), void 0 === t.height &amp;&amp; (t.height = 1), void 0 === t.tiltX &amp;&amp; (t.tiltX = 0), void 0 === t.tiltY &amp;&amp; (t.tiltY = 0), void 0 === t.pointerType &amp;&amp; (t.pointerType = "mouse"), void 0 === t.pointerId &amp;&amp; (t.pointerId = p), void 0 === t.pressure &amp;&amp; (t.pressure = .5), t.twist = 0, t.tangentialPressure = 0, t.isNormalized = !0, e.push(t));
                        return e
                    }, e.prototype.destroy = function() {
                        this.removeEvents(), this.removeAllListeners(), this.renderer = null, this.mouse = null, this.eventData = null, this.interactionDOMElement = null, this.onPointerDown = null, this.processPointerDown = null, this.onPointerUp = null, this.processPointerUp = null, this.onPointerCancel = null, this.processPointerCancel = null, this.onPointerMove = null, this.processPointerMove = null, this.onPointerOut = null, this.processPointerOverOut = null, this.onPointerOver = null, this._tempPoint = null
                    }, e
                }(d.default);
            r.default = g, u.WebGLRenderer.registerPlugin("interaction", g), u.CanvasRenderer.registerPlugin("interaction", g)
        }, {
            "../core": 65,
            "./InteractionData": 155,
            "./InteractionEvent": 156,
            "./InteractionTrackingData": 158,
            "./interactiveTarget": 160,
            eventemitter3: 3
        }],
        158: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                o = function() {
                    function t(e) {
                        n(this, t), this._pointerId = e, this._flags = t.FLAGS.NONE
                    }
                    return t.prototype._doSet = function(t, e) {
                        this._flags = e ? this._flags | t : this._flags &amp; ~t
                    }, i(t, [{
                        key: "pointerId",
                        get: function() {
                            return this._pointerId
                        }
                    }, {
                        key: "flags",
                        get: function() {
                            return this._flags
                        },
                        set: function(t) {
                            this._flags = t
                        }
                    }, {
                        key: "none",
                        get: function() {
                            return this._flags === this.constructor.FLAGS.NONE
                        }
                    }, {
                        key: "over",
                        get: function() {
                            return 0 != (this._flags &amp; this.constructor.FLAGS.OVER)
                        },
                        set: function(t) {
                            this._doSet(this.constructor.FLAGS.OVER, t)
                        }
                    }, {
                        key: "rightDown",
                        get: function() {
                            return 0 != (this._flags &amp; this.constructor.FLAGS.RIGHT_DOWN)
                        },
                        set: function(t) {
                            this._doSet(this.constructor.FLAGS.RIGHT_DOWN, t)
                        }
                    }, {
                        key: "leftDown",
                        get: function() {
                            return 0 != (this._flags &amp; this.constructor.FLAGS.LEFT_DOWN)
                        },
                        set: function(t) {
                            this._doSet(this.constructor.FLAGS.LEFT_DOWN, t)
                        }
                    }]), t
                }();
            r.default = o, o.FLAGS = Object.freeze({
                NONE: 0,
                OVER: 1,
                LEFT_DOWN: 2,
                RIGHT_DOWN: 4
            })
        }, {}],
        159: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }
            r.__esModule = !0;
            var i = t("./InteractionData");
            Object.defineProperty(r, "InteractionData", {
                enumerable: !0,
                get: function() {
                    return n(i).default
                }
            });
            var o = t("./InteractionManager");
            Object.defineProperty(r, "InteractionManager", {
                enumerable: !0,
                get: function() {
                    return n(o).default
                }
            });
            var s = t("./interactiveTarget");
            Object.defineProperty(r, "interactiveTarget", {
                enumerable: !0,
                get: function() {
                    return n(s).default
                }
            });
            var a = t("./InteractionTrackingData");
            Object.defineProperty(r, "InteractionTrackingData", {
                enumerable: !0,
                get: function() {
                    return n(a).default
                }
            });
            var u = t("./InteractionEvent");
            Object.defineProperty(r, "InteractionEvent", {
                enumerable: !0,
                get: function() {
                    return n(u).default
                }
            })
        }, {
            "./InteractionData": 155,
            "./InteractionEvent": 156,
            "./InteractionManager": 157,
            "./InteractionTrackingData": 158,
            "./interactiveTarget": 160
        }],
        160: [function(t, e, r) {
            "use strict";
            r.__esModule = !0, r.default = {
                interactive: !1,
                interactiveChildren: !0,
                hitArea: null,
                get buttonMode() {
                    return "pointer" === this.cursor
                },
                set buttonMode(t) {
                    t ? this.cursor = "pointer" : "pointer" === this.cursor &amp;&amp; (this.cursor = null)
                },
                cursor: null,
                get trackedPointers() {
                    return void 0 === this._trackedPointers &amp;&amp; (this._trackedPointers = {}), this._trackedPointers
                },
                _trackedPointers: void 0
            }
        }, {}],
        161: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                t.bitmapFont = s.BitmapText.registerFont(t.data, e)
            }
            r.__esModule = !0, r.parse = n, r.default = function() {
                return function(t, e) {
                    if (t.data &amp;&amp; t.type === o.Resource.TYPE.XML)
                        if (0 !== t.data.getElementsByTagName("page").length &amp;&amp; 0 !== t.data.getElementsByTagName("info").length &amp;&amp; null !== t.data.getElementsByTagName("info")[0].getAttribute("face")) {
                            var r = t.isDataUrl ? "" : i.dirname(t.url);
                            t.isDataUrl &amp;&amp; ("." === r &amp;&amp; (r = ""), this.baseUrl &amp;&amp; r &amp;&amp; "/" === this.baseUrl.charAt(this.baseUrl.length - 1) &amp;&amp; (r += "/")), (r = r.replace(this.baseUrl, "")) &amp;&amp; "/" !== r.charAt(r.length - 1) &amp;&amp; (r += "/");
                            for (var s = t.data.getElementsByTagName("page"), a = {}, u = function(r) {
                                    a[r.metadata.pageFile] = r.texture, Object.keys(a).length === s.length &amp;&amp; (n(t, a), e())
                                }, h = 0; h &lt; s.length; ++h) {
                                var l = s[h].getAttribute("file"),
                                    c = r + l,
                                    d = !1;
                                for (var f in this.resources)
                                    if (this.resources[f].url === c) {
                                        this.resources[f].metadata.pageFile = l, u(this.resources[f]), d = !0;
                                        break
                                    }
                                if (!d) {
                                    var p = {
                                        crossOrigin: t.crossOrigin,
                                        loadType: o.Resource.LOAD_TYPE.IMAGE,
                                        metadata: Object.assign({
                                            pageFile: l
                                        }, t.metadata.imageMetadata),
                                        parentResource: t
                                    };
                                    this.add(c, p, u)
                                }
                            }
                        } else e();
                    else e()
                }
            };
            var i = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("path")),
                o = t("resource-loader"),
                s = t("../extras")
        }, {
            "../extras": 141,
            path: 8,
            "resource-loader": 36
        }],
        162: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }
            r.__esModule = !0, r.shared = r.Resource = r.textureParser = r.getResourcePath = r.spritesheetParser = r.parseBitmapFontData = r.bitmapFontParser = r.Loader = void 0;
            var i = t("./bitmapFontParser");
            Object.defineProperty(r, "bitmapFontParser", {
                enumerable: !0,
                get: function() {
                    return n(i).default
                }
            }), Object.defineProperty(r, "parseBitmapFontData", {
                enumerable: !0,
                get: function() {
                    return i.parse
                }
            });
            var o = t("./spritesheetParser");
            Object.defineProperty(r, "spritesheetParser", {
                enumerable: !0,
                get: function() {
                    return n(o).default
                }
            }), Object.defineProperty(r, "getResourcePath", {
                enumerable: !0,
                get: function() {
                    return o.getResourcePath
                }
            });
            var s = t("./textureParser");
            Object.defineProperty(r, "textureParser", {
                enumerable: !0,
                get: function() {
                    return n(s).default
                }
            });
            var a = t("resource-loader");
            Object.defineProperty(r, "Resource", {
                enumerable: !0,
                get: function() {
                    return a.Resource
                }
            });
            var u = n(t("../core/Application")),
                h = n(t("./loader"));
            r.Loader = h.default;
            var l = new h.default;
            l.destroy = function() {}, r.shared = l;
            var c = u.default.prototype;
            c._loader = null, Object.defineProperty(c, "loader", {
                get: function() {
                    if (!this._loader) {
                        var t = this._options.sharedLoader;
                        this._loader = t ? l : new h.default
                    }
                    return this._loader
                }
            }), c._parentDestroy = c.destroy, c.destroy = function(t, e) {
                this._loader &amp;&amp; (this._loader.destroy(), this._loader = null), this._parentDestroy(t, e)
            }
        }, {
            "../core/Application": 43,
            "./bitmapFontParser": 161,
            "./loader": 163,
            "./spritesheetParser": 164,
            "./textureParser": 165,
            "resource-loader": 36
        }],
        163: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function o(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function s(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var a = n(t("resource-loader")),
                u = t("resource-loader/lib/middlewares/parsing/blob"),
                h = n(t("eventemitter3")),
                l = n(t("./textureParser")),
                c = n(t("./spritesheetParser")),
                d = n(t("./bitmapFontParser")),
                f = function(t) {
                    function e(r, n) {
                        i(this, e);
                        var s = o(this, t.call(this, r, n));
                        h.default.call(s);
                        for (var a = 0; a &lt; e._pixiMiddleware.length; ++a) s.use(e._pixiMiddleware[a]());
                        return s.onStart.add(function(t) {
                            return s.emit("start", t)
                        }), s.onProgress.add(function(t, e) {
                            return s.emit("progress", t, e)
                        }), s.onError.add(function(t, e, r) {
                            return s.emit("error", t, e, r)
                        }), s.onLoad.add(function(t, e) {
                            return s.emit("load", t, e)
                        }), s.onComplete.add(function(t, e) {
                            return s.emit("complete", t, e)
                        }), s
                    }
                    return s(e, t), e.addPixiMiddleware = function(t) {
                        e._pixiMiddleware.push(t)
                    }, e.prototype.destroy = function() {
                        this.removeAllListeners(), this.reset()
                    }, e
                }(a.default);
            r.default = f;
            for (var p in h.default.prototype) f.prototype[p] = h.default.prototype[p];
            f._pixiMiddleware = [u.blobMiddlewareFactory, l.default, c.default, d.default];
            var v = a.default.Resource;
            v.setExtensionXhrType("fnt", v.XHR_RESPONSE_TYPE.DOCUMENT)
        }, {
            "./bitmapFontParser": 161,
            "./spritesheetParser": 164,
            "./textureParser": 165,
            eventemitter3: 3,
            "resource-loader": 36,
            "resource-loader/lib/middlewares/parsing/blob": 37
        }],
        164: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                return t.isDataUrl ? t.data.meta.image : o.default.resolve(t.url.replace(e, ""), t.data.meta.image)
            }
            r.__esModule = !0, r.default = function() {
                return function(t, e) {
                    var r = t.name + "_image";
                    if (t.data &amp;&amp; t.type === i.Resource.TYPE.JSON &amp;&amp; t.data.frames &amp;&amp; !this.resources[r]) {
                        var o = {
                                crossOrigin: t.crossOrigin,
                                metadata: t.metadata.imageMetadata,
                                parentResource: t
                            },
                            a = n(t, this.baseUrl);
                        this.add(r, a, o, function(r) {
                            if (r.error) e(r.error);
                            else {
                                var n = new s.Spritesheet(r.texture.baseTexture, t.data, t.url);
                                n.parse(function() {
                                    t.spritesheet = n, t.textures = n.textures, e()
                                })
                            }
                        })
                    } else e()
                }
            }, r.getResourcePath = n;
            var i = t("resource-loader"),
                o = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("url")),
                s = t("../core")
        }, {
            "../core": 65,
            "resource-loader": 36,
            url: 38
        }],
        165: [function(t, e, r) {
            "use strict";
            r.__esModule = !0, r.default = function() {
                return function(t, e) {
                    t.data &amp;&amp; t.type === n.Resource.TYPE.IMAGE &amp;&amp; (t.texture = i.default.fromLoader(t.data, t.url, t.name)), e()
                }
            };
            var n = t("resource-loader"),
                i = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("../core/textures/Texture"))
        }, {
            "../core/textures/Texture": 115,
            "resource-loader": 36
        }],
        166: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function i(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function o(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var s = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                a = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../core")),
                u = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("../core/textures/Texture")),
                h = new a.Point,
                l = new a.Polygon,
                c = function(t) {
                    function e(r, o, s, h, l) {
                        n(this, e);
                        var c = i(this, t.call(this));
                        return c._texture = r || u.default.EMPTY, c.uvs = s || new Float32Array([0, 0, 1, 0, 1, 1, 0, 1]), c.vertices = o || new Float32Array([0, 0, 100, 0, 100, 100, 0, 100]), c.indices = h || new Uint16Array([0, 1, 3, 2]), c.dirty = 0, c.indexDirty = 0, c.vertexDirty = 0, c.autoUpdate = !0, c.blendMode = a.BLEND_MODES.NORMAL, c.canvasPadding = a.settings.MESH_CANVAS_PADDING, c.drawMode = l || e.DRAW_MODES.TRIANGLE_MESH, c.shader = null, c.tintRgb = new Float32Array([1, 1, 1]), c._glDatas = {}, c._uvTransform = new a.TextureMatrix(c._texture), c.uploadUvTransform = !1, c.pluginName = "mesh", c
                    }
                    return o(e, t), e.prototype._renderWebGL = function(t) {
                        this.refresh(), t.setObjectRenderer(t.plugins[this.pluginName]), t.plugins[this.pluginName].render(this)
                    }, e.prototype._renderCanvas = function(t) {
                        this.refresh(), t.plugins[this.pluginName].render(this)
                    }, e.prototype._onTextureUpdate = function() {
                        this._uvTransform.texture = this._texture, this.refresh()
                    }, e.prototype.multiplyUvs = function() {
                        this.uploadUvTransform || this._uvTransform.multiplyUvs(this.uvs)
                    }, e.prototype.refresh = function(t) {
                        this.autoUpdate &amp;&amp; this.vertexDirty++, this._uvTransform.update(t) &amp;&amp; this._refresh()
                    }, e.prototype._refresh = function() {}, e.prototype._calculateBounds = function() {
                        this._bounds.addVertices(this.transform, this.vertices, 0, this.vertices.length)
                    }, e.prototype.containsPoint = function(t) {
                        if (!this.getBounds().contains(t.x, t.y)) return !1;
                        this.worldTransform.applyInverse(t, h);
                        for (var r = this.vertices, n = l.points, i = this.indices, o = this.indices.length, s = this.drawMode === e.DRAW_MODES.TRIANGLES ? 3 : 1, a = 0; a + 2 &lt; o; a += s) {
                            var u = 2 * i[a],
                                c = 2 * i[a + 1],
                                d = 2 * i[a + 2];
                            if (n[0] = r[u], n[1] = r[u + 1], n[2] = r[c], n[3] = r[c + 1], n[4] = r[d], n[5] = r[d + 1], l.contains(h.x, h.y)) return !0
                        }
                        return !1
                    }, e.prototype.destroy = function(e) {
                        for (var r in this._glDatas) {
                            var n = this._glDatas[r];
                            n.destroy ? n.destroy() : (n.vertexBuffer &amp;&amp; (n.vertexBuffer.destroy(), n.vertexBuffer = null), n.indexBuffer &amp;&amp; (n.indexBuffer.destroy(), n.indexBuffer = null), n.uvBuffer &amp;&amp; (n.uvBuffer.destroy(), n.uvBuffer = null), n.vao &amp;&amp; (n.vao.destroy(), n.vao = null))
                        }
                        this._glDatas = null, t.prototype.destroy.call(this, e)
                    }, s(e, [{
                        key: "texture",
                        get: function() {
                            return this._texture
                        },
                        set: function(t) {
                            this._texture !== t &amp;&amp; (this._texture = t, t &amp;&amp; (t.baseTexture.hasLoaded ? this._onTextureUpdate() : t.once("update", this._onTextureUpdate, this)))
                        }
                    }, {
                        key: "tint",
                        get: function() {
                            return a.utils.rgb2hex(this.tintRgb)
                        },
                        set: function(t) {
                            this.tintRgb = a.utils.hex2rgb(t, this.tintRgb)
                        }
                    }]), e
                }(a.Container);
            r.default = c, c.DRAW_MODES = {
                TRIANGLE_MESH: 0,
                TRIANGLES: 1
            }
        }, {
            "../core": 65,
            "../core/textures/Texture": 115
        }],
        167: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function i(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function o(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var s = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                a = 10,
                u = function(t) {
                    function e(r, o, s, u, h) {
                        n(this, e);
                        var l = i(this, t.call(this, r, 4, 4));
                        return l._origWidth = r.orig.width, l._origHeight = r.orig.height, l._width = l._origWidth, l._height = l._origHeight, l._leftWidth = void 0 !== o ? o : a, l._rightWidth = void 0 !== u ? u : a, l._topHeight = void 0 !== s ? s : a, l._bottomHeight = void 0 !== h ? h : a, l.refresh(!0), l
                    }
                    return o(e, t), e.prototype.updateHorizontalVertices = function() {
                        var t = this.vertices,
                            e = this._topHeight + this._bottomHeight,
                            r = this._height &gt; e ? 1 : this._height / e;
                        t[9] = t[11] = t[13] = t[15] = this._topHeight * r, t[17] = t[19] = t[21] = t[23] = this._height - this._bottomHeight * r, t[25] = t[27] = t[29] = t[31] = this._height
                    }, e.prototype.updateVerticalVertices = function() {
                        var t = this.vertices,
                            e = this._leftWidth + this._rightWidth,
                            r = this._width &gt; e ? 1 : this._width / e;
                        t[2] = t[10] = t[18] = t[26] = this._leftWidth * r, t[4] = t[12] = t[20] = t[28] = this._width - this._rightWidth * r, t[6] = t[14] = t[22] = t[30] = this._width
                    }, e.prototype._renderCanvas = function(t) {
                        var e = t.context;
                        e.globalAlpha = this.worldAlpha, t.setBlendMode(this.blendMode);
                        var r = this.worldTransform,
                            n = t.resolution;
                        t.roundPixels ? e.setTransform(r.a * n, r.b * n, r.c * n, r.d * n, r.tx * n | 0, r.ty * n | 0) : e.setTransform(r.a * n, r.b * n, r.c * n, r.d * n, r.tx * n, r.ty * n);
                        var i = this._texture.baseTexture,
                            o = i.source,
                            s = i.width * i.resolution,
                            a = i.height * i.resolution;
                        this.drawSegment(e, o, s, a, 0, 1, 10, 11), this.drawSegment(e, o, s, a, 2, 3, 12, 13), this.drawSegment(e, o, s, a, 4, 5, 14, 15), this.drawSegment(e, o, s, a, 8, 9, 18, 19), this.drawSegment(e, o, s, a, 10, 11, 20, 21), this.drawSegment(e, o, s, a, 12, 13, 22, 23), this.drawSegment(e, o, s, a, 16, 17, 26, 27), this.drawSegment(e, o, s, a, 18, 19, 28, 29), this.drawSegment(e, o, s, a, 20, 21, 30, 31)
                    }, e.prototype.drawSegment = function(t, e, r, n, i, o, s, a) {
                        var u = this.uvs,
                            h = this.vertices,
                            l = (u[s] - u[i]) * r,
                            c = (u[a] - u[o]) * n,
                            d = h[s] - h[i],
                            f = h[a] - h[o];
                        l &lt; 1 &amp;&amp; (l = 1), c &lt; 1 &amp;&amp; (c = 1), d &lt; 1 &amp;&amp; (d = 1), f &lt; 1 &amp;&amp; (f = 1), t.drawImage(e, u[i] * r, u[o] * n, l, c, h[i], h[o], d, f)
                    }, e.prototype._refresh = function() {
                        t.prototype._refresh.call(this);
                        var e = this.uvs,
                            r = this._texture;
                        this._origWidth = r.orig.width, this._origHeight = r.orig.height;
                        var n = 1 / this._origWidth,
                            i = 1 / this._origHeight;
                        e[0] = e[8] = e[16] = e[24] = 0, e[1] = e[3] = e[5] = e[7] = 0, e[6] = e[14] = e[22] = e[30] = 1, e[25] = e[27] = e[29] = e[31] = 1, e[2] = e[10] = e[18] = e[26] = n * this._leftWidth, e[4] = e[12] = e[20] = e[28] = 1 - n * this._rightWidth, e[9] = e[11] = e[13] = e[15] = i * this._topHeight, e[17] = e[19] = e[21] = e[23] = 1 - i * this._bottomHeight, this.updateHorizontalVertices(), this.updateVerticalVertices(), this.dirty++, this.multiplyUvs()
                    }, s(e, [{
                        key: "width",
                        get: function() {
                            return this._width
                        },
                        set: function(t) {
                            this._width = t, this._refresh()
                        }
                    }, {
                        key: "height",
                        get: function() {
                            return this._height
                        },
                        set: function(t) {
                            this._height = t, this._refresh()
                        }
                    }, {
                        key: "leftWidth",
                        get: function() {
                            return this._leftWidth
                        },
                        set: function(t) {
                            this._leftWidth = t, this._refresh()
                        }
                    }, {
                        key: "rightWidth",
                        get: function() {
                            return this._rightWidth
                        },
                        set: function(t) {
                            this._rightWidth = t, this._refresh()
                        }
                    }, {
                        key: "topHeight",
                        get: function() {
                            return this._topHeight
                        },
                        set: function(t) {
                            this._topHeight = t, this._refresh()
                        }
                    }, {
                        key: "bottomHeight",
                        get: function() {
                            return this._bottomHeight
                        },
                        set: function(t) {
                            this._bottomHeight = t, this._refresh()
                        }
                    }]), e
                }(function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("./Plane")).default);
            r.default = u
        }, {
            "./Plane": 168
        }],
        168: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function i(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function o(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var s = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("./Mesh")),
                a = function(t) {
                    function e(r, o, a) {
                        n(this, e);
                        var u = i(this, t.call(this, r));
                        return u._ready = !0, u.verticesX = o || 10, u.verticesY = a || 10, u.drawMode = s.default.DRAW_MODES.TRIANGLES, u.refresh(), u
                    }
                    return o(e, t), e.prototype._refresh = function() {
                        for (var t = this._texture, e = this.verticesX * this.verticesY, r = [], n = [], i = [], o = [], s = this.verticesX - 1, a = this.verticesY - 1, u = t.width / s, h = t.height / a, l = 0; l &lt; e; l++) {
                            var c = l % this.verticesX,
                                d = l / this.verticesX | 0;
                            r.push(c * u, d * h), i.push(c / s, d / a)
                        }
                        for (var f = s * a, p = 0; p &lt; f; p++) {
                            var v = p % s,
                                g = p / s | 0,
                                y = g * this.verticesX + v,
                                m = g * this.verticesX + v + 1,
                                _ = (g + 1) * this.verticesX + v,
                                b = (g + 1) * this.verticesX + v + 1;
                            o.push(y, m, _), o.push(m, b, _)
                        }
                        this.vertices = new Float32Array(r), this.uvs = new Float32Array(i), this.colors = new Float32Array(n), this.indices = new Uint16Array(o), this.dirty++, this.indexDirty++, this.multiplyUvs()
                    }, e.prototype._onTextureUpdate = function() {
                        s.default.prototype._onTextureUpdate.call(this), this._ready &amp;&amp; this.refresh()
                    }, e
                }(s.default);
            r.default = a
        }, {
            "./Mesh": 166
        }],
        169: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function i(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function o(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var s = function(t) {
                function e(r, o) {
                    n(this, e);
                    var s = i(this, t.call(this, r));
                    return s.points = o, s.vertices = new Float32Array(4 * o.length), s.uvs = new Float32Array(4 * o.length), s.colors = new Float32Array(2 * o.length), s.indices = new Uint16Array(2 * o.length), s.autoUpdate = !0, s.refresh(), s
                }
                return o(e, t), e.prototype._refresh = function() {
                    var t = this.points;
                    if (!(t.length &lt; 1) &amp;&amp; this._texture._uvs) {
                        this.vertices.length / 4 !== t.length &amp;&amp; (this.vertices = new Float32Array(4 * t.length), this.uvs = new Float32Array(4 * t.length), this.colors = new Float32Array(2 * t.length), this.indices = new Uint16Array(2 * t.length));
                        var e = this.uvs,
                            r = this.indices,
                            n = this.colors;
                        e[0] = 0, e[1] = 0, e[2] = 0, e[3] = 1, n[0] = 1, n[1] = 1, r[0] = 0, r[1] = 1;
                        for (var i = t.length, o = 1; o &lt; i; o++) {
                            var s = 4 * o,
                                a = o / (i - 1);
                            e[s] = a, e[s + 1] = 0, e[s + 2] = a, e[s + 3] = 1, n[s = 2 * o] = 1, n[s + 1] = 1, r[s = 2 * o] = s, r[s + 1] = s + 1
                        }
                        this.dirty++, this.indexDirty++, this.multiplyUvs(), this.refreshVertices()
                    }
                }, e.prototype.refreshVertices = function() {
                    var t = this.points;
                    if (!(t.length &lt; 1))
                        for (var e = t[0], r = void 0, n = 0, i = 0, o = this.vertices, s = t.length, a = 0; a &lt; s; a++) {
                            var u = t[a],
                                h = 4 * a;
                            i = -((r = a &lt; t.length - 1 ? t[a + 1] : u).x - e.x), n = r.y - e.y;
                            var l = 10 * (1 - a / (s - 1));
                            l &gt; 1 &amp;&amp; (l = 1);
                            var c = Math.sqrt(n * n + i * i),
                                d = this._texture.height / 2;
                            n /= c, i /= c, n *= d, i *= d, o[h] = u.x + n, o[h + 1] = u.y + i, o[h + 2] = u.x - n, o[h + 3] = u.y - i, e = u
                        }
                }, e.prototype.updateTransform = function() {
                    this.autoUpdate &amp;&amp; this.refreshVertices(), this.containerUpdateTransform()
                }, e
            }(function(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }(t("./Mesh")).default);
            r.default = s
        }, {
            "./Mesh": 166
        }],
        170: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../../core")),
                o = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("../Mesh")),
                s = function() {
                    function t(e) {
                        n(this, t), this.renderer = e
                    }
                    return t.prototype.render = function(t) {
                        var e = this.renderer,
                            r = e.context,
                            n = t.worldTransform,
                            i = e.resolution;
                        e.roundPixels ? r.setTransform(n.a * i, n.b * i, n.c * i, n.d * i, n.tx * i | 0, n.ty * i | 0) : r.setTransform(n.a * i, n.b * i, n.c * i, n.d * i, n.tx * i, n.ty * i), e.context.globalAlpha = t.worldAlpha, e.setBlendMode(t.blendMode), t.drawMode === o.default.DRAW_MODES.TRIANGLE_MESH ? this._renderTriangleMesh(t) : this._renderTriangles(t)
                    }, t.prototype._renderTriangleMesh = function(t) {
                        for (var e = t.vertices.length / 2, r = 0; r &lt; e - 2; r++) {
                            var n = 2 * r;
                            this._renderDrawTriangle(t, n, n + 2, n + 4)
                        }
                    }, t.prototype._renderTriangles = function(t) {
                        for (var e = t.indices, r = e.length, n = 0; n &lt; r; n += 3) {
                            var i = 2 * e[n],
                                o = 2 * e[n + 1],
                                s = 2 * e[n + 2];
                            this._renderDrawTriangle(t, i, o, s)
                        }
                    }, t.prototype._renderDrawTriangle = function(t, e, r, n) {
                        var i = this.renderer.context,
                            o = t.uvs,
                            s = t.vertices,
                            a = t._texture;
                        if (a.valid) {
                            var u = a.baseTexture,
                                h = u.source,
                                l = u.width,
                                c = u.height,
                                d = void 0,
                                f = void 0,
                                p = void 0,
                                v = void 0,
                                g = void 0,
                                y = void 0;
                            if (t.uploadUvTransform) {
                                var m = t._uvTransform.mapCoord;
                                d = (o[e] * m.a + o[e + 1] * m.c + m.tx) * u.width, f = (o[r] * m.a + o[r + 1] * m.c + m.tx) * u.width, p = (o[n] * m.a + o[n + 1] * m.c + m.tx) * u.width, v = (o[e] * m.b + o[e + 1] * m.d + m.ty) * u.height, g = (o[r] * m.b + o[r + 1] * m.d + m.ty) * u.height, y = (o[n] * m.b + o[n + 1] * m.d + m.ty) * u.height
                            } else d = o[e] * u.width, f = o[r] * u.width, p = o[n] * u.width, v = o[e + 1] * u.height, g = o[r + 1] * u.height, y = o[n + 1] * u.height;
                            var _ = s[e],
                                b = s[r],
                                x = s[n],
                                T = s[e + 1],
                                w = s[r + 1],
                                E = s[n + 1],
                                S = t.canvasPadding / this.renderer.resolution;
                            if (S &gt; 0) {
                                var O = S / Math.abs(t.worldTransform.a),
                                    M = S / Math.abs(t.worldTransform.d),
                                    P = (_ + b + x) / 3,
                                    C = (T + w + E) / 3,
                                    R = _ - P,
                                    A = T - C,
                                    I = Math.sqrt(R * R + A * A);
                                _ = P + R / I * (I + O), T = C + A / I * (I + M), A = w - C, b = P + (R = b - P) / (I = Math.sqrt(R * R + A * A)) * (I + O), w = C + A / I * (I + M), A = E - C, x = P + (R = x - P) / (I = Math.sqrt(R * R + A * A)) * (I + O), E = C + A / I * (I + M)
                            }
                            i.save(), i.beginPath(), i.moveTo(_, T), i.lineTo(b, w), i.lineTo(x, E), i.closePath(), i.clip();
                            var D = d * g + v * p + f * y - g * p - v * f - d * y,
                                L = _ * g + v * x + b * y - g * x - v * b - _ * y,
                                N = d * b + _ * p + f * x - b * p - _ * f - d * x,
                                B = d * g * x + v * b * p + _ * f * y - _ * g * p - v * f * x - d * b * y,
                                k = T * g + v * E + w * y - g * E - v * w - T * y,
                                F = d * w + T * p + f * E - w * p - T * f - d * E,
                                j = d * g * E + v * w * p + T * f * y - T * g * p - v * f * E - d * w * y;
                            i.transform(L / D, k / D, N / D, F / D, B / D, j / D), i.drawImage(h, 0, 0, l * u.resolution, c * u.resolution, 0, 0, l, c), i.restore(), this.renderer.invalidateBlendMode()
                        }
                    }, t.prototype.renderMeshFlat = function(t) {
                        var e = this.renderer.context,
                            r = t.vertices,
                            n = r.length / 2;
                        e.beginPath();
                        for (var i = 1; i &lt; n - 2; ++i) {
                            var o = 2 * i,
                                s = r[o],
                                a = r[o + 1],
                                u = r[o + 2],
                                h = r[o + 3],
                                l = r[o + 4],
                                c = r[o + 5];
                            e.moveTo(s, a), e.lineTo(u, h), e.lineTo(l, c)
                        }
                        e.fillStyle = "#FF0000", e.fill(), e.closePath()
                    }, t.prototype.destroy = function() {
                        this.renderer = null
                    }, t
                }();
            r.default = s, i.CanvasRenderer.registerPlugin("mesh", s)
        }, {
            "../../core": 65,
            "../Mesh": 166
        }],
        171: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }
            r.__esModule = !0;
            var i = t("./Mesh");
            Object.defineProperty(r, "Mesh", {
                enumerable: !0,
                get: function() {
                    return n(i).default
                }
            });
            var o = t("./webgl/MeshRenderer");
            Object.defineProperty(r, "MeshRenderer", {
                enumerable: !0,
                get: function() {
                    return n(o).default
                }
            });
            var s = t("./canvas/CanvasMeshRenderer");
            Object.defineProperty(r, "CanvasMeshRenderer", {
                enumerable: !0,
                get: function() {
                    return n(s).default
                }
            });
            var a = t("./Plane");
            Object.defineProperty(r, "Plane", {
                enumerable: !0,
                get: function() {
                    return n(a).default
                }
            });
            var u = t("./NineSlicePlane");
            Object.defineProperty(r, "NineSlicePlane", {
                enumerable: !0,
                get: function() {
                    return n(u).default
                }
            });
            var h = t("./Rope");
            Object.defineProperty(r, "Rope", {
                enumerable: !0,
                get: function() {
                    return n(h).default
                }
            })
        }, {
            "./Mesh": 166,
            "./NineSlicePlane": 167,
            "./Plane": 168,
            "./Rope": 169,
            "./canvas/CanvasMeshRenderer": 170,
            "./webgl/MeshRenderer": 172
        }],
        172: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function o(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function s(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var a = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../../core")),
                u = n(t("pixi-gl-core")),
                h = n(t("../Mesh")),
                l = (t("path"), a.Matrix.IDENTITY),
                c = function(t) {
                    function e(r) {
                        i(this, e);
                        var n = o(this, t.call(this, r));
                        return n.shader = null, n
                    }
                    return s(e, t), e.prototype.onContextChange = function() {
                        var t = this.renderer.gl;
                        this.shader = new a.Shader(t, "attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\nuniform mat3 translationMatrix;\nuniform mat3 uTransform;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void)\n{\n    gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n\n    vTextureCoord = (uTransform * vec3(aTextureCoord, 1.0)).xy;\n}\n", "varying vec2 vTextureCoord;\nuniform vec4 uColor;\n\nuniform sampler2D uSampler;\n\nvoid main(void)\n{\n    gl_FragColor = texture2D(uSampler, vTextureCoord) * uColor;\n}\n")
                    }, e.prototype.render = function(t) {
                        var e = this.renderer,
                            r = e.gl,
                            n = t._texture;
                        if (n.valid) {
                            var i = t._glDatas[e.CONTEXT_UID];
                            i || (e.bindVao(null), (i = {
                                shader: this.shader,
                                vertexBuffer: u.default.GLBuffer.createVertexBuffer(r, t.vertices, r.STREAM_DRAW),
                                uvBuffer: u.default.GLBuffer.createVertexBuffer(r, t.uvs, r.STREAM_DRAW),
                                indexBuffer: u.default.GLBuffer.createIndexBuffer(r, t.indices, r.STATIC_DRAW),
                                vao: null,
                                dirty: t.dirty,
                                indexDirty: t.indexDirty,
                                vertexDirty: t.vertexDirty
                            }).vao = new u.default.VertexArrayObject(r).addIndex(i.indexBuffer).addAttribute(i.vertexBuffer, i.shader.attributes.aVertexPosition, r.FLOAT, !1, 8, 0).addAttribute(i.uvBuffer, i.shader.attributes.aTextureCoord, r.FLOAT, !1, 8, 0), t._glDatas[e.CONTEXT_UID] = i), e.bindVao(i.vao), t.dirty !== i.dirty &amp;&amp; (i.dirty = t.dirty, i.uvBuffer.upload(t.uvs)), t.indexDirty !== i.indexDirty &amp;&amp; (i.indexDirty = t.indexDirty, i.indexBuffer.upload(t.indices)), t.vertexDirty !== i.vertexDirty &amp;&amp; (i.vertexDirty = t.vertexDirty, i.vertexBuffer.upload(t.vertices)), e.bindShader(i.shader), i.shader.uniforms.uSampler = e.bindTexture(n), e.state.setBlendMode(a.utils.correctBlendMode(t.blendMode, n.baseTexture.premultipliedAlpha)), i.shader.uniforms.uTransform &amp;&amp; (t.uploadUvTransform ? i.shader.uniforms.uTransform = t._uvTransform.mapCoord.toArray(!0) : i.shader.uniforms.uTransform = l.toArray(!0)), i.shader.uniforms.translationMatrix = t.worldTransform.toArray(!0), i.shader.uniforms.uColor = a.utils.premultiplyRgba(t.tintRgb, t.worldAlpha, i.shader.uniforms.uColor, n.baseTexture.premultipliedAlpha);
                            var o = t.drawMode === h.default.DRAW_MODES.TRIANGLE_MESH ? r.TRIANGLE_STRIP : r.TRIANGLES;
                            i.vao.draw(o, t.indices.length, 0)
                        }
                    }, e
                }(a.ObjectRenderer);
            r.default = c, a.WebGLRenderer.registerPlugin("mesh", c)
        }, {
            "../../core": 65,
            "../Mesh": 166,
            path: 8,
            "pixi-gl-core": 15
        }],
        173: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function i(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function o(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var s = function() {
                    function t(t, e) {
                        for (var r = 0; r &lt; e.length; r++) {
                            var n = e[r];
                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n &amp;&amp; (n.writable = !0), Object.defineProperty(t, n.key, n)
                        }
                    }
                    return function(e, r, n) {
                        return r &amp;&amp; t(e.prototype, r), n &amp;&amp; t(e, n), e
                    }
                }(),
                a = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../core")),
                u = t("../core/utils"),
                h = function(t) {
                    function e() {
                        var r = arguments.length &gt; 0 &amp;&amp; void 0 !== arguments[0] ? arguments[0] : 1500,
                            o = arguments[1],
                            s = arguments.length &gt; 2 &amp;&amp; void 0 !== arguments[2] ? arguments[2] : 16384,
                            u = arguments.length &gt; 3 &amp;&amp; void 0 !== arguments[3] &amp;&amp; arguments[3];
                        n(this, e);
                        var h = i(this, t.call(this));
                        return s &gt; 16384 &amp;&amp; (s = 16384), s &gt; r &amp;&amp; (s = r), h._properties = [!1, !0, !1, !1, !1], h._maxSize = r, h._batchSize = s, h._glBuffers = {}, h._bufferUpdateIDs = [], h._updateID = 0, h.interactiveChildren = !1, h.blendMode = a.BLEND_MODES.NORMAL, h.autoResize = u, h.roundPixels = !0, h.baseTexture = null, h.setProperties(o), h._tint = 0, h.tintRgb = new Float32Array(4), h.tint = 16777215, h
                    }
                    return o(e, t), e.prototype.setProperties = function(t) {
                        t &amp;&amp; (this._properties[0] = "vertices" in t || "scale" in t ? !!t.vertices || !!t.scale : this._properties[0], this._properties[1] = "position" in t ? !!t.position : this._properties[1], this._properties[2] = "rotation" in t ? !!t.rotation : this._properties[2], this._properties[3] = "uvs" in t ? !!t.uvs : this._properties[3], this._properties[4] = "tint" in t || "alpha" in t ? !!t.tint || !!t.alpha : this._properties[4])
                    }, e.prototype.updateTransform = function() {
                        this.displayObjectUpdateTransform()
                    }, e.prototype.renderWebGL = function(t) {
                        var e = this;
                        this.visible &amp;&amp; !(this.worldAlpha &lt;= 0) &amp;&amp; this.children.length &amp;&amp; this.renderable &amp;&amp; (this.baseTexture || (this.baseTexture = this.children[0]._texture.baseTexture, this.baseTexture.hasLoaded || this.baseTexture.once("update", function() {
                            return e.onChildrenChange(0)
                        })), t.setObjectRenderer(t.plugins.particle), t.plugins.particle.render(this))
                    }, e.prototype.onChildrenChange = function(t) {
                        for (var e = Math.floor(t / this._batchSize); this._bufferUpdateIDs.length &lt; e;) this._bufferUpdateIDs.push(0);
                        this._bufferUpdateIDs[e] = ++this._updateID
                    }, e.prototype.renderCanvas = function(t) {
                        if (this.visible &amp;&amp; !(this.worldAlpha &lt;= 0) &amp;&amp; this.children.length &amp;&amp; this.renderable) {
                            var e = t.context,
                                r = this.worldTransform,
                                n = !0,
                                i = 0,
                                o = 0,
                                s = 0,
                                a = 0;
                            t.setBlendMode(this.blendMode), e.globalAlpha = this.worldAlpha, this.displayObjectUpdateTransform();
                            for (var u = 0; u &lt; this.children.length; ++u) {
                                var h = this.children[u];
                                if (h.visible) {
                                    var l = h._texture.frame;
                                    if (e.globalAlpha = this.worldAlpha * h.alpha, h.rotation % (2 * Math.PI) == 0) n &amp;&amp; (e.setTransform(r.a, r.b, r.c, r.d, r.tx * t.resolution, r.ty * t.resolution), n = !1), i = h.anchor.x * (-l.width * h.scale.x) + h.position.x + .5, o = h.anchor.y * (-l.height * h.scale.y) + h.position.y + .5, s = l.width * h.scale.x, a = l.height * h.scale.y;
                                    else {
                                        n || (n = !0), h.displayObjectUpdateTransform();
                                        var c = h.worldTransform;
                                        t.roundPixels ? e.setTransform(c.a, c.b, c.c, c.d, c.tx * t.resolution | 0, c.ty * t.resolution | 0) : e.setTransform(c.a, c.b, c.c, c.d, c.tx * t.resolution, c.ty * t.resolution), i = h.anchor.x * -l.width + .5, o = h.anchor.y * -l.height + .5, s = l.width, a = l.height
                                    }
                                    var d = h._texture.baseTexture.resolution;
                                    e.drawImage(h._texture.baseTexture.source, l.x * d, l.y * d, l.width * d, l.height * d, i * t.resolution, o * t.resolution, s * t.resolution, a * t.resolution)
                                }
                            }
                        }
                    }, e.prototype.destroy = function(e) {
                        if (t.prototype.destroy.call(this, e), this._buffers)
                            for (var r = 0; r &lt; this._buffers.length; ++r) this._buffers[r].destroy();
                        this._properties = null, this._buffers = null, this._bufferUpdateIDs = null
                    }, s(e, [{
                        key: "tint",
                        get: function() {
                            return this._tint
                        },
                        set: function(t) {
                            this._tint = t, (0, u.hex2rgb)(t, this.tintRgb)
                        }
                    }]), e
                }(a.Container);
            r.default = h
        }, {
            "../core": 65,
            "../core/utils": 125
        }],
        174: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }
            r.__esModule = !0;
            var i = t("./ParticleContainer");
            Object.defineProperty(r, "ParticleContainer", {
                enumerable: !0,
                get: function() {
                    return n(i).default
                }
            });
            var o = t("./webgl/ParticleRenderer");
            Object.defineProperty(r, "ParticleRenderer", {
                enumerable: !0,
                get: function() {
                    return n(o).default
                }
            })
        }, {
            "./ParticleContainer": 173,
            "./webgl/ParticleRenderer": 176
        }],
        175: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var o = n(t("pixi-gl-core")),
                s = n(t("../../core/utils/createIndicesForQuads")),
                a = function() {
                    function t(e, r, n, o) {
                        i(this, t), this.gl = e, this.size = o, this.dynamicProperties = [], this.staticProperties = [];
                        for (var s = 0; s &lt; r.length; ++s) {
                            var a = r[s];
                            a = {
                                attribute: a.attribute,
                                size: a.size,
                                uploadFunction: a.uploadFunction,
                                unsignedByte: a.unsignedByte,
                                offset: a.offset
                            }, n[s] ? this.dynamicProperties.push(a) : this.staticProperties.push(a)
                        }
                        this.staticStride = 0, this.staticBuffer = null, this.staticData = null, this.staticDataUint32 = null, this.dynamicStride = 0, this.dynamicBuffer = null, this.dynamicData = null, this.dynamicDataUint32 = null, this._updateID = 0, this.initBuffers()
                    }
                    return t.prototype.initBuffers = function() {
                        var t = this.gl,
                            e = 0;
                        this.indices = (0, s.default)(this.size), this.indexBuffer = o.default.GLBuffer.createIndexBuffer(t, this.indices, t.STATIC_DRAW), this.dynamicStride = 0;
                        for (var r = 0; r &lt; this.dynamicProperties.length; ++r) {
                            var n = this.dynamicProperties[r];
                            n.offset = e, e += n.size, this.dynamicStride += n.size
                        }
                        var i = new ArrayBuffer(this.size * this.dynamicStride * 4 * 4);
                        this.dynamicData = new Float32Array(i), this.dynamicDataUint32 = new Uint32Array(i), this.dynamicBuffer = o.default.GLBuffer.createVertexBuffer(t, i, t.STREAM_DRAW);
                        var a = 0;
                        this.staticStride = 0;
                        for (var u = 0; u &lt; this.staticProperties.length; ++u) {
                            var h = this.staticProperties[u];
                            h.offset = a, a += h.size, this.staticStride += h.size
                        }
                        var l = new ArrayBuffer(this.size * this.staticStride * 4 * 4);
                        this.staticData = new Float32Array(l), this.staticDataUint32 = new Uint32Array(l), this.staticBuffer = o.default.GLBuffer.createVertexBuffer(t, l, t.STATIC_DRAW), this.vao = new o.default.VertexArrayObject(t).addIndex(this.indexBuffer);
                        for (var c = 0; c &lt; this.dynamicProperties.length; ++c) {
                            var d = this.dynamicProperties[c];
                            d.unsignedByte ? this.vao.addAttribute(this.dynamicBuffer, d.attribute, t.UNSIGNED_BYTE, !0, 4 * this.dynamicStride, 4 * d.offset) : this.vao.addAttribute(this.dynamicBuffer, d.attribute, t.FLOAT, !1, 4 * this.dynamicStride, 4 * d.offset)
                        }
                        for (var f = 0; f &lt; this.staticProperties.length; ++f) {
                            var p = this.staticProperties[f];
                            p.unsignedByte ? this.vao.addAttribute(this.staticBuffer, p.attribute, t.UNSIGNED_BYTE, !0, 4 * this.staticStride, 4 * p.offset) : this.vao.addAttribute(this.staticBuffer, p.attribute, t.FLOAT, !1, 4 * this.staticStride, 4 * p.offset)
                        }
                    }, t.prototype.uploadDynamic = function(t, e, r) {
                        for (var n = 0; n &lt; this.dynamicProperties.length; n++) {
                            var i = this.dynamicProperties[n];
                            i.uploadFunction(t, e, r, i.unsignedByte ? this.dynamicDataUint32 : this.dynamicData, this.dynamicStride, i.offset)
                        }
                        this.dynamicBuffer.upload()
                    }, t.prototype.uploadStatic = function(t, e, r) {
                        for (var n = 0; n &lt; this.staticProperties.length; n++) {
                            var i = this.staticProperties[n];
                            i.uploadFunction(t, e, r, i.unsignedByte ? this.staticDataUint32 : this.staticData, this.staticStride, i.offset)
                        }
                        this.staticBuffer.upload()
                    }, t.prototype.destroy = function() {
                        this.dynamicProperties = null, this.dynamicBuffer.destroy(), this.dynamicBuffer = null, this.dynamicData = null, this.dynamicDataUint32 = null, this.staticProperties = null, this.staticBuffer.destroy(), this.staticBuffer = null, this.staticData = null, this.staticDataUint32 = null
                    }, t
                }();
            r.default = a
        }, {
            "../../core/utils/createIndicesForQuads": 123,
            "pixi-gl-core": 15
        }],
        176: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }

            function i(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function o(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function s(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var a = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../../core")),
                u = n(t("./ParticleShader")),
                h = n(t("./ParticleBuffer")),
                l = t("../../core/utils"),
                c = function(t) {
                    function e(r) {
                        i(this, e);
                        var n = o(this, t.call(this, r));
                        return n.shader = null, n.indexBuffer = null, n.properties = null, n.tempMatrix = new a.Matrix, n.CONTEXT_UID = 0, n
                    }
                    return s(e, t), e.prototype.onContextChange = function() {
                        var t = this.renderer.gl;
                        this.CONTEXT_UID = this.renderer.CONTEXT_UID, this.shader = new u.default(t), this.properties = [{
                            attribute: this.shader.attributes.aVertexPosition,
                            size: 2,
                            uploadFunction: this.uploadVertices,
                            offset: 0
                        }, {
                            attribute: this.shader.attributes.aPositionCoord,
                            size: 2,
                            uploadFunction: this.uploadPosition,
                            offset: 0
                        }, {
                            attribute: this.shader.attributes.aRotation,
                            size: 1,
                            uploadFunction: this.uploadRotation,
                            offset: 0
                        }, {
                            attribute: this.shader.attributes.aTextureCoord,
                            size: 2,
                            uploadFunction: this.uploadUvs,
                            offset: 0
                        }, {
                            attribute: this.shader.attributes.aColor,
                            size: 1,
                            unsignedByte: !0,
                            uploadFunction: this.uploadTint,
                            offset: 0
                        }]
                    }, e.prototype.start = function() {
                        this.renderer.bindShader(this.shader)
                    }, e.prototype.render = function(t) {
                        var e = t.children,
                            r = t._maxSize,
                            n = t._batchSize,
                            i = this.renderer,
                            o = e.length;
                        if (0 !== o) {
                            o &gt; r &amp;&amp; (o = r);
                            var s = t._glBuffers[i.CONTEXT_UID];
                            s || (s = t._glBuffers[i.CONTEXT_UID] = this.generateBuffers(t));
                            var u = e[0]._texture.baseTexture;
                            this.renderer.setBlendMode(a.utils.correctBlendMode(t.blendMode, u.premultipliedAlpha));
                            var h = i.gl,
                                l = t.worldTransform.copy(this.tempMatrix);
                            l.prepend(i._activeRenderTarget.projectionMatrix), this.shader.uniforms.projectionMatrix = l.toArray(!0), this.shader.uniforms.uColor = a.utils.premultiplyRgba(t.tintRgb, t.worldAlpha, this.shader.uniforms.uColor, u.premultipliedAlpha), this.shader.uniforms.uSampler = i.bindTexture(u);
                            for (var c = !1, d = 0, f = 0; d &lt; o; d += n, f += 1) {
                                var p = o - d;
                                if (p &gt; n &amp;&amp; (p = n), f &gt;= s.length) {
                                    if (!t.autoResize) break;
                                    s.push(this._generateOneMoreBuffer(t))
                                }
                                var v = s[f];
                                v.uploadDynamic(e, d, p);
                                var g = t._bufferUpdateIDs[f] || 0;
                                (c = c || v._updateID &lt; g) &amp;&amp; (v._updateID = t._updateID, v.uploadStatic(e, d, p)), i.bindVao(v.vao), v.vao.draw(h.TRIANGLES, 6 * p)
                            }
                        }
                    }, e.prototype.generateBuffers = function(t) {
                        for (var e = this.renderer.gl, r = [], n = t._maxSize, i = t._batchSize, o = t._properties, s = 0; s &lt; n; s += i) r.push(new h.default(e, this.properties, o, i));
                        return r
                    }, e.prototype._generateOneMoreBuffer = function(t) {
                        var e = this.renderer.gl,
                            r = t._batchSize,
                            n = t._properties;
                        return new h.default(e, this.properties, n, r)
                    }, e.prototype.uploadVertices = function(t, e, r, n, i, o) {
                        for (var s = 0, a = 0, u = 0, h = 0, l = 0; l &lt; r; ++l) {
                            var c = t[e + l],
                                d = c._texture,
                                f = c.scale.x,
                                p = c.scale.y,
                                v = d.trim,
                                g = d.orig;
                            v ? (s = (a = v.x - c.anchor.x * g.width) + v.width, u = (h = v.y - c.anchor.y * g.height) + v.height) : (s = g.width * (1 - c.anchor.x), a = g.width * -c.anchor.x, u = g.height * (1 - c.anchor.y), h = g.height * -c.anchor.y), n[o] = a * f, n[o + 1] = h * p, n[o + i] = s * f, n[o + i + 1] = h * p, n[o + 2 * i] = s * f, n[o + 2 * i + 1] = u * p, n[o + 3 * i] = a * f, n[o + 3 * i + 1] = u * p, o += 4 * i
                        }
                    }, e.prototype.uploadPosition = function(t, e, r, n, i, o) {
                        for (var s = 0; s &lt; r; s++) {
                            var a = t[e + s].position;
                            n[o] = a.x, n[o + 1] = a.y, n[o + i] = a.x, n[o + i + 1] = a.y, n[o + 2 * i] = a.x, n[o + 2 * i + 1] = a.y, n[o + 3 * i] = a.x, n[o + 3 * i + 1] = a.y, o += 4 * i
                        }
                    }, e.prototype.uploadRotation = function(t, e, r, n, i, o) {
                        for (var s = 0; s &lt; r; s++) {
                            var a = t[e + s].rotation;
                            n[o] = a, n[o + i] = a, n[o + 2 * i] = a, n[o + 3 * i] = a, o += 4 * i
                        }
                    }, e.prototype.uploadUvs = function(t, e, r, n, i, o) {
                        for (var s = 0; s &lt; r; ++s) {
                            var a = t[e + s]._texture._uvs;
                            a ? (n[o] = a.x0, n[o + 1] = a.y0, n[o + i] = a.x1, n[o + i + 1] = a.y1, n[o + 2 * i] = a.x2, n[o + 2 * i + 1] = a.y2, n[o + 3 * i] = a.x3, n[o + 3 * i + 1] = a.y3, o += 4 * i) : (n[o] = 0, n[o + 1] = 0, n[o + i] = 0, n[o + i + 1] = 0, n[o + 2 * i] = 0, n[o + 2 * i + 1] = 0, n[o + 3 * i] = 0, n[o + 3 * i + 1] = 0, o += 4 * i)
                        }
                    }, e.prototype.uploadTint = function(t, e, r, n, i, o) {
                        for (var s = 0; s &lt; r; ++s) {
                            var a = t[e + s],
                                u = a._texture.baseTexture.premultipliedAlpha,
                                h = a.alpha,
                                c = h &lt; 1 &amp;&amp; u ? (0, l.premultiplyTint)(a._tintRGB, h) : a._tintRGB + (255 * h &lt;&lt; 24);
                            n[o] = c, n[o + i] = c, n[o + 2 * i] = c, n[o + 3 * i] = c, o += 4 * i
                        }
                    }, e.prototype.destroy = function() {
                        this.renderer.gl &amp;&amp; this.renderer.gl.deleteBuffer(this.indexBuffer), t.prototype.destroy.call(this), this.shader.destroy(), this.indices = null, this.tempMatrix = null
                    }, e
                }(a.ObjectRenderer);
            r.default = c, a.WebGLRenderer.registerPlugin("particle", c)
        }, {
            "../../core": 65,
            "../../core/utils": 125,
            "./ParticleBuffer": 175,
            "./ParticleShader": 177
        }],
        177: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function i(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function o(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }
            r.__esModule = !0;
            var s = function(t) {
                function e(r) {
                    return n(this, e), i(this, t.call(this, r, ["attribute vec2 aVertexPosition;", "attribute vec2 aTextureCoord;", "attribute vec4 aColor;", "attribute vec2 aPositionCoord;", "attribute float aRotation;", "uniform mat3 projectionMatrix;", "uniform vec4 uColor;", "varying vec2 vTextureCoord;", "varying vec4 vColor;", "void main(void){", "   float x = (aVertexPosition.x) * cos(aRotation) - (aVertexPosition.y) * sin(aRotation);", "   float y = (aVertexPosition.x) * sin(aRotation) + (aVertexPosition.y) * cos(aRotation);", "   vec2 v = vec2(x, y);", "   v = v + aPositionCoord;", "   gl_Position = vec4((projectionMatrix * vec3(v, 1.0)).xy, 0.0, 1.0);", "   vTextureCoord = aTextureCoord;", "   vColor = aColor * uColor;", "}"].join("\n"), ["varying vec2 vTextureCoord;", "varying vec4 vColor;", "uniform sampler2D uSampler;", "void main(void){", "  vec4 color = texture2D(uSampler, vTextureCoord) * vColor;", "  gl_FragColor = color;", "}"].join("\n")))
                }
                return o(e, t), e
            }(function(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }(t("../../core/Shader")).default);
            r.default = s
        }, {
            "../../core/Shader": 44
        }],
        178: [function(t, e, r) {
            "use strict";
            Math.sign || (Math.sign = function(t) {
                return 0 === (t = Number(t)) || isNaN(t) ? t : t &gt; 0 ? 1 : -1
            })
        }, {}],
        179: [function(t, e, r) {
            "use strict";
            Number.isInteger || (Number.isInteger = function(t) {
                return "number" == typeof t &amp;&amp; isFinite(t) &amp;&amp; Math.floor(t) === t
            })
        }, {}],
        180: [function(t, e, r) {
            "use strict";
            var n = function(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }(t("object-assign"));
            Object.assign || (Object.assign = n.default)
        }, {
            "object-assign": 6
        }],
        181: [function(t, e, r) {
            "use strict";
            t("./Object.assign"), t("./requestAnimationFrame"), t("./Math.sign"), t("./Number.isInteger"), window.ArrayBuffer || (window.ArrayBuffer = Array), window.Float32Array || (window.Float32Array = Array), window.Uint32Array || (window.Uint32Array = Array), window.Uint16Array || (window.Uint16Array = Array)
        }, {
            "./Math.sign": 178,
            "./Number.isInteger": 179,
            "./Object.assign": 180,
            "./requestAnimationFrame": 182
        }],
        182: [function(t, e, r) {
            (function(t) {
                "use strict";
                if (Date.now &amp;&amp; Date.prototype.getTime || (Date.now = function() {
                        return (new Date).getTime()
                    }), !t.performance || !t.performance.now) {
                    var e = Date.now();
                    t.performance || (t.performance = {}), t.performance.now = function() {
                        return Date.now() - e
                    }
                }
                for (var r = Date.now(), n = ["ms", "moz", "webkit", "o"], i = 0; i &lt; n.length &amp;&amp; !t.requestAnimationFrame; ++i) {
                    var o = n[i];
                    t.requestAnimationFrame = t[o + "RequestAnimationFrame"], t.cancelAnimationFrame = t[o + "CancelAnimationFrame"] || t[o + "CancelRequestAnimationFrame"]
                }
                t.requestAnimationFrame || (t.requestAnimationFrame = function(t) {
                    if ("function" != typeof t) throw new TypeError(t + "is not a function");
                    var e = Date.now(),
                        n = 16 + r - e;
                    return n &lt; 0 &amp;&amp; (n = 0), r = e, setTimeout(function() {
                        r = Date.now(), t(performance.now())
                    }, n)
                }), t.cancelAnimationFrame || (t.cancelAnimationFrame = function(t) {
                    return clearTimeout(t)
                })
            }).call(this, "undefined" != typeof global ? global : "undefined" != typeof self ? self : "undefined" != typeof window ? window : {})
        }, {}],
        183: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function i(t, e) {
                var r = !1;
                if (t &amp;&amp; t._textures &amp;&amp; t._textures.length)
                    for (var n = 0; n &lt; t._textures.length; n++)
                        if (t._textures[n] instanceof c.Texture) {
                            var i = t._textures[n].baseTexture; - 1 === e.indexOf(i) &amp;&amp; (e.push(i), r = !0)
                        }
                return r
            }

            function o(t, e) {
                return t instanceof c.BaseTexture &amp;&amp; (-1 === e.indexOf(t) &amp;&amp; e.push(t), !0)
            }

            function s(t, e) {
                if (t._texture &amp;&amp; t._texture instanceof c.Texture) {
                    var r = t._texture.baseTexture;
                    return -1 === e.indexOf(r) &amp;&amp; e.push(r), !0
                }
                return !1
            }

            function a(t, e) {
                return e instanceof c.Text &amp;&amp; (e.updateText(!0), !0)
            }

            function u(t, e) {
                if (e instanceof c.TextStyle) {
                    var r = e.toFontString();
                    return c.TextMetrics.measureFont(r), !0
                }
                return !1
            }

            function h(t, e) {
                if (t instanceof c.Text) {
                    -1 === e.indexOf(t.style) &amp;&amp; e.push(t.style), -1 === e.indexOf(t) &amp;&amp; e.push(t);
                    var r = t._texture.baseTexture;
                    return -1 === e.indexOf(r) &amp;&amp; e.push(r), !0
                }
                return !1
            }

            function l(t, e) {
                return t instanceof c.TextStyle &amp;&amp; (-1 === e.indexOf(t) &amp;&amp; e.push(t), !0)
            }
            r.__esModule = !0;
            var c = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../core")),
                d = function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("./limiters/CountLimiter")),
                f = c.ticker.shared;
            c.settings.UPLOADS_PER_FRAME = 4;
            var p = function() {
                function t(e) {
                    var r = this;
                    n(this, t), this.limiter = new d.default(c.settings.UPLOADS_PER_FRAME), this.renderer = e, this.uploadHookHelper = null, this.queue = [], this.addHooks = [], this.uploadHooks = [], this.completes = [], this.ticking = !1, this.delayedTick = function() {
                        r.queue &amp;&amp; r.prepareItems()
                    }, this.registerFindHook(h), this.registerFindHook(l), this.registerFindHook(i), this.registerFindHook(o), this.registerFindHook(s), this.registerUploadHook(a), this.registerUploadHook(u)
                }
                return t.prototype.upload = function(t, e) {
                    "function" == typeof t &amp;&amp; (e = t, t = null), t &amp;&amp; this.add(t), this.queue.length ? (e &amp;&amp; this.completes.push(e), this.ticking || (this.ticking = !0, f.addOnce(this.tick, this, c.UPDATE_PRIORITY.UTILITY))) : e &amp;&amp; e()
                }, t.prototype.tick = function() {
                    setTimeout(this.delayedTick, 0)
                }, t.prototype.prepareItems = function() {
                    for (this.limiter.beginFrame(); this.queue.length &amp;&amp; this.limiter.allowedToUpload();) {
                        var t = this.queue[0],
                            e = !1;
                        if (t &amp;&amp; !t._destroyed)
                            for (var r = 0, n = this.uploadHooks.length; r &lt; n; r++)
                                if (this.uploadHooks[r](this.uploadHookHelper, t)) {
                                    this.queue.shift(), e = !0;
                                    break
                                }
                        e || this.queue.shift()
                    }
                    if (this.queue.length) f.addOnce(this.tick, this, c.UPDATE_PRIORITY.UTILITY);
                    else {
                        this.ticking = !1;
                        var i = this.completes.slice(0);
                        this.completes.length = 0;
                        for (var o = 0, s = i.length; o &lt; s; o++) i[o]()
                    }
                }, t.prototype.registerFindHook = function(t) {
                    return t &amp;&amp; this.addHooks.push(t), this
                }, t.prototype.registerUploadHook = function(t) {
                    return t &amp;&amp; this.uploadHooks.push(t), this
                }, t.prototype.add = function(t) {
                    for (var e = 0, r = this.addHooks.length; e &lt; r &amp;&amp; !this.addHooks[e](t, this.queue); e++);
                    if (t instanceof c.Container)
                        for (var n = t.children.length - 1; n &gt;= 0; n--) this.add(t.children[n]);
                    return this
                }, t.prototype.destroy = function() {
                    this.ticking &amp;&amp; f.remove(this.tick, this), this.ticking = !1, this.addHooks = null, this.uploadHooks = null, this.renderer = null, this.completes = null, this.queue = null, this.limiter = null, this.uploadHookHelper = null
                }, t
            }();
            r.default = p
        }, {
            "../core": 65,
            "./limiters/CountLimiter": 186
        }],
        184: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function i(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function o(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }

            function s(t, e) {
                if (e instanceof a.BaseTexture) {
                    var r = e.source,
                        n = 0 === r.width ? t.canvas.width : Math.min(t.canvas.width, r.width),
                        i = 0 === r.height ? t.canvas.height : Math.min(t.canvas.height, r.height);
                    return t.ctx.drawImage(r, 0, 0, n, i, 0, 0, t.canvas.width, t.canvas.height), !0
                }
                return !1
            }
            r.__esModule = !0;
            var a = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../../core")),
                u = 16,
                h = function(t) {
                    function e(r) {
                        n(this, e);
                        var o = i(this, t.call(this, r));
                        return o.uploadHookHelper = o, o.canvas = document.createElement("canvas"), o.canvas.width = u, o.canvas.height = u, o.ctx = o.canvas.getContext("2d"), o.registerUploadHook(s), o
                    }
                    return o(e, t), e.prototype.destroy = function() {
                        t.prototype.destroy.call(this), this.ctx = null, this.canvas = null
                    }, e
                }(function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("../BasePrepare")).default);
            r.default = h, a.CanvasRenderer.registerPlugin("prepare", h)
        }, {
            "../../core": 65,
            "../BasePrepare": 183
        }],
        185: [function(t, e, r) {
            "use strict";

            function n(t) {
                return t &amp;&amp; t.__esModule ? t : {
                    default: t
                }
            }
            r.__esModule = !0;
            var i = t("./webgl/WebGLPrepare");
            Object.defineProperty(r, "webgl", {
                enumerable: !0,
                get: function() {
                    return n(i).default
                }
            });
            var o = t("./canvas/CanvasPrepare");
            Object.defineProperty(r, "canvas", {
                enumerable: !0,
                get: function() {
                    return n(o).default
                }
            });
            var s = t("./BasePrepare");
            Object.defineProperty(r, "BasePrepare", {
                enumerable: !0,
                get: function() {
                    return n(s).default
                }
            });
            var a = t("./limiters/CountLimiter");
            Object.defineProperty(r, "CountLimiter", {
                enumerable: !0,
                get: function() {
                    return n(a).default
                }
            });
            var u = t("./limiters/TimeLimiter");
            Object.defineProperty(r, "TimeLimiter", {
                enumerable: !0,
                get: function() {
                    return n(u).default
                }
            })
        }, {
            "./BasePrepare": 183,
            "./canvas/CanvasPrepare": 184,
            "./limiters/CountLimiter": 186,
            "./limiters/TimeLimiter": 187,
            "./webgl/WebGLPrepare": 188
        }],
        186: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function() {
                function t(e) {
                    n(this, t), this.maxItemsPerFrame = e, this.itemsLeft = 0
                }
                return t.prototype.beginFrame = function() {
                    this.itemsLeft = this.maxItemsPerFrame
                }, t.prototype.allowedToUpload = function() {
                    return this.itemsLeft-- &gt; 0
                }, t
            }();
            r.default = i
        }, {}],
        187: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }
            r.__esModule = !0;
            var i = function() {
                function t(e) {
                    n(this, t), this.maxMilliseconds = e, this.frameStart = 0
                }
                return t.prototype.beginFrame = function() {
                    this.frameStart = Date.now()
                }, t.prototype.allowedToUpload = function() {
                    return Date.now() - this.frameStart &lt; this.maxMilliseconds
                }, t
            }();
            r.default = i
        }, {}],
        188: [function(t, e, r) {
            "use strict";

            function n(t, e) {
                if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
            }

            function i(t, e) {
                if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                return !e || "object" != typeof e &amp;&amp; "function" != typeof e ? t : e
            }

            function o(t, e) {
                if ("function" != typeof e &amp;&amp; null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
                t.prototype = Object.create(e &amp;&amp; e.prototype, {
                    constructor: {
                        value: t,
                        enumerable: !1,
                        writable: !0,
                        configurable: !0
                    }
                }), e &amp;&amp; (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
            }

            function s(t, e) {
                return e instanceof h.BaseTexture &amp;&amp; (e._glTextures[t.CONTEXT_UID] || t.textureManager.updateTexture(e), !0)
            }

            function a(t, e) {
                return e instanceof h.Graphics &amp;&amp; ((e.dirty || e.clearDirty || !e._webGL[t.plugins.graphics.CONTEXT_UID]) &amp;&amp; t.plugins.graphics.updateGraphics(e), !0)
            }

            function u(t, e) {
                return t instanceof h.Graphics &amp;&amp; (e.push(t), !0)
            }
            r.__esModule = !0;
            var h = function(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }(t("../../core")),
                l = function(t) {
                    function e(r) {
                        n(this, e);
                        var o = i(this, t.call(this, r));
                        return o.uploadHookHelper = o.renderer, o.registerFindHook(u), o.registerUploadHook(s), o.registerUploadHook(a), o
                    }
                    return o(e, t), e
                }(function(t) {
                    return t &amp;&amp; t.__esModule ? t : {
                        default: t
                    }
                }(t("../BasePrepare")).default);
            r.default = l, h.WebGLRenderer.registerPlugin("prepare", l)
        }, {
            "../../core": 65,
            "../BasePrepare": 183
        }],
        189: [function(t, e, r) {
            (function(e) {
                "use strict";

                function n(t) {
                    if (t &amp;&amp; t.__esModule) return t;
                    var e = {};
                    if (null != t)
                        for (var r in t) Object.prototype.hasOwnProperty.call(t, r) &amp;&amp; (e[r] = t[r]);
                    return e.default = t, e
                }
                r.__esModule = !0, r.loader = r.prepare = r.particles = r.mesh = r.loaders = r.interaction = r.filters = r.extras = r.extract = r.accessibility = void 0;
                var i = t("./polyfill");
                Object.keys(i).forEach(function(t) {
                    "default" !== t &amp;&amp; "__esModule" !== t &amp;&amp; Object.defineProperty(r, t, {
                        enumerable: !0,
                        get: function() {
                            return i[t]
                        }
                    })
                });
                var o = t("./core");
                Object.keys(o).forEach(function(t) {
                    "default" !== t &amp;&amp; "__esModule" !== t &amp;&amp; Object.defineProperty(r, t, {
                        enumerable: !0,
                        get: function() {
                            return o[t]
                        }
                    })
                });
                var s = function(t) {
                        return t &amp;&amp; t.__esModule ? t : {
                            default: t
                        }
                    }(t("./deprecation")),
                    a = n(t("./accessibility")),
                    u = n(t("./extract")),
                    h = n(t("./extras")),
                    l = n(t("./filters")),
                    c = n(t("./interaction")),
                    d = n(t("./loaders")),
                    f = n(t("./mesh")),
                    p = n(t("./particles")),
                    v = n(t("./prepare"));
                o.utils.mixins.performMixins();
                var g = d.shared || null;
                r.accessibility = a, r.extract = u, r.extras = h, r.filters = l, r.interaction = c, r.loaders = d, r.mesh = f, r.particles = p, r.prepare = v, r.loader = g, "function" == typeof s.default &amp;&amp; (0, s.default)(r), e.PIXI = r
            }).call(this, "undefined" != typeof global ? global : "undefined" != typeof self ? self : "undefined" != typeof window ? window : {})
        }, {
            "./accessibility": 42,
            "./core": 65,
            "./deprecation": 131,
            "./extract": 133,
            "./extras": 141,
            "./filters": 153,
            "./interaction": 159,
            "./loaders": 162,
            "./mesh": 171,
            "./particles": 174,
            "./polyfill": 181,
            "./prepare": 185
        }]
    }, {}, [189])(189)
});</pre></body></html>