@annotorious/react 3.0.0-rc.3 → 3.0.0-rc.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/annotorious-react.es10.js +1 -1
- package/dist/annotorious-react.es13.js +1 -1
- package/dist/annotorious-react.es14.js +1 -1
- package/dist/annotorious-react.es15.js +1 -1
- package/dist/annotorious-react.es18.js +1537 -1472
- package/dist/annotorious-react.es18.js.map +1 -1
- package/dist/annotorious-react.es19.js +7 -7
- package/dist/annotorious-react.es2.js.map +1 -1
- package/dist/annotorious-react.es20.js +1 -1
- package/dist/annotorious-react.es22.js +1 -1
- package/dist/annotorious-react.es24.js.map +1 -1
- package/dist/annotorious-react.es25.js +20131 -6
- package/dist/annotorious-react.es25.js.map +1 -1
- package/dist/annotorious-react.es26.js +31 -20661
- package/dist/annotorious-react.es26.js.map +1 -1
- package/dist/annotorious-react.es27.js +6 -32
- package/dist/annotorious-react.es27.js.map +1 -1
- package/dist/annotorious-react.es29.js.map +1 -1
- package/dist/annotorious-react.es30.js.map +1 -1
- package/dist/annotorious-react.es33.js +16 -17
- package/dist/annotorious-react.es33.js.map +1 -1
- package/dist/annotorious-react.es34.js +15 -25
- package/dist/annotorious-react.es34.js.map +1 -1
- package/dist/annotorious-react.es35.js +26 -15
- package/dist/annotorious-react.es35.js.map +1 -1
- package/dist/annotorious-react.es37.js.map +1 -1
- package/dist/annotorious-react.es38.js.map +1 -1
- package/dist/annotorious-react.es39.js.map +1 -1
- package/dist/annotorious-react.es40.js.map +1 -1
- package/dist/annotorious-react.es5.js +2 -2
- package/dist/annotorious-react.es8.js +50 -39
- package/dist/annotorious-react.es8.js.map +1 -1
- package/package.json +2 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"annotorious-react.es26.js","sources":["../../annotorious-openseadragon/dist/annotorious-openseadragon.es.js"],"sourcesContent":["import Ei from \"openseadragon\";\nvar Es = Object.prototype.hasOwnProperty;\nfunction nr(r, t) {\n var e, n;\n if (r === t)\n return !0;\n if (r && t && (e = r.constructor) === t.constructor) {\n if (e === Date)\n return r.getTime() === t.getTime();\n if (e === RegExp)\n return r.toString() === t.toString();\n if (e === Array) {\n if ((n = r.length) === t.length)\n for (; n-- && nr(r[n], t[n]); )\n ;\n return n === -1;\n }\n if (!e || typeof r == \"object\") {\n n = 0;\n for (e in r)\n if (Es.call(r, e) && ++n && !Es.call(t, e) || !(e in t) || !nr(r[e], t[e]))\n return !1;\n return Object.keys(t).length === n;\n }\n }\n return r !== r && t !== t;\n}\nfunction qt() {\n}\nfunction yf(r, t) {\n for (const e in t)\n r[e] = t[e];\n return r;\n}\nfunction Lh(r) {\n return r();\n}\nfunction Ts() {\n return /* @__PURE__ */ Object.create(null);\n}\nfunction ke(r) {\n r.forEach(Lh);\n}\nfunction jt(r) {\n return typeof r == \"function\";\n}\nfunction Ht(r, t) {\n return r != r ? t == t : r !== t || r && typeof r == \"object\" || typeof r == \"function\";\n}\nfunction bf(r) {\n return Object.keys(r).length === 0;\n}\nfunction xf(r, ...t) {\n if (r == null)\n return qt;\n const e = r.subscribe(...t);\n return e.unsubscribe ? () => e.unsubscribe() : e;\n}\nfunction ko(r, t, e) {\n r.$$.on_destroy.push(xf(t, e));\n}\nfunction Uh(r, t, e, n) {\n if (r) {\n const i = Gh(r, t, e, n);\n return r[0](i);\n }\n}\nfunction Gh(r, t, e, n) {\n return r[1] && n ? yf(e.ctx.slice(), r[1](n(t))) : e.ctx;\n}\nfunction kh(r, t, e, n) {\n if (r[2] && n) {\n const i = r[2](n(e));\n if (t.dirty === void 0)\n return i;\n if (typeof i == \"object\") {\n const o = [], a = Math.max(t.dirty.length, i.length);\n for (let s = 0; s < a; s += 1)\n o[s] = t.dirty[s] | i[s];\n return o;\n }\n return t.dirty | i;\n }\n return t.dirty;\n}\nfunction Hh(r, t, e, n, i, o) {\n if (i) {\n const a = Gh(t, e, n, o);\n r.p(a, i);\n }\n}\nfunction Xh(r) {\n if (r.ctx.length > 32) {\n const t = [], e = r.ctx.length / 32;\n for (let n = 0; n < e; n++)\n t[n] = -1;\n return t;\n }\n return -1;\n}\nconst Ef = typeof window < \"u\" ? window : typeof globalThis < \"u\" ? globalThis : global;\nfunction ir(r, t) {\n r.appendChild(t);\n}\nfunction Z(r, t, e) {\n r.insertBefore(t, e || null);\n}\nfunction K(r) {\n r.parentNode && r.parentNode.removeChild(r);\n}\nfunction Ha(r, t) {\n for (let e = 0; e < r.length; e += 1)\n r[e] && r[e].d(t);\n}\nfunction ct(r) {\n return document.createElementNS(\"http://www.w3.org/2000/svg\", r);\n}\nfunction Xa(r) {\n return document.createTextNode(r);\n}\nfunction ne() {\n return Xa(\" \");\n}\nfunction He() {\n return Xa(\"\");\n}\nfunction Vt(r, t, e, n) {\n return r.addEventListener(t, e, n), () => r.removeEventListener(t, e, n);\n}\nfunction E(r, t, e) {\n e == null ? r.removeAttribute(t) : r.getAttribute(t) !== e && r.setAttribute(t, e);\n}\nfunction Tf(r) {\n return Array.from(r.childNodes);\n}\nfunction wf(r, t) {\n t = \"\" + t, r.data !== t && (r.data = t);\n}\nfunction ws(r, t, e) {\n r.classList[e ? \"add\" : \"remove\"](t);\n}\nfunction Sf(r, t, { bubbles: e = !1, cancelable: n = !1 } = {}) {\n const i = document.createEvent(\"CustomEvent\");\n return i.initCustomEvent(r, e, n, t), i;\n}\nlet _n;\nfunction hn(r) {\n _n = r;\n}\nfunction ja() {\n if (!_n)\n throw new Error(\"Function called outside component initialization\");\n return _n;\n}\nfunction Wr(r) {\n ja().$$.on_mount.push(r);\n}\nfunction Af(r) {\n ja().$$.on_destroy.push(r);\n}\nfunction qr() {\n const r = ja();\n return (t, e, { cancelable: n = !1 } = {}) => {\n const i = r.$$.callbacks[t];\n if (i) {\n const o = Sf(t, e, { cancelable: n });\n return i.slice().forEach((a) => {\n a.call(r, o);\n }), !o.defaultPrevented;\n }\n return !0;\n };\n}\nfunction Dr(r, t) {\n const e = r.$$.callbacks[t.type];\n e && e.slice().forEach((n) => n.call(this, t));\n}\nconst Sr = [], Ti = [];\nlet Fr = [];\nconst Ss = [], Pf = /* @__PURE__ */ Promise.resolve();\nlet Ho = !1;\nfunction Of() {\n Ho || (Ho = !0, Pf.then(jh));\n}\nfunction Xo(r) {\n Fr.push(r);\n}\nconst zi = /* @__PURE__ */ new Set();\nlet _r = 0;\nfunction jh() {\n if (_r !== 0)\n return;\n const r = _n;\n do {\n try {\n for (; _r < Sr.length; ) {\n const t = Sr[_r];\n _r++, hn(t), Rf(t.$$);\n }\n } catch (t) {\n throw Sr.length = 0, _r = 0, t;\n }\n for (hn(null), Sr.length = 0, _r = 0; Ti.length; )\n Ti.pop()();\n for (let t = 0; t < Fr.length; t += 1) {\n const e = Fr[t];\n zi.has(e) || (zi.add(e), e());\n }\n Fr.length = 0;\n } while (Sr.length);\n for (; Ss.length; )\n Ss.pop()();\n Ho = !1, zi.clear(), hn(r);\n}\nfunction Rf(r) {\n if (r.fragment !== null) {\n r.update(), ke(r.before_update);\n const t = r.dirty;\n r.dirty = [-1], r.fragment && r.fragment.p(r.ctx, t), r.after_update.forEach(Xo);\n }\n}\nfunction If(r) {\n const t = [], e = [];\n Fr.forEach((n) => r.indexOf(n) === -1 ? t.push(n) : e.push(n)), e.forEach((n) => n()), Fr = t;\n}\nconst pi = /* @__PURE__ */ new Set();\nlet rr;\nfunction Xe() {\n rr = {\n r: 0,\n c: [],\n p: rr\n // parent group\n };\n}\nfunction je() {\n rr.r || ke(rr.c), rr = rr.p;\n}\nfunction lt(r, t) {\n r && r.i && (pi.delete(r), r.i(t));\n}\nfunction mt(r, t, e, n) {\n if (r && r.o) {\n if (pi.has(r))\n return;\n pi.add(r), rr.c.push(() => {\n pi.delete(r), n && (e && r.d(1), n());\n }), r.o(t);\n } else\n n && n();\n}\nfunction Ee(r) {\n r && r.c();\n}\nfunction ce(r, t, e, n) {\n const { fragment: i, after_update: o } = r.$$;\n i && i.m(t, e), n || Xo(() => {\n const a = r.$$.on_mount.map(Lh).filter(jt);\n r.$$.on_destroy ? r.$$.on_destroy.push(...a) : ke(a), r.$$.on_mount = [];\n }), o.forEach(Xo);\n}\nfunction de(r, t) {\n const e = r.$$;\n e.fragment !== null && (If(e.after_update), ke(e.on_destroy), e.fragment && e.fragment.d(t), e.on_destroy = e.fragment = null, e.ctx = []);\n}\nfunction Cf(r, t) {\n r.$$.dirty[0] === -1 && (Sr.push(r), Of(), r.$$.dirty.fill(0)), r.$$.dirty[t / 31 | 0] |= 1 << t % 31;\n}\nfunction Zt(r, t, e, n, i, o, a, s = [-1]) {\n const u = _n;\n hn(r);\n const h = r.$$ = {\n fragment: null,\n ctx: [],\n // state\n props: o,\n update: qt,\n not_equal: i,\n bound: Ts(),\n // lifecycle\n on_mount: [],\n on_destroy: [],\n on_disconnect: [],\n before_update: [],\n after_update: [],\n context: new Map(t.context || (u ? u.$$.context : [])),\n // everything else\n callbacks: Ts(),\n dirty: s,\n skip_bound: !1,\n root: t.target || u.$$.root\n };\n a && a(h.root);\n let f = !1;\n if (h.ctx = e ? e(r, t.props || {}, (l, c, ...d) => {\n const p = d.length ? d[0] : c;\n return h.ctx && i(h.ctx[l], h.ctx[l] = p) && (!h.skip_bound && h.bound[l] && h.bound[l](p), f && Cf(r, l)), c;\n }) : [], h.update(), f = !0, ke(h.before_update), h.fragment = n ? n(h.ctx) : !1, t.target) {\n if (t.hydrate) {\n const l = Tf(t.target);\n h.fragment && h.fragment.l(l), l.forEach(K);\n } else\n h.fragment && h.fragment.c();\n t.intro && lt(r.$$.fragment), ce(r, t.target, t.anchor, t.customElement), jh();\n }\n hn(u);\n}\nclass Jt {\n $destroy() {\n de(this, 1), this.$destroy = qt;\n }\n $on(t, e) {\n if (!jt(e))\n return qt;\n const n = this.$$.callbacks[t] || (this.$$.callbacks[t] = []);\n return n.push(e), () => {\n const i = n.indexOf(e);\n i !== -1 && n.splice(i, 1);\n };\n }\n $set(t) {\n this.$$set && !bf(t) && (this.$$.skip_bound = !0, this.$$set(t), this.$$.skip_bound = !1);\n }\n}\nconst mr = [];\nfunction Ya(r, t = qt) {\n let e;\n const n = /* @__PURE__ */ new Set();\n function i(s) {\n if (Ht(r, s) && (r = s, e)) {\n const u = !mr.length;\n for (const h of n)\n h[1](), mr.push(h, r);\n if (u) {\n for (let h = 0; h < mr.length; h += 2)\n mr[h][0](mr[h + 1]);\n mr.length = 0;\n }\n }\n }\n function o(s) {\n i(s(r));\n }\n function a(s, u = qt) {\n const h = [s, u];\n return n.add(h), n.size === 1 && (e = t(i) || qt), s(r), () => {\n n.delete(h), n.size === 0 && e && (e(), e = null);\n };\n }\n return { set: i, update: o, subscribe: a };\n}\nconst Mf = (r) => {\n const { subscribe: t, set: e } = Ya(null);\n let n = null;\n return t((i) => n = i), r.observe(({ changes: i }) => {\n if (n) {\n i.deleted.some((s) => s.id === n) && e(null);\n const a = i.updated.find(({ oldValue: s }) => s.id === n);\n a && e(a.newValue.id);\n }\n }), {\n get current() {\n return n;\n },\n subscribe: t,\n set: e\n };\n};\nvar Va = /* @__PURE__ */ ((r) => (r.EDIT = \"EDIT\", r.SELECT = \"SELECT\", r.NONE = \"NONE\", r))(Va || {});\nconst Wi = { selected: [] }, Df = (r, t = \"EDIT\") => {\n const { subscribe: e, set: n } = Ya(Wi);\n let i = Wi;\n e((l) => i = l);\n const o = () => n(Wi), a = () => {\n var l;\n return ((l = i.selected) == null ? void 0 : l.length) === 0;\n }, s = (l) => {\n if (i.selected.length === 0)\n return !1;\n const c = typeof l == \"string\" ? l : l.id;\n return i.selected.some((d) => d.id === c);\n }, u = (l, c) => {\n const d = r.getAnnotation(l);\n if (d) {\n const p = Ff(d, t);\n n(p === \"EDIT\" ? { selected: [{ id: l, editable: !0 }], pointerEvent: c } : p === \"SELECT\" ? { selected: [{ id: l }], pointerEvent: c } : { selected: [], pointerEvent: c });\n } else\n console.warn(\"Invalid selection: \" + l);\n }, h = (l, c = !0) => {\n const d = Array.isArray(l) ? l : [l], p = d.map((v) => r.getAnnotation(v)).filter((v) => v);\n n({ selected: p.map(({ id: v }) => ({ id: v, editable: c })) }), p.length !== d.length && console.warn(\"Invalid selection\", l);\n }, f = (l) => {\n if (i.selected.length === 0)\n return !1;\n const { selected: c } = i;\n c.filter(({ id: p }) => l.includes(p)).length > 0 && n({ selected: c.filter(({ id: p }) => !l.includes(p)) });\n };\n return r.observe(({ changes: l }) => f(l.deleted.map((c) => c.id))), {\n clear: o,\n clickSelect: u,\n get selected() {\n return i ? [...i.selected] : null;\n },\n get pointerEvent() {\n return i ? i.pointerEvent : null;\n },\n isEmpty: a,\n isSelected: s,\n setSelected: h,\n subscribe: e\n };\n}, Ff = (r, t) => typeof t == \"function\" ? t(r) || \"EDIT\" : t || \"EDIT\";\nlet Nn;\nconst Bf = new Uint8Array(16);\nfunction Nf() {\n if (!Nn && (Nn = typeof crypto < \"u\" && crypto.getRandomValues && crypto.getRandomValues.bind(crypto), !Nn))\n throw new Error(\"crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported\");\n return Nn(Bf);\n}\nconst Lt = [];\nfor (let r = 0; r < 256; ++r)\n Lt.push((r + 256).toString(16).slice(1));\nfunction Lf(r, t = 0) {\n return Lt[r[t + 0]] + Lt[r[t + 1]] + Lt[r[t + 2]] + Lt[r[t + 3]] + \"-\" + Lt[r[t + 4]] + Lt[r[t + 5]] + \"-\" + Lt[r[t + 6]] + Lt[r[t + 7]] + \"-\" + Lt[r[t + 8]] + Lt[r[t + 9]] + \"-\" + Lt[r[t + 10]] + Lt[r[t + 11]] + Lt[r[t + 12]] + Lt[r[t + 13]] + Lt[r[t + 14]] + Lt[r[t + 15]];\n}\nconst Uf = typeof crypto < \"u\" && crypto.randomUUID && crypto.randomUUID.bind(crypto), As = {\n randomUUID: Uf\n};\nfunction Yh(r, t, e) {\n if (As.randomUUID && !t && !r)\n return As.randomUUID();\n r = r || {};\n const n = r.random || (r.rng || Nf)();\n if (n[6] = n[6] & 15 | 64, n[8] = n[8] & 63 | 128, t) {\n e = e || 0;\n for (let i = 0; i < 16; ++i)\n t[e + i] = n[i];\n return t;\n }\n return Lf(n);\n}\nconst Gf = (r, t, e, n) => ({\n id: Yh(),\n annotation: r.id,\n created: e || /* @__PURE__ */ new Date(),\n creator: n,\n ...t\n}), kf = (r, t) => {\n const e = new Set(r.bodies.map((n) => n.id));\n return t.bodies.filter((n) => !e.has(n.id));\n}, Hf = (r, t) => {\n const e = new Set(t.bodies.map((n) => n.id));\n return r.bodies.filter((n) => !e.has(n.id));\n}, Xf = (r, t) => t.bodies.map((e) => {\n const n = r.bodies.find((i) => i.id === e.id);\n return { newBody: e, oldBody: n && !nr(n, e) ? n : void 0 };\n}).filter(({ oldBody: e }) => e), jf = (r, t) => !nr(r.target, t.target), Vh = (r, t) => {\n const e = kf(r, t), n = Hf(r, t), i = Xf(r, t);\n return {\n oldValue: r,\n newValue: t,\n bodiesCreated: e.length > 0 ? e : void 0,\n bodiesDeleted: n.length > 0 ? n : void 0,\n bodiesUpdated: i.length > 0 ? i : void 0,\n targetUpdated: jf(r, t) ? { oldTarget: r.target, newTarget: t.target } : void 0\n };\n};\nvar Ot = /* @__PURE__ */ ((r) => (r.LOCAL = \"LOCAL\", r.REMOTE = \"REMOTE\", r))(Ot || {});\nconst Yf = (r, t) => {\n var o, a;\n const { changes: e, origin: n } = t;\n if (!(!r.options.origin || r.options.origin === n))\n return !1;\n if (r.options.ignore) {\n const { ignore: s } = r.options, u = (f) => (f == null ? void 0 : f.length) > 0;\n if (!(u(e.created) || u(e.deleted))) {\n const f = (o = e.updated) == null ? void 0 : o.some((c) => u(c.bodiesCreated) || u(c.bodiesDeleted) || u(c.bodiesUpdated)), l = (a = e.updated) == null ? void 0 : a.some((c) => c.targetUpdated);\n if (s === \"BODY_ONLY\" && f && !l || s === \"TARGET_ONLY\" && l && !f)\n return !1;\n }\n }\n if (r.options.annotations) {\n const s = /* @__PURE__ */ new Set([\n ...e.created.map((h) => h.id),\n ...e.deleted.map((h) => h.id),\n ...e.updated.map(({ oldValue: h }) => h.id)\n ]);\n return !!(Array.isArray(r.options.annotations) ? r.options.annotations : [r.options.annotations]).find((h) => s.has(h));\n } else\n return !0;\n}, Vf = (r, t) => {\n const e = new Set((r.created || []).map((l) => l.id)), n = new Set((r.updated || []).map(({ newValue: l }) => l.id)), i = new Set((t.created || []).map((l) => l.id)), o = new Set((t.deleted || []).map((l) => l.id)), a = new Set((t.updated || []).map(({ oldValue: l }) => l.id)), s = new Set((t.updated || []).filter(({ oldValue: l }) => e.has(l.id) || n.has(l.id)).map(({ oldValue: l }) => l.id)), u = [\n ...(r.created || []).filter((l) => !o.has(l.id)).map((l) => a.has(l.id) ? t.updated.find(({ oldValue: c }) => c.id === l.id).newValue : l),\n ...t.created || []\n ], h = [\n ...(r.deleted || []).filter((l) => !i.has(l.id)),\n ...(t.deleted || []).filter((l) => !e.has(l.id))\n ], f = [\n ...(r.updated || []).filter(({ newValue: l }) => !o.has(l.id)).map((l) => {\n const { oldValue: c, newValue: d } = l;\n if (a.has(d.id)) {\n const p = t.updated.find((v) => v.oldValue.id === d.id).newValue;\n return Vh(c, p);\n } else\n return l;\n }),\n ...(t.updated || []).filter(({ oldValue: l }) => !s.has(l.id))\n ];\n return { created: u, deleted: h, updated: f };\n}, zf = (r) => r.id !== void 0, Wf = () => {\n const r = /* @__PURE__ */ new Map(), t = /* @__PURE__ */ new Map(), e = [], n = (b, P = {}) => e.push({ onChange: b, options: P }), i = (b) => {\n const P = e.findIndex((A) => A.onChange == b);\n P > -1 && e.splice(P, 1);\n }, o = (b, P) => {\n const A = {\n origin: b,\n changes: {\n created: P.created || [],\n updated: P.updated || [],\n deleted: P.deleted || []\n },\n state: [...r.values()]\n };\n e.forEach((R) => {\n Yf(R, A) && R.onChange(A);\n });\n }, a = (b, P = Ot.LOCAL) => {\n if (r.get(b.id))\n throw Error(`Cannot add annotation ${b.id} - exists already`);\n r.set(b.id, b), b.bodies.forEach((R) => t.set(R.id, b.id)), o(P, { created: [b] });\n }, s = (b, P) => {\n const A = typeof b == \"string\" ? P : b, R = typeof b == \"string\" ? b : b.id, M = r.get(R);\n if (M) {\n const D = Vh(M, A);\n return R === A.id ? r.set(R, A) : (r.delete(R), r.set(A.id, A)), M.bodies.forEach((B) => t.delete(B.id)), A.bodies.forEach((B) => t.set(B.id, A.id)), D;\n } else\n console.warn(`Cannot update annotation ${R} - does not exist`);\n }, u = (b, P = Ot.LOCAL, A = Ot.LOCAL) => {\n const R = zf(P) ? A : P, M = s(b, P);\n M && o(R, { updated: [M] });\n }, h = (b, P = Ot.LOCAL) => {\n const A = b.reduce((R, M) => {\n const D = s(M);\n return D ? [...R, D] : R;\n }, []);\n A.length > 0 && o(P, { updated: A });\n }, f = (b, P = Ot.LOCAL) => {\n const A = r.get(b.annotation);\n if (A) {\n const R = {\n ...A,\n bodies: [...A.bodies, b]\n };\n r.set(A.id, R), t.set(b.id, R.id), o(P, { updated: [{\n oldValue: A,\n newValue: R,\n bodiesCreated: [b]\n }] });\n } else\n console.warn(`Attempt to add body to missing annotation: ${b.annotation}`);\n }, l = () => [...r.values()], c = (b = Ot.LOCAL) => {\n const P = [...r.values()];\n r.clear(), t.clear(), o(b, { deleted: P });\n }, d = (b, P = !0, A = Ot.LOCAL) => {\n if (P) {\n const R = [...r.values()];\n r.clear(), t.clear(), b.forEach((M) => {\n r.set(M.id, M), M.bodies.forEach((D) => t.set(D.id, M.id));\n }), o(A, { created: b, deleted: R });\n } else {\n const R = b.reduce((M, D) => {\n const B = r.get(D.id);\n return B ? [...M, B] : M;\n }, []);\n if (R.length > 0)\n throw Error(`Bulk insert would overwrite the following annotations: ${R.map((M) => M.id).join(\", \")}`);\n b.forEach((M) => {\n r.set(M.id, M), M.bodies.forEach((D) => t.set(D.id, M.id));\n }), o(A, { created: b });\n }\n }, p = (b) => {\n const P = typeof b == \"string\" ? b : b.id, A = r.get(P);\n if (A)\n return r.delete(P), A.bodies.forEach((R) => t.delete(R.id)), A;\n console.warn(`Attempt to delete missing annotation: ${P}`);\n }, v = (b, P = Ot.LOCAL) => {\n const A = p(b);\n A && o(P, { deleted: [A] });\n }, _ = (b, P = Ot.LOCAL) => {\n const A = b.reduce((R, M) => {\n const D = p(M);\n return D ? [...R, D] : R;\n }, []);\n A.length > 0 && o(P, { deleted: A });\n }, g = (b, P = Ot.LOCAL) => {\n const A = r.get(b.annotation);\n if (A) {\n const R = A.bodies.find((M) => M.id === b.id);\n if (R) {\n t.delete(R.id);\n const M = {\n ...A,\n bodies: A.bodies.filter((B) => B.id !== b.id)\n };\n r.set(A.id, M), o(P, { updated: [{\n oldValue: A,\n newValue: M,\n bodiesDeleted: [R]\n }] });\n } else\n console.warn(`Attempt to delete missing body ${b.id} from annotation ${b.annotation}`);\n } else\n console.warn(`Attempt to delete body from missing annotation ${b.annotation}`);\n }, m = (b) => {\n const P = r.get(b);\n return P ? { ...P } : void 0;\n }, y = (b) => {\n const P = t.get(b);\n if (P) {\n const R = m(P).bodies.find((M) => M.id === b);\n if (R)\n return R;\n console.error(`Store integrity error: body ${b} in index, but not in annotation`);\n } else\n console.warn(`Attempt to retrieve missing body: ${b}`);\n }, T = (b, P) => {\n if (b.annotation !== P.annotation)\n throw \"Annotation integrity violation: annotation ID must be the same when updating bodies\";\n const A = r.get(b.annotation);\n if (A) {\n const R = A.bodies.find((D) => D.id === b.id), M = {\n ...A,\n bodies: A.bodies.map((D) => D.id === R.id ? P : D)\n };\n return r.set(A.id, M), R.id !== P.id && (t.delete(R.id), t.set(P.id, M.id)), {\n oldValue: A,\n newValue: M,\n bodiesUpdated: [{ oldBody: R, newBody: P }]\n };\n } else\n console.warn(`Attempt to add body to missing annotation ${b.annotation}`);\n }, x = (b, P, A = Ot.LOCAL) => {\n const R = T(b, P);\n o(A, { updated: [R] });\n }, w = (b, P = Ot.LOCAL) => {\n const A = b.map((R) => T({ id: R.id, annotation: R.annotation }, R));\n o(P, { updated: A });\n }, S = (b) => {\n const P = r.get(b.annotation);\n if (P) {\n const A = {\n ...P,\n target: {\n ...P.target,\n ...b\n }\n };\n return r.set(P.id, A), {\n oldValue: P,\n newValue: A,\n targetUpdated: {\n oldTarget: P.target,\n newTarget: b\n }\n };\n } else\n console.warn(`Attempt to update target on missing annotation: ${b.annotation}`);\n };\n return {\n addAnnotation: a,\n addBody: f,\n all: l,\n bulkAddAnnotation: d,\n bulkDeleteAnnotation: _,\n bulkUpdateAnnotation: h,\n bulkUpdateBodies: w,\n bulkUpdateTargets: (b, P = Ot.LOCAL) => {\n const A = b.map(S).filter((R) => R);\n A.length > 0 && o(P, { updated: A });\n },\n clear: c,\n deleteAnnotation: v,\n deleteBody: g,\n getAnnotation: m,\n getBody: y,\n observe: n,\n unobserve: i,\n updateAnnotation: u,\n updateBody: x,\n updateTarget: (b, P = Ot.LOCAL) => {\n const A = S(b);\n A && o(P, { updated: [A] });\n }\n };\n}, qf = 250, $f = (r) => {\n const t = [];\n let e = -1, n = !1, i = 0;\n const o = (v) => {\n if (!n) {\n const { changes: _ } = v, g = performance.now();\n if (g - i > qf)\n t.splice(e + 1), t.push(_), e = t.length - 1;\n else {\n const m = t.length - 1;\n t[m] = Vf(t[m], _);\n }\n i = g;\n }\n n = !1;\n };\n r.observe(o, { origin: Ot.LOCAL });\n const a = (v) => (v == null ? void 0 : v.length) > 0 && r.bulkDeleteAnnotation(v), s = (v) => (v == null ? void 0 : v.length) > 0 && r.bulkAddAnnotation(v, !1), u = (v) => (v == null ? void 0 : v.length) > 0 && r.bulkUpdateAnnotation(v.map(({ oldValue: _ }) => _)), h = (v) => (v == null ? void 0 : v.length) > 0 && r.bulkUpdateAnnotation(v.map(({ newValue: _ }) => _)), f = (v) => (v == null ? void 0 : v.length) > 0 && r.bulkAddAnnotation(v, !1), l = (v) => (v == null ? void 0 : v.length) > 0 && r.bulkDeleteAnnotation(v);\n return {\n destroy: () => r.unobserve(o),\n redo: () => {\n if (t.length - 1 > e) {\n n = !0;\n const { created: v, updated: _, deleted: g } = t[e + 1];\n s(v), h(_), l(g), e += 1;\n }\n },\n undo: () => {\n if (e > -1) {\n n = !0;\n const { created: v, updated: _, deleted: g } = t[e];\n a(v), u(_), f(g), e -= 1;\n }\n }\n };\n}, Kf = () => {\n const { subscribe: r, set: t } = Ya([]);\n return {\n subscribe: r,\n set: t\n };\n}, Zf = (r, t, e, n, i, o) => {\n const a = /* @__PURE__ */ new Map();\n let s = [], u, h;\n const f = (p, v) => {\n a.has(p) ? a.get(p).push(v) : a.set(p, [v]);\n }, l = (p, v) => {\n const _ = a.get(p);\n _ && _.indexOf(v) > 0 && _.splice(_.indexOf(v), 1);\n }, c = (p, v, _) => {\n a.has(p) && setTimeout(() => {\n a.get(p).forEach((g) => {\n if (i) {\n const m = Array.isArray(v) ? v.map((T) => i.serialize(T)) : i.serialize(v), y = _ ? _ instanceof PointerEvent ? _ : i.serialize(_) : void 0;\n g(m, y);\n } else\n g(v, _);\n });\n }, 1);\n }, d = () => {\n const { selected: p } = t, v = p.map(({ id: _ }) => r.getAnnotation(_));\n v.forEach((_) => {\n const g = s.find((m) => m.id === _.id);\n (!g || !nr(g, _)) && c(\"updateAnnotation\", _, g);\n }), s = s.map((_) => {\n const g = v.find(({ id: m }) => m === _.id);\n return g || _;\n });\n };\n return t.subscribe(({ selected: p }) => {\n if (!(s.length === 0 && p.length === 0)) {\n if (s.length === 0 && p.length > 0)\n s = p.map(({ id: v }) => r.getAnnotation(v));\n else if (s.length > 0 && p.length === 0)\n s.forEach((v) => {\n const _ = r.getAnnotation(v.id);\n _ && !nr(_, v) && c(\"updateAnnotation\", _, v);\n }), s = [];\n else {\n const v = new Set(s.map((m) => m.id)), _ = new Set(p.map(({ id: m }) => m));\n s.filter((m) => !_.has(m.id)).forEach((m) => {\n const y = r.getAnnotation(m.id);\n y && !nr(y, m) && c(\"updateAnnotation\", y, m);\n }), s = [\n // Remove annotations that were deselected\n ...s.filter((m) => _.has(m.id)),\n // Add editable annotations that were selected\n ...p.filter(({ id: m }) => !v.has(m)).map(({ id: m }) => r.getAnnotation(m))\n ];\n }\n c(\"selectionChanged\", s);\n }\n }), e.subscribe((p) => {\n !u && p ? c(\"mouseEnterAnnotation\", r.getAnnotation(p)) : u && !p ? c(\"mouseLeaveAnnotation\", r.getAnnotation(u)) : u && p && (c(\"mouseLeaveAnnotation\", r.getAnnotation(u)), c(\"mouseEnterAnnotation\", r.getAnnotation(p))), u = p;\n }), n == null || n.subscribe((p) => c(\"viewportIntersect\", p.map(r.getAnnotation))), r.observe((p) => {\n o && (h && clearTimeout(h), h = setTimeout(d, 1e3));\n const { created: v, deleted: _ } = p.changes;\n v.forEach((m) => c(\"createAnnotation\", m)), _.forEach((m) => c(\"deleteAnnotation\", m)), p.changes.updated.filter((m) => [\n ...m.bodiesCreated || [],\n ...m.bodiesDeleted || [],\n ...m.bodiesUpdated || []\n ].length > 0).forEach(({ oldValue: m, newValue: y }) => {\n const T = s.find((x) => x.id === m.id) || m;\n s = s.map((x) => x.id === m.id ? y : x), c(\"updateAnnotation\", y, T);\n });\n }, { origin: Ot.LOCAL }), r.observe((p) => {\n if (s) {\n const v = new Set(s.map((g) => g.id)), _ = p.changes.updated.filter(({ newValue: g }) => v.has(g.id)).map(({ newValue: g }) => g);\n _.length > 0 && (s = s.map((g) => {\n const m = _.find((y) => y.id === g.id);\n return m || g;\n }));\n }\n }, { origin: Ot.REMOTE }), { on: f, off: l, emit: c };\n}, Jf = (r) => (t) => t.reduce((e, n) => {\n const { parsed: i, error: o } = r.parse(n);\n return o ? {\n parsed: e.parsed,\n failed: [...e.failed, n]\n } : {\n parsed: [...e.parsed, i],\n failed: e.failed\n };\n}, { parsed: [], failed: [] }), Qf = (r, t, e) => {\n const n = (l) => {\n if (e) {\n const { parsed: c, error: d } = e.parse(l);\n c ? r.addAnnotation(c, Ot.REMOTE) : console.error(d);\n } else\n r.addAnnotation(l, Ot.REMOTE);\n }, i = () => r.clear(), o = (l) => {\n const c = r.getAnnotation(l);\n return e && c ? e.serialize(c) : c;\n }, a = () => e ? r.all().map(e.serialize) : r.all(), s = (l) => fetch(l).then((c) => c.json()).then((c) => (h(c), c)), u = (l) => {\n if (typeof l == \"string\") {\n const c = r.getAnnotation(l);\n return r.deleteAnnotation(l), e ? e.serialize(c) : c;\n } else {\n const c = e ? e.parse(l).parsed : l;\n return r.deleteAnnotation(c), l;\n }\n }, h = (l) => {\n if (e) {\n const { parsed: c, failed: d } = Jf(e)(l);\n d.length > 0 && console.warn(`Discarded ${d.length} invalid annotations`, d), r.bulkAddAnnotation(c, !0, Ot.REMOTE);\n } else\n r.bulkAddAnnotation(l, !0, Ot.REMOTE);\n }, f = (l) => {\n if (e) {\n const c = e.parse(l).parsed, d = e.serialize(r.getAnnotation(c.id));\n return r.updateAnnotation(c), d;\n } else {\n const c = r.getAnnotation(l.id);\n return r.updateAnnotation(l), c;\n }\n };\n return {\n addAnnotation: n,\n clearAnnotations: i,\n getAnnotationById: o,\n getAnnotations: a,\n loadAnnotations: s,\n redo: t.redo,\n removeAnnotation: u,\n setAnnotations: h,\n undo: t.undo,\n updateAnnotation: f\n };\n};\nlet tc = (r) => crypto.getRandomValues(new Uint8Array(r)), ec = (r, t, e) => {\n let n = (2 << Math.log(r.length - 1) / Math.LN2) - 1, i = -~(1.6 * n * t / r.length);\n return (o = t) => {\n let a = \"\";\n for (; ; ) {\n let s = e(i), u = i;\n for (; u--; )\n if (a += r[s[u] & n] || \"\", a.length === o)\n return a;\n }\n };\n}, rc = (r, t = 21) => ec(r, t, tc), nc = (r = 21) => crypto.getRandomValues(new Uint8Array(r)).reduce((t, e) => (e &= 63, e < 36 ? t += e.toString(36) : e < 62 ? t += (e - 26).toString(36).toUpperCase() : e > 62 ? t += \"-\" : t += \"_\", t), \"\");\nconst ic = () => ({ isGuest: !0, id: rc(\"1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_\", 20)() }), oc = [\n \"#ff7c00\",\n // orange\n \"#1ac938\",\n // green\n \"#e8000b\",\n // red\n \"#8b2be2\",\n // purple\n \"#9f4800\",\n // brown\n \"#f14cc1\",\n // pink\n \"#ffc400\",\n // khaki\n \"#00d7ff\",\n // cyan\n \"#023eff\"\n // blue\n], ac = () => {\n const r = [...oc];\n return { assignRandomColor: () => {\n const n = Math.floor(Math.random() * r.length), i = r[n];\n return r.splice(n, 1), i;\n }, releaseColor: (n) => r.push(n) };\n};\nnc();\nvar $t = /* @__PURE__ */ ((r) => (r.ELLIPSE = \"ELLIPSE\", r.POLYGON = \"POLYGON\", r.RECTANGLE = \"RECTANGLE\", r))($t || {});\nconst za = {}, Wa = (r, t) => za[r] = t, jo = (r) => za[r.type].area(r), sc = (r, t, e) => za[r.type].intersects(r, t, e), Yo = (r) => {\n let t = 1 / 0, e = 1 / 0, n = -1 / 0, i = -1 / 0;\n return r.forEach(([o, a]) => {\n t = Math.min(t, o), e = Math.min(e, a), n = Math.max(n, o), i = Math.max(i, a);\n }), { minX: t, minY: e, maxX: n, maxY: i };\n}, uc = {\n area: (r) => Math.PI * r.geometry.rx * r.geometry.ry,\n intersects: (r, t, e) => {\n const { cx: n, cy: i, rx: o, ry: a } = r.geometry, s = 0, u = Math.cos(s), h = Math.sin(s), f = t - n, l = e - i, c = u * f + h * l, d = h * f - u * l;\n return c * c / (o * o) + d * d / (a * a) <= 1;\n }\n};\nWa($t.ELLIPSE, uc);\nconst hc = {\n area: (r) => {\n const { points: t } = r.geometry;\n let e = 0, n = t.length - 1;\n for (let i = 0; i < t.length; i++)\n e += (t[n][0] + t[i][0]) * (t[n][1] - t[i][1]), n = i;\n return Math.abs(0.5 * e);\n },\n intersects: (r, t, e) => {\n const { points: n } = r.geometry;\n let i = !1;\n for (let o = 0, a = n.length - 1; o < n.length; a = o++) {\n const s = n[o][0], u = n[o][1], h = n[a][0], f = n[a][1];\n u > e != f > e && t < (h - s) * (e - u) / (f - u) + s && (i = !i);\n }\n return i;\n }\n};\nWa($t.POLYGON, hc);\nconst lc = {\n area: (r) => r.geometry.w * r.geometry.h,\n intersects: (r, t, e) => t >= r.geometry.x && t <= r.geometry.x + r.geometry.w && e >= r.geometry.y && e <= r.geometry.y + r.geometry.h\n};\nWa($t.RECTANGLE, lc);\nfunction Ps(r, t, e) {\n const n = r.slice();\n return n[11] = t[e], n[13] = e, n;\n}\nfunction Os(r) {\n let t, e, n, i, o;\n return {\n c() {\n t = ct(\"rect\"), E(t, \"class\", \"a9s-corner-handle\"), E(t, \"x\", e = /*point*/\n r[11][0] - /*handleSize*/\n r[3] / 2), E(t, \"y\", n = /*point*/\n r[11][1] - /*handleSize*/\n r[3] / 2), E(\n t,\n \"height\",\n /*handleSize*/\n r[3]\n ), E(\n t,\n \"width\",\n /*handleSize*/\n r[3]\n );\n },\n m(a, s) {\n Z(a, t, s), i || (o = Vt(t, \"pointerdown\", function() {\n jt(\n /*grab*/\n r[10](z(\n /*idx*/\n r[13]\n ))\n ) && r[10](z(\n /*idx*/\n r[13]\n )).apply(this, arguments);\n }), i = !0);\n },\n p(a, s) {\n r = a, s & /*geom, handleSize*/\n 24 && e !== (e = /*point*/\n r[11][0] - /*handleSize*/\n r[3] / 2) && E(t, \"x\", e), s & /*geom, handleSize*/\n 24 && n !== (n = /*point*/\n r[11][1] - /*handleSize*/\n r[3] / 2) && E(t, \"y\", n), s & /*handleSize*/\n 8 && E(\n t,\n \"height\",\n /*handleSize*/\n r[3]\n ), s & /*handleSize*/\n 8 && E(\n t,\n \"width\",\n /*handleSize*/\n r[3]\n );\n },\n d(a) {\n a && K(t), i = !1, o();\n }\n };\n}\nfunction fc(r) {\n let t, e, n, i, o, a, s, u, h, f, l = (\n /*geom*/\n r[4].points\n ), c = [];\n for (let d = 0; d < l.length; d += 1)\n c[d] = Os(Ps(r, l, d));\n return {\n c() {\n t = ct(\"polygon\"), i = ne(), o = ct(\"polygon\"), s = ne();\n for (let d = 0; d < c.length; d += 1)\n c[d].c();\n u = He(), E(t, \"class\", \"a9s-outer\"), E(t, \"style\", e = /*computedStyle*/\n r[1] ? \"display:none;\" : void 0), E(t, \"points\", n = /*geom*/\n r[4].points.map(Rs).join(\" \")), E(o, \"class\", \"a9s-inner a9s-shape-handle\"), E(\n o,\n \"style\",\n /*computedStyle*/\n r[1]\n ), E(o, \"points\", a = /*geom*/\n r[4].points.map(Is).join(\" \"));\n },\n m(d, p) {\n Z(d, t, p), Z(d, i, p), Z(d, o, p), Z(d, s, p);\n for (let v = 0; v < c.length; v += 1)\n c[v] && c[v].m(d, p);\n Z(d, u, p), h || (f = [\n Vt(t, \"pointerdown\", function() {\n jt(\n /*grab*/\n r[10](z.SHAPE)\n ) && r[10](z.SHAPE).apply(this, arguments);\n }),\n Vt(o, \"pointerdown\", function() {\n jt(\n /*grab*/\n r[10](z.SHAPE)\n ) && r[10](z.SHAPE).apply(this, arguments);\n })\n ], h = !0);\n },\n p(d, p) {\n if (r = d, p & /*computedStyle*/\n 2 && e !== (e = /*computedStyle*/\n r[1] ? \"display:none;\" : void 0) && E(t, \"style\", e), p & /*geom*/\n 16 && n !== (n = /*geom*/\n r[4].points.map(Rs).join(\" \")) && E(t, \"points\", n), p & /*computedStyle*/\n 2 && E(\n o,\n \"style\",\n /*computedStyle*/\n r[1]\n ), p & /*geom*/\n 16 && a !== (a = /*geom*/\n r[4].points.map(Is).join(\" \")) && E(o, \"points\", a), p & /*geom, handleSize, grab, Handle*/\n 1048) {\n l = /*geom*/\n r[4].points;\n let v;\n for (v = 0; v < l.length; v += 1) {\n const _ = Ps(r, l, v);\n c[v] ? c[v].p(_, p) : (c[v] = Os(_), c[v].c(), c[v].m(u.parentNode, u));\n }\n for (; v < c.length; v += 1)\n c[v].d(1);\n c.length = l.length;\n }\n },\n d(d) {\n d && K(t), d && K(i), d && K(o), d && K(s), Ha(c, d), d && K(u), h = !1, ke(f);\n }\n };\n}\nfunction cc(r) {\n let t, e;\n return t = new Wh({\n props: {\n shape: (\n /*shape*/\n r[0]\n ),\n transform: (\n /*transform*/\n r[2]\n ),\n editor: (\n /*editor*/\n r[5]\n ),\n $$slots: {\n default: [\n fc,\n ({ grab: n }) => ({ 10: n }),\n ({ grab: n }) => n ? 1024 : 0\n ]\n },\n $$scope: { ctx: r }\n }\n }), t.$on(\n \"change\",\n /*change_handler*/\n r[7]\n ), t.$on(\n \"grab\",\n /*grab_handler*/\n r[8]\n ), t.$on(\n \"release\",\n /*release_handler*/\n r[9]\n ), {\n c() {\n Ee(t.$$.fragment);\n },\n m(n, i) {\n ce(t, n, i), e = !0;\n },\n p(n, [i]) {\n const o = {};\n i & /*shape*/\n 1 && (o.shape = /*shape*/\n n[0]), i & /*transform*/\n 4 && (o.transform = /*transform*/\n n[2]), i & /*$$scope, geom, handleSize, grab, computedStyle*/\n 17434 && (o.$$scope = { dirty: i, ctx: n }), t.$set(o);\n },\n i(n) {\n e || (lt(t.$$.fragment, n), e = !0);\n },\n o(n) {\n mt(t.$$.fragment, n), e = !1;\n },\n d(n) {\n de(t, n);\n }\n };\n}\nconst Rs = (r) => r.join(\",\"), Is = (r) => r.join(\",\");\nfunction dc(r, t, e) {\n let n, i, { shape: o } = t, { computedStyle: a = void 0 } = t, { transform: s } = t, { viewportScale: u = 1 } = t;\n const h = (d, p, v) => {\n let _;\n p === z.SHAPE ? _ = d.geometry.points.map(([m, y]) => [m + v[0], y + v[1]]) : _ = d.geometry.points.map(([m, y], T) => p === z(T) ? [m + v[0], y + v[1]] : [m, y]);\n const g = Yo(_);\n return { ...d, geometry: { points: _, bounds: g } };\n };\n function f(d) {\n Dr.call(this, r, d);\n }\n function l(d) {\n Dr.call(this, r, d);\n }\n function c(d) {\n Dr.call(this, r, d);\n }\n return r.$$set = (d) => {\n \"shape\" in d && e(0, o = d.shape), \"computedStyle\" in d && e(1, a = d.computedStyle), \"transform\" in d && e(2, s = d.transform), \"viewportScale\" in d && e(6, u = d.viewportScale);\n }, r.$$.update = () => {\n r.$$.dirty & /*shape*/\n 1 && e(4, n = o.geometry), r.$$.dirty & /*viewportScale*/\n 64 && e(3, i = 10 / u);\n }, [\n o,\n a,\n s,\n i,\n n,\n h,\n u,\n f,\n l,\n c\n ];\n}\nclass pc extends Jt {\n constructor(t) {\n super(), Zt(this, t, dc, cc, Ht, {\n shape: 0,\n computedStyle: 1,\n transform: 2,\n viewportScale: 6\n });\n }\n}\nfunction vc(r) {\n let t, e, n, i, o, a, s, u, h, f, l, c, d, p, v, _, g, m, y, T, x, w, S, I, O, b, P, A, R, M, D, B, X, $, Q, U, L, H, tt, et, pt, Y, st, _t, Et, q, it, at, ft, nt;\n return {\n c() {\n t = ct(\"rect\"), s = ne(), u = ct(\"rect\"), d = ne(), p = ct(\"rect\"), m = ne(), y = ct(\"rect\"), S = ne(), I = ct(\"rect\"), A = ne(), R = ct(\"rect\"), X = ne(), $ = ct(\"rect\"), L = ne(), H = ct(\"rect\"), pt = ne(), Y = ct(\"rect\"), Et = ne(), q = ct(\"rect\"), E(t, \"class\", \"a9s-outer\"), E(t, \"style\", e = /*computedStyle*/\n r[1] ? \"display:none;\" : void 0), E(t, \"x\", n = /*geom*/\n r[4].x), E(t, \"y\", i = /*geom*/\n r[4].y), E(t, \"width\", o = /*geom*/\n r[4].w), E(t, \"height\", a = /*geom*/\n r[4].h), E(u, \"class\", \"a9s-inner a9s-shape-handle\"), E(\n u,\n \"style\",\n /*computedStyle*/\n r[1]\n ), E(u, \"x\", h = /*geom*/\n r[4].x), E(u, \"y\", f = /*geom*/\n r[4].y), E(u, \"width\", l = /*geom*/\n r[4].w), E(u, \"height\", c = /*geom*/\n r[4].h), E(p, \"class\", \"a9s-edge-handle a9s-edge-handle-top\"), E(p, \"x\", v = /*geom*/\n r[4].x), E(p, \"y\", _ = /*geom*/\n r[4].y), E(p, \"height\", 1), E(p, \"width\", g = /*geom*/\n r[4].w), E(y, \"class\", \"a9s-edge-handle a9s-edge-handle-right\"), E(y, \"x\", T = /*geom*/\n r[4].x + /*geom*/\n r[4].w), E(y, \"y\", x = /*geom*/\n r[4].y), E(y, \"height\", w = /*geom*/\n r[4].h), E(y, \"width\", 1), E(I, \"class\", \"a9s-edge-handle a9s-edge-handle-bottom\"), E(I, \"x\", O = /*geom*/\n r[4].x), E(I, \"y\", b = /*geom*/\n r[4].y + /*geom*/\n r[4].h), E(I, \"height\", 1), E(I, \"width\", P = /*geom*/\n r[4].w), E(R, \"class\", \"a9s-edge-handle a9s-edge-handle-left\"), E(R, \"x\", M = /*geom*/\n r[4].x), E(R, \"y\", D = /*geom*/\n r[4].y), E(R, \"height\", B = /*geom*/\n r[4].h), E(R, \"width\", 1), E($, \"class\", \"a9s-corner-handle a9s-corner-handle-topleft\"), E($, \"x\", Q = /*geom*/\n r[4].x - /*handleSize*/\n r[3] / 2), E($, \"y\", U = /*geom*/\n r[4].y - /*handleSize*/\n r[3] / 2), E(\n $,\n \"height\",\n /*handleSize*/\n r[3]\n ), E(\n $,\n \"width\",\n /*handleSize*/\n r[3]\n ), E(H, \"class\", \"a9s-corner-handle a9s-corner-handle-topright\"), E(H, \"x\", tt = /*geom*/\n r[4].x + /*geom*/\n r[4].w - /*handleSize*/\n r[3] / 2), E(H, \"y\", et = /*geom*/\n r[4].y - /*handleSize*/\n r[3] / 2), E(\n H,\n \"height\",\n /*handleSize*/\n r[3]\n ), E(\n H,\n \"width\",\n /*handleSize*/\n r[3]\n ), E(Y, \"class\", \"a9s-corner-handle a9s-corner-handle-bottomright\"), E(Y, \"x\", st = /*geom*/\n r[4].x + /*geom*/\n r[4].w - /*handleSize*/\n r[3] / 2), E(Y, \"y\", _t = /*geom*/\n r[4].y + /*geom*/\n r[4].h - /*handleSize*/\n r[3] / 2), E(\n Y,\n \"height\",\n /*handleSize*/\n r[3]\n ), E(\n Y,\n \"width\",\n /*handleSize*/\n r[3]\n ), E(q, \"class\", \"a9s-corner-handle a9s-corner-handle-bottomleft\"), E(q, \"x\", it = /*geom*/\n r[4].x - /*handleSize*/\n r[3] / 2), E(q, \"y\", at = /*geom*/\n r[4].y + /*geom*/\n r[4].h - /*handleSize*/\n r[3] / 2), E(\n q,\n \"height\",\n /*handleSize*/\n r[3]\n ), E(\n q,\n \"width\",\n /*handleSize*/\n r[3]\n );\n },\n m(N, C) {\n Z(N, t, C), Z(N, s, C), Z(N, u, C), Z(N, d, C), Z(N, p, C), Z(N, m, C), Z(N, y, C), Z(N, S, C), Z(N, I, C), Z(N, A, C), Z(N, R, C), Z(N, X, C), Z(N, $, C), Z(N, L, C), Z(N, H, C), Z(N, pt, C), Z(N, Y, C), Z(N, Et, C), Z(N, q, C), ft || (nt = [\n Vt(t, \"pointerdown\", function() {\n jt(\n /*grab*/\n r[10](z.SHAPE)\n ) && r[10](z.SHAPE).apply(this, arguments);\n }),\n Vt(u, \"pointerdown\", function() {\n jt(\n /*grab*/\n r[10](z.SHAPE)\n ) && r[10](z.SHAPE).apply(this, arguments);\n }),\n Vt(p, \"pointerdown\", function() {\n jt(\n /*grab*/\n r[10](z.TOP)\n ) && r[10](z.TOP).apply(this, arguments);\n }),\n Vt(y, \"pointerdown\", function() {\n jt(\n /*grab*/\n r[10](z.RIGHT)\n ) && r[10](z.RIGHT).apply(this, arguments);\n }),\n Vt(I, \"pointerdown\", function() {\n jt(\n /*grab*/\n r[10](z.BOTTOM)\n ) && r[10](z.BOTTOM).apply(this, arguments);\n }),\n Vt(R, \"pointerdown\", function() {\n jt(\n /*grab*/\n r[10](z.LEFT)\n ) && r[10](z.LEFT).apply(this, arguments);\n }),\n Vt($, \"pointerdown\", function() {\n jt(\n /*grab*/\n r[10](z.TOP_LEFT)\n ) && r[10](z.TOP_LEFT).apply(this, arguments);\n }),\n Vt(H, \"pointerdown\", function() {\n jt(\n /*grab*/\n r[10](z.TOP_RIGHT)\n ) && r[10](z.TOP_RIGHT).apply(this, arguments);\n }),\n Vt(Y, \"pointerdown\", function() {\n jt(\n /*grab*/\n r[10](z.BOTTOM_RIGHT)\n ) && r[10](z.BOTTOM_RIGHT).apply(this, arguments);\n }),\n Vt(q, \"pointerdown\", function() {\n jt(\n /*grab*/\n r[10](z.BOTTOM_LEFT)\n ) && r[10](z.BOTTOM_LEFT).apply(this, arguments);\n })\n ], ft = !0);\n },\n p(N, C) {\n r = N, C & /*computedStyle*/\n 2 && e !== (e = /*computedStyle*/\n r[1] ? \"display:none;\" : void 0) && E(t, \"style\", e), C & /*geom*/\n 16 && n !== (n = /*geom*/\n r[4].x) && E(t, \"x\", n), C & /*geom*/\n 16 && i !== (i = /*geom*/\n r[4].y) && E(t, \"y\", i), C & /*geom*/\n 16 && o !== (o = /*geom*/\n r[4].w) && E(t, \"width\", o), C & /*geom*/\n 16 && a !== (a = /*geom*/\n r[4].h) && E(t, \"height\", a), C & /*computedStyle*/\n 2 && E(\n u,\n \"style\",\n /*computedStyle*/\n r[1]\n ), C & /*geom*/\n 16 && h !== (h = /*geom*/\n r[4].x) && E(u, \"x\", h), C & /*geom*/\n 16 && f !== (f = /*geom*/\n r[4].y) && E(u, \"y\", f), C & /*geom*/\n 16 && l !== (l = /*geom*/\n r[4].w) && E(u, \"width\", l), C & /*geom*/\n 16 && c !== (c = /*geom*/\n r[4].h) && E(u, \"height\", c), C & /*geom*/\n 16 && v !== (v = /*geom*/\n r[4].x) && E(p, \"x\", v), C & /*geom*/\n 16 && _ !== (_ = /*geom*/\n r[4].y) && E(p, \"y\", _), C & /*geom*/\n 16 && g !== (g = /*geom*/\n r[4].w) && E(p, \"width\", g), C & /*geom*/\n 16 && T !== (T = /*geom*/\n r[4].x + /*geom*/\n r[4].w) && E(y, \"x\", T), C & /*geom*/\n 16 && x !== (x = /*geom*/\n r[4].y) && E(y, \"y\", x), C & /*geom*/\n 16 && w !== (w = /*geom*/\n r[4].h) && E(y, \"height\", w), C & /*geom*/\n 16 && O !== (O = /*geom*/\n r[4].x) && E(I, \"x\", O), C & /*geom*/\n 16 && b !== (b = /*geom*/\n r[4].y + /*geom*/\n r[4].h) && E(I, \"y\", b), C & /*geom*/\n 16 && P !== (P = /*geom*/\n r[4].w) && E(I, \"width\", P), C & /*geom*/\n 16 && M !== (M = /*geom*/\n r[4].x) && E(R, \"x\", M), C & /*geom*/\n 16 && D !== (D = /*geom*/\n r[4].y) && E(R, \"y\", D), C & /*geom*/\n 16 && B !== (B = /*geom*/\n r[4].h) && E(R, \"height\", B), C & /*geom, handleSize*/\n 24 && Q !== (Q = /*geom*/\n r[4].x - /*handleSize*/\n r[3] / 2) && E($, \"x\", Q), C & /*geom, handleSize*/\n 24 && U !== (U = /*geom*/\n r[4].y - /*handleSize*/\n r[3] / 2) && E($, \"y\", U), C & /*handleSize*/\n 8 && E(\n $,\n \"height\",\n /*handleSize*/\n r[3]\n ), C & /*handleSize*/\n 8 && E(\n $,\n \"width\",\n /*handleSize*/\n r[3]\n ), C & /*geom, handleSize*/\n 24 && tt !== (tt = /*geom*/\n r[4].x + /*geom*/\n r[4].w - /*handleSize*/\n r[3] / 2) && E(H, \"x\", tt), C & /*geom, handleSize*/\n 24 && et !== (et = /*geom*/\n r[4].y - /*handleSize*/\n r[3] / 2) && E(H, \"y\", et), C & /*handleSize*/\n 8 && E(\n H,\n \"height\",\n /*handleSize*/\n r[3]\n ), C & /*handleSize*/\n 8 && E(\n H,\n \"width\",\n /*handleSize*/\n r[3]\n ), C & /*geom, handleSize*/\n 24 && st !== (st = /*geom*/\n r[4].x + /*geom*/\n r[4].w - /*handleSize*/\n r[3] / 2) && E(Y, \"x\", st), C & /*geom, handleSize*/\n 24 && _t !== (_t = /*geom*/\n r[4].y + /*geom*/\n r[4].h - /*handleSize*/\n r[3] / 2) && E(Y, \"y\", _t), C & /*handleSize*/\n 8 && E(\n Y,\n \"height\",\n /*handleSize*/\n r[3]\n ), C & /*handleSize*/\n 8 && E(\n Y,\n \"width\",\n /*handleSize*/\n r[3]\n ), C & /*geom, handleSize*/\n 24 && it !== (it = /*geom*/\n r[4].x - /*handleSize*/\n r[3] / 2) && E(q, \"x\", it), C & /*geom, handleSize*/\n 24 && at !== (at = /*geom*/\n r[4].y + /*geom*/\n r[4].h - /*handleSize*/\n r[3] / 2) && E(q, \"y\", at), C & /*handleSize*/\n 8 && E(\n q,\n \"height\",\n /*handleSize*/\n r[3]\n ), C & /*handleSize*/\n 8 && E(\n q,\n \"width\",\n /*handleSize*/\n r[3]\n );\n },\n d(N) {\n N && K(t), N && K(s), N && K(u), N && K(d), N && K(p), N && K(m), N && K(y), N && K(S), N && K(I), N && K(A), N && K(R), N && K(X), N && K($), N && K(L), N && K(H), N && K(pt), N && K(Y), N && K(Et), N && K(q), ft = !1, ke(nt);\n }\n };\n}\nfunction _c(r) {\n let t, e;\n return t = new Wh({\n props: {\n shape: (\n /*shape*/\n r[0]\n ),\n transform: (\n /*transform*/\n r[2]\n ),\n editor: (\n /*editor*/\n r[5]\n ),\n $$slots: {\n default: [\n vc,\n ({ grab: n }) => ({ 10: n }),\n ({ grab: n }) => n ? 1024 : 0\n ]\n },\n $$scope: { ctx: r }\n }\n }), t.$on(\n \"grab\",\n /*grab_handler*/\n r[7]\n ), t.$on(\n \"change\",\n /*change_handler*/\n r[8]\n ), t.$on(\n \"release\",\n /*release_handler*/\n r[9]\n ), {\n c() {\n Ee(t.$$.fragment);\n },\n m(n, i) {\n ce(t, n, i), e = !0;\n },\n p(n, [i]) {\n const o = {};\n i & /*shape*/\n 1 && (o.shape = /*shape*/\n n[0]), i & /*transform*/\n 4 && (o.transform = /*transform*/\n n[2]), i & /*$$scope, geom, handleSize, grab, computedStyle*/\n 3098 && (o.$$scope = { dirty: i, ctx: n }), t.$set(o);\n },\n i(n) {\n e || (lt(t.$$.fragment, n), e = !0);\n },\n o(n) {\n mt(t.$$.fragment, n), e = !1;\n },\n d(n) {\n de(t, n);\n }\n };\n}\nfunction mc(r, t, e) {\n let n, i, { shape: o } = t, { computedStyle: a = void 0 } = t, { transform: s } = t, { viewportScale: u = 1 } = t;\n const h = (d, p, v) => {\n const _ = d.geometry.bounds;\n let [g, m] = [_.minX, _.minY], [y, T] = [_.maxX, _.maxY];\n const [x, w] = v;\n if (p === z.SHAPE)\n g += x, y += x, m += w, T += w;\n else {\n switch (p) {\n case z.TOP:\n case z.TOP_LEFT:\n case z.TOP_RIGHT: {\n m += w;\n break;\n }\n case z.BOTTOM:\n case z.BOTTOM_LEFT:\n case z.BOTTOM_RIGHT: {\n T += w;\n break;\n }\n }\n switch (p) {\n case z.LEFT:\n case z.TOP_LEFT:\n case z.BOTTOM_LEFT: {\n g += x;\n break;\n }\n case z.RIGHT:\n case z.TOP_RIGHT:\n case z.BOTTOM_RIGHT: {\n y += x;\n break;\n }\n }\n }\n const S = Math.min(g, y), I = Math.min(m, T), O = Math.abs(y - g), b = Math.abs(T - m);\n return {\n ...d,\n geometry: {\n x: S,\n y: I,\n w: O,\n h: b,\n bounds: {\n minX: S,\n minY: I,\n maxX: S + O,\n maxY: I + b\n }\n }\n };\n };\n function f(d) {\n Dr.call(this, r, d);\n }\n function l(d) {\n Dr.call(this, r, d);\n }\n function c(d) {\n Dr.call(this, r, d);\n }\n return r.$$set = (d) => {\n \"shape\" in d && e(0, o = d.shape), \"computedStyle\" in d && e(1, a = d.computedStyle), \"transform\" in d && e(2, s = d.transform), \"viewportScale\" in d && e(6, u = d.viewportScale);\n }, r.$$.update = () => {\n r.$$.dirty & /*shape*/\n 1 && e(4, n = o.geometry), r.$$.dirty & /*viewportScale*/\n 64 && e(3, i = 10 / u);\n }, [\n o,\n a,\n s,\n i,\n n,\n h,\n u,\n f,\n l,\n c\n ];\n}\nclass gc extends Jt {\n constructor(t) {\n super(), Zt(this, t, mc, _c, Ht, {\n shape: 0,\n computedStyle: 1,\n transform: 2,\n viewportScale: 6\n });\n }\n}\nconst zh = /* @__PURE__ */ new Map([\n [$t.RECTANGLE, gc],\n [$t.POLYGON, pc]\n]), Cs = (r) => zh.get(r.type), yc = (r, t) => zh.set(r, t), z = (r) => `HANDLE-${r}`;\nz.SHAPE = \"SHAPE\";\nz.TOP = \"TOP\";\nz.RIGHT = \"RIGHT\";\nz.BOTTOM = \"BOTTOM\";\nz.LEFT = \"LEFT\";\nz.TOP_LEFT = \"TOP_LEFT\";\nz.TOP_RIGHT = \"TOP_RIGHT\";\nz.BOTTOM_RIGHT = \"BOTTOM_RIGHT\";\nz.BOTTOM_LEFT = \"BOTTOM_LEFT\";\nconst bc = (r) => ({}), Ms = (r) => ({ grab: (\n /*onGrab*/\n r[0]\n) });\nfunction xc(r) {\n let t, e, n, i;\n const o = (\n /*#slots*/\n r[7].default\n ), a = Uh(\n o,\n r,\n /*$$scope*/\n r[6],\n Ms\n );\n return {\n c() {\n t = ct(\"g\"), a && a.c(), E(t, \"class\", \"a9s-annotation selected\");\n },\n m(s, u) {\n Z(s, t, u), a && a.m(t, null), e = !0, n || (i = [\n Vt(\n t,\n \"pointerup\",\n /*onRelease*/\n r[2]\n ),\n Vt(\n t,\n \"pointermove\",\n /*onPointerMove*/\n r[1]\n )\n ], n = !0);\n },\n p(s, [u]) {\n a && a.p && (!e || u & /*$$scope*/\n 64) && Hh(\n a,\n o,\n s,\n /*$$scope*/\n s[6],\n e ? kh(\n o,\n /*$$scope*/\n s[6],\n u,\n bc\n ) : Xh(\n /*$$scope*/\n s[6]\n ),\n Ms\n );\n },\n i(s) {\n e || (lt(a, s), e = !0);\n },\n o(s) {\n mt(a, s), e = !1;\n },\n d(s) {\n s && K(t), a && a.d(s), n = !1, ke(i);\n }\n };\n}\nfunction Ec(r, t, e) {\n let { $$slots: n = {}, $$scope: i } = t;\n const o = qr();\n let { shape: a } = t, { editor: s } = t, { transform: u } = t, h = null, f, l = null;\n const c = (v) => (_) => {\n h = v, f = u.elementToImage(_.offsetX, _.offsetY), l = a, _.target.setPointerCapture(_.pointerId), o(\"grab\");\n }, d = (v) => {\n if (h) {\n const [_, g] = u.elementToImage(v.offsetX, v.offsetY), m = [_ - f[0], g - f[1]];\n e(3, a = s(l, h, m)), o(\"change\", a);\n }\n }, p = (v) => {\n v.target.releasePointerCapture(v.pointerId), h = null, l = a, o(\"release\");\n };\n return r.$$set = (v) => {\n \"shape\" in v && e(3, a = v.shape), \"editor\" in v && e(4, s = v.editor), \"transform\" in v && e(5, u = v.transform), \"$$scope\" in v && e(6, i = v.$$scope);\n }, [c, d, p, a, s, u, i, n];\n}\nclass Wh extends Jt {\n constructor(t) {\n super(), Zt(this, t, Ec, xc, Ht, { shape: 3, editor: 4, transform: 5 });\n }\n}\nconst Tc = (r, t) => {\n const e = typeof t == \"function\" ? t(r) : t;\n if (e) {\n const { fill: n, fillOpacity: i } = e;\n let o = \"\";\n return n && (o += `fill:${n};stroke:${n};`), o += `fill-opacity:${i || \"0.25\"};`, o;\n }\n};\nfunction wc(r, t, e) {\n let n;\n const i = qr();\n let { annotation: o } = t, { editor: a } = t, { style: s = void 0 } = t, { target: u } = t, { transform: h } = t, { viewportScale: f } = t, l;\n return Wr(() => (e(6, l = new a({\n target: u,\n props: {\n shape: o.target.selector,\n computedStyle: n,\n transform: h,\n viewportScale: f\n }\n })), l.$on(\"change\", (c) => {\n l.$$set({ shape: c.detail }), i(\"change\", c.detail);\n }), l.$on(\"grab\", (c) => i(\"grab\", c.detail)), l.$on(\"release\", (c) => i(\"release\", c.detail)), () => {\n l.$destroy();\n })), r.$$set = (c) => {\n \"annotation\" in c && e(0, o = c.annotation), \"editor\" in c && e(1, a = c.editor), \"style\" in c && e(2, s = c.style), \"target\" in c && e(3, u = c.target), \"transform\" in c && e(4, h = c.transform), \"viewportScale\" in c && e(5, f = c.viewportScale);\n }, r.$$.update = () => {\n r.$$.dirty & /*annotation, style*/\n 5 && (n = Tc(o, s)), r.$$.dirty & /*annotation, editorComponent*/\n 65 && o && (l == null || l.$set({ shape: o.target.selector })), r.$$.dirty & /*editorComponent, transform*/\n 80 && l && l.$set({ transform: h }), r.$$.dirty & /*editorComponent, viewportScale*/\n 96 && l && l.$set({ viewportScale: f });\n }, [o, a, s, u, h, f, l];\n}\nclass Sc extends Jt {\n constructor(t) {\n super(), Zt(this, t, wc, null, Ht, {\n annotation: 0,\n editor: 1,\n style: 2,\n target: 3,\n transform: 4,\n viewportScale: 5\n });\n }\n}\nfunction Ds(r) {\n let t, e;\n return {\n c() {\n t = ct(\"rect\"), e = ct(\"rect\"), E(t, \"class\", \"a9s-outer\"), E(\n t,\n \"x\",\n /*x*/\n r[1]\n ), E(\n t,\n \"y\",\n /*y*/\n r[2]\n ), E(\n t,\n \"width\",\n /*w*/\n r[3]\n ), E(\n t,\n \"height\",\n /*h*/\n r[4]\n ), E(e, \"class\", \"a9s-inner\"), E(\n e,\n \"x\",\n /*x*/\n r[1]\n ), E(\n e,\n \"y\",\n /*y*/\n r[2]\n ), E(\n e,\n \"width\",\n /*w*/\n r[3]\n ), E(\n e,\n \"height\",\n /*h*/\n r[4]\n );\n },\n m(n, i) {\n Z(n, t, i), Z(n, e, i);\n },\n p(n, i) {\n i & /*x*/\n 2 && E(\n t,\n \"x\",\n /*x*/\n n[1]\n ), i & /*y*/\n 4 && E(\n t,\n \"y\",\n /*y*/\n n[2]\n ), i & /*w*/\n 8 && E(\n t,\n \"width\",\n /*w*/\n n[3]\n ), i & /*h*/\n 16 && E(\n t,\n \"height\",\n /*h*/\n n[4]\n ), i & /*x*/\n 2 && E(\n e,\n \"x\",\n /*x*/\n n[1]\n ), i & /*y*/\n 4 && E(\n e,\n \"y\",\n /*y*/\n n[2]\n ), i & /*w*/\n 8 && E(\n e,\n \"width\",\n /*w*/\n n[3]\n ), i & /*h*/\n 16 && E(\n e,\n \"height\",\n /*h*/\n n[4]\n );\n },\n d(n) {\n n && K(t), n && K(e);\n }\n };\n}\nfunction Ac(r) {\n let t, e = (\n /*origin*/\n r[0] && Ds(r)\n );\n return {\n c() {\n t = ct(\"g\"), e && e.c(), E(t, \"class\", \"a9s-annotation a9s-rubberband\");\n },\n m(n, i) {\n Z(n, t, i), e && e.m(t, null);\n },\n p(n, [i]) {\n /*origin*/\n n[0] ? e ? e.p(n, i) : (e = Ds(n), e.c(), e.m(t, null)) : e && (e.d(1), e = null);\n },\n i: qt,\n o: qt,\n d(n) {\n n && K(t), e && e.d();\n }\n };\n}\nfunction Pc(r, t, e) {\n const n = qr();\n let { addEventListener: i } = t, { drawingMode: o } = t, { transform: a } = t, s, u, h, f, l, c, d;\n const p = (m) => {\n s = performance.now(), o === \"drag\" && (e(0, u = a.elementToImage(m.offsetX, m.offsetY)), h = u, e(1, f = u[0]), e(2, l = u[1]), e(3, c = 1), e(4, d = 1));\n }, v = (m) => {\n u && (h = a.elementToImage(m.offsetX, m.offsetY), e(1, f = Math.min(h[0], u[0])), e(2, l = Math.min(h[1], u[1])), e(3, c = Math.abs(h[0] - u[0])), e(4, d = Math.abs(h[1] - u[1])));\n }, _ = (m) => {\n const y = performance.now() - s;\n if (o === \"click\") {\n if (y > 300)\n return;\n m.stopPropagation(), u ? g() : (e(0, u = a.elementToImage(m.offsetX, m.offsetY)), h = u, e(1, f = u[0]), e(2, l = u[1]), e(3, c = 1), e(4, d = 1));\n } else\n u && (y > 300 || c * d > 100 ? (m.stopPropagation(), g()) : (e(0, u = null), h = null));\n }, g = () => {\n if (c * d > 15) {\n const m = {\n type: $t.RECTANGLE,\n geometry: {\n bounds: {\n minX: f,\n minY: l,\n maxX: f + c,\n maxY: l + d\n },\n x: f,\n y: l,\n w: c,\n h: d\n }\n };\n n(\"create\", m);\n }\n e(0, u = null), h = null;\n };\n return Wr(() => {\n i(\"pointerdown\", p), i(\"pointermove\", v), i(\"pointerup\", _, !0);\n }), r.$$set = (m) => {\n \"addEventListener\" in m && e(5, i = m.addEventListener), \"drawingMode\" in m && e(6, o = m.drawingMode), \"transform\" in m && e(7, a = m.transform);\n }, [u, f, l, c, d, i, o, a];\n}\nclass Oc extends Jt {\n constructor(t) {\n super(), Zt(this, t, Pc, Ac, Ht, {\n addEventListener: 5,\n drawingMode: 6,\n transform: 7\n });\n }\n}\nconst qi = (r, t) => {\n const e = Math.abs(t[0] - r[0]), n = Math.abs(t[1] - r[1]);\n return Math.sqrt(Math.pow(e, 2) + Math.pow(n, 2));\n};\nfunction $i(r) {\n const t = r.slice(), e = (\n /*isClosable*/\n (t[2] ? (\n /*points*/\n t[0]\n ) : [\n .../*points*/\n t[0],\n /*cursor*/\n t[1]\n ]).map((n) => n.join(\",\")).join(\" \")\n );\n return t[15] = e, t;\n}\nfunction Fs(r) {\n let t, e, n, i, o, a = (\n /*isClosable*/\n r[2] && Bs(r)\n );\n return {\n c() {\n t = ct(\"polygon\"), n = ct(\"polygon\"), a && a.c(), o = He(), E(t, \"class\", \"a9s-outer\"), E(t, \"points\", e = /*coords*/\n r[15]), E(n, \"class\", \"a9s-inner\"), E(n, \"points\", i = /*coords*/\n r[15]);\n },\n m(s, u) {\n Z(s, t, u), Z(s, n, u), a && a.m(s, u), Z(s, o, u);\n },\n p(s, u) {\n u & /*isClosable, points, cursor*/\n 7 && e !== (e = /*coords*/\n s[15]) && E(t, \"points\", e), u & /*isClosable, points, cursor*/\n 7 && i !== (i = /*coords*/\n s[15]) && E(n, \"points\", i), /*isClosable*/\n s[2] ? a ? a.p(s, u) : (a = Bs(s), a.c(), a.m(o.parentNode, o)) : a && (a.d(1), a = null);\n },\n d(s) {\n s && K(t), s && K(n), a && a.d(s), s && K(o);\n }\n };\n}\nfunction Bs(r) {\n let t, e, n;\n return {\n c() {\n t = ct(\"rect\"), E(t, \"class\", \"a9s-corner-handle\"), E(t, \"x\", e = /*points*/\n r[0][0][0] - /*handleSize*/\n r[3] / 2), E(t, \"y\", n = /*points*/\n r[0][0][1] - /*handleSize*/\n r[3] / 2), E(\n t,\n \"height\",\n /*handleSize*/\n r[3]\n ), E(\n t,\n \"width\",\n /*handleSize*/\n r[3]\n );\n },\n m(i, o) {\n Z(i, t, o);\n },\n p(i, o) {\n o & /*points, handleSize*/\n 9 && e !== (e = /*points*/\n i[0][0][0] - /*handleSize*/\n i[3] / 2) && E(t, \"x\", e), o & /*points, handleSize*/\n 9 && n !== (n = /*points*/\n i[0][0][1] - /*handleSize*/\n i[3] / 2) && E(t, \"y\", n), o & /*handleSize*/\n 8 && E(\n t,\n \"height\",\n /*handleSize*/\n i[3]\n ), o & /*handleSize*/\n 8 && E(\n t,\n \"width\",\n /*handleSize*/\n i[3]\n );\n },\n d(i) {\n i && K(t);\n }\n };\n}\nfunction Rc(r) {\n let t, e = (\n /*cursor*/\n r[1] && Fs($i(r))\n );\n return {\n c() {\n t = ct(\"g\"), e && e.c(), E(t, \"class\", \"a9s-annotation a9s-rubberband\");\n },\n m(n, i) {\n Z(n, t, i), e && e.m(t, null);\n },\n p(n, [i]) {\n /*cursor*/\n n[1] ? e ? e.p($i(n), i) : (e = Fs($i(n)), e.c(), e.m(t, null)) : e && (e.d(1), e = null);\n },\n i: qt,\n o: qt,\n d(n) {\n n && K(t), e && e.d();\n }\n };\n}\nconst Ic = 20;\nfunction Cc(r, t, e) {\n let n;\n const i = qr();\n let { addEventListener: o } = t, { drawingMode: a } = t, { transform: s } = t, { viewportScale: u = 1 } = t, h, f = [], l = null, c = !1;\n const d = (m) => {\n if (h = { ...m }, a === \"drag\" && f.length === 0) {\n const y = s.elementToImage(m.offsetX, m.offsetY);\n f.push(y), e(1, l = y);\n }\n }, p = (m) => {\n if (f.length > 0 && (e(1, l = s.elementToImage(m.offsetX, m.offsetY)), f.length > 2)) {\n const y = qi(l, f[0]) * u;\n e(2, c = y < Ic);\n }\n }, v = (m) => {\n if (a === \"click\") {\n const y = m.timeStamp - h.timeStamp, T = qi([h.offsetX, h.offsetY], [m.offsetX, m.offsetY]);\n if (y > 300 || T > 15)\n return;\n if (c)\n g();\n else if (f.length === 0) {\n const x = s.elementToImage(m.offsetX, m.offsetY);\n f.push(x), e(1, l = x);\n } else\n f.push(l);\n } else {\n if (f.length === 1 && qi(f[0], l) <= 4) {\n e(0, f = []), e(1, l = null);\n return;\n }\n m.stopImmediatePropagation(), c ? g() : f.push(l);\n }\n }, _ = () => {\n const m = [...f, l], y = {\n type: $t.POLYGON,\n geometry: { bounds: Yo(m), points: m }\n };\n jo(y) > 4 && (e(0, f = []), e(1, l = null), i(\"create\", y));\n }, g = () => {\n const m = {\n type: $t.POLYGON,\n geometry: {\n bounds: Yo(f),\n points: [...f]\n }\n };\n e(0, f = []), e(1, l = null), i(\"create\", m);\n };\n return Wr(() => {\n o(\"pointerdown\", d, !0), o(\"pointermove\", p), o(\"pointerup\", v, !0), o(\"dblclick\", _, !0);\n }), r.$$set = (m) => {\n \"addEventListener\" in m && e(4, o = m.addEventListener), \"drawingMode\" in m && e(5, a = m.drawingMode), \"transform\" in m && e(6, s = m.transform), \"viewportScale\" in m && e(7, u = m.viewportScale);\n }, r.$$.update = () => {\n r.$$.dirty & /*viewportScale*/\n 128 && e(3, n = 10 / u);\n }, [\n f,\n l,\n c,\n n,\n o,\n a,\n s,\n u\n ];\n}\nclass Mc extends Jt {\n constructor(t) {\n super(), Zt(this, t, Cc, Rc, Ht, {\n addEventListener: 4,\n drawingMode: 5,\n transform: 6,\n viewportScale: 7\n });\n }\n}\nconst qa = /* @__PURE__ */ new Map([\n [\"rectangle\", { tool: Oc }],\n [\"polygon\", { tool: Mc }]\n]), Dc = () => [...qa.keys()], qh = (r) => qa.get(r), Fc = (r, t, e) => qa.set(r, { tool: t, opts: e });\nfunction Bc(r, t, e, n, i) {\n $h(r, t, e || 0, n || r.length - 1, i || Nc);\n}\nfunction $h(r, t, e, n, i) {\n for (; n > e; ) {\n if (n - e > 600) {\n var o = n - e + 1, a = t - e + 1, s = Math.log(o), u = 0.5 * Math.exp(2 * s / 3), h = 0.5 * Math.sqrt(s * u * (o - u) / o) * (a - o / 2 < 0 ? -1 : 1), f = Math.max(e, Math.floor(t - a * u / o + h)), l = Math.min(n, Math.floor(t + (o - a) * u / o + h));\n $h(r, t, f, l, i);\n }\n var c = r[t], d = e, p = n;\n for (Zr(r, e, t), i(r[n], c) > 0 && Zr(r, e, n); d < p; ) {\n for (Zr(r, d, p), d++, p--; i(r[d], c) < 0; )\n d++;\n for (; i(r[p], c) > 0; )\n p--;\n }\n i(r[e], c) === 0 ? Zr(r, e, p) : (p++, Zr(r, p, n)), p <= t && (e = p + 1), t <= p && (n = p - 1);\n }\n}\nfunction Zr(r, t, e) {\n var n = r[t];\n r[t] = r[e], r[e] = n;\n}\nfunction Nc(r, t) {\n return r < t ? -1 : r > t ? 1 : 0;\n}\nclass Lc {\n constructor(t = 9) {\n this._maxEntries = Math.max(4, t), this._minEntries = Math.max(2, Math.ceil(this._maxEntries * 0.4)), this.clear();\n }\n all() {\n return this._all(this.data, []);\n }\n search(t) {\n let e = this.data;\n const n = [];\n if (!Un(t, e))\n return n;\n const i = this.toBBox, o = [];\n for (; e; ) {\n for (let a = 0; a < e.children.length; a++) {\n const s = e.children[a], u = e.leaf ? i(s) : s;\n Un(t, u) && (e.leaf ? n.push(s) : Zi(t, u) ? this._all(s, n) : o.push(s));\n }\n e = o.pop();\n }\n return n;\n }\n collides(t) {\n let e = this.data;\n if (!Un(t, e))\n return !1;\n const n = [];\n for (; e; ) {\n for (let i = 0; i < e.children.length; i++) {\n const o = e.children[i], a = e.leaf ? this.toBBox(o) : o;\n if (Un(t, a)) {\n if (e.leaf || Zi(t, a))\n return !0;\n n.push(o);\n }\n }\n e = n.pop();\n }\n return !1;\n }\n load(t) {\n if (!(t && t.length))\n return this;\n if (t.length < this._minEntries) {\n for (let n = 0; n < t.length; n++)\n this.insert(t[n]);\n return this;\n }\n let e = this._build(t.slice(), 0, t.length - 1, 0);\n if (!this.data.children.length)\n this.data = e;\n else if (this.data.height === e.height)\n this._splitRoot(this.data, e);\n else {\n if (this.data.height < e.height) {\n const n = this.data;\n this.data = e, e = n;\n }\n this._insert(e, this.data.height - e.height - 1, !0);\n }\n return this;\n }\n insert(t) {\n return t && this._insert(t, this.data.height - 1), this;\n }\n clear() {\n return this.data = Ar([]), this;\n }\n remove(t, e) {\n if (!t)\n return this;\n let n = this.data;\n const i = this.toBBox(t), o = [], a = [];\n let s, u, h;\n for (; n || o.length; ) {\n if (n || (n = o.pop(), u = o[o.length - 1], s = a.pop(), h = !0), n.leaf) {\n const f = Uc(t, n.children, e);\n if (f !== -1)\n return n.children.splice(f, 1), o.push(n), this._condense(o), this;\n }\n !h && !n.leaf && Zi(n, i) ? (o.push(n), a.push(s), s = 0, u = n, n = n.children[0]) : u ? (s++, n = u.children[s], h = !1) : n = null;\n }\n return this;\n }\n toBBox(t) {\n return t;\n }\n compareMinX(t, e) {\n return t.minX - e.minX;\n }\n compareMinY(t, e) {\n return t.minY - e.minY;\n }\n toJSON() {\n return this.data;\n }\n fromJSON(t) {\n return this.data = t, this;\n }\n _all(t, e) {\n const n = [];\n for (; t; )\n t.leaf ? e.push(...t.children) : n.push(...t.children), t = n.pop();\n return e;\n }\n _build(t, e, n, i) {\n const o = n - e + 1;\n let a = this._maxEntries, s;\n if (o <= a)\n return s = Ar(t.slice(e, n + 1)), gr(s, this.toBBox), s;\n i || (i = Math.ceil(Math.log(o) / Math.log(a)), a = Math.ceil(o / Math.pow(a, i - 1))), s = Ar([]), s.leaf = !1, s.height = i;\n const u = Math.ceil(o / a), h = u * Math.ceil(Math.sqrt(a));\n Ns(t, e, n, h, this.compareMinX);\n for (let f = e; f <= n; f += h) {\n const l = Math.min(f + h - 1, n);\n Ns(t, f, l, u, this.compareMinY);\n for (let c = f; c <= l; c += u) {\n const d = Math.min(c + u - 1, l);\n s.children.push(this._build(t, c, d, i - 1));\n }\n }\n return gr(s, this.toBBox), s;\n }\n _chooseSubtree(t, e, n, i) {\n for (; i.push(e), !(e.leaf || i.length - 1 === n); ) {\n let o = 1 / 0, a = 1 / 0, s;\n for (let u = 0; u < e.children.length; u++) {\n const h = e.children[u], f = Ki(h), l = Hc(t, h) - f;\n l < a ? (a = l, o = f < o ? f : o, s = h) : l === a && f < o && (o = f, s = h);\n }\n e = s || e.children[0];\n }\n return e;\n }\n _insert(t, e, n) {\n const i = n ? t : this.toBBox(t), o = [], a = this._chooseSubtree(i, this.data, e, o);\n for (a.children.push(t), un(a, i); e >= 0 && o[e].children.length > this._maxEntries; )\n this._split(o, e), e--;\n this._adjustParentBBoxes(i, o, e);\n }\n // split overflowed node into two\n _split(t, e) {\n const n = t[e], i = n.children.length, o = this._minEntries;\n this._chooseSplitAxis(n, o, i);\n const a = this._chooseSplitIndex(n, o, i), s = Ar(n.children.splice(a, n.children.length - a));\n s.height = n.height, s.leaf = n.leaf, gr(n, this.toBBox), gr(s, this.toBBox), e ? t[e - 1].children.push(s) : this._splitRoot(n, s);\n }\n _splitRoot(t, e) {\n this.data = Ar([t, e]), this.data.height = t.height + 1, this.data.leaf = !1, gr(this.data, this.toBBox);\n }\n _chooseSplitIndex(t, e, n) {\n let i, o = 1 / 0, a = 1 / 0;\n for (let s = e; s <= n - e; s++) {\n const u = sn(t, 0, s, this.toBBox), h = sn(t, s, n, this.toBBox), f = Xc(u, h), l = Ki(u) + Ki(h);\n f < o ? (o = f, i = s, a = l < a ? l : a) : f === o && l < a && (a = l, i = s);\n }\n return i || n - e;\n }\n // sorts node children by the best axis for split\n _chooseSplitAxis(t, e, n) {\n const i = t.leaf ? this.compareMinX : Gc, o = t.leaf ? this.compareMinY : kc, a = this._allDistMargin(t, e, n, i), s = this._allDistMargin(t, e, n, o);\n a < s && t.children.sort(i);\n }\n // total margin of all possible split distributions where each node is at least m full\n _allDistMargin(t, e, n, i) {\n t.children.sort(i);\n const o = this.toBBox, a = sn(t, 0, e, o), s = sn(t, n - e, n, o);\n let u = Ln(a) + Ln(s);\n for (let h = e; h < n - e; h++) {\n const f = t.children[h];\n un(a, t.leaf ? o(f) : f), u += Ln(a);\n }\n for (let h = n - e - 1; h >= e; h--) {\n const f = t.children[h];\n un(s, t.leaf ? o(f) : f), u += Ln(s);\n }\n return u;\n }\n _adjustParentBBoxes(t, e, n) {\n for (let i = n; i >= 0; i--)\n un(e[i], t);\n }\n _condense(t) {\n for (let e = t.length - 1, n; e >= 0; e--)\n t[e].children.length === 0 ? e > 0 ? (n = t[e - 1].children, n.splice(n.indexOf(t[e]), 1)) : this.clear() : gr(t[e], this.toBBox);\n }\n}\nfunction Uc(r, t, e) {\n if (!e)\n return t.indexOf(r);\n for (let n = 0; n < t.length; n++)\n if (e(r, t[n]))\n return n;\n return -1;\n}\nfunction gr(r, t) {\n sn(r, 0, r.children.length, t, r);\n}\nfunction sn(r, t, e, n, i) {\n i || (i = Ar(null)), i.minX = 1 / 0, i.minY = 1 / 0, i.maxX = -1 / 0, i.maxY = -1 / 0;\n for (let o = t; o < e; o++) {\n const a = r.children[o];\n un(i, r.leaf ? n(a) : a);\n }\n return i;\n}\nfunction un(r, t) {\n return r.minX = Math.min(r.minX, t.minX), r.minY = Math.min(r.minY, t.minY), r.maxX = Math.max(r.maxX, t.maxX), r.maxY = Math.max(r.maxY, t.maxY), r;\n}\nfunction Gc(r, t) {\n return r.minX - t.minX;\n}\nfunction kc(r, t) {\n return r.minY - t.minY;\n}\nfunction Ki(r) {\n return (r.maxX - r.minX) * (r.maxY - r.minY);\n}\nfunction Ln(r) {\n return r.maxX - r.minX + (r.maxY - r.minY);\n}\nfunction Hc(r, t) {\n return (Math.max(t.maxX, r.maxX) - Math.min(t.minX, r.minX)) * (Math.max(t.maxY, r.maxY) - Math.min(t.minY, r.minY));\n}\nfunction Xc(r, t) {\n const e = Math.max(r.minX, t.minX), n = Math.max(r.minY, t.minY), i = Math.min(r.maxX, t.maxX), o = Math.min(r.maxY, t.maxY);\n return Math.max(0, i - e) * Math.max(0, o - n);\n}\nfunction Zi(r, t) {\n return r.minX <= t.minX && r.minY <= t.minY && t.maxX <= r.maxX && t.maxY <= r.maxY;\n}\nfunction Un(r, t) {\n return t.minX <= r.maxX && t.minY <= r.maxY && t.maxX >= r.minX && t.maxY >= r.minY;\n}\nfunction Ar(r) {\n return {\n children: r,\n height: 1,\n leaf: !0,\n minX: 1 / 0,\n minY: 1 / 0,\n maxX: -1 / 0,\n maxY: -1 / 0\n };\n}\nfunction Ns(r, t, e, n, i) {\n const o = [t, e];\n for (; o.length; ) {\n if (e = o.pop(), t = o.pop(), e - t <= n)\n continue;\n const a = t + Math.ceil((e - t) / n / 2) * n;\n Bc(r, a, t, e, i), o.push(t, a, a, e);\n }\n}\nconst jc = () => {\n const r = new Lc(), t = /* @__PURE__ */ new Map(), e = () => [...t.values()], n = () => {\n r.clear(), t.clear();\n }, i = (l) => {\n const { minX: c, minY: d, maxX: p, maxY: v } = l.selector.geometry.bounds, _ = { minX: c, minY: d, maxX: p, maxY: v, target: l };\n r.insert(_), t.set(l.annotation, _);\n }, o = (l) => {\n const c = t.get(l.annotation);\n r.remove(c), t.delete(l.annotation);\n };\n return {\n all: e,\n clear: n,\n getAt: (l, c) => {\n const p = r.search({\n minX: l,\n minY: c,\n maxX: l,\n maxY: c\n }).map((v) => v.target).filter((v) => v.selector.type === $t.RECTANGLE || sc(v.selector, l, c));\n if (p.length > 0)\n return p.sort((v, _) => jo(v.selector) - jo(_.selector)), p[0];\n },\n getIntersecting: (l, c, d, p) => r.search({\n minX: l,\n minY: c,\n maxX: l + d,\n maxY: c + p\n }).map((v) => v.target),\n insert: i,\n remove: o,\n set: (l, c = !0) => {\n c && n();\n const d = l.map((p) => {\n const { minX: v, minY: _, maxX: g, maxY: m } = p.selector.geometry.bounds;\n return { minX: v, minY: _, maxX: g, maxY: m, target: p };\n });\n d.forEach((p) => t.set(p.target.annotation, p)), r.load(d);\n },\n size: () => r.all().length,\n update: (l, c) => {\n o(l), i(c);\n }\n };\n}, Yc = (r) => {\n const t = Wf(), e = jc(), n = Df(t, r.pointerSelectAction), i = Mf(t), o = Kf();\n return t.observe(({ changes: u }) => {\n e.set(u.created.map((h) => h.target), !1), u.deleted.forEach((h) => e.remove(h.target)), u.updated.forEach(({ oldValue: h, newValue: f }) => e.update(h.target, f.target));\n }), {\n store: {\n ...t,\n getAt: (u, h) => {\n const f = e.getAt(u, h);\n return f ? t.getAnnotation(f.annotation) : void 0;\n },\n getIntersecting: (u, h, f, l) => e.getIntersecting(u, h, f, l).map((c) => t.getAnnotation(c.annotation))\n },\n selection: n,\n hover: i,\n viewport: o\n };\n}, Vc = (r) => {\n let t, e;\n if (r.nodeName === \"CANVAS\")\n t = r, e = t.getContext(\"2d\", { willReadFrequently: !0 });\n else {\n const i = r;\n t = document.createElement(\"canvas\"), t.width = i.width, t.height = i.height, e = t.getContext(\"2d\", { willReadFrequently: !0 }), e.drawImage(i, 0, 0, i.width, i.height);\n }\n let n = 0;\n for (let i = 1; i < 10; i++)\n for (let o = 1; o < 10; o++) {\n const a = Math.round(o * t.width / 10), s = Math.round(i * t.height / 10), u = e.getImageData(a, s, 1, 1).data, h = (0.299 * u[0] + 0.587 * u[1] + 0.114 * u[2]) / 255;\n n += h;\n }\n return n / 81;\n}, zc = (r, t) => {\n const e = Vc(r), n = e > 0.6 ? \"dark\" : \"light\";\n console.log(`[Annotorious] Image brightness: ${e.toFixed(1)}. Setting ${n} theme.`), t.setAttribute(\"data-theme\", n);\n}, Wc = (r) => ({\n ...r,\n drawingEnabled: r.drawingEnabled === void 0 ? !0 : r.drawingEnabled,\n drawingMode: r.drawingMode || \"drag\",\n pointerSelectAction: r.pointerSelectAction || Va.EDIT\n}), Ls = navigator.userAgent.indexOf(\"Mac OS X\") !== -1, qc = (r, t) => {\n const e = t || document, n = (a) => {\n a.key === \"Z\" && a.ctrlKey ? r.undo() : a.key === \"Y\" && a.ctrlKey && r.redo();\n }, i = (a) => {\n a.key === \"z\" && a.metaKey && (a.shiftKey ? r.redo() : r.undo());\n }, o = () => {\n Ls ? e.removeEventListener(\"keydown\", i) : e.removeEventListener(\"keydown\", n);\n };\n return Ls ? e.addEventListener(\"keydown\", i) : e.addEventListener(\"keydown\", n), {\n destroy: o\n };\n};\nfunction $c(r) {\n var t = this.constructor;\n return this.then(\n function(e) {\n return t.resolve(r()).then(function() {\n return e;\n });\n },\n function(e) {\n return t.resolve(r()).then(function() {\n return t.reject(e);\n });\n }\n );\n}\nfunction Kc(r) {\n var t = this;\n return new t(function(e, n) {\n if (!(r && typeof r.length < \"u\"))\n return n(\n new TypeError(\n typeof r + \" \" + r + \" is not iterable(cannot read property Symbol(Symbol.iterator))\"\n )\n );\n var i = Array.prototype.slice.call(r);\n if (i.length === 0)\n return e([]);\n var o = i.length;\n function a(u, h) {\n if (h && (typeof h == \"object\" || typeof h == \"function\")) {\n var f = h.then;\n if (typeof f == \"function\") {\n f.call(\n h,\n function(l) {\n a(u, l);\n },\n function(l) {\n i[u] = { status: \"rejected\", reason: l }, --o === 0 && e(i);\n }\n );\n return;\n }\n }\n i[u] = { status: \"fulfilled\", value: h }, --o === 0 && e(i);\n }\n for (var s = 0; s < i.length; s++)\n a(s, i[s]);\n });\n}\nfunction Kh(r, t) {\n this.name = \"AggregateError\", this.errors = r, this.message = t || \"\";\n}\nKh.prototype = Error.prototype;\nfunction Zc(r) {\n var t = this;\n return new t(function(e, n) {\n if (!(r && typeof r.length < \"u\"))\n return n(new TypeError(\"Promise.any accepts an array\"));\n var i = Array.prototype.slice.call(r);\n if (i.length === 0)\n return n();\n for (var o = [], a = 0; a < i.length; a++)\n try {\n t.resolve(i[a]).then(e).catch(function(s) {\n o.push(s), o.length === i.length && n(\n new Kh(\n o,\n \"All promises were rejected\"\n )\n );\n });\n } catch (s) {\n n(s);\n }\n });\n}\nvar Jc = setTimeout;\nfunction Zh(r) {\n return !!(r && typeof r.length < \"u\");\n}\nfunction Qc() {\n}\nfunction td(r, t) {\n return function() {\n r.apply(t, arguments);\n };\n}\nfunction Pt(r) {\n if (!(this instanceof Pt))\n throw new TypeError(\"Promises must be constructed via new\");\n if (typeof r != \"function\")\n throw new TypeError(\"not a function\");\n this._state = 0, this._handled = !1, this._value = void 0, this._deferreds = [], Qh(r, this);\n}\nfunction Jh(r, t) {\n for (; r._state === 3; )\n r = r._value;\n if (r._state === 0) {\n r._deferreds.push(t);\n return;\n }\n r._handled = !0, Pt._immediateFn(function() {\n var e = r._state === 1 ? t.onFulfilled : t.onRejected;\n if (e === null) {\n (r._state === 1 ? Vo : mn)(t.promise, r._value);\n return;\n }\n var n;\n try {\n n = e(r._value);\n } catch (i) {\n mn(t.promise, i);\n return;\n }\n Vo(t.promise, n);\n });\n}\nfunction Vo(r, t) {\n try {\n if (t === r)\n throw new TypeError(\"A promise cannot be resolved with itself.\");\n if (t && (typeof t == \"object\" || typeof t == \"function\")) {\n var e = t.then;\n if (t instanceof Pt) {\n r._state = 3, r._value = t, zo(r);\n return;\n } else if (typeof e == \"function\") {\n Qh(td(e, t), r);\n return;\n }\n }\n r._state = 1, r._value = t, zo(r);\n } catch (n) {\n mn(r, n);\n }\n}\nfunction mn(r, t) {\n r._state = 2, r._value = t, zo(r);\n}\nfunction zo(r) {\n r._state === 2 && r._deferreds.length === 0 && Pt._immediateFn(function() {\n r._handled || Pt._unhandledRejectionFn(r._value);\n });\n for (var t = 0, e = r._deferreds.length; t < e; t++)\n Jh(r, r._deferreds[t]);\n r._deferreds = null;\n}\nfunction ed(r, t, e) {\n this.onFulfilled = typeof r == \"function\" ? r : null, this.onRejected = typeof t == \"function\" ? t : null, this.promise = e;\n}\nfunction Qh(r, t) {\n var e = !1;\n try {\n r(\n function(n) {\n e || (e = !0, Vo(t, n));\n },\n function(n) {\n e || (e = !0, mn(t, n));\n }\n );\n } catch (n) {\n if (e)\n return;\n e = !0, mn(t, n);\n }\n}\nPt.prototype.catch = function(r) {\n return this.then(null, r);\n};\nPt.prototype.then = function(r, t) {\n var e = new this.constructor(Qc);\n return Jh(this, new ed(r, t, e)), e;\n};\nPt.prototype.finally = $c;\nPt.all = function(r) {\n return new Pt(function(t, e) {\n if (!Zh(r))\n return e(new TypeError(\"Promise.all accepts an array\"));\n var n = Array.prototype.slice.call(r);\n if (n.length === 0)\n return t([]);\n var i = n.length;\n function o(s, u) {\n try {\n if (u && (typeof u == \"object\" || typeof u == \"function\")) {\n var h = u.then;\n if (typeof h == \"function\") {\n h.call(\n u,\n function(f) {\n o(s, f);\n },\n e\n );\n return;\n }\n }\n n[s] = u, --i === 0 && t(n);\n } catch (f) {\n e(f);\n }\n }\n for (var a = 0; a < n.length; a++)\n o(a, n[a]);\n });\n};\nPt.any = Zc;\nPt.allSettled = Kc;\nPt.resolve = function(r) {\n return r && typeof r == \"object\" && r.constructor === Pt ? r : new Pt(function(t) {\n t(r);\n });\n};\nPt.reject = function(r) {\n return new Pt(function(t, e) {\n e(r);\n });\n};\nPt.race = function(r) {\n return new Pt(function(t, e) {\n if (!Zh(r))\n return e(new TypeError(\"Promise.race accepts an array\"));\n for (var n = 0, i = r.length; n < i; n++)\n Pt.resolve(r[n]).then(t, e);\n });\n};\nPt._immediateFn = // @ts-ignore\ntypeof setImmediate == \"function\" && function(r) {\n setImmediate(r);\n} || function(r) {\n Jc(r, 0);\n};\nPt._unhandledRejectionFn = function(t) {\n typeof console < \"u\" && console && console.warn(\"Possible Unhandled Promise Rejection:\", t);\n};\nvar vi = typeof globalThis < \"u\" ? globalThis : typeof window < \"u\" ? window : typeof global < \"u\" ? global : typeof self < \"u\" ? self : {};\nfunction $a(r) {\n return r && r.__esModule && Object.prototype.hasOwnProperty.call(r, \"default\") ? r.default : r;\n}\nfunction rd(r) {\n if (r.__esModule)\n return r;\n var t = r.default;\n if (typeof t == \"function\") {\n var e = function n() {\n return this instanceof n ? Reflect.construct(t, arguments, this.constructor) : t.apply(this, arguments);\n };\n e.prototype = t.prototype;\n } else\n e = {};\n return Object.defineProperty(e, \"__esModule\", { value: !0 }), Object.keys(r).forEach(function(n) {\n var i = Object.getOwnPropertyDescriptor(r, n);\n Object.defineProperty(e, n, i.get ? i : {\n enumerable: !0,\n get: function() {\n return r[n];\n }\n });\n }), e;\n}\n/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\nvar Us = Object.getOwnPropertySymbols, nd = Object.prototype.hasOwnProperty, id = Object.prototype.propertyIsEnumerable;\nfunction od(r) {\n if (r == null)\n throw new TypeError(\"Object.assign cannot be called with null or undefined\");\n return Object(r);\n}\nfunction ad() {\n try {\n if (!Object.assign)\n return !1;\n var r = new String(\"abc\");\n if (r[5] = \"de\", Object.getOwnPropertyNames(r)[0] === \"5\")\n return !1;\n for (var t = {}, e = 0; e < 10; e++)\n t[\"_\" + String.fromCharCode(e)] = e;\n var n = Object.getOwnPropertyNames(t).map(function(o) {\n return t[o];\n });\n if (n.join(\"\") !== \"0123456789\")\n return !1;\n var i = {};\n return \"abcdefghijklmnopqrst\".split(\"\").forEach(function(o) {\n i[o] = o;\n }), Object.keys(Object.assign({}, i)).join(\"\") === \"abcdefghijklmnopqrst\";\n } catch {\n return !1;\n }\n}\nvar sd = ad() ? Object.assign : function(r, t) {\n for (var e, n = od(r), i, o = 1; o < arguments.length; o++) {\n e = Object(arguments[o]);\n for (var a in e)\n nd.call(e, a) && (n[a] = e[a]);\n if (Us) {\n i = Us(e);\n for (var s = 0; s < i.length; s++)\n id.call(e, i[s]) && (n[i[s]] = e[i[s]]);\n }\n }\n return n;\n};\nconst ud = /* @__PURE__ */ $a(sd);\n/*!\n * @pixi/polyfill - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/polyfill is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\ntypeof globalThis > \"u\" && (typeof self < \"u\" ? self.globalThis = self : typeof global < \"u\" && (global.globalThis = global));\nglobalThis.Promise || (globalThis.Promise = Pt);\nObject.assign || (Object.assign = ud);\nvar hd = 16;\nDate.now && Date.prototype.getTime || (Date.now = function() {\n return (/* @__PURE__ */ new Date()).getTime();\n});\nif (!(globalThis.performance && globalThis.performance.now)) {\n var ld = Date.now();\n globalThis.performance || (globalThis.performance = {}), globalThis.performance.now = function() {\n return Date.now() - ld;\n };\n}\nvar Ji = Date.now(), Gs = [\"ms\", \"moz\", \"webkit\", \"o\"];\nfor (var Qi = 0; Qi < Gs.length && !globalThis.requestAnimationFrame; ++Qi) {\n var to = Gs[Qi];\n globalThis.requestAnimationFrame = globalThis[to + \"RequestAnimationFrame\"], globalThis.cancelAnimationFrame = globalThis[to + \"CancelAnimationFrame\"] || globalThis[to + \"CancelRequestAnimationFrame\"];\n}\nglobalThis.requestAnimationFrame || (globalThis.requestAnimationFrame = function(r) {\n if (typeof r != \"function\")\n throw new TypeError(r + \"is not a function\");\n var t = Date.now(), e = hd + Ji - t;\n return e < 0 && (e = 0), Ji = t, globalThis.self.setTimeout(function() {\n Ji = Date.now(), r(performance.now());\n }, e);\n});\nglobalThis.cancelAnimationFrame || (globalThis.cancelAnimationFrame = function(r) {\n return clearTimeout(r);\n});\nMath.sign || (Math.sign = function(t) {\n return t = Number(t), t === 0 || isNaN(t) ? t : t > 0 ? 1 : -1;\n});\nNumber.isInteger || (Number.isInteger = function(t) {\n return typeof t == \"number\" && isFinite(t) && Math.floor(t) === t;\n});\nglobalThis.ArrayBuffer || (globalThis.ArrayBuffer = Array);\nglobalThis.Float32Array || (globalThis.Float32Array = Array);\nglobalThis.Uint32Array || (globalThis.Uint32Array = Array);\nglobalThis.Uint16Array || (globalThis.Uint16Array = Array);\nglobalThis.Uint8Array || (globalThis.Uint8Array = Array);\nglobalThis.Int32Array || (globalThis.Int32Array = Array);\n/*!\n * @pixi/constants - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/constants is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\nvar Ie;\n(function(r) {\n r[r.WEBGL_LEGACY = 0] = \"WEBGL_LEGACY\", r[r.WEBGL = 1] = \"WEBGL\", r[r.WEBGL2 = 2] = \"WEBGL2\";\n})(Ie || (Ie = {}));\nvar gn;\n(function(r) {\n r[r.UNKNOWN = 0] = \"UNKNOWN\", r[r.WEBGL = 1] = \"WEBGL\", r[r.CANVAS = 2] = \"CANVAS\";\n})(gn || (gn = {}));\nvar wi;\n(function(r) {\n r[r.COLOR = 16384] = \"COLOR\", r[r.DEPTH = 256] = \"DEPTH\", r[r.STENCIL = 1024] = \"STENCIL\";\n})(wi || (wi = {}));\nvar V;\n(function(r) {\n r[r.NORMAL = 0] = \"NORMAL\", r[r.ADD = 1] = \"ADD\", r[r.MULTIPLY = 2] = \"MULTIPLY\", r[r.SCREEN = 3] = \"SCREEN\", r[r.OVERLAY = 4] = \"OVERLAY\", r[r.DARKEN = 5] = \"DARKEN\", r[r.LIGHTEN = 6] = \"LIGHTEN\", r[r.COLOR_DODGE = 7] = \"COLOR_DODGE\", r[r.COLOR_BURN = 8] = \"COLOR_BURN\", r[r.HARD_LIGHT = 9] = \"HARD_LIGHT\", r[r.SOFT_LIGHT = 10] = \"SOFT_LIGHT\", r[r.DIFFERENCE = 11] = \"DIFFERENCE\", r[r.EXCLUSION = 12] = \"EXCLUSION\", r[r.HUE = 13] = \"HUE\", r[r.SATURATION = 14] = \"SATURATION\", r[r.COLOR = 15] = \"COLOR\", r[r.LUMINOSITY = 16] = \"LUMINOSITY\", r[r.NORMAL_NPM = 17] = \"NORMAL_NPM\", r[r.ADD_NPM = 18] = \"ADD_NPM\", r[r.SCREEN_NPM = 19] = \"SCREEN_NPM\", r[r.NONE = 20] = \"NONE\", r[r.SRC_OVER = 0] = \"SRC_OVER\", r[r.SRC_IN = 21] = \"SRC_IN\", r[r.SRC_OUT = 22] = \"SRC_OUT\", r[r.SRC_ATOP = 23] = \"SRC_ATOP\", r[r.DST_OVER = 24] = \"DST_OVER\", r[r.DST_IN = 25] = \"DST_IN\", r[r.DST_OUT = 26] = \"DST_OUT\", r[r.DST_ATOP = 27] = \"DST_ATOP\", r[r.ERASE = 26] = \"ERASE\", r[r.SUBTRACT = 28] = \"SUBTRACT\", r[r.XOR = 29] = \"XOR\";\n})(V || (V = {}));\nvar se;\n(function(r) {\n r[r.POINTS = 0] = \"POINTS\", r[r.LINES = 1] = \"LINES\", r[r.LINE_LOOP = 2] = \"LINE_LOOP\", r[r.LINE_STRIP = 3] = \"LINE_STRIP\", r[r.TRIANGLES = 4] = \"TRIANGLES\", r[r.TRIANGLE_STRIP = 5] = \"TRIANGLE_STRIP\", r[r.TRIANGLE_FAN = 6] = \"TRIANGLE_FAN\";\n})(se || (se = {}));\nvar G;\n(function(r) {\n r[r.RGBA = 6408] = \"RGBA\", r[r.RGB = 6407] = \"RGB\", r[r.RG = 33319] = \"RG\", r[r.RED = 6403] = \"RED\", r[r.RGBA_INTEGER = 36249] = \"RGBA_INTEGER\", r[r.RGB_INTEGER = 36248] = \"RGB_INTEGER\", r[r.RG_INTEGER = 33320] = \"RG_INTEGER\", r[r.RED_INTEGER = 36244] = \"RED_INTEGER\", r[r.ALPHA = 6406] = \"ALPHA\", r[r.LUMINANCE = 6409] = \"LUMINANCE\", r[r.LUMINANCE_ALPHA = 6410] = \"LUMINANCE_ALPHA\", r[r.DEPTH_COMPONENT = 6402] = \"DEPTH_COMPONENT\", r[r.DEPTH_STENCIL = 34041] = \"DEPTH_STENCIL\";\n})(G || (G = {}));\nvar or;\n(function(r) {\n r[r.TEXTURE_2D = 3553] = \"TEXTURE_2D\", r[r.TEXTURE_CUBE_MAP = 34067] = \"TEXTURE_CUBE_MAP\", r[r.TEXTURE_2D_ARRAY = 35866] = \"TEXTURE_2D_ARRAY\", r[r.TEXTURE_CUBE_MAP_POSITIVE_X = 34069] = \"TEXTURE_CUBE_MAP_POSITIVE_X\", r[r.TEXTURE_CUBE_MAP_NEGATIVE_X = 34070] = \"TEXTURE_CUBE_MAP_NEGATIVE_X\", r[r.TEXTURE_CUBE_MAP_POSITIVE_Y = 34071] = \"TEXTURE_CUBE_MAP_POSITIVE_Y\", r[r.TEXTURE_CUBE_MAP_NEGATIVE_Y = 34072] = \"TEXTURE_CUBE_MAP_NEGATIVE_Y\", r[r.TEXTURE_CUBE_MAP_POSITIVE_Z = 34073] = \"TEXTURE_CUBE_MAP_POSITIVE_Z\", r[r.TEXTURE_CUBE_MAP_NEGATIVE_Z = 34074] = \"TEXTURE_CUBE_MAP_NEGATIVE_Z\";\n})(or || (or = {}));\nvar j;\n(function(r) {\n r[r.UNSIGNED_BYTE = 5121] = \"UNSIGNED_BYTE\", r[r.UNSIGNED_SHORT = 5123] = \"UNSIGNED_SHORT\", r[r.UNSIGNED_SHORT_5_6_5 = 33635] = \"UNSIGNED_SHORT_5_6_5\", r[r.UNSIGNED_SHORT_4_4_4_4 = 32819] = \"UNSIGNED_SHORT_4_4_4_4\", r[r.UNSIGNED_SHORT_5_5_5_1 = 32820] = \"UNSIGNED_SHORT_5_5_5_1\", r[r.UNSIGNED_INT = 5125] = \"UNSIGNED_INT\", r[r.UNSIGNED_INT_10F_11F_11F_REV = 35899] = \"UNSIGNED_INT_10F_11F_11F_REV\", r[r.UNSIGNED_INT_2_10_10_10_REV = 33640] = \"UNSIGNED_INT_2_10_10_10_REV\", r[r.UNSIGNED_INT_24_8 = 34042] = \"UNSIGNED_INT_24_8\", r[r.UNSIGNED_INT_5_9_9_9_REV = 35902] = \"UNSIGNED_INT_5_9_9_9_REV\", r[r.BYTE = 5120] = \"BYTE\", r[r.SHORT = 5122] = \"SHORT\", r[r.INT = 5124] = \"INT\", r[r.FLOAT = 5126] = \"FLOAT\", r[r.FLOAT_32_UNSIGNED_INT_24_8_REV = 36269] = \"FLOAT_32_UNSIGNED_INT_24_8_REV\", r[r.HALF_FLOAT = 36193] = \"HALF_FLOAT\";\n})(j || (j = {}));\nvar Si;\n(function(r) {\n r[r.FLOAT = 0] = \"FLOAT\", r[r.INT = 1] = \"INT\", r[r.UINT = 2] = \"UINT\";\n})(Si || (Si = {}));\nvar me;\n(function(r) {\n r[r.NEAREST = 0] = \"NEAREST\", r[r.LINEAR = 1] = \"LINEAR\";\n})(me || (me = {}));\nvar ye;\n(function(r) {\n r[r.CLAMP = 33071] = \"CLAMP\", r[r.REPEAT = 10497] = \"REPEAT\", r[r.MIRRORED_REPEAT = 33648] = \"MIRRORED_REPEAT\";\n})(ye || (ye = {}));\nvar le;\n(function(r) {\n r[r.OFF = 0] = \"OFF\", r[r.POW2 = 1] = \"POW2\", r[r.ON = 2] = \"ON\", r[r.ON_MANUAL = 3] = \"ON_MANUAL\";\n})(le || (le = {}));\nvar fe;\n(function(r) {\n r[r.NPM = 0] = \"NPM\", r[r.UNPACK = 1] = \"UNPACK\", r[r.PMA = 2] = \"PMA\", r[r.NO_PREMULTIPLIED_ALPHA = 0] = \"NO_PREMULTIPLIED_ALPHA\", r[r.PREMULTIPLY_ON_UPLOAD = 1] = \"PREMULTIPLY_ON_UPLOAD\", r[r.PREMULTIPLY_ALPHA = 2] = \"PREMULTIPLY_ALPHA\", r[r.PREMULTIPLIED_ALPHA = 2] = \"PREMULTIPLIED_ALPHA\";\n})(fe || (fe = {}));\nvar ae;\n(function(r) {\n r[r.NO = 0] = \"NO\", r[r.YES = 1] = \"YES\", r[r.AUTO = 2] = \"AUTO\", r[r.BLEND = 0] = \"BLEND\", r[r.CLEAR = 1] = \"CLEAR\", r[r.BLIT = 2] = \"BLIT\";\n})(ae || (ae = {}));\nvar Ai;\n(function(r) {\n r[r.AUTO = 0] = \"AUTO\", r[r.MANUAL = 1] = \"MANUAL\";\n})(Ai || (Ai = {}));\nvar Qt;\n(function(r) {\n r.LOW = \"lowp\", r.MEDIUM = \"mediump\", r.HIGH = \"highp\";\n})(Qt || (Qt = {}));\nvar Ct;\n(function(r) {\n r[r.NONE = 0] = \"NONE\", r[r.SCISSOR = 1] = \"SCISSOR\", r[r.STENCIL = 2] = \"STENCIL\", r[r.SPRITE = 3] = \"SPRITE\", r[r.COLOR = 4] = \"COLOR\";\n})(Ct || (Ct = {}));\nvar ks;\n(function(r) {\n r[r.RED = 1] = \"RED\", r[r.GREEN = 2] = \"GREEN\", r[r.BLUE = 4] = \"BLUE\", r[r.ALPHA = 8] = \"ALPHA\";\n})(ks || (ks = {}));\nvar wt;\n(function(r) {\n r[r.NONE = 0] = \"NONE\", r[r.LOW = 2] = \"LOW\", r[r.MEDIUM = 4] = \"MEDIUM\", r[r.HIGH = 8] = \"HIGH\";\n})(wt || (wt = {}));\nvar be;\n(function(r) {\n r[r.ELEMENT_ARRAY_BUFFER = 34963] = \"ELEMENT_ARRAY_BUFFER\", r[r.ARRAY_BUFFER = 34962] = \"ARRAY_BUFFER\", r[r.UNIFORM_BUFFER = 35345] = \"UNIFORM_BUFFER\";\n})(be || (be = {}));\n/*!\n * @pixi/settings - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/settings is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\nvar fd = {\n /**\n * Creates a canvas element of the given size.\n * This canvas is created using the browser's native canvas element.\n * @param width - width of the canvas\n * @param height - height of the canvas\n */\n createCanvas: function(r, t) {\n var e = document.createElement(\"canvas\");\n return e.width = r, e.height = t, e;\n },\n getWebGLRenderingContext: function() {\n return WebGLRenderingContext;\n },\n getNavigator: function() {\n return navigator;\n },\n getBaseUrl: function() {\n var r;\n return (r = document.baseURI) !== null && r !== void 0 ? r : window.location.href;\n },\n fetch: function(r, t) {\n return fetch(r, t);\n }\n}, eo = /iPhone/i, Hs = /iPod/i, Xs = /iPad/i, js = /\\biOS-universal(?:.+)Mac\\b/i, ro = /\\bAndroid(?:.+)Mobile\\b/i, Ys = /Android/i, yr = /(?:SD4930UR|\\bSilk(?:.+)Mobile\\b)/i, Gn = /Silk/i, we = /Windows Phone/i, Vs = /\\bWindows(?:.+)ARM\\b/i, zs = /BlackBerry/i, Ws = /BB10/i, qs = /Opera Mini/i, $s = /\\b(CriOS|Chrome)(?:.+)Mobile/i, Ks = /Mobile(?:.+)Firefox\\b/i, Zs = function(r) {\n return typeof r < \"u\" && r.platform === \"MacIntel\" && typeof r.maxTouchPoints == \"number\" && r.maxTouchPoints > 1 && typeof MSStream > \"u\";\n};\nfunction cd(r) {\n return function(t) {\n return t.test(r);\n };\n}\nfunction dd(r) {\n var t = {\n userAgent: \"\",\n platform: \"\",\n maxTouchPoints: 0\n };\n !r && typeof navigator < \"u\" ? t = {\n userAgent: navigator.userAgent,\n platform: navigator.platform,\n maxTouchPoints: navigator.maxTouchPoints || 0\n } : typeof r == \"string\" ? t.userAgent = r : r && r.userAgent && (t = {\n userAgent: r.userAgent,\n platform: r.platform,\n maxTouchPoints: r.maxTouchPoints || 0\n });\n var e = t.userAgent, n = e.split(\"[FBAN\");\n typeof n[1] < \"u\" && (e = n[0]), n = e.split(\"Twitter\"), typeof n[1] < \"u\" && (e = n[0]);\n var i = cd(e), o = {\n apple: {\n phone: i(eo) && !i(we),\n ipod: i(Hs),\n tablet: !i(eo) && (i(Xs) || Zs(t)) && !i(we),\n universal: i(js),\n device: (i(eo) || i(Hs) || i(Xs) || i(js) || Zs(t)) && !i(we)\n },\n amazon: {\n phone: i(yr),\n tablet: !i(yr) && i(Gn),\n device: i(yr) || i(Gn)\n },\n android: {\n phone: !i(we) && i(yr) || !i(we) && i(ro),\n tablet: !i(we) && !i(yr) && !i(ro) && (i(Gn) || i(Ys)),\n device: !i(we) && (i(yr) || i(Gn) || i(ro) || i(Ys)) || i(/\\bokhttp\\b/i)\n },\n windows: {\n phone: i(we),\n tablet: i(Vs),\n device: i(we) || i(Vs)\n },\n other: {\n blackberry: i(zs),\n blackberry10: i(Ws),\n opera: i(qs),\n firefox: i(Ks),\n chrome: i($s),\n device: i(zs) || i(Ws) || i(qs) || i(Ks) || i($s)\n },\n any: !1,\n phone: !1,\n tablet: !1\n };\n return o.any = o.apple.device || o.android.device || o.windows.device || o.other.device, o.phone = o.apple.phone || o.android.phone || o.windows.phone, o.tablet = o.apple.tablet || o.android.tablet || o.windows.tablet, o;\n}\nvar ge = dd(globalThis.navigator);\nfunction pd() {\n return !ge.apple.device;\n}\nfunction vd(r) {\n var t = !0;\n if (ge.tablet || ge.phone) {\n if (ge.apple.device) {\n var e = navigator.userAgent.match(/OS (\\d+)_(\\d+)?/);\n if (e) {\n var n = parseInt(e[1], 10);\n n < 11 && (t = !1);\n }\n }\n if (ge.android.device) {\n var e = navigator.userAgent.match(/Android\\s([0-9.]*)/);\n if (e) {\n var n = parseInt(e[1], 10);\n n < 7 && (t = !1);\n }\n }\n }\n return t ? r : 4;\n}\nvar k = {\n /**\n * This adapter is used to call methods that are platform dependent.\n * For example `document.createElement` only runs on the web but fails in node environments.\n * This allows us to support more platforms by abstracting away specific implementations per platform.\n *\n * By default the adapter is set to work in the browser. However you can create your own\n * by implementing the `IAdapter` interface. See `IAdapter` for more information.\n * @name ADAPTER\n * @memberof PIXI.settings\n * @type {PIXI.IAdapter}\n * @default PIXI.BrowserAdapter\n */\n ADAPTER: fd,\n /**\n * If set to true WebGL will attempt make textures mimpaped by default.\n * Mipmapping will only succeed if the base texture uploaded has power of two dimensions.\n * @static\n * @name MIPMAP_TEXTURES\n * @memberof PIXI.settings\n * @type {PIXI.MIPMAP_MODES}\n * @default PIXI.MIPMAP_MODES.POW2\n */\n MIPMAP_TEXTURES: le.POW2,\n /**\n * Default anisotropic filtering level of textures.\n * Usually from 0 to 16\n * @static\n * @name ANISOTROPIC_LEVEL\n * @memberof PIXI.settings\n * @type {number}\n * @default 0\n */\n ANISOTROPIC_LEVEL: 0,\n /**\n * Default resolution / device pixel ratio of the renderer.\n * @static\n * @name RESOLUTION\n * @memberof PIXI.settings\n * @type {number}\n * @default 1\n */\n RESOLUTION: 1,\n /**\n * Default filter resolution.\n * @static\n * @name FILTER_RESOLUTION\n * @memberof PIXI.settings\n * @type {number}\n * @default 1\n */\n FILTER_RESOLUTION: 1,\n /**\n * Default filter samples.\n * @static\n * @name FILTER_MULTISAMPLE\n * @memberof PIXI.settings\n * @type {PIXI.MSAA_QUALITY}\n * @default PIXI.MSAA_QUALITY.NONE\n */\n FILTER_MULTISAMPLE: wt.NONE,\n /**\n * The maximum textures that this device supports.\n * @static\n * @name SPRITE_MAX_TEXTURES\n * @memberof PIXI.settings\n * @type {number}\n * @default 32\n */\n SPRITE_MAX_TEXTURES: vd(32),\n // TODO: maybe change to SPRITE.BATCH_SIZE: 2000\n // TODO: maybe add PARTICLE.BATCH_SIZE: 15000\n /**\n * The default sprite batch size.\n *\n * The default aims to balance desktop and mobile devices.\n * @static\n * @name SPRITE_BATCH_SIZE\n * @memberof PIXI.settings\n * @type {number}\n * @default 4096\n */\n SPRITE_BATCH_SIZE: 4096,\n /**\n * The default render options if none are supplied to {@link PIXI.Renderer}\n * or {@link PIXI.CanvasRenderer}.\n * @static\n * @name RENDER_OPTIONS\n * @memberof PIXI.settings\n * @type {object}\n * @property {boolean} [antialias=false] - {@link PIXI.IRendererOptions.antialias}\n * @property {boolean} [autoDensity=false] - {@link PIXI.IRendererOptions.autoDensity}\n * @property {number} [backgroundAlpha=1] - {@link PIXI.IRendererOptions.backgroundAlpha}\n * @property {number} [backgroundColor=0x000000] - {@link PIXI.IRendererOptions.backgroundColor}\n * @property {boolean} [clearBeforeRender=true] - {@link PIXI.IRendererOptions.clearBeforeRender}\n * @property {number} [height=600] - {@link PIXI.IRendererOptions.height}\n * @property {boolean} [preserveDrawingBuffer=false] - {@link PIXI.IRendererOptions.preserveDrawingBuffer}\n * @property {boolean|'notMultiplied'} [useContextAlpha=true] - {@link PIXI.IRendererOptions.useContextAlpha}\n * @property {HTMLCanvasElement} [view=null] - {@link PIXI.IRendererOptions.view}\n * @property {number} [width=800] - {@link PIXI.IRendererOptions.width}\n */\n RENDER_OPTIONS: {\n view: null,\n width: 800,\n height: 600,\n autoDensity: !1,\n backgroundColor: 0,\n backgroundAlpha: 1,\n useContextAlpha: !0,\n clearBeforeRender: !0,\n antialias: !1,\n preserveDrawingBuffer: !1\n },\n /**\n * Default Garbage Collection mode.\n * @static\n * @name GC_MODE\n * @memberof PIXI.settings\n * @type {PIXI.GC_MODES}\n * @default PIXI.GC_MODES.AUTO\n */\n GC_MODE: Ai.AUTO,\n /**\n * Default Garbage Collection max idle.\n * @static\n * @name GC_MAX_IDLE\n * @memberof PIXI.settings\n * @type {number}\n * @default 3600\n */\n GC_MAX_IDLE: 60 * 60,\n /**\n * Default Garbage Collection maximum check count.\n * @static\n * @name GC_MAX_CHECK_COUNT\n * @memberof PIXI.settings\n * @type {number}\n * @default 600\n */\n GC_MAX_CHECK_COUNT: 60 * 10,\n /**\n * Default wrap modes that are supported by pixi.\n * @static\n * @name WRAP_MODE\n * @memberof PIXI.settings\n * @type {PIXI.WRAP_MODES}\n * @default PIXI.WRAP_MODES.CLAMP\n */\n WRAP_MODE: ye.CLAMP,\n /**\n * Default scale mode for textures.\n * @static\n * @name SCALE_MODE\n * @memberof PIXI.settings\n * @type {PIXI.SCALE_MODES}\n * @default PIXI.SCALE_MODES.LINEAR\n */\n SCALE_MODE: me.LINEAR,\n /**\n * Default specify float precision in vertex shader.\n * @static\n * @name PRECISION_VERTEX\n * @memberof PIXI.settings\n * @type {PIXI.PRECISION}\n * @default PIXI.PRECISION.HIGH\n */\n PRECISION_VERTEX: Qt.HIGH,\n /**\n * Default specify float precision in fragment shader.\n * iOS is best set at highp due to https://github.com/pixijs/pixi.js/issues/3742\n * @static\n * @name PRECISION_FRAGMENT\n * @memberof PIXI.settings\n * @type {PIXI.PRECISION}\n * @default PIXI.PRECISION.MEDIUM\n */\n PRECISION_FRAGMENT: ge.apple.device ? Qt.HIGH : Qt.MEDIUM,\n /**\n * Can we upload the same buffer in a single frame?\n * @static\n * @name CAN_UPLOAD_SAME_BUFFER\n * @memberof PIXI.settings\n * @type {boolean}\n */\n CAN_UPLOAD_SAME_BUFFER: pd(),\n /**\n * Enables bitmap creation before image load. This feature is experimental.\n * @static\n * @name CREATE_IMAGE_BITMAP\n * @memberof PIXI.settings\n * @type {boolean}\n * @default false\n */\n CREATE_IMAGE_BITMAP: !1,\n /**\n * If true PixiJS will Math.floor() x/y values when rendering, stopping pixel interpolation.\n * Advantages can include sharper image quality (like text) and faster rendering on canvas.\n * The main disadvantage is movement of objects may appear less smooth.\n * @static\n * @constant\n * @memberof PIXI.settings\n * @type {boolean}\n * @default false\n */\n ROUND_PIXELS: !1\n}, tl = { exports: {} };\n(function(r) {\n var t = Object.prototype.hasOwnProperty, e = \"~\";\n function n() {\n }\n Object.create && (n.prototype = /* @__PURE__ */ Object.create(null), new n().__proto__ || (e = !1));\n function i(u, h, f) {\n this.fn = u, this.context = h, this.once = f || !1;\n }\n function o(u, h, f, l, c) {\n if (typeof f != \"function\")\n throw new TypeError(\"The listener must be a function\");\n var d = new i(f, l || u, c), p = e ? e + h : h;\n return u._events[p] ? u._events[p].fn ? u._events[p] = [u._events[p], d] : u._events[p].push(d) : (u._events[p] = d, u._eventsCount++), u;\n }\n function a(u, h) {\n --u._eventsCount === 0 ? u._events = new n() : delete u._events[h];\n }\n function s() {\n this._events = new n(), this._eventsCount = 0;\n }\n s.prototype.eventNames = function() {\n var h = [], f, l;\n if (this._eventsCount === 0)\n return h;\n for (l in f = this._events)\n t.call(f, l) && h.push(e ? l.slice(1) : l);\n return Object.getOwnPropertySymbols ? h.concat(Object.getOwnPropertySymbols(f)) : h;\n }, s.prototype.listeners = function(h) {\n var f = e ? e + h : h, l = this._events[f];\n if (!l)\n return [];\n if (l.fn)\n return [l.fn];\n for (var c = 0, d = l.length, p = new Array(d); c < d; c++)\n p[c] = l[c].fn;\n return p;\n }, s.prototype.listenerCount = function(h) {\n var f = e ? e + h : h, l = this._events[f];\n return l ? l.fn ? 1 : l.length : 0;\n }, s.prototype.emit = function(h, f, l, c, d, p) {\n var v = e ? e + h : h;\n if (!this._events[v])\n return !1;\n var _ = this._events[v], g = arguments.length, m, y;\n if (_.fn) {\n switch (_.once && this.removeListener(h, _.fn, void 0, !0), g) {\n case 1:\n return _.fn.call(_.context), !0;\n case 2:\n return _.fn.call(_.context, f), !0;\n case 3:\n return _.fn.call(_.context, f, l), !0;\n case 4:\n return _.fn.call(_.context, f, l, c), !0;\n case 5:\n return _.fn.call(_.context, f, l, c, d), !0;\n case 6:\n return _.fn.call(_.context, f, l, c, d, p), !0;\n }\n for (y = 1, m = new Array(g - 1); y < g; y++)\n m[y - 1] = arguments[y];\n _.fn.apply(_.context, m);\n } else {\n var T = _.length, x;\n for (y = 0; y < T; y++)\n switch (_[y].once && this.removeListener(h, _[y].fn, void 0, !0), g) {\n case 1:\n _[y].fn.call(_[y].context);\n break;\n case 2:\n _[y].fn.call(_[y].context, f);\n break;\n case 3:\n _[y].fn.call(_[y].context, f, l);\n break;\n case 4:\n _[y].fn.call(_[y].context, f, l, c);\n break;\n default:\n if (!m)\n for (x = 1, m = new Array(g - 1); x < g; x++)\n m[x - 1] = arguments[x];\n _[y].fn.apply(_[y].context, m);\n }\n }\n return !0;\n }, s.prototype.on = function(h, f, l) {\n return o(this, h, f, l, !1);\n }, s.prototype.once = function(h, f, l) {\n return o(this, h, f, l, !0);\n }, s.prototype.removeListener = function(h, f, l, c) {\n var d = e ? e + h : h;\n if (!this._events[d])\n return this;\n if (!f)\n return a(this, d), this;\n var p = this._events[d];\n if (p.fn)\n p.fn === f && (!c || p.once) && (!l || p.context === l) && a(this, d);\n else {\n for (var v = 0, _ = [], g = p.length; v < g; v++)\n (p[v].fn !== f || c && !p[v].once || l && p[v].context !== l) && _.push(p[v]);\n _.length ? this._events[d] = _.length === 1 ? _[0] : _ : a(this, d);\n }\n return this;\n }, s.prototype.removeAllListeners = function(h) {\n var f;\n return h ? (f = e ? e + h : h, this._events[f] && a(this, f)) : (this._events = new n(), this._eventsCount = 0), this;\n }, s.prototype.off = s.prototype.removeListener, s.prototype.addListener = s.prototype.on, s.prefixed = e, s.EventEmitter = s, r.exports = s;\n})(tl);\nvar _d = tl.exports;\nconst Rn = /* @__PURE__ */ $a(_d);\nvar Ka = { exports: {} };\nKa.exports = ki;\nKa.exports.default = ki;\nfunction ki(r, t, e) {\n e = e || 2;\n var n = t && t.length, i = n ? t[0] * e : r.length, o = el(r, 0, i, e, !0), a = [];\n if (!o || o.next === o.prev)\n return a;\n var s, u, h, f, l, c, d;\n if (n && (o = xd(r, t, o, e)), r.length > 80 * e) {\n s = h = r[0], u = f = r[1];\n for (var p = e; p < i; p += e)\n l = r[p], c = r[p + 1], l < s && (s = l), c < u && (u = c), l > h && (h = l), c > f && (f = c);\n d = Math.max(h - s, f - u), d = d !== 0 ? 32767 / d : 0;\n }\n return yn(o, a, e, s, u, d, 0), a;\n}\nfunction el(r, t, e, n, i) {\n var o, a;\n if (i === $o(r, t, e, n) > 0)\n for (o = t; o < e; o += n)\n a = Js(o, r[o], r[o + 1], a);\n else\n for (o = e - n; o >= t; o -= n)\n a = Js(o, r[o], r[o + 1], a);\n return a && Hi(a, a.next) && (xn(a), a = a.next), a;\n}\nfunction hr(r, t) {\n if (!r)\n return r;\n t || (t = r);\n var e = r, n;\n do\n if (n = !1, !e.steiner && (Hi(e, e.next) || At(e.prev, e, e.next) === 0)) {\n if (xn(e), e = t = e.prev, e === e.next)\n break;\n n = !0;\n } else\n e = e.next;\n while (n || e !== t);\n return t;\n}\nfunction yn(r, t, e, n, i, o, a) {\n if (r) {\n !a && o && Ad(r, n, i, o);\n for (var s = r, u, h; r.prev !== r.next; ) {\n if (u = r.prev, h = r.next, o ? gd(r, n, i, o) : md(r)) {\n t.push(u.i / e | 0), t.push(r.i / e | 0), t.push(h.i / e | 0), xn(r), r = h.next, s = h.next;\n continue;\n }\n if (r = h, r === s) {\n a ? a === 1 ? (r = yd(hr(r), t, e), yn(r, t, e, n, i, o, 2)) : a === 2 && bd(r, t, e, n, i, o) : yn(hr(r), t, e, n, i, o, 1);\n break;\n }\n }\n }\n}\nfunction md(r) {\n var t = r.prev, e = r, n = r.next;\n if (At(t, e, n) >= 0)\n return !1;\n for (var i = t.x, o = e.x, a = n.x, s = t.y, u = e.y, h = n.y, f = i < o ? i < a ? i : a : o < a ? o : a, l = s < u ? s < h ? s : h : u < h ? u : h, c = i > o ? i > a ? i : a : o > a ? o : a, d = s > u ? s > h ? s : h : u > h ? u : h, p = n.next; p !== t; ) {\n if (p.x >= f && p.x <= c && p.y >= l && p.y <= d && Rr(i, s, o, u, a, h, p.x, p.y) && At(p.prev, p, p.next) >= 0)\n return !1;\n p = p.next;\n }\n return !0;\n}\nfunction gd(r, t, e, n) {\n var i = r.prev, o = r, a = r.next;\n if (At(i, o, a) >= 0)\n return !1;\n for (var s = i.x, u = o.x, h = a.x, f = i.y, l = o.y, c = a.y, d = s < u ? s < h ? s : h : u < h ? u : h, p = f < l ? f < c ? f : c : l < c ? l : c, v = s > u ? s > h ? s : h : u > h ? u : h, _ = f > l ? f > c ? f : c : l > c ? l : c, g = Wo(d, p, t, e, n), m = Wo(v, _, t, e, n), y = r.prevZ, T = r.nextZ; y && y.z >= g && T && T.z <= m; ) {\n if (y.x >= d && y.x <= v && y.y >= p && y.y <= _ && y !== i && y !== a && Rr(s, f, u, l, h, c, y.x, y.y) && At(y.prev, y, y.next) >= 0 || (y = y.prevZ, T.x >= d && T.x <= v && T.y >= p && T.y <= _ && T !== i && T !== a && Rr(s, f, u, l, h, c, T.x, T.y) && At(T.prev, T, T.next) >= 0))\n return !1;\n T = T.nextZ;\n }\n for (; y && y.z >= g; ) {\n if (y.x >= d && y.x <= v && y.y >= p && y.y <= _ && y !== i && y !== a && Rr(s, f, u, l, h, c, y.x, y.y) && At(y.prev, y, y.next) >= 0)\n return !1;\n y = y.prevZ;\n }\n for (; T && T.z <= m; ) {\n if (T.x >= d && T.x <= v && T.y >= p && T.y <= _ && T !== i && T !== a && Rr(s, f, u, l, h, c, T.x, T.y) && At(T.prev, T, T.next) >= 0)\n return !1;\n T = T.nextZ;\n }\n return !0;\n}\nfunction yd(r, t, e) {\n var n = r;\n do {\n var i = n.prev, o = n.next.next;\n !Hi(i, o) && rl(i, n, n.next, o) && bn(i, o) && bn(o, i) && (t.push(i.i / e | 0), t.push(n.i / e | 0), t.push(o.i / e | 0), xn(n), xn(n.next), n = r = o), n = n.next;\n } while (n !== r);\n return hr(n);\n}\nfunction bd(r, t, e, n, i, o) {\n var a = r;\n do {\n for (var s = a.next.next; s !== a.prev; ) {\n if (a.i !== s.i && Rd(a, s)) {\n var u = nl(a, s);\n a = hr(a, a.next), u = hr(u, u.next), yn(a, t, e, n, i, o, 0), yn(u, t, e, n, i, o, 0);\n return;\n }\n s = s.next;\n }\n a = a.next;\n } while (a !== r);\n}\nfunction xd(r, t, e, n) {\n var i = [], o, a, s, u, h;\n for (o = 0, a = t.length; o < a; o++)\n s = t[o] * n, u = o < a - 1 ? t[o + 1] * n : r.length, h = el(r, s, u, n, !1), h === h.next && (h.steiner = !0), i.push(Od(h));\n for (i.sort(Ed), o = 0; o < i.length; o++)\n e = Td(i[o], e);\n return e;\n}\nfunction Ed(r, t) {\n return r.x - t.x;\n}\nfunction Td(r, t) {\n var e = wd(r, t);\n if (!e)\n return t;\n var n = nl(e, r);\n return hr(n, n.next), hr(e, e.next);\n}\nfunction wd(r, t) {\n var e = t, n = r.x, i = r.y, o = -1 / 0, a;\n do {\n if (i <= e.y && i >= e.next.y && e.next.y !== e.y) {\n var s = e.x + (i - e.y) * (e.next.x - e.x) / (e.next.y - e.y);\n if (s <= n && s > o && (o = s, a = e.x < e.next.x ? e : e.next, s === n))\n return a;\n }\n e = e.next;\n } while (e !== t);\n if (!a)\n return null;\n var u = a, h = a.x, f = a.y, l = 1 / 0, c;\n e = a;\n do\n n >= e.x && e.x >= h && n !== e.x && Rr(i < f ? n : o, i, h, f, i < f ? o : n, i, e.x, e.y) && (c = Math.abs(i - e.y) / (n - e.x), bn(e, r) && (c < l || c === l && (e.x > a.x || e.x === a.x && Sd(a, e))) && (a = e, l = c)), e = e.next;\n while (e !== u);\n return a;\n}\nfunction Sd(r, t) {\n return At(r.prev, r, t.prev) < 0 && At(t.next, r, r.next) < 0;\n}\nfunction Ad(r, t, e, n) {\n var i = r;\n do\n i.z === 0 && (i.z = Wo(i.x, i.y, t, e, n)), i.prevZ = i.prev, i.nextZ = i.next, i = i.next;\n while (i !== r);\n i.prevZ.nextZ = null, i.prevZ = null, Pd(i);\n}\nfunction Pd(r) {\n var t, e, n, i, o, a, s, u, h = 1;\n do {\n for (e = r, r = null, o = null, a = 0; e; ) {\n for (a++, n = e, s = 0, t = 0; t < h && (s++, n = n.nextZ, !!n); t++)\n ;\n for (u = h; s > 0 || u > 0 && n; )\n s !== 0 && (u === 0 || !n || e.z <= n.z) ? (i = e, e = e.nextZ, s--) : (i = n, n = n.nextZ, u--), o ? o.nextZ = i : r = i, i.prevZ = o, o = i;\n e = n;\n }\n o.nextZ = null, h *= 2;\n } while (a > 1);\n return r;\n}\nfunction Wo(r, t, e, n, i) {\n return r = (r - e) * i | 0, t = (t - n) * i | 0, r = (r | r << 8) & 16711935, r = (r | r << 4) & 252645135, r = (r | r << 2) & 858993459, r = (r | r << 1) & 1431655765, t = (t | t << 8) & 16711935, t = (t | t << 4) & 252645135, t = (t | t << 2) & 858993459, t = (t | t << 1) & 1431655765, r | t << 1;\n}\nfunction Od(r) {\n var t = r, e = r;\n do\n (t.x < e.x || t.x === e.x && t.y < e.y) && (e = t), t = t.next;\n while (t !== r);\n return e;\n}\nfunction Rr(r, t, e, n, i, o, a, s) {\n return (i - a) * (t - s) >= (r - a) * (o - s) && (r - a) * (n - s) >= (e - a) * (t - s) && (e - a) * (o - s) >= (i - a) * (n - s);\n}\nfunction Rd(r, t) {\n return r.next.i !== t.i && r.prev.i !== t.i && !Id(r, t) && // dones't intersect other edges\n (bn(r, t) && bn(t, r) && Cd(r, t) && // locally visible\n (At(r.prev, r, t.prev) || At(r, t.prev, t)) || // does not create opposite-facing sectors\n Hi(r, t) && At(r.prev, r, r.next) > 0 && At(t.prev, t, t.next) > 0);\n}\nfunction At(r, t, e) {\n return (t.y - r.y) * (e.x - t.x) - (t.x - r.x) * (e.y - t.y);\n}\nfunction Hi(r, t) {\n return r.x === t.x && r.y === t.y;\n}\nfunction rl(r, t, e, n) {\n var i = Hn(At(r, t, e)), o = Hn(At(r, t, n)), a = Hn(At(e, n, r)), s = Hn(At(e, n, t));\n return !!(i !== o && a !== s || i === 0 && kn(r, e, t) || o === 0 && kn(r, n, t) || a === 0 && kn(e, r, n) || s === 0 && kn(e, t, n));\n}\nfunction kn(r, t, e) {\n return t.x <= Math.max(r.x, e.x) && t.x >= Math.min(r.x, e.x) && t.y <= Math.max(r.y, e.y) && t.y >= Math.min(r.y, e.y);\n}\nfunction Hn(r) {\n return r > 0 ? 1 : r < 0 ? -1 : 0;\n}\nfunction Id(r, t) {\n var e = r;\n do {\n if (e.i !== r.i && e.next.i !== r.i && e.i !== t.i && e.next.i !== t.i && rl(e, e.next, r, t))\n return !0;\n e = e.next;\n } while (e !== r);\n return !1;\n}\nfunction bn(r, t) {\n return At(r.prev, r, r.next) < 0 ? At(r, t, r.next) >= 0 && At(r, r.prev, t) >= 0 : At(r, t, r.prev) < 0 || At(r, r.next, t) < 0;\n}\nfunction Cd(r, t) {\n var e = r, n = !1, i = (r.x + t.x) / 2, o = (r.y + t.y) / 2;\n do\n e.y > o != e.next.y > o && e.next.y !== e.y && i < (e.next.x - e.x) * (o - e.y) / (e.next.y - e.y) + e.x && (n = !n), e = e.next;\n while (e !== r);\n return n;\n}\nfunction nl(r, t) {\n var e = new qo(r.i, r.x, r.y), n = new qo(t.i, t.x, t.y), i = r.next, o = t.prev;\n return r.next = t, t.prev = r, e.next = i, i.prev = e, n.next = e, e.prev = n, o.next = n, n.prev = o, n;\n}\nfunction Js(r, t, e, n) {\n var i = new qo(r, t, e);\n return n ? (i.next = n.next, i.prev = n, n.next.prev = i, n.next = i) : (i.prev = i, i.next = i), i;\n}\nfunction xn(r) {\n r.next.prev = r.prev, r.prev.next = r.next, r.prevZ && (r.prevZ.nextZ = r.nextZ), r.nextZ && (r.nextZ.prevZ = r.prevZ);\n}\nfunction qo(r, t, e) {\n this.i = r, this.x = t, this.y = e, this.prev = null, this.next = null, this.z = 0, this.prevZ = null, this.nextZ = null, this.steiner = !1;\n}\nki.deviation = function(r, t, e, n) {\n var i = t && t.length, o = i ? t[0] * e : r.length, a = Math.abs($o(r, 0, o, e));\n if (i)\n for (var s = 0, u = t.length; s < u; s++) {\n var h = t[s] * e, f = s < u - 1 ? t[s + 1] * e : r.length;\n a -= Math.abs($o(r, h, f, e));\n }\n var l = 0;\n for (s = 0; s < n.length; s += 3) {\n var c = n[s] * e, d = n[s + 1] * e, p = n[s + 2] * e;\n l += Math.abs(\n (r[c] - r[p]) * (r[d + 1] - r[c + 1]) - (r[c] - r[d]) * (r[p + 1] - r[c + 1])\n );\n }\n return a === 0 && l === 0 ? 0 : Math.abs((l - a) / a);\n};\nfunction $o(r, t, e, n) {\n for (var i = 0, o = t, a = e - n; o < e; o += n)\n i += (r[a] - r[o]) * (r[o + 1] + r[a + 1]), a = o;\n return i;\n}\nki.flatten = function(r) {\n for (var t = r[0][0].length, e = { vertices: [], holes: [], dimensions: t }, n = 0, i = 0; i < r.length; i++) {\n for (var o = 0; o < r[i].length; o++)\n for (var a = 0; a < t; a++)\n e.vertices.push(r[i][o][a]);\n i > 0 && (n += r[i - 1].length, e.holes.push(n));\n }\n return e;\n};\nvar Md = Ka.exports;\nconst il = /* @__PURE__ */ $a(Md);\nvar Pi = { exports: {} };\n/*! https://mths.be/punycode v1.4.1 by @mathias */\nPi.exports;\n(function(r, t) {\n (function(e) {\n var n = t && !t.nodeType && t, i = r && !r.nodeType && r, o = typeof vi == \"object\" && vi;\n (o.global === o || o.window === o || o.self === o) && (e = o);\n var a, s = 2147483647, u = 36, h = 1, f = 26, l = 38, c = 700, d = 72, p = 128, v = \"-\", _ = /^xn--/, g = /[^\\x20-\\x7E]/, m = /[\\x2E\\u3002\\uFF0E\\uFF61]/g, y = {\n overflow: \"Overflow: input needs wider integers to process\",\n \"not-basic\": \"Illegal input >= 0x80 (not a basic code point)\",\n \"invalid-input\": \"Invalid input\"\n }, T = u - h, x = Math.floor, w = String.fromCharCode, S;\n function I(U) {\n throw new RangeError(y[U]);\n }\n function O(U, L) {\n for (var H = U.length, tt = []; H--; )\n tt[H] = L(U[H]);\n return tt;\n }\n function b(U, L) {\n var H = U.split(\"@\"), tt = \"\";\n H.length > 1 && (tt = H[0] + \"@\", U = H[1]), U = U.replace(m, \".\");\n var et = U.split(\".\"), pt = O(et, L).join(\".\");\n return tt + pt;\n }\n function P(U) {\n for (var L = [], H = 0, tt = U.length, et, pt; H < tt; )\n et = U.charCodeAt(H++), et >= 55296 && et <= 56319 && H < tt ? (pt = U.charCodeAt(H++), (pt & 64512) == 56320 ? L.push(((et & 1023) << 10) + (pt & 1023) + 65536) : (L.push(et), H--)) : L.push(et);\n return L;\n }\n function A(U) {\n return O(U, function(L) {\n var H = \"\";\n return L > 65535 && (L -= 65536, H += w(L >>> 10 & 1023 | 55296), L = 56320 | L & 1023), H += w(L), H;\n }).join(\"\");\n }\n function R(U) {\n return U - 48 < 10 ? U - 22 : U - 65 < 26 ? U - 65 : U - 97 < 26 ? U - 97 : u;\n }\n function M(U, L) {\n return U + 22 + 75 * (U < 26) - ((L != 0) << 5);\n }\n function D(U, L, H) {\n var tt = 0;\n for (U = H ? x(U / c) : U >> 1, U += x(U / L); U > T * f >> 1; tt += u)\n U = x(U / T);\n return x(tt + (T + 1) * U / (U + l));\n }\n function B(U) {\n var L = [], H = U.length, tt, et = 0, pt = p, Y = d, st, _t, Et, q, it, at, ft, nt, N;\n for (st = U.lastIndexOf(v), st < 0 && (st = 0), _t = 0; _t < st; ++_t)\n U.charCodeAt(_t) >= 128 && I(\"not-basic\"), L.push(U.charCodeAt(_t));\n for (Et = st > 0 ? st + 1 : 0; Et < H; ) {\n for (q = et, it = 1, at = u; Et >= H && I(\"invalid-input\"), ft = R(U.charCodeAt(Et++)), (ft >= u || ft > x((s - et) / it)) && I(\"overflow\"), et += ft * it, nt = at <= Y ? h : at >= Y + f ? f : at - Y, !(ft < nt); at += u)\n N = u - nt, it > x(s / N) && I(\"overflow\"), it *= N;\n tt = L.length + 1, Y = D(et - q, tt, q == 0), x(et / tt) > s - pt && I(\"overflow\"), pt += x(et / tt), et %= tt, L.splice(et++, 0, pt);\n }\n return A(L);\n }\n function X(U) {\n var L, H, tt, et, pt, Y, st, _t, Et, q, it, at = [], ft, nt, N, C;\n for (U = P(U), ft = U.length, L = p, H = 0, pt = d, Y = 0; Y < ft; ++Y)\n it = U[Y], it < 128 && at.push(w(it));\n for (tt = et = at.length, et && at.push(v); tt < ft; ) {\n for (st = s, Y = 0; Y < ft; ++Y)\n it = U[Y], it >= L && it < st && (st = it);\n for (nt = tt + 1, st - L > x((s - H) / nt) && I(\"overflow\"), H += (st - L) * nt, L = st, Y = 0; Y < ft; ++Y)\n if (it = U[Y], it < L && ++H > s && I(\"overflow\"), it == L) {\n for (_t = H, Et = u; q = Et <= pt ? h : Et >= pt + f ? f : Et - pt, !(_t < q); Et += u)\n C = _t - q, N = u - q, at.push(\n w(M(q + C % N, 0))\n ), _t = x(C / N);\n at.push(w(M(_t, 0))), pt = D(H, nt, tt == et), H = 0, ++tt;\n }\n ++H, ++L;\n }\n return at.join(\"\");\n }\n function $(U) {\n return b(U, function(L) {\n return _.test(L) ? B(L.slice(4).toLowerCase()) : L;\n });\n }\n function Q(U) {\n return b(U, function(L) {\n return g.test(L) ? \"xn--\" + X(L) : L;\n });\n }\n if (a = {\n /**\n * A string representing the current Punycode.js version number.\n * @memberOf punycode\n * @type String\n */\n version: \"1.4.1\",\n /**\n * An object of methods to convert from JavaScript's internal character\n * representation (UCS-2) to Unicode code points, and back.\n * @see <https://mathiasbynens.be/notes/javascript-encoding>\n * @memberOf punycode\n * @type Object\n */\n ucs2: {\n decode: P,\n encode: A\n },\n decode: B,\n encode: X,\n toASCII: Q,\n toUnicode: $\n }, n && i)\n if (r.exports == n)\n i.exports = a;\n else\n for (S in a)\n a.hasOwnProperty(S) && (n[S] = a[S]);\n else\n e.punycode = a;\n })(vi);\n})(Pi, Pi.exports);\nvar Dd = Pi.exports, Fd = function() {\n if (typeof Symbol != \"function\" || typeof Object.getOwnPropertySymbols != \"function\")\n return !1;\n if (typeof Symbol.iterator == \"symbol\")\n return !0;\n var t = {}, e = Symbol(\"test\"), n = Object(e);\n if (typeof e == \"string\" || Object.prototype.toString.call(e) !== \"[object Symbol]\" || Object.prototype.toString.call(n) !== \"[object Symbol]\")\n return !1;\n var i = 42;\n t[e] = i;\n for (e in t)\n return !1;\n if (typeof Object.keys == \"function\" && Object.keys(t).length !== 0 || typeof Object.getOwnPropertyNames == \"function\" && Object.getOwnPropertyNames(t).length !== 0)\n return !1;\n var o = Object.getOwnPropertySymbols(t);\n if (o.length !== 1 || o[0] !== e || !Object.prototype.propertyIsEnumerable.call(t, e))\n return !1;\n if (typeof Object.getOwnPropertyDescriptor == \"function\") {\n var a = Object.getOwnPropertyDescriptor(t, e);\n if (a.value !== i || a.enumerable !== !0)\n return !1;\n }\n return !0;\n}, Qs = typeof Symbol < \"u\" && Symbol, Bd = Fd, Nd = function() {\n return typeof Qs != \"function\" || typeof Symbol != \"function\" || typeof Qs(\"foo\") != \"symbol\" || typeof Symbol(\"bar\") != \"symbol\" ? !1 : Bd();\n}, tu = {\n foo: {}\n}, Ld = Object, Ud = function() {\n return { __proto__: tu }.foo === tu.foo && !({ __proto__: null } instanceof Ld);\n}, Gd = \"Function.prototype.bind called on incompatible \", kd = Object.prototype.toString, Hd = Math.max, Xd = \"[object Function]\", eu = function(t, e) {\n for (var n = [], i = 0; i < t.length; i += 1)\n n[i] = t[i];\n for (var o = 0; o < e.length; o += 1)\n n[o + t.length] = e[o];\n return n;\n}, jd = function(t, e) {\n for (var n = [], i = e || 0, o = 0; i < t.length; i += 1, o += 1)\n n[o] = t[i];\n return n;\n}, Yd = function(r, t) {\n for (var e = \"\", n = 0; n < r.length; n += 1)\n e += r[n], n + 1 < r.length && (e += t);\n return e;\n}, Vd = function(t) {\n var e = this;\n if (typeof e != \"function\" || kd.apply(e) !== Xd)\n throw new TypeError(Gd + e);\n for (var n = jd(arguments, 1), i, o = function() {\n if (this instanceof i) {\n var f = e.apply(\n this,\n eu(n, arguments)\n );\n return Object(f) === f ? f : this;\n }\n return e.apply(\n t,\n eu(n, arguments)\n );\n }, a = Hd(0, e.length - n.length), s = [], u = 0; u < a; u++)\n s[u] = \"$\" + u;\n if (i = Function(\"binder\", \"return function (\" + Yd(s, \",\") + \"){ return binder.apply(this,arguments); }\")(o), e.prototype) {\n var h = function() {\n };\n h.prototype = e.prototype, i.prototype = new h(), h.prototype = null;\n }\n return i;\n}, zd = Vd, Za = Function.prototype.bind || zd, Wd = Function.prototype.call, qd = Object.prototype.hasOwnProperty, $d = Za, Kd = $d.call(Wd, qd), ot, Hr = SyntaxError, ol = Function, Br = TypeError, no = function(r) {\n try {\n return ol('\"use strict\"; return (' + r + \").constructor;\")();\n } catch {\n }\n}, ar = Object.getOwnPropertyDescriptor;\nif (ar)\n try {\n ar({}, \"\");\n } catch {\n ar = null;\n }\nvar io = function() {\n throw new Br();\n}, Zd = ar ? function() {\n try {\n return arguments.callee, io;\n } catch {\n try {\n return ar(arguments, \"callee\").get;\n } catch {\n return io;\n }\n }\n}() : io, br = Nd(), Jd = Ud(), Bt = Object.getPrototypeOf || (Jd ? function(r) {\n return r.__proto__;\n} : null), Pr = {}, Qd = typeof Uint8Array > \"u\" || !Bt ? ot : Bt(Uint8Array), sr = {\n \"%AggregateError%\": typeof AggregateError > \"u\" ? ot : AggregateError,\n \"%Array%\": Array,\n \"%ArrayBuffer%\": typeof ArrayBuffer > \"u\" ? ot : ArrayBuffer,\n \"%ArrayIteratorPrototype%\": br && Bt ? Bt([][Symbol.iterator]()) : ot,\n \"%AsyncFromSyncIteratorPrototype%\": ot,\n \"%AsyncFunction%\": Pr,\n \"%AsyncGenerator%\": Pr,\n \"%AsyncGeneratorFunction%\": Pr,\n \"%AsyncIteratorPrototype%\": Pr,\n \"%Atomics%\": typeof Atomics > \"u\" ? ot : Atomics,\n \"%BigInt%\": typeof BigInt > \"u\" ? ot : BigInt,\n \"%BigInt64Array%\": typeof BigInt64Array > \"u\" ? ot : BigInt64Array,\n \"%BigUint64Array%\": typeof BigUint64Array > \"u\" ? ot : BigUint64Array,\n \"%Boolean%\": Boolean,\n \"%DataView%\": typeof DataView > \"u\" ? ot : DataView,\n \"%Date%\": Date,\n \"%decodeURI%\": decodeURI,\n \"%decodeURIComponent%\": decodeURIComponent,\n \"%encodeURI%\": encodeURI,\n \"%encodeURIComponent%\": encodeURIComponent,\n \"%Error%\": Error,\n \"%eval%\": eval,\n // eslint-disable-line no-eval\n \"%EvalError%\": EvalError,\n \"%Float32Array%\": typeof Float32Array > \"u\" ? ot : Float32Array,\n \"%Float64Array%\": typeof Float64Array > \"u\" ? ot : Float64Array,\n \"%FinalizationRegistry%\": typeof FinalizationRegistry > \"u\" ? ot : FinalizationRegistry,\n \"%Function%\": ol,\n \"%GeneratorFunction%\": Pr,\n \"%Int8Array%\": typeof Int8Array > \"u\" ? ot : Int8Array,\n \"%Int16Array%\": typeof Int16Array > \"u\" ? ot : Int16Array,\n \"%Int32Array%\": typeof Int32Array > \"u\" ? ot : Int32Array,\n \"%isFinite%\": isFinite,\n \"%isNaN%\": isNaN,\n \"%IteratorPrototype%\": br && Bt ? Bt(Bt([][Symbol.iterator]())) : ot,\n \"%JSON%\": typeof JSON == \"object\" ? JSON : ot,\n \"%Map%\": typeof Map > \"u\" ? ot : Map,\n \"%MapIteratorPrototype%\": typeof Map > \"u\" || !br || !Bt ? ot : Bt((/* @__PURE__ */ new Map())[Symbol.iterator]()),\n \"%Math%\": Math,\n \"%Number%\": Number,\n \"%Object%\": Object,\n \"%parseFloat%\": parseFloat,\n \"%parseInt%\": parseInt,\n \"%Promise%\": typeof Promise > \"u\" ? ot : Promise,\n \"%Proxy%\": typeof Proxy > \"u\" ? ot : Proxy,\n \"%RangeError%\": RangeError,\n \"%ReferenceError%\": ReferenceError,\n \"%Reflect%\": typeof Reflect > \"u\" ? ot : Reflect,\n \"%RegExp%\": RegExp,\n \"%Set%\": typeof Set > \"u\" ? ot : Set,\n \"%SetIteratorPrototype%\": typeof Set > \"u\" || !br || !Bt ? ot : Bt((/* @__PURE__ */ new Set())[Symbol.iterator]()),\n \"%SharedArrayBuffer%\": typeof SharedArrayBuffer > \"u\" ? ot : SharedArrayBuffer,\n \"%String%\": String,\n \"%StringIteratorPrototype%\": br && Bt ? Bt(\"\"[Symbol.iterator]()) : ot,\n \"%Symbol%\": br ? Symbol : ot,\n \"%SyntaxError%\": Hr,\n \"%ThrowTypeError%\": Zd,\n \"%TypedArray%\": Qd,\n \"%TypeError%\": Br,\n \"%Uint8Array%\": typeof Uint8Array > \"u\" ? ot : Uint8Array,\n \"%Uint8ClampedArray%\": typeof Uint8ClampedArray > \"u\" ? ot : Uint8ClampedArray,\n \"%Uint16Array%\": typeof Uint16Array > \"u\" ? ot : Uint16Array,\n \"%Uint32Array%\": typeof Uint32Array > \"u\" ? ot : Uint32Array,\n \"%URIError%\": URIError,\n \"%WeakMap%\": typeof WeakMap > \"u\" ? ot : WeakMap,\n \"%WeakRef%\": typeof WeakRef > \"u\" ? ot : WeakRef,\n \"%WeakSet%\": typeof WeakSet > \"u\" ? ot : WeakSet\n};\nif (Bt)\n try {\n null.error;\n } catch (r) {\n var tp = Bt(Bt(r));\n sr[\"%Error.prototype%\"] = tp;\n }\nvar ep = function r(t) {\n var e;\n if (t === \"%AsyncFunction%\")\n e = no(\"async function () {}\");\n else if (t === \"%GeneratorFunction%\")\n e = no(\"function* () {}\");\n else if (t === \"%AsyncGeneratorFunction%\")\n e = no(\"async function* () {}\");\n else if (t === \"%AsyncGenerator%\") {\n var n = r(\"%AsyncGeneratorFunction%\");\n n && (e = n.prototype);\n } else if (t === \"%AsyncIteratorPrototype%\") {\n var i = r(\"%AsyncGenerator%\");\n i && Bt && (e = Bt(i.prototype));\n }\n return sr[t] = e, e;\n}, ru = {\n \"%ArrayBufferPrototype%\": [\"ArrayBuffer\", \"prototype\"],\n \"%ArrayPrototype%\": [\"Array\", \"prototype\"],\n \"%ArrayProto_entries%\": [\"Array\", \"prototype\", \"entries\"],\n \"%ArrayProto_forEach%\": [\"Array\", \"prototype\", \"forEach\"],\n \"%ArrayProto_keys%\": [\"Array\", \"prototype\", \"keys\"],\n \"%ArrayProto_values%\": [\"Array\", \"prototype\", \"values\"],\n \"%AsyncFunctionPrototype%\": [\"AsyncFunction\", \"prototype\"],\n \"%AsyncGenerator%\": [\"AsyncGeneratorFunction\", \"prototype\"],\n \"%AsyncGeneratorPrototype%\": [\"AsyncGeneratorFunction\", \"prototype\", \"prototype\"],\n \"%BooleanPrototype%\": [\"Boolean\", \"prototype\"],\n \"%DataViewPrototype%\": [\"DataView\", \"prototype\"],\n \"%DatePrototype%\": [\"Date\", \"prototype\"],\n \"%ErrorPrototype%\": [\"Error\", \"prototype\"],\n \"%EvalErrorPrototype%\": [\"EvalError\", \"prototype\"],\n \"%Float32ArrayPrototype%\": [\"Float32Array\", \"prototype\"],\n \"%Float64ArrayPrototype%\": [\"Float64Array\", \"prototype\"],\n \"%FunctionPrototype%\": [\"Function\", \"prototype\"],\n \"%Generator%\": [\"GeneratorFunction\", \"prototype\"],\n \"%GeneratorPrototype%\": [\"GeneratorFunction\", \"prototype\", \"prototype\"],\n \"%Int8ArrayPrototype%\": [\"Int8Array\", \"prototype\"],\n \"%Int16ArrayPrototype%\": [\"Int16Array\", \"prototype\"],\n \"%Int32ArrayPrototype%\": [\"Int32Array\", \"prototype\"],\n \"%JSONParse%\": [\"JSON\", \"parse\"],\n \"%JSONStringify%\": [\"JSON\", \"stringify\"],\n \"%MapPrototype%\": [\"Map\", \"prototype\"],\n \"%NumberPrototype%\": [\"Number\", \"prototype\"],\n \"%ObjectPrototype%\": [\"Object\", \"prototype\"],\n \"%ObjProto_toString%\": [\"Object\", \"prototype\", \"toString\"],\n \"%ObjProto_valueOf%\": [\"Object\", \"prototype\", \"valueOf\"],\n \"%PromisePrototype%\": [\"Promise\", \"prototype\"],\n \"%PromiseProto_then%\": [\"Promise\", \"prototype\", \"then\"],\n \"%Promise_all%\": [\"Promise\", \"all\"],\n \"%Promise_reject%\": [\"Promise\", \"reject\"],\n \"%Promise_resolve%\": [\"Promise\", \"resolve\"],\n \"%RangeErrorPrototype%\": [\"RangeError\", \"prototype\"],\n \"%ReferenceErrorPrototype%\": [\"ReferenceError\", \"prototype\"],\n \"%RegExpPrototype%\": [\"RegExp\", \"prototype\"],\n \"%SetPrototype%\": [\"Set\", \"prototype\"],\n \"%SharedArrayBufferPrototype%\": [\"SharedArrayBuffer\", \"prototype\"],\n \"%StringPrototype%\": [\"String\", \"prototype\"],\n \"%SymbolPrototype%\": [\"Symbol\", \"prototype\"],\n \"%SyntaxErrorPrototype%\": [\"SyntaxError\", \"prototype\"],\n \"%TypedArrayPrototype%\": [\"TypedArray\", \"prototype\"],\n \"%TypeErrorPrototype%\": [\"TypeError\", \"prototype\"],\n \"%Uint8ArrayPrototype%\": [\"Uint8Array\", \"prototype\"],\n \"%Uint8ClampedArrayPrototype%\": [\"Uint8ClampedArray\", \"prototype\"],\n \"%Uint16ArrayPrototype%\": [\"Uint16Array\", \"prototype\"],\n \"%Uint32ArrayPrototype%\": [\"Uint32Array\", \"prototype\"],\n \"%URIErrorPrototype%\": [\"URIError\", \"prototype\"],\n \"%WeakMapPrototype%\": [\"WeakMap\", \"prototype\"],\n \"%WeakSetPrototype%\": [\"WeakSet\", \"prototype\"]\n}, In = Za, Oi = Kd, rp = In.call(Function.call, Array.prototype.concat), np = In.call(Function.apply, Array.prototype.splice), nu = In.call(Function.call, String.prototype.replace), Ri = In.call(Function.call, String.prototype.slice), ip = In.call(Function.call, RegExp.prototype.exec), op = /[^%.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|%$))/g, ap = /\\\\(\\\\)?/g, sp = function(t) {\n var e = Ri(t, 0, 1), n = Ri(t, -1);\n if (e === \"%\" && n !== \"%\")\n throw new Hr(\"invalid intrinsic syntax, expected closing `%`\");\n if (n === \"%\" && e !== \"%\")\n throw new Hr(\"invalid intrinsic syntax, expected opening `%`\");\n var i = [];\n return nu(t, op, function(o, a, s, u) {\n i[i.length] = s ? nu(u, ap, \"$1\") : a || o;\n }), i;\n}, up = function(t, e) {\n var n = t, i;\n if (Oi(ru, n) && (i = ru[n], n = \"%\" + i[0] + \"%\"), Oi(sr, n)) {\n var o = sr[n];\n if (o === Pr && (o = ep(n)), typeof o > \"u\" && !e)\n throw new Br(\"intrinsic \" + t + \" exists, but is not available. Please file an issue!\");\n return {\n alias: i,\n name: n,\n value: o\n };\n }\n throw new Hr(\"intrinsic \" + t + \" does not exist!\");\n}, cr = function(t, e) {\n if (typeof t != \"string\" || t.length === 0)\n throw new Br(\"intrinsic name must be a non-empty string\");\n if (arguments.length > 1 && typeof e != \"boolean\")\n throw new Br('\"allowMissing\" argument must be a boolean');\n if (ip(/^%?[^%]*%?$/, t) === null)\n throw new Hr(\"`%` may not be present anywhere but at the beginning and end of the intrinsic name\");\n var n = sp(t), i = n.length > 0 ? n[0] : \"\", o = up(\"%\" + i + \"%\", e), a = o.name, s = o.value, u = !1, h = o.alias;\n h && (i = h[0], np(n, rp([0, 1], h)));\n for (var f = 1, l = !0; f < n.length; f += 1) {\n var c = n[f], d = Ri(c, 0, 1), p = Ri(c, -1);\n if ((d === '\"' || d === \"'\" || d === \"`\" || p === '\"' || p === \"'\" || p === \"`\") && d !== p)\n throw new Hr(\"property names with quotes must have matching quotes\");\n if ((c === \"constructor\" || !l) && (u = !0), i += \".\" + c, a = \"%\" + i + \"%\", Oi(sr, a))\n s = sr[a];\n else if (s != null) {\n if (!(c in s)) {\n if (!e)\n throw new Br(\"base intrinsic for \" + t + \" exists, but the property is not available.\");\n return;\n }\n if (ar && f + 1 >= n.length) {\n var v = ar(s, c);\n l = !!v, l && \"get\" in v && !(\"originalValue\" in v.get) ? s = v.get : s = s[c];\n } else\n l = Oi(s, c), s = s[c];\n l && !u && (sr[a] = s);\n }\n }\n return s;\n}, al = { exports: {} }, hp = cr, Ko = hp(\"%Object.defineProperty%\", !0), Zo = function() {\n if (Ko)\n try {\n return Ko({}, \"a\", { value: 1 }), !0;\n } catch {\n return !1;\n }\n return !1;\n};\nZo.hasArrayLengthDefineBug = function() {\n if (!Zo())\n return null;\n try {\n return Ko([], \"length\", { value: 1 }).length !== 1;\n } catch {\n return !0;\n }\n};\nvar sl = Zo, lp = cr, _i = lp(\"%Object.getOwnPropertyDescriptor%\", !0);\nif (_i)\n try {\n _i([], \"length\");\n } catch {\n _i = null;\n }\nvar ul = _i, fp = sl(), Ja = cr, ln = fp && Ja(\"%Object.defineProperty%\", !0);\nif (ln)\n try {\n ln({}, \"a\", { value: 1 });\n } catch {\n ln = !1;\n }\nvar cp = Ja(\"%SyntaxError%\"), xr = Ja(\"%TypeError%\"), iu = ul, dp = function(t, e, n) {\n if (!t || typeof t != \"object\" && typeof t != \"function\")\n throw new xr(\"`obj` must be an object or a function`\");\n if (typeof e != \"string\" && typeof e != \"symbol\")\n throw new xr(\"`property` must be a string or a symbol`\");\n if (arguments.length > 3 && typeof arguments[3] != \"boolean\" && arguments[3] !== null)\n throw new xr(\"`nonEnumerable`, if provided, must be a boolean or null\");\n if (arguments.length > 4 && typeof arguments[4] != \"boolean\" && arguments[4] !== null)\n throw new xr(\"`nonWritable`, if provided, must be a boolean or null\");\n if (arguments.length > 5 && typeof arguments[5] != \"boolean\" && arguments[5] !== null)\n throw new xr(\"`nonConfigurable`, if provided, must be a boolean or null\");\n if (arguments.length > 6 && typeof arguments[6] != \"boolean\")\n throw new xr(\"`loose`, if provided, must be a boolean\");\n var i = arguments.length > 3 ? arguments[3] : null, o = arguments.length > 4 ? arguments[4] : null, a = arguments.length > 5 ? arguments[5] : null, s = arguments.length > 6 ? arguments[6] : !1, u = !!iu && iu(t, e);\n if (ln)\n ln(t, e, {\n configurable: a === null && u ? u.configurable : !a,\n enumerable: i === null && u ? u.enumerable : !i,\n value: n,\n writable: o === null && u ? u.writable : !o\n });\n else if (s || !i && !o && !a)\n t[e] = n;\n else\n throw new cp(\"This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.\");\n}, hl = cr, ou = dp, pp = sl(), au = ul, su = hl(\"%TypeError%\"), vp = hl(\"%Math.floor%\"), _p = function(t, e) {\n if (typeof t != \"function\")\n throw new su(\"`fn` is not a function\");\n if (typeof e != \"number\" || e < 0 || e > 4294967295 || vp(e) !== e)\n throw new su(\"`length` must be a positive 32-bit integer\");\n var n = arguments.length > 2 && !!arguments[2], i = !0, o = !0;\n if (\"length\" in t && au) {\n var a = au(t, \"length\");\n a && !a.configurable && (i = !1), a && !a.writable && (o = !1);\n }\n return (i || o || !n) && (pp ? ou(t, \"length\", e, !0, !0) : ou(t, \"length\", e)), t;\n};\n(function(r) {\n var t = Za, e = cr, n = _p, i = e(\"%TypeError%\"), o = e(\"%Function.prototype.apply%\"), a = e(\"%Function.prototype.call%\"), s = e(\"%Reflect.apply%\", !0) || t.call(a, o), u = e(\"%Object.defineProperty%\", !0), h = e(\"%Math.max%\");\n if (u)\n try {\n u({}, \"a\", { value: 1 });\n } catch {\n u = null;\n }\n r.exports = function(c) {\n if (typeof c != \"function\")\n throw new i(\"a function is required\");\n var d = s(t, a, arguments);\n return n(\n d,\n 1 + h(0, c.length - (arguments.length - 1)),\n !0\n );\n };\n var f = function() {\n return s(t, o, arguments);\n };\n u ? u(r.exports, \"apply\", { value: f }) : r.exports.apply = f;\n})(al);\nvar mp = al.exports, ll = cr, fl = mp, gp = fl(ll(\"String.prototype.indexOf\")), yp = function(t, e) {\n var n = ll(t, !!e);\n return typeof n == \"function\" && gp(t, \".prototype.\") > -1 ? fl(n) : n;\n};\nconst bp = {}, xp = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({\n __proto__: null,\n default: bp\n}, Symbol.toStringTag, { value: \"Module\" })), Ep = /* @__PURE__ */ rd(xp);\nvar Qa = typeof Map == \"function\" && Map.prototype, oo = Object.getOwnPropertyDescriptor && Qa ? Object.getOwnPropertyDescriptor(Map.prototype, \"size\") : null, Ii = Qa && oo && typeof oo.get == \"function\" ? oo.get : null, uu = Qa && Map.prototype.forEach, ts = typeof Set == \"function\" && Set.prototype, ao = Object.getOwnPropertyDescriptor && ts ? Object.getOwnPropertyDescriptor(Set.prototype, \"size\") : null, Ci = ts && ao && typeof ao.get == \"function\" ? ao.get : null, hu = ts && Set.prototype.forEach, Tp = typeof WeakMap == \"function\" && WeakMap.prototype, fn = Tp ? WeakMap.prototype.has : null, wp = typeof WeakSet == \"function\" && WeakSet.prototype, cn = wp ? WeakSet.prototype.has : null, Sp = typeof WeakRef == \"function\" && WeakRef.prototype, lu = Sp ? WeakRef.prototype.deref : null, Ap = Boolean.prototype.valueOf, Pp = Object.prototype.toString, Op = Function.prototype.toString, Rp = String.prototype.match, es = String.prototype.slice, Ne = String.prototype.replace, Ip = String.prototype.toUpperCase, fu = String.prototype.toLowerCase, cl = RegExp.prototype.test, cu = Array.prototype.concat, _e = Array.prototype.join, Cp = Array.prototype.slice, du = Math.floor, Jo = typeof BigInt == \"function\" ? BigInt.prototype.valueOf : null, so = Object.getOwnPropertySymbols, Qo = typeof Symbol == \"function\" && typeof Symbol.iterator == \"symbol\" ? Symbol.prototype.toString : null, Xr = typeof Symbol == \"function\" && typeof Symbol.iterator == \"object\", Yt = typeof Symbol == \"function\" && Symbol.toStringTag && (typeof Symbol.toStringTag === Xr || \"symbol\") ? Symbol.toStringTag : null, dl = Object.prototype.propertyIsEnumerable, pu = (typeof Reflect == \"function\" ? Reflect.getPrototypeOf : Object.getPrototypeOf) || ([].__proto__ === Array.prototype ? function(r) {\n return r.__proto__;\n} : null);\nfunction vu(r, t) {\n if (r === 1 / 0 || r === -1 / 0 || r !== r || r && r > -1e3 && r < 1e3 || cl.call(/e/, t))\n return t;\n var e = /[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;\n if (typeof r == \"number\") {\n var n = r < 0 ? -du(-r) : du(r);\n if (n !== r) {\n var i = String(n), o = es.call(t, i.length + 1);\n return Ne.call(i, e, \"$&_\") + \".\" + Ne.call(Ne.call(o, /([0-9]{3})/g, \"$&_\"), /_$/, \"\");\n }\n }\n return Ne.call(t, e, \"$&_\");\n}\nvar ta = Ep, _u = ta.custom, mu = vl(_u) ? _u : null, Mp = function r(t, e, n, i) {\n var o = e || {};\n if (Be(o, \"quoteStyle\") && o.quoteStyle !== \"single\" && o.quoteStyle !== \"double\")\n throw new TypeError('option \"quoteStyle\" must be \"single\" or \"double\"');\n if (Be(o, \"maxStringLength\") && (typeof o.maxStringLength == \"number\" ? o.maxStringLength < 0 && o.maxStringLength !== 1 / 0 : o.maxStringLength !== null))\n throw new TypeError('option \"maxStringLength\", if provided, must be a positive integer, Infinity, or `null`');\n var a = Be(o, \"customInspect\") ? o.customInspect : !0;\n if (typeof a != \"boolean\" && a !== \"symbol\")\n throw new TypeError(\"option \\\"customInspect\\\", if provided, must be `true`, `false`, or `'symbol'`\");\n if (Be(o, \"indent\") && o.indent !== null && o.indent !== \"\t\" && !(parseInt(o.indent, 10) === o.indent && o.indent > 0))\n throw new TypeError('option \"indent\" must be \"\\\\t\", an integer > 0, or `null`');\n if (Be(o, \"numericSeparator\") && typeof o.numericSeparator != \"boolean\")\n throw new TypeError('option \"numericSeparator\", if provided, must be `true` or `false`');\n var s = o.numericSeparator;\n if (typeof t > \"u\")\n return \"undefined\";\n if (t === null)\n return \"null\";\n if (typeof t == \"boolean\")\n return t ? \"true\" : \"false\";\n if (typeof t == \"string\")\n return ml(t, o);\n if (typeof t == \"number\") {\n if (t === 0)\n return 1 / 0 / t > 0 ? \"0\" : \"-0\";\n var u = String(t);\n return s ? vu(t, u) : u;\n }\n if (typeof t == \"bigint\") {\n var h = String(t) + \"n\";\n return s ? vu(t, h) : h;\n }\n var f = typeof o.depth > \"u\" ? 5 : o.depth;\n if (typeof n > \"u\" && (n = 0), n >= f && f > 0 && typeof t == \"object\")\n return ea(t) ? \"[Array]\" : \"[Object]\";\n var l = Kp(o, n);\n if (typeof i > \"u\")\n i = [];\n else if (_l(i, t) >= 0)\n return \"[Circular]\";\n function c(R, M, D) {\n if (M && (i = Cp.call(i), i.push(M)), D) {\n var B = {\n depth: o.depth\n };\n return Be(o, \"quoteStyle\") && (B.quoteStyle = o.quoteStyle), r(R, B, n + 1, i);\n }\n return r(R, o, n + 1, i);\n }\n if (typeof t == \"function\" && !gu(t)) {\n var d = Hp(t), p = Xn(t, c);\n return \"[Function\" + (d ? \": \" + d : \" (anonymous)\") + \"]\" + (p.length > 0 ? \" { \" + _e.call(p, \", \") + \" }\" : \"\");\n }\n if (vl(t)) {\n var v = Xr ? Ne.call(String(t), /^(Symbol\\(.*\\))_[^)]*$/, \"$1\") : Qo.call(t);\n return typeof t == \"object\" && !Xr ? Jr(v) : v;\n }\n if (Wp(t)) {\n for (var _ = \"<\" + fu.call(String(t.nodeName)), g = t.attributes || [], m = 0; m < g.length; m++)\n _ += \" \" + g[m].name + \"=\" + pl(Dp(g[m].value), \"double\", o);\n return _ += \">\", t.childNodes && t.childNodes.length && (_ += \"...\"), _ += \"</\" + fu.call(String(t.nodeName)) + \">\", _;\n }\n if (ea(t)) {\n if (t.length === 0)\n return \"[]\";\n var y = Xn(t, c);\n return l && !$p(y) ? \"[\" + ra(y, l) + \"]\" : \"[ \" + _e.call(y, \", \") + \" ]\";\n }\n if (Bp(t)) {\n var T = Xn(t, c);\n return !(\"cause\" in Error.prototype) && \"cause\" in t && !dl.call(t, \"cause\") ? \"{ [\" + String(t) + \"] \" + _e.call(cu.call(\"[cause]: \" + c(t.cause), T), \", \") + \" }\" : T.length === 0 ? \"[\" + String(t) + \"]\" : \"{ [\" + String(t) + \"] \" + _e.call(T, \", \") + \" }\";\n }\n if (typeof t == \"object\" && a) {\n if (mu && typeof t[mu] == \"function\" && ta)\n return ta(t, { depth: f - n });\n if (a !== \"symbol\" && typeof t.inspect == \"function\")\n return t.inspect();\n }\n if (Xp(t)) {\n var x = [];\n return uu && uu.call(t, function(R, M) {\n x.push(c(M, t, !0) + \" => \" + c(R, t));\n }), yu(\"Map\", Ii.call(t), x, l);\n }\n if (Vp(t)) {\n var w = [];\n return hu && hu.call(t, function(R) {\n w.push(c(R, t));\n }), yu(\"Set\", Ci.call(t), w, l);\n }\n if (jp(t))\n return uo(\"WeakMap\");\n if (zp(t))\n return uo(\"WeakSet\");\n if (Yp(t))\n return uo(\"WeakRef\");\n if (Lp(t))\n return Jr(c(Number(t)));\n if (Gp(t))\n return Jr(c(Jo.call(t)));\n if (Up(t))\n return Jr(Ap.call(t));\n if (Np(t))\n return Jr(c(String(t)));\n if (typeof window < \"u\" && t === window)\n return \"{ [object Window] }\";\n if (t === vi)\n return \"{ [object globalThis] }\";\n if (!Fp(t) && !gu(t)) {\n var S = Xn(t, c), I = pu ? pu(t) === Object.prototype : t instanceof Object || t.constructor === Object, O = t instanceof Object ? \"\" : \"null prototype\", b = !I && Yt && Object(t) === t && Yt in t ? es.call(Ye(t), 8, -1) : O ? \"Object\" : \"\", P = I || typeof t.constructor != \"function\" ? \"\" : t.constructor.name ? t.constructor.name + \" \" : \"\", A = P + (b || O ? \"[\" + _e.call(cu.call([], b || [], O || []), \": \") + \"] \" : \"\");\n return S.length === 0 ? A + \"{}\" : l ? A + \"{\" + ra(S, l) + \"}\" : A + \"{ \" + _e.call(S, \", \") + \" }\";\n }\n return String(t);\n};\nfunction pl(r, t, e) {\n var n = (e.quoteStyle || t) === \"double\" ? '\"' : \"'\";\n return n + r + n;\n}\nfunction Dp(r) {\n return Ne.call(String(r), /\"/g, \""\");\n}\nfunction ea(r) {\n return Ye(r) === \"[object Array]\" && (!Yt || !(typeof r == \"object\" && Yt in r));\n}\nfunction Fp(r) {\n return Ye(r) === \"[object Date]\" && (!Yt || !(typeof r == \"object\" && Yt in r));\n}\nfunction gu(r) {\n return Ye(r) === \"[object RegExp]\" && (!Yt || !(typeof r == \"object\" && Yt in r));\n}\nfunction Bp(r) {\n return Ye(r) === \"[object Error]\" && (!Yt || !(typeof r == \"object\" && Yt in r));\n}\nfunction Np(r) {\n return Ye(r) === \"[object String]\" && (!Yt || !(typeof r == \"object\" && Yt in r));\n}\nfunction Lp(r) {\n return Ye(r) === \"[object Number]\" && (!Yt || !(typeof r == \"object\" && Yt in r));\n}\nfunction Up(r) {\n return Ye(r) === \"[object Boolean]\" && (!Yt || !(typeof r == \"object\" && Yt in r));\n}\nfunction vl(r) {\n if (Xr)\n return r && typeof r == \"object\" && r instanceof Symbol;\n if (typeof r == \"symbol\")\n return !0;\n if (!r || typeof r != \"object\" || !Qo)\n return !1;\n try {\n return Qo.call(r), !0;\n } catch {\n }\n return !1;\n}\nfunction Gp(r) {\n if (!r || typeof r != \"object\" || !Jo)\n return !1;\n try {\n return Jo.call(r), !0;\n } catch {\n }\n return !1;\n}\nvar kp = Object.prototype.hasOwnProperty || function(r) {\n return r in this;\n};\nfunction Be(r, t) {\n return kp.call(r, t);\n}\nfunction Ye(r) {\n return Pp.call(r);\n}\nfunction Hp(r) {\n if (r.name)\n return r.name;\n var t = Rp.call(Op.call(r), /^function\\s*([\\w$]+)/);\n return t ? t[1] : null;\n}\nfunction _l(r, t) {\n if (r.indexOf)\n return r.indexOf(t);\n for (var e = 0, n = r.length; e < n; e++)\n if (r[e] === t)\n return e;\n return -1;\n}\nfunction Xp(r) {\n if (!Ii || !r || typeof r != \"object\")\n return !1;\n try {\n Ii.call(r);\n try {\n Ci.call(r);\n } catch {\n return !0;\n }\n return r instanceof Map;\n } catch {\n }\n return !1;\n}\nfunction jp(r) {\n if (!fn || !r || typeof r != \"object\")\n return !1;\n try {\n fn.call(r, fn);\n try {\n cn.call(r, cn);\n } catch {\n return !0;\n }\n return r instanceof WeakMap;\n } catch {\n }\n return !1;\n}\nfunction Yp(r) {\n if (!lu || !r || typeof r != \"object\")\n return !1;\n try {\n return lu.call(r), !0;\n } catch {\n }\n return !1;\n}\nfunction Vp(r) {\n if (!Ci || !r || typeof r != \"object\")\n return !1;\n try {\n Ci.call(r);\n try {\n Ii.call(r);\n } catch {\n return !0;\n }\n return r instanceof Set;\n } catch {\n }\n return !1;\n}\nfunction zp(r) {\n if (!cn || !r || typeof r != \"object\")\n return !1;\n try {\n cn.call(r, cn);\n try {\n fn.call(r, fn);\n } catch {\n return !0;\n }\n return r instanceof WeakSet;\n } catch {\n }\n return !1;\n}\nfunction Wp(r) {\n return !r || typeof r != \"object\" ? !1 : typeof HTMLElement < \"u\" && r instanceof HTMLElement ? !0 : typeof r.nodeName == \"string\" && typeof r.getAttribute == \"function\";\n}\nfunction ml(r, t) {\n if (r.length > t.maxStringLength) {\n var e = r.length - t.maxStringLength, n = \"... \" + e + \" more character\" + (e > 1 ? \"s\" : \"\");\n return ml(es.call(r, 0, t.maxStringLength), t) + n;\n }\n var i = Ne.call(Ne.call(r, /(['\\\\])/g, \"\\\\$1\"), /[\\x00-\\x1f]/g, qp);\n return pl(i, \"single\", t);\n}\nfunction qp(r) {\n var t = r.charCodeAt(0), e = {\n 8: \"b\",\n 9: \"t\",\n 10: \"n\",\n 12: \"f\",\n 13: \"r\"\n }[t];\n return e ? \"\\\\\" + e : \"\\\\x\" + (t < 16 ? \"0\" : \"\") + Ip.call(t.toString(16));\n}\nfunction Jr(r) {\n return \"Object(\" + r + \")\";\n}\nfunction uo(r) {\n return r + \" { ? }\";\n}\nfunction yu(r, t, e, n) {\n var i = n ? ra(e, n) : _e.call(e, \", \");\n return r + \" (\" + t + \") {\" + i + \"}\";\n}\nfunction $p(r) {\n for (var t = 0; t < r.length; t++)\n if (_l(r[t], `\n`) >= 0)\n return !1;\n return !0;\n}\nfunction Kp(r, t) {\n var e;\n if (r.indent === \"\t\")\n e = \"\t\";\n else if (typeof r.indent == \"number\" && r.indent > 0)\n e = _e.call(Array(r.indent + 1), \" \");\n else\n return null;\n return {\n base: e,\n prev: _e.call(Array(t + 1), e)\n };\n}\nfunction ra(r, t) {\n if (r.length === 0)\n return \"\";\n var e = `\n` + t.prev + t.base;\n return e + _e.call(r, \",\" + e) + `\n` + t.prev;\n}\nfunction Xn(r, t) {\n var e = ea(r), n = [];\n if (e) {\n n.length = r.length;\n for (var i = 0; i < r.length; i++)\n n[i] = Be(r, i) ? t(r[i], r) : \"\";\n }\n var o = typeof so == \"function\" ? so(r) : [], a;\n if (Xr) {\n a = {};\n for (var s = 0; s < o.length; s++)\n a[\"$\" + o[s]] = o[s];\n }\n for (var u in r)\n Be(r, u) && (e && String(Number(u)) === u && u < r.length || Xr && a[\"$\" + u] instanceof Symbol || (cl.call(/[^\\w$]/, u) ? n.push(t(u, r) + \": \" + t(r[u], r)) : n.push(u + \": \" + t(r[u], r))));\n if (typeof so == \"function\")\n for (var h = 0; h < o.length; h++)\n dl.call(r, o[h]) && n.push(\"[\" + t(o[h]) + \"]: \" + t(r[o[h]], r));\n return n;\n}\nvar rs = cr, $r = yp, Zp = Mp, Jp = rs(\"%TypeError%\"), jn = rs(\"%WeakMap%\", !0), Yn = rs(\"%Map%\", !0), Qp = $r(\"WeakMap.prototype.get\", !0), tv = $r(\"WeakMap.prototype.set\", !0), ev = $r(\"WeakMap.prototype.has\", !0), rv = $r(\"Map.prototype.get\", !0), nv = $r(\"Map.prototype.set\", !0), iv = $r(\"Map.prototype.has\", !0), ns = function(r, t) {\n for (var e = r, n; (n = e.next) !== null; e = n)\n if (n.key === t)\n return e.next = n.next, n.next = r.next, r.next = n, n;\n}, ov = function(r, t) {\n var e = ns(r, t);\n return e && e.value;\n}, av = function(r, t, e) {\n var n = ns(r, t);\n n ? n.value = e : r.next = {\n // eslint-disable-line no-param-reassign\n key: t,\n next: r.next,\n value: e\n };\n}, sv = function(r, t) {\n return !!ns(r, t);\n}, uv = function() {\n var t, e, n, i = {\n assert: function(o) {\n if (!i.has(o))\n throw new Jp(\"Side channel does not contain \" + Zp(o));\n },\n get: function(o) {\n if (jn && o && (typeof o == \"object\" || typeof o == \"function\")) {\n if (t)\n return Qp(t, o);\n } else if (Yn) {\n if (e)\n return rv(e, o);\n } else if (n)\n return ov(n, o);\n },\n has: function(o) {\n if (jn && o && (typeof o == \"object\" || typeof o == \"function\")) {\n if (t)\n return ev(t, o);\n } else if (Yn) {\n if (e)\n return iv(e, o);\n } else if (n)\n return sv(n, o);\n return !1;\n },\n set: function(o, a) {\n jn && o && (typeof o == \"object\" || typeof o == \"function\") ? (t || (t = new jn()), tv(t, o, a)) : Yn ? (e || (e = new Yn()), nv(e, o, a)) : (n || (n = { key: {}, next: null }), av(n, o, a));\n }\n };\n return i;\n}, hv = String.prototype.replace, lv = /%20/g, ho = {\n RFC1738: \"RFC1738\",\n RFC3986: \"RFC3986\"\n}, is = {\n default: ho.RFC3986,\n formatters: {\n RFC1738: function(r) {\n return hv.call(r, lv, \"+\");\n },\n RFC3986: function(r) {\n return String(r);\n }\n },\n RFC1738: ho.RFC1738,\n RFC3986: ho.RFC3986\n}, fv = is, lo = Object.prototype.hasOwnProperty, er = Array.isArray, ve = function() {\n for (var r = [], t = 0; t < 256; ++t)\n r.push(\"%\" + ((t < 16 ? \"0\" : \"\") + t.toString(16)).toUpperCase());\n return r;\n}(), cv = function(t) {\n for (; t.length > 1; ) {\n var e = t.pop(), n = e.obj[e.prop];\n if (er(n)) {\n for (var i = [], o = 0; o < n.length; ++o)\n typeof n[o] < \"u\" && i.push(n[o]);\n e.obj[e.prop] = i;\n }\n }\n}, gl = function(t, e) {\n for (var n = e && e.plainObjects ? /* @__PURE__ */ Object.create(null) : {}, i = 0; i < t.length; ++i)\n typeof t[i] < \"u\" && (n[i] = t[i]);\n return n;\n}, dv = function r(t, e, n) {\n if (!e)\n return t;\n if (typeof e != \"object\") {\n if (er(t))\n t.push(e);\n else if (t && typeof t == \"object\")\n (n && (n.plainObjects || n.allowPrototypes) || !lo.call(Object.prototype, e)) && (t[e] = !0);\n else\n return [t, e];\n return t;\n }\n if (!t || typeof t != \"object\")\n return [t].concat(e);\n var i = t;\n return er(t) && !er(e) && (i = gl(t, n)), er(t) && er(e) ? (e.forEach(function(o, a) {\n if (lo.call(t, a)) {\n var s = t[a];\n s && typeof s == \"object\" && o && typeof o == \"object\" ? t[a] = r(s, o, n) : t.push(o);\n } else\n t[a] = o;\n }), t) : Object.keys(e).reduce(function(o, a) {\n var s = e[a];\n return lo.call(o, a) ? o[a] = r(o[a], s, n) : o[a] = s, o;\n }, i);\n}, pv = function(t, e) {\n return Object.keys(e).reduce(function(n, i) {\n return n[i] = e[i], n;\n }, t);\n}, vv = function(r, t, e) {\n var n = r.replace(/\\+/g, \" \");\n if (e === \"iso-8859-1\")\n return n.replace(/%[0-9a-f]{2}/gi, unescape);\n try {\n return decodeURIComponent(n);\n } catch {\n return n;\n }\n}, _v = function(t, e, n, i, o) {\n if (t.length === 0)\n return t;\n var a = t;\n if (typeof t == \"symbol\" ? a = Symbol.prototype.toString.call(t) : typeof t != \"string\" && (a = String(t)), n === \"iso-8859-1\")\n return escape(a).replace(/%u[0-9a-f]{4}/gi, function(f) {\n return \"%26%23\" + parseInt(f.slice(2), 16) + \"%3B\";\n });\n for (var s = \"\", u = 0; u < a.length; ++u) {\n var h = a.charCodeAt(u);\n if (h === 45 || h === 46 || h === 95 || h === 126 || h >= 48 && h <= 57 || h >= 65 && h <= 90 || h >= 97 && h <= 122 || o === fv.RFC1738 && (h === 40 || h === 41)) {\n s += a.charAt(u);\n continue;\n }\n if (h < 128) {\n s = s + ve[h];\n continue;\n }\n if (h < 2048) {\n s = s + (ve[192 | h >> 6] + ve[128 | h & 63]);\n continue;\n }\n if (h < 55296 || h >= 57344) {\n s = s + (ve[224 | h >> 12] + ve[128 | h >> 6 & 63] + ve[128 | h & 63]);\n continue;\n }\n u += 1, h = 65536 + ((h & 1023) << 10 | a.charCodeAt(u) & 1023), s += ve[240 | h >> 18] + ve[128 | h >> 12 & 63] + ve[128 | h >> 6 & 63] + ve[128 | h & 63];\n }\n return s;\n}, mv = function(t) {\n for (var e = [{ obj: { o: t }, prop: \"o\" }], n = [], i = 0; i < e.length; ++i)\n for (var o = e[i], a = o.obj[o.prop], s = Object.keys(a), u = 0; u < s.length; ++u) {\n var h = s[u], f = a[h];\n typeof f == \"object\" && f !== null && n.indexOf(f) === -1 && (e.push({ obj: a, prop: h }), n.push(f));\n }\n return cv(e), t;\n}, gv = function(t) {\n return Object.prototype.toString.call(t) === \"[object RegExp]\";\n}, yv = function(t) {\n return !t || typeof t != \"object\" ? !1 : !!(t.constructor && t.constructor.isBuffer && t.constructor.isBuffer(t));\n}, bv = function(t, e) {\n return [].concat(t, e);\n}, xv = function(t, e) {\n if (er(t)) {\n for (var n = [], i = 0; i < t.length; i += 1)\n n.push(e(t[i]));\n return n;\n }\n return e(t);\n}, yl = {\n arrayToObject: gl,\n assign: pv,\n combine: bv,\n compact: mv,\n decode: vv,\n encode: _v,\n isBuffer: yv,\n isRegExp: gv,\n maybeMap: xv,\n merge: dv\n}, bl = uv, mi = yl, dn = is, Ev = Object.prototype.hasOwnProperty, bu = {\n brackets: function(t) {\n return t + \"[]\";\n },\n comma: \"comma\",\n indices: function(t, e) {\n return t + \"[\" + e + \"]\";\n },\n repeat: function(t) {\n return t;\n }\n}, Pe = Array.isArray, Tv = Array.prototype.push, xl = function(r, t) {\n Tv.apply(r, Pe(t) ? t : [t]);\n}, wv = Date.prototype.toISOString, xu = dn.default, Xt = {\n addQueryPrefix: !1,\n allowDots: !1,\n charset: \"utf-8\",\n charsetSentinel: !1,\n delimiter: \"&\",\n encode: !0,\n encoder: mi.encode,\n encodeValuesOnly: !1,\n format: xu,\n formatter: dn.formatters[xu],\n // deprecated\n indices: !1,\n serializeDate: function(t) {\n return wv.call(t);\n },\n skipNulls: !1,\n strictNullHandling: !1\n}, Sv = function(t) {\n return typeof t == \"string\" || typeof t == \"number\" || typeof t == \"boolean\" || typeof t == \"symbol\" || typeof t == \"bigint\";\n}, fo = {}, Av = function r(t, e, n, i, o, a, s, u, h, f, l, c, d, p, v, _) {\n for (var g = t, m = _, y = 0, T = !1; (m = m.get(fo)) !== void 0 && !T; ) {\n var x = m.get(t);\n if (y += 1, typeof x < \"u\") {\n if (x === y)\n throw new RangeError(\"Cyclic object value\");\n T = !0;\n }\n typeof m.get(fo) > \"u\" && (y = 0);\n }\n if (typeof u == \"function\" ? g = u(e, g) : g instanceof Date ? g = l(g) : n === \"comma\" && Pe(g) && (g = mi.maybeMap(g, function(B) {\n return B instanceof Date ? l(B) : B;\n })), g === null) {\n if (o)\n return s && !p ? s(e, Xt.encoder, v, \"key\", c) : e;\n g = \"\";\n }\n if (Sv(g) || mi.isBuffer(g)) {\n if (s) {\n var w = p ? e : s(e, Xt.encoder, v, \"key\", c);\n return [d(w) + \"=\" + d(s(g, Xt.encoder, v, \"value\", c))];\n }\n return [d(e) + \"=\" + d(String(g))];\n }\n var S = [];\n if (typeof g > \"u\")\n return S;\n var I;\n if (n === \"comma\" && Pe(g))\n p && s && (g = mi.maybeMap(g, s)), I = [{ value: g.length > 0 ? g.join(\",\") || null : void 0 }];\n else if (Pe(u))\n I = u;\n else {\n var O = Object.keys(g);\n I = h ? O.sort(h) : O;\n }\n for (var b = i && Pe(g) && g.length === 1 ? e + \"[]\" : e, P = 0; P < I.length; ++P) {\n var A = I[P], R = typeof A == \"object\" && typeof A.value < \"u\" ? A.value : g[A];\n if (!(a && R === null)) {\n var M = Pe(g) ? typeof n == \"function\" ? n(b, A) : b : b + (f ? \".\" + A : \"[\" + A + \"]\");\n _.set(t, y);\n var D = bl();\n D.set(fo, _), xl(S, r(\n R,\n M,\n n,\n i,\n o,\n a,\n n === \"comma\" && p && Pe(g) ? null : s,\n u,\n h,\n f,\n l,\n c,\n d,\n p,\n v,\n D\n ));\n }\n }\n return S;\n}, Pv = function(t) {\n if (!t)\n return Xt;\n if (t.encoder !== null && typeof t.encoder < \"u\" && typeof t.encoder != \"function\")\n throw new TypeError(\"Encoder has to be a function.\");\n var e = t.charset || Xt.charset;\n if (typeof t.charset < \"u\" && t.charset !== \"utf-8\" && t.charset !== \"iso-8859-1\")\n throw new TypeError(\"The charset option must be either utf-8, iso-8859-1, or undefined\");\n var n = dn.default;\n if (typeof t.format < \"u\") {\n if (!Ev.call(dn.formatters, t.format))\n throw new TypeError(\"Unknown format option provided.\");\n n = t.format;\n }\n var i = dn.formatters[n], o = Xt.filter;\n return (typeof t.filter == \"function\" || Pe(t.filter)) && (o = t.filter), {\n addQueryPrefix: typeof t.addQueryPrefix == \"boolean\" ? t.addQueryPrefix : Xt.addQueryPrefix,\n allowDots: typeof t.allowDots > \"u\" ? Xt.allowDots : !!t.allowDots,\n charset: e,\n charsetSentinel: typeof t.charsetSentinel == \"boolean\" ? t.charsetSentinel : Xt.charsetSentinel,\n delimiter: typeof t.delimiter > \"u\" ? Xt.delimiter : t.delimiter,\n encode: typeof t.encode == \"boolean\" ? t.encode : Xt.encode,\n encoder: typeof t.encoder == \"function\" ? t.encoder : Xt.encoder,\n encodeValuesOnly: typeof t.encodeValuesOnly == \"boolean\" ? t.encodeValuesOnly : Xt.encodeValuesOnly,\n filter: o,\n format: n,\n formatter: i,\n serializeDate: typeof t.serializeDate == \"function\" ? t.serializeDate : Xt.serializeDate,\n skipNulls: typeof t.skipNulls == \"boolean\" ? t.skipNulls : Xt.skipNulls,\n sort: typeof t.sort == \"function\" ? t.sort : null,\n strictNullHandling: typeof t.strictNullHandling == \"boolean\" ? t.strictNullHandling : Xt.strictNullHandling\n };\n}, Ov = function(r, t) {\n var e = r, n = Pv(t), i, o;\n typeof n.filter == \"function\" ? (o = n.filter, e = o(\"\", e)) : Pe(n.filter) && (o = n.filter, i = o);\n var a = [];\n if (typeof e != \"object\" || e === null)\n return \"\";\n var s;\n t && t.arrayFormat in bu ? s = t.arrayFormat : t && \"indices\" in t ? s = t.indices ? \"indices\" : \"repeat\" : s = \"indices\";\n var u = bu[s];\n if (t && \"commaRoundTrip\" in t && typeof t.commaRoundTrip != \"boolean\")\n throw new TypeError(\"`commaRoundTrip` must be a boolean, or absent\");\n var h = u === \"comma\" && t && t.commaRoundTrip;\n i || (i = Object.keys(e)), n.sort && i.sort(n.sort);\n for (var f = bl(), l = 0; l < i.length; ++l) {\n var c = i[l];\n n.skipNulls && e[c] === null || xl(a, Av(\n e[c],\n c,\n u,\n h,\n n.strictNullHandling,\n n.skipNulls,\n n.encode ? n.encoder : null,\n n.filter,\n n.sort,\n n.allowDots,\n n.serializeDate,\n n.format,\n n.formatter,\n n.encodeValuesOnly,\n n.charset,\n f\n ));\n }\n var d = a.join(n.delimiter), p = n.addQueryPrefix === !0 ? \"?\" : \"\";\n return n.charsetSentinel && (n.charset === \"iso-8859-1\" ? p += \"utf8=%26%2310003%3B&\" : p += \"utf8=%E2%9C%93&\"), d.length > 0 ? p + d : \"\";\n}, jr = yl, na = Object.prototype.hasOwnProperty, Rv = Array.isArray, Ft = {\n allowDots: !1,\n allowPrototypes: !1,\n allowSparse: !1,\n arrayLimit: 20,\n charset: \"utf-8\",\n charsetSentinel: !1,\n comma: !1,\n decoder: jr.decode,\n delimiter: \"&\",\n depth: 5,\n ignoreQueryPrefix: !1,\n interpretNumericEntities: !1,\n parameterLimit: 1e3,\n parseArrays: !0,\n plainObjects: !1,\n strictNullHandling: !1\n}, Iv = function(r) {\n return r.replace(/&#(\\d+);/g, function(t, e) {\n return String.fromCharCode(parseInt(e, 10));\n });\n}, El = function(r, t) {\n return r && typeof r == \"string\" && t.comma && r.indexOf(\",\") > -1 ? r.split(\",\") : r;\n}, Cv = \"utf8=%26%2310003%3B\", Mv = \"utf8=%E2%9C%93\", Dv = function(t, e) {\n var n = { __proto__: null }, i = e.ignoreQueryPrefix ? t.replace(/^\\?/, \"\") : t, o = e.parameterLimit === 1 / 0 ? void 0 : e.parameterLimit, a = i.split(e.delimiter, o), s = -1, u, h = e.charset;\n if (e.charsetSentinel)\n for (u = 0; u < a.length; ++u)\n a[u].indexOf(\"utf8=\") === 0 && (a[u] === Mv ? h = \"utf-8\" : a[u] === Cv && (h = \"iso-8859-1\"), s = u, u = a.length);\n for (u = 0; u < a.length; ++u)\n if (u !== s) {\n var f = a[u], l = f.indexOf(\"]=\"), c = l === -1 ? f.indexOf(\"=\") : l + 1, d, p;\n c === -1 ? (d = e.decoder(f, Ft.decoder, h, \"key\"), p = e.strictNullHandling ? null : \"\") : (d = e.decoder(f.slice(0, c), Ft.decoder, h, \"key\"), p = jr.maybeMap(\n El(f.slice(c + 1), e),\n function(v) {\n return e.decoder(v, Ft.decoder, h, \"value\");\n }\n )), p && e.interpretNumericEntities && h === \"iso-8859-1\" && (p = Iv(p)), f.indexOf(\"[]=\") > -1 && (p = Rv(p) ? [p] : p), na.call(n, d) ? n[d] = jr.combine(n[d], p) : n[d] = p;\n }\n return n;\n}, Fv = function(r, t, e, n) {\n for (var i = n ? t : El(t, e), o = r.length - 1; o >= 0; --o) {\n var a, s = r[o];\n if (s === \"[]\" && e.parseArrays)\n a = [].concat(i);\n else {\n a = e.plainObjects ? /* @__PURE__ */ Object.create(null) : {};\n var u = s.charAt(0) === \"[\" && s.charAt(s.length - 1) === \"]\" ? s.slice(1, -1) : s, h = parseInt(u, 10);\n !e.parseArrays && u === \"\" ? a = { 0: i } : !isNaN(h) && s !== u && String(h) === u && h >= 0 && e.parseArrays && h <= e.arrayLimit ? (a = [], a[h] = i) : u !== \"__proto__\" && (a[u] = i);\n }\n i = a;\n }\n return i;\n}, Bv = function(t, e, n, i) {\n if (t) {\n var o = n.allowDots ? t.replace(/\\.([^.[]+)/g, \"[$1]\") : t, a = /(\\[[^[\\]]*])/, s = /(\\[[^[\\]]*])/g, u = n.depth > 0 && a.exec(o), h = u ? o.slice(0, u.index) : o, f = [];\n if (h) {\n if (!n.plainObjects && na.call(Object.prototype, h) && !n.allowPrototypes)\n return;\n f.push(h);\n }\n for (var l = 0; n.depth > 0 && (u = s.exec(o)) !== null && l < n.depth; ) {\n if (l += 1, !n.plainObjects && na.call(Object.prototype, u[1].slice(1, -1)) && !n.allowPrototypes)\n return;\n f.push(u[1]);\n }\n return u && f.push(\"[\" + o.slice(u.index) + \"]\"), Fv(f, e, n, i);\n }\n}, Nv = function(t) {\n if (!t)\n return Ft;\n if (t.decoder !== null && t.decoder !== void 0 && typeof t.decoder != \"function\")\n throw new TypeError(\"Decoder has to be a function.\");\n if (typeof t.charset < \"u\" && t.charset !== \"utf-8\" && t.charset !== \"iso-8859-1\")\n throw new TypeError(\"The charset option must be either utf-8, iso-8859-1, or undefined\");\n var e = typeof t.charset > \"u\" ? Ft.charset : t.charset;\n return {\n allowDots: typeof t.allowDots > \"u\" ? Ft.allowDots : !!t.allowDots,\n allowPrototypes: typeof t.allowPrototypes == \"boolean\" ? t.allowPrototypes : Ft.allowPrototypes,\n allowSparse: typeof t.allowSparse == \"boolean\" ? t.allowSparse : Ft.allowSparse,\n arrayLimit: typeof t.arrayLimit == \"number\" ? t.arrayLimit : Ft.arrayLimit,\n charset: e,\n charsetSentinel: typeof t.charsetSentinel == \"boolean\" ? t.charsetSentinel : Ft.charsetSentinel,\n comma: typeof t.comma == \"boolean\" ? t.comma : Ft.comma,\n decoder: typeof t.decoder == \"function\" ? t.decoder : Ft.decoder,\n delimiter: typeof t.delimiter == \"string\" || jr.isRegExp(t.delimiter) ? t.delimiter : Ft.delimiter,\n // eslint-disable-next-line no-implicit-coercion, no-extra-parens\n depth: typeof t.depth == \"number\" || t.depth === !1 ? +t.depth : Ft.depth,\n ignoreQueryPrefix: t.ignoreQueryPrefix === !0,\n interpretNumericEntities: typeof t.interpretNumericEntities == \"boolean\" ? t.interpretNumericEntities : Ft.interpretNumericEntities,\n parameterLimit: typeof t.parameterLimit == \"number\" ? t.parameterLimit : Ft.parameterLimit,\n parseArrays: t.parseArrays !== !1,\n plainObjects: typeof t.plainObjects == \"boolean\" ? t.plainObjects : Ft.plainObjects,\n strictNullHandling: typeof t.strictNullHandling == \"boolean\" ? t.strictNullHandling : Ft.strictNullHandling\n };\n}, Lv = function(r, t) {\n var e = Nv(t);\n if (r === \"\" || r === null || typeof r > \"u\")\n return e.plainObjects ? /* @__PURE__ */ Object.create(null) : {};\n for (var n = typeof r == \"string\" ? Dv(r, e) : r, i = e.plainObjects ? /* @__PURE__ */ Object.create(null) : {}, o = Object.keys(n), a = 0; a < o.length; ++a) {\n var s = o[a], u = Bv(s, n[s], e, typeof r == \"string\");\n i = jr.merge(i, u, e);\n }\n return e.allowSparse === !0 ? i : jr.compact(i);\n}, Uv = Ov, Gv = Lv, kv = is, Hv = {\n formats: kv,\n parse: Gv,\n stringify: Uv\n}, Xv = Dd;\nfunction ue() {\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;\n}\nvar jv = /^([a-z0-9.+-]+:)/i, Yv = /:[0-9]*$/, Vv = /^(\\/\\/?(?!\\/)[^?\\s]*)(\\?[^\\s]*)?$/, zv = [\n \"<\",\n \">\",\n '\"',\n \"`\",\n \" \",\n \"\\r\",\n `\n`,\n \"\t\"\n], Wv = [\n \"{\",\n \"}\",\n \"|\",\n \"\\\\\",\n \"^\",\n \"`\"\n].concat(zv), ia = [\"'\"].concat(Wv), Eu = [\n \"%\",\n \"/\",\n \"?\",\n \";\",\n \"#\"\n].concat(ia), Tu = [\n \"/\",\n \"?\",\n \"#\"\n], qv = 255, wu = /^[+a-z0-9A-Z_-]{0,63}$/, $v = /^([+a-z0-9A-Z_-]{0,63})(.*)$/, Kv = {\n javascript: !0,\n \"javascript:\": !0\n}, oa = {\n javascript: !0,\n \"javascript:\": !0\n}, Nr = {\n http: !0,\n https: !0,\n ftp: !0,\n gopher: !0,\n file: !0,\n \"http:\": !0,\n \"https:\": !0,\n \"ftp:\": !0,\n \"gopher:\": !0,\n \"file:\": !0\n}, aa = Hv;\nfunction Xi(r, t, e) {\n if (r && typeof r == \"object\" && r instanceof ue)\n return r;\n var n = new ue();\n return n.parse(r, t, e), n;\n}\nue.prototype.parse = function(r, t, e) {\n if (typeof r != \"string\")\n throw new TypeError(\"Parameter 'url' must be a string, not \" + typeof r);\n var n = r.indexOf(\"?\"), i = n !== -1 && n < r.indexOf(\"#\") ? \"?\" : \"#\", o = r.split(i), a = /\\\\/g;\n o[0] = o[0].replace(a, \"/\"), r = o.join(i);\n var s = r;\n if (s = s.trim(), !e && r.split(\"#\").length === 1) {\n var u = Vv.exec(s);\n if (u)\n return this.path = s, this.href = s, this.pathname = u[1], u[2] ? (this.search = u[2], t ? this.query = aa.parse(this.search.substr(1)) : this.query = this.search.substr(1)) : t && (this.search = \"\", this.query = {}), this;\n }\n var h = jv.exec(s);\n if (h) {\n h = h[0];\n var f = h.toLowerCase();\n this.protocol = f, s = s.substr(h.length);\n }\n if (e || h || s.match(/^\\/\\/[^@/]+@[^@/]+/)) {\n var l = s.substr(0, 2) === \"//\";\n l && !(h && oa[h]) && (s = s.substr(2), this.slashes = !0);\n }\n if (!oa[h] && (l || h && !Nr[h])) {\n for (var c = -1, d = 0; d < Tu.length; d++) {\n var p = s.indexOf(Tu[d]);\n p !== -1 && (c === -1 || p < c) && (c = p);\n }\n var v, _;\n c === -1 ? _ = s.lastIndexOf(\"@\") : _ = s.lastIndexOf(\"@\", c), _ !== -1 && (v = s.slice(0, _), s = s.slice(_ + 1), this.auth = decodeURIComponent(v)), c = -1;\n for (var d = 0; d < Eu.length; d++) {\n var p = s.indexOf(Eu[d]);\n p !== -1 && (c === -1 || p < c) && (c = p);\n }\n c === -1 && (c = s.length), this.host = s.slice(0, c), s = s.slice(c), this.parseHost(), this.hostname = this.hostname || \"\";\n var g = this.hostname[0] === \"[\" && this.hostname[this.hostname.length - 1] === \"]\";\n if (!g)\n for (var m = this.hostname.split(/\\./), d = 0, y = m.length; d < y; d++) {\n var T = m[d];\n if (T && !T.match(wu)) {\n for (var x = \"\", w = 0, S = T.length; w < S; w++)\n T.charCodeAt(w) > 127 ? x += \"x\" : x += T[w];\n if (!x.match(wu)) {\n var I = m.slice(0, d), O = m.slice(d + 1), b = T.match($v);\n b && (I.push(b[1]), O.unshift(b[2])), O.length && (s = \"/\" + O.join(\".\") + s), this.hostname = I.join(\".\");\n break;\n }\n }\n }\n this.hostname.length > qv ? this.hostname = \"\" : this.hostname = this.hostname.toLowerCase(), g || (this.hostname = Xv.toASCII(this.hostname));\n var P = this.port ? \":\" + this.port : \"\", A = this.hostname || \"\";\n this.host = A + P, this.href += this.host, g && (this.hostname = this.hostname.substr(1, this.hostname.length - 2), s[0] !== \"/\" && (s = \"/\" + s));\n }\n if (!Kv[f])\n for (var d = 0, y = ia.length; d < y; d++) {\n var R = ia[d];\n if (s.indexOf(R) !== -1) {\n var M = encodeURIComponent(R);\n M === R && (M = escape(R)), s = s.split(R).join(M);\n }\n }\n var D = s.indexOf(\"#\");\n D !== -1 && (this.hash = s.substr(D), s = s.slice(0, D));\n var B = s.indexOf(\"?\");\n if (B !== -1 ? (this.search = s.substr(B), this.query = s.substr(B + 1), t && (this.query = aa.parse(this.query)), s = s.slice(0, B)) : t && (this.search = \"\", this.query = {}), s && (this.pathname = s), Nr[f] && this.hostname && !this.pathname && (this.pathname = \"/\"), this.pathname || this.search) {\n var P = this.pathname || \"\", X = this.search || \"\";\n this.path = P + X;\n }\n return this.href = this.format(), this;\n};\nfunction Zv(r) {\n return typeof r == \"string\" && (r = Xi(r)), r instanceof ue ? r.format() : ue.prototype.format.call(r);\n}\nue.prototype.format = function() {\n var r = this.auth || \"\";\n r && (r = encodeURIComponent(r), r = r.replace(/%3A/i, \":\"), r += \"@\");\n var t = this.protocol || \"\", e = this.pathname || \"\", n = this.hash || \"\", i = !1, o = \"\";\n this.host ? i = r + this.host : this.hostname && (i = r + (this.hostname.indexOf(\":\") === -1 ? this.hostname : \"[\" + this.hostname + \"]\"), this.port && (i += \":\" + this.port)), this.query && typeof this.query == \"object\" && Object.keys(this.query).length && (o = aa.stringify(this.query, {\n arrayFormat: \"repeat\",\n addQueryPrefix: !1\n }));\n var a = this.search || o && \"?\" + o || \"\";\n return t && t.substr(-1) !== \":\" && (t += \":\"), this.slashes || (!t || Nr[t]) && i !== !1 ? (i = \"//\" + (i || \"\"), e && e.charAt(0) !== \"/\" && (e = \"/\" + e)) : i || (i = \"\"), n && n.charAt(0) !== \"#\" && (n = \"#\" + n), a && a.charAt(0) !== \"?\" && (a = \"?\" + a), e = e.replace(/[?#]/g, function(s) {\n return encodeURIComponent(s);\n }), a = a.replace(\"#\", \"%23\"), t + i + e + a + n;\n};\nfunction Jv(r, t) {\n return Xi(r, !1, !0).resolve(t);\n}\nue.prototype.resolve = function(r) {\n return this.resolveObject(Xi(r, !1, !0)).format();\n};\nue.prototype.resolveObject = function(r) {\n if (typeof r == \"string\") {\n var t = new ue();\n t.parse(r, !1, !0), r = t;\n }\n for (var e = new ue(), n = Object.keys(this), i = 0; i < n.length; i++) {\n var o = n[i];\n e[o] = this[o];\n }\n if (e.hash = r.hash, r.href === \"\")\n return e.href = e.format(), e;\n if (r.slashes && !r.protocol) {\n for (var a = Object.keys(r), s = 0; s < a.length; s++) {\n var u = a[s];\n u !== \"protocol\" && (e[u] = r[u]);\n }\n return Nr[e.protocol] && e.hostname && !e.pathname && (e.pathname = \"/\", e.path = e.pathname), e.href = e.format(), e;\n }\n if (r.protocol && r.protocol !== e.protocol) {\n if (!Nr[r.protocol]) {\n for (var h = Object.keys(r), f = 0; f < h.length; f++) {\n var l = h[f];\n e[l] = r[l];\n }\n return e.href = e.format(), e;\n }\n if (e.protocol = r.protocol, !r.host && !oa[r.protocol]) {\n for (var y = (r.pathname || \"\").split(\"/\"); y.length && !(r.host = y.shift()); )\n ;\n r.host || (r.host = \"\"), r.hostname || (r.hostname = \"\"), y[0] !== \"\" && y.unshift(\"\"), y.length < 2 && y.unshift(\"\"), e.pathname = y.join(\"/\");\n } else\n e.pathname = r.pathname;\n if (e.search = r.search, e.query = r.query, e.host = r.host || \"\", e.auth = r.auth, e.hostname = r.hostname || r.host, e.port = r.port, e.pathname || e.search) {\n var c = e.pathname || \"\", d = e.search || \"\";\n e.path = c + d;\n }\n return e.slashes = e.slashes || r.slashes, e.href = e.format(), e;\n }\n var p = e.pathname && e.pathname.charAt(0) === \"/\", v = r.host || r.pathname && r.pathname.charAt(0) === \"/\", _ = v || p || e.host && r.pathname, g = _, m = e.pathname && e.pathname.split(\"/\") || [], y = r.pathname && r.pathname.split(\"/\") || [], T = e.protocol && !Nr[e.protocol];\n if (T && (e.hostname = \"\", e.port = null, e.host && (m[0] === \"\" ? m[0] = e.host : m.unshift(e.host)), e.host = \"\", r.protocol && (r.hostname = null, r.port = null, r.host && (y[0] === \"\" ? y[0] = r.host : y.unshift(r.host)), r.host = null), _ = _ && (y[0] === \"\" || m[0] === \"\")), v)\n e.host = r.host || r.host === \"\" ? r.host : e.host, e.hostname = r.hostname || r.hostname === \"\" ? r.hostname : e.hostname, e.search = r.search, e.query = r.query, m = y;\n else if (y.length)\n m || (m = []), m.pop(), m = m.concat(y), e.search = r.search, e.query = r.query;\n else if (r.search != null) {\n if (T) {\n e.host = m.shift(), e.hostname = e.host;\n var x = e.host && e.host.indexOf(\"@\") > 0 ? e.host.split(\"@\") : !1;\n x && (e.auth = x.shift(), e.hostname = x.shift(), e.host = e.hostname);\n }\n return e.search = r.search, e.query = r.query, (e.pathname !== null || e.search !== null) && (e.path = (e.pathname ? e.pathname : \"\") + (e.search ? e.search : \"\")), e.href = e.format(), e;\n }\n if (!m.length)\n return e.pathname = null, e.search ? e.path = \"/\" + e.search : e.path = null, e.href = e.format(), e;\n for (var w = m.slice(-1)[0], S = (e.host || r.host || m.length > 1) && (w === \".\" || w === \"..\") || w === \"\", I = 0, O = m.length; O >= 0; O--)\n w = m[O], w === \".\" ? m.splice(O, 1) : w === \"..\" ? (m.splice(O, 1), I++) : I && (m.splice(O, 1), I--);\n if (!_ && !g)\n for (; I--; I)\n m.unshift(\"..\");\n _ && m[0] !== \"\" && (!m[0] || m[0].charAt(0) !== \"/\") && m.unshift(\"\"), S && m.join(\"/\").substr(-1) !== \"/\" && m.push(\"\");\n var b = m[0] === \"\" || m[0] && m[0].charAt(0) === \"/\";\n if (T) {\n e.hostname = b ? \"\" : m.length ? m.shift() : \"\", e.host = e.hostname;\n var x = e.host && e.host.indexOf(\"@\") > 0 ? e.host.split(\"@\") : !1;\n x && (e.auth = x.shift(), e.hostname = x.shift(), e.host = e.hostname);\n }\n return _ = _ || e.host && m.length, _ && !b && m.unshift(\"\"), m.length > 0 ? e.pathname = m.join(\"/\") : (e.pathname = null, e.path = null), (e.pathname !== null || e.search !== null) && (e.path = (e.pathname ? e.pathname : \"\") + (e.search ? e.search : \"\")), e.auth = r.auth || e.auth, e.slashes = e.slashes || r.slashes, e.href = e.format(), e;\n};\nue.prototype.parseHost = function() {\n var r = this.host, t = Yv.exec(r);\n t && (t = t[0], t !== \":\" && (this.port = t.substr(1)), r = r.substr(0, r.length - t.length)), r && (this.hostname = r);\n};\nvar Qv = Xi, t_ = Jv, e_ = Zv;\n/*!\n * @pixi/utils - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/utils is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\nvar Ir = {\n parse: Qv,\n format: e_,\n resolve: t_\n};\nk.RETINA_PREFIX = /@([0-9\\.]+)x/;\nk.FAIL_IF_MAJOR_PERFORMANCE_CAVEAT = !1;\nvar Su = !1, Au = \"6.5.10\";\nfunction r_(r) {\n var t;\n if (!Su) {\n if (k.ADAPTER.getNavigator().userAgent.toLowerCase().indexOf(\"chrome\") > -1) {\n var e = [\n `\n %c %c %c PixiJS ` + Au + \" - ✰ \" + r + ` ✰ %c %c http://www.pixijs.com/ %c %c ♥%c♥%c♥ \n\n`,\n \"background: #ff66a5; padding:5px 0;\",\n \"background: #ff66a5; padding:5px 0;\",\n \"color: #ff66a5; background: #030307; padding:5px 0;\",\n \"background: #ff66a5; padding:5px 0;\",\n \"background: #ffc3dc; padding:5px 0;\",\n \"background: #ff66a5; padding:5px 0;\",\n \"color: #ff2424; background: #fff; padding:5px 0;\",\n \"color: #ff2424; background: #fff; padding:5px 0;\",\n \"color: #ff2424; background: #fff; padding:5px 0;\"\n ];\n (t = globalThis.console).log.apply(t, e);\n } else\n globalThis.console && globalThis.console.log(\"PixiJS \" + Au + \" - \" + r + \" - http://www.pixijs.com/\");\n Su = !0;\n }\n}\nvar co;\nfunction n_() {\n return typeof co > \"u\" && (co = function() {\n var t = {\n stencil: !0,\n failIfMajorPerformanceCaveat: k.FAIL_IF_MAJOR_PERFORMANCE_CAVEAT\n };\n try {\n if (!k.ADAPTER.getWebGLRenderingContext())\n return !1;\n var e = k.ADAPTER.createCanvas(), n = e.getContext(\"webgl\", t) || e.getContext(\"experimental-webgl\", t), i = !!(n && n.getContextAttributes().stencil);\n if (n) {\n var o = n.getExtension(\"WEBGL_lose_context\");\n o && o.loseContext();\n }\n return n = null, i;\n } catch {\n return !1;\n }\n }()), co;\n}\nvar i_ = \"#f0f8ff\", o_ = \"#faebd7\", a_ = \"#00ffff\", s_ = \"#7fffd4\", u_ = \"#f0ffff\", h_ = \"#f5f5dc\", l_ = \"#ffe4c4\", f_ = \"#000000\", c_ = \"#ffebcd\", d_ = \"#0000ff\", p_ = \"#8a2be2\", v_ = \"#a52a2a\", __ = \"#deb887\", m_ = \"#5f9ea0\", g_ = \"#7fff00\", y_ = \"#d2691e\", b_ = \"#ff7f50\", x_ = \"#6495ed\", E_ = \"#fff8dc\", T_ = \"#dc143c\", w_ = \"#00ffff\", S_ = \"#00008b\", A_ = \"#008b8b\", P_ = \"#b8860b\", O_ = \"#a9a9a9\", R_ = \"#006400\", I_ = \"#a9a9a9\", C_ = \"#bdb76b\", M_ = \"#8b008b\", D_ = \"#556b2f\", F_ = \"#ff8c00\", B_ = \"#9932cc\", N_ = \"#8b0000\", L_ = \"#e9967a\", U_ = \"#8fbc8f\", G_ = \"#483d8b\", k_ = \"#2f4f4f\", H_ = \"#2f4f4f\", X_ = \"#00ced1\", j_ = \"#9400d3\", Y_ = \"#ff1493\", V_ = \"#00bfff\", z_ = \"#696969\", W_ = \"#696969\", q_ = \"#1e90ff\", $_ = \"#b22222\", K_ = \"#fffaf0\", Z_ = \"#228b22\", J_ = \"#ff00ff\", Q_ = \"#dcdcdc\", tm = \"#f8f8ff\", em = \"#daa520\", rm = \"#ffd700\", nm = \"#808080\", im = \"#008000\", om = \"#adff2f\", am = \"#808080\", sm = \"#f0fff0\", um = \"#ff69b4\", hm = \"#cd5c5c\", lm = \"#4b0082\", fm = \"#fffff0\", cm = \"#f0e68c\", dm = \"#fff0f5\", pm = \"#e6e6fa\", vm = \"#7cfc00\", _m = \"#fffacd\", mm = \"#add8e6\", gm = \"#f08080\", ym = \"#e0ffff\", bm = \"#fafad2\", xm = \"#d3d3d3\", Em = \"#90ee90\", Tm = \"#d3d3d3\", wm = \"#ffb6c1\", Sm = \"#ffa07a\", Am = \"#20b2aa\", Pm = \"#87cefa\", Om = \"#778899\", Rm = \"#778899\", Im = \"#b0c4de\", Cm = \"#ffffe0\", Mm = \"#00ff00\", Dm = \"#32cd32\", Fm = \"#faf0e6\", Bm = \"#ff00ff\", Nm = \"#800000\", Lm = \"#66cdaa\", Um = \"#0000cd\", Gm = \"#ba55d3\", km = \"#9370db\", Hm = \"#3cb371\", Xm = \"#7b68ee\", jm = \"#00fa9a\", Ym = \"#48d1cc\", Vm = \"#c71585\", zm = \"#191970\", Wm = \"#f5fffa\", qm = \"#ffe4e1\", $m = \"#ffe4b5\", Km = \"#ffdead\", Zm = \"#000080\", Jm = \"#fdf5e6\", Qm = \"#808000\", tg = \"#6b8e23\", eg = \"#ffa500\", rg = \"#ff4500\", ng = \"#da70d6\", ig = \"#eee8aa\", og = \"#98fb98\", ag = \"#afeeee\", sg = \"#db7093\", ug = \"#ffefd5\", hg = \"#ffdab9\", lg = \"#cd853f\", fg = \"#ffc0cb\", cg = \"#dda0dd\", dg = \"#b0e0e6\", pg = \"#800080\", vg = \"#663399\", _g = \"#ff0000\", mg = \"#bc8f8f\", gg = \"#4169e1\", yg = \"#8b4513\", bg = \"#fa8072\", xg = \"#f4a460\", Eg = \"#2e8b57\", Tg = \"#fff5ee\", wg = \"#a0522d\", Sg = \"#c0c0c0\", Ag = \"#87ceeb\", Pg = \"#6a5acd\", Og = \"#708090\", Rg = \"#708090\", Ig = \"#fffafa\", Cg = \"#00ff7f\", Mg = \"#4682b4\", Dg = \"#d2b48c\", Fg = \"#008080\", Bg = \"#d8bfd8\", Ng = \"#ff6347\", Lg = \"#40e0d0\", Ug = \"#ee82ee\", Gg = \"#f5deb3\", kg = \"#ffffff\", Hg = \"#f5f5f5\", Xg = \"#ffff00\", jg = \"#9acd32\", Yg = {\n aliceblue: i_,\n antiquewhite: o_,\n aqua: a_,\n aquamarine: s_,\n azure: u_,\n beige: h_,\n bisque: l_,\n black: f_,\n blanchedalmond: c_,\n blue: d_,\n blueviolet: p_,\n brown: v_,\n burlywood: __,\n cadetblue: m_,\n chartreuse: g_,\n chocolate: y_,\n coral: b_,\n cornflowerblue: x_,\n cornsilk: E_,\n crimson: T_,\n cyan: w_,\n darkblue: S_,\n darkcyan: A_,\n darkgoldenrod: P_,\n darkgray: O_,\n darkgreen: R_,\n darkgrey: I_,\n darkkhaki: C_,\n darkmagenta: M_,\n darkolivegreen: D_,\n darkorange: F_,\n darkorchid: B_,\n darkred: N_,\n darksalmon: L_,\n darkseagreen: U_,\n darkslateblue: G_,\n darkslategray: k_,\n darkslategrey: H_,\n darkturquoise: X_,\n darkviolet: j_,\n deeppink: Y_,\n deepskyblue: V_,\n dimgray: z_,\n dimgrey: W_,\n dodgerblue: q_,\n firebrick: $_,\n floralwhite: K_,\n forestgreen: Z_,\n fuchsia: J_,\n gainsboro: Q_,\n ghostwhite: tm,\n goldenrod: em,\n gold: rm,\n gray: nm,\n green: im,\n greenyellow: om,\n grey: am,\n honeydew: sm,\n hotpink: um,\n indianred: hm,\n indigo: lm,\n ivory: fm,\n khaki: cm,\n lavenderblush: dm,\n lavender: pm,\n lawngreen: vm,\n lemonchiffon: _m,\n lightblue: mm,\n lightcoral: gm,\n lightcyan: ym,\n lightgoldenrodyellow: bm,\n lightgray: xm,\n lightgreen: Em,\n lightgrey: Tm,\n lightpink: wm,\n lightsalmon: Sm,\n lightseagreen: Am,\n lightskyblue: Pm,\n lightslategray: Om,\n lightslategrey: Rm,\n lightsteelblue: Im,\n lightyellow: Cm,\n lime: Mm,\n limegreen: Dm,\n linen: Fm,\n magenta: Bm,\n maroon: Nm,\n mediumaquamarine: Lm,\n mediumblue: Um,\n mediumorchid: Gm,\n mediumpurple: km,\n mediumseagreen: Hm,\n mediumslateblue: Xm,\n mediumspringgreen: jm,\n mediumturquoise: Ym,\n mediumvioletred: Vm,\n midnightblue: zm,\n mintcream: Wm,\n mistyrose: qm,\n moccasin: $m,\n navajowhite: Km,\n navy: Zm,\n oldlace: Jm,\n olive: Qm,\n olivedrab: tg,\n orange: eg,\n orangered: rg,\n orchid: ng,\n palegoldenrod: ig,\n palegreen: og,\n paleturquoise: ag,\n palevioletred: sg,\n papayawhip: ug,\n peachpuff: hg,\n peru: lg,\n pink: fg,\n plum: cg,\n powderblue: dg,\n purple: pg,\n rebeccapurple: vg,\n red: _g,\n rosybrown: mg,\n royalblue: gg,\n saddlebrown: yg,\n salmon: bg,\n sandybrown: xg,\n seagreen: Eg,\n seashell: Tg,\n sienna: wg,\n silver: Sg,\n skyblue: Ag,\n slateblue: Pg,\n slategray: Og,\n slategrey: Rg,\n snow: Ig,\n springgreen: Cg,\n steelblue: Mg,\n tan: Dg,\n teal: Fg,\n thistle: Bg,\n tomato: Ng,\n turquoise: Lg,\n violet: Ug,\n wheat: Gg,\n white: kg,\n whitesmoke: Hg,\n yellow: Xg,\n yellowgreen: jg\n};\nfunction Yr(r, t) {\n return t === void 0 && (t = []), t[0] = (r >> 16 & 255) / 255, t[1] = (r >> 8 & 255) / 255, t[2] = (r & 255) / 255, t;\n}\nfunction Tl(r) {\n var t = r.toString(16);\n return t = \"000000\".substring(0, 6 - t.length) + t, \"#\" + t;\n}\nfunction En(r) {\n return typeof r == \"string\" && (r = Yg[r.toLowerCase()] || r, r[0] === \"#\" && (r = r.slice(1))), parseInt(r, 16);\n}\nfunction Vg() {\n for (var r = [], t = [], e = 0; e < 32; e++)\n r[e] = e, t[e] = e;\n r[V.NORMAL_NPM] = V.NORMAL, r[V.ADD_NPM] = V.ADD, r[V.SCREEN_NPM] = V.SCREEN, t[V.NORMAL] = V.NORMAL_NPM, t[V.ADD] = V.ADD_NPM, t[V.SCREEN] = V.SCREEN_NPM;\n var n = [];\n return n.push(t), n.push(r), n;\n}\nvar wl = Vg();\nfunction Sl(r, t) {\n return wl[t ? 1 : 0][r];\n}\nfunction zg(r, t, e, n) {\n return e = e || new Float32Array(4), n || n === void 0 ? (e[0] = r[0] * t, e[1] = r[1] * t, e[2] = r[2] * t) : (e[0] = r[0], e[1] = r[1], e[2] = r[2]), e[3] = t, e;\n}\nfunction os(r, t) {\n if (t === 1)\n return (t * 255 << 24) + r;\n if (t === 0)\n return 0;\n var e = r >> 16 & 255, n = r >> 8 & 255, i = r & 255;\n return e = e * t + 0.5 | 0, n = n * t + 0.5 | 0, i = i * t + 0.5 | 0, (t * 255 << 24) + (e << 16) + (n << 8) + i;\n}\nfunction Al(r, t, e, n) {\n return e = e || new Float32Array(4), e[0] = (r >> 16 & 255) / 255, e[1] = (r >> 8 & 255) / 255, e[2] = (r & 255) / 255, (n || n === void 0) && (e[0] *= t, e[1] *= t, e[2] *= t), e[3] = t, e;\n}\nfunction Wg(r, t) {\n t === void 0 && (t = null);\n var e = r * 6;\n if (t = t || new Uint16Array(e), t.length !== e)\n throw new Error(\"Out buffer length is incorrect, got \" + t.length + \" and expected \" + e);\n for (var n = 0, i = 0; n < e; n += 6, i += 4)\n t[n + 0] = i + 0, t[n + 1] = i + 1, t[n + 2] = i + 2, t[n + 3] = i + 0, t[n + 4] = i + 2, t[n + 5] = i + 3;\n return t;\n}\nfunction Pl(r) {\n if (r.BYTES_PER_ELEMENT === 4)\n return r instanceof Float32Array ? \"Float32Array\" : r instanceof Uint32Array ? \"Uint32Array\" : \"Int32Array\";\n if (r.BYTES_PER_ELEMENT === 2) {\n if (r instanceof Uint16Array)\n return \"Uint16Array\";\n } else if (r.BYTES_PER_ELEMENT === 1 && r instanceof Uint8Array)\n return \"Uint8Array\";\n return null;\n}\nfunction Mi(r) {\n return r += r === 0 ? 1 : 0, --r, r |= r >>> 1, r |= r >>> 2, r |= r >>> 4, r |= r >>> 8, r |= r >>> 16, r + 1;\n}\nfunction Pu(r) {\n return !(r & r - 1) && !!r;\n}\nfunction Ou(r) {\n var t = (r > 65535 ? 1 : 0) << 4;\n r >>>= t;\n var e = (r > 255 ? 1 : 0) << 3;\n return r >>>= e, t |= e, e = (r > 15 ? 1 : 0) << 2, r >>>= e, t |= e, e = (r > 3 ? 1 : 0) << 1, r >>>= e, t |= e, t | r >> 1;\n}\nfunction Lr(r, t, e) {\n var n = r.length, i;\n if (!(t >= n || e === 0)) {\n e = t + e > n ? n - t : e;\n var o = n - e;\n for (i = t; i < o; ++i)\n r[i] = r[i + e];\n r.length = o;\n }\n}\nfunction Cr(r) {\n return r === 0 ? 0 : r < 0 ? -1 : 1;\n}\nvar qg = 0;\nfunction lr() {\n return ++qg;\n}\nvar Ru = {};\nfunction he(r, t, e) {\n if (e === void 0 && (e = 3), !Ru[t]) {\n var n = new Error().stack;\n typeof n > \"u\" ? console.warn(\"PixiJS Deprecation Warning: \", t + `\nDeprecated since v` + r) : (n = n.split(`\n`).splice(e).join(`\n`), console.groupCollapsed ? (console.groupCollapsed(\"%cPixiJS Deprecation Warning: %c%s\", \"color:#614108;background:#fffbe6\", \"font-weight:normal;color:#614108;background:#fffbe6\", t + `\nDeprecated since v` + r), console.warn(n), console.groupEnd()) : (console.warn(\"PixiJS Deprecation Warning: \", t + `\nDeprecated since v` + r), console.warn(n))), Ru[t] = !0;\n }\n}\nvar Iu = {}, Ae = /* @__PURE__ */ Object.create(null), ze = /* @__PURE__ */ Object.create(null), Cu = (\n /** @class */\n function() {\n function r(t, e, n) {\n this.canvas = k.ADAPTER.createCanvas(), this.context = this.canvas.getContext(\"2d\"), this.resolution = n || k.RESOLUTION, this.resize(t, e);\n }\n return r.prototype.clear = function() {\n this.context.setTransform(1, 0, 0, 1, 0, 0), this.context.clearRect(0, 0, this.canvas.width, this.canvas.height);\n }, r.prototype.resize = function(t, e) {\n this.canvas.width = Math.round(t * this.resolution), this.canvas.height = Math.round(e * this.resolution);\n }, r.prototype.destroy = function() {\n this.context = null, this.canvas = null;\n }, Object.defineProperty(r.prototype, \"width\", {\n /**\n * The width of the canvas buffer in pixels.\n * @member {number}\n */\n get: function() {\n return this.canvas.width;\n },\n set: function(t) {\n this.canvas.width = Math.round(t);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"height\", {\n /**\n * The height of the canvas buffer in pixels.\n * @member {number}\n */\n get: function() {\n return this.canvas.height;\n },\n set: function(t) {\n this.canvas.height = Math.round(t);\n },\n enumerable: !1,\n configurable: !0\n }), r;\n }()\n);\nfunction $g(r) {\n var t = r.width, e = r.height, n = r.getContext(\"2d\", {\n willReadFrequently: !0\n }), i = n.getImageData(0, 0, t, e), o = i.data, a = o.length, s = {\n top: null,\n left: null,\n right: null,\n bottom: null\n }, u = null, h, f, l;\n for (h = 0; h < a; h += 4)\n o[h + 3] !== 0 && (f = h / 4 % t, l = ~~(h / 4 / t), s.top === null && (s.top = l), (s.left === null || f < s.left) && (s.left = f), (s.right === null || s.right < f) && (s.right = f + 1), (s.bottom === null || s.bottom < l) && (s.bottom = l));\n return s.top !== null && (t = s.right - s.left, e = s.bottom - s.top + 1, u = n.getImageData(s.left, s.top, t, e)), {\n height: e,\n width: t,\n data: u\n };\n}\nvar Vn;\nfunction Kg(r, t) {\n if (t === void 0 && (t = globalThis.location), r.indexOf(\"data:\") === 0)\n return \"\";\n t = t || globalThis.location, Vn || (Vn = document.createElement(\"a\")), Vn.href = r;\n var e = Ir.parse(Vn.href), n = !e.port && t.port === \"\" || e.port === t.port;\n return e.hostname !== t.hostname || !n || e.protocol !== t.protocol ? \"anonymous\" : \"\";\n}\nfunction Di(r, t) {\n var e = k.RETINA_PREFIX.exec(r);\n return e ? parseFloat(e[1]) : t !== void 0 ? t : 1;\n}\n/*!\n * @pixi/math - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/math is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\nvar Fi = Math.PI * 2, Zg = 180 / Math.PI, Jg = Math.PI / 180, Nt;\n(function(r) {\n r[r.POLY = 0] = \"POLY\", r[r.RECT = 1] = \"RECT\", r[r.CIRC = 2] = \"CIRC\", r[r.ELIP = 3] = \"ELIP\", r[r.RREC = 4] = \"RREC\";\n})(Nt || (Nt = {}));\nvar Tt = (\n /** @class */\n function() {\n function r(t, e) {\n t === void 0 && (t = 0), e === void 0 && (e = 0), this.x = 0, this.y = 0, this.x = t, this.y = e;\n }\n return r.prototype.clone = function() {\n return new r(this.x, this.y);\n }, r.prototype.copyFrom = function(t) {\n return this.set(t.x, t.y), this;\n }, r.prototype.copyTo = function(t) {\n return t.set(this.x, this.y), t;\n }, r.prototype.equals = function(t) {\n return t.x === this.x && t.y === this.y;\n }, r.prototype.set = function(t, e) {\n return t === void 0 && (t = 0), e === void 0 && (e = t), this.x = t, this.y = e, this;\n }, r.prototype.toString = function() {\n return \"[@pixi/math:Point x=\" + this.x + \" y=\" + this.y + \"]\";\n }, r;\n }()\n), zn = [new Tt(), new Tt(), new Tt(), new Tt()], ht = (\n /** @class */\n function() {\n function r(t, e, n, i) {\n t === void 0 && (t = 0), e === void 0 && (e = 0), n === void 0 && (n = 0), i === void 0 && (i = 0), this.x = Number(t), this.y = Number(e), this.width = Number(n), this.height = Number(i), this.type = Nt.RECT;\n }\n return Object.defineProperty(r.prototype, \"left\", {\n /** Returns the left edge of the rectangle. */\n get: function() {\n return this.x;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"right\", {\n /** Returns the right edge of the rectangle. */\n get: function() {\n return this.x + this.width;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"top\", {\n /** Returns the top edge of the rectangle. */\n get: function() {\n return this.y;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"bottom\", {\n /** Returns the bottom edge of the rectangle. */\n get: function() {\n return this.y + this.height;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r, \"EMPTY\", {\n /** A constant empty rectangle. */\n get: function() {\n return new r(0, 0, 0, 0);\n },\n enumerable: !1,\n configurable: !0\n }), r.prototype.clone = function() {\n return new r(this.x, this.y, this.width, this.height);\n }, r.prototype.copyFrom = function(t) {\n return this.x = t.x, this.y = t.y, this.width = t.width, this.height = t.height, this;\n }, r.prototype.copyTo = function(t) {\n return t.x = this.x, t.y = this.y, t.width = this.width, t.height = this.height, t;\n }, r.prototype.contains = function(t, e) {\n return this.width <= 0 || this.height <= 0 ? !1 : t >= this.x && t < this.x + this.width && e >= this.y && e < this.y + this.height;\n }, r.prototype.intersects = function(t, e) {\n if (!e) {\n var n = this.x < t.x ? t.x : this.x, i = this.right > t.right ? t.right : this.right;\n if (i <= n)\n return !1;\n var o = this.y < t.y ? t.y : this.y, a = this.bottom > t.bottom ? t.bottom : this.bottom;\n return a > o;\n }\n var s = this.left, u = this.right, h = this.top, f = this.bottom;\n if (u <= s || f <= h)\n return !1;\n var l = zn[0].set(t.left, t.top), c = zn[1].set(t.left, t.bottom), d = zn[2].set(t.right, t.top), p = zn[3].set(t.right, t.bottom);\n if (d.x <= l.x || c.y <= l.y)\n return !1;\n var v = Math.sign(e.a * e.d - e.b * e.c);\n if (v === 0 || (e.apply(l, l), e.apply(c, c), e.apply(d, d), e.apply(p, p), Math.max(l.x, c.x, d.x, p.x) <= s || Math.min(l.x, c.x, d.x, p.x) >= u || Math.max(l.y, c.y, d.y, p.y) <= h || Math.min(l.y, c.y, d.y, p.y) >= f))\n return !1;\n var _ = v * (c.y - l.y), g = v * (l.x - c.x), m = _ * s + g * h, y = _ * u + g * h, T = _ * s + g * f, x = _ * u + g * f;\n if (Math.max(m, y, T, x) <= _ * l.x + g * l.y || Math.min(m, y, T, x) >= _ * p.x + g * p.y)\n return !1;\n var w = v * (l.y - d.y), S = v * (d.x - l.x), I = w * s + S * h, O = w * u + S * h, b = w * s + S * f, P = w * u + S * f;\n return !(Math.max(I, O, b, P) <= w * l.x + S * l.y || Math.min(I, O, b, P) >= w * p.x + S * p.y);\n }, r.prototype.pad = function(t, e) {\n return t === void 0 && (t = 0), e === void 0 && (e = t), this.x -= t, this.y -= e, this.width += t * 2, this.height += e * 2, this;\n }, r.prototype.fit = function(t) {\n var e = Math.max(this.x, t.x), n = Math.min(this.x + this.width, t.x + t.width), i = Math.max(this.y, t.y), o = Math.min(this.y + this.height, t.y + t.height);\n return this.x = e, this.width = Math.max(n - e, 0), this.y = i, this.height = Math.max(o - i, 0), this;\n }, r.prototype.ceil = function(t, e) {\n t === void 0 && (t = 1), e === void 0 && (e = 1e-3);\n var n = Math.ceil((this.x + this.width - e) * t) / t, i = Math.ceil((this.y + this.height - e) * t) / t;\n return this.x = Math.floor((this.x + e) * t) / t, this.y = Math.floor((this.y + e) * t) / t, this.width = n - this.x, this.height = i - this.y, this;\n }, r.prototype.enlarge = function(t) {\n var e = Math.min(this.x, t.x), n = Math.max(this.x + this.width, t.x + t.width), i = Math.min(this.y, t.y), o = Math.max(this.y + this.height, t.y + t.height);\n return this.x = e, this.width = n - e, this.y = i, this.height = o - i, this;\n }, r.prototype.toString = function() {\n return \"[@pixi/math:Rectangle x=\" + this.x + \" y=\" + this.y + \" width=\" + this.width + \" height=\" + this.height + \"]\";\n }, r;\n }()\n), Qg = (\n /** @class */\n function() {\n function r(t, e, n) {\n t === void 0 && (t = 0), e === void 0 && (e = 0), n === void 0 && (n = 0), this.x = t, this.y = e, this.radius = n, this.type = Nt.CIRC;\n }\n return r.prototype.clone = function() {\n return new r(this.x, this.y, this.radius);\n }, r.prototype.contains = function(t, e) {\n if (this.radius <= 0)\n return !1;\n var n = this.radius * this.radius, i = this.x - t, o = this.y - e;\n return i *= i, o *= o, i + o <= n;\n }, r.prototype.getBounds = function() {\n return new ht(this.x - this.radius, this.y - this.radius, this.radius * 2, this.radius * 2);\n }, r.prototype.toString = function() {\n return \"[@pixi/math:Circle x=\" + this.x + \" y=\" + this.y + \" radius=\" + this.radius + \"]\";\n }, r;\n }()\n), ty = (\n /** @class */\n function() {\n function r(t, e, n, i) {\n t === void 0 && (t = 0), e === void 0 && (e = 0), n === void 0 && (n = 0), i === void 0 && (i = 0), this.x = t, this.y = e, this.width = n, this.height = i, this.type = Nt.ELIP;\n }\n return r.prototype.clone = function() {\n return new r(this.x, this.y, this.width, this.height);\n }, r.prototype.contains = function(t, e) {\n if (this.width <= 0 || this.height <= 0)\n return !1;\n var n = (t - this.x) / this.width, i = (e - this.y) / this.height;\n return n *= n, i *= i, n + i <= 1;\n }, r.prototype.getBounds = function() {\n return new ht(this.x - this.width, this.y - this.height, this.width, this.height);\n }, r.prototype.toString = function() {\n return \"[@pixi/math:Ellipse x=\" + this.x + \" y=\" + this.y + \" width=\" + this.width + \" height=\" + this.height + \"]\";\n }, r;\n }()\n), gi = (\n /** @class */\n function() {\n function r() {\n for (var t = arguments, e = [], n = 0; n < arguments.length; n++)\n e[n] = t[n];\n var i = Array.isArray(e[0]) ? e[0] : e;\n if (typeof i[0] != \"number\") {\n for (var o = [], a = 0, s = i.length; a < s; a++)\n o.push(i[a].x, i[a].y);\n i = o;\n }\n this.points = i, this.type = Nt.POLY, this.closeStroke = !0;\n }\n return r.prototype.clone = function() {\n var t = this.points.slice(), e = new r(t);\n return e.closeStroke = this.closeStroke, e;\n }, r.prototype.contains = function(t, e) {\n for (var n = !1, i = this.points.length / 2, o = 0, a = i - 1; o < i; a = o++) {\n var s = this.points[o * 2], u = this.points[o * 2 + 1], h = this.points[a * 2], f = this.points[a * 2 + 1], l = u > e != f > e && t < (h - s) * ((e - u) / (f - u)) + s;\n l && (n = !n);\n }\n return n;\n }, r.prototype.toString = function() {\n return \"[@pixi/math:Polygon\" + (\"closeStroke=\" + this.closeStroke) + (\"points=\" + this.points.reduce(function(t, e) {\n return t + \", \" + e;\n }, \"\") + \"]\");\n }, r;\n }()\n), ey = (\n /** @class */\n function() {\n function r(t, e, n, i, o) {\n t === void 0 && (t = 0), e === void 0 && (e = 0), n === void 0 && (n = 0), i === void 0 && (i = 0), o === void 0 && (o = 20), this.x = t, this.y = e, this.width = n, this.height = i, this.radius = o, this.type = Nt.RREC;\n }\n return r.prototype.clone = function() {\n return new r(this.x, this.y, this.width, this.height, this.radius);\n }, r.prototype.contains = function(t, e) {\n if (this.width <= 0 || this.height <= 0)\n return !1;\n if (t >= this.x && t <= this.x + this.width && e >= this.y && e <= this.y + this.height) {\n var n = Math.max(0, Math.min(this.radius, Math.min(this.width, this.height) / 2));\n if (e >= this.y + n && e <= this.y + this.height - n || t >= this.x + n && t <= this.x + this.width - n)\n return !0;\n var i = t - (this.x + n), o = e - (this.y + n), a = n * n;\n if (i * i + o * o <= a || (i = t - (this.x + this.width - n), i * i + o * o <= a) || (o = e - (this.y + this.height - n), i * i + o * o <= a) || (i = t - (this.x + n), i * i + o * o <= a))\n return !0;\n }\n return !1;\n }, r.prototype.toString = function() {\n return \"[@pixi/math:RoundedRectangle x=\" + this.x + \" y=\" + this.y + (\"width=\" + this.width + \" height=\" + this.height + \" radius=\" + this.radius + \"]\");\n }, r;\n }()\n), Mr = (\n /** @class */\n function() {\n function r(t, e, n, i) {\n n === void 0 && (n = 0), i === void 0 && (i = 0), this._x = n, this._y = i, this.cb = t, this.scope = e;\n }\n return r.prototype.clone = function(t, e) {\n return t === void 0 && (t = this.cb), e === void 0 && (e = this.scope), new r(t, e, this._x, this._y);\n }, r.prototype.set = function(t, e) {\n return t === void 0 && (t = 0), e === void 0 && (e = t), (this._x !== t || this._y !== e) && (this._x = t, this._y = e, this.cb.call(this.scope)), this;\n }, r.prototype.copyFrom = function(t) {\n return (this._x !== t.x || this._y !== t.y) && (this._x = t.x, this._y = t.y, this.cb.call(this.scope)), this;\n }, r.prototype.copyTo = function(t) {\n return t.set(this._x, this._y), t;\n }, r.prototype.equals = function(t) {\n return t.x === this._x && t.y === this._y;\n }, r.prototype.toString = function() {\n return \"[@pixi/math:ObservablePoint x=0 y=0 scope=\" + this.scope + \"]\";\n }, Object.defineProperty(r.prototype, \"x\", {\n /** Position of the observable point on the x axis. */\n get: function() {\n return this._x;\n },\n set: function(t) {\n this._x !== t && (this._x = t, this.cb.call(this.scope));\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"y\", {\n /** Position of the observable point on the y axis. */\n get: function() {\n return this._y;\n },\n set: function(t) {\n this._y !== t && (this._y = t, this.cb.call(this.scope));\n },\n enumerable: !1,\n configurable: !0\n }), r;\n }()\n), Dt = (\n /** @class */\n function() {\n function r(t, e, n, i, o, a) {\n t === void 0 && (t = 1), e === void 0 && (e = 0), n === void 0 && (n = 0), i === void 0 && (i = 1), o === void 0 && (o = 0), a === void 0 && (a = 0), this.array = null, this.a = t, this.b = e, this.c = n, this.d = i, this.tx = o, this.ty = a;\n }\n return r.prototype.fromArray = function(t) {\n this.a = t[0], this.b = t[1], this.c = t[3], this.d = t[4], this.tx = t[2], this.ty = t[5];\n }, r.prototype.set = function(t, e, n, i, o, a) {\n return this.a = t, this.b = e, this.c = n, this.d = i, this.tx = o, this.ty = a, this;\n }, r.prototype.toArray = function(t, e) {\n this.array || (this.array = new Float32Array(9));\n var n = e || this.array;\n return t ? (n[0] = this.a, n[1] = this.b, n[2] = 0, n[3] = this.c, n[4] = this.d, n[5] = 0, n[6] = this.tx, n[7] = this.ty, n[8] = 1) : (n[0] = this.a, n[1] = this.c, n[2] = this.tx, n[3] = this.b, n[4] = this.d, n[5] = this.ty, n[6] = 0, n[7] = 0, n[8] = 1), n;\n }, r.prototype.apply = function(t, e) {\n e = e || new Tt();\n var n = t.x, i = t.y;\n return e.x = this.a * n + this.c * i + this.tx, e.y = this.b * n + this.d * i + this.ty, e;\n }, r.prototype.applyInverse = function(t, e) {\n e = e || new Tt();\n var n = 1 / (this.a * this.d + this.c * -this.b), i = t.x, o = t.y;\n return e.x = this.d * n * i + -this.c * n * o + (this.ty * this.c - this.tx * this.d) * n, e.y = this.a * n * o + -this.b * n * i + (-this.ty * this.a + this.tx * this.b) * n, e;\n }, r.prototype.translate = function(t, e) {\n return this.tx += t, this.ty += e, this;\n }, r.prototype.scale = function(t, e) {\n return this.a *= t, this.d *= e, this.c *= t, this.b *= e, this.tx *= t, this.ty *= e, this;\n }, r.prototype.rotate = function(t) {\n var e = Math.cos(t), n = Math.sin(t), i = this.a, o = this.c, a = this.tx;\n return this.a = i * e - this.b * n, this.b = i * n + this.b * e, this.c = o * e - this.d * n, this.d = o * n + this.d * e, this.tx = a * e - this.ty * n, this.ty = a * n + this.ty * e, this;\n }, r.prototype.append = function(t) {\n var e = this.a, n = this.b, i = this.c, o = this.d;\n return this.a = t.a * e + t.b * i, this.b = t.a * n + t.b * o, this.c = t.c * e + t.d * i, this.d = t.c * n + t.d * o, this.tx = t.tx * e + t.ty * i + this.tx, this.ty = t.tx * n + t.ty * o + this.ty, this;\n }, r.prototype.setTransform = function(t, e, n, i, o, a, s, u, h) {\n return this.a = Math.cos(s + h) * o, this.b = Math.sin(s + h) * o, this.c = -Math.sin(s - u) * a, this.d = Math.cos(s - u) * a, this.tx = t - (n * this.a + i * this.c), this.ty = e - (n * this.b + i * this.d), this;\n }, r.prototype.prepend = function(t) {\n var e = this.tx;\n if (t.a !== 1 || t.b !== 0 || t.c !== 0 || t.d !== 1) {\n var n = this.a, i = this.c;\n this.a = n * t.a + this.b * t.c, this.b = n * t.b + this.b * t.d, this.c = i * t.a + this.d * t.c, this.d = i * t.b + this.d * t.d;\n }\n return this.tx = e * t.a + this.ty * t.c + t.tx, this.ty = e * t.b + this.ty * t.d + t.ty, this;\n }, r.prototype.decompose = function(t) {\n var e = this.a, n = this.b, i = this.c, o = this.d, a = t.pivot, s = -Math.atan2(-i, o), u = Math.atan2(n, e), h = Math.abs(s + u);\n return h < 1e-5 || Math.abs(Fi - h) < 1e-5 ? (t.rotation = u, t.skew.x = t.skew.y = 0) : (t.rotation = 0, t.skew.x = s, t.skew.y = u), t.scale.x = Math.sqrt(e * e + n * n), t.scale.y = Math.sqrt(i * i + o * o), t.position.x = this.tx + (a.x * e + a.y * i), t.position.y = this.ty + (a.x * n + a.y * o), t;\n }, r.prototype.invert = function() {\n var t = this.a, e = this.b, n = this.c, i = this.d, o = this.tx, a = t * i - e * n;\n return this.a = i / a, this.b = -e / a, this.c = -n / a, this.d = t / a, this.tx = (n * this.ty - i * o) / a, this.ty = -(t * this.ty - e * o) / a, this;\n }, r.prototype.identity = function() {\n return this.a = 1, this.b = 0, this.c = 0, this.d = 1, this.tx = 0, this.ty = 0, this;\n }, r.prototype.clone = function() {\n var t = new r();\n 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;\n }, r.prototype.copyTo = function(t) {\n 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;\n }, r.prototype.copyFrom = function(t) {\n return this.a = t.a, this.b = t.b, this.c = t.c, this.d = t.d, this.tx = t.tx, this.ty = t.ty, this;\n }, r.prototype.toString = function() {\n return \"[@pixi/math:Matrix a=\" + this.a + \" b=\" + this.b + \" c=\" + this.c + \" d=\" + this.d + \" tx=\" + this.tx + \" ty=\" + this.ty + \"]\";\n }, Object.defineProperty(r, \"IDENTITY\", {\n /**\n * A default (identity) matrix\n * @readonly\n */\n get: function() {\n return new r();\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r, \"TEMP_MATRIX\", {\n /**\n * A temp matrix\n * @readonly\n */\n get: function() {\n return new r();\n },\n enumerable: !1,\n configurable: !0\n }), r;\n }()\n), Ze = [1, 1, 0, -1, -1, -1, 0, 1, 1, 1, 0, -1, -1, -1, 0, 1], Je = [0, 1, 1, 1, 0, -1, -1, -1, 0, 1, 1, 1, 0, -1, -1, -1], Qe = [0, -1, -1, -1, 0, 1, 1, 1, 0, 1, 1, 1, 0, -1, -1, -1], tr = [1, 1, 0, -1, -1, -1, 0, 1, -1, -1, 0, 1, 1, 1, 0, -1], sa = [], Ol = [], Wn = Math.sign;\nfunction ry() {\n for (var r = 0; r < 16; r++) {\n var t = [];\n sa.push(t);\n for (var e = 0; e < 16; e++)\n for (var n = Wn(Ze[r] * Ze[e] + Qe[r] * Je[e]), i = Wn(Je[r] * Ze[e] + tr[r] * Je[e]), o = Wn(Ze[r] * Qe[e] + Qe[r] * tr[e]), a = Wn(Je[r] * Qe[e] + tr[r] * tr[e]), s = 0; s < 16; s++)\n if (Ze[s] === n && Je[s] === i && Qe[s] === o && tr[s] === a) {\n t.push(s);\n break;\n }\n }\n for (var r = 0; r < 16; r++) {\n var u = new Dt();\n u.set(Ze[r], Je[r], Qe[r], tr[r], 0, 0), Ol.push(u);\n }\n}\nry();\nvar St = {\n /**\n * | Rotation | Direction |\n * |----------|-----------|\n * | 0° | East |\n * @memberof PIXI.groupD8\n * @constant {PIXI.GD8Symmetry}\n */\n E: 0,\n /**\n * | Rotation | Direction |\n * |----------|-----------|\n * | 45°↻ | Southeast |\n * @memberof PIXI.groupD8\n * @constant {PIXI.GD8Symmetry}\n */\n SE: 1,\n /**\n * | Rotation | Direction |\n * |----------|-----------|\n * | 90°↻ | South |\n * @memberof PIXI.groupD8\n * @constant {PIXI.GD8Symmetry}\n */\n S: 2,\n /**\n * | Rotation | Direction |\n * |----------|-----------|\n * | 135°↻ | Southwest |\n * @memberof PIXI.groupD8\n * @constant {PIXI.GD8Symmetry}\n */\n SW: 3,\n /**\n * | Rotation | Direction |\n * |----------|-----------|\n * | 180° | West |\n * @memberof PIXI.groupD8\n * @constant {PIXI.GD8Symmetry}\n */\n W: 4,\n /**\n * | Rotation | Direction |\n * |-------------|--------------|\n * | -135°/225°↻ | Northwest |\n * @memberof PIXI.groupD8\n * @constant {PIXI.GD8Symmetry}\n */\n NW: 5,\n /**\n * | Rotation | Direction |\n * |-------------|--------------|\n * | -90°/270°↻ | North |\n * @memberof PIXI.groupD8\n * @constant {PIXI.GD8Symmetry}\n */\n N: 6,\n /**\n * | Rotation | Direction |\n * |-------------|--------------|\n * | -45°/315°↻ | Northeast |\n * @memberof PIXI.groupD8\n * @constant {PIXI.GD8Symmetry}\n */\n NE: 7,\n /**\n * Reflection about Y-axis.\n * @memberof PIXI.groupD8\n * @constant {PIXI.GD8Symmetry}\n */\n MIRROR_VERTICAL: 8,\n /**\n * Reflection about the main diagonal.\n * @memberof PIXI.groupD8\n * @constant {PIXI.GD8Symmetry}\n */\n MAIN_DIAGONAL: 10,\n /**\n * Reflection about X-axis.\n * @memberof PIXI.groupD8\n * @constant {PIXI.GD8Symmetry}\n */\n MIRROR_HORIZONTAL: 12,\n /**\n * Reflection about reverse diagonal.\n * @memberof PIXI.groupD8\n * @constant {PIXI.GD8Symmetry}\n */\n REVERSE_DIAGONAL: 14,\n /**\n * @memberof PIXI.groupD8\n * @param {PIXI.GD8Symmetry} ind - sprite rotation angle.\n * @returns {PIXI.GD8Symmetry} The X-component of the U-axis\n * after rotating the axes.\n */\n uX: function(r) {\n return Ze[r];\n },\n /**\n * @memberof PIXI.groupD8\n * @param {PIXI.GD8Symmetry} ind - sprite rotation angle.\n * @returns {PIXI.GD8Symmetry} The Y-component of the U-axis\n * after rotating the axes.\n */\n uY: function(r) {\n return Je[r];\n },\n /**\n * @memberof PIXI.groupD8\n * @param {PIXI.GD8Symmetry} ind - sprite rotation angle.\n * @returns {PIXI.GD8Symmetry} The X-component of the V-axis\n * after rotating the axes.\n */\n vX: function(r) {\n return Qe[r];\n },\n /**\n * @memberof PIXI.groupD8\n * @param {PIXI.GD8Symmetry} ind - sprite rotation angle.\n * @returns {PIXI.GD8Symmetry} The Y-component of the V-axis\n * after rotating the axes.\n */\n vY: function(r) {\n return tr[r];\n },\n /**\n * @memberof PIXI.groupD8\n * @param {PIXI.GD8Symmetry} rotation - symmetry whose opposite\n * is needed. Only rotations have opposite symmetries while\n * reflections don't.\n * @returns {PIXI.GD8Symmetry} The opposite symmetry of `rotation`\n */\n inv: function(r) {\n return r & 8 ? r & 15 : -r & 7;\n },\n /**\n * Composes the two D8 operations.\n *\n * Taking `^` as reflection:\n *\n * | | E=0 | S=2 | W=4 | N=6 | E^=8 | S^=10 | W^=12 | N^=14 |\n * |-------|-----|-----|-----|-----|------|-------|-------|-------|\n * | E=0 | E | S | W | N | E^ | S^ | W^ | N^ |\n * | S=2 | S | W | N | E | S^ | W^ | N^ | E^ |\n * | W=4 | W | N | E | S | W^ | N^ | E^ | S^ |\n * | N=6 | N | E | S | W | N^ | E^ | S^ | W^ |\n * | E^=8 | E^ | N^ | W^ | S^ | E | N | W | S |\n * | S^=10 | S^ | E^ | N^ | W^ | S | E | N | W |\n * | W^=12 | W^ | S^ | E^ | N^ | W | S | E | N |\n * | N^=14 | N^ | W^ | S^ | E^ | N | W | S | E |\n *\n * [This is a Cayley table]{@link https://en.wikipedia.org/wiki/Cayley_table}\n * @memberof PIXI.groupD8\n * @param {PIXI.GD8Symmetry} rotationSecond - Second operation, which\n * is the row in the above cayley table.\n * @param {PIXI.GD8Symmetry} rotationFirst - First operation, which\n * is the column in the above cayley table.\n * @returns {PIXI.GD8Symmetry} Composed operation\n */\n add: function(r, t) {\n return sa[r][t];\n },\n /**\n * Reverse of `add`.\n * @memberof PIXI.groupD8\n * @param {PIXI.GD8Symmetry} rotationSecond - Second operation\n * @param {PIXI.GD8Symmetry} rotationFirst - First operation\n * @returns {PIXI.GD8Symmetry} Result\n */\n sub: function(r, t) {\n return sa[r][St.inv(t)];\n },\n /**\n * Adds 180 degrees to rotation, which is a commutative\n * operation.\n * @memberof PIXI.groupD8\n * @param {number} rotation - The number to rotate.\n * @returns {number} Rotated number\n */\n rotate180: function(r) {\n return r ^ 4;\n },\n /**\n * Checks if the rotation angle is vertical, i.e. south\n * or north. It doesn't work for reflections.\n * @memberof PIXI.groupD8\n * @param {PIXI.GD8Symmetry} rotation - The number to check.\n * @returns {boolean} Whether or not the direction is vertical\n */\n isVertical: function(r) {\n return (r & 3) === 2;\n },\n /**\n * Approximates the vector `V(dx,dy)` into one of the\n * eight directions provided by `groupD8`.\n * @memberof PIXI.groupD8\n * @param {number} dx - X-component of the vector\n * @param {number} dy - Y-component of the vector\n * @returns {PIXI.GD8Symmetry} Approximation of the vector into\n * one of the eight symmetries.\n */\n byDirection: function(r, t) {\n return Math.abs(r) * 2 <= Math.abs(t) ? t >= 0 ? St.S : St.N : Math.abs(t) * 2 <= Math.abs(r) ? r > 0 ? St.E : St.W : t > 0 ? r > 0 ? St.SE : St.SW : r > 0 ? St.NE : St.NW;\n },\n /**\n * Helps sprite to compensate texture packer rotation.\n * @memberof PIXI.groupD8\n * @param {PIXI.Matrix} matrix - sprite world matrix\n * @param {PIXI.GD8Symmetry} rotation - The rotation factor to use.\n * @param {number} tx - sprite anchoring\n * @param {number} ty - sprite anchoring\n */\n matrixAppendRotationInv: function(r, t, e, n) {\n e === void 0 && (e = 0), n === void 0 && (n = 0);\n var i = Ol[St.inv(t)];\n i.tx = e, i.ty = n, r.append(i);\n }\n}, Rl = (\n /** @class */\n function() {\n function r() {\n this.worldTransform = new Dt(), this.localTransform = new Dt(), this.position = new Mr(this.onChange, this, 0, 0), this.scale = new Mr(this.onChange, this, 1, 1), this.pivot = new Mr(this.onChange, this, 0, 0), this.skew = new Mr(this.updateSkew, this, 0, 0), this._rotation = 0, this._cx = 1, this._sx = 0, this._cy = 0, this._sy = 1, this._localID = 0, this._currentLocalID = 0, this._worldID = 0, this._parentID = 0;\n }\n return r.prototype.onChange = function() {\n this._localID++;\n }, r.prototype.updateSkew = function() {\n 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++;\n }, r.prototype.toString = function() {\n return \"[@pixi/math:Transform \" + (\"position=(\" + this.position.x + \", \" + this.position.y + \") \") + (\"rotation=\" + this.rotation + \" \") + (\"scale=(\" + this.scale.x + \", \" + this.scale.y + \") \") + (\"skew=(\" + this.skew.x + \", \" + this.skew.y + \") \") + \"]\";\n }, r.prototype.updateLocalTransform = function() {\n var t = this.localTransform;\n this._localID !== this._currentLocalID && (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);\n }, r.prototype.updateTransform = function(t) {\n var e = this.localTransform;\n if (this._localID !== this._currentLocalID && (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) {\n var n = t.worldTransform, i = this.worldTransform;\n i.a = e.a * n.a + e.b * n.c, i.b = e.a * n.b + e.b * n.d, i.c = e.c * n.a + e.d * n.c, i.d = e.c * n.b + e.d * n.d, i.tx = e.tx * n.a + e.ty * n.c + n.tx, i.ty = e.tx * n.b + e.ty * n.d + n.ty, this._parentID = t._worldID, this._worldID++;\n }\n }, r.prototype.setFromMatrix = function(t) {\n t.decompose(this), this._localID++;\n }, Object.defineProperty(r.prototype, \"rotation\", {\n /** The rotation of the object in radians. */\n get: function() {\n return this._rotation;\n },\n set: function(t) {\n this._rotation !== t && (this._rotation = t, this.updateSkew());\n },\n enumerable: !1,\n configurable: !0\n }), r.IDENTITY = new r(), r;\n }()\n);\n/*!\n * @pixi/display - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/display is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\nk.SORTABLE_CHILDREN = !1;\nvar Bi = (\n /** @class */\n function() {\n function r() {\n this.minX = 1 / 0, this.minY = 1 / 0, this.maxX = -1 / 0, this.maxY = -1 / 0, this.rect = null, this.updateID = -1;\n }\n return r.prototype.isEmpty = function() {\n return this.minX > this.maxX || this.minY > this.maxY;\n }, r.prototype.clear = function() {\n this.minX = 1 / 0, this.minY = 1 / 0, this.maxX = -1 / 0, this.maxY = -1 / 0;\n }, r.prototype.getRectangle = function(t) {\n return this.minX > this.maxX || this.minY > this.maxY ? ht.EMPTY : (t = t || new ht(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);\n }, r.prototype.addPoint = function(t) {\n 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);\n }, r.prototype.addPointMatrix = function(t, e) {\n var n = t.a, i = t.b, o = t.c, a = t.d, s = t.tx, u = t.ty, h = n * e.x + o * e.y + s, f = i * e.x + a * e.y + u;\n this.minX = Math.min(this.minX, h), this.maxX = Math.max(this.maxX, h), this.minY = Math.min(this.minY, f), this.maxY = Math.max(this.maxY, f);\n }, r.prototype.addQuad = function(t) {\n var e = this.minX, n = this.minY, i = this.maxX, o = this.maxY, a = t[0], s = t[1];\n e = a < e ? a : e, n = s < n ? s : n, i = a > i ? a : i, o = s > o ? s : o, a = t[2], s = t[3], e = a < e ? a : e, n = s < n ? s : n, i = a > i ? a : i, o = s > o ? s : o, a = t[4], s = t[5], e = a < e ? a : e, n = s < n ? s : n, i = a > i ? a : i, o = s > o ? s : o, a = t[6], s = t[7], e = a < e ? a : e, n = s < n ? s : n, i = a > i ? a : i, o = s > o ? s : o, this.minX = e, this.minY = n, this.maxX = i, this.maxY = o;\n }, r.prototype.addFrame = function(t, e, n, i, o) {\n this.addFrameMatrix(t.worldTransform, e, n, i, o);\n }, r.prototype.addFrameMatrix = function(t, e, n, i, o) {\n var a = t.a, s = t.b, u = t.c, h = t.d, f = t.tx, l = t.ty, c = this.minX, d = this.minY, p = this.maxX, v = this.maxY, _ = a * e + u * n + f, g = s * e + h * n + l;\n c = _ < c ? _ : c, d = g < d ? g : d, p = _ > p ? _ : p, v = g > v ? g : v, _ = a * i + u * n + f, g = s * i + h * n + l, c = _ < c ? _ : c, d = g < d ? g : d, p = _ > p ? _ : p, v = g > v ? g : v, _ = a * e + u * o + f, g = s * e + h * o + l, c = _ < c ? _ : c, d = g < d ? g : d, p = _ > p ? _ : p, v = g > v ? g : v, _ = a * i + u * o + f, g = s * i + h * o + l, c = _ < c ? _ : c, d = g < d ? g : d, p = _ > p ? _ : p, v = g > v ? g : v, this.minX = c, this.minY = d, this.maxX = p, this.maxY = v;\n }, r.prototype.addVertexData = function(t, e, n) {\n for (var i = this.minX, o = this.minY, a = this.maxX, s = this.maxY, u = e; u < n; u += 2) {\n var h = t[u], f = t[u + 1];\n i = h < i ? h : i, o = f < o ? f : o, a = h > a ? h : a, s = f > s ? f : s;\n }\n this.minX = i, this.minY = o, this.maxX = a, this.maxY = s;\n }, r.prototype.addVertices = function(t, e, n, i) {\n this.addVerticesMatrix(t.worldTransform, e, n, i);\n }, r.prototype.addVerticesMatrix = function(t, e, n, i, o, a) {\n o === void 0 && (o = 0), a === void 0 && (a = o);\n for (var s = t.a, u = t.b, h = t.c, f = t.d, l = t.tx, c = t.ty, d = this.minX, p = this.minY, v = this.maxX, _ = this.maxY, g = n; g < i; g += 2) {\n var m = e[g], y = e[g + 1], T = s * m + h * y + l, x = f * y + u * m + c;\n d = Math.min(d, T - o), v = Math.max(v, T + o), p = Math.min(p, x - a), _ = Math.max(_, x + a);\n }\n this.minX = d, this.minY = p, this.maxX = v, this.maxY = _;\n }, r.prototype.addBounds = function(t) {\n var e = this.minX, n = this.minY, i = this.maxX, o = this.maxY;\n this.minX = t.minX < e ? t.minX : e, this.minY = t.minY < n ? t.minY : n, this.maxX = t.maxX > i ? t.maxX : i, this.maxY = t.maxY > o ? t.maxY : o;\n }, r.prototype.addBoundsMask = function(t, e) {\n var n = t.minX > e.minX ? t.minX : e.minX, i = t.minY > e.minY ? t.minY : e.minY, o = t.maxX < e.maxX ? t.maxX : e.maxX, a = t.maxY < e.maxY ? t.maxY : e.maxY;\n if (n <= o && i <= a) {\n var s = this.minX, u = this.minY, h = this.maxX, f = this.maxY;\n this.minX = n < s ? n : s, this.minY = i < u ? i : u, this.maxX = o > h ? o : h, this.maxY = a > f ? a : f;\n }\n }, r.prototype.addBoundsMatrix = function(t, e) {\n this.addFrameMatrix(e, t.minX, t.minY, t.maxX, t.maxY);\n }, r.prototype.addBoundsArea = function(t, e) {\n var n = t.minX > e.x ? t.minX : e.x, i = t.minY > e.y ? t.minY : e.y, o = t.maxX < e.x + e.width ? t.maxX : e.x + e.width, a = t.maxY < e.y + e.height ? t.maxY : e.y + e.height;\n if (n <= o && i <= a) {\n var s = this.minX, u = this.minY, h = this.maxX, f = this.maxY;\n this.minX = n < s ? n : s, this.minY = i < u ? i : u, this.maxX = o > h ? o : h, this.maxY = a > f ? a : f;\n }\n }, r.prototype.pad = function(t, e) {\n t === void 0 && (t = 0), e === void 0 && (e = t), this.isEmpty() || (this.minX -= t, this.maxX += t, this.minY -= e, this.maxY += e);\n }, r.prototype.addFramePad = function(t, e, n, i, o, a) {\n t -= o, e -= a, n += o, i += a, this.minX = this.minX < t ? this.minX : t, this.maxX = this.maxX > n ? this.maxX : n, this.minY = this.minY < e ? this.minY : e, this.maxY = this.maxY > i ? this.maxY : i;\n }, r;\n }()\n);\n/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\nvar ua = function(r, t) {\n return ua = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(e, n) {\n e.__proto__ = n;\n } || function(e, n) {\n for (var i in n)\n n.hasOwnProperty(i) && (e[i] = n[i]);\n }, ua(r, t);\n};\nfunction as(r, t) {\n ua(r, t);\n function e() {\n this.constructor = r;\n }\n r.prototype = t === null ? Object.create(t) : (e.prototype = t.prototype, new e());\n}\nvar It = (\n /** @class */\n function(r) {\n as(t, r);\n function t() {\n var e = r.call(this) || this;\n return e.tempDisplayObjectParent = null, e.transform = new Rl(), e.alpha = 1, e.visible = !0, e.renderable = !0, e.cullable = !1, e.cullArea = null, e.parent = null, e.worldAlpha = 1, e._lastSortedIndex = 0, e._zIndex = 0, e.filterArea = null, e.filters = null, e._enabledFilters = null, e._bounds = new Bi(), e._localBounds = null, e._boundsID = 0, e._boundsRect = null, e._localBoundsRect = null, e._mask = null, e._maskRefCount = 0, e._destroyed = !1, e.isSprite = !1, e.isMask = !1, e;\n }\n return t.mixin = function(e) {\n for (var n = Object.keys(e), i = 0; i < n.length; ++i) {\n var o = n[i];\n Object.defineProperty(t.prototype, o, Object.getOwnPropertyDescriptor(e, o));\n }\n }, Object.defineProperty(t.prototype, \"destroyed\", {\n /**\n * Fired when this DisplayObject is added to a Container.\n * @instance\n * @event added\n * @param {PIXI.Container} container - The container added to.\n */\n /**\n * Fired when this DisplayObject is removed from a Container.\n * @instance\n * @event removed\n * @param {PIXI.Container} container - The container removed from.\n */\n /**\n * Fired when this DisplayObject is destroyed. This event is emitted once\n * destroy is finished.\n * @instance\n * @event destroyed\n */\n /** Readonly flag for destroyed display objects. */\n get: function() {\n return this._destroyed;\n },\n enumerable: !1,\n configurable: !0\n }), t.prototype._recursivePostUpdateTransform = function() {\n this.parent ? (this.parent._recursivePostUpdateTransform(), this.transform.updateTransform(this.parent.transform)) : this.transform.updateTransform(this._tempDisplayObjectParent.transform);\n }, t.prototype.updateTransform = function() {\n this._boundsID++, this.transform.updateTransform(this.parent.transform), this.worldAlpha = this.alpha * this.parent.worldAlpha;\n }, t.prototype.getBounds = function(e, n) {\n return e || (this.parent ? (this._recursivePostUpdateTransform(), this.updateTransform()) : (this.parent = this._tempDisplayObjectParent, this.updateTransform(), this.parent = null)), this._bounds.updateID !== this._boundsID && (this.calculateBounds(), this._bounds.updateID = this._boundsID), n || (this._boundsRect || (this._boundsRect = new ht()), n = this._boundsRect), this._bounds.getRectangle(n);\n }, t.prototype.getLocalBounds = function(e) {\n e || (this._localBoundsRect || (this._localBoundsRect = new ht()), e = this._localBoundsRect), this._localBounds || (this._localBounds = new Bi());\n var n = this.transform, i = this.parent;\n this.parent = null, this.transform = this._tempDisplayObjectParent.transform;\n var o = this._bounds, a = this._boundsID;\n this._bounds = this._localBounds;\n var s = this.getBounds(!1, e);\n return this.parent = i, this.transform = n, this._bounds = o, this._bounds.updateID += this._boundsID - a, s;\n }, t.prototype.toGlobal = function(e, n, i) {\n return i === void 0 && (i = !1), i || (this._recursivePostUpdateTransform(), this.parent ? this.displayObjectUpdateTransform() : (this.parent = this._tempDisplayObjectParent, this.displayObjectUpdateTransform(), this.parent = null)), this.worldTransform.apply(e, n);\n }, t.prototype.toLocal = function(e, n, i, o) {\n return n && (e = n.toGlobal(e, i, o)), o || (this._recursivePostUpdateTransform(), this.parent ? this.displayObjectUpdateTransform() : (this.parent = this._tempDisplayObjectParent, this.displayObjectUpdateTransform(), this.parent = null)), this.worldTransform.applyInverse(e, i);\n }, t.prototype.setParent = function(e) {\n if (!e || !e.addChild)\n throw new Error(\"setParent: Argument must be a Container\");\n return e.addChild(this), e;\n }, t.prototype.setTransform = function(e, n, i, o, a, s, u, h, f) {\n return e === void 0 && (e = 0), n === void 0 && (n = 0), i === void 0 && (i = 1), o === void 0 && (o = 1), a === void 0 && (a = 0), s === void 0 && (s = 0), u === void 0 && (u = 0), h === void 0 && (h = 0), f === void 0 && (f = 0), this.position.x = e, this.position.y = n, this.scale.x = i || 1, this.scale.y = o || 1, this.rotation = a, this.skew.x = s, this.skew.y = u, this.pivot.x = h, this.pivot.y = f, this;\n }, t.prototype.destroy = function(e) {\n this.parent && this.parent.removeChild(this), this._destroyed = !0, this.transform = null, this.parent = null, this._bounds = null, this.mask = null, this.cullArea = null, this.filters = null, this.filterArea = null, this.hitArea = null, this.interactive = !1, this.interactiveChildren = !1, this.emit(\"destroyed\"), this.removeAllListeners();\n }, Object.defineProperty(t.prototype, \"_tempDisplayObjectParent\", {\n /**\n * @protected\n * @member {PIXI.Container}\n */\n get: function() {\n return this.tempDisplayObjectParent === null && (this.tempDisplayObjectParent = new Il()), this.tempDisplayObjectParent;\n },\n enumerable: !1,\n configurable: !0\n }), t.prototype.enableTempParent = function() {\n var e = this.parent;\n return this.parent = this._tempDisplayObjectParent, e;\n }, t.prototype.disableTempParent = function(e) {\n this.parent = e;\n }, Object.defineProperty(t.prototype, \"x\", {\n /**\n * The position of the displayObject on the x axis relative to the local coordinates of the parent.\n * An alias to position.x\n */\n get: function() {\n return this.position.x;\n },\n set: function(e) {\n this.transform.position.x = e;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"y\", {\n /**\n * The position of the displayObject on the y axis relative to the local coordinates of the parent.\n * An alias to position.y\n */\n get: function() {\n return this.position.y;\n },\n set: function(e) {\n this.transform.position.y = e;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"worldTransform\", {\n /**\n * Current transform of the object based on world (parent) factors.\n * @readonly\n */\n get: function() {\n return this.transform.worldTransform;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"localTransform\", {\n /**\n * Current transform of the object based on local factors: position, scale, other stuff.\n * @readonly\n */\n get: function() {\n return this.transform.localTransform;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"position\", {\n /**\n * The coordinate of the object relative to the local coordinates of the parent.\n * @since 4.0.0\n */\n get: function() {\n return this.transform.position;\n },\n set: function(e) {\n this.transform.position.copyFrom(e);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"scale\", {\n /**\n * The scale factors of this object along the local coordinate axes.\n *\n * The default scale is (1, 1).\n * @since 4.0.0\n */\n get: function() {\n return this.transform.scale;\n },\n set: function(e) {\n this.transform.scale.copyFrom(e);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"pivot\", {\n /**\n * The center of rotation, scaling, and skewing for this display object in its local space. The `position`\n * is the projection of `pivot` in the parent's local space.\n *\n * By default, the pivot is the origin (0, 0).\n * @since 4.0.0\n */\n get: function() {\n return this.transform.pivot;\n },\n set: function(e) {\n this.transform.pivot.copyFrom(e);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"skew\", {\n /**\n * The skew factor for the object in radians.\n * @since 4.0.0\n */\n get: function() {\n return this.transform.skew;\n },\n set: function(e) {\n this.transform.skew.copyFrom(e);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"rotation\", {\n /**\n * The rotation of the object in radians.\n * 'rotation' and 'angle' have the same effect on a display object; rotation is in radians, angle is in degrees.\n */\n get: function() {\n return this.transform.rotation;\n },\n set: function(e) {\n this.transform.rotation = e;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"angle\", {\n /**\n * The angle of the object in degrees.\n * 'rotation' and 'angle' have the same effect on a display object; rotation is in radians, angle is in degrees.\n */\n get: function() {\n return this.transform.rotation * Zg;\n },\n set: function(e) {\n this.transform.rotation = e * Jg;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"zIndex\", {\n /**\n * The zIndex of the displayObject.\n *\n * If a container has the sortableChildren property set to true, children will be automatically\n * sorted by zIndex value; a higher value will mean it will be moved towards the end of the array,\n * and thus rendered on top of other display objects within the same container.\n * @see PIXI.Container#sortableChildren\n */\n get: function() {\n return this._zIndex;\n },\n set: function(e) {\n this._zIndex = e, this.parent && (this.parent.sortDirty = !0);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"worldVisible\", {\n /**\n * Indicates if the object is globally visible.\n * @readonly\n */\n get: function() {\n var e = this;\n do {\n if (!e.visible)\n return !1;\n e = e.parent;\n } while (e);\n return !0;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"mask\", {\n /**\n * Sets a mask for the displayObject. A mask is an object that limits the visibility of an\n * object to the shape of the mask applied to it. In PixiJS a regular mask must be a\n * {@link PIXI.Graphics} or a {@link PIXI.Sprite} object. This allows for much faster masking in canvas as it\n * utilities shape clipping. Furthermore, a mask of an object must be in the subtree of its parent.\n * Otherwise, `getLocalBounds` may calculate incorrect bounds, which makes the container's width and height wrong.\n * To remove a mask, set this property to `null`.\n *\n * For sprite mask both alpha and red channel are used. Black mask is the same as transparent mask.\n * @example\n * const graphics = new PIXI.Graphics();\n * graphics.beginFill(0xFF3300);\n * graphics.drawRect(50, 250, 100, 100);\n * graphics.endFill();\n *\n * const sprite = new PIXI.Sprite(texture);\n * sprite.mask = graphics;\n * @todo At the moment, PIXI.CanvasRenderer doesn't support PIXI.Sprite as mask.\n */\n get: function() {\n return this._mask;\n },\n set: function(e) {\n if (this._mask !== e) {\n if (this._mask) {\n var n = this._mask.isMaskData ? this._mask.maskObject : this._mask;\n n && (n._maskRefCount--, n._maskRefCount === 0 && (n.renderable = !0, n.isMask = !1));\n }\n if (this._mask = e, this._mask) {\n var n = this._mask.isMaskData ? this._mask.maskObject : this._mask;\n n && (n._maskRefCount === 0 && (n.renderable = !1, n.isMask = !0), n._maskRefCount++);\n }\n }\n },\n enumerable: !1,\n configurable: !0\n }), t;\n }(Rn)\n), Il = (\n /** @class */\n function(r) {\n as(t, r);\n function t() {\n var e = r !== null && r.apply(this, arguments) || this;\n return e.sortDirty = null, e;\n }\n return t;\n }(It)\n);\nIt.prototype.displayObjectUpdateTransform = It.prototype.updateTransform;\nfunction ny(r, t) {\n return r.zIndex === t.zIndex ? r._lastSortedIndex - t._lastSortedIndex : r.zIndex - t.zIndex;\n}\nvar xe = (\n /** @class */\n function(r) {\n as(t, r);\n function t() {\n var e = r.call(this) || this;\n return e.children = [], e.sortableChildren = k.SORTABLE_CHILDREN, e.sortDirty = !1, e;\n }\n return t.prototype.onChildrenChange = function(e) {\n }, t.prototype.addChild = function() {\n for (var e = arguments, n = [], i = 0; i < arguments.length; i++)\n n[i] = e[i];\n if (n.length > 1)\n for (var o = 0; o < n.length; o++)\n this.addChild(n[o]);\n else {\n var a = n[0];\n a.parent && a.parent.removeChild(a), a.parent = this, this.sortDirty = !0, a.transform._parentID = -1, this.children.push(a), this._boundsID++, this.onChildrenChange(this.children.length - 1), this.emit(\"childAdded\", a, this, this.children.length - 1), a.emit(\"added\", this);\n }\n return n[0];\n }, t.prototype.addChildAt = function(e, n) {\n if (n < 0 || n > this.children.length)\n throw new Error(e + \"addChildAt: The index \" + n + \" supplied is out of bounds \" + this.children.length);\n return e.parent && e.parent.removeChild(e), e.parent = this, this.sortDirty = !0, e.transform._parentID = -1, this.children.splice(n, 0, e), this._boundsID++, this.onChildrenChange(n), e.emit(\"added\", this), this.emit(\"childAdded\", e, this, n), e;\n }, t.prototype.swapChildren = function(e, n) {\n if (e !== n) {\n var i = this.getChildIndex(e), o = this.getChildIndex(n);\n this.children[i] = n, this.children[o] = e, this.onChildrenChange(i < o ? i : o);\n }\n }, t.prototype.getChildIndex = function(e) {\n var n = this.children.indexOf(e);\n if (n === -1)\n throw new Error(\"The supplied DisplayObject must be a child of the caller\");\n return n;\n }, t.prototype.setChildIndex = function(e, n) {\n if (n < 0 || n >= this.children.length)\n throw new Error(\"The index \" + n + \" supplied is out of bounds \" + this.children.length);\n var i = this.getChildIndex(e);\n Lr(this.children, i, 1), this.children.splice(n, 0, e), this.onChildrenChange(n);\n }, t.prototype.getChildAt = function(e) {\n if (e < 0 || e >= this.children.length)\n throw new Error(\"getChildAt: Index (\" + e + \") does not exist.\");\n return this.children[e];\n }, t.prototype.removeChild = function() {\n for (var e = arguments, n = [], i = 0; i < arguments.length; i++)\n n[i] = e[i];\n if (n.length > 1)\n for (var o = 0; o < n.length; o++)\n this.removeChild(n[o]);\n else {\n var a = n[0], s = this.children.indexOf(a);\n if (s === -1)\n return null;\n a.parent = null, a.transform._parentID = -1, Lr(this.children, s, 1), this._boundsID++, this.onChildrenChange(s), a.emit(\"removed\", this), this.emit(\"childRemoved\", a, this, s);\n }\n return n[0];\n }, t.prototype.removeChildAt = function(e) {\n var n = this.getChildAt(e);\n return n.parent = null, n.transform._parentID = -1, Lr(this.children, e, 1), this._boundsID++, this.onChildrenChange(e), n.emit(\"removed\", this), this.emit(\"childRemoved\", n, this, e), n;\n }, t.prototype.removeChildren = function(e, n) {\n e === void 0 && (e = 0), n === void 0 && (n = this.children.length);\n var i = e, o = n, a = o - i, s;\n if (a > 0 && a <= o) {\n s = this.children.splice(i, a);\n for (var u = 0; u < s.length; ++u)\n s[u].parent = null, s[u].transform && (s[u].transform._parentID = -1);\n this._boundsID++, this.onChildrenChange(e);\n for (var u = 0; u < s.length; ++u)\n s[u].emit(\"removed\", this), this.emit(\"childRemoved\", s[u], this, u);\n return s;\n } else if (a === 0 && this.children.length === 0)\n return [];\n throw new RangeError(\"removeChildren: numeric values are outside the acceptable range.\");\n }, t.prototype.sortChildren = function() {\n for (var e = !1, n = 0, i = this.children.length; n < i; ++n) {\n var o = this.children[n];\n o._lastSortedIndex = n, !e && o.zIndex !== 0 && (e = !0);\n }\n e && this.children.length > 1 && this.children.sort(ny), this.sortDirty = !1;\n }, t.prototype.updateTransform = function() {\n this.sortableChildren && this.sortDirty && this.sortChildren(), this._boundsID++, this.transform.updateTransform(this.parent.transform), this.worldAlpha = this.alpha * this.parent.worldAlpha;\n for (var e = 0, n = this.children.length; e < n; ++e) {\n var i = this.children[e];\n i.visible && i.updateTransform();\n }\n }, t.prototype.calculateBounds = function() {\n this._bounds.clear(), this._calculateBounds();\n for (var e = 0; e < this.children.length; e++) {\n var n = this.children[e];\n if (!(!n.visible || !n.renderable))\n if (n.calculateBounds(), n._mask) {\n var i = n._mask.isMaskData ? n._mask.maskObject : n._mask;\n i ? (i.calculateBounds(), this._bounds.addBoundsMask(n._bounds, i._bounds)) : this._bounds.addBounds(n._bounds);\n } else\n n.filterArea ? this._bounds.addBoundsArea(n._bounds, n.filterArea) : this._bounds.addBounds(n._bounds);\n }\n this._bounds.updateID = this._boundsID;\n }, t.prototype.getLocalBounds = function(e, n) {\n n === void 0 && (n = !1);\n var i = r.prototype.getLocalBounds.call(this, e);\n if (!n)\n for (var o = 0, a = this.children.length; o < a; ++o) {\n var s = this.children[o];\n s.visible && s.updateTransform();\n }\n return i;\n }, t.prototype._calculateBounds = function() {\n }, t.prototype._renderWithCulling = function(e) {\n var n = e.renderTexture.sourceFrame;\n if (n.width > 0 && n.height > 0) {\n var i, o;\n if (this.cullArea ? (i = this.cullArea, o = this.worldTransform) : this._render !== t.prototype._render && (i = this.getBounds(!0)), i && n.intersects(i, o))\n this._render(e);\n else if (this.cullArea)\n return;\n for (var a = 0, s = this.children.length; a < s; ++a) {\n var u = this.children[a], h = u.cullable;\n u.cullable = h || !this.cullArea, u.render(e), u.cullable = h;\n }\n }\n }, t.prototype.render = function(e) {\n if (!(!this.visible || this.worldAlpha <= 0 || !this.renderable))\n if (this._mask || this.filters && this.filters.length)\n this.renderAdvanced(e);\n else if (this.cullable)\n this._renderWithCulling(e);\n else {\n this._render(e);\n for (var n = 0, i = this.children.length; n < i; ++n)\n this.children[n].render(e);\n }\n }, t.prototype.renderAdvanced = function(e) {\n var n = this.filters, i = this._mask;\n if (n) {\n this._enabledFilters || (this._enabledFilters = []), this._enabledFilters.length = 0;\n for (var o = 0; o < n.length; o++)\n n[o].enabled && this._enabledFilters.push(n[o]);\n }\n var a = n && this._enabledFilters && this._enabledFilters.length || i && (!i.isMaskData || i.enabled && (i.autoDetect || i.type !== Ct.NONE));\n if (a && e.batch.flush(), n && this._enabledFilters && this._enabledFilters.length && e.filter.push(this, this._enabledFilters), i && e.mask.push(this, this._mask), this.cullable)\n this._renderWithCulling(e);\n else {\n this._render(e);\n for (var o = 0, s = this.children.length; o < s; ++o)\n this.children[o].render(e);\n }\n a && e.batch.flush(), i && e.mask.pop(this), n && this._enabledFilters && this._enabledFilters.length && e.filter.pop();\n }, t.prototype._render = function(e) {\n }, t.prototype.destroy = function(e) {\n r.prototype.destroy.call(this), this.sortDirty = !1;\n var n = typeof e == \"boolean\" ? e : e && e.children, i = this.removeChildren(0, this.children.length);\n if (n)\n for (var o = 0; o < i.length; ++o)\n i[o].destroy(e);\n }, Object.defineProperty(t.prototype, \"width\", {\n /** The width of the Container, setting this will actually modify the scale to achieve the value set. */\n get: function() {\n return this.scale.x * this.getLocalBounds().width;\n },\n set: function(e) {\n var n = this.getLocalBounds().width;\n n !== 0 ? this.scale.x = e / n : this.scale.x = 1, this._width = e;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"height\", {\n /** The height of the Container, setting this will actually modify the scale to achieve the value set. */\n get: function() {\n return this.scale.y * this.getLocalBounds().height;\n },\n set: function(e) {\n var n = this.getLocalBounds().height;\n n !== 0 ? this.scale.y = e / n : this.scale.y = 1, this._height = e;\n },\n enumerable: !1,\n configurable: !0\n }), t;\n }(It)\n);\nxe.prototype.containerUpdateTransform = xe.prototype.updateTransform;\n/*!\n * @pixi/extensions - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/extensions is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\n/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\nvar pn = function() {\n return pn = Object.assign || function(t) {\n for (var e = arguments, n, i = 1, o = arguments.length; i < o; i++) {\n n = e[i];\n for (var a in n)\n Object.prototype.hasOwnProperty.call(n, a) && (t[a] = n[a]);\n }\n return t;\n }, pn.apply(this, arguments);\n}, gt;\n(function(r) {\n r.Application = \"application\", r.RendererPlugin = \"renderer-webgl-plugin\", r.CanvasRendererPlugin = \"renderer-canvas-plugin\", r.Loader = \"loader\", r.LoadParser = \"load-parser\", r.ResolveParser = \"resolve-parser\", r.CacheParser = \"cache-parser\", r.DetectionParser = \"detection-parser\";\n})(gt || (gt = {}));\nvar Mu = function(r) {\n if (typeof r == \"function\" || typeof r == \"object\" && r.extension) {\n if (!r.extension)\n throw new Error(\"Extension class must have an extension object\");\n var t = typeof r.extension != \"object\" ? { type: r.extension } : r.extension;\n r = pn(pn({}, t), { ref: r });\n }\n if (typeof r == \"object\")\n r = pn({}, r);\n else\n throw new Error(\"Invalid extension type\");\n return typeof r.type == \"string\" && (r.type = [r.type]), r;\n}, Me = {\n /** @ignore */\n _addHandlers: null,\n /** @ignore */\n _removeHandlers: null,\n /** @ignore */\n _queue: {},\n /**\n * Remove extensions from PixiJS.\n * @param extensions - Extensions to be removed.\n * @returns {PIXI.extensions} For chaining.\n */\n remove: function() {\n for (var r = arguments, t = this, e = [], n = 0; n < arguments.length; n++)\n e[n] = r[n];\n return e.map(Mu).forEach(function(i) {\n i.type.forEach(function(o) {\n var a, s;\n return (s = (a = t._removeHandlers)[o]) === null || s === void 0 ? void 0 : s.call(a, i);\n });\n }), this;\n },\n /**\n * Register new extensions with PixiJS.\n * @param extensions - The spread of extensions to add to PixiJS.\n * @returns {PIXI.extensions} For chaining.\n */\n add: function() {\n for (var r = arguments, t = this, e = [], n = 0; n < arguments.length; n++)\n e[n] = r[n];\n return e.map(Mu).forEach(function(i) {\n i.type.forEach(function(o) {\n var a = t._addHandlers, s = t._queue;\n a[o] ? a[o](i) : (s[o] = s[o] || [], s[o].push(i));\n });\n }), this;\n },\n /**\n * Internal method to handle extensions by name.\n * @param type - The extension type.\n * @param onAdd - Function for handling when extensions are added/registered passes {@link PIXI.ExtensionFormat}.\n * @param onRemove - Function for handling when extensions are removed/unregistered passes {@link PIXI.ExtensionFormat}.\n * @returns {PIXI.extensions} For chaining.\n */\n handle: function(r, t, e) {\n var n = this._addHandlers = this._addHandlers || {}, i = this._removeHandlers = this._removeHandlers || {};\n if (n[r] || i[r])\n throw new Error(\"Extension type \" + r + \" already has a handler\");\n n[r] = t, i[r] = e;\n var o = this._queue;\n return o[r] && (o[r].forEach(function(a) {\n return t(a);\n }), delete o[r]), this;\n },\n /**\n * Handle a type, but using a map by `name` property.\n * @param type - Type of extension to handle.\n * @param map - The object map of named extensions.\n * @returns {PIXI.extensions} For chaining.\n */\n handleByMap: function(r, t) {\n return this.handle(r, function(e) {\n t[e.name] = e.ref;\n }, function(e) {\n delete t[e.name];\n });\n },\n /**\n * Handle a type, but using a list of extensions.\n * @param type - Type of extension to handle.\n * @param list - The list of extensions.\n * @returns {PIXI.extensions} For chaining.\n */\n handleByList: function(r, t) {\n return this.handle(r, function(e) {\n var n, i;\n t.includes(e.ref) || (t.push(e.ref), r === gt.Loader && ((i = (n = e.ref).add) === null || i === void 0 || i.call(n)));\n }, function(e) {\n var n = t.indexOf(e.ref);\n n !== -1 && t.splice(n, 1);\n });\n }\n};\n/*!\n * @pixi/runner - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/runner is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\nvar Gt = (\n /** @class */\n function() {\n function r(t) {\n this.items = [], this._name = t, this._aliasCount = 0;\n }\n return r.prototype.emit = function(t, e, n, i, o, a, s, u) {\n if (arguments.length > 8)\n throw new Error(\"max arguments reached\");\n var h = this, f = h.name, l = h.items;\n this._aliasCount++;\n for (var c = 0, d = l.length; c < d; c++)\n l[c][f](t, e, n, i, o, a, s, u);\n return l === this.items && this._aliasCount--, this;\n }, r.prototype.ensureNonAliasedItems = function() {\n this._aliasCount > 0 && this.items.length > 1 && (this._aliasCount = 0, this.items = this.items.slice(0));\n }, r.prototype.add = function(t) {\n return t[this._name] && (this.ensureNonAliasedItems(), this.remove(t), this.items.push(t)), this;\n }, r.prototype.remove = function(t) {\n var e = this.items.indexOf(t);\n return e !== -1 && (this.ensureNonAliasedItems(), this.items.splice(e, 1)), this;\n }, r.prototype.contains = function(t) {\n return this.items.indexOf(t) !== -1;\n }, r.prototype.removeAll = function() {\n return this.ensureNonAliasedItems(), this.items.length = 0, this;\n }, r.prototype.destroy = function() {\n this.removeAll(), this.items = null, this._name = null;\n }, Object.defineProperty(r.prototype, \"empty\", {\n /**\n * `true` if there are no this Runner contains no listeners\n * @readonly\n */\n get: function() {\n return this.items.length === 0;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"name\", {\n /**\n * The name of the runner.\n * @readonly\n */\n get: function() {\n return this._name;\n },\n enumerable: !1,\n configurable: !0\n }), r;\n }()\n);\nObject.defineProperties(Gt.prototype, {\n /**\n * Alias for `emit`\n * @memberof PIXI.Runner#\n * @method dispatch\n * @see PIXI.Runner#emit\n */\n dispatch: { value: Gt.prototype.emit },\n /**\n * Alias for `emit`\n * @memberof PIXI.Runner#\n * @method run\n * @see PIXI.Runner#emit\n */\n run: { value: Gt.prototype.emit }\n});\n/*!\n * @pixi/ticker - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/ticker is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\nk.TARGET_FPMS = 0.06;\nvar Ce;\n(function(r) {\n r[r.INTERACTION = 50] = \"INTERACTION\", r[r.HIGH = 25] = \"HIGH\", r[r.NORMAL = 0] = \"NORMAL\", r[r.LOW = -25] = \"LOW\", r[r.UTILITY = -50] = \"UTILITY\";\n})(Ce || (Ce = {}));\nvar po = (\n /** @class */\n function() {\n function r(t, e, n, i) {\n e === void 0 && (e = null), n === void 0 && (n = 0), i === void 0 && (i = !1), this.next = null, this.previous = null, this._destroyed = !1, this.fn = t, this.context = e, this.priority = n, this.once = i;\n }\n return r.prototype.match = function(t, e) {\n return e === void 0 && (e = null), this.fn === t && this.context === e;\n }, r.prototype.emit = function(t) {\n this.fn && (this.context ? this.fn.call(this.context, t) : this.fn(t));\n var e = this.next;\n return this.once && this.destroy(!0), this._destroyed && (this.next = null), e;\n }, r.prototype.connect = function(t) {\n this.previous = t, t.next && (t.next.previous = this), this.next = t.next, t.next = this;\n }, r.prototype.destroy = function(t) {\n t === void 0 && (t = !1), this._destroyed = !0, this.fn = null, this.context = null, this.previous && (this.previous.next = this.next), this.next && (this.next.previous = this.previous);\n var e = this.next;\n return this.next = t ? null : e, this.previous = null, e;\n }, r;\n }()\n), kt = (\n /** @class */\n function() {\n function r() {\n var t = this;\n this.autoStart = !1, this.deltaTime = 1, this.lastTime = -1, this.speed = 1, this.started = !1, this._requestId = null, this._maxElapsedMS = 100, this._minElapsedMS = 0, this._protected = !1, this._lastFrame = -1, this._head = new po(null, null, 1 / 0), this.deltaMS = 1 / k.TARGET_FPMS, this.elapsedMS = 1 / k.TARGET_FPMS, this._tick = function(e) {\n t._requestId = null, t.started && (t.update(e), t.started && t._requestId === null && t._head.next && (t._requestId = requestAnimationFrame(t._tick)));\n };\n }\n return r.prototype._requestIfNeeded = function() {\n this._requestId === null && this._head.next && (this.lastTime = performance.now(), this._lastFrame = this.lastTime, this._requestId = requestAnimationFrame(this._tick));\n }, r.prototype._cancelIfNeeded = function() {\n this._requestId !== null && (cancelAnimationFrame(this._requestId), this._requestId = null);\n }, r.prototype._startIfPossible = function() {\n this.started ? this._requestIfNeeded() : this.autoStart && this.start();\n }, r.prototype.add = function(t, e, n) {\n return n === void 0 && (n = Ce.NORMAL), this._addListener(new po(t, e, n));\n }, r.prototype.addOnce = function(t, e, n) {\n return n === void 0 && (n = Ce.NORMAL), this._addListener(new po(t, e, n, !0));\n }, r.prototype._addListener = function(t) {\n var e = this._head.next, n = this._head;\n if (!e)\n t.connect(n);\n else {\n for (; e; ) {\n if (t.priority > e.priority) {\n t.connect(n);\n break;\n }\n n = e, e = e.next;\n }\n t.previous || t.connect(n);\n }\n return this._startIfPossible(), this;\n }, r.prototype.remove = function(t, e) {\n for (var n = this._head.next; n; )\n n.match(t, e) ? n = n.destroy() : n = n.next;\n return this._head.next || this._cancelIfNeeded(), this;\n }, Object.defineProperty(r.prototype, \"count\", {\n /**\n * The number of listeners on this ticker, calculated by walking through linked list\n * @readonly\n * @member {number}\n */\n get: function() {\n if (!this._head)\n return 0;\n for (var t = 0, e = this._head; e = e.next; )\n t++;\n return t;\n },\n enumerable: !1,\n configurable: !0\n }), r.prototype.start = function() {\n this.started || (this.started = !0, this._requestIfNeeded());\n }, r.prototype.stop = function() {\n this.started && (this.started = !1, this._cancelIfNeeded());\n }, r.prototype.destroy = function() {\n if (!this._protected) {\n this.stop();\n for (var t = this._head.next; t; )\n t = t.destroy(!0);\n this._head.destroy(), this._head = null;\n }\n }, r.prototype.update = function(t) {\n t === void 0 && (t = performance.now());\n var e;\n if (t > this.lastTime) {\n if (e = this.elapsedMS = t - this.lastTime, e > this._maxElapsedMS && (e = this._maxElapsedMS), e *= this.speed, this._minElapsedMS) {\n var n = t - this._lastFrame | 0;\n if (n < this._minElapsedMS)\n return;\n this._lastFrame = t - n % this._minElapsedMS;\n }\n this.deltaMS = e, this.deltaTime = this.deltaMS * k.TARGET_FPMS;\n for (var i = this._head, o = i.next; o; )\n o = o.emit(this.deltaTime);\n i.next || this._cancelIfNeeded();\n } else\n this.deltaTime = this.deltaMS = this.elapsedMS = 0;\n this.lastTime = t;\n }, Object.defineProperty(r.prototype, \"FPS\", {\n /**\n * The frames per second at which this ticker is running.\n * The default is approximately 60 in most modern browsers.\n * **Note:** This does not factor in the value of\n * {@link PIXI.Ticker#speed}, which is specific\n * to scaling {@link PIXI.Ticker#deltaTime}.\n * @member {number}\n * @readonly\n */\n get: function() {\n return 1e3 / this.elapsedMS;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"minFPS\", {\n /**\n * Manages the maximum amount of milliseconds allowed to\n * elapse between invoking {@link PIXI.Ticker#update}.\n * This value is used to cap {@link PIXI.Ticker#deltaTime},\n * but does not effect the measured value of {@link PIXI.Ticker#FPS}.\n * When setting this property it is clamped to a value between\n * `0` and `PIXI.settings.TARGET_FPMS * 1000`.\n * @member {number}\n * @default 10\n */\n get: function() {\n return 1e3 / this._maxElapsedMS;\n },\n set: function(t) {\n var e = Math.min(this.maxFPS, t), n = Math.min(Math.max(0, e) / 1e3, k.TARGET_FPMS);\n this._maxElapsedMS = 1 / n;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"maxFPS\", {\n /**\n * Manages the minimum amount of milliseconds required to\n * elapse between invoking {@link PIXI.Ticker#update}.\n * This will effect the measured value of {@link PIXI.Ticker#FPS}.\n * If it is set to `0`, then there is no limit; PixiJS will render as many frames as it can.\n * Otherwise it will be at least `minFPS`\n * @member {number}\n * @default 0\n */\n get: function() {\n return this._minElapsedMS ? Math.round(1e3 / this._minElapsedMS) : 0;\n },\n set: function(t) {\n if (t === 0)\n this._minElapsedMS = 0;\n else {\n var e = Math.max(this.minFPS, t);\n this._minElapsedMS = 1 / (e / 1e3);\n }\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r, \"shared\", {\n /**\n * The shared ticker instance used by {@link PIXI.AnimatedSprite} and by\n * {@link PIXI.VideoResource} to update animation frames / video textures.\n *\n * It may also be used by {@link PIXI.Application} if created with the `sharedTicker` option property set to true.\n *\n * The property {@link PIXI.Ticker#autoStart} is set to `true` for this instance.\n * Please follow the examples for usage, including how to opt-out of auto-starting the shared ticker.\n * @example\n * let ticker = PIXI.Ticker.shared;\n * // Set this to prevent starting this ticker when listeners are added.\n * // By default this is true only for the PIXI.Ticker.shared instance.\n * ticker.autoStart = false;\n * // FYI, call this to ensure the ticker is stopped. It should be stopped\n * // if you have not attempted to render anything yet.\n * ticker.stop();\n * // Call this when you are ready for a running shared ticker.\n * ticker.start();\n * @example\n * // You may use the shared ticker to render...\n * let renderer = PIXI.autoDetectRenderer();\n * let stage = new PIXI.Container();\n * document.body.appendChild(renderer.view);\n * ticker.add(function (time) {\n * renderer.render(stage);\n * });\n * @example\n * // Or you can just update it manually.\n * ticker.autoStart = false;\n * ticker.stop();\n * function animate(time) {\n * ticker.update(time);\n * renderer.render(stage);\n * requestAnimationFrame(animate);\n * }\n * animate(performance.now());\n * @member {PIXI.Ticker}\n * @static\n */\n get: function() {\n if (!r._shared) {\n var t = r._shared = new r();\n t.autoStart = !0, t._protected = !0;\n }\n return r._shared;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r, \"system\", {\n /**\n * The system ticker instance used by {@link PIXI.InteractionManager} and by\n * {@link PIXI.BasePrepare} for core timing functionality that shouldn't usually need to be paused,\n * unlike the `shared` ticker which drives visual animations and rendering which may want to be paused.\n *\n * The property {@link PIXI.Ticker#autoStart} is set to `true` for this instance.\n * @member {PIXI.Ticker}\n * @static\n */\n get: function() {\n if (!r._system) {\n var t = r._system = new r();\n t.autoStart = !0, t._protected = !0;\n }\n return r._system;\n },\n enumerable: !1,\n configurable: !0\n }), r;\n }()\n), iy = (\n /** @class */\n function() {\n function r() {\n }\n return r.init = function(t) {\n var e = this;\n t = Object.assign({\n autoStart: !0,\n sharedTicker: !1\n }, t), Object.defineProperty(this, \"ticker\", {\n set: function(n) {\n this._ticker && this._ticker.remove(this.render, this), this._ticker = n, n && n.add(this.render, this, Ce.LOW);\n },\n get: function() {\n return this._ticker;\n }\n }), this.stop = function() {\n e._ticker.stop();\n }, this.start = function() {\n e._ticker.start();\n }, this._ticker = null, this.ticker = t.sharedTicker ? kt.shared : new kt(), t.autoStart && this.start();\n }, r.destroy = function() {\n if (this._ticker) {\n var t = this._ticker;\n this.ticker = null, t.destroy();\n }\n }, r.extension = gt.Application, r;\n }()\n);\n/*!\n * @pixi/core - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/core is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\nk.PREFER_ENV = ge.any ? Ie.WEBGL : Ie.WEBGL2;\nk.STRICT_TEXTURE_CACHE = !1;\nvar ha = [];\nfunction Cl(r, t) {\n if (!r)\n return null;\n var e = \"\";\n if (typeof r == \"string\") {\n var n = /\\.(\\w{3,4})(?:$|\\?|#)/i.exec(r);\n n && (e = n[1].toLowerCase());\n }\n for (var i = ha.length - 1; i >= 0; --i) {\n var o = ha[i];\n if (o.test && o.test(r, e))\n return new o(r, t);\n }\n throw new Error(\"Unrecognized source type to auto-detect Resource\");\n}\n/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\nvar la = function(r, t) {\n return la = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(e, n) {\n e.__proto__ = n;\n } || function(e, n) {\n for (var i in n)\n n.hasOwnProperty(i) && (e[i] = n[i]);\n }, la(r, t);\n};\nfunction xt(r, t) {\n la(r, t);\n function e() {\n this.constructor = r;\n }\n r.prototype = t === null ? Object.create(t) : (e.prototype = t.prototype, new e());\n}\nvar fa = function() {\n return fa = Object.assign || function(t) {\n for (var e = arguments, n, i = 1, o = arguments.length; i < o; i++) {\n n = e[i];\n for (var a in n)\n Object.prototype.hasOwnProperty.call(n, a) && (t[a] = n[a]);\n }\n return t;\n }, fa.apply(this, arguments);\n};\nfunction oy(r, t) {\n var e = {};\n for (var n in r)\n Object.prototype.hasOwnProperty.call(r, n) && t.indexOf(n) < 0 && (e[n] = r[n]);\n if (r != null && typeof Object.getOwnPropertySymbols == \"function\")\n for (var i = 0, n = Object.getOwnPropertySymbols(r); i < n.length; i++)\n t.indexOf(n[i]) < 0 && Object.prototype.propertyIsEnumerable.call(r, n[i]) && (e[n[i]] = r[n[i]]);\n return e;\n}\nvar Tn = (\n /** @class */\n function() {\n function r(t, e) {\n t === void 0 && (t = 0), e === void 0 && (e = 0), this._width = t, this._height = e, this.destroyed = !1, this.internal = !1, this.onResize = new Gt(\"setRealSize\"), this.onUpdate = new Gt(\"update\"), this.onError = new Gt(\"onError\");\n }\n return r.prototype.bind = function(t) {\n this.onResize.add(t), this.onUpdate.add(t), this.onError.add(t), (this._width || this._height) && this.onResize.emit(this._width, this._height);\n }, r.prototype.unbind = function(t) {\n this.onResize.remove(t), this.onUpdate.remove(t), this.onError.remove(t);\n }, r.prototype.resize = function(t, e) {\n (t !== this._width || e !== this._height) && (this._width = t, this._height = e, this.onResize.emit(t, e));\n }, Object.defineProperty(r.prototype, \"valid\", {\n /**\n * Has been validated\n * @readonly\n */\n get: function() {\n return !!this._width && !!this._height;\n },\n enumerable: !1,\n configurable: !0\n }), r.prototype.update = function() {\n this.destroyed || this.onUpdate.emit();\n }, r.prototype.load = function() {\n return Promise.resolve(this);\n }, Object.defineProperty(r.prototype, \"width\", {\n /**\n * The width of the resource.\n * @readonly\n */\n get: function() {\n return this._width;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"height\", {\n /**\n * The height of the resource.\n * @readonly\n */\n get: function() {\n return this._height;\n },\n enumerable: !1,\n configurable: !0\n }), r.prototype.style = function(t, e, n) {\n return !1;\n }, r.prototype.dispose = function() {\n }, r.prototype.destroy = function() {\n this.destroyed || (this.destroyed = !0, this.dispose(), this.onError.removeAll(), this.onError = null, this.onResize.removeAll(), this.onResize = null, this.onUpdate.removeAll(), this.onUpdate = null);\n }, r.test = function(t, e) {\n return !1;\n }, r;\n }()\n), Cn = (\n /** @class */\n function(r) {\n xt(t, r);\n function t(e, n) {\n var i = this, o = n || {}, a = o.width, s = o.height;\n if (!a || !s)\n throw new Error(\"BufferResource width or height invalid\");\n return i = r.call(this, a, s) || this, i.data = e, i;\n }\n return t.prototype.upload = function(e, n, i) {\n var o = e.gl;\n o.pixelStorei(o.UNPACK_PREMULTIPLY_ALPHA_WEBGL, n.alphaMode === fe.UNPACK);\n var a = n.realWidth, s = n.realHeight;\n return i.width === a && i.height === s ? o.texSubImage2D(n.target, 0, 0, 0, a, s, n.format, i.type, this.data) : (i.width = a, i.height = s, o.texImage2D(n.target, 0, i.internalFormat, a, s, 0, n.format, i.type, this.data)), !0;\n }, t.prototype.dispose = function() {\n this.data = null;\n }, t.test = function(e) {\n return e instanceof Float32Array || e instanceof Uint8Array || e instanceof Uint32Array;\n }, t;\n }(Tn)\n), ay = {\n scaleMode: me.NEAREST,\n format: G.RGBA,\n alphaMode: fe.NPM\n}, ut = (\n /** @class */\n function(r) {\n xt(t, r);\n function t(e, n) {\n e === void 0 && (e = null), n === void 0 && (n = null);\n var i = r.call(this) || this;\n n = n || {};\n var o = n.alphaMode, a = n.mipmap, s = n.anisotropicLevel, u = n.scaleMode, h = n.width, f = n.height, l = n.wrapMode, c = n.format, d = n.type, p = n.target, v = n.resolution, _ = n.resourceOptions;\n return e && !(e instanceof Tn) && (e = Cl(e, _), e.internal = !0), i.resolution = v || k.RESOLUTION, i.width = Math.round((h || 0) * i.resolution) / i.resolution, i.height = Math.round((f || 0) * i.resolution) / i.resolution, i._mipmap = a !== void 0 ? a : k.MIPMAP_TEXTURES, i.anisotropicLevel = s !== void 0 ? s : k.ANISOTROPIC_LEVEL, i._wrapMode = l || k.WRAP_MODE, i._scaleMode = u !== void 0 ? u : k.SCALE_MODE, i.format = c || G.RGBA, i.type = d || j.UNSIGNED_BYTE, i.target = p || or.TEXTURE_2D, i.alphaMode = o !== void 0 ? o : fe.UNPACK, i.uid = lr(), i.touched = 0, i.isPowerOfTwo = !1, i._refreshPOT(), i._glTextures = {}, i.dirtyId = 0, i.dirtyStyleId = 0, i.cacheId = null, i.valid = h > 0 && f > 0, i.textureCacheIds = [], i.destroyed = !1, i.resource = null, i._batchEnabled = 0, i._batchLocation = 0, i.parentTextureArray = null, i.setResource(e), i;\n }\n return Object.defineProperty(t.prototype, \"realWidth\", {\n /**\n * Pixel width of the source of this texture\n * @readonly\n */\n get: function() {\n return Math.round(this.width * this.resolution);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"realHeight\", {\n /**\n * Pixel height of the source of this texture\n * @readonly\n */\n get: function() {\n return Math.round(this.height * this.resolution);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"mipmap\", {\n /**\n * Mipmap mode of the texture, affects downscaled images\n * @default PIXI.settings.MIPMAP_TEXTURES\n */\n get: function() {\n return this._mipmap;\n },\n set: function(e) {\n this._mipmap !== e && (this._mipmap = e, this.dirtyStyleId++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"scaleMode\", {\n /**\n * The scale mode to apply when scaling this texture\n * @default PIXI.settings.SCALE_MODE\n */\n get: function() {\n return this._scaleMode;\n },\n set: function(e) {\n this._scaleMode !== e && (this._scaleMode = e, this.dirtyStyleId++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"wrapMode\", {\n /**\n * How the texture wraps\n * @default PIXI.settings.WRAP_MODE\n */\n get: function() {\n return this._wrapMode;\n },\n set: function(e) {\n this._wrapMode !== e && (this._wrapMode = e, this.dirtyStyleId++);\n },\n enumerable: !1,\n configurable: !0\n }), t.prototype.setStyle = function(e, n) {\n var i;\n return e !== void 0 && e !== this.scaleMode && (this.scaleMode = e, i = !0), n !== void 0 && n !== this.mipmap && (this.mipmap = n, i = !0), i && this.dirtyStyleId++, this;\n }, t.prototype.setSize = function(e, n, i) {\n return i = i || this.resolution, this.setRealSize(e * i, n * i, i);\n }, t.prototype.setRealSize = function(e, n, i) {\n return this.resolution = i || this.resolution, this.width = Math.round(e) / this.resolution, this.height = Math.round(n) / this.resolution, this._refreshPOT(), this.update(), this;\n }, t.prototype._refreshPOT = function() {\n this.isPowerOfTwo = Pu(this.realWidth) && Pu(this.realHeight);\n }, t.prototype.setResolution = function(e) {\n var n = this.resolution;\n return n === e ? this : (this.resolution = e, this.valid && (this.width = Math.round(this.width * n) / e, this.height = Math.round(this.height * n) / e, this.emit(\"update\", this)), this._refreshPOT(), this);\n }, t.prototype.setResource = function(e) {\n if (this.resource === e)\n return this;\n if (this.resource)\n throw new Error(\"Resource can be set only once\");\n return e.bind(this), this.resource = e, this;\n }, t.prototype.update = function() {\n this.valid ? (this.dirtyId++, this.dirtyStyleId++, this.emit(\"update\", this)) : this.width > 0 && this.height > 0 && (this.valid = !0, this.emit(\"loaded\", this), this.emit(\"update\", this));\n }, t.prototype.onError = function(e) {\n this.emit(\"error\", this, e);\n }, t.prototype.destroy = function() {\n this.resource && (this.resource.unbind(this), this.resource.internal && this.resource.destroy(), this.resource = null), this.cacheId && (delete ze[this.cacheId], delete Ae[this.cacheId], this.cacheId = null), this.dispose(), t.removeFromCache(this), this.textureCacheIds = null, this.destroyed = !0;\n }, t.prototype.dispose = function() {\n this.emit(\"dispose\", this);\n }, t.prototype.castToBaseTexture = function() {\n return this;\n }, t.from = function(e, n, i) {\n i === void 0 && (i = k.STRICT_TEXTURE_CACHE);\n var o = typeof e == \"string\", a = null;\n if (o)\n a = e;\n else {\n if (!e._pixiId) {\n var s = n && n.pixiIdPrefix || \"pixiid\";\n e._pixiId = s + \"_\" + lr();\n }\n a = e._pixiId;\n }\n var u = ze[a];\n if (o && i && !u)\n throw new Error('The cacheId \"' + a + '\" does not exist in BaseTextureCache.');\n return u || (u = new t(e, n), u.cacheId = a, t.addToCache(u, a)), u;\n }, t.fromBuffer = function(e, n, i, o) {\n e = e || new Float32Array(n * i * 4);\n var a = new Cn(e, { width: n, height: i }), s = e instanceof Float32Array ? j.FLOAT : j.UNSIGNED_BYTE;\n return new t(a, Object.assign({}, ay, o || { width: n, height: i, type: s }));\n }, t.addToCache = function(e, n) {\n n && (e.textureCacheIds.indexOf(n) === -1 && e.textureCacheIds.push(n), ze[n] && console.warn(\"BaseTexture added to the cache with an id [\" + n + \"] that already had an entry\"), ze[n] = e);\n }, t.removeFromCache = function(e) {\n if (typeof e == \"string\") {\n var n = ze[e];\n if (n) {\n var i = n.textureCacheIds.indexOf(e);\n return i > -1 && n.textureCacheIds.splice(i, 1), delete ze[e], n;\n }\n } else if (e && e.textureCacheIds) {\n for (var o = 0; o < e.textureCacheIds.length; ++o)\n delete ze[e.textureCacheIds[o]];\n return e.textureCacheIds.length = 0, e;\n }\n return null;\n }, t._globalBatch = 0, t;\n }(Rn)\n), Ml = (\n /** @class */\n function(r) {\n xt(t, r);\n function t(e, n) {\n var i = this, o = n || {}, a = o.width, s = o.height;\n i = r.call(this, a, s) || this, i.items = [], i.itemDirtyIds = [];\n for (var u = 0; u < e; u++) {\n var h = new ut();\n i.items.push(h), i.itemDirtyIds.push(-2);\n }\n return i.length = e, i._load = null, i.baseTexture = null, i;\n }\n return t.prototype.initFromArray = function(e, n) {\n for (var i = 0; i < this.length; i++)\n e[i] && (e[i].castToBaseTexture ? this.addBaseTextureAt(e[i].castToBaseTexture(), i) : e[i] instanceof Tn ? this.addResourceAt(e[i], i) : this.addResourceAt(Cl(e[i], n), i));\n }, t.prototype.dispose = function() {\n for (var e = 0, n = this.length; e < n; e++)\n this.items[e].destroy();\n this.items = null, this.itemDirtyIds = null, this._load = null;\n }, t.prototype.addResourceAt = function(e, n) {\n if (!this.items[n])\n throw new Error(\"Index \" + n + \" is out of bounds\");\n return e.valid && !this.valid && this.resize(e.width, e.height), this.items[n].setResource(e), this;\n }, t.prototype.bind = function(e) {\n if (this.baseTexture !== null)\n throw new Error(\"Only one base texture per TextureArray is allowed\");\n r.prototype.bind.call(this, e);\n for (var n = 0; n < this.length; n++)\n this.items[n].parentTextureArray = e, this.items[n].on(\"update\", e.update, e);\n }, t.prototype.unbind = function(e) {\n r.prototype.unbind.call(this, e);\n for (var n = 0; n < this.length; n++)\n this.items[n].parentTextureArray = null, this.items[n].off(\"update\", e.update, e);\n }, t.prototype.load = function() {\n var e = this;\n if (this._load)\n return this._load;\n var n = this.items.map(function(o) {\n return o.resource;\n }).filter(function(o) {\n return o;\n }), i = n.map(function(o) {\n return o.load();\n });\n return this._load = Promise.all(i).then(function() {\n var o = e.items[0], a = o.realWidth, s = o.realHeight;\n return e.resize(a, s), Promise.resolve(e);\n }), this._load;\n }, t;\n }(Tn)\n), sy = (\n /** @class */\n function(r) {\n xt(t, r);\n function t(e, n) {\n var i = this, o = n || {}, a = o.width, s = o.height, u, h;\n return Array.isArray(e) ? (u = e, h = e.length) : h = e, i = r.call(this, h, { width: a, height: s }) || this, u && i.initFromArray(u, n), i;\n }\n return t.prototype.addBaseTextureAt = function(e, n) {\n if (e.resource)\n this.addResourceAt(e.resource, n);\n else\n throw new Error(\"ArrayResource does not support RenderTexture\");\n return this;\n }, t.prototype.bind = function(e) {\n r.prototype.bind.call(this, e), e.target = or.TEXTURE_2D_ARRAY;\n }, t.prototype.upload = function(e, n, i) {\n var o = this, a = o.length, s = o.itemDirtyIds, u = o.items, h = e.gl;\n i.dirtyId < 0 && h.texImage3D(h.TEXTURE_2D_ARRAY, 0, i.internalFormat, this._width, this._height, a, 0, n.format, i.type, null);\n for (var f = 0; f < a; f++) {\n var l = u[f];\n s[f] < l.dirtyId && (s[f] = l.dirtyId, l.valid && h.texSubImage3D(\n h.TEXTURE_2D_ARRAY,\n 0,\n 0,\n // xoffset\n 0,\n // yoffset\n f,\n // zoffset\n l.resource.width,\n l.resource.height,\n 1,\n n.format,\n i.type,\n l.resource.source\n ));\n }\n return !0;\n }, t;\n }(Ml)\n), Ge = (\n /** @class */\n function(r) {\n xt(t, r);\n function t(e) {\n var n = this, i = e, o = i.naturalWidth || i.videoWidth || i.width, a = i.naturalHeight || i.videoHeight || i.height;\n return n = r.call(this, o, a) || this, n.source = e, n.noSubImage = !1, n;\n }\n return t.crossOrigin = function(e, n, i) {\n i === void 0 && n.indexOf(\"data:\") !== 0 ? e.crossOrigin = Kg(n) : i !== !1 && (e.crossOrigin = typeof i == \"string\" ? i : \"anonymous\");\n }, t.prototype.upload = function(e, n, i, o) {\n var a = e.gl, s = n.realWidth, u = n.realHeight;\n if (o = o || this.source, o instanceof HTMLImageElement) {\n if (!o.complete || o.naturalWidth === 0)\n return !1;\n } else if (o instanceof HTMLVideoElement && o.readyState <= 1)\n return !1;\n return a.pixelStorei(a.UNPACK_PREMULTIPLY_ALPHA_WEBGL, n.alphaMode === fe.UNPACK), !this.noSubImage && n.target === a.TEXTURE_2D && i.width === s && i.height === u ? a.texSubImage2D(a.TEXTURE_2D, 0, 0, 0, n.format, i.type, o) : (i.width = s, i.height = u, a.texImage2D(n.target, 0, i.internalFormat, n.format, i.type, o)), !0;\n }, t.prototype.update = function() {\n if (!this.destroyed) {\n var e = this.source, n = e.naturalWidth || e.videoWidth || e.width, i = e.naturalHeight || e.videoHeight || e.height;\n this.resize(n, i), r.prototype.update.call(this);\n }\n }, t.prototype.dispose = function() {\n this.source = null;\n }, t;\n }(Tn)\n), uy = (\n /** @class */\n function(r) {\n xt(t, r);\n function t(e) {\n return r.call(this, e) || this;\n }\n return t.test = function(e) {\n var n = globalThis.OffscreenCanvas;\n return n && e instanceof n ? !0 : globalThis.HTMLCanvasElement && e instanceof HTMLCanvasElement;\n }, t;\n }(Ge)\n), hy = (\n /** @class */\n function(r) {\n xt(t, r);\n function t(e, n) {\n var i = this, o = n || {}, a = o.width, s = o.height, u = o.autoLoad, h = o.linkBaseTexture;\n if (e && e.length !== t.SIDES)\n throw new Error(\"Invalid length. Got \" + e.length + \", expected 6\");\n i = r.call(this, 6, { width: a, height: s }) || this;\n for (var f = 0; f < t.SIDES; f++)\n i.items[f].target = or.TEXTURE_CUBE_MAP_POSITIVE_X + f;\n return i.linkBaseTexture = h !== !1, e && i.initFromArray(e, n), u !== !1 && i.load(), i;\n }\n return t.prototype.bind = function(e) {\n r.prototype.bind.call(this, e), e.target = or.TEXTURE_CUBE_MAP;\n }, t.prototype.addBaseTextureAt = function(e, n, i) {\n if (!this.items[n])\n throw new Error(\"Index \" + n + \" is out of bounds\");\n if (!this.linkBaseTexture || e.parentTextureArray || Object.keys(e._glTextures).length > 0)\n if (e.resource)\n this.addResourceAt(e.resource, n);\n else\n throw new Error(\"CubeResource does not support copying of renderTexture.\");\n else\n e.target = or.TEXTURE_CUBE_MAP_POSITIVE_X + n, e.parentTextureArray = this.baseTexture, this.items[n] = e;\n return e.valid && !this.valid && this.resize(e.realWidth, e.realHeight), this.items[n] = e, this;\n }, t.prototype.upload = function(e, n, i) {\n for (var o = this.itemDirtyIds, a = 0; a < t.SIDES; a++) {\n var s = this.items[a];\n (o[a] < s.dirtyId || i.dirtyId < n.dirtyId) && (s.valid && s.resource ? (s.resource.upload(e, s, i), o[a] = s.dirtyId) : o[a] < -1 && (e.gl.texImage2D(s.target, 0, i.internalFormat, n.realWidth, n.realHeight, 0, n.format, i.type, null), o[a] = -1));\n }\n return !0;\n }, t.test = function(e) {\n return Array.isArray(e) && e.length === t.SIDES;\n }, t.SIDES = 6, t;\n }(Ml)\n), Dl = (\n /** @class */\n function(r) {\n xt(t, r);\n function t(e, n) {\n var i = this;\n if (n = n || {}, !(e instanceof HTMLImageElement)) {\n var o = new Image();\n Ge.crossOrigin(o, e, n.crossorigin), o.src = e, e = o;\n }\n return i = r.call(this, e) || this, !e.complete && i._width && i._height && (i._width = 0, i._height = 0), i.url = e.src, i._process = null, i.preserveBitmap = !1, i.createBitmap = (n.createBitmap !== void 0 ? n.createBitmap : k.CREATE_IMAGE_BITMAP) && !!globalThis.createImageBitmap, i.alphaMode = typeof n.alphaMode == \"number\" ? n.alphaMode : null, i.bitmap = null, i._load = null, n.autoLoad !== !1 && i.load(), i;\n }\n return t.prototype.load = function(e) {\n var n = this;\n return this._load ? this._load : (e !== void 0 && (this.createBitmap = e), this._load = new Promise(function(i, o) {\n var a = n.source;\n n.url = a.src;\n var s = function() {\n n.destroyed || (a.onload = null, a.onerror = null, n.resize(a.width, a.height), n._load = null, n.createBitmap ? i(n.process()) : i(n));\n };\n a.complete && a.src ? s() : (a.onload = s, a.onerror = function(u) {\n o(u), n.onError.emit(u);\n });\n }), this._load);\n }, t.prototype.process = function() {\n var e = this, n = this.source;\n if (this._process !== null)\n return this._process;\n if (this.bitmap !== null || !globalThis.createImageBitmap)\n return Promise.resolve(this);\n var i = globalThis.createImageBitmap, o = !n.crossOrigin || n.crossOrigin === \"anonymous\";\n return this._process = fetch(n.src, {\n mode: o ? \"cors\" : \"no-cors\"\n }).then(function(a) {\n return a.blob();\n }).then(function(a) {\n return i(a, 0, 0, n.width, n.height, {\n premultiplyAlpha: e.alphaMode === null || e.alphaMode === fe.UNPACK ? \"premultiply\" : \"none\"\n });\n }).then(function(a) {\n return e.destroyed ? Promise.reject() : (e.bitmap = a, e.update(), e._process = null, Promise.resolve(e));\n }), this._process;\n }, t.prototype.upload = function(e, n, i) {\n if (typeof this.alphaMode == \"number\" && (n.alphaMode = this.alphaMode), !this.createBitmap)\n return r.prototype.upload.call(this, e, n, i);\n if (!this.bitmap && (this.process(), !this.bitmap))\n return !1;\n if (r.prototype.upload.call(this, e, n, i, this.bitmap), !this.preserveBitmap) {\n var o = !0, a = n._glTextures;\n for (var s in a) {\n var u = a[s];\n if (u !== i && u.dirtyId !== n.dirtyId) {\n o = !1;\n break;\n }\n }\n o && (this.bitmap.close && this.bitmap.close(), this.bitmap = null);\n }\n return !0;\n }, t.prototype.dispose = function() {\n this.source.onload = null, this.source.onerror = null, r.prototype.dispose.call(this), this.bitmap && (this.bitmap.close(), this.bitmap = null), this._process = null, this._load = null;\n }, t.test = function(e) {\n return typeof e == \"string\" || e instanceof HTMLImageElement;\n }, t;\n }(Ge)\n), ly = (\n /** @class */\n function(r) {\n xt(t, r);\n function t(e, n) {\n var i = this;\n return n = n || {}, i = r.call(this, k.ADAPTER.createCanvas()) || this, i._width = 0, i._height = 0, i.svg = e, i.scale = n.scale || 1, i._overrideWidth = n.width, i._overrideHeight = n.height, i._resolve = null, i._crossorigin = n.crossorigin, i._load = null, n.autoLoad !== !1 && i.load(), i;\n }\n return t.prototype.load = function() {\n var e = this;\n return this._load ? this._load : (this._load = new Promise(function(n) {\n if (e._resolve = function() {\n e.resize(e.source.width, e.source.height), n(e);\n }, t.SVG_XML.test(e.svg.trim())) {\n if (!btoa)\n throw new Error(\"Your browser doesn't support base64 conversions.\");\n e.svg = \"data:image/svg+xml;base64,\" + btoa(unescape(encodeURIComponent(e.svg)));\n }\n e._loadSvg();\n }), this._load);\n }, t.prototype._loadSvg = function() {\n var e = this, n = new Image();\n Ge.crossOrigin(n, this.svg, this._crossorigin), n.src = this.svg, n.onerror = function(i) {\n e._resolve && (n.onerror = null, e.onError.emit(i));\n }, n.onload = function() {\n if (e._resolve) {\n var i = n.width, o = n.height;\n if (!i || !o)\n throw new Error(\"The SVG image must have width and height defined (in pixels), canvas API needs them.\");\n var a = i * e.scale, s = o * e.scale;\n (e._overrideWidth || e._overrideHeight) && (a = e._overrideWidth || e._overrideHeight / o * i, s = e._overrideHeight || e._overrideWidth / i * o), a = Math.round(a), s = Math.round(s);\n var u = e.source;\n u.width = a, u.height = s, u._pixiId = \"canvas_\" + lr(), u.getContext(\"2d\").drawImage(n, 0, 0, i, o, 0, 0, a, s), e._resolve(), e._resolve = null;\n }\n };\n }, t.getSize = function(e) {\n var n = t.SVG_SIZE.exec(e), i = {};\n return n && (i[n[1]] = Math.round(parseFloat(n[3])), i[n[5]] = Math.round(parseFloat(n[7]))), i;\n }, t.prototype.dispose = function() {\n r.prototype.dispose.call(this), this._resolve = null, this._crossorigin = null;\n }, t.test = function(e, n) {\n return n === \"svg\" || typeof e == \"string\" && e.startsWith(\"data:image/svg+xml\") || typeof e == \"string\" && t.SVG_XML.test(e);\n }, t.SVG_XML = /^(<\\?xml[^?]+\\?>)?\\s*(<!--[^(-->)]*-->)?\\s*\\<svg/m, t.SVG_SIZE = /<svg[^>]*(?:\\s(width|height)=('|\")(\\d*(?:\\.\\d+)?)(?:px)?('|\"))[^>]*(?:\\s(width|height)=('|\")(\\d*(?:\\.\\d+)?)(?:px)?('|\"))[^>]*>/i, t;\n }(Ge)\n), fy = (\n /** @class */\n function(r) {\n xt(t, r);\n function t(e, n) {\n var i = this;\n if (n = n || {}, !(e instanceof HTMLVideoElement)) {\n var o = document.createElement(\"video\");\n o.setAttribute(\"preload\", \"auto\"), o.setAttribute(\"webkit-playsinline\", \"\"), o.setAttribute(\"playsinline\", \"\"), typeof e == \"string\" && (e = [e]);\n var a = e[0].src || e[0];\n Ge.crossOrigin(o, a, n.crossorigin);\n for (var s = 0; s < e.length; ++s) {\n var u = document.createElement(\"source\"), h = e[s], f = h.src, l = h.mime;\n f = f || e[s];\n var c = f.split(\"?\").shift().toLowerCase(), d = c.slice(c.lastIndexOf(\".\") + 1);\n l = l || t.MIME_TYPES[d] || \"video/\" + d, u.src = f, u.type = l, o.appendChild(u);\n }\n e = o;\n }\n return i = r.call(this, e) || this, i.noSubImage = !0, i._autoUpdate = !0, i._isConnectedToTicker = !1, i._updateFPS = n.updateFPS || 0, i._msToNextUpdate = 0, i.autoPlay = n.autoPlay !== !1, i._load = null, i._resolve = null, i._onCanPlay = i._onCanPlay.bind(i), i._onError = i._onError.bind(i), n.autoLoad !== !1 && i.load(), i;\n }\n return t.prototype.update = function(e) {\n if (!this.destroyed) {\n var n = kt.shared.elapsedMS * this.source.playbackRate;\n this._msToNextUpdate = Math.floor(this._msToNextUpdate - n), (!this._updateFPS || this._msToNextUpdate <= 0) && (r.prototype.update.call(this), this._msToNextUpdate = this._updateFPS ? Math.floor(1e3 / this._updateFPS) : 0);\n }\n }, t.prototype.load = function() {\n var e = this;\n if (this._load)\n return this._load;\n var n = this.source;\n return (n.readyState === n.HAVE_ENOUGH_DATA || n.readyState === n.HAVE_FUTURE_DATA) && n.width && n.height && (n.complete = !0), n.addEventListener(\"play\", this._onPlayStart.bind(this)), n.addEventListener(\"pause\", this._onPlayStop.bind(this)), this._isSourceReady() ? this._onCanPlay() : (n.addEventListener(\"canplay\", this._onCanPlay), n.addEventListener(\"canplaythrough\", this._onCanPlay), n.addEventListener(\"error\", this._onError, !0)), this._load = new Promise(function(i) {\n e.valid ? i(e) : (e._resolve = i, n.load());\n }), this._load;\n }, t.prototype._onError = function(e) {\n this.source.removeEventListener(\"error\", this._onError, !0), this.onError.emit(e);\n }, t.prototype._isSourcePlaying = function() {\n var e = this.source;\n return !e.paused && !e.ended && this._isSourceReady();\n }, t.prototype._isSourceReady = function() {\n var e = this.source;\n return e.readyState > 2;\n }, t.prototype._onPlayStart = function() {\n this.valid || this._onCanPlay(), this.autoUpdate && !this._isConnectedToTicker && (kt.shared.add(this.update, this), this._isConnectedToTicker = !0);\n }, t.prototype._onPlayStop = function() {\n this._isConnectedToTicker && (kt.shared.remove(this.update, this), this._isConnectedToTicker = !1);\n }, t.prototype._onCanPlay = function() {\n var e = this.source;\n e.removeEventListener(\"canplay\", this._onCanPlay), e.removeEventListener(\"canplaythrough\", this._onCanPlay);\n var n = this.valid;\n this.resize(e.videoWidth, e.videoHeight), !n && this._resolve && (this._resolve(this), this._resolve = null), this._isSourcePlaying() ? this._onPlayStart() : this.autoPlay && e.play();\n }, t.prototype.dispose = function() {\n this._isConnectedToTicker && (kt.shared.remove(this.update, this), this._isConnectedToTicker = !1);\n var e = this.source;\n e && (e.removeEventListener(\"error\", this._onError, !0), e.pause(), e.src = \"\", e.load()), r.prototype.dispose.call(this);\n }, Object.defineProperty(t.prototype, \"autoUpdate\", {\n /** Should the base texture automatically update itself, set to true by default. */\n get: function() {\n return this._autoUpdate;\n },\n set: function(e) {\n e !== this._autoUpdate && (this._autoUpdate = e, !this._autoUpdate && this._isConnectedToTicker ? (kt.shared.remove(this.update, this), this._isConnectedToTicker = !1) : this._autoUpdate && !this._isConnectedToTicker && this._isSourcePlaying() && (kt.shared.add(this.update, this), this._isConnectedToTicker = !0));\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"updateFPS\", {\n /**\n * How many times a second to update the texture from the video. Leave at 0 to update at every render.\n * A lower fps can help performance, as updating the texture at 60fps on a 30ps video may not be efficient.\n */\n get: function() {\n return this._updateFPS;\n },\n set: function(e) {\n e !== this._updateFPS && (this._updateFPS = e);\n },\n enumerable: !1,\n configurable: !0\n }), t.test = function(e, n) {\n return globalThis.HTMLVideoElement && e instanceof HTMLVideoElement || t.TYPES.indexOf(n) > -1;\n }, t.TYPES = [\"mp4\", \"m4v\", \"webm\", \"ogg\", \"ogv\", \"h264\", \"avi\", \"mov\"], t.MIME_TYPES = {\n ogv: \"video/ogg\",\n mov: \"video/quicktime\",\n m4v: \"video/mp4\"\n }, t;\n }(Ge)\n), cy = (\n /** @class */\n function(r) {\n xt(t, r);\n function t(e) {\n return r.call(this, e) || this;\n }\n return t.test = function(e) {\n return !!globalThis.createImageBitmap && typeof ImageBitmap < \"u\" && e instanceof ImageBitmap;\n }, t;\n }(Ge)\n);\nha.push(Dl, cy, uy, fy, ly, Cn, hy, sy);\nvar dy = (\n /** @class */\n function(r) {\n xt(t, r);\n function t() {\n return r !== null && r.apply(this, arguments) || this;\n }\n return t.prototype.upload = function(e, n, i) {\n var o = e.gl;\n o.pixelStorei(o.UNPACK_PREMULTIPLY_ALPHA_WEBGL, n.alphaMode === fe.UNPACK);\n var a = n.realWidth, s = n.realHeight;\n return i.width === a && i.height === s ? o.texSubImage2D(n.target, 0, 0, 0, a, s, n.format, i.type, this.data) : (i.width = a, i.height = s, o.texImage2D(n.target, 0, i.internalFormat, a, s, 0, n.format, i.type, this.data)), !0;\n }, t;\n }(Cn)\n), ca = (\n /** @class */\n function() {\n function r(t, e) {\n this.width = Math.round(t || 100), this.height = Math.round(e || 100), this.stencil = !1, this.depth = !1, this.dirtyId = 0, this.dirtyFormat = 0, this.dirtySize = 0, this.depthTexture = null, this.colorTextures = [], this.glFramebuffers = {}, this.disposeRunner = new Gt(\"disposeFramebuffer\"), this.multisample = wt.NONE;\n }\n return Object.defineProperty(r.prototype, \"colorTexture\", {\n /**\n * Reference to the colorTexture.\n * @readonly\n */\n get: function() {\n return this.colorTextures[0];\n },\n enumerable: !1,\n configurable: !0\n }), r.prototype.addColorTexture = function(t, e) {\n return t === void 0 && (t = 0), this.colorTextures[t] = e || new ut(null, {\n scaleMode: me.NEAREST,\n resolution: 1,\n mipmap: le.OFF,\n width: this.width,\n height: this.height\n }), this.dirtyId++, this.dirtyFormat++, this;\n }, r.prototype.addDepthTexture = function(t) {\n return this.depthTexture = t || new ut(new dy(null, { width: this.width, height: this.height }), {\n scaleMode: me.NEAREST,\n resolution: 1,\n width: this.width,\n height: this.height,\n mipmap: le.OFF,\n format: G.DEPTH_COMPONENT,\n type: j.UNSIGNED_SHORT\n }), this.dirtyId++, this.dirtyFormat++, this;\n }, r.prototype.enableDepth = function() {\n return this.depth = !0, this.dirtyId++, this.dirtyFormat++, this;\n }, r.prototype.enableStencil = function() {\n return this.stencil = !0, this.dirtyId++, this.dirtyFormat++, this;\n }, r.prototype.resize = function(t, e) {\n if (t = Math.round(t), e = Math.round(e), !(t === this.width && e === this.height)) {\n this.width = t, this.height = e, this.dirtyId++, this.dirtySize++;\n for (var n = 0; n < this.colorTextures.length; n++) {\n var i = this.colorTextures[n], o = i.resolution;\n i.setSize(t / o, e / o);\n }\n if (this.depthTexture) {\n var o = this.depthTexture.resolution;\n this.depthTexture.setSize(t / o, e / o);\n }\n }\n }, r.prototype.dispose = function() {\n this.disposeRunner.emit(this, !1);\n }, r.prototype.destroyDepthTexture = function() {\n this.depthTexture && (this.depthTexture.destroy(), this.depthTexture = null, ++this.dirtyId, ++this.dirtyFormat);\n }, r;\n }()\n), Fl = (\n /** @class */\n function(r) {\n xt(t, r);\n function t(e) {\n e === void 0 && (e = {});\n var n = this;\n if (typeof e == \"number\") {\n var i = arguments[0], o = arguments[1], a = arguments[2], s = arguments[3];\n e = { width: i, height: o, scaleMode: a, resolution: s };\n }\n return e.width = e.width || 100, e.height = e.height || 100, e.multisample = e.multisample !== void 0 ? e.multisample : wt.NONE, n = r.call(this, null, e) || this, n.mipmap = le.OFF, n.valid = !0, n.clearColor = [0, 0, 0, 0], n.framebuffer = new ca(n.realWidth, n.realHeight).addColorTexture(0, n), n.framebuffer.multisample = e.multisample, n.maskStack = [], n.filterStack = [{}], n;\n }\n return t.prototype.resize = function(e, n) {\n this.framebuffer.resize(e * this.resolution, n * this.resolution), this.setRealSize(this.framebuffer.width, this.framebuffer.height);\n }, t.prototype.dispose = function() {\n this.framebuffer.dispose(), r.prototype.dispose.call(this);\n }, t.prototype.destroy = function() {\n r.prototype.destroy.call(this), this.framebuffer.destroyDepthTexture(), this.framebuffer = null;\n }, t;\n }(ut)\n), Bl = (\n /** @class */\n function() {\n function r() {\n 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.uvsFloat32 = new Float32Array(8);\n }\n return r.prototype.set = function(t, e, n) {\n var i = e.width, o = e.height;\n if (n) {\n var a = t.width / 2 / i, s = t.height / 2 / o, u = t.x / i + a, h = t.y / o + s;\n n = St.add(n, St.NW), this.x0 = u + a * St.uX(n), this.y0 = h + s * St.uY(n), n = St.add(n, 2), this.x1 = u + a * St.uX(n), this.y1 = h + s * St.uY(n), n = St.add(n, 2), this.x2 = u + a * St.uX(n), this.y2 = h + s * St.uY(n), n = St.add(n, 2), this.x3 = u + a * St.uX(n), this.y3 = h + s * St.uY(n);\n } else\n this.x0 = t.x / i, this.y0 = t.y / o, this.x1 = (t.x + t.width) / i, this.y1 = t.y / o, this.x2 = (t.x + t.width) / i, this.y2 = (t.y + t.height) / o, this.x3 = t.x / i, this.y3 = (t.y + t.height) / o;\n this.uvsFloat32[0] = this.x0, this.uvsFloat32[1] = this.y0, this.uvsFloat32[2] = this.x1, this.uvsFloat32[3] = this.y1, this.uvsFloat32[4] = this.x2, this.uvsFloat32[5] = this.y2, this.uvsFloat32[6] = this.x3, this.uvsFloat32[7] = this.y3;\n }, r.prototype.toString = function() {\n return \"[@pixi/core:TextureUvs \" + (\"x0=\" + this.x0 + \" y0=\" + this.y0 + \" \") + (\"x1=\" + this.x1 + \" y1=\" + this.y1 + \" x2=\" + this.x2 + \" \") + (\"y2=\" + this.y2 + \" x3=\" + this.x3 + \" y3=\" + this.y3) + \"]\";\n }, r;\n }()\n), Du = new Bl();\nfunction qn(r) {\n r.destroy = function() {\n }, r.on = function() {\n }, r.once = function() {\n }, r.emit = function() {\n };\n}\nvar J = (\n /** @class */\n function(r) {\n xt(t, r);\n function t(e, n, i, o, a, s) {\n var u = r.call(this) || this;\n if (u.noFrame = !1, n || (u.noFrame = !0, n = new ht(0, 0, 1, 1)), e instanceof t && (e = e.baseTexture), u.baseTexture = e, u._frame = n, u.trim = o, u.valid = !1, u._uvs = Du, u.uvMatrix = null, u.orig = i || n, u._rotate = Number(a || 0), a === !0)\n u._rotate = 2;\n else if (u._rotate % 2 !== 0)\n throw new Error(\"attempt to use diamond-shaped UVs. If you are sure, set rotation manually\");\n return u.defaultAnchor = s ? new Tt(s.x, s.y) : new Tt(0, 0), u._updateID = 0, u.textureCacheIds = [], e.valid ? u.noFrame ? e.valid && u.onBaseTextureUpdated(e) : u.frame = n : e.once(\"loaded\", u.onBaseTextureUpdated, u), u.noFrame && e.on(\"update\", u.onBaseTextureUpdated, u), u;\n }\n return t.prototype.update = function() {\n this.baseTexture.resource && this.baseTexture.resource.update();\n }, t.prototype.onBaseTextureUpdated = function(e) {\n if (this.noFrame) {\n if (!this.baseTexture.valid)\n return;\n this._frame.width = e.width, this._frame.height = e.height, this.valid = !0, this.updateUvs();\n } else\n this.frame = this._frame;\n this.emit(\"update\", this);\n }, t.prototype.destroy = function(e) {\n if (this.baseTexture) {\n if (e) {\n var n = this.baseTexture.resource;\n n && n.url && Ae[n.url] && t.removeFromCache(n.url), this.baseTexture.destroy();\n }\n this.baseTexture.off(\"loaded\", this.onBaseTextureUpdated, this), this.baseTexture.off(\"update\", this.onBaseTextureUpdated, this), this.baseTexture = null;\n }\n this._frame = null, this._uvs = null, this.trim = null, this.orig = null, this.valid = !1, t.removeFromCache(this), this.textureCacheIds = null;\n }, t.prototype.clone = function() {\n var e = this._frame.clone(), n = this._frame === this.orig ? e : this.orig.clone(), i = new t(this.baseTexture, !this.noFrame && e, n, this.trim && this.trim.clone(), this.rotate, this.defaultAnchor);\n return this.noFrame && (i._frame = e), i;\n }, t.prototype.updateUvs = function() {\n this._uvs === Du && (this._uvs = new Bl()), this._uvs.set(this._frame, this.baseTexture, this.rotate), this._updateID++;\n }, t.from = function(e, n, i) {\n n === void 0 && (n = {}), i === void 0 && (i = k.STRICT_TEXTURE_CACHE);\n var o = typeof e == \"string\", a = null;\n if (o)\n a = e;\n else if (e instanceof ut) {\n if (!e.cacheId) {\n var s = n && n.pixiIdPrefix || \"pixiid\";\n e.cacheId = s + \"-\" + lr(), ut.addToCache(e, e.cacheId);\n }\n a = e.cacheId;\n } else {\n if (!e._pixiId) {\n var s = n && n.pixiIdPrefix || \"pixiid\";\n e._pixiId = s + \"_\" + lr();\n }\n a = e._pixiId;\n }\n var u = Ae[a];\n if (o && i && !u)\n throw new Error('The cacheId \"' + a + '\" does not exist in TextureCache.');\n return !u && !(e instanceof ut) ? (n.resolution || (n.resolution = Di(e)), u = new t(new ut(e, n)), u.baseTexture.cacheId = a, ut.addToCache(u.baseTexture, a), t.addToCache(u, a)) : !u && e instanceof ut && (u = new t(e), t.addToCache(u, a)), u;\n }, t.fromURL = function(e, n) {\n var i = Object.assign({ autoLoad: !1 }, n == null ? void 0 : n.resourceOptions), o = t.from(e, Object.assign({ resourceOptions: i }, n), !1), a = o.baseTexture.resource;\n return o.baseTexture.valid ? Promise.resolve(o) : a.load().then(function() {\n return Promise.resolve(o);\n });\n }, t.fromBuffer = function(e, n, i, o) {\n return new t(ut.fromBuffer(e, n, i, o));\n }, t.fromLoader = function(e, n, i, o) {\n var a = new ut(e, Object.assign({\n scaleMode: k.SCALE_MODE,\n resolution: Di(n)\n }, o)), s = a.resource;\n s instanceof Dl && (s.url = n);\n var u = new t(a);\n return i || (i = n), ut.addToCache(u.baseTexture, i), t.addToCache(u, i), i !== n && (ut.addToCache(u.baseTexture, n), t.addToCache(u, n)), u.baseTexture.valid ? Promise.resolve(u) : new Promise(function(h) {\n u.baseTexture.once(\"loaded\", function() {\n return h(u);\n });\n });\n }, t.addToCache = function(e, n) {\n n && (e.textureCacheIds.indexOf(n) === -1 && e.textureCacheIds.push(n), Ae[n] && console.warn(\"Texture added to the cache with an id [\" + n + \"] that already had an entry\"), Ae[n] = e);\n }, t.removeFromCache = function(e) {\n if (typeof e == \"string\") {\n var n = Ae[e];\n if (n) {\n var i = n.textureCacheIds.indexOf(e);\n return i > -1 && n.textureCacheIds.splice(i, 1), delete Ae[e], n;\n }\n } else if (e && e.textureCacheIds) {\n for (var o = 0; o < e.textureCacheIds.length; ++o)\n Ae[e.textureCacheIds[o]] === e && delete Ae[e.textureCacheIds[o]];\n return e.textureCacheIds.length = 0, e;\n }\n return null;\n }, Object.defineProperty(t.prototype, \"resolution\", {\n /**\n * Returns resolution of baseTexture\n * @readonly\n */\n get: function() {\n return this.baseTexture.resolution;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"frame\", {\n /**\n * The frame specifies the region of the base texture that this texture uses.\n * Please call `updateUvs()` after you change coordinates of `frame` manually.\n */\n get: function() {\n return this._frame;\n },\n set: function(e) {\n this._frame = e, this.noFrame = !1;\n var n = e.x, i = e.y, o = e.width, a = e.height, s = n + o > this.baseTexture.width, u = i + a > this.baseTexture.height;\n if (s || u) {\n var h = s && u ? \"and\" : \"or\", f = \"X: \" + n + \" + \" + o + \" = \" + (n + o) + \" > \" + this.baseTexture.width, l = \"Y: \" + i + \" + \" + a + \" = \" + (i + a) + \" > \" + this.baseTexture.height;\n throw new Error(\"Texture Error: frame does not fit inside the base Texture dimensions: \" + (f + \" \" + h + \" \" + l));\n }\n this.valid = o && a && this.baseTexture.valid, !this.trim && !this.rotate && (this.orig = e), this.valid && this.updateUvs();\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"rotate\", {\n /**\n * Indicates whether the texture is rotated inside the atlas\n * set to 2 to compensate for texture packer rotation\n * set to 6 to compensate for spine packer rotation\n * can be used to rotate or mirror sprites\n * See {@link PIXI.groupD8} for explanation\n */\n get: function() {\n return this._rotate;\n },\n set: function(e) {\n this._rotate = e, this.valid && this.updateUvs();\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"width\", {\n /** The width of the Texture in pixels. */\n get: function() {\n return this.orig.width;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"height\", {\n /** The height of the Texture in pixels. */\n get: function() {\n return this.orig.height;\n },\n enumerable: !1,\n configurable: !0\n }), t.prototype.castToBaseTexture = function() {\n return this.baseTexture;\n }, Object.defineProperty(t, \"EMPTY\", {\n /** An empty texture, used often to not have to create multiple empty textures. Can not be destroyed. */\n get: function() {\n return t._EMPTY || (t._EMPTY = new t(new ut()), qn(t._EMPTY), qn(t._EMPTY.baseTexture)), t._EMPTY;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t, \"WHITE\", {\n /** A white texture of 16x16 size, used for graphics and other things Can not be destroyed. */\n get: function() {\n if (!t._WHITE) {\n var e = k.ADAPTER.createCanvas(16, 16), n = e.getContext(\"2d\");\n e.width = 16, e.height = 16, n.fillStyle = \"white\", n.fillRect(0, 0, 16, 16), t._WHITE = new t(ut.from(e)), qn(t._WHITE), qn(t._WHITE.baseTexture);\n }\n return t._WHITE;\n },\n enumerable: !1,\n configurable: !0\n }), t;\n }(Rn)\n), fr = (\n /** @class */\n function(r) {\n xt(t, r);\n function t(e, n) {\n var i = r.call(this, e, n) || this;\n return i.valid = !0, i.filterFrame = null, i.filterPoolKey = null, i.updateUvs(), i;\n }\n return Object.defineProperty(t.prototype, \"framebuffer\", {\n /**\n * Shortcut to `this.baseTexture.framebuffer`, saves baseTexture cast.\n * @readonly\n */\n get: function() {\n return this.baseTexture.framebuffer;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"multisample\", {\n /**\n * Shortcut to `this.framebuffer.multisample`.\n * @default PIXI.MSAA_QUALITY.NONE\n */\n get: function() {\n return this.framebuffer.multisample;\n },\n set: function(e) {\n this.framebuffer.multisample = e;\n },\n enumerable: !1,\n configurable: !0\n }), t.prototype.resize = function(e, n, i) {\n i === void 0 && (i = !0);\n var o = this.baseTexture.resolution, a = Math.round(e * o) / o, s = Math.round(n * o) / o;\n this.valid = a > 0 && s > 0, this._frame.width = this.orig.width = a, this._frame.height = this.orig.height = s, i && this.baseTexture.resize(a, s), this.updateUvs();\n }, t.prototype.setResolution = function(e) {\n var n = this.baseTexture;\n n.resolution !== e && (n.setResolution(e), this.resize(n.width, n.height, !1));\n }, t.create = function(e) {\n for (var n = arguments, i = [], o = 1; o < arguments.length; o++)\n i[o - 1] = n[o];\n return typeof e == \"number\" && (he(\"6.0.0\", \"Arguments (width, height, scaleMode, resolution) have been deprecated.\"), e = {\n width: e,\n height: i[0],\n scaleMode: i[1],\n resolution: i[2]\n }), new t(new Fl(e));\n }, t;\n }(J)\n), py = (\n /** @class */\n function() {\n function r(t) {\n this.texturePool = {}, this.textureOptions = t || {}, this.enableFullScreen = !1, this._pixelsWidth = 0, this._pixelsHeight = 0;\n }\n return r.prototype.createTexture = function(t, e, n) {\n n === void 0 && (n = wt.NONE);\n var i = new Fl(Object.assign({\n width: t,\n height: e,\n resolution: 1,\n multisample: n\n }, this.textureOptions));\n return new fr(i);\n }, r.prototype.getOptimalTexture = function(t, e, n, i) {\n n === void 0 && (n = 1), i === void 0 && (i = wt.NONE);\n var o;\n t = Math.ceil(t * n - 1e-6), e = Math.ceil(e * n - 1e-6), !this.enableFullScreen || t !== this._pixelsWidth || e !== this._pixelsHeight ? (t = Mi(t), e = Mi(e), o = ((t & 65535) << 16 | e & 65535) >>> 0, i > 1 && (o += i * 4294967296)) : o = i > 1 ? -i : -1, this.texturePool[o] || (this.texturePool[o] = []);\n var a = this.texturePool[o].pop();\n return a || (a = this.createTexture(t, e, i)), a.filterPoolKey = o, a.setResolution(n), a;\n }, r.prototype.getFilterTexture = function(t, e, n) {\n var i = this.getOptimalTexture(t.width, t.height, e || t.resolution, n || wt.NONE);\n return i.filterFrame = t.filterFrame, i;\n }, r.prototype.returnTexture = function(t) {\n var e = t.filterPoolKey;\n t.filterFrame = null, this.texturePool[e].push(t);\n }, r.prototype.returnFilterTexture = function(t) {\n this.returnTexture(t);\n }, r.prototype.clear = function(t) {\n if (t = t !== !1, t)\n for (var e in this.texturePool) {\n var n = this.texturePool[e];\n if (n)\n for (var i = 0; i < n.length; i++)\n n[i].destroy(!0);\n }\n this.texturePool = {};\n }, r.prototype.setScreenSize = function(t) {\n if (!(t.width === this._pixelsWidth && t.height === this._pixelsHeight)) {\n this.enableFullScreen = t.width > 0 && t.height > 0;\n for (var e in this.texturePool)\n if (Number(e) < 0) {\n var n = this.texturePool[e];\n if (n)\n for (var i = 0; i < n.length; i++)\n n[i].destroy(!0);\n this.texturePool[e] = [];\n }\n this._pixelsWidth = t.width, this._pixelsHeight = t.height;\n }\n }, r.SCREEN_KEY = -1, r;\n }()\n), Fu = (\n /** @class */\n function() {\n function r(t, e, n, i, o, a, s) {\n e === void 0 && (e = 0), n === void 0 && (n = !1), i === void 0 && (i = j.FLOAT), this.buffer = t, this.size = e, this.normalized = n, this.type = i, this.stride = o, this.start = a, this.instance = s;\n }\n return r.prototype.destroy = function() {\n this.buffer = null;\n }, r.from = function(t, e, n, i, o) {\n return new r(t, e, n, i, o);\n }, r;\n }()\n), vy = 0, Mt = (\n /** @class */\n function() {\n function r(t, e, n) {\n e === void 0 && (e = !0), n === void 0 && (n = !1), this.data = t || new Float32Array(1), this._glBuffers = {}, this._updateID = 0, this.index = n, this.static = e, this.id = vy++, this.disposeRunner = new Gt(\"disposeBuffer\");\n }\n return r.prototype.update = function(t) {\n t instanceof Array && (t = new Float32Array(t)), this.data = t || this.data, this._updateID++;\n }, r.prototype.dispose = function() {\n this.disposeRunner.emit(this, !1);\n }, r.prototype.destroy = function() {\n this.dispose(), this.data = null;\n }, Object.defineProperty(r.prototype, \"index\", {\n get: function() {\n return this.type === be.ELEMENT_ARRAY_BUFFER;\n },\n /**\n * Flags whether this is an index buffer.\n *\n * Index buffers are of type `ELEMENT_ARRAY_BUFFER`. Note that setting this property to false will make\n * the buffer of type `ARRAY_BUFFER`.\n *\n * For backwards compatibility.\n */\n set: function(t) {\n this.type = t ? be.ELEMENT_ARRAY_BUFFER : be.ARRAY_BUFFER;\n },\n enumerable: !1,\n configurable: !0\n }), r.from = function(t) {\n return t instanceof Array && (t = new Float32Array(t)), new r(t);\n }, r;\n }()\n), _y = {\n Float32Array,\n Uint32Array,\n Int32Array,\n Uint8Array\n};\nfunction my(r, t) {\n for (var e = 0, n = 0, i = {}, o = 0; o < r.length; o++)\n n += t[o], e += r[o].length;\n for (var a = new ArrayBuffer(e * 4), s = null, u = 0, o = 0; o < r.length; o++) {\n var h = t[o], f = r[o], l = Pl(f);\n i[l] || (i[l] = new _y[l](a)), s = i[l];\n for (var c = 0; c < f.length; c++) {\n var d = (c / h | 0) * n + u, p = c % h;\n s[d + p] = f[c];\n }\n u += h;\n }\n return new Float32Array(a);\n}\nvar Bu = { 5126: 4, 5123: 2, 5121: 1 }, gy = 0, yy = {\n Float32Array,\n Uint32Array,\n Int32Array,\n Uint8Array,\n Uint16Array\n}, Mn = (\n /** @class */\n function() {\n function r(t, e) {\n t === void 0 && (t = []), e === void 0 && (e = {}), this.buffers = t, this.indexBuffer = null, this.attributes = e, this.glVertexArrayObjects = {}, this.id = gy++, this.instanced = !1, this.instanceCount = 1, this.disposeRunner = new Gt(\"disposeGeometry\"), this.refCount = 0;\n }\n return r.prototype.addAttribute = function(t, e, n, i, o, a, s, u) {\n if (n === void 0 && (n = 0), i === void 0 && (i = !1), u === void 0 && (u = !1), !e)\n throw new Error(\"You must pass a buffer when creating an attribute\");\n e instanceof Mt || (e instanceof Array && (e = new Float32Array(e)), e = new Mt(e));\n var h = t.split(\"|\");\n if (h.length > 1) {\n for (var f = 0; f < h.length; f++)\n this.addAttribute(h[f], e, n, i, o);\n return this;\n }\n var l = this.buffers.indexOf(e);\n return l === -1 && (this.buffers.push(e), l = this.buffers.length - 1), this.attributes[t] = new Fu(l, n, i, o, a, s, u), this.instanced = this.instanced || u, this;\n }, r.prototype.getAttribute = function(t) {\n return this.attributes[t];\n }, r.prototype.getBuffer = function(t) {\n return this.buffers[this.getAttribute(t).buffer];\n }, r.prototype.addIndex = function(t) {\n return t instanceof Mt || (t instanceof Array && (t = new Uint16Array(t)), t = new Mt(t)), t.type = be.ELEMENT_ARRAY_BUFFER, this.indexBuffer = t, this.buffers.indexOf(t) === -1 && this.buffers.push(t), this;\n }, r.prototype.getIndex = function() {\n return this.indexBuffer;\n }, r.prototype.interleave = function() {\n if (this.buffers.length === 1 || this.buffers.length === 2 && this.indexBuffer)\n return this;\n var t = [], e = [], n = new Mt(), i;\n for (i in this.attributes) {\n var o = this.attributes[i], a = this.buffers[o.buffer];\n t.push(a.data), e.push(o.size * Bu[o.type] / 4), o.buffer = 0;\n }\n for (n.data = my(t, e), i = 0; i < this.buffers.length; i++)\n this.buffers[i] !== this.indexBuffer && this.buffers[i].destroy();\n return this.buffers = [n], this.indexBuffer && this.buffers.push(this.indexBuffer), this;\n }, r.prototype.getSize = function() {\n for (var t in this.attributes) {\n var e = this.attributes[t], n = this.buffers[e.buffer];\n return n.data.length / (e.stride / 4 || e.size);\n }\n return 0;\n }, r.prototype.dispose = function() {\n this.disposeRunner.emit(this, !1);\n }, r.prototype.destroy = function() {\n this.dispose(), this.buffers = null, this.indexBuffer = null, this.attributes = null;\n }, r.prototype.clone = function() {\n for (var t = new r(), e = 0; e < this.buffers.length; e++)\n t.buffers[e] = new Mt(this.buffers[e].data.slice(0));\n for (var e in this.attributes) {\n var n = this.attributes[e];\n t.attributes[e] = new Fu(n.buffer, n.size, n.normalized, n.type, n.stride, n.start, n.instance);\n }\n return this.indexBuffer && (t.indexBuffer = t.buffers[this.buffers.indexOf(this.indexBuffer)], t.indexBuffer.type = be.ELEMENT_ARRAY_BUFFER), t;\n }, r.merge = function(t) {\n for (var e = new r(), n = [], i = [], o = [], a, s = 0; s < t.length; s++) {\n a = t[s];\n for (var u = 0; u < a.buffers.length; u++)\n i[u] = i[u] || 0, i[u] += a.buffers[u].data.length, o[u] = 0;\n }\n for (var s = 0; s < a.buffers.length; s++)\n n[s] = new yy[Pl(a.buffers[s].data)](i[s]), e.buffers[s] = new Mt(n[s]);\n for (var s = 0; s < t.length; s++) {\n a = t[s];\n for (var u = 0; u < a.buffers.length; u++)\n n[u].set(a.buffers[u].data, o[u]), o[u] += a.buffers[u].data.length;\n }\n if (e.attributes = a.attributes, a.indexBuffer) {\n e.indexBuffer = e.buffers[a.buffers.indexOf(a.indexBuffer)], e.indexBuffer.type = be.ELEMENT_ARRAY_BUFFER;\n for (var h = 0, f = 0, l = 0, c = 0, s = 0; s < a.buffers.length; s++)\n if (a.buffers[s] !== a.indexBuffer) {\n c = s;\n break;\n }\n for (var s in a.attributes) {\n var d = a.attributes[s];\n (d.buffer | 0) === c && (f += d.size * Bu[d.type] / 4);\n }\n for (var s = 0; s < t.length; s++) {\n for (var p = t[s].indexBuffer.data, u = 0; u < p.length; u++)\n e.indexBuffer.data[u + l] += h;\n h += t[s].buffers[c].data.length / f, l += p.length;\n }\n }\n return e;\n }, r;\n }()\n), by = (\n /** @class */\n function(r) {\n xt(t, r);\n function t() {\n var e = r.call(this) || this;\n return e.addAttribute(\"aVertexPosition\", new Float32Array([\n 0,\n 0,\n 1,\n 0,\n 1,\n 1,\n 0,\n 1\n ])).addIndex([0, 1, 3, 2]), e;\n }\n return t;\n }(Mn)\n), Nl = (\n /** @class */\n function(r) {\n xt(t, r);\n function t() {\n var e = r.call(this) || this;\n return e.vertices = new Float32Array([\n -1,\n -1,\n 1,\n -1,\n 1,\n 1,\n -1,\n 1\n ]), e.uvs = new Float32Array([\n 0,\n 0,\n 1,\n 0,\n 1,\n 1,\n 0,\n 1\n ]), e.vertexBuffer = new Mt(e.vertices), e.uvBuffer = new Mt(e.uvs), e.addAttribute(\"aVertexPosition\", e.vertexBuffer).addAttribute(\"aTextureCoord\", e.uvBuffer).addIndex([0, 1, 2, 0, 2, 3]), e;\n }\n return t.prototype.map = function(e, n) {\n var i = 0, o = 0;\n return this.uvs[0] = i, this.uvs[1] = o, this.uvs[2] = i + n.width / e.width, this.uvs[3] = o, this.uvs[4] = i + n.width / e.width, this.uvs[5] = o + n.height / e.height, this.uvs[6] = i, this.uvs[7] = o + n.height / e.height, i = n.x, o = n.y, this.vertices[0] = i, this.vertices[1] = o, this.vertices[2] = i + n.width, this.vertices[3] = o, this.vertices[4] = i + n.width, this.vertices[5] = o + n.height, this.vertices[6] = i, this.vertices[7] = o + n.height, this.invalidate(), this;\n }, t.prototype.invalidate = function() {\n return this.vertexBuffer._updateID++, this.uvBuffer._updateID++, this;\n }, t;\n }(Mn)\n), xy = 0, ur = (\n /** @class */\n function() {\n function r(t, e, n) {\n this.group = !0, this.syncUniforms = {}, this.dirtyId = 0, this.id = xy++, this.static = !!e, this.ubo = !!n, t instanceof Mt ? (this.buffer = t, this.buffer.type = be.UNIFORM_BUFFER, this.autoManage = !1, this.ubo = !0) : (this.uniforms = t, this.ubo && (this.buffer = new Mt(new Float32Array(1)), this.buffer.type = be.UNIFORM_BUFFER, this.autoManage = !0));\n }\n return r.prototype.update = function() {\n this.dirtyId++, !this.autoManage && this.buffer && this.buffer.update();\n }, r.prototype.add = function(t, e, n) {\n if (!this.ubo)\n this.uniforms[t] = new r(e, n);\n else\n throw new Error(\"[UniformGroup] uniform groups in ubo mode cannot be modified, or have uniform groups nested in them\");\n }, r.from = function(t, e, n) {\n return new r(t, e, n);\n }, r.uboFrom = function(t, e) {\n return new r(t, e ?? !0, !0);\n }, r;\n }()\n), Ey = (\n /** @class */\n function() {\n function r() {\n this.renderTexture = null, this.target = null, this.legacy = !1, this.resolution = 1, this.multisample = wt.NONE, this.sourceFrame = new ht(), this.destinationFrame = new ht(), this.bindingSourceFrame = new ht(), this.bindingDestinationFrame = new ht(), this.filters = [], this.transform = null;\n }\n return r.prototype.clear = function() {\n this.target = null, this.filters = null, this.renderTexture = null;\n }, r;\n }()\n), $n = [new Tt(), new Tt(), new Tt(), new Tt()], vo = new Dt(), Ty = (\n /** @class */\n function() {\n function r(t) {\n this.renderer = t, this.defaultFilterStack = [{}], this.texturePool = new py(), this.texturePool.setScreenSize(t.view), this.statePool = [], this.quad = new by(), this.quadUv = new Nl(), this.tempRect = new ht(), this.activeState = {}, this.globalUniforms = new ur({\n outputFrame: new ht(),\n inputSize: new Float32Array(4),\n inputPixel: new Float32Array(4),\n inputClamp: new Float32Array(4),\n resolution: 1,\n // legacy variables\n filterArea: new Float32Array(4),\n filterClamp: new Float32Array(4)\n }, !0), this.forceClear = !1, this.useMaxPadding = !1;\n }\n return r.prototype.push = function(t, e) {\n for (var n, i, o = this.renderer, a = this.defaultFilterStack, s = this.statePool.pop() || new Ey(), u = this.renderer.renderTexture, h = e[0].resolution, f = e[0].multisample, l = e[0].padding, c = e[0].autoFit, d = (n = e[0].legacy) !== null && n !== void 0 ? n : !0, p = 1; p < e.length; p++) {\n var v = e[p];\n h = Math.min(h, v.resolution), f = Math.min(f, v.multisample), l = this.useMaxPadding ? Math.max(l, v.padding) : l + v.padding, c = c && v.autoFit, d = d || ((i = v.legacy) !== null && i !== void 0 ? i : !0);\n }\n a.length === 1 && (this.defaultFilterStack[0].renderTexture = u.current), a.push(s), s.resolution = h, s.multisample = f, s.legacy = d, s.target = t, s.sourceFrame.copyFrom(t.filterArea || t.getBounds(!0)), s.sourceFrame.pad(l);\n var _ = this.tempRect.copyFrom(u.sourceFrame);\n o.projection.transform && this.transformAABB(vo.copyFrom(o.projection.transform).invert(), _), c ? (s.sourceFrame.fit(_), (s.sourceFrame.width <= 0 || s.sourceFrame.height <= 0) && (s.sourceFrame.width = 0, s.sourceFrame.height = 0)) : s.sourceFrame.intersects(_) || (s.sourceFrame.width = 0, s.sourceFrame.height = 0), this.roundFrame(s.sourceFrame, u.current ? u.current.resolution : o.resolution, u.sourceFrame, u.destinationFrame, o.projection.transform), s.renderTexture = this.getOptimalFilterTexture(s.sourceFrame.width, s.sourceFrame.height, h, f), s.filters = e, s.destinationFrame.width = s.renderTexture.width, s.destinationFrame.height = s.renderTexture.height;\n var g = this.tempRect;\n g.x = 0, g.y = 0, g.width = s.sourceFrame.width, g.height = s.sourceFrame.height, s.renderTexture.filterFrame = s.sourceFrame, s.bindingSourceFrame.copyFrom(u.sourceFrame), s.bindingDestinationFrame.copyFrom(u.destinationFrame), s.transform = o.projection.transform, o.projection.transform = null, u.bind(s.renderTexture, s.sourceFrame, g), o.framebuffer.clear(0, 0, 0, 0);\n }, r.prototype.pop = function() {\n var t = this.defaultFilterStack, e = t.pop(), n = e.filters;\n this.activeState = e;\n var i = this.globalUniforms.uniforms;\n i.outputFrame = e.sourceFrame, i.resolution = e.resolution;\n var o = i.inputSize, a = i.inputPixel, s = i.inputClamp;\n if (o[0] = e.destinationFrame.width, o[1] = e.destinationFrame.height, o[2] = 1 / o[0], o[3] = 1 / o[1], a[0] = Math.round(o[0] * e.resolution), a[1] = Math.round(o[1] * e.resolution), a[2] = 1 / a[0], a[3] = 1 / a[1], s[0] = 0.5 * a[2], s[1] = 0.5 * a[3], s[2] = e.sourceFrame.width * o[2] - 0.5 * a[2], s[3] = e.sourceFrame.height * o[3] - 0.5 * a[3], e.legacy) {\n var u = i.filterArea;\n u[0] = e.destinationFrame.width, u[1] = e.destinationFrame.height, u[2] = e.sourceFrame.x, u[3] = e.sourceFrame.y, i.filterClamp = i.inputClamp;\n }\n this.globalUniforms.update();\n var h = t[t.length - 1];\n if (this.renderer.framebuffer.blit(), n.length === 1)\n n[0].apply(this, e.renderTexture, h.renderTexture, ae.BLEND, e), this.returnFilterTexture(e.renderTexture);\n else {\n var f = e.renderTexture, l = this.getOptimalFilterTexture(f.width, f.height, e.resolution);\n l.filterFrame = f.filterFrame;\n var c = 0;\n for (c = 0; c < n.length - 1; ++c) {\n c === 1 && e.multisample > 1 && (l = this.getOptimalFilterTexture(f.width, f.height, e.resolution), l.filterFrame = f.filterFrame), n[c].apply(this, f, l, ae.CLEAR, e);\n var d = f;\n f = l, l = d;\n }\n n[c].apply(this, f, h.renderTexture, ae.BLEND, e), c > 1 && e.multisample > 1 && this.returnFilterTexture(e.renderTexture), this.returnFilterTexture(f), this.returnFilterTexture(l);\n }\n e.clear(), this.statePool.push(e);\n }, r.prototype.bindAndClear = function(t, e) {\n e === void 0 && (e = ae.CLEAR);\n var n = this.renderer, i = n.renderTexture, o = n.state;\n if (t === this.defaultFilterStack[this.defaultFilterStack.length - 1].renderTexture ? this.renderer.projection.transform = this.activeState.transform : this.renderer.projection.transform = null, t && t.filterFrame) {\n var a = this.tempRect;\n a.x = 0, a.y = 0, a.width = t.filterFrame.width, a.height = t.filterFrame.height, i.bind(t, t.filterFrame, a);\n } else\n t !== this.defaultFilterStack[this.defaultFilterStack.length - 1].renderTexture ? i.bind(t) : this.renderer.renderTexture.bind(t, this.activeState.bindingSourceFrame, this.activeState.bindingDestinationFrame);\n var s = o.stateId & 1 || this.forceClear;\n (e === ae.CLEAR || e === ae.BLIT && s) && this.renderer.framebuffer.clear(0, 0, 0, 0);\n }, r.prototype.applyFilter = function(t, e, n, i) {\n var o = this.renderer;\n o.state.set(t.state), this.bindAndClear(n, i), t.uniforms.uSampler = e, t.uniforms.filterGlobals = this.globalUniforms, o.shader.bind(t), t.legacy = !!t.program.attributeData.aTextureCoord, t.legacy ? (this.quadUv.map(e._frame, e.filterFrame), o.geometry.bind(this.quadUv), o.geometry.draw(se.TRIANGLES)) : (o.geometry.bind(this.quad), o.geometry.draw(se.TRIANGLE_STRIP));\n }, r.prototype.calculateSpriteMatrix = function(t, e) {\n var n = this.activeState, i = n.sourceFrame, o = n.destinationFrame, a = e._texture.orig, s = t.set(o.width, 0, 0, o.height, i.x, i.y), u = e.worldTransform.copyTo(Dt.TEMP_MATRIX);\n return u.invert(), s.prepend(u), s.scale(1 / a.width, 1 / a.height), s.translate(e.anchor.x, e.anchor.y), s;\n }, r.prototype.destroy = function() {\n this.renderer = null, this.texturePool.clear(!1);\n }, r.prototype.getOptimalFilterTexture = function(t, e, n, i) {\n return n === void 0 && (n = 1), i === void 0 && (i = wt.NONE), this.texturePool.getOptimalTexture(t, e, n, i);\n }, r.prototype.getFilterTexture = function(t, e, n) {\n if (typeof t == \"number\") {\n var i = t;\n t = e, e = i;\n }\n t = t || this.activeState.renderTexture;\n var o = this.texturePool.getOptimalTexture(t.width, t.height, e || t.resolution, n || wt.NONE);\n return o.filterFrame = t.filterFrame, o;\n }, r.prototype.returnFilterTexture = function(t) {\n this.texturePool.returnTexture(t);\n }, r.prototype.emptyPool = function() {\n this.texturePool.clear(!0);\n }, r.prototype.resize = function() {\n this.texturePool.setScreenSize(this.renderer.view);\n }, r.prototype.transformAABB = function(t, e) {\n var n = $n[0], i = $n[1], o = $n[2], a = $n[3];\n n.set(e.left, e.top), i.set(e.left, e.bottom), o.set(e.right, e.top), a.set(e.right, e.bottom), t.apply(n, n), t.apply(i, i), t.apply(o, o), t.apply(a, a);\n var s = Math.min(n.x, i.x, o.x, a.x), u = Math.min(n.y, i.y, o.y, a.y), h = Math.max(n.x, i.x, o.x, a.x), f = Math.max(n.y, i.y, o.y, a.y);\n e.x = s, e.y = u, e.width = h - s, e.height = f - u;\n }, r.prototype.roundFrame = function(t, e, n, i, o) {\n if (!(t.width <= 0 || t.height <= 0 || n.width <= 0 || n.height <= 0)) {\n if (o) {\n var a = o.a, s = o.b, u = o.c, h = o.d;\n if ((Math.abs(s) > 1e-4 || Math.abs(u) > 1e-4) && (Math.abs(a) > 1e-4 || Math.abs(h) > 1e-4))\n return;\n }\n o = o ? vo.copyFrom(o) : vo.identity(), o.translate(-n.x, -n.y).scale(i.width / n.width, i.height / n.height).translate(i.x, i.y), this.transformAABB(o, t), t.ceil(e), this.transformAABB(o.invert(), t);\n }\n }, r;\n }()\n), ji = (\n /** @class */\n function() {\n function r(t) {\n this.renderer = t;\n }\n return r.prototype.flush = function() {\n }, r.prototype.destroy = function() {\n this.renderer = null;\n }, r.prototype.start = function() {\n }, r.prototype.stop = function() {\n this.flush();\n }, r.prototype.render = function(t) {\n }, r;\n }()\n), wy = (\n /** @class */\n function() {\n function r(t) {\n this.renderer = t, this.emptyRenderer = new ji(t), this.currentRenderer = this.emptyRenderer;\n }\n return r.prototype.setObjectRenderer = function(t) {\n this.currentRenderer !== t && (this.currentRenderer.stop(), this.currentRenderer = t, this.currentRenderer.start());\n }, r.prototype.flush = function() {\n this.setObjectRenderer(this.emptyRenderer);\n }, r.prototype.reset = function() {\n this.setObjectRenderer(this.emptyRenderer);\n }, r.prototype.copyBoundTextures = function(t, e) {\n for (var n = this.renderer.texture.boundTextures, i = e - 1; i >= 0; --i)\n t[i] = n[i] || null, t[i] && (t[i]._batchLocation = i);\n }, r.prototype.boundArray = function(t, e, n, i) {\n for (var o = t.elements, a = t.ids, s = t.count, u = 0, h = 0; h < s; h++) {\n var f = o[h], l = f._batchLocation;\n if (l >= 0 && l < i && e[l] === f) {\n a[h] = l;\n continue;\n }\n for (; u < i; ) {\n var c = e[u];\n if (c && c._batchEnabled === n && c._batchLocation === u) {\n u++;\n continue;\n }\n a[h] = u, f._batchLocation = u, e[u] = f;\n break;\n }\n }\n }, r.prototype.destroy = function() {\n this.renderer = null;\n }, r;\n }()\n), Nu = 0, Sy = (\n /** @class */\n function() {\n function r(t) {\n this.renderer = t, this.webGLVersion = 1, this.extensions = {}, this.supports = {\n uint32Indices: !1\n }, this.handleContextLost = this.handleContextLost.bind(this), this.handleContextRestored = this.handleContextRestored.bind(this), t.view.addEventListener(\"webglcontextlost\", this.handleContextLost, !1), t.view.addEventListener(\"webglcontextrestored\", this.handleContextRestored, !1);\n }\n return Object.defineProperty(r.prototype, \"isLost\", {\n /**\n * `true` if the context is lost\n * @readonly\n */\n get: function() {\n return !this.gl || this.gl.isContextLost();\n },\n enumerable: !1,\n configurable: !0\n }), r.prototype.contextChange = function(t) {\n this.gl = t, this.renderer.gl = t, this.renderer.CONTEXT_UID = Nu++;\n }, r.prototype.initFromContext = function(t) {\n this.gl = t, this.validateContext(t), this.renderer.gl = t, this.renderer.CONTEXT_UID = Nu++, this.renderer.runners.contextChange.emit(t);\n }, r.prototype.initFromOptions = function(t) {\n var e = this.createContext(this.renderer.view, t);\n this.initFromContext(e);\n }, r.prototype.createContext = function(t, e) {\n var n;\n if (k.PREFER_ENV >= Ie.WEBGL2 && (n = t.getContext(\"webgl2\", e)), n)\n this.webGLVersion = 2;\n else if (this.webGLVersion = 1, n = t.getContext(\"webgl\", e) || t.getContext(\"experimental-webgl\", e), !n)\n throw new Error(\"This browser does not support WebGL. Try using the canvas renderer\");\n return this.gl = n, this.getExtensions(), this.gl;\n }, r.prototype.getExtensions = function() {\n var t = this.gl, e = {\n loseContext: t.getExtension(\"WEBGL_lose_context\"),\n anisotropicFiltering: t.getExtension(\"EXT_texture_filter_anisotropic\"),\n floatTextureLinear: t.getExtension(\"OES_texture_float_linear\"),\n s3tc: t.getExtension(\"WEBGL_compressed_texture_s3tc\"),\n s3tc_sRGB: t.getExtension(\"WEBGL_compressed_texture_s3tc_srgb\"),\n etc: t.getExtension(\"WEBGL_compressed_texture_etc\"),\n etc1: t.getExtension(\"WEBGL_compressed_texture_etc1\"),\n pvrtc: t.getExtension(\"WEBGL_compressed_texture_pvrtc\") || t.getExtension(\"WEBKIT_WEBGL_compressed_texture_pvrtc\"),\n atc: t.getExtension(\"WEBGL_compressed_texture_atc\"),\n astc: t.getExtension(\"WEBGL_compressed_texture_astc\")\n };\n this.webGLVersion === 1 ? Object.assign(this.extensions, e, {\n drawBuffers: t.getExtension(\"WEBGL_draw_buffers\"),\n depthTexture: t.getExtension(\"WEBGL_depth_texture\"),\n vertexArrayObject: t.getExtension(\"OES_vertex_array_object\") || t.getExtension(\"MOZ_OES_vertex_array_object\") || t.getExtension(\"WEBKIT_OES_vertex_array_object\"),\n uint32ElementIndex: t.getExtension(\"OES_element_index_uint\"),\n // Floats and half-floats\n floatTexture: t.getExtension(\"OES_texture_float\"),\n floatTextureLinear: t.getExtension(\"OES_texture_float_linear\"),\n textureHalfFloat: t.getExtension(\"OES_texture_half_float\"),\n textureHalfFloatLinear: t.getExtension(\"OES_texture_half_float_linear\")\n }) : this.webGLVersion === 2 && Object.assign(this.extensions, e, {\n // Floats and half-floats\n colorBufferFloat: t.getExtension(\"EXT_color_buffer_float\")\n });\n }, r.prototype.handleContextLost = function(t) {\n var e = this;\n t.preventDefault(), setTimeout(function() {\n e.gl.isContextLost() && e.extensions.loseContext && e.extensions.loseContext.restoreContext();\n }, 0);\n }, r.prototype.handleContextRestored = function() {\n this.renderer.runners.contextChange.emit(this.gl);\n }, r.prototype.destroy = function() {\n var t = this.renderer.view;\n this.renderer = null, t.removeEventListener(\"webglcontextlost\", this.handleContextLost), t.removeEventListener(\"webglcontextrestored\", this.handleContextRestored), this.gl.useProgram(null), this.extensions.loseContext && this.extensions.loseContext.loseContext();\n }, r.prototype.postrender = function() {\n this.renderer.renderingToScreen && this.gl.flush();\n }, r.prototype.validateContext = function(t) {\n var e = t.getContextAttributes(), n = \"WebGL2RenderingContext\" in globalThis && t instanceof globalThis.WebGL2RenderingContext;\n n && (this.webGLVersion = 2), e && !e.stencil && console.warn(\"Provided WebGL context does not have a stencil buffer, masks may not render correctly\");\n var i = n || !!t.getExtension(\"OES_element_index_uint\");\n this.supports.uint32Indices = i, i || console.warn(\"Provided WebGL context does not support 32 index buffer, complex graphics may not render correctly\");\n }, r;\n }()\n), Ay = (\n /** @class */\n function() {\n function r(t) {\n this.framebuffer = t, this.stencil = null, this.dirtyId = -1, this.dirtyFormat = -1, this.dirtySize = -1, this.multisample = wt.NONE, this.msaaBuffer = null, this.blitFramebuffer = null, this.mipLevel = 0;\n }\n return r;\n }()\n), Py = new ht(), Oy = (\n /** @class */\n function() {\n function r(t) {\n this.renderer = t, this.managedFramebuffers = [], this.unknownFramebuffer = new ca(10, 10), this.msaaSamples = null;\n }\n return r.prototype.contextChange = function() {\n this.disposeAll(!0);\n var t = this.gl = this.renderer.gl;\n if (this.CONTEXT_UID = this.renderer.CONTEXT_UID, this.current = this.unknownFramebuffer, this.viewport = new ht(), this.hasMRT = !0, this.writeDepthTexture = !0, this.renderer.context.webGLVersion === 1) {\n var e = this.renderer.context.extensions.drawBuffers, n = this.renderer.context.extensions.depthTexture;\n k.PREFER_ENV === Ie.WEBGL_LEGACY && (e = null, n = null), e ? t.drawBuffers = function(i) {\n return e.drawBuffersWEBGL(i);\n } : (this.hasMRT = !1, t.drawBuffers = function() {\n }), n || (this.writeDepthTexture = !1);\n } else\n this.msaaSamples = t.getInternalformatParameter(t.RENDERBUFFER, t.RGBA8, t.SAMPLES);\n }, r.prototype.bind = function(t, e, n) {\n n === void 0 && (n = 0);\n var i = this.gl;\n if (t) {\n var o = t.glFramebuffers[this.CONTEXT_UID] || this.initFramebuffer(t);\n this.current !== t && (this.current = t, i.bindFramebuffer(i.FRAMEBUFFER, o.framebuffer)), o.mipLevel !== n && (t.dirtyId++, t.dirtyFormat++, o.mipLevel = n), o.dirtyId !== t.dirtyId && (o.dirtyId = t.dirtyId, o.dirtyFormat !== t.dirtyFormat ? (o.dirtyFormat = t.dirtyFormat, o.dirtySize = t.dirtySize, this.updateFramebuffer(t, n)) : o.dirtySize !== t.dirtySize && (o.dirtySize = t.dirtySize, this.resizeFramebuffer(t)));\n for (var a = 0; a < t.colorTextures.length; a++) {\n var s = t.colorTextures[a];\n this.renderer.texture.unbind(s.parentTextureArray || s);\n }\n if (t.depthTexture && this.renderer.texture.unbind(t.depthTexture), e) {\n var u = e.width >> n, h = e.height >> n, f = u / e.width;\n this.setViewport(e.x * f, e.y * f, u, h);\n } else {\n var u = t.width >> n, h = t.height >> n;\n this.setViewport(0, 0, u, h);\n }\n } else\n this.current && (this.current = null, i.bindFramebuffer(i.FRAMEBUFFER, null)), e ? this.setViewport(e.x, e.y, e.width, e.height) : this.setViewport(0, 0, this.renderer.width, this.renderer.height);\n }, r.prototype.setViewport = function(t, e, n, i) {\n var o = this.viewport;\n t = Math.round(t), e = Math.round(e), n = Math.round(n), i = Math.round(i), (o.width !== n || o.height !== i || o.x !== t || o.y !== e) && (o.x = t, o.y = e, o.width = n, o.height = i, this.gl.viewport(t, e, n, i));\n }, Object.defineProperty(r.prototype, \"size\", {\n /**\n * Get the size of the current width and height. Returns object with `width` and `height` values.\n * @readonly\n */\n get: function() {\n return this.current ? { x: 0, y: 0, width: this.current.width, height: this.current.height } : { x: 0, y: 0, width: this.renderer.width, height: this.renderer.height };\n },\n enumerable: !1,\n configurable: !0\n }), r.prototype.clear = function(t, e, n, i, o) {\n o === void 0 && (o = wi.COLOR | wi.DEPTH);\n var a = this.gl;\n a.clearColor(t, e, n, i), a.clear(o);\n }, r.prototype.initFramebuffer = function(t) {\n var e = this.gl, n = new Ay(e.createFramebuffer());\n return n.multisample = this.detectSamples(t.multisample), t.glFramebuffers[this.CONTEXT_UID] = n, this.managedFramebuffers.push(t), t.disposeRunner.add(this), n;\n }, r.prototype.resizeFramebuffer = function(t) {\n var e = this.gl, n = t.glFramebuffers[this.CONTEXT_UID];\n n.msaaBuffer && (e.bindRenderbuffer(e.RENDERBUFFER, n.msaaBuffer), e.renderbufferStorageMultisample(e.RENDERBUFFER, n.multisample, e.RGBA8, t.width, t.height)), n.stencil && (e.bindRenderbuffer(e.RENDERBUFFER, n.stencil), n.msaaBuffer ? e.renderbufferStorageMultisample(e.RENDERBUFFER, n.multisample, e.DEPTH24_STENCIL8, t.width, t.height) : e.renderbufferStorage(e.RENDERBUFFER, e.DEPTH_STENCIL, t.width, t.height));\n var i = t.colorTextures, o = i.length;\n e.drawBuffers || (o = Math.min(o, 1));\n for (var a = 0; a < o; a++) {\n var s = i[a], u = s.parentTextureArray || s;\n this.renderer.texture.bind(u, 0);\n }\n t.depthTexture && this.writeDepthTexture && this.renderer.texture.bind(t.depthTexture, 0);\n }, r.prototype.updateFramebuffer = function(t, e) {\n var n = this.gl, i = t.glFramebuffers[this.CONTEXT_UID], o = t.colorTextures, a = o.length;\n n.drawBuffers || (a = Math.min(a, 1)), i.multisample > 1 && this.canMultisampleFramebuffer(t) ? (i.msaaBuffer = i.msaaBuffer || n.createRenderbuffer(), n.bindRenderbuffer(n.RENDERBUFFER, i.msaaBuffer), n.renderbufferStorageMultisample(n.RENDERBUFFER, i.multisample, n.RGBA8, t.width, t.height), n.framebufferRenderbuffer(n.FRAMEBUFFER, n.COLOR_ATTACHMENT0, n.RENDERBUFFER, i.msaaBuffer)) : i.msaaBuffer && (n.deleteRenderbuffer(i.msaaBuffer), i.msaaBuffer = null, i.blitFramebuffer && (i.blitFramebuffer.dispose(), i.blitFramebuffer = null));\n for (var s = [], u = 0; u < a; u++) {\n var h = o[u], f = h.parentTextureArray || h;\n this.renderer.texture.bind(f, 0), !(u === 0 && i.msaaBuffer) && (n.framebufferTexture2D(n.FRAMEBUFFER, n.COLOR_ATTACHMENT0 + u, h.target, f._glTextures[this.CONTEXT_UID].texture, e), s.push(n.COLOR_ATTACHMENT0 + u));\n }\n if (s.length > 1 && n.drawBuffers(s), t.depthTexture) {\n var l = this.writeDepthTexture;\n if (l) {\n var c = t.depthTexture;\n this.renderer.texture.bind(c, 0), n.framebufferTexture2D(n.FRAMEBUFFER, n.DEPTH_ATTACHMENT, n.TEXTURE_2D, c._glTextures[this.CONTEXT_UID].texture, e);\n }\n }\n (t.stencil || t.depth) && !(t.depthTexture && this.writeDepthTexture) ? (i.stencil = i.stencil || n.createRenderbuffer(), n.bindRenderbuffer(n.RENDERBUFFER, i.stencil), i.msaaBuffer ? n.renderbufferStorageMultisample(n.RENDERBUFFER, i.multisample, n.DEPTH24_STENCIL8, t.width, t.height) : n.renderbufferStorage(n.RENDERBUFFER, n.DEPTH_STENCIL, t.width, t.height), n.framebufferRenderbuffer(n.FRAMEBUFFER, n.DEPTH_STENCIL_ATTACHMENT, n.RENDERBUFFER, i.stencil)) : i.stencil && (n.deleteRenderbuffer(i.stencil), i.stencil = null);\n }, r.prototype.canMultisampleFramebuffer = function(t) {\n return this.renderer.context.webGLVersion !== 1 && t.colorTextures.length <= 1 && !t.depthTexture;\n }, r.prototype.detectSamples = function(t) {\n var e = this.msaaSamples, n = wt.NONE;\n if (t <= 1 || e === null)\n return n;\n for (var i = 0; i < e.length; i++)\n if (e[i] <= t) {\n n = e[i];\n break;\n }\n return n === 1 && (n = wt.NONE), n;\n }, r.prototype.blit = function(t, e, n) {\n var i = this, o = i.current, a = i.renderer, s = i.gl, u = i.CONTEXT_UID;\n if (a.context.webGLVersion === 2 && o) {\n var h = o.glFramebuffers[u];\n if (h) {\n if (!t) {\n if (!h.msaaBuffer)\n return;\n var f = o.colorTextures[0];\n if (!f)\n return;\n h.blitFramebuffer || (h.blitFramebuffer = new ca(o.width, o.height), h.blitFramebuffer.addColorTexture(0, f)), t = h.blitFramebuffer, t.colorTextures[0] !== f && (t.colorTextures[0] = f, t.dirtyId++, t.dirtyFormat++), (t.width !== o.width || t.height !== o.height) && (t.width = o.width, t.height = o.height, t.dirtyId++, t.dirtySize++);\n }\n e || (e = Py, e.width = o.width, e.height = o.height), n || (n = e);\n var l = e.width === n.width && e.height === n.height;\n this.bind(t), s.bindFramebuffer(s.READ_FRAMEBUFFER, h.framebuffer), s.blitFramebuffer(e.left, e.top, e.right, e.bottom, n.left, n.top, n.right, n.bottom, s.COLOR_BUFFER_BIT, l ? s.NEAREST : s.LINEAR);\n }\n }\n }, r.prototype.disposeFramebuffer = function(t, e) {\n var n = t.glFramebuffers[this.CONTEXT_UID], i = this.gl;\n if (n) {\n delete t.glFramebuffers[this.CONTEXT_UID];\n var o = this.managedFramebuffers.indexOf(t);\n o >= 0 && this.managedFramebuffers.splice(o, 1), t.disposeRunner.remove(this), e || (i.deleteFramebuffer(n.framebuffer), n.msaaBuffer && i.deleteRenderbuffer(n.msaaBuffer), n.stencil && i.deleteRenderbuffer(n.stencil)), n.blitFramebuffer && n.blitFramebuffer.dispose();\n }\n }, r.prototype.disposeAll = function(t) {\n var e = this.managedFramebuffers;\n this.managedFramebuffers = [];\n for (var n = 0; n < e.length; n++)\n this.disposeFramebuffer(e[n], t);\n }, r.prototype.forceStencil = function() {\n var t = this.current;\n if (t) {\n var e = t.glFramebuffers[this.CONTEXT_UID];\n if (!(!e || e.stencil)) {\n t.stencil = !0;\n var n = t.width, i = t.height, o = this.gl, a = o.createRenderbuffer();\n o.bindRenderbuffer(o.RENDERBUFFER, a), e.msaaBuffer ? o.renderbufferStorageMultisample(o.RENDERBUFFER, e.multisample, o.DEPTH24_STENCIL8, n, i) : o.renderbufferStorage(o.RENDERBUFFER, o.DEPTH_STENCIL, n, i), e.stencil = a, o.framebufferRenderbuffer(o.FRAMEBUFFER, o.DEPTH_STENCIL_ATTACHMENT, o.RENDERBUFFER, a);\n }\n }\n }, r.prototype.reset = function() {\n this.current = this.unknownFramebuffer, this.viewport = new ht();\n }, r.prototype.destroy = function() {\n this.renderer = null;\n }, r;\n }()\n), _o = { 5126: 4, 5123: 2, 5121: 1 }, Ry = (\n /** @class */\n function() {\n function r(t) {\n this.renderer = t, this._activeGeometry = null, this._activeVao = null, this.hasVao = !0, this.hasInstance = !0, this.canUseUInt32ElementIndex = !1, this.managedGeometries = {};\n }\n return r.prototype.contextChange = function() {\n this.disposeAll(!0);\n var t = this.gl = this.renderer.gl, e = this.renderer.context;\n if (this.CONTEXT_UID = this.renderer.CONTEXT_UID, e.webGLVersion !== 2) {\n var n = this.renderer.context.extensions.vertexArrayObject;\n k.PREFER_ENV === Ie.WEBGL_LEGACY && (n = null), n ? (t.createVertexArray = function() {\n return n.createVertexArrayOES();\n }, t.bindVertexArray = function(o) {\n return n.bindVertexArrayOES(o);\n }, t.deleteVertexArray = function(o) {\n return n.deleteVertexArrayOES(o);\n }) : (this.hasVao = !1, t.createVertexArray = function() {\n return null;\n }, t.bindVertexArray = function() {\n return null;\n }, t.deleteVertexArray = function() {\n return null;\n });\n }\n if (e.webGLVersion !== 2) {\n var i = t.getExtension(\"ANGLE_instanced_arrays\");\n i ? (t.vertexAttribDivisor = function(o, a) {\n return i.vertexAttribDivisorANGLE(o, a);\n }, t.drawElementsInstanced = function(o, a, s, u, h) {\n return i.drawElementsInstancedANGLE(o, a, s, u, h);\n }, t.drawArraysInstanced = function(o, a, s, u) {\n return i.drawArraysInstancedANGLE(o, a, s, u);\n }) : this.hasInstance = !1;\n }\n this.canUseUInt32ElementIndex = e.webGLVersion === 2 || !!e.extensions.uint32ElementIndex;\n }, r.prototype.bind = function(t, e) {\n e = e || this.renderer.shader.shader;\n var n = this.gl, i = t.glVertexArrayObjects[this.CONTEXT_UID], o = !1;\n i || (this.managedGeometries[t.id] = t, t.disposeRunner.add(this), t.glVertexArrayObjects[this.CONTEXT_UID] = i = {}, o = !0);\n var a = i[e.program.id] || this.initGeometryVao(t, e, o);\n this._activeGeometry = t, this._activeVao !== a && (this._activeVao = a, this.hasVao ? n.bindVertexArray(a) : this.activateVao(t, e.program)), this.updateBuffers();\n }, r.prototype.reset = function() {\n this.unbind();\n }, r.prototype.updateBuffers = function() {\n for (var t = this._activeGeometry, e = this.renderer.buffer, n = 0; n < t.buffers.length; n++) {\n var i = t.buffers[n];\n e.update(i);\n }\n }, r.prototype.checkCompatibility = function(t, e) {\n var n = t.attributes, i = e.attributeData;\n for (var o in i)\n if (!n[o])\n throw new Error('shader and geometry incompatible, geometry missing the \"' + o + '\" attribute');\n }, r.prototype.getSignature = function(t, e) {\n var n = t.attributes, i = e.attributeData, o = [\"g\", t.id];\n for (var a in n)\n i[a] && o.push(a, i[a].location);\n return o.join(\"-\");\n }, r.prototype.initGeometryVao = function(t, e, n) {\n n === void 0 && (n = !0);\n var i = this.gl, o = this.CONTEXT_UID, a = this.renderer.buffer, s = e.program;\n s.glPrograms[o] || this.renderer.shader.generateProgram(e), this.checkCompatibility(t, s);\n var u = this.getSignature(t, s), h = t.glVertexArrayObjects[this.CONTEXT_UID], f = h[u];\n if (f)\n return h[s.id] = f, f;\n var l = t.buffers, c = t.attributes, d = {}, p = {};\n for (var v in l)\n d[v] = 0, p[v] = 0;\n for (var v in c)\n !c[v].size && s.attributeData[v] ? c[v].size = s.attributeData[v].size : c[v].size || console.warn(\"PIXI Geometry attribute '\" + v + \"' size cannot be determined (likely the bound shader does not have the attribute)\"), d[c[v].buffer] += c[v].size * _o[c[v].type];\n for (var v in c) {\n var _ = c[v], g = _.size;\n _.stride === void 0 && (d[_.buffer] === g * _o[_.type] ? _.stride = 0 : _.stride = d[_.buffer]), _.start === void 0 && (_.start = p[_.buffer], p[_.buffer] += g * _o[_.type]);\n }\n f = i.createVertexArray(), i.bindVertexArray(f);\n for (var m = 0; m < l.length; m++) {\n var y = l[m];\n a.bind(y), n && y._glBuffers[o].refCount++;\n }\n return this.activateVao(t, s), this._activeVao = f, h[s.id] = f, h[u] = f, f;\n }, r.prototype.disposeGeometry = function(t, e) {\n var n;\n if (this.managedGeometries[t.id]) {\n delete this.managedGeometries[t.id];\n var i = t.glVertexArrayObjects[this.CONTEXT_UID], o = this.gl, a = t.buffers, s = (n = this.renderer) === null || n === void 0 ? void 0 : n.buffer;\n if (t.disposeRunner.remove(this), !!i) {\n if (s)\n for (var u = 0; u < a.length; u++) {\n var h = a[u]._glBuffers[this.CONTEXT_UID];\n h && (h.refCount--, h.refCount === 0 && !e && s.dispose(a[u], e));\n }\n if (!e) {\n for (var f in i)\n if (f[0] === \"g\") {\n var l = i[f];\n this._activeVao === l && this.unbind(), o.deleteVertexArray(l);\n }\n }\n delete t.glVertexArrayObjects[this.CONTEXT_UID];\n }\n }\n }, r.prototype.disposeAll = function(t) {\n for (var e = Object.keys(this.managedGeometries), n = 0; n < e.length; n++)\n this.disposeGeometry(this.managedGeometries[e[n]], t);\n }, r.prototype.activateVao = function(t, e) {\n var n = this.gl, i = this.CONTEXT_UID, o = this.renderer.buffer, a = t.buffers, s = t.attributes;\n t.indexBuffer && o.bind(t.indexBuffer);\n var u = null;\n for (var h in s) {\n var f = s[h], l = a[f.buffer], c = l._glBuffers[i];\n if (e.attributeData[h]) {\n u !== c && (o.bind(l), u = c);\n var d = e.attributeData[h].location;\n if (n.enableVertexAttribArray(d), n.vertexAttribPointer(d, f.size, f.type || n.FLOAT, f.normalized, f.stride, f.start), f.instance)\n if (this.hasInstance)\n n.vertexAttribDivisor(d, 1);\n else\n throw new Error(\"geometry error, GPU Instancing is not supported on this device\");\n }\n }\n }, r.prototype.draw = function(t, e, n, i) {\n var o = this.gl, a = this._activeGeometry;\n if (a.indexBuffer) {\n var s = a.indexBuffer.data.BYTES_PER_ELEMENT, u = s === 2 ? o.UNSIGNED_SHORT : o.UNSIGNED_INT;\n s === 2 || s === 4 && this.canUseUInt32ElementIndex ? a.instanced ? o.drawElementsInstanced(t, e || a.indexBuffer.data.length, u, (n || 0) * s, i || 1) : o.drawElements(t, e || a.indexBuffer.data.length, u, (n || 0) * s) : console.warn(\"unsupported index buffer type: uint32\");\n } else\n a.instanced ? o.drawArraysInstanced(t, n, e || a.getSize(), i || 1) : o.drawArrays(t, n, e || a.getSize());\n return this;\n }, r.prototype.unbind = function() {\n this.gl.bindVertexArray(null), this._activeVao = null, this._activeGeometry = null;\n }, r.prototype.destroy = function() {\n this.renderer = null;\n }, r;\n }()\n), Iy = (\n /** @class */\n function() {\n function r(t) {\n t === void 0 && (t = null), this.type = Ct.NONE, this.autoDetect = !0, this.maskObject = t || null, this.pooled = !1, this.isMaskData = !0, this.resolution = null, this.multisample = k.FILTER_MULTISAMPLE, this.enabled = !0, this.colorMask = 15, this._filters = null, this._stencilCounter = 0, this._scissorCounter = 0, this._scissorRect = null, this._scissorRectLocal = null, this._colorMask = 15, this._target = null;\n }\n return Object.defineProperty(r.prototype, \"filter\", {\n /**\n * The sprite mask filter.\n * If set to `null`, the default sprite mask filter is used.\n * @default null\n */\n get: function() {\n return this._filters ? this._filters[0] : null;\n },\n set: function(t) {\n t ? this._filters ? this._filters[0] = t : this._filters = [t] : this._filters = null;\n },\n enumerable: !1,\n configurable: !0\n }), r.prototype.reset = function() {\n this.pooled && (this.maskObject = null, this.type = Ct.NONE, this.autoDetect = !0), this._target = null, this._scissorRectLocal = null;\n }, r.prototype.copyCountersOrReset = function(t) {\n t ? (this._stencilCounter = t._stencilCounter, this._scissorCounter = t._scissorCounter, this._scissorRect = t._scissorRect) : (this._stencilCounter = 0, this._scissorCounter = 0, this._scissorRect = null);\n }, r;\n }()\n);\nfunction Lu(r, t, e) {\n var n = r.createShader(t);\n return r.shaderSource(n, e), r.compileShader(n), n;\n}\nfunction Uu(r, t) {\n var e = r.getShaderSource(t).split(`\n`).map(function(h, f) {\n return f + \": \" + h;\n }), n = r.getShaderInfoLog(t), i = n.split(`\n`), o = {}, a = i.map(function(h) {\n return parseFloat(h.replace(/^ERROR\\: 0\\:([\\d]+)\\:.*$/, \"$1\"));\n }).filter(function(h) {\n return h && !o[h] ? (o[h] = !0, !0) : !1;\n }), s = [\"\"];\n a.forEach(function(h) {\n e[h - 1] = \"%c\" + e[h - 1] + \"%c\", s.push(\"background: #FF0000; color:#FFFFFF; font-size: 10px\", \"font-size: 10px\");\n });\n var u = e.join(`\n`);\n s[0] = u, console.error(n), console.groupCollapsed(\"click to view full shader code\"), console.warn.apply(console, s), console.groupEnd();\n}\nfunction Cy(r, t, e, n) {\n r.getProgramParameter(t, r.LINK_STATUS) || (r.getShaderParameter(e, r.COMPILE_STATUS) || Uu(r, e), r.getShaderParameter(n, r.COMPILE_STATUS) || Uu(r, n), console.error(\"PixiJS Error: Could not initialize shader.\"), r.getProgramInfoLog(t) !== \"\" && console.warn(\"PixiJS Warning: gl.getProgramInfoLog()\", r.getProgramInfoLog(t)));\n}\nfunction mo(r) {\n for (var t = new Array(r), e = 0; e < t.length; e++)\n t[e] = !1;\n return t;\n}\nfunction Ll(r, t) {\n switch (r) {\n case \"float\":\n return 0;\n case \"vec2\":\n return new Float32Array(2 * t);\n case \"vec3\":\n return new Float32Array(3 * t);\n case \"vec4\":\n return new Float32Array(4 * t);\n case \"int\":\n case \"uint\":\n case \"sampler2D\":\n case \"sampler2DArray\":\n return 0;\n case \"ivec2\":\n return new Int32Array(2 * t);\n case \"ivec3\":\n return new Int32Array(3 * t);\n case \"ivec4\":\n return new Int32Array(4 * t);\n case \"uvec2\":\n return new Uint32Array(2 * t);\n case \"uvec3\":\n return new Uint32Array(3 * t);\n case \"uvec4\":\n return new Uint32Array(4 * t);\n case \"bool\":\n return !1;\n case \"bvec2\":\n return mo(2 * t);\n case \"bvec3\":\n return mo(3 * t);\n case \"bvec4\":\n return mo(4 * t);\n case \"mat2\":\n return new Float32Array([\n 1,\n 0,\n 0,\n 1\n ]);\n case \"mat3\":\n return new Float32Array([\n 1,\n 0,\n 0,\n 0,\n 1,\n 0,\n 0,\n 0,\n 1\n ]);\n case \"mat4\":\n return new Float32Array([\n 1,\n 0,\n 0,\n 0,\n 0,\n 1,\n 0,\n 0,\n 0,\n 0,\n 1,\n 0,\n 0,\n 0,\n 0,\n 1\n ]);\n }\n return null;\n}\nvar Ul = {}, Qr = Ul;\nfunction My() {\n if (Qr === Ul || Qr && Qr.isContextLost()) {\n var r = k.ADAPTER.createCanvas(), t = void 0;\n k.PREFER_ENV >= Ie.WEBGL2 && (t = r.getContext(\"webgl2\", {})), t || (t = r.getContext(\"webgl\", {}) || r.getContext(\"experimental-webgl\", {}), t ? t.getExtension(\"WEBGL_draw_buffers\") : t = null), Qr = t;\n }\n return Qr;\n}\nvar Kn;\nfunction Dy() {\n if (!Kn) {\n Kn = Qt.MEDIUM;\n var r = My();\n if (r && r.getShaderPrecisionFormat) {\n var t = r.getShaderPrecisionFormat(r.FRAGMENT_SHADER, r.HIGH_FLOAT);\n Kn = t.precision ? Qt.HIGH : Qt.MEDIUM;\n }\n }\n return Kn;\n}\nfunction Gu(r, t, e) {\n if (r.substring(0, 9) !== \"precision\") {\n var n = t;\n return t === Qt.HIGH && e !== Qt.HIGH && (n = Qt.MEDIUM), \"precision \" + n + ` float;\n` + r;\n } else if (e !== Qt.HIGH && r.substring(0, 15) === \"precision highp\")\n return r.replace(\"precision highp\", \"precision mediump\");\n return r;\n}\nvar Fy = {\n float: 1,\n vec2: 2,\n vec3: 3,\n vec4: 4,\n int: 1,\n ivec2: 2,\n ivec3: 3,\n ivec4: 4,\n uint: 1,\n uvec2: 2,\n uvec3: 3,\n uvec4: 4,\n bool: 1,\n bvec2: 2,\n bvec3: 3,\n bvec4: 4,\n mat2: 4,\n mat3: 9,\n mat4: 16,\n sampler2D: 1\n};\nfunction Gl(r) {\n return Fy[r];\n}\nvar Zn = null, ku = {\n FLOAT: \"float\",\n FLOAT_VEC2: \"vec2\",\n FLOAT_VEC3: \"vec3\",\n FLOAT_VEC4: \"vec4\",\n INT: \"int\",\n INT_VEC2: \"ivec2\",\n INT_VEC3: \"ivec3\",\n INT_VEC4: \"ivec4\",\n UNSIGNED_INT: \"uint\",\n UNSIGNED_INT_VEC2: \"uvec2\",\n UNSIGNED_INT_VEC3: \"uvec3\",\n UNSIGNED_INT_VEC4: \"uvec4\",\n BOOL: \"bool\",\n BOOL_VEC2: \"bvec2\",\n BOOL_VEC3: \"bvec3\",\n BOOL_VEC4: \"bvec4\",\n FLOAT_MAT2: \"mat2\",\n FLOAT_MAT3: \"mat3\",\n FLOAT_MAT4: \"mat4\",\n SAMPLER_2D: \"sampler2D\",\n INT_SAMPLER_2D: \"sampler2D\",\n UNSIGNED_INT_SAMPLER_2D: \"sampler2D\",\n SAMPLER_CUBE: \"samplerCube\",\n INT_SAMPLER_CUBE: \"samplerCube\",\n UNSIGNED_INT_SAMPLER_CUBE: \"samplerCube\",\n SAMPLER_2D_ARRAY: \"sampler2DArray\",\n INT_SAMPLER_2D_ARRAY: \"sampler2DArray\",\n UNSIGNED_INT_SAMPLER_2D_ARRAY: \"sampler2DArray\"\n};\nfunction kl(r, t) {\n if (!Zn) {\n var e = Object.keys(ku);\n Zn = {};\n for (var n = 0; n < e.length; ++n) {\n var i = e[n];\n Zn[r[i]] = ku[i];\n }\n }\n return Zn[t];\n}\nvar Ur = [\n // a float cache layer\n {\n test: function(r) {\n return r.type === \"float\" && r.size === 1 && !r.isArray;\n },\n code: function(r) {\n return `\n if(uv[\"` + r + '\"] !== ud[\"' + r + `\"].value)\n {\n ud[\"` + r + '\"].value = uv[\"' + r + `\"]\n gl.uniform1f(ud[\"` + r + '\"].location, uv[\"' + r + `\"])\n }\n `;\n }\n },\n // handling samplers\n {\n test: function(r, t) {\n return (r.type === \"sampler2D\" || r.type === \"samplerCube\" || r.type === \"sampler2DArray\") && r.size === 1 && !r.isArray && (t == null || t.castToBaseTexture !== void 0);\n },\n code: function(r) {\n return `t = syncData.textureCount++;\n\n renderer.texture.bind(uv[\"` + r + `\"], t);\n\n if(ud[\"` + r + `\"].value !== t)\n {\n ud[\"` + r + `\"].value = t;\n gl.uniform1i(ud[\"` + r + `\"].location, t);\n; // eslint-disable-line max-len\n }`;\n }\n },\n // uploading pixi matrix object to mat3\n {\n test: function(r, t) {\n return r.type === \"mat3\" && r.size === 1 && !r.isArray && t.a !== void 0;\n },\n code: function(r) {\n return `\n gl.uniformMatrix3fv(ud[\"` + r + '\"].location, false, uv[\"' + r + `\"].toArray(true));\n `;\n },\n codeUbo: function(r) {\n return `\n var ` + r + \"_matrix = uv.\" + r + `.toArray(true);\n\n data[offset] = ` + r + `_matrix[0];\n data[offset+1] = ` + r + `_matrix[1];\n data[offset+2] = ` + r + `_matrix[2];\n \n data[offset + 4] = ` + r + `_matrix[3];\n data[offset + 5] = ` + r + `_matrix[4];\n data[offset + 6] = ` + r + `_matrix[5];\n \n data[offset + 8] = ` + r + `_matrix[6];\n data[offset + 9] = ` + r + `_matrix[7];\n data[offset + 10] = ` + r + `_matrix[8];\n `;\n }\n },\n // uploading a pixi point as a vec2 with caching layer\n {\n test: function(r, t) {\n return r.type === \"vec2\" && r.size === 1 && !r.isArray && t.x !== void 0;\n },\n code: function(r) {\n return `\n cv = ud[\"` + r + `\"].value;\n v = uv[\"` + r + `\"];\n\n if(cv[0] !== v.x || cv[1] !== v.y)\n {\n cv[0] = v.x;\n cv[1] = v.y;\n gl.uniform2f(ud[\"` + r + `\"].location, v.x, v.y);\n }`;\n },\n codeUbo: function(r) {\n return `\n v = uv.` + r + `;\n\n data[offset] = v.x;\n data[offset+1] = v.y;\n `;\n }\n },\n // caching layer for a vec2\n {\n test: function(r) {\n return r.type === \"vec2\" && r.size === 1 && !r.isArray;\n },\n code: function(r) {\n return `\n cv = ud[\"` + r + `\"].value;\n v = uv[\"` + r + `\"];\n\n if(cv[0] !== v[0] || cv[1] !== v[1])\n {\n cv[0] = v[0];\n cv[1] = v[1];\n gl.uniform2f(ud[\"` + r + `\"].location, v[0], v[1]);\n }\n `;\n }\n },\n // upload a pixi rectangle as a vec4 with caching layer\n {\n test: function(r, t) {\n return r.type === \"vec4\" && r.size === 1 && !r.isArray && t.width !== void 0;\n },\n code: function(r) {\n return `\n cv = ud[\"` + r + `\"].value;\n v = uv[\"` + r + `\"];\n\n if(cv[0] !== v.x || cv[1] !== v.y || cv[2] !== v.width || cv[3] !== v.height)\n {\n cv[0] = v.x;\n cv[1] = v.y;\n cv[2] = v.width;\n cv[3] = v.height;\n gl.uniform4f(ud[\"` + r + `\"].location, v.x, v.y, v.width, v.height)\n }`;\n },\n codeUbo: function(r) {\n return `\n v = uv.` + r + `;\n\n data[offset] = v.x;\n data[offset+1] = v.y;\n data[offset+2] = v.width;\n data[offset+3] = v.height;\n `;\n }\n },\n // a caching layer for vec4 uploading\n {\n test: function(r) {\n return r.type === \"vec4\" && r.size === 1 && !r.isArray;\n },\n code: function(r) {\n return `\n cv = ud[\"` + r + `\"].value;\n v = uv[\"` + r + `\"];\n\n if(cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2] || cv[3] !== v[3])\n {\n cv[0] = v[0];\n cv[1] = v[1];\n cv[2] = v[2];\n cv[3] = v[3];\n\n gl.uniform4f(ud[\"` + r + `\"].location, v[0], v[1], v[2], v[3])\n }`;\n }\n }\n], By = {\n float: `\n if (cv !== v)\n {\n cu.value = v;\n gl.uniform1f(location, v);\n }`,\n vec2: `\n if (cv[0] !== v[0] || cv[1] !== v[1])\n {\n cv[0] = v[0];\n cv[1] = v[1];\n\n gl.uniform2f(location, v[0], v[1])\n }`,\n vec3: `\n if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2])\n {\n cv[0] = v[0];\n cv[1] = v[1];\n cv[2] = v[2];\n\n gl.uniform3f(location, v[0], v[1], v[2])\n }`,\n vec4: `\n if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2] || cv[3] !== v[3])\n {\n cv[0] = v[0];\n cv[1] = v[1];\n cv[2] = v[2];\n cv[3] = v[3];\n\n gl.uniform4f(location, v[0], v[1], v[2], v[3]);\n }`,\n int: `\n if (cv !== v)\n {\n cu.value = v;\n\n gl.uniform1i(location, v);\n }`,\n ivec2: `\n if (cv[0] !== v[0] || cv[1] !== v[1])\n {\n cv[0] = v[0];\n cv[1] = v[1];\n\n gl.uniform2i(location, v[0], v[1]);\n }`,\n ivec3: `\n if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2])\n {\n cv[0] = v[0];\n cv[1] = v[1];\n cv[2] = v[2];\n\n gl.uniform3i(location, v[0], v[1], v[2]);\n }`,\n ivec4: `\n if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2] || cv[3] !== v[3])\n {\n cv[0] = v[0];\n cv[1] = v[1];\n cv[2] = v[2];\n cv[3] = v[3];\n\n gl.uniform4i(location, v[0], v[1], v[2], v[3]);\n }`,\n uint: `\n if (cv !== v)\n {\n cu.value = v;\n\n gl.uniform1ui(location, v);\n }`,\n uvec2: `\n if (cv[0] !== v[0] || cv[1] !== v[1])\n {\n cv[0] = v[0];\n cv[1] = v[1];\n\n gl.uniform2ui(location, v[0], v[1]);\n }`,\n uvec3: `\n if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2])\n {\n cv[0] = v[0];\n cv[1] = v[1];\n cv[2] = v[2];\n\n gl.uniform3ui(location, v[0], v[1], v[2]);\n }`,\n uvec4: `\n if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2] || cv[3] !== v[3])\n {\n cv[0] = v[0];\n cv[1] = v[1];\n cv[2] = v[2];\n cv[3] = v[3];\n\n gl.uniform4ui(location, v[0], v[1], v[2], v[3]);\n }`,\n bool: `\n if (cv !== v)\n {\n cu.value = v;\n gl.uniform1i(location, v);\n }`,\n bvec2: `\n if (cv[0] != v[0] || cv[1] != v[1])\n {\n cv[0] = v[0];\n cv[1] = v[1];\n\n gl.uniform2i(location, v[0], v[1]);\n }`,\n bvec3: `\n if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2])\n {\n cv[0] = v[0];\n cv[1] = v[1];\n cv[2] = v[2];\n\n gl.uniform3i(location, v[0], v[1], v[2]);\n }`,\n bvec4: `\n if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2] || cv[3] !== v[3])\n {\n cv[0] = v[0];\n cv[1] = v[1];\n cv[2] = v[2];\n cv[3] = v[3];\n\n gl.uniform4i(location, v[0], v[1], v[2], v[3]);\n }`,\n mat2: \"gl.uniformMatrix2fv(location, false, v)\",\n mat3: \"gl.uniformMatrix3fv(location, false, v)\",\n mat4: \"gl.uniformMatrix4fv(location, false, v)\",\n sampler2D: `\n if (cv !== v)\n {\n cu.value = v;\n\n gl.uniform1i(location, v);\n }`,\n samplerCube: `\n if (cv !== v)\n {\n cu.value = v;\n\n gl.uniform1i(location, v);\n }`,\n sampler2DArray: `\n if (cv !== v)\n {\n cu.value = v;\n\n gl.uniform1i(location, v);\n }`\n}, Ny = {\n float: \"gl.uniform1fv(location, v)\",\n vec2: \"gl.uniform2fv(location, v)\",\n vec3: \"gl.uniform3fv(location, v)\",\n vec4: \"gl.uniform4fv(location, v)\",\n mat4: \"gl.uniformMatrix4fv(location, false, v)\",\n mat3: \"gl.uniformMatrix3fv(location, false, v)\",\n mat2: \"gl.uniformMatrix2fv(location, false, v)\",\n int: \"gl.uniform1iv(location, v)\",\n ivec2: \"gl.uniform2iv(location, v)\",\n ivec3: \"gl.uniform3iv(location, v)\",\n ivec4: \"gl.uniform4iv(location, v)\",\n uint: \"gl.uniform1uiv(location, v)\",\n uvec2: \"gl.uniform2uiv(location, v)\",\n uvec3: \"gl.uniform3uiv(location, v)\",\n uvec4: \"gl.uniform4uiv(location, v)\",\n bool: \"gl.uniform1iv(location, v)\",\n bvec2: \"gl.uniform2iv(location, v)\",\n bvec3: \"gl.uniform3iv(location, v)\",\n bvec4: \"gl.uniform4iv(location, v)\",\n sampler2D: \"gl.uniform1iv(location, v)\",\n samplerCube: \"gl.uniform1iv(location, v)\",\n sampler2DArray: \"gl.uniform1iv(location, v)\"\n};\nfunction Ly(r, t) {\n var e, n = [`\n var v = null;\n var cv = null;\n var cu = null;\n var t = 0;\n var gl = renderer.gl;\n `];\n for (var i in r.uniforms) {\n var o = t[i];\n if (!o) {\n !((e = r.uniforms[i]) === null || e === void 0) && e.group && (r.uniforms[i].ubo ? n.push(`\n renderer.shader.syncUniformBufferGroup(uv.` + i + \", '\" + i + `');\n `) : n.push(`\n renderer.shader.syncUniformGroup(uv.` + i + `, syncData);\n `));\n continue;\n }\n for (var a = r.uniforms[i], s = !1, u = 0; u < Ur.length; u++)\n if (Ur[u].test(o, a)) {\n n.push(Ur[u].code(i, a)), s = !0;\n break;\n }\n if (!s) {\n var h = o.size === 1 && !o.isArray ? By : Ny, f = h[o.type].replace(\"location\", 'ud[\"' + i + '\"].location');\n n.push(`\n cu = ud[\"` + i + `\"];\n cv = cu.value;\n v = uv[\"` + i + `\"];\n ` + f + \";\");\n }\n }\n return new Function(\"ud\", \"uv\", \"renderer\", \"syncData\", n.join(`\n`));\n}\nvar Uy = [\n \"precision mediump float;\",\n \"void main(void){\",\n \"float test = 0.1;\",\n \"%forloop%\",\n \"gl_FragColor = vec4(0.0);\",\n \"}\"\n].join(`\n`);\nfunction Gy(r) {\n for (var t = \"\", e = 0; e < r; ++e)\n e > 0 && (t += `\nelse `), e < r - 1 && (t += \"if(test == \" + e + \".0){}\");\n return t;\n}\nfunction ky(r, t) {\n if (r === 0)\n throw new Error(\"Invalid value of `0` passed to `checkMaxIfStatementsInShader`\");\n for (var e = t.createShader(t.FRAGMENT_SHADER); ; ) {\n var n = Uy.replace(/%forloop%/gi, Gy(r));\n if (t.shaderSource(e, n), t.compileShader(e), !t.getShaderParameter(e, t.COMPILE_STATUS))\n r = r / 2 | 0;\n else\n break;\n }\n return r;\n}\nvar tn;\nfunction Hy() {\n if (typeof tn == \"boolean\")\n return tn;\n try {\n var r = new Function(\"param1\", \"param2\", \"param3\", \"return param1[param2] === param3;\");\n tn = r({ a: \"b\" }, \"a\", \"b\") === !0;\n } catch {\n tn = !1;\n }\n return tn;\n}\nvar Xy = `varying vec2 vTextureCoord;\n\nuniform sampler2D uSampler;\n\nvoid main(void){\n gl_FragColor *= texture2D(uSampler, vTextureCoord);\n}`, jy = `attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nvoid main(void){\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n vTextureCoord = aTextureCoord;\n}\n`, Yy = 0, Jn = {}, Dn = (\n /** @class */\n function() {\n function r(t, e, n) {\n n === void 0 && (n = \"pixi-shader\"), this.id = Yy++, this.vertexSrc = t || r.defaultVertexSrc, this.fragmentSrc = e || r.defaultFragmentSrc, this.vertexSrc = this.vertexSrc.trim(), this.fragmentSrc = this.fragmentSrc.trim(), this.vertexSrc.substring(0, 8) !== \"#version\" && (n = n.replace(/\\s+/g, \"-\"), Jn[n] ? (Jn[n]++, n += \"-\" + Jn[n]) : Jn[n] = 1, this.vertexSrc = \"#define SHADER_NAME \" + n + `\n` + this.vertexSrc, this.fragmentSrc = \"#define SHADER_NAME \" + n + `\n` + this.fragmentSrc, this.vertexSrc = Gu(this.vertexSrc, k.PRECISION_VERTEX, Qt.HIGH), this.fragmentSrc = Gu(this.fragmentSrc, k.PRECISION_FRAGMENT, Dy())), this.glPrograms = {}, this.syncUniforms = null;\n }\n return Object.defineProperty(r, \"defaultVertexSrc\", {\n /**\n * The default vertex shader source.\n * @constant\n */\n get: function() {\n return jy;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r, \"defaultFragmentSrc\", {\n /**\n * The default fragment shader source.\n * @constant\n */\n get: function() {\n return Xy;\n },\n enumerable: !1,\n configurable: !0\n }), r.from = function(t, e, n) {\n var i = t + e, o = Iu[i];\n return o || (Iu[i] = o = new r(t, e, n)), o;\n }, r;\n }()\n), Ue = (\n /** @class */\n function() {\n function r(t, e) {\n this.uniformBindCount = 0, this.program = t, e ? e instanceof ur ? this.uniformGroup = e : this.uniformGroup = new ur(e) : this.uniformGroup = new ur({}), this.disposeRunner = new Gt(\"disposeShader\");\n }\n return r.prototype.checkUniformExists = function(t, e) {\n if (e.uniforms[t])\n return !0;\n for (var n in e.uniforms) {\n var i = e.uniforms[n];\n if (i.group && this.checkUniformExists(t, i))\n return !0;\n }\n return !1;\n }, r.prototype.destroy = function() {\n this.uniformGroup = null, this.disposeRunner.emit(this), this.disposeRunner.destroy();\n }, Object.defineProperty(r.prototype, \"uniforms\", {\n /**\n * Shader uniform values, shortcut for `uniformGroup.uniforms`.\n * @readonly\n */\n get: function() {\n return this.uniformGroup.uniforms;\n },\n enumerable: !1,\n configurable: !0\n }), r.from = function(t, e, n) {\n var i = Dn.from(t, e);\n return new r(i, n);\n }, r;\n }()\n), go = 0, yo = 1, bo = 2, xo = 3, Eo = 4, To = 5, dr = (\n /** @class */\n function() {\n function r() {\n this.data = 0, this.blendMode = V.NORMAL, this.polygonOffset = 0, this.blend = !0, this.depthMask = !0;\n }\n return Object.defineProperty(r.prototype, \"blend\", {\n /**\n * Activates blending of the computed fragment color values.\n * @default true\n */\n get: function() {\n return !!(this.data & 1 << go);\n },\n set: function(t) {\n !!(this.data & 1 << go) !== t && (this.data ^= 1 << go);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"offsets\", {\n /**\n * Activates adding an offset to depth values of polygon's fragments\n * @default false\n */\n get: function() {\n return !!(this.data & 1 << yo);\n },\n set: function(t) {\n !!(this.data & 1 << yo) !== t && (this.data ^= 1 << yo);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"culling\", {\n /**\n * Activates culling of polygons.\n * @default false\n */\n get: function() {\n return !!(this.data & 1 << bo);\n },\n set: function(t) {\n !!(this.data & 1 << bo) !== t && (this.data ^= 1 << bo);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"depthTest\", {\n /**\n * Activates depth comparisons and updates to the depth buffer.\n * @default false\n */\n get: function() {\n return !!(this.data & 1 << xo);\n },\n set: function(t) {\n !!(this.data & 1 << xo) !== t && (this.data ^= 1 << xo);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"depthMask\", {\n /**\n * Enables or disables writing to the depth buffer.\n * @default true\n */\n get: function() {\n return !!(this.data & 1 << To);\n },\n set: function(t) {\n !!(this.data & 1 << To) !== t && (this.data ^= 1 << To);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"clockwiseFrontFace\", {\n /**\n * Specifies whether or not front or back-facing polygons can be culled.\n * @default false\n */\n get: function() {\n return !!(this.data & 1 << Eo);\n },\n set: function(t) {\n !!(this.data & 1 << Eo) !== t && (this.data ^= 1 << Eo);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"blendMode\", {\n /**\n * The blend mode to be applied when this state is set. Apply a value of `PIXI.BLEND_MODES.NORMAL` to reset the blend mode.\n * Setting this mode to anything other than NO_BLEND will automatically switch blending on.\n * @default PIXI.BLEND_MODES.NORMAL\n */\n get: function() {\n return this._blendMode;\n },\n set: function(t) {\n this.blend = t !== V.NONE, this._blendMode = t;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"polygonOffset\", {\n /**\n * The polygon offset. Setting this property to anything other than 0 will automatically enable polygon offset fill.\n * @default 0\n */\n get: function() {\n return this._polygonOffset;\n },\n set: function(t) {\n this.offsets = !!t, this._polygonOffset = t;\n },\n enumerable: !1,\n configurable: !0\n }), r.prototype.toString = function() {\n return \"[@pixi/core:State \" + (\"blendMode=\" + this.blendMode + \" \") + (\"clockwiseFrontFace=\" + this.clockwiseFrontFace + \" \") + (\"culling=\" + this.culling + \" \") + (\"depthMask=\" + this.depthMask + \" \") + (\"polygonOffset=\" + this.polygonOffset) + \"]\";\n }, r.for2d = function() {\n var t = new r();\n return t.depthTest = !1, t.blend = !0, t;\n }, r;\n }()\n), Vy = `varying vec2 vTextureCoord;\n\nuniform sampler2D uSampler;\n\nvoid main(void){\n gl_FragColor = texture2D(uSampler, vTextureCoord);\n}\n`, zy = `attribute vec2 aVertexPosition;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nuniform vec4 inputSize;\nuniform vec4 outputFrame;\n\nvec4 filterVertexPosition( void )\n{\n vec2 position = aVertexPosition * max(outputFrame.zw, vec2(0.)) + outputFrame.xy;\n\n return vec4((projectionMatrix * vec3(position, 1.0)).xy, 0.0, 1.0);\n}\n\nvec2 filterTextureCoord( void )\n{\n return aVertexPosition * (outputFrame.zw * inputSize.zw);\n}\n\nvoid main(void)\n{\n gl_Position = filterVertexPosition();\n vTextureCoord = filterTextureCoord();\n}\n`, Ve = (\n /** @class */\n function(r) {\n xt(t, r);\n function t(e, n, i) {\n var o = this, a = Dn.from(e || t.defaultVertexSrc, n || t.defaultFragmentSrc);\n return o = r.call(this, a, i) || this, o.padding = 0, o.resolution = k.FILTER_RESOLUTION, o.multisample = k.FILTER_MULTISAMPLE, o.enabled = !0, o.autoFit = !0, o.state = new dr(), o;\n }\n return t.prototype.apply = function(e, n, i, o, a) {\n e.applyFilter(this, n, i, o);\n }, Object.defineProperty(t.prototype, \"blendMode\", {\n /**\n * Sets the blend mode of the filter.\n * @default PIXI.BLEND_MODES.NORMAL\n */\n get: function() {\n return this.state.blendMode;\n },\n set: function(e) {\n this.state.blendMode = e;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"resolution\", {\n /**\n * The resolution of the filter. Setting this to be lower will lower the quality but\n * increase the performance of the filter.\n */\n get: function() {\n return this._resolution;\n },\n set: function(e) {\n this._resolution = e;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t, \"defaultVertexSrc\", {\n /**\n * The default vertex shader source\n * @constant\n */\n get: function() {\n return zy;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t, \"defaultFragmentSrc\", {\n /**\n * The default fragment shader source\n * @constant\n */\n get: function() {\n return Vy;\n },\n enumerable: !1,\n configurable: !0\n }), t;\n }(Ue)\n), Wy = `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`, qy = `varying vec2 vMaskCoord;\nvarying vec2 vTextureCoord;\n\nuniform sampler2D uSampler;\nuniform sampler2D mask;\nuniform float alpha;\nuniform float npmAlpha;\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 float alphaMul = 1.0 - npmAlpha * (1.0 - masky.a);\n\n original *= (alphaMul * masky.r * alpha * clip);\n\n gl_FragColor = original;\n}\n`, Hu = new Dt(), ss = (\n /** @class */\n function() {\n function r(t, e) {\n this._texture = t, this.mapCoord = new Dt(), this.uClampFrame = new Float32Array(4), this.uClampOffset = new Float32Array(2), this._textureID = -1, this._updateID = 0, this.clampOffset = 0, this.clampMargin = typeof e > \"u\" ? 0.5 : e, this.isSimple = !1;\n }\n return Object.defineProperty(r.prototype, \"texture\", {\n /** Texture property. */\n get: function() {\n return this._texture;\n },\n set: function(t) {\n this._texture = t, this._textureID = -1;\n },\n enumerable: !1,\n configurable: !0\n }), r.prototype.multiplyUvs = function(t, e) {\n e === void 0 && (e = t);\n for (var n = this.mapCoord, i = 0; i < t.length; i += 2) {\n var o = t[i], a = t[i + 1];\n e[i] = o * n.a + a * n.c + n.tx, e[i + 1] = o * n.b + a * n.d + n.ty;\n }\n return e;\n }, r.prototype.update = function(t) {\n var e = this._texture;\n if (!e || !e.valid || !t && this._textureID === e._updateID)\n return !1;\n this._textureID = e._updateID, this._updateID++;\n var n = e._uvs;\n this.mapCoord.set(n.x1 - n.x0, n.y1 - n.y0, n.x3 - n.x0, n.y3 - n.y0, n.x0, n.y0);\n var i = e.orig, o = e.trim;\n o && (Hu.set(i.width / o.width, 0, 0, i.height / o.height, -o.x / o.width, -o.y / o.height), this.mapCoord.append(Hu));\n var a = e.baseTexture, s = this.uClampFrame, u = this.clampMargin / a.resolution, h = this.clampOffset;\n return s[0] = (e._frame.x + u + h) / a.width, s[1] = (e._frame.y + u + h) / a.height, s[2] = (e._frame.x + e._frame.width - u + h) / a.width, s[3] = (e._frame.y + e._frame.height - u + h) / a.height, this.uClampOffset[0] = h / a.realWidth, this.uClampOffset[1] = h / a.realHeight, this.isSimple = e._frame.width === a.width && e._frame.height === a.height && e.rotate === 0, !0;\n }, r;\n }()\n), $y = (\n /** @class */\n function(r) {\n xt(t, r);\n function t(e, n, i) {\n var o = this, a = null;\n return typeof e != \"string\" && n === void 0 && i === void 0 && (a = e, e = void 0, n = void 0, i = void 0), o = r.call(this, e || Wy, n || qy, i) || this, o.maskSprite = a, o.maskMatrix = new Dt(), o;\n }\n return Object.defineProperty(t.prototype, \"maskSprite\", {\n /**\n * Sprite mask\n * @type {PIXI.DisplayObject}\n */\n get: function() {\n return this._maskSprite;\n },\n set: function(e) {\n this._maskSprite = e, this._maskSprite && (this._maskSprite.renderable = !1);\n },\n enumerable: !1,\n configurable: !0\n }), t.prototype.apply = function(e, n, i, o) {\n var a = this._maskSprite, s = a._texture;\n s.valid && (s.uvMatrix || (s.uvMatrix = new ss(s, 0)), s.uvMatrix.update(), this.uniforms.npmAlpha = s.baseTexture.alphaMode ? 0 : 1, this.uniforms.mask = s, this.uniforms.otherMatrix = e.calculateSpriteMatrix(this.maskMatrix, a).prepend(s.uvMatrix.mapCoord), this.uniforms.alpha = a.worldAlpha, this.uniforms.maskClamp = s.uvMatrix.uClampFrame, e.applyFilter(this, n, i, o));\n }, t;\n }(Ve)\n), Ky = (\n /** @class */\n function() {\n function r(t) {\n this.renderer = t, this.enableScissor = !0, this.alphaMaskPool = [], this.maskDataPool = [], this.maskStack = [], this.alphaMaskIndex = 0;\n }\n return r.prototype.setMaskStack = function(t) {\n this.maskStack = t, this.renderer.scissor.setMaskStack(t), this.renderer.stencil.setMaskStack(t);\n }, r.prototype.push = function(t, e) {\n var n = e;\n if (!n.isMaskData) {\n var i = this.maskDataPool.pop() || new Iy();\n i.pooled = !0, i.maskObject = e, n = i;\n }\n var o = this.maskStack.length !== 0 ? this.maskStack[this.maskStack.length - 1] : null;\n if (n.copyCountersOrReset(o), n._colorMask = o ? o._colorMask : 15, n.autoDetect && this.detect(n), n._target = t, n.type !== Ct.SPRITE && this.maskStack.push(n), n.enabled)\n switch (n.type) {\n case Ct.SCISSOR:\n this.renderer.scissor.push(n);\n break;\n case Ct.STENCIL:\n this.renderer.stencil.push(n);\n break;\n case Ct.SPRITE:\n n.copyCountersOrReset(null), this.pushSpriteMask(n);\n break;\n case Ct.COLOR:\n this.pushColorMask(n);\n break;\n }\n n.type === Ct.SPRITE && this.maskStack.push(n);\n }, r.prototype.pop = function(t) {\n var e = this.maskStack.pop();\n if (!(!e || e._target !== t)) {\n if (e.enabled)\n switch (e.type) {\n case Ct.SCISSOR:\n this.renderer.scissor.pop(e);\n break;\n case Ct.STENCIL:\n this.renderer.stencil.pop(e.maskObject);\n break;\n case Ct.SPRITE:\n this.popSpriteMask(e);\n break;\n case Ct.COLOR:\n this.popColorMask(e);\n break;\n }\n if (e.reset(), e.pooled && this.maskDataPool.push(e), this.maskStack.length !== 0) {\n var n = this.maskStack[this.maskStack.length - 1];\n n.type === Ct.SPRITE && n._filters && (n._filters[0].maskSprite = n.maskObject);\n }\n }\n }, r.prototype.detect = function(t) {\n var e = t.maskObject;\n e ? e.isSprite ? t.type = Ct.SPRITE : this.enableScissor && this.renderer.scissor.testScissor(t) ? t.type = Ct.SCISSOR : t.type = Ct.STENCIL : t.type = Ct.COLOR;\n }, r.prototype.pushSpriteMask = function(t) {\n var e, n, i = t.maskObject, o = t._target, a = t._filters;\n a || (a = this.alphaMaskPool[this.alphaMaskIndex], a || (a = this.alphaMaskPool[this.alphaMaskIndex] = [new $y()]));\n var s = this.renderer, u = s.renderTexture, h, f;\n if (u.current) {\n var l = u.current;\n h = t.resolution || l.resolution, f = (e = t.multisample) !== null && e !== void 0 ? e : l.multisample;\n } else\n h = t.resolution || s.resolution, f = (n = t.multisample) !== null && n !== void 0 ? n : s.multisample;\n a[0].resolution = h, a[0].multisample = f, a[0].maskSprite = i;\n var c = o.filterArea;\n o.filterArea = i.getBounds(!0), s.filter.push(o, a), o.filterArea = c, t._filters || this.alphaMaskIndex++;\n }, r.prototype.popSpriteMask = function(t) {\n this.renderer.filter.pop(), t._filters ? t._filters[0].maskSprite = null : (this.alphaMaskIndex--, this.alphaMaskPool[this.alphaMaskIndex][0].maskSprite = null);\n }, r.prototype.pushColorMask = function(t) {\n var e = t._colorMask, n = t._colorMask = e & t.colorMask;\n n !== e && this.renderer.gl.colorMask((n & 1) !== 0, (n & 2) !== 0, (n & 4) !== 0, (n & 8) !== 0);\n }, r.prototype.popColorMask = function(t) {\n var e = t._colorMask, n = this.maskStack.length > 0 ? this.maskStack[this.maskStack.length - 1]._colorMask : 15;\n n !== e && this.renderer.gl.colorMask((n & 1) !== 0, (n & 2) !== 0, (n & 4) !== 0, (n & 8) !== 0);\n }, r.prototype.destroy = function() {\n this.renderer = null;\n }, r;\n }()\n), Hl = (\n /** @class */\n function() {\n function r(t) {\n this.renderer = t, this.maskStack = [], this.glConst = 0;\n }\n return r.prototype.getStackLength = function() {\n return this.maskStack.length;\n }, r.prototype.setMaskStack = function(t) {\n var e = this.renderer.gl, n = this.getStackLength();\n this.maskStack = t;\n var i = this.getStackLength();\n i !== n && (i === 0 ? e.disable(this.glConst) : (e.enable(this.glConst), this._useCurrent()));\n }, r.prototype._useCurrent = function() {\n }, r.prototype.destroy = function() {\n this.renderer = null, this.maskStack = null;\n }, r;\n }()\n), Xu = new Dt(), ju = [], Zy = (\n /** @class */\n function(r) {\n xt(t, r);\n function t(e) {\n var n = r.call(this, e) || this;\n return n.glConst = k.ADAPTER.getWebGLRenderingContext().SCISSOR_TEST, n;\n }\n return t.prototype.getStackLength = function() {\n var e = this.maskStack[this.maskStack.length - 1];\n return e ? e._scissorCounter : 0;\n }, t.prototype.calcScissorRect = function(e) {\n var n;\n if (!e._scissorRectLocal) {\n var i = e._scissorRect, o = e.maskObject, a = this.renderer, s = a.renderTexture, u = o.getBounds(!0, (n = ju.pop()) !== null && n !== void 0 ? n : new ht());\n this.roundFrameToPixels(u, s.current ? s.current.resolution : a.resolution, s.sourceFrame, s.destinationFrame, a.projection.transform), i && u.fit(i), e._scissorRectLocal = u;\n }\n }, t.isMatrixRotated = function(e) {\n if (!e)\n return !1;\n var n = e.a, i = e.b, o = e.c, a = e.d;\n return (Math.abs(i) > 1e-4 || Math.abs(o) > 1e-4) && (Math.abs(n) > 1e-4 || Math.abs(a) > 1e-4);\n }, t.prototype.testScissor = function(e) {\n var n = e.maskObject;\n if (!n.isFastRect || !n.isFastRect() || t.isMatrixRotated(n.worldTransform) || t.isMatrixRotated(this.renderer.projection.transform))\n return !1;\n this.calcScissorRect(e);\n var i = e._scissorRectLocal;\n return i.width > 0 && i.height > 0;\n }, t.prototype.roundFrameToPixels = function(e, n, i, o, a) {\n t.isMatrixRotated(a) || (a = a ? Xu.copyFrom(a) : Xu.identity(), a.translate(-i.x, -i.y).scale(o.width / i.width, o.height / i.height).translate(o.x, o.y), this.renderer.filter.transformAABB(a, e), e.fit(o), e.x = Math.round(e.x * n), e.y = Math.round(e.y * n), e.width = Math.round(e.width * n), e.height = Math.round(e.height * n));\n }, t.prototype.push = function(e) {\n e._scissorRectLocal || this.calcScissorRect(e);\n var n = this.renderer.gl;\n e._scissorRect || n.enable(n.SCISSOR_TEST), e._scissorCounter++, e._scissorRect = e._scissorRectLocal, this._useCurrent();\n }, t.prototype.pop = function(e) {\n var n = this.renderer.gl;\n e && ju.push(e._scissorRectLocal), this.getStackLength() > 0 ? this._useCurrent() : n.disable(n.SCISSOR_TEST);\n }, t.prototype._useCurrent = function() {\n var e = this.maskStack[this.maskStack.length - 1]._scissorRect, n;\n this.renderer.renderTexture.current ? n = e.y : n = this.renderer.height - e.height - e.y, this.renderer.gl.scissor(e.x, n, e.width, e.height);\n }, t;\n }(Hl)\n), Jy = (\n /** @class */\n function(r) {\n xt(t, r);\n function t(e) {\n var n = r.call(this, e) || this;\n return n.glConst = k.ADAPTER.getWebGLRenderingContext().STENCIL_TEST, n;\n }\n return t.prototype.getStackLength = function() {\n var e = this.maskStack[this.maskStack.length - 1];\n return e ? e._stencilCounter : 0;\n }, t.prototype.push = function(e) {\n var n = e.maskObject, i = this.renderer.gl, o = e._stencilCounter;\n o === 0 && (this.renderer.framebuffer.forceStencil(), i.clearStencil(0), i.clear(i.STENCIL_BUFFER_BIT), i.enable(i.STENCIL_TEST)), e._stencilCounter++;\n var a = e._colorMask;\n a !== 0 && (e._colorMask = 0, i.colorMask(!1, !1, !1, !1)), i.stencilFunc(i.EQUAL, o, 4294967295), i.stencilOp(i.KEEP, i.KEEP, i.INCR), n.renderable = !0, n.render(this.renderer), this.renderer.batch.flush(), n.renderable = !1, a !== 0 && (e._colorMask = a, i.colorMask((a & 1) !== 0, (a & 2) !== 0, (a & 4) !== 0, (a & 8) !== 0)), this._useCurrent();\n }, t.prototype.pop = function(e) {\n var n = this.renderer.gl;\n if (this.getStackLength() === 0)\n n.disable(n.STENCIL_TEST);\n else {\n var i = this.maskStack.length !== 0 ? this.maskStack[this.maskStack.length - 1] : null, o = i ? i._colorMask : 15;\n o !== 0 && (i._colorMask = 0, n.colorMask(!1, !1, !1, !1)), n.stencilOp(n.KEEP, n.KEEP, n.DECR), e.renderable = !0, e.render(this.renderer), this.renderer.batch.flush(), e.renderable = !1, o !== 0 && (i._colorMask = o, n.colorMask((o & 1) !== 0, (o & 2) !== 0, (o & 4) !== 0, (o & 8) !== 0)), this._useCurrent();\n }\n }, t.prototype._useCurrent = function() {\n var e = this.renderer.gl;\n e.stencilFunc(e.EQUAL, this.getStackLength(), 4294967295), e.stencilOp(e.KEEP, e.KEEP, e.KEEP);\n }, t;\n }(Hl)\n), Qy = (\n /** @class */\n function() {\n function r(t) {\n this.renderer = t, this.destinationFrame = null, this.sourceFrame = null, this.defaultFrame = null, this.projectionMatrix = new Dt(), this.transform = null;\n }\n return r.prototype.update = function(t, e, n, i) {\n this.destinationFrame = t || this.destinationFrame || this.defaultFrame, this.sourceFrame = e || this.sourceFrame || t, this.calculateProjection(this.destinationFrame, this.sourceFrame, n, i), this.transform && this.projectionMatrix.append(this.transform);\n var o = this.renderer;\n o.globalUniforms.uniforms.projectionMatrix = this.projectionMatrix, o.globalUniforms.update(), o.shader.shader && o.shader.syncUniformGroup(o.shader.shader.uniforms.globals);\n }, r.prototype.calculateProjection = function(t, e, n, i) {\n var o = this.projectionMatrix, a = i ? -1 : 1;\n o.identity(), o.a = 1 / e.width * 2, o.d = a * (1 / e.height * 2), o.tx = -1 - e.x * o.a, o.ty = -a - e.y * o.d;\n }, r.prototype.setTransform = function(t) {\n }, r.prototype.destroy = function() {\n this.renderer = null;\n }, r;\n }()\n), We = new ht(), en = new ht(), t0 = (\n /** @class */\n function() {\n function r(t) {\n this.renderer = t, this.clearColor = t._backgroundColorRgba, this.defaultMaskStack = [], this.current = null, this.sourceFrame = new ht(), this.destinationFrame = new ht(), this.viewportFrame = new ht();\n }\n return r.prototype.bind = function(t, e, n) {\n t === void 0 && (t = null);\n var i = this.renderer;\n this.current = t;\n var o, a, s;\n t ? (o = t.baseTexture, s = o.resolution, e || (We.width = t.frame.width, We.height = t.frame.height, e = We), n || (en.x = t.frame.x, en.y = t.frame.y, en.width = e.width, en.height = e.height, n = en), a = o.framebuffer) : (s = i.resolution, e || (We.width = i.screen.width, We.height = i.screen.height, e = We), n || (n = We, n.width = e.width, n.height = e.height));\n var u = this.viewportFrame;\n u.x = n.x * s, u.y = n.y * s, u.width = n.width * s, u.height = n.height * s, t || (u.y = i.view.height - (u.y + u.height)), u.ceil(), this.renderer.framebuffer.bind(a, u), this.renderer.projection.update(n, e, s, !a), t ? this.renderer.mask.setMaskStack(o.maskStack) : this.renderer.mask.setMaskStack(this.defaultMaskStack), this.sourceFrame.copyFrom(e), this.destinationFrame.copyFrom(n);\n }, r.prototype.clear = function(t, e) {\n this.current ? t = t || this.current.baseTexture.clearColor : t = t || this.clearColor;\n var n = this.destinationFrame, i = this.current ? this.current.baseTexture : this.renderer.screen, o = n.width !== i.width || n.height !== i.height;\n if (o) {\n var a = this.viewportFrame, s = a.x, u = a.y, h = a.width, f = a.height;\n s = Math.round(s), u = Math.round(u), h = Math.round(h), f = Math.round(f), this.renderer.gl.enable(this.renderer.gl.SCISSOR_TEST), this.renderer.gl.scissor(s, u, h, f);\n }\n this.renderer.framebuffer.clear(t[0], t[1], t[2], t[3], e), o && this.renderer.scissor.pop();\n }, r.prototype.resize = function() {\n this.bind(null);\n }, r.prototype.reset = function() {\n this.bind(null);\n }, r.prototype.destroy = function() {\n this.renderer = null;\n }, r;\n }()\n);\nfunction e0(r, t, e, n, i) {\n e.buffer.update(i);\n}\nvar r0 = {\n float: `\n data[offset] = v;\n `,\n vec2: `\n data[offset] = v[0];\n data[offset+1] = v[1];\n `,\n vec3: `\n data[offset] = v[0];\n data[offset+1] = v[1];\n data[offset+2] = v[2];\n\n `,\n vec4: `\n data[offset] = v[0];\n data[offset+1] = v[1];\n data[offset+2] = v[2];\n data[offset+3] = v[3];\n `,\n mat2: `\n data[offset] = v[0];\n data[offset+1] = v[1];\n\n data[offset+4] = v[2];\n data[offset+5] = v[3];\n `,\n mat3: `\n data[offset] = v[0];\n data[offset+1] = v[1];\n data[offset+2] = v[2];\n\n data[offset + 4] = v[3];\n data[offset + 5] = v[4];\n data[offset + 6] = v[5];\n\n data[offset + 8] = v[6];\n data[offset + 9] = v[7];\n data[offset + 10] = v[8];\n `,\n mat4: `\n for(var i = 0; i < 16; i++)\n {\n data[offset + i] = v[i];\n }\n `\n}, Xl = {\n float: 4,\n vec2: 8,\n vec3: 12,\n vec4: 16,\n int: 4,\n ivec2: 8,\n ivec3: 12,\n ivec4: 16,\n uint: 4,\n uvec2: 8,\n uvec3: 12,\n uvec4: 16,\n bool: 4,\n bvec2: 8,\n bvec3: 12,\n bvec4: 16,\n mat2: 16 * 2,\n mat3: 16 * 3,\n mat4: 16 * 4\n};\nfunction n0(r) {\n for (var t = r.map(function(u) {\n return {\n data: u,\n offset: 0,\n dataLen: 0,\n dirty: 0\n };\n }), e = 0, n = 0, i = 0, o = 0; o < t.length; o++) {\n var a = t[o];\n if (e = Xl[a.data.type], a.data.size > 1 && (e = Math.max(e, 16) * a.data.size), a.dataLen = e, n % e !== 0 && n < 16) {\n var s = n % e % 16;\n n += s, i += s;\n }\n n + e > 16 ? (i = Math.ceil(i / 16) * 16, a.offset = i, i += e, n = e) : (a.offset = i, n += e, i += e);\n }\n return i = Math.ceil(i / 16) * 16, { uboElements: t, size: i };\n}\nfunction i0(r, t) {\n var e = [];\n for (var n in r)\n t[n] && e.push(t[n]);\n return e.sort(function(i, o) {\n return i.index - o.index;\n }), e;\n}\nfunction o0(r, t) {\n if (!r.autoManage)\n return { size: 0, syncFunc: e0 };\n for (var e = i0(r.uniforms, t), n = n0(e), i = n.uboElements, o = n.size, a = [`\n var v = null;\n var v2 = null;\n var cv = null;\n var t = 0;\n var gl = renderer.gl\n var index = 0;\n var data = buffer.data;\n `], s = 0; s < i.length; s++) {\n for (var u = i[s], h = r.uniforms[u.data.name], f = u.data.name, l = !1, c = 0; c < Ur.length; c++) {\n var d = Ur[c];\n if (d.codeUbo && d.test(u.data, h)) {\n a.push(\"offset = \" + u.offset / 4 + \";\", Ur[c].codeUbo(u.data.name, h)), l = !0;\n break;\n }\n }\n if (!l)\n if (u.data.size > 1) {\n var p = Gl(u.data.type), v = Math.max(Xl[u.data.type] / 16, 1), _ = p / v, g = (4 - _ % 4) % 4;\n a.push(`\n cv = ud.` + f + `.value;\n v = uv.` + f + `;\n offset = ` + u.offset / 4 + `;\n\n t = 0;\n\n for(var i=0; i < ` + u.data.size * v + `; i++)\n {\n for(var j = 0; j < ` + _ + `; j++)\n {\n data[offset++] = v[t++];\n }\n offset += ` + g + `;\n }\n\n `);\n } else {\n var m = r0[u.data.type];\n a.push(`\n cv = ud.` + f + `.value;\n v = uv.` + f + `;\n offset = ` + u.offset / 4 + `;\n ` + m + `;\n `);\n }\n }\n return a.push(`\n renderer.buffer.update(buffer);\n `), {\n size: o,\n // eslint-disable-next-line no-new-func\n syncFunc: new Function(\"ud\", \"uv\", \"renderer\", \"syncData\", \"buffer\", a.join(`\n`))\n };\n}\nvar a0 = (\n /** @class */\n function() {\n function r(t, e) {\n this.program = t, this.uniformData = e, this.uniformGroups = {}, this.uniformDirtyGroups = {}, this.uniformBufferBindings = {};\n }\n return r.prototype.destroy = function() {\n this.uniformData = null, this.uniformGroups = null, this.uniformDirtyGroups = null, this.uniformBufferBindings = null, this.program = null;\n }, r;\n }()\n);\nfunction s0(r, t) {\n for (var e = {}, n = t.getProgramParameter(r, t.ACTIVE_ATTRIBUTES), i = 0; i < n; i++) {\n var o = t.getActiveAttrib(r, i);\n if (o.name.indexOf(\"gl_\") !== 0) {\n var a = kl(t, o.type), s = {\n type: a,\n name: o.name,\n size: Gl(a),\n location: t.getAttribLocation(r, o.name)\n };\n e[o.name] = s;\n }\n }\n return e;\n}\nfunction u0(r, t) {\n for (var e = {}, n = t.getProgramParameter(r, t.ACTIVE_UNIFORMS), i = 0; i < n; i++) {\n var o = t.getActiveUniform(r, i), a = o.name.replace(/\\[.*?\\]$/, \"\"), s = !!o.name.match(/\\[.*?\\]$/), u = kl(t, o.type);\n e[a] = {\n name: a,\n index: i,\n type: u,\n size: o.size,\n isArray: s,\n value: Ll(u, o.size)\n };\n }\n return e;\n}\nfunction h0(r, t) {\n var e = Lu(r, r.VERTEX_SHADER, t.vertexSrc), n = Lu(r, r.FRAGMENT_SHADER, t.fragmentSrc), i = r.createProgram();\n if (r.attachShader(i, e), r.attachShader(i, n), r.linkProgram(i), r.getProgramParameter(i, r.LINK_STATUS) || Cy(r, i, e, n), t.attributeData = s0(i, r), t.uniformData = u0(i, r), !/^[ \\t]*#[ \\t]*version[ \\t]+300[ \\t]+es[ \\t]*$/m.test(t.vertexSrc)) {\n var o = Object.keys(t.attributeData);\n o.sort(function(f, l) {\n return f > l ? 1 : -1;\n });\n for (var a = 0; a < o.length; a++)\n t.attributeData[o[a]].location = a, r.bindAttribLocation(i, a, o[a]);\n r.linkProgram(i);\n }\n r.deleteShader(e), r.deleteShader(n);\n var s = {};\n for (var a in t.uniformData) {\n var u = t.uniformData[a];\n s[a] = {\n location: r.getUniformLocation(i, a),\n value: Ll(u.type, u.size)\n };\n }\n var h = new a0(i, s);\n return h;\n}\nvar l0 = 0, Qn = { textureCount: 0, uboCount: 0 }, f0 = (\n /** @class */\n function() {\n function r(t) {\n this.destroyed = !1, this.renderer = t, this.systemCheck(), this.gl = null, this.shader = null, this.program = null, this.cache = {}, this._uboCache = {}, this.id = l0++;\n }\n return r.prototype.systemCheck = function() {\n if (!Hy())\n throw new Error(\"Current environment does not allow unsafe-eval, please use @pixi/unsafe-eval module to enable support.\");\n }, r.prototype.contextChange = function(t) {\n this.gl = t, this.reset();\n }, r.prototype.bind = function(t, e) {\n t.disposeRunner.add(this), t.uniforms.globals = this.renderer.globalUniforms;\n var n = t.program, i = n.glPrograms[this.renderer.CONTEXT_UID] || this.generateProgram(t);\n return this.shader = t, this.program !== n && (this.program = n, this.gl.useProgram(i.program)), e || (Qn.textureCount = 0, Qn.uboCount = 0, this.syncUniformGroup(t.uniformGroup, Qn)), i;\n }, r.prototype.setUniforms = function(t) {\n var e = this.shader.program, n = e.glPrograms[this.renderer.CONTEXT_UID];\n e.syncUniforms(n.uniformData, t, this.renderer);\n }, r.prototype.syncUniformGroup = function(t, e) {\n var n = this.getGlProgram();\n (!t.static || t.dirtyId !== n.uniformDirtyGroups[t.id]) && (n.uniformDirtyGroups[t.id] = t.dirtyId, this.syncUniforms(t, n, e));\n }, r.prototype.syncUniforms = function(t, e, n) {\n var i = t.syncUniforms[this.shader.program.id] || this.createSyncGroups(t);\n i(e.uniformData, t.uniforms, this.renderer, n);\n }, r.prototype.createSyncGroups = function(t) {\n var e = this.getSignature(t, this.shader.program.uniformData, \"u\");\n return this.cache[e] || (this.cache[e] = Ly(t, this.shader.program.uniformData)), t.syncUniforms[this.shader.program.id] = this.cache[e], t.syncUniforms[this.shader.program.id];\n }, r.prototype.syncUniformBufferGroup = function(t, e) {\n var n = this.getGlProgram();\n if (!t.static || t.dirtyId !== 0 || !n.uniformGroups[t.id]) {\n t.dirtyId = 0;\n var i = n.uniformGroups[t.id] || this.createSyncBufferGroup(t, n, e);\n t.buffer.update(), i(n.uniformData, t.uniforms, this.renderer, Qn, t.buffer);\n }\n this.renderer.buffer.bindBufferBase(t.buffer, n.uniformBufferBindings[e]);\n }, r.prototype.createSyncBufferGroup = function(t, e, n) {\n var i = this.renderer.gl;\n this.renderer.buffer.bind(t.buffer);\n var o = this.gl.getUniformBlockIndex(e.program, n);\n e.uniformBufferBindings[n] = this.shader.uniformBindCount, i.uniformBlockBinding(e.program, o, this.shader.uniformBindCount), this.shader.uniformBindCount++;\n var a = this.getSignature(t, this.shader.program.uniformData, \"ubo\"), s = this._uboCache[a];\n if (s || (s = this._uboCache[a] = o0(t, this.shader.program.uniformData)), t.autoManage) {\n var u = new Float32Array(s.size / 4);\n t.buffer.update(u);\n }\n return e.uniformGroups[t.id] = s.syncFunc, e.uniformGroups[t.id];\n }, r.prototype.getSignature = function(t, e, n) {\n var i = t.uniforms, o = [n + \"-\"];\n for (var a in i)\n o.push(a), e[a] && o.push(e[a].type);\n return o.join(\"-\");\n }, r.prototype.getGlProgram = function() {\n return this.shader ? this.shader.program.glPrograms[this.renderer.CONTEXT_UID] : null;\n }, r.prototype.generateProgram = function(t) {\n var e = this.gl, n = t.program, i = h0(e, n);\n return n.glPrograms[this.renderer.CONTEXT_UID] = i, i;\n }, r.prototype.reset = function() {\n this.program = null, this.shader = null;\n }, r.prototype.disposeShader = function(t) {\n this.shader === t && (this.shader = null);\n }, r.prototype.destroy = function() {\n this.renderer = null, this.destroyed = !0;\n }, r;\n }()\n);\nfunction c0(r, t) {\n return t === void 0 && (t = []), t[V.NORMAL] = [r.ONE, r.ONE_MINUS_SRC_ALPHA], t[V.ADD] = [r.ONE, r.ONE], t[V.MULTIPLY] = [r.DST_COLOR, r.ONE_MINUS_SRC_ALPHA, r.ONE, r.ONE_MINUS_SRC_ALPHA], t[V.SCREEN] = [r.ONE, r.ONE_MINUS_SRC_COLOR, r.ONE, r.ONE_MINUS_SRC_ALPHA], t[V.OVERLAY] = [r.ONE, r.ONE_MINUS_SRC_ALPHA], t[V.DARKEN] = [r.ONE, r.ONE_MINUS_SRC_ALPHA], t[V.LIGHTEN] = [r.ONE, r.ONE_MINUS_SRC_ALPHA], t[V.COLOR_DODGE] = [r.ONE, r.ONE_MINUS_SRC_ALPHA], t[V.COLOR_BURN] = [r.ONE, r.ONE_MINUS_SRC_ALPHA], t[V.HARD_LIGHT] = [r.ONE, r.ONE_MINUS_SRC_ALPHA], t[V.SOFT_LIGHT] = [r.ONE, r.ONE_MINUS_SRC_ALPHA], t[V.DIFFERENCE] = [r.ONE, r.ONE_MINUS_SRC_ALPHA], t[V.EXCLUSION] = [r.ONE, r.ONE_MINUS_SRC_ALPHA], t[V.HUE] = [r.ONE, r.ONE_MINUS_SRC_ALPHA], t[V.SATURATION] = [r.ONE, r.ONE_MINUS_SRC_ALPHA], t[V.COLOR] = [r.ONE, r.ONE_MINUS_SRC_ALPHA], t[V.LUMINOSITY] = [r.ONE, r.ONE_MINUS_SRC_ALPHA], t[V.NONE] = [0, 0], t[V.NORMAL_NPM] = [r.SRC_ALPHA, r.ONE_MINUS_SRC_ALPHA, r.ONE, r.ONE_MINUS_SRC_ALPHA], t[V.ADD_NPM] = [r.SRC_ALPHA, r.ONE, r.ONE, r.ONE], t[V.SCREEN_NPM] = [r.SRC_ALPHA, r.ONE_MINUS_SRC_COLOR, r.ONE, r.ONE_MINUS_SRC_ALPHA], t[V.SRC_IN] = [r.DST_ALPHA, r.ZERO], t[V.SRC_OUT] = [r.ONE_MINUS_DST_ALPHA, r.ZERO], t[V.SRC_ATOP] = [r.DST_ALPHA, r.ONE_MINUS_SRC_ALPHA], t[V.DST_OVER] = [r.ONE_MINUS_DST_ALPHA, r.ONE], t[V.DST_IN] = [r.ZERO, r.SRC_ALPHA], t[V.DST_OUT] = [r.ZERO, r.ONE_MINUS_SRC_ALPHA], t[V.DST_ATOP] = [r.ONE_MINUS_DST_ALPHA, r.SRC_ALPHA], t[V.XOR] = [r.ONE_MINUS_DST_ALPHA, r.ONE_MINUS_SRC_ALPHA], t[V.SUBTRACT] = [r.ONE, r.ONE, r.ONE, r.ONE, r.FUNC_REVERSE_SUBTRACT, r.FUNC_ADD], t;\n}\nvar d0 = 0, p0 = 1, v0 = 2, _0 = 3, m0 = 4, g0 = 5, y0 = (\n /** @class */\n function() {\n function r() {\n this.gl = null, this.stateId = 0, this.polygonOffset = 0, this.blendMode = V.NONE, this._blendEq = !1, this.map = [], this.map[d0] = this.setBlend, this.map[p0] = this.setOffset, this.map[v0] = this.setCullFace, this.map[_0] = this.setDepthTest, this.map[m0] = this.setFrontFace, this.map[g0] = this.setDepthMask, this.checks = [], this.defaultState = new dr(), this.defaultState.blend = !0;\n }\n return r.prototype.contextChange = function(t) {\n this.gl = t, this.blendModes = c0(t), this.set(this.defaultState), this.reset();\n }, r.prototype.set = function(t) {\n if (t = t || this.defaultState, this.stateId !== t.data) {\n for (var e = this.stateId ^ t.data, n = 0; e; )\n e & 1 && this.map[n].call(this, !!(t.data & 1 << n)), e = e >> 1, n++;\n this.stateId = t.data;\n }\n for (var n = 0; n < this.checks.length; n++)\n this.checks[n](this, t);\n }, r.prototype.forceState = function(t) {\n t = t || this.defaultState;\n for (var e = 0; e < this.map.length; e++)\n this.map[e].call(this, !!(t.data & 1 << e));\n for (var e = 0; e < this.checks.length; e++)\n this.checks[e](this, t);\n this.stateId = t.data;\n }, r.prototype.setBlend = function(t) {\n this.updateCheck(r.checkBlendMode, t), this.gl[t ? \"enable\" : \"disable\"](this.gl.BLEND);\n }, r.prototype.setOffset = function(t) {\n this.updateCheck(r.checkPolygonOffset, t), this.gl[t ? \"enable\" : \"disable\"](this.gl.POLYGON_OFFSET_FILL);\n }, r.prototype.setDepthTest = function(t) {\n this.gl[t ? \"enable\" : \"disable\"](this.gl.DEPTH_TEST);\n }, r.prototype.setDepthMask = function(t) {\n this.gl.depthMask(t);\n }, r.prototype.setCullFace = function(t) {\n this.gl[t ? \"enable\" : \"disable\"](this.gl.CULL_FACE);\n }, r.prototype.setFrontFace = function(t) {\n this.gl.frontFace(this.gl[t ? \"CW\" : \"CCW\"]);\n }, r.prototype.setBlendMode = function(t) {\n if (t !== this.blendMode) {\n this.blendMode = t;\n var e = this.blendModes[t], n = this.gl;\n e.length === 2 ? n.blendFunc(e[0], e[1]) : n.blendFuncSeparate(e[0], e[1], e[2], e[3]), e.length === 6 ? (this._blendEq = !0, n.blendEquationSeparate(e[4], e[5])) : this._blendEq && (this._blendEq = !1, n.blendEquationSeparate(n.FUNC_ADD, n.FUNC_ADD));\n }\n }, r.prototype.setPolygonOffset = function(t, e) {\n this.gl.polygonOffset(t, e);\n }, r.prototype.reset = function() {\n this.gl.pixelStorei(this.gl.UNPACK_FLIP_Y_WEBGL, !1), this.forceState(this.defaultState), this._blendEq = !0, this.blendMode = -1, this.setBlendMode(0);\n }, r.prototype.updateCheck = function(t, e) {\n var n = this.checks.indexOf(t);\n e && n === -1 ? this.checks.push(t) : !e && n !== -1 && this.checks.splice(n, 1);\n }, r.checkBlendMode = function(t, e) {\n t.setBlendMode(e.blendMode);\n }, r.checkPolygonOffset = function(t, e) {\n t.setPolygonOffset(1, e.polygonOffset);\n }, r.prototype.destroy = function() {\n this.gl = null;\n }, r;\n }()\n), b0 = (\n /** @class */\n function() {\n function r(t) {\n this.renderer = t, this.count = 0, this.checkCount = 0, this.maxIdle = k.GC_MAX_IDLE, this.checkCountMax = k.GC_MAX_CHECK_COUNT, this.mode = k.GC_MODE;\n }\n return r.prototype.postrender = function() {\n this.renderer.renderingToScreen && (this.count++, this.mode !== Ai.MANUAL && (this.checkCount++, this.checkCount > this.checkCountMax && (this.checkCount = 0, this.run())));\n }, r.prototype.run = function() {\n for (var t = this.renderer.texture, e = t.managedTextures, n = !1, i = 0; i < e.length; i++) {\n var o = e[i];\n !o.framebuffer && this.count - o.touched > this.maxIdle && (t.destroyTexture(o, !0), e[i] = null, n = !0);\n }\n if (n) {\n for (var a = 0, i = 0; i < e.length; i++)\n e[i] !== null && (e[a++] = e[i]);\n e.length = a;\n }\n }, r.prototype.unload = function(t) {\n var e = this.renderer.texture, n = t._texture;\n n && !n.framebuffer && e.destroyTexture(n);\n for (var i = t.children.length - 1; i >= 0; i--)\n this.unload(t.children[i]);\n }, r.prototype.destroy = function() {\n this.renderer = null;\n }, r;\n }()\n);\nfunction x0(r) {\n var t, e, n, i, o, a, s, u, h, f, l, c, d, p, v, _, g, m, y, T, x, w, S;\n return \"WebGL2RenderingContext\" in globalThis && r instanceof globalThis.WebGL2RenderingContext ? S = (t = {}, t[j.UNSIGNED_BYTE] = (e = {}, e[G.RGBA] = r.RGBA8, e[G.RGB] = r.RGB8, e[G.RG] = r.RG8, e[G.RED] = r.R8, e[G.RGBA_INTEGER] = r.RGBA8UI, e[G.RGB_INTEGER] = r.RGB8UI, e[G.RG_INTEGER] = r.RG8UI, e[G.RED_INTEGER] = r.R8UI, e[G.ALPHA] = r.ALPHA, e[G.LUMINANCE] = r.LUMINANCE, e[G.LUMINANCE_ALPHA] = r.LUMINANCE_ALPHA, e), t[j.BYTE] = (n = {}, n[G.RGBA] = r.RGBA8_SNORM, n[G.RGB] = r.RGB8_SNORM, n[G.RG] = r.RG8_SNORM, n[G.RED] = r.R8_SNORM, n[G.RGBA_INTEGER] = r.RGBA8I, n[G.RGB_INTEGER] = r.RGB8I, n[G.RG_INTEGER] = r.RG8I, n[G.RED_INTEGER] = r.R8I, n), t[j.UNSIGNED_SHORT] = (i = {}, i[G.RGBA_INTEGER] = r.RGBA16UI, i[G.RGB_INTEGER] = r.RGB16UI, i[G.RG_INTEGER] = r.RG16UI, i[G.RED_INTEGER] = r.R16UI, i[G.DEPTH_COMPONENT] = r.DEPTH_COMPONENT16, i), t[j.SHORT] = (o = {}, o[G.RGBA_INTEGER] = r.RGBA16I, o[G.RGB_INTEGER] = r.RGB16I, o[G.RG_INTEGER] = r.RG16I, o[G.RED_INTEGER] = r.R16I, o), t[j.UNSIGNED_INT] = (a = {}, a[G.RGBA_INTEGER] = r.RGBA32UI, a[G.RGB_INTEGER] = r.RGB32UI, a[G.RG_INTEGER] = r.RG32UI, a[G.RED_INTEGER] = r.R32UI, a[G.DEPTH_COMPONENT] = r.DEPTH_COMPONENT24, a), t[j.INT] = (s = {}, s[G.RGBA_INTEGER] = r.RGBA32I, s[G.RGB_INTEGER] = r.RGB32I, s[G.RG_INTEGER] = r.RG32I, s[G.RED_INTEGER] = r.R32I, s), t[j.FLOAT] = (u = {}, u[G.RGBA] = r.RGBA32F, u[G.RGB] = r.RGB32F, u[G.RG] = r.RG32F, u[G.RED] = r.R32F, u[G.DEPTH_COMPONENT] = r.DEPTH_COMPONENT32F, u), t[j.HALF_FLOAT] = (h = {}, h[G.RGBA] = r.RGBA16F, h[G.RGB] = r.RGB16F, h[G.RG] = r.RG16F, h[G.RED] = r.R16F, h), t[j.UNSIGNED_SHORT_5_6_5] = (f = {}, f[G.RGB] = r.RGB565, f), t[j.UNSIGNED_SHORT_4_4_4_4] = (l = {}, l[G.RGBA] = r.RGBA4, l), t[j.UNSIGNED_SHORT_5_5_5_1] = (c = {}, c[G.RGBA] = r.RGB5_A1, c), t[j.UNSIGNED_INT_2_10_10_10_REV] = (d = {}, d[G.RGBA] = r.RGB10_A2, d[G.RGBA_INTEGER] = r.RGB10_A2UI, d), t[j.UNSIGNED_INT_10F_11F_11F_REV] = (p = {}, p[G.RGB] = r.R11F_G11F_B10F, p), t[j.UNSIGNED_INT_5_9_9_9_REV] = (v = {}, v[G.RGB] = r.RGB9_E5, v), t[j.UNSIGNED_INT_24_8] = (_ = {}, _[G.DEPTH_STENCIL] = r.DEPTH24_STENCIL8, _), t[j.FLOAT_32_UNSIGNED_INT_24_8_REV] = (g = {}, g[G.DEPTH_STENCIL] = r.DEPTH32F_STENCIL8, g), t) : S = (m = {}, m[j.UNSIGNED_BYTE] = (y = {}, y[G.RGBA] = r.RGBA, y[G.RGB] = r.RGB, y[G.ALPHA] = r.ALPHA, y[G.LUMINANCE] = r.LUMINANCE, y[G.LUMINANCE_ALPHA] = r.LUMINANCE_ALPHA, y), m[j.UNSIGNED_SHORT_5_6_5] = (T = {}, T[G.RGB] = r.RGB, T), m[j.UNSIGNED_SHORT_4_4_4_4] = (x = {}, x[G.RGBA] = r.RGBA, x), m[j.UNSIGNED_SHORT_5_5_5_1] = (w = {}, w[G.RGBA] = r.RGBA, w), m), S;\n}\nvar wo = (\n /** @class */\n function() {\n function r(t) {\n this.texture = t, this.width = -1, this.height = -1, this.dirtyId = -1, this.dirtyStyleId = -1, this.mipmap = !1, this.wrapMode = 33071, this.type = j.UNSIGNED_BYTE, this.internalFormat = G.RGBA, this.samplerType = 0;\n }\n return r;\n }()\n), E0 = (\n /** @class */\n function() {\n function r(t) {\n this.renderer = t, this.boundTextures = [], this.currentLocation = -1, this.managedTextures = [], this._unknownBoundTextures = !1, this.unknownTexture = new ut(), this.hasIntegerTextures = !1;\n }\n return r.prototype.contextChange = function() {\n var t = this.gl = this.renderer.gl;\n this.CONTEXT_UID = this.renderer.CONTEXT_UID, this.webGLVersion = this.renderer.context.webGLVersion, this.internalFormats = x0(t);\n var e = t.getParameter(t.MAX_TEXTURE_IMAGE_UNITS);\n this.boundTextures.length = e;\n for (var n = 0; n < e; n++)\n this.boundTextures[n] = null;\n this.emptyTextures = {};\n var i = new wo(t.createTexture());\n t.bindTexture(t.TEXTURE_2D, i.texture), t.texImage2D(t.TEXTURE_2D, 0, t.RGBA, 1, 1, 0, t.RGBA, t.UNSIGNED_BYTE, new Uint8Array(4)), this.emptyTextures[t.TEXTURE_2D] = i, this.emptyTextures[t.TEXTURE_CUBE_MAP] = new wo(t.createTexture()), t.bindTexture(t.TEXTURE_CUBE_MAP, this.emptyTextures[t.TEXTURE_CUBE_MAP].texture);\n for (var n = 0; n < 6; n++)\n t.texImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X + n, 0, t.RGBA, 1, 1, 0, t.RGBA, t.UNSIGNED_BYTE, null);\n t.texParameteri(t.TEXTURE_CUBE_MAP, t.TEXTURE_MAG_FILTER, t.LINEAR), t.texParameteri(t.TEXTURE_CUBE_MAP, t.TEXTURE_MIN_FILTER, t.LINEAR);\n for (var n = 0; n < this.boundTextures.length; n++)\n this.bind(null, n);\n }, r.prototype.bind = function(t, e) {\n e === void 0 && (e = 0);\n var n = this.gl;\n if (t = t == null ? void 0 : t.castToBaseTexture(), t && t.valid && !t.parentTextureArray) {\n t.touched = this.renderer.textureGC.count;\n var i = t._glTextures[this.CONTEXT_UID] || this.initTexture(t);\n this.boundTextures[e] !== t && (this.currentLocation !== e && (this.currentLocation = e, n.activeTexture(n.TEXTURE0 + e)), n.bindTexture(t.target, i.texture)), i.dirtyId !== t.dirtyId ? (this.currentLocation !== e && (this.currentLocation = e, n.activeTexture(n.TEXTURE0 + e)), this.updateTexture(t)) : i.dirtyStyleId !== t.dirtyStyleId && this.updateTextureStyle(t), this.boundTextures[e] = t;\n } else\n this.currentLocation !== e && (this.currentLocation = e, n.activeTexture(n.TEXTURE0 + e)), n.bindTexture(n.TEXTURE_2D, this.emptyTextures[n.TEXTURE_2D].texture), this.boundTextures[e] = null;\n }, r.prototype.reset = function() {\n this._unknownBoundTextures = !0, this.hasIntegerTextures = !1, this.currentLocation = -1;\n for (var t = 0; t < this.boundTextures.length; t++)\n this.boundTextures[t] = this.unknownTexture;\n }, r.prototype.unbind = function(t) {\n var e = this, n = e.gl, i = e.boundTextures;\n if (this._unknownBoundTextures) {\n this._unknownBoundTextures = !1;\n for (var o = 0; o < i.length; o++)\n i[o] === this.unknownTexture && this.bind(null, o);\n }\n for (var o = 0; o < i.length; o++)\n i[o] === t && (this.currentLocation !== o && (n.activeTexture(n.TEXTURE0 + o), this.currentLocation = o), n.bindTexture(t.target, this.emptyTextures[t.target].texture), i[o] = null);\n }, r.prototype.ensureSamplerType = function(t) {\n var e = this, n = e.boundTextures, i = e.hasIntegerTextures, o = e.CONTEXT_UID;\n if (i)\n for (var a = t - 1; a >= 0; --a) {\n var s = n[a];\n if (s) {\n var u = s._glTextures[o];\n u.samplerType !== Si.FLOAT && this.renderer.texture.unbind(s);\n }\n }\n }, r.prototype.initTexture = function(t) {\n var e = new wo(this.gl.createTexture());\n return e.dirtyId = -1, t._glTextures[this.CONTEXT_UID] = e, this.managedTextures.push(t), t.on(\"dispose\", this.destroyTexture, this), e;\n }, r.prototype.initTextureType = function(t, e) {\n var n, i;\n e.internalFormat = (i = (n = this.internalFormats[t.type]) === null || n === void 0 ? void 0 : n[t.format]) !== null && i !== void 0 ? i : t.format, this.webGLVersion === 2 && t.type === j.HALF_FLOAT ? e.type = this.gl.HALF_FLOAT : e.type = t.type;\n }, r.prototype.updateTexture = function(t) {\n var e = t._glTextures[this.CONTEXT_UID];\n if (e) {\n var n = this.renderer;\n if (this.initTextureType(t, e), t.resource && t.resource.upload(n, t, e))\n e.samplerType !== Si.FLOAT && (this.hasIntegerTextures = !0);\n else {\n var i = t.realWidth, o = t.realHeight, a = n.gl;\n (e.width !== i || e.height !== o || e.dirtyId < 0) && (e.width = i, e.height = o, a.texImage2D(t.target, 0, e.internalFormat, i, o, 0, t.format, e.type, null));\n }\n t.dirtyStyleId !== e.dirtyStyleId && this.updateTextureStyle(t), e.dirtyId = t.dirtyId;\n }\n }, r.prototype.destroyTexture = function(t, e) {\n var n = this.gl;\n if (t = t.castToBaseTexture(), t._glTextures[this.CONTEXT_UID] && (this.unbind(t), n.deleteTexture(t._glTextures[this.CONTEXT_UID].texture), t.off(\"dispose\", this.destroyTexture, this), delete t._glTextures[this.CONTEXT_UID], !e)) {\n var i = this.managedTextures.indexOf(t);\n i !== -1 && Lr(this.managedTextures, i, 1);\n }\n }, r.prototype.updateTextureStyle = function(t) {\n var e = t._glTextures[this.CONTEXT_UID];\n e && ((t.mipmap === le.POW2 || this.webGLVersion !== 2) && !t.isPowerOfTwo ? e.mipmap = !1 : e.mipmap = t.mipmap >= 1, this.webGLVersion !== 2 && !t.isPowerOfTwo ? e.wrapMode = ye.CLAMP : e.wrapMode = t.wrapMode, t.resource && t.resource.style(this.renderer, t, e) || this.setStyle(t, e), e.dirtyStyleId = t.dirtyStyleId);\n }, r.prototype.setStyle = function(t, e) {\n var n = this.gl;\n if (e.mipmap && t.mipmap !== le.ON_MANUAL && n.generateMipmap(t.target), n.texParameteri(t.target, n.TEXTURE_WRAP_S, e.wrapMode), n.texParameteri(t.target, n.TEXTURE_WRAP_T, e.wrapMode), e.mipmap) {\n n.texParameteri(t.target, n.TEXTURE_MIN_FILTER, t.scaleMode === me.LINEAR ? n.LINEAR_MIPMAP_LINEAR : n.NEAREST_MIPMAP_NEAREST);\n var i = this.renderer.context.extensions.anisotropicFiltering;\n if (i && t.anisotropicLevel > 0 && t.scaleMode === me.LINEAR) {\n var o = Math.min(t.anisotropicLevel, n.getParameter(i.MAX_TEXTURE_MAX_ANISOTROPY_EXT));\n n.texParameterf(t.target, i.TEXTURE_MAX_ANISOTROPY_EXT, o);\n }\n } else\n n.texParameteri(t.target, n.TEXTURE_MIN_FILTER, t.scaleMode === me.LINEAR ? n.LINEAR : n.NEAREST);\n n.texParameteri(t.target, n.TEXTURE_MAG_FILTER, t.scaleMode === me.LINEAR ? n.LINEAR : n.NEAREST);\n }, r.prototype.destroy = function() {\n this.renderer = null;\n }, r;\n }()\n), So = new Dt(), T0 = (\n /** @class */\n function(r) {\n xt(t, r);\n function t(e, n) {\n e === void 0 && (e = gn.UNKNOWN);\n var i = r.call(this) || this;\n return n = Object.assign({}, k.RENDER_OPTIONS, n), i.options = n, i.type = e, i.screen = new ht(0, 0, n.width, n.height), i.view = n.view || k.ADAPTER.createCanvas(), i.resolution = n.resolution || k.RESOLUTION, i.useContextAlpha = n.useContextAlpha, i.autoDensity = !!n.autoDensity, i.preserveDrawingBuffer = n.preserveDrawingBuffer, i.clearBeforeRender = n.clearBeforeRender, i._backgroundColor = 0, i._backgroundColorRgba = [0, 0, 0, 1], i._backgroundColorString = \"#000000\", i.backgroundColor = n.backgroundColor || i._backgroundColor, i.backgroundAlpha = n.backgroundAlpha, n.transparent !== void 0 && (he(\"6.0.0\", \"Option transparent is deprecated, please use backgroundAlpha instead.\"), i.useContextAlpha = n.transparent, i.backgroundAlpha = n.transparent ? 0 : 1), i._lastObjectRendered = null, i.plugins = {}, i;\n }\n return t.prototype.initPlugins = function(e) {\n for (var n in e)\n this.plugins[n] = new e[n](this);\n }, Object.defineProperty(t.prototype, \"width\", {\n /**\n * Same as view.width, actual number of pixels in the canvas by horizontal.\n * @member {number}\n * @readonly\n * @default 800\n */\n get: function() {\n return this.view.width;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"height\", {\n /**\n * Same as view.height, actual number of pixels in the canvas by vertical.\n * @member {number}\n * @readonly\n * @default 600\n */\n get: function() {\n return this.view.height;\n },\n enumerable: !1,\n configurable: !0\n }), t.prototype.resize = function(e, n) {\n this.view.width = Math.round(e * this.resolution), this.view.height = Math.round(n * this.resolution);\n var i = this.view.width / this.resolution, o = this.view.height / this.resolution;\n this.screen.width = i, this.screen.height = o, this.autoDensity && (this.view.style.width = i + \"px\", this.view.style.height = o + \"px\"), this.emit(\"resize\", i, o);\n }, t.prototype.generateTexture = function(e, n, i, o) {\n n === void 0 && (n = {}), typeof n == \"number\" && (he(\"6.1.0\", \"generateTexture options (scaleMode, resolution, region) are now object options.\"), n = { scaleMode: n, resolution: i, region: o });\n var a = n.region, s = oy(n, [\"region\"]);\n o = a || e.getLocalBounds(null, !0), o.width === 0 && (o.width = 1), o.height === 0 && (o.height = 1);\n var u = fr.create(fa({ width: o.width, height: o.height }, s));\n return So.tx = -o.x, So.ty = -o.y, this.render(e, {\n renderTexture: u,\n clear: !1,\n transform: So,\n skipUpdateTransform: !!e.parent\n }), u;\n }, t.prototype.destroy = function(e) {\n for (var n in this.plugins)\n this.plugins[n].destroy(), this.plugins[n] = null;\n e && this.view.parentNode && this.view.parentNode.removeChild(this.view);\n var i = this;\n i.plugins = null, i.type = gn.UNKNOWN, i.view = null, i.screen = null, i._tempDisplayObjectParent = null, i.options = null, this._backgroundColorRgba = null, this._backgroundColorString = null, this._lastObjectRendered = null;\n }, Object.defineProperty(t.prototype, \"backgroundColor\", {\n /**\n * The background color to fill if not transparent\n * @member {number}\n */\n get: function() {\n return this._backgroundColor;\n },\n set: function(e) {\n this._backgroundColor = e, this._backgroundColorString = Tl(e), Yr(e, this._backgroundColorRgba);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"backgroundAlpha\", {\n /**\n * The background color alpha. Setting this to 0 will make the canvas transparent.\n * @member {number}\n */\n get: function() {\n return this._backgroundColorRgba[3];\n },\n set: function(e) {\n this._backgroundColorRgba[3] = e;\n },\n enumerable: !1,\n configurable: !0\n }), t;\n }(Rn)\n), w0 = (\n /** @class */\n function() {\n function r(t) {\n this.buffer = t || null, this.updateID = -1, this.byteLength = -1, this.refCount = 0;\n }\n return r;\n }()\n), S0 = (\n /** @class */\n function() {\n function r(t) {\n this.renderer = t, this.managedBuffers = {}, this.boundBufferBases = {};\n }\n return r.prototype.destroy = function() {\n this.renderer = null;\n }, r.prototype.contextChange = function() {\n this.disposeAll(!0), this.gl = this.renderer.gl, this.CONTEXT_UID = this.renderer.CONTEXT_UID;\n }, r.prototype.bind = function(t) {\n var e = this, n = e.gl, i = e.CONTEXT_UID, o = t._glBuffers[i] || this.createGLBuffer(t);\n n.bindBuffer(t.type, o.buffer);\n }, r.prototype.bindBufferBase = function(t, e) {\n var n = this, i = n.gl, o = n.CONTEXT_UID;\n if (this.boundBufferBases[e] !== t) {\n var a = t._glBuffers[o] || this.createGLBuffer(t);\n this.boundBufferBases[e] = t, i.bindBufferBase(i.UNIFORM_BUFFER, e, a.buffer);\n }\n }, r.prototype.bindBufferRange = function(t, e, n) {\n var i = this, o = i.gl, a = i.CONTEXT_UID;\n n = n || 0;\n var s = t._glBuffers[a] || this.createGLBuffer(t);\n o.bindBufferRange(o.UNIFORM_BUFFER, e || 0, s.buffer, n * 256, 256);\n }, r.prototype.update = function(t) {\n var e = this, n = e.gl, i = e.CONTEXT_UID, o = t._glBuffers[i];\n if (t._updateID !== o.updateID)\n if (o.updateID = t._updateID, n.bindBuffer(t.type, o.buffer), o.byteLength >= t.data.byteLength)\n n.bufferSubData(t.type, 0, t.data);\n else {\n var a = t.static ? n.STATIC_DRAW : n.DYNAMIC_DRAW;\n o.byteLength = t.data.byteLength, n.bufferData(t.type, t.data, a);\n }\n }, r.prototype.dispose = function(t, e) {\n if (this.managedBuffers[t.id]) {\n delete this.managedBuffers[t.id];\n var n = t._glBuffers[this.CONTEXT_UID], i = this.gl;\n t.disposeRunner.remove(this), n && (e || i.deleteBuffer(n.buffer), delete t._glBuffers[this.CONTEXT_UID]);\n }\n }, r.prototype.disposeAll = function(t) {\n for (var e = Object.keys(this.managedBuffers), n = 0; n < e.length; n++)\n this.dispose(this.managedBuffers[e[n]], t);\n }, r.prototype.createGLBuffer = function(t) {\n var e = this, n = e.CONTEXT_UID, i = e.gl;\n return t._glBuffers[n] = new w0(i.createBuffer()), this.managedBuffers[t.id] = t, t.disposeRunner.add(this), t._glBuffers[n];\n }, r;\n }()\n), jl = (\n /** @class */\n function(r) {\n xt(t, r);\n function t(e) {\n var n = r.call(this, gn.WEBGL, e) || this;\n return e = n.options, n.gl = null, n.CONTEXT_UID = 0, n.runners = {\n destroy: new Gt(\"destroy\"),\n contextChange: new Gt(\"contextChange\"),\n reset: new Gt(\"reset\"),\n update: new Gt(\"update\"),\n postrender: new Gt(\"postrender\"),\n prerender: new Gt(\"prerender\"),\n resize: new Gt(\"resize\")\n }, n.runners.contextChange.add(n), n.globalUniforms = new ur({\n projectionMatrix: new Dt()\n }, !0), n.addSystem(Ky, \"mask\").addSystem(Sy, \"context\").addSystem(y0, \"state\").addSystem(f0, \"shader\").addSystem(E0, \"texture\").addSystem(S0, \"buffer\").addSystem(Ry, \"geometry\").addSystem(Oy, \"framebuffer\").addSystem(Zy, \"scissor\").addSystem(Jy, \"stencil\").addSystem(Qy, \"projection\").addSystem(b0, \"textureGC\").addSystem(Ty, \"filter\").addSystem(t0, \"renderTexture\").addSystem(wy, \"batch\"), n.initPlugins(t.__plugins), n.multisample = void 0, e.context ? n.context.initFromContext(e.context) : n.context.initFromOptions({\n alpha: !!n.useContextAlpha,\n antialias: e.antialias,\n premultipliedAlpha: n.useContextAlpha && n.useContextAlpha !== \"notMultiplied\",\n stencil: !0,\n preserveDrawingBuffer: e.preserveDrawingBuffer,\n powerPreference: n.options.powerPreference\n }), n.renderingToScreen = !0, r_(n.context.webGLVersion === 2 ? \"WebGL 2\" : \"WebGL 1\"), n.resize(n.options.width, n.options.height), n;\n }\n return t.create = function(e) {\n if (n_())\n return new t(e);\n throw new Error('WebGL unsupported in this browser, use \"pixi.js-legacy\" for fallback canvas2d support.');\n }, t.prototype.contextChange = function() {\n var e = this.gl, n;\n if (this.context.webGLVersion === 1) {\n var i = e.getParameter(e.FRAMEBUFFER_BINDING);\n e.bindFramebuffer(e.FRAMEBUFFER, null), n = e.getParameter(e.SAMPLES), e.bindFramebuffer(e.FRAMEBUFFER, i);\n } else {\n var i = e.getParameter(e.DRAW_FRAMEBUFFER_BINDING);\n e.bindFramebuffer(e.DRAW_FRAMEBUFFER, null), n = e.getParameter(e.SAMPLES), e.bindFramebuffer(e.DRAW_FRAMEBUFFER, i);\n }\n n >= wt.HIGH ? this.multisample = wt.HIGH : n >= wt.MEDIUM ? this.multisample = wt.MEDIUM : n >= wt.LOW ? this.multisample = wt.LOW : this.multisample = wt.NONE;\n }, t.prototype.addSystem = function(e, n) {\n var i = new e(this);\n if (this[n])\n throw new Error('Whoops! The name \"' + n + '\" is already in use');\n this[n] = i;\n for (var o in this.runners)\n this.runners[o].add(i);\n return this;\n }, t.prototype.render = function(e, n) {\n var i, o, a, s;\n if (n && (n instanceof fr ? (he(\"6.0.0\", \"Renderer#render arguments changed, use options instead.\"), i = n, o = arguments[2], a = arguments[3], s = arguments[4]) : (i = n.renderTexture, o = n.clear, a = n.transform, s = n.skipUpdateTransform)), this.renderingToScreen = !i, this.runners.prerender.emit(), this.emit(\"prerender\"), this.projection.transform = a, !this.context.isLost) {\n if (i || (this._lastObjectRendered = e), !s) {\n var u = e.enableTempParent();\n e.updateTransform(), e.disableTempParent(u);\n }\n this.renderTexture.bind(i), this.batch.currentRenderer.start(), (o !== void 0 ? o : this.clearBeforeRender) && this.renderTexture.clear(), e.render(this), this.batch.currentRenderer.flush(), i && i.baseTexture.update(), this.runners.postrender.emit(), this.projection.transform = null, this.emit(\"postrender\");\n }\n }, t.prototype.generateTexture = function(e, n, i, o) {\n n === void 0 && (n = {});\n var a = r.prototype.generateTexture.call(this, e, n, i, o);\n return this.framebuffer.blit(), a;\n }, t.prototype.resize = function(e, n) {\n r.prototype.resize.call(this, e, n), this.runners.resize.emit(this.screen.height, this.screen.width);\n }, t.prototype.reset = function() {\n return this.runners.reset.emit(), this;\n }, t.prototype.clear = function() {\n this.renderTexture.bind(), this.renderTexture.clear();\n }, t.prototype.destroy = function(e) {\n this.runners.destroy.emit();\n for (var n in this.runners)\n this.runners[n].destroy();\n r.prototype.destroy.call(this, e), this.gl = null;\n }, Object.defineProperty(t.prototype, \"extract\", {\n /**\n * Please use `plugins.extract` instead.\n * @member {PIXI.Extract} extract\n * @deprecated since 6.0.0\n * @readonly\n */\n get: function() {\n return he(\"6.0.0\", \"Renderer#extract has been deprecated, please use Renderer#plugins.extract instead.\"), this.plugins.extract;\n },\n enumerable: !1,\n configurable: !0\n }), t.registerPlugin = function(e, n) {\n he(\"6.5.0\", \"Renderer.registerPlugin() has been deprecated, please use extensions.add() instead.\"), Me.add({\n name: e,\n type: gt.RendererPlugin,\n ref: n\n });\n }, t.__plugins = {}, t;\n }(T0)\n);\nMe.handleByMap(gt.RendererPlugin, jl.__plugins);\nfunction Yl(r) {\n return jl.create(r);\n}\nvar A0 = `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}`, P0 = `attribute vec2 aVertexPosition;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n\nuniform vec4 inputSize;\nuniform vec4 outputFrame;\n\nvec4 filterVertexPosition( void )\n{\n vec2 position = aVertexPosition * max(outputFrame.zw, vec2(0.)) + outputFrame.xy;\n\n return vec4((projectionMatrix * vec3(position, 1.0)).xy, 0.0, 1.0);\n}\n\nvec2 filterTextureCoord( void )\n{\n return aVertexPosition * (outputFrame.zw * inputSize.zw);\n}\n\nvoid main(void)\n{\n gl_Position = filterVertexPosition();\n vTextureCoord = filterTextureCoord();\n}\n`, O0 = A0, Vl = P0, da = (\n /** @class */\n function() {\n function r() {\n this.texArray = null, this.blend = 0, this.type = se.TRIANGLES, this.start = 0, this.size = 0, this.data = null;\n }\n return r;\n }()\n), pa = (\n /** @class */\n function() {\n function r() {\n this.elements = [], this.ids = [], this.count = 0;\n }\n return r.prototype.clear = function() {\n for (var t = 0; t < this.count; t++)\n this.elements[t] = null;\n this.count = 0;\n }, r;\n }()\n), va = (\n /** @class */\n function() {\n function r(t) {\n typeof t == \"number\" ? this.rawBinaryData = new ArrayBuffer(t) : t instanceof Uint8Array ? this.rawBinaryData = t.buffer : this.rawBinaryData = t, this.uint32View = new Uint32Array(this.rawBinaryData), this.float32View = new Float32Array(this.rawBinaryData);\n }\n return Object.defineProperty(r.prototype, \"int8View\", {\n /** View on the raw binary data as a `Int8Array`. */\n get: function() {\n return this._int8View || (this._int8View = new Int8Array(this.rawBinaryData)), this._int8View;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"uint8View\", {\n /** View on the raw binary data as a `Uint8Array`. */\n get: function() {\n return this._uint8View || (this._uint8View = new Uint8Array(this.rawBinaryData)), this._uint8View;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"int16View\", {\n /** View on the raw binary data as a `Int16Array`. */\n get: function() {\n return this._int16View || (this._int16View = new Int16Array(this.rawBinaryData)), this._int16View;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"uint16View\", {\n /** View on the raw binary data as a `Uint16Array`. */\n get: function() {\n return this._uint16View || (this._uint16View = new Uint16Array(this.rawBinaryData)), this._uint16View;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"int32View\", {\n /** View on the raw binary data as a `Int32Array`. */\n get: function() {\n return this._int32View || (this._int32View = new Int32Array(this.rawBinaryData)), this._int32View;\n },\n enumerable: !1,\n configurable: !0\n }), r.prototype.view = function(t) {\n return this[t + \"View\"];\n }, r.prototype.destroy = function() {\n this.rawBinaryData = null, this._int8View = null, this._uint8View = null, this._int16View = null, this._uint16View = null, this._int32View = null, this.uint32View = null, this.float32View = null;\n }, r.sizeOf = function(t) {\n switch (t) {\n case \"int8\":\n case \"uint8\":\n return 1;\n case \"int16\":\n case \"uint16\":\n return 2;\n case \"int32\":\n case \"uint32\":\n case \"float32\":\n return 4;\n default:\n throw new Error(t + \" isn't a valid view type\");\n }\n }, r;\n }()\n), R0 = (\n /** @class */\n function(r) {\n xt(t, r);\n function t(e) {\n var n = r.call(this, e) || this;\n return n.shaderGenerator = null, n.geometryClass = null, n.vertexSize = null, n.state = dr.for2d(), n.size = k.SPRITE_BATCH_SIZE * 4, n._vertexCount = 0, n._indexCount = 0, n._bufferedElements = [], n._bufferedTextures = [], n._bufferSize = 0, n._shader = null, n._packedGeometries = [], n._packedGeometryPoolSize = 2, n._flushId = 0, n._aBuffers = {}, n._iBuffers = {}, n.MAX_TEXTURES = 1, n.renderer.on(\"prerender\", n.onPrerender, n), e.runners.contextChange.add(n), n._dcIndex = 0, n._aIndex = 0, n._iIndex = 0, n._attributeBuffer = null, n._indexBuffer = null, n._tempBoundTextures = [], n;\n }\n return t.prototype.contextChange = function() {\n var e = this.renderer.gl;\n k.PREFER_ENV === Ie.WEBGL_LEGACY ? this.MAX_TEXTURES = 1 : (this.MAX_TEXTURES = Math.min(e.getParameter(e.MAX_TEXTURE_IMAGE_UNITS), k.SPRITE_MAX_TEXTURES), this.MAX_TEXTURES = ky(this.MAX_TEXTURES, e)), this._shader = this.shaderGenerator.generateShader(this.MAX_TEXTURES);\n for (var n = 0; n < this._packedGeometryPoolSize; n++)\n this._packedGeometries[n] = new this.geometryClass();\n this.initFlushBuffers();\n }, t.prototype.initFlushBuffers = function() {\n for (var e = t._drawCallPool, n = t._textureArrayPool, i = this.size / 4, o = Math.floor(i / this.MAX_TEXTURES) + 1; e.length < i; )\n e.push(new da());\n for (; n.length < o; )\n n.push(new pa());\n for (var a = 0; a < this.MAX_TEXTURES; a++)\n this._tempBoundTextures[a] = null;\n }, t.prototype.onPrerender = function() {\n this._flushId = 0;\n }, t.prototype.render = function(e) {\n e._texture.valid && (this._vertexCount + e.vertexData.length / 2 > this.size && this.flush(), this._vertexCount += e.vertexData.length / 2, this._indexCount += e.indices.length, this._bufferedTextures[this._bufferSize] = e._texture.baseTexture, this._bufferedElements[this._bufferSize++] = e);\n }, t.prototype.buildTexturesAndDrawCalls = function() {\n var e = this, n = e._bufferedTextures, i = e.MAX_TEXTURES, o = t._textureArrayPool, a = this.renderer.batch, s = this._tempBoundTextures, u = this.renderer.textureGC.count, h = ++ut._globalBatch, f = 0, l = o[0], c = 0;\n a.copyBoundTextures(s, i);\n for (var d = 0; d < this._bufferSize; ++d) {\n var p = n[d];\n n[d] = null, p._batchEnabled !== h && (l.count >= i && (a.boundArray(l, s, h, i), this.buildDrawCalls(l, c, d), c = d, l = o[++f], ++h), p._batchEnabled = h, p.touched = u, l.elements[l.count++] = p);\n }\n l.count > 0 && (a.boundArray(l, s, h, i), this.buildDrawCalls(l, c, this._bufferSize), ++f, ++h);\n for (var d = 0; d < s.length; d++)\n s[d] = null;\n ut._globalBatch = h;\n }, t.prototype.buildDrawCalls = function(e, n, i) {\n var o = this, a = o._bufferedElements, s = o._attributeBuffer, u = o._indexBuffer, h = o.vertexSize, f = t._drawCallPool, l = this._dcIndex, c = this._aIndex, d = this._iIndex, p = f[l];\n p.start = this._iIndex, p.texArray = e;\n for (var v = n; v < i; ++v) {\n var _ = a[v], g = _._texture.baseTexture, m = wl[g.alphaMode ? 1 : 0][_.blendMode];\n a[v] = null, n < v && p.blend !== m && (p.size = d - p.start, n = v, p = f[++l], p.texArray = e, p.start = d), this.packInterleavedGeometry(_, s, u, c, d), c += _.vertexData.length / 2 * h, d += _.indices.length, p.blend = m;\n }\n n < i && (p.size = d - p.start, ++l), this._dcIndex = l, this._aIndex = c, this._iIndex = d;\n }, t.prototype.bindAndClearTexArray = function(e) {\n for (var n = this.renderer.texture, i = 0; i < e.count; i++)\n n.bind(e.elements[i], e.ids[i]), e.elements[i] = null;\n e.count = 0;\n }, t.prototype.updateGeometry = function() {\n var e = this, n = e._packedGeometries, i = e._attributeBuffer, o = e._indexBuffer;\n k.CAN_UPLOAD_SAME_BUFFER ? (n[this._flushId]._buffer.update(i.rawBinaryData), n[this._flushId]._indexBuffer.update(o), this.renderer.geometry.updateBuffers()) : (this._packedGeometryPoolSize <= this._flushId && (this._packedGeometryPoolSize++, n[this._flushId] = new this.geometryClass()), n[this._flushId]._buffer.update(i.rawBinaryData), n[this._flushId]._indexBuffer.update(o), this.renderer.geometry.bind(n[this._flushId]), this.renderer.geometry.updateBuffers(), this._flushId++);\n }, t.prototype.drawBatches = function() {\n for (var e = this._dcIndex, n = this.renderer, i = n.gl, o = n.state, a = t._drawCallPool, s = null, u = 0; u < e; u++) {\n var h = a[u], f = h.texArray, l = h.type, c = h.size, d = h.start, p = h.blend;\n s !== f && (s = f, this.bindAndClearTexArray(f)), this.state.blendMode = p, o.set(this.state), i.drawElements(l, c, i.UNSIGNED_SHORT, d * 2);\n }\n }, t.prototype.flush = function() {\n this._vertexCount !== 0 && (this._attributeBuffer = this.getAttributeBuffer(this._vertexCount), this._indexBuffer = this.getIndexBuffer(this._indexCount), this._aIndex = 0, this._iIndex = 0, this._dcIndex = 0, this.buildTexturesAndDrawCalls(), this.updateGeometry(), this.drawBatches(), this._bufferSize = 0, this._vertexCount = 0, this._indexCount = 0);\n }, t.prototype.start = function() {\n this.renderer.state.set(this.state), this.renderer.texture.ensureSamplerType(this.MAX_TEXTURES), this.renderer.shader.bind(this._shader), k.CAN_UPLOAD_SAME_BUFFER && this.renderer.geometry.bind(this._packedGeometries[this._flushId]);\n }, t.prototype.stop = function() {\n this.flush();\n }, t.prototype.destroy = function() {\n for (var e = 0; e < this._packedGeometryPoolSize; e++)\n this._packedGeometries[e] && this._packedGeometries[e].destroy();\n this.renderer.off(\"prerender\", this.onPrerender, this), this._aBuffers = null, this._iBuffers = null, this._packedGeometries = null, this._attributeBuffer = null, this._indexBuffer = null, this._shader && (this._shader.destroy(), this._shader = null), r.prototype.destroy.call(this);\n }, t.prototype.getAttributeBuffer = function(e) {\n var n = Mi(Math.ceil(e / 8)), i = Ou(n), o = n * 8;\n this._aBuffers.length <= i && (this._iBuffers.length = i + 1);\n var a = this._aBuffers[o];\n return a || (this._aBuffers[o] = a = new va(o * this.vertexSize * 4)), a;\n }, t.prototype.getIndexBuffer = function(e) {\n var n = Mi(Math.ceil(e / 12)), i = Ou(n), o = n * 12;\n this._iBuffers.length <= i && (this._iBuffers.length = i + 1);\n var a = this._iBuffers[i];\n return a || (this._iBuffers[i] = a = new Uint16Array(o)), a;\n }, t.prototype.packInterleavedGeometry = function(e, n, i, o, a) {\n for (var s = n.uint32View, u = n.float32View, h = o / this.vertexSize, f = e.uvs, l = e.indices, c = e.vertexData, d = e._texture.baseTexture._batchLocation, p = Math.min(e.worldAlpha, 1), v = p < 1 && e._texture.baseTexture.alphaMode ? os(e._tintRGB, p) : e._tintRGB + (p * 255 << 24), _ = 0; _ < c.length; _ += 2)\n u[o++] = c[_], u[o++] = c[_ + 1], u[o++] = f[_], u[o++] = f[_ + 1], s[o++] = v, u[o++] = d;\n for (var _ = 0; _ < l.length; _++)\n i[a++] = h + l[_];\n }, t._drawCallPool = [], t._textureArrayPool = [], t;\n }(ji)\n), I0 = (\n /** @class */\n function() {\n function r(t, e) {\n if (this.vertexSrc = t, this.fragTemplate = e, this.programCache = {}, this.defaultGroupCache = {}, e.indexOf(\"%count%\") < 0)\n throw new Error('Fragment template must contain \"%count%\".');\n if (e.indexOf(\"%forloop%\") < 0)\n throw new Error('Fragment template must contain \"%forloop%\".');\n }\n return r.prototype.generateShader = function(t) {\n if (!this.programCache[t]) {\n for (var e = new Int32Array(t), n = 0; n < t; n++)\n e[n] = n;\n this.defaultGroupCache[t] = ur.from({ uSamplers: e }, !0);\n var i = this.fragTemplate;\n i = i.replace(/%count%/gi, \"\" + t), i = i.replace(/%forloop%/gi, this.generateSampleSrc(t)), this.programCache[t] = new Dn(this.vertexSrc, i);\n }\n var o = {\n tint: new Float32Array([1, 1, 1, 1]),\n translationMatrix: new Dt(),\n default: this.defaultGroupCache[t]\n };\n return new Ue(this.programCache[t], o);\n }, r.prototype.generateSampleSrc = function(t) {\n var e = \"\";\n e += `\n`, e += `\n`;\n for (var n = 0; n < t; n++)\n n > 0 && (e += `\nelse `), n < t - 1 && (e += \"if(vTextureId < \" + n + \".5)\"), e += `\n{`, e += `\n\tcolor = texture2D(uSamplers[` + n + \"], vTextureCoord);\", e += `\n}`;\n return e += `\n`, e += `\n`, e;\n }, r;\n }()\n), zl = (\n /** @class */\n function(r) {\n xt(t, r);\n function t(e) {\n e === void 0 && (e = !1);\n var n = r.call(this) || this;\n return n._buffer = new Mt(null, e, !1), n._indexBuffer = new Mt(null, e, !0), n.addAttribute(\"aVertexPosition\", n._buffer, 2, !1, j.FLOAT).addAttribute(\"aTextureCoord\", n._buffer, 2, !1, j.FLOAT).addAttribute(\"aColor\", n._buffer, 4, !0, j.UNSIGNED_BYTE).addAttribute(\"aTextureId\", n._buffer, 1, !0, j.FLOAT).addIndex(n._indexBuffer), n;\n }\n return t;\n }(Mn)\n), Yu = `precision highp float;\nattribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\nattribute vec4 aColor;\nattribute float aTextureId;\n\nuniform mat3 projectionMatrix;\nuniform mat3 translationMatrix;\nuniform vec4 tint;\n\nvarying vec2 vTextureCoord;\nvarying vec4 vColor;\nvarying float vTextureId;\n\nvoid main(void){\n gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n\n vTextureCoord = aTextureCoord;\n vTextureId = aTextureId;\n vColor = aColor * tint;\n}\n`, Vu = `varying vec2 vTextureCoord;\nvarying vec4 vColor;\nvarying float vTextureId;\nuniform sampler2D uSamplers[%count%];\n\nvoid main(void){\n vec4 color;\n %forloop%\n gl_FragColor = color * vColor;\n}\n`, C0 = (\n /** @class */\n function() {\n function r() {\n }\n return r.create = function(t) {\n var e = Object.assign({\n vertex: Yu,\n fragment: Vu,\n geometryClass: zl,\n vertexSize: 6\n }, t), n = e.vertex, i = e.fragment, o = e.vertexSize, a = e.geometryClass;\n return (\n /** @class */\n function(s) {\n xt(u, s);\n function u(h) {\n var f = s.call(this, h) || this;\n return f.shaderGenerator = new I0(n, i), f.geometryClass = a, f.vertexSize = o, f;\n }\n return u;\n }(R0)\n );\n }, Object.defineProperty(r, \"defaultVertexSrc\", {\n /**\n * The default vertex shader source\n * @readonly\n */\n get: function() {\n return Yu;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r, \"defaultFragmentTemplate\", {\n /**\n * The default fragment shader source\n * @readonly\n */\n get: function() {\n return Vu;\n },\n enumerable: !1,\n configurable: !0\n }), r;\n }()\n), Wl = C0.create();\nObject.assign(Wl, {\n extension: {\n name: \"batch\",\n type: gt.RendererPlugin\n }\n});\n/*!\n * @pixi/accessibility - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/accessibility is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\nvar M0 = {\n /**\n * Flag for if the object is accessible. If true AccessibilityManager will overlay a\n * shadow div with attributes set\n * @member {boolean}\n * @memberof PIXI.DisplayObject#\n */\n accessible: !1,\n /**\n * Sets the title attribute of the shadow div\n * If accessibleTitle AND accessibleHint has not been this will default to 'displayObject [tabIndex]'\n * @member {?string}\n * @memberof PIXI.DisplayObject#\n */\n accessibleTitle: null,\n /**\n * Sets the aria-label attribute of the shadow div\n * @member {string}\n * @memberof PIXI.DisplayObject#\n */\n accessibleHint: null,\n /**\n * @member {number}\n * @memberof PIXI.DisplayObject#\n * @private\n * @todo Needs docs.\n */\n tabIndex: 0,\n /**\n * @member {boolean}\n * @memberof PIXI.DisplayObject#\n * @todo Needs docs.\n */\n _accessibleActive: !1,\n /**\n * @member {boolean}\n * @memberof PIXI.DisplayObject#\n * @todo Needs docs.\n */\n _accessibleDiv: null,\n /**\n * Specify the type of div the accessible layer is. Screen readers treat the element differently\n * depending on this type. Defaults to button.\n * @member {string}\n * @memberof PIXI.DisplayObject#\n * @default 'button'\n */\n accessibleType: \"button\",\n /**\n * Specify the pointer-events the accessible div will use\n * Defaults to auto.\n * @member {string}\n * @memberof PIXI.DisplayObject#\n * @default 'auto'\n */\n accessiblePointerEvents: \"auto\",\n /**\n * Setting to false will prevent any children inside this container to\n * be accessible. Defaults to true.\n * @member {boolean}\n * @memberof PIXI.DisplayObject#\n * @default true\n */\n accessibleChildren: !0,\n renderId: -1\n};\nIt.mixin(M0);\nvar D0 = 9, ti = 100, F0 = 0, B0 = 0, zu = 2, Wu = 1, N0 = -1e3, L0 = -1e3, U0 = 2, G0 = (\n /** @class */\n function() {\n function r(t) {\n this.debug = !1, this._isActive = !1, this._isMobileAccessibility = !1, this.pool = [], this.renderId = 0, this.children = [], this.androidUpdateCount = 0, this.androidUpdateFrequency = 500, this._hookDiv = null, (ge.tablet || ge.phone) && this.createTouchHook();\n var e = document.createElement(\"div\");\n e.style.width = ti + \"px\", e.style.height = ti + \"px\", e.style.position = \"absolute\", e.style.top = F0 + \"px\", e.style.left = B0 + \"px\", e.style.zIndex = zu.toString(), this.div = e, this.renderer = t, this._onKeyDown = this._onKeyDown.bind(this), this._onMouseMove = this._onMouseMove.bind(this), globalThis.addEventListener(\"keydown\", this._onKeyDown, !1);\n }\n return Object.defineProperty(r.prototype, \"isActive\", {\n /**\n * Value of `true` if accessibility is currently active and accessibility layers are showing.\n * @member {boolean}\n * @readonly\n */\n get: function() {\n return this._isActive;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"isMobileAccessibility\", {\n /**\n * Value of `true` if accessibility is enabled for touch devices.\n * @member {boolean}\n * @readonly\n */\n get: function() {\n return this._isMobileAccessibility;\n },\n enumerable: !1,\n configurable: !0\n }), r.prototype.createTouchHook = function() {\n var t = this, e = document.createElement(\"button\");\n e.style.width = Wu + \"px\", e.style.height = Wu + \"px\", e.style.position = \"absolute\", e.style.top = N0 + \"px\", e.style.left = L0 + \"px\", e.style.zIndex = U0.toString(), e.style.backgroundColor = \"#FF0000\", e.title = \"select to enable accessibility for this content\", e.addEventListener(\"focus\", function() {\n t._isMobileAccessibility = !0, t.activate(), t.destroyTouchHook();\n }), document.body.appendChild(e), this._hookDiv = e;\n }, r.prototype.destroyTouchHook = function() {\n this._hookDiv && (document.body.removeChild(this._hookDiv), this._hookDiv = null);\n }, r.prototype.activate = function() {\n var t;\n this._isActive || (this._isActive = !0, globalThis.document.addEventListener(\"mousemove\", this._onMouseMove, !0), globalThis.removeEventListener(\"keydown\", this._onKeyDown, !1), this.renderer.on(\"postrender\", this.update, this), (t = this.renderer.view.parentNode) === null || t === void 0 || t.appendChild(this.div));\n }, r.prototype.deactivate = function() {\n var t;\n !this._isActive || this._isMobileAccessibility || (this._isActive = !1, globalThis.document.removeEventListener(\"mousemove\", this._onMouseMove, !0), globalThis.addEventListener(\"keydown\", this._onKeyDown, !1), this.renderer.off(\"postrender\", this.update), (t = this.div.parentNode) === null || t === void 0 || t.removeChild(this.div));\n }, r.prototype.updateAccessibleObjects = function(t) {\n if (!(!t.visible || !t.accessibleChildren)) {\n t.accessible && t.interactive && (t._accessibleActive || this.addChild(t), t.renderId = this.renderId);\n var e = t.children;\n if (e)\n for (var n = 0; n < e.length; n++)\n this.updateAccessibleObjects(e[n]);\n }\n }, r.prototype.update = function() {\n var t = performance.now();\n if (!(ge.android.device && t < this.androidUpdateCount) && (this.androidUpdateCount = t + this.androidUpdateFrequency, !!this.renderer.renderingToScreen)) {\n this.renderer._lastObjectRendered && this.updateAccessibleObjects(this.renderer._lastObjectRendered);\n var e = this.renderer.view.getBoundingClientRect(), n = e.left, i = e.top, o = e.width, a = e.height, s = this.renderer, u = s.width, h = s.height, f = s.resolution, l = o / u * f, c = a / h * f, d = this.div;\n d.style.left = n + \"px\", d.style.top = i + \"px\", d.style.width = u + \"px\", d.style.height = h + \"px\";\n for (var p = 0; p < this.children.length; p++) {\n var v = this.children[p];\n if (v.renderId !== this.renderId)\n v._accessibleActive = !1, Lr(this.children, p, 1), this.div.removeChild(v._accessibleDiv), this.pool.push(v._accessibleDiv), v._accessibleDiv = null, p--;\n else {\n d = v._accessibleDiv;\n var _ = v.hitArea, g = v.worldTransform;\n v.hitArea ? (d.style.left = (g.tx + _.x * g.a) * l + \"px\", d.style.top = (g.ty + _.y * g.d) * c + \"px\", d.style.width = _.width * g.a * l + \"px\", d.style.height = _.height * g.d * c + \"px\") : (_ = v.getBounds(), this.capHitArea(_), d.style.left = _.x * l + \"px\", d.style.top = _.y * c + \"px\", d.style.width = _.width * l + \"px\", d.style.height = _.height * c + \"px\", d.title !== v.accessibleTitle && v.accessibleTitle !== null && (d.title = v.accessibleTitle), d.getAttribute(\"aria-label\") !== v.accessibleHint && v.accessibleHint !== null && d.setAttribute(\"aria-label\", v.accessibleHint)), (v.accessibleTitle !== d.title || v.tabIndex !== d.tabIndex) && (d.title = v.accessibleTitle, d.tabIndex = v.tabIndex, this.debug && this.updateDebugHTML(d));\n }\n }\n this.renderId++;\n }\n }, r.prototype.updateDebugHTML = function(t) {\n t.innerHTML = \"type: \" + t.type + \"</br> title : \" + t.title + \"</br> tabIndex: \" + t.tabIndex;\n }, r.prototype.capHitArea = function(t) {\n t.x < 0 && (t.width += t.x, t.x = 0), t.y < 0 && (t.height += t.y, t.y = 0);\n var e = this.renderer, n = e.width, i = e.height;\n t.x + t.width > n && (t.width = n - t.x), t.y + t.height > i && (t.height = i - t.y);\n }, r.prototype.addChild = function(t) {\n var e = this.pool.pop();\n e || (e = document.createElement(\"button\"), e.style.width = ti + \"px\", e.style.height = ti + \"px\", e.style.backgroundColor = this.debug ? \"rgba(255,255,255,0.5)\" : \"transparent\", e.style.position = \"absolute\", e.style.zIndex = zu.toString(), e.style.borderStyle = \"none\", navigator.userAgent.toLowerCase().indexOf(\"chrome\") > -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))), e.style.pointerEvents = t.accessiblePointerEvents, e.type = t.accessibleType, t.accessibleTitle && t.accessibleTitle !== null ? e.title = t.accessibleTitle : (!t.accessibleHint || t.accessibleHint === null) && (e.title = \"displayObject \" + t.tabIndex), t.accessibleHint && t.accessibleHint !== null && e.setAttribute(\"aria-label\", t.accessibleHint), this.debug && this.updateDebugHTML(e), t._accessibleActive = !0, t._accessibleDiv = e, e.displayObject = t, this.children.push(t), this.div.appendChild(t._accessibleDiv), t._accessibleDiv.tabIndex = t.tabIndex;\n }, r.prototype._onClick = function(t) {\n var e = this.renderer.plugins.interaction, n = t.target.displayObject, i = e.eventData;\n e.dispatchEvent(n, \"click\", i), e.dispatchEvent(n, \"pointertap\", i), e.dispatchEvent(n, \"tap\", i);\n }, r.prototype._onFocus = function(t) {\n t.target.getAttribute(\"aria-live\") || t.target.setAttribute(\"aria-live\", \"assertive\");\n var e = this.renderer.plugins.interaction, n = t.target.displayObject, i = e.eventData;\n e.dispatchEvent(n, \"mouseover\", i);\n }, r.prototype._onFocusOut = function(t) {\n t.target.getAttribute(\"aria-live\") || t.target.setAttribute(\"aria-live\", \"polite\");\n var e = this.renderer.plugins.interaction, n = t.target.displayObject, i = e.eventData;\n e.dispatchEvent(n, \"mouseout\", i);\n }, r.prototype._onKeyDown = function(t) {\n t.keyCode === D0 && this.activate();\n }, r.prototype._onMouseMove = function(t) {\n t.movementX === 0 && t.movementY === 0 || this.deactivate();\n }, r.prototype.destroy = function() {\n this.destroyTouchHook(), this.div = null, globalThis.document.removeEventListener(\"mousemove\", this._onMouseMove, !0), globalThis.removeEventListener(\"keydown\", this._onKeyDown), this.pool = null, this.children = null, this.renderer = null;\n }, r.extension = {\n name: \"accessibility\",\n type: [\n gt.RendererPlugin,\n gt.CanvasRendererPlugin\n ]\n }, r;\n }()\n);\n/*!\n * @pixi/interaction - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/interaction is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\nvar qu = (\n /** @class */\n function() {\n function r() {\n this.pressure = 0, this.rotationAngle = 0, this.twist = 0, this.tangentialPressure = 0, this.global = new Tt(), 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;\n }\n return Object.defineProperty(r.prototype, \"pointerId\", {\n /**\n * The unique identifier of the pointer. It will be the same as `identifier`.\n * @readonly\n * @see https://developer.mozilla.org/en-US/docs/Web/API/PointerEvent/pointerId\n */\n get: function() {\n return this.identifier;\n },\n enumerable: !1,\n configurable: !0\n }), r.prototype.getLocalPosition = function(t, e, n) {\n return t.worldTransform.applyInverse(n || this.global, e);\n }, r.prototype.copyEvent = function(t) {\n \"isPrimary\" in t && t.isPrimary && (this.isPrimary = !0), this.button = \"button\" in t && t.button;\n var e = \"buttons\" in t && t.buttons;\n this.buttons = Number.isInteger(e) ? e : \"which\" in t && t.which, this.width = \"width\" in t && t.width, this.height = \"height\" in t && t.height, this.tiltX = \"tiltX\" in t && t.tiltX, this.tiltY = \"tiltY\" in t && t.tiltY, this.pointerType = \"pointerType\" in t && t.pointerType, this.pressure = \"pressure\" in t && t.pressure, this.rotationAngle = \"rotationAngle\" in t && t.rotationAngle, this.twist = \"twist\" in t && t.twist || 0, this.tangentialPressure = \"tangentialPressure\" in t && t.tangentialPressure || 0;\n }, r.prototype.reset = function() {\n this.isPrimary = !1;\n }, r;\n }()\n);\n/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\nvar _a = function(r, t) {\n return _a = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(e, n) {\n e.__proto__ = n;\n } || function(e, n) {\n for (var i in n)\n n.hasOwnProperty(i) && (e[i] = n[i]);\n }, _a(r, t);\n};\nfunction k0(r, t) {\n _a(r, t);\n function e() {\n this.constructor = r;\n }\n r.prototype = t === null ? Object.create(t) : (e.prototype = t.prototype, new e());\n}\nvar H0 = (\n /** @class */\n function() {\n function r() {\n this.stopped = !1, this.stopsPropagatingAt = null, this.stopPropagationHint = !1, this.target = null, this.currentTarget = null, this.type = null, this.data = null;\n }\n return r.prototype.stopPropagation = function() {\n this.stopped = !0, this.stopPropagationHint = !0, this.stopsPropagatingAt = this.currentTarget;\n }, r.prototype.reset = function() {\n this.stopped = !1, this.stopsPropagatingAt = null, this.stopPropagationHint = !1, this.currentTarget = null, this.target = null;\n }, r;\n }()\n), Ao = (\n /** @class */\n function() {\n function r(t) {\n this._pointerId = t, this._flags = r.FLAGS.NONE;\n }\n return r.prototype._doSet = function(t, e) {\n e ? this._flags = this._flags | t : this._flags = this._flags & ~t;\n }, Object.defineProperty(r.prototype, \"pointerId\", {\n /**\n * Unique pointer id of the event\n * @readonly\n * @private\n * @member {number}\n */\n get: function() {\n return this._pointerId;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"flags\", {\n /**\n * State of the tracking data, expressed as bit flags\n * @private\n * @member {number}\n */\n get: function() {\n return this._flags;\n },\n set: function(t) {\n this._flags = t;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"none\", {\n /**\n * Is the tracked event inactive (not over or down)?\n * @private\n * @member {number}\n */\n get: function() {\n return this._flags === r.FLAGS.NONE;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"over\", {\n /**\n * Is the tracked event over the DisplayObject?\n * @private\n * @member {boolean}\n */\n get: function() {\n return (this._flags & r.FLAGS.OVER) !== 0;\n },\n set: function(t) {\n this._doSet(r.FLAGS.OVER, t);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"rightDown\", {\n /**\n * Did the right mouse button come down in the DisplayObject?\n * @private\n * @member {boolean}\n */\n get: function() {\n return (this._flags & r.FLAGS.RIGHT_DOWN) !== 0;\n },\n set: function(t) {\n this._doSet(r.FLAGS.RIGHT_DOWN, t);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"leftDown\", {\n /**\n * Did the left mouse button come down in the DisplayObject?\n * @private\n * @member {boolean}\n */\n get: function() {\n return (this._flags & r.FLAGS.LEFT_DOWN) !== 0;\n },\n set: function(t) {\n this._doSet(r.FLAGS.LEFT_DOWN, t);\n },\n enumerable: !1,\n configurable: !0\n }), r.FLAGS = Object.freeze({\n NONE: 0,\n OVER: 1,\n LEFT_DOWN: 2,\n RIGHT_DOWN: 4\n }), r;\n }()\n), X0 = (\n /** @class */\n function() {\n function r() {\n this._tempPoint = new Tt();\n }\n return r.prototype.recursiveFindHit = function(t, e, n, i, o) {\n var a;\n if (!e || !e.visible)\n return !1;\n var s = t.data.global;\n o = e.interactive || o;\n var u = !1, h = o, f = !0;\n if (e.hitArea)\n i && (e.worldTransform.applyInverse(s, this._tempPoint), e.hitArea.contains(this._tempPoint.x, this._tempPoint.y) ? u = !0 : (i = !1, f = !1)), h = !1;\n else if (e._mask && i) {\n var l = e._mask.isMaskData ? e._mask.maskObject : e._mask;\n l && !(!((a = l.containsPoint) === null || a === void 0) && a.call(l, s)) && (i = !1);\n }\n if (f && e.interactiveChildren && e.children)\n for (var c = e.children, d = c.length - 1; d >= 0; d--) {\n var p = c[d], v = this.recursiveFindHit(t, p, n, i, h);\n if (v) {\n if (!p.parent)\n continue;\n h = !1, v && (t.target && (i = !1), u = !0);\n }\n }\n return o && (i && !t.target && !e.hitArea && e.containsPoint && e.containsPoint(s) && (u = !0), e.interactive && (u && !t.target && (t.target = e), n && n(t, e, !!u))), u;\n }, r.prototype.findHit = function(t, e, n, i) {\n this.recursiveFindHit(t, e, n, i, !1);\n }, r;\n }()\n), j0 = {\n interactive: !1,\n interactiveChildren: !0,\n hitArea: null,\n /**\n * If enabled, the mouse cursor use the pointer behavior when hovered over the displayObject if it is interactive\n * Setting this changes the 'cursor' property to `'pointer'`.\n * @example\n * const sprite = new PIXI.Sprite(texture);\n * sprite.interactive = true;\n * sprite.buttonMode = true;\n * @member {boolean}\n * @memberof PIXI.DisplayObject#\n */\n get buttonMode() {\n return this.cursor === \"pointer\";\n },\n set buttonMode(r) {\n r ? this.cursor = \"pointer\" : this.cursor === \"pointer\" && (this.cursor = null);\n },\n /**\n * This defines what cursor mode is used when the mouse cursor\n * is hovered over the displayObject.\n * @example\n * const sprite = new PIXI.Sprite(texture);\n * sprite.interactive = true;\n * sprite.cursor = 'wait';\n * @see https://developer.mozilla.org/en/docs/Web/CSS/cursor\n * @member {string}\n * @memberof PIXI.DisplayObject#\n */\n cursor: null,\n /**\n * Internal set of all active pointers, by identifier\n * @member {Map<number, InteractionTrackingData>}\n * @memberof PIXI.DisplayObject#\n * @private\n */\n get trackedPointers() {\n return this._trackedPointers === void 0 && (this._trackedPointers = {}), this._trackedPointers;\n },\n /**\n * Map of all tracked pointers, by identifier. Use trackedPointers to access.\n * @private\n * @type {Map<number, InteractionTrackingData>}\n */\n _trackedPointers: void 0\n};\nIt.mixin(j0);\nvar ei = 1, ri = {\n target: null,\n data: {\n global: null\n }\n}, Y0 = (\n /** @class */\n function(r) {\n k0(t, r);\n function t(e, n) {\n var i = r.call(this) || this;\n return n = n || {}, i.renderer = e, i.autoPreventDefault = n.autoPreventDefault !== void 0 ? n.autoPreventDefault : !0, i.interactionFrequency = n.interactionFrequency || 10, i.mouse = new qu(), i.mouse.identifier = ei, i.mouse.global.set(-999999), i.activeInteractionData = {}, i.activeInteractionData[ei] = i.mouse, i.interactionDataPool = [], i.eventData = new H0(), i.interactionDOMElement = null, i.moveWhenInside = !1, i.eventsAdded = !1, i.tickerAdded = !1, i.mouseOverRenderer = !(\"PointerEvent\" in globalThis), i.supportsTouchEvents = \"ontouchstart\" in globalThis, i.supportsPointerEvents = !!globalThis.PointerEvent, i.onPointerUp = i.onPointerUp.bind(i), i.processPointerUp = i.processPointerUp.bind(i), i.onPointerCancel = i.onPointerCancel.bind(i), i.processPointerCancel = i.processPointerCancel.bind(i), i.onPointerDown = i.onPointerDown.bind(i), i.processPointerDown = i.processPointerDown.bind(i), i.onPointerMove = i.onPointerMove.bind(i), i.processPointerMove = i.processPointerMove.bind(i), i.onPointerOut = i.onPointerOut.bind(i), i.processPointerOverOut = i.processPointerOverOut.bind(i), i.onPointerOver = i.onPointerOver.bind(i), i.cursorStyles = {\n default: \"inherit\",\n pointer: \"pointer\"\n }, i.currentCursorMode = null, i.cursor = null, i.resolution = 1, i.delayedEvents = [], i.search = new X0(), i._tempDisplayObject = new Il(), i._eventListenerOptions = { capture: !0, passive: !1 }, i._useSystemTicker = n.useSystemTicker !== void 0 ? n.useSystemTicker : !0, i.setTargetElement(i.renderer.view, i.renderer.resolution), i;\n }\n return Object.defineProperty(t.prototype, \"useSystemTicker\", {\n /**\n * Should the InteractionManager automatically add {@link tickerUpdate} to {@link PIXI.Ticker.system}.\n * @default true\n */\n get: function() {\n return this._useSystemTicker;\n },\n set: function(e) {\n this._useSystemTicker = e, e ? this.addTickerListener() : this.removeTickerListener();\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"lastObjectRendered\", {\n /**\n * Last rendered object or temp object.\n * @readonly\n * @protected\n */\n get: function() {\n return this.renderer._lastObjectRendered || this._tempDisplayObject;\n },\n enumerable: !1,\n configurable: !0\n }), t.prototype.hitTest = function(e, n) {\n return ri.target = null, ri.data.global = e, n || (n = this.lastObjectRendered), this.processInteractive(ri, n, null, !0), ri.target;\n }, t.prototype.setTargetElement = function(e, n) {\n n === void 0 && (n = 1), this.removeTickerListener(), this.removeEvents(), this.interactionDOMElement = e, this.resolution = n, this.addEvents(), this.addTickerListener();\n }, t.prototype.addTickerListener = function() {\n this.tickerAdded || !this.interactionDOMElement || !this._useSystemTicker || (kt.system.add(this.tickerUpdate, this, Ce.INTERACTION), this.tickerAdded = !0);\n }, t.prototype.removeTickerListener = function() {\n this.tickerAdded && (kt.system.remove(this.tickerUpdate, this), this.tickerAdded = !1);\n }, t.prototype.addEvents = function() {\n if (!(this.eventsAdded || !this.interactionDOMElement)) {\n var e = this.interactionDOMElement.style;\n globalThis.navigator.msPointerEnabled ? (e.msContentZooming = \"none\", e.msTouchAction = \"none\") : this.supportsPointerEvents && (e.touchAction = \"none\"), this.supportsPointerEvents ? (globalThis.document.addEventListener(\"pointermove\", this.onPointerMove, this._eventListenerOptions), this.interactionDOMElement.addEventListener(\"pointerdown\", this.onPointerDown, this._eventListenerOptions), this.interactionDOMElement.addEventListener(\"pointerleave\", this.onPointerOut, this._eventListenerOptions), this.interactionDOMElement.addEventListener(\"pointerover\", this.onPointerOver, this._eventListenerOptions), globalThis.addEventListener(\"pointercancel\", this.onPointerCancel, this._eventListenerOptions), globalThis.addEventListener(\"pointerup\", this.onPointerUp, this._eventListenerOptions)) : (globalThis.document.addEventListener(\"mousemove\", this.onPointerMove, this._eventListenerOptions), this.interactionDOMElement.addEventListener(\"mousedown\", this.onPointerDown, this._eventListenerOptions), this.interactionDOMElement.addEventListener(\"mouseout\", this.onPointerOut, this._eventListenerOptions), this.interactionDOMElement.addEventListener(\"mouseover\", this.onPointerOver, this._eventListenerOptions), globalThis.addEventListener(\"mouseup\", this.onPointerUp, this._eventListenerOptions)), this.supportsTouchEvents && (this.interactionDOMElement.addEventListener(\"touchstart\", this.onPointerDown, this._eventListenerOptions), this.interactionDOMElement.addEventListener(\"touchcancel\", this.onPointerCancel, this._eventListenerOptions), this.interactionDOMElement.addEventListener(\"touchend\", this.onPointerUp, this._eventListenerOptions), this.interactionDOMElement.addEventListener(\"touchmove\", this.onPointerMove, this._eventListenerOptions)), this.eventsAdded = !0;\n }\n }, t.prototype.removeEvents = function() {\n if (!(!this.eventsAdded || !this.interactionDOMElement)) {\n var e = this.interactionDOMElement.style;\n globalThis.navigator.msPointerEnabled ? (e.msContentZooming = \"\", e.msTouchAction = \"\") : this.supportsPointerEvents && (e.touchAction = \"\"), this.supportsPointerEvents ? (globalThis.document.removeEventListener(\"pointermove\", this.onPointerMove, this._eventListenerOptions), this.interactionDOMElement.removeEventListener(\"pointerdown\", this.onPointerDown, this._eventListenerOptions), this.interactionDOMElement.removeEventListener(\"pointerleave\", this.onPointerOut, this._eventListenerOptions), this.interactionDOMElement.removeEventListener(\"pointerover\", this.onPointerOver, this._eventListenerOptions), globalThis.removeEventListener(\"pointercancel\", this.onPointerCancel, this._eventListenerOptions), globalThis.removeEventListener(\"pointerup\", this.onPointerUp, this._eventListenerOptions)) : (globalThis.document.removeEventListener(\"mousemove\", this.onPointerMove, this._eventListenerOptions), this.interactionDOMElement.removeEventListener(\"mousedown\", this.onPointerDown, this._eventListenerOptions), this.interactionDOMElement.removeEventListener(\"mouseout\", this.onPointerOut, this._eventListenerOptions), this.interactionDOMElement.removeEventListener(\"mouseover\", this.onPointerOver, this._eventListenerOptions), globalThis.removeEventListener(\"mouseup\", this.onPointerUp, this._eventListenerOptions)), this.supportsTouchEvents && (this.interactionDOMElement.removeEventListener(\"touchstart\", this.onPointerDown, this._eventListenerOptions), this.interactionDOMElement.removeEventListener(\"touchcancel\", this.onPointerCancel, this._eventListenerOptions), this.interactionDOMElement.removeEventListener(\"touchend\", this.onPointerUp, this._eventListenerOptions), this.interactionDOMElement.removeEventListener(\"touchmove\", this.onPointerMove, this._eventListenerOptions)), this.interactionDOMElement = null, this.eventsAdded = !1;\n }\n }, t.prototype.tickerUpdate = function(e) {\n this._deltaTime += e, !(this._deltaTime < this.interactionFrequency) && (this._deltaTime = 0, this.update());\n }, t.prototype.update = function() {\n if (this.interactionDOMElement) {\n if (this._didMove) {\n this._didMove = !1;\n return;\n }\n this.cursor = null;\n for (var e in this.activeInteractionData)\n if (this.activeInteractionData.hasOwnProperty(e)) {\n var n = this.activeInteractionData[e];\n if (n.originalEvent && n.pointerType !== \"touch\") {\n var i = this.configureInteractionEventForDOMEvent(this.eventData, n.originalEvent, n);\n this.processInteractive(i, this.lastObjectRendered, this.processPointerOverOut, !0);\n }\n }\n this.setCursorMode(this.cursor);\n }\n }, t.prototype.setCursorMode = function(e) {\n e = e || \"default\";\n var n = !0;\n if (globalThis.OffscreenCanvas && this.interactionDOMElement instanceof OffscreenCanvas && (n = !1), this.currentCursorMode !== e) {\n this.currentCursorMode = e;\n var i = this.cursorStyles[e];\n if (i)\n switch (typeof i) {\n case \"string\":\n n && (this.interactionDOMElement.style.cursor = i);\n break;\n case \"function\":\n i(e);\n break;\n case \"object\":\n n && Object.assign(this.interactionDOMElement.style, i);\n break;\n }\n else\n n && typeof e == \"string\" && !Object.prototype.hasOwnProperty.call(this.cursorStyles, e) && (this.interactionDOMElement.style.cursor = e);\n }\n }, t.prototype.dispatchEvent = function(e, n, i) {\n (!i.stopPropagationHint || e === i.stopsPropagatingAt) && (i.currentTarget = e, i.type = n, e.emit(n, i), e[n] && e[n](i));\n }, t.prototype.delayDispatchEvent = function(e, n, i) {\n this.delayedEvents.push({ displayObject: e, eventString: n, eventData: i });\n }, t.prototype.mapPositionToPoint = function(e, n, i) {\n var o;\n this.interactionDOMElement.parentElement ? o = this.interactionDOMElement.getBoundingClientRect() : o = {\n x: 0,\n y: 0,\n width: this.interactionDOMElement.width,\n height: this.interactionDOMElement.height,\n left: 0,\n top: 0\n };\n var a = 1 / this.resolution;\n e.x = (n - o.left) * (this.interactionDOMElement.width / o.width) * a, e.y = (i - o.top) * (this.interactionDOMElement.height / o.height) * a;\n }, t.prototype.processInteractive = function(e, n, i, o) {\n var a = this.search.findHit(e, n, i, o), s = this.delayedEvents;\n if (!s.length)\n return a;\n e.stopPropagationHint = !1;\n var u = s.length;\n this.delayedEvents = [];\n for (var h = 0; h < u; h++) {\n var f = s[h], l = f.displayObject, c = f.eventString, d = f.eventData;\n d.stopsPropagatingAt === l && (d.stopPropagationHint = !0), this.dispatchEvent(l, c, d);\n }\n return a;\n }, t.prototype.onPointerDown = function(e) {\n if (!(this.supportsTouchEvents && e.pointerType === \"touch\")) {\n var n = this.normalizeToPointerData(e);\n if (this.autoPreventDefault && n[0].isNormalized) {\n var i = e.cancelable || !(\"cancelable\" in e);\n i && e.preventDefault();\n }\n for (var o = n.length, a = 0; a < o; a++) {\n var s = n[a], u = this.getInteractionDataForPointerId(s), h = this.configureInteractionEventForDOMEvent(this.eventData, s, u);\n if (h.data.originalEvent = e, this.processInteractive(h, this.lastObjectRendered, this.processPointerDown, !0), this.emit(\"pointerdown\", h), s.pointerType === \"touch\")\n this.emit(\"touchstart\", h);\n else if (s.pointerType === \"mouse\" || s.pointerType === \"pen\") {\n var f = s.button === 2;\n this.emit(f ? \"rightdown\" : \"mousedown\", this.eventData);\n }\n }\n }\n }, t.prototype.processPointerDown = function(e, n, i) {\n var o = e.data, a = e.data.identifier;\n if (i) {\n if (n.trackedPointers[a] || (n.trackedPointers[a] = new Ao(a)), this.dispatchEvent(n, \"pointerdown\", e), o.pointerType === \"touch\")\n this.dispatchEvent(n, \"touchstart\", e);\n else if (o.pointerType === \"mouse\" || o.pointerType === \"pen\") {\n var s = o.button === 2;\n s ? n.trackedPointers[a].rightDown = !0 : n.trackedPointers[a].leftDown = !0, this.dispatchEvent(n, s ? \"rightdown\" : \"mousedown\", e);\n }\n }\n }, t.prototype.onPointerComplete = function(e, n, i) {\n var o = this.normalizeToPointerData(e), a = o.length, s = e.target;\n e.composedPath && e.composedPath().length > 0 && (s = e.composedPath()[0]);\n for (var u = s !== this.interactionDOMElement ? \"outside\" : \"\", h = 0; h < a; h++) {\n var f = o[h], l = this.getInteractionDataForPointerId(f), c = this.configureInteractionEventForDOMEvent(this.eventData, f, l);\n if (c.data.originalEvent = e, this.processInteractive(c, this.lastObjectRendered, i, n || !u), this.emit(n ? \"pointercancel\" : \"pointerup\" + u, c), f.pointerType === \"mouse\" || f.pointerType === \"pen\") {\n var d = f.button === 2;\n this.emit(d ? \"rightup\" + u : \"mouseup\" + u, c);\n } else\n f.pointerType === \"touch\" && (this.emit(n ? \"touchcancel\" : \"touchend\" + u, c), this.releaseInteractionDataForPointerId(f.pointerId));\n }\n }, t.prototype.onPointerCancel = function(e) {\n this.supportsTouchEvents && e.pointerType === \"touch\" || this.onPointerComplete(e, !0, this.processPointerCancel);\n }, t.prototype.processPointerCancel = function(e, n) {\n var i = e.data, o = e.data.identifier;\n n.trackedPointers[o] !== void 0 && (delete n.trackedPointers[o], this.dispatchEvent(n, \"pointercancel\", e), i.pointerType === \"touch\" && this.dispatchEvent(n, \"touchcancel\", e));\n }, t.prototype.onPointerUp = function(e) {\n this.supportsTouchEvents && e.pointerType === \"touch\" || this.onPointerComplete(e, !1, this.processPointerUp);\n }, t.prototype.processPointerUp = function(e, n, i) {\n var o = e.data, a = e.data.identifier, s = n.trackedPointers[a], u = o.pointerType === \"touch\", h = o.pointerType === \"mouse\" || o.pointerType === \"pen\", f = !1;\n if (h) {\n var l = o.button === 2, c = Ao.FLAGS, d = l ? c.RIGHT_DOWN : c.LEFT_DOWN, p = s !== void 0 && s.flags & d;\n i ? (this.dispatchEvent(n, l ? \"rightup\" : \"mouseup\", e), p && (this.dispatchEvent(n, l ? \"rightclick\" : \"click\", e), f = !0)) : p && this.dispatchEvent(n, l ? \"rightupoutside\" : \"mouseupoutside\", e), s && (l ? s.rightDown = !1 : s.leftDown = !1);\n }\n i ? (this.dispatchEvent(n, \"pointerup\", e), u && this.dispatchEvent(n, \"touchend\", e), s && ((!h || f) && this.dispatchEvent(n, \"pointertap\", e), u && (this.dispatchEvent(n, \"tap\", e), s.over = !1))) : s && (this.dispatchEvent(n, \"pointerupoutside\", e), u && this.dispatchEvent(n, \"touchendoutside\", e)), s && s.none && delete n.trackedPointers[a];\n }, t.prototype.onPointerMove = function(e) {\n if (!(this.supportsTouchEvents && e.pointerType === \"touch\")) {\n var n = this.normalizeToPointerData(e);\n (n[0].pointerType === \"mouse\" || n[0].pointerType === \"pen\") && (this._didMove = !0, this.cursor = null);\n for (var i = n.length, o = 0; o < i; o++) {\n var a = n[o], s = this.getInteractionDataForPointerId(a), u = this.configureInteractionEventForDOMEvent(this.eventData, a, s);\n u.data.originalEvent = e, this.processInteractive(u, this.lastObjectRendered, this.processPointerMove, !0), this.emit(\"pointermove\", u), a.pointerType === \"touch\" && this.emit(\"touchmove\", u), (a.pointerType === \"mouse\" || a.pointerType === \"pen\") && this.emit(\"mousemove\", u);\n }\n n[0].pointerType === \"mouse\" && this.setCursorMode(this.cursor);\n }\n }, t.prototype.processPointerMove = function(e, n, i) {\n var o = e.data, a = o.pointerType === \"touch\", s = o.pointerType === \"mouse\" || o.pointerType === \"pen\";\n s && this.processPointerOverOut(e, n, i), (!this.moveWhenInside || i) && (this.dispatchEvent(n, \"pointermove\", e), a && this.dispatchEvent(n, \"touchmove\", e), s && this.dispatchEvent(n, \"mousemove\", e));\n }, t.prototype.onPointerOut = function(e) {\n if (!(this.supportsTouchEvents && e.pointerType === \"touch\")) {\n var n = this.normalizeToPointerData(e), i = n[0];\n i.pointerType === \"mouse\" && (this.mouseOverRenderer = !1, this.setCursorMode(null));\n var o = this.getInteractionDataForPointerId(i), a = this.configureInteractionEventForDOMEvent(this.eventData, i, o);\n a.data.originalEvent = i, this.processInteractive(a, this.lastObjectRendered, this.processPointerOverOut, !1), this.emit(\"pointerout\", a), i.pointerType === \"mouse\" || i.pointerType === \"pen\" ? this.emit(\"mouseout\", a) : this.releaseInteractionDataForPointerId(o.identifier);\n }\n }, t.prototype.processPointerOverOut = function(e, n, i) {\n var o = e.data, a = e.data.identifier, s = o.pointerType === \"mouse\" || o.pointerType === \"pen\", u = n.trackedPointers[a];\n i && !u && (u = n.trackedPointers[a] = new Ao(a)), u !== void 0 && (i && this.mouseOverRenderer ? (u.over || (u.over = !0, this.delayDispatchEvent(n, \"pointerover\", e), s && this.delayDispatchEvent(n, \"mouseover\", e)), s && this.cursor === null && (this.cursor = n.cursor)) : u.over && (u.over = !1, this.dispatchEvent(n, \"pointerout\", this.eventData), s && this.dispatchEvent(n, \"mouseout\", e), u.none && delete n.trackedPointers[a]));\n }, t.prototype.onPointerOver = function(e) {\n if (!(this.supportsTouchEvents && e.pointerType === \"touch\")) {\n var n = this.normalizeToPointerData(e), i = n[0], o = this.getInteractionDataForPointerId(i), a = this.configureInteractionEventForDOMEvent(this.eventData, i, o);\n a.data.originalEvent = i, i.pointerType === \"mouse\" && (this.mouseOverRenderer = !0), this.emit(\"pointerover\", a), (i.pointerType === \"mouse\" || i.pointerType === \"pen\") && this.emit(\"mouseover\", a);\n }\n }, t.prototype.getInteractionDataForPointerId = function(e) {\n var n = e.pointerId, i;\n return n === ei || e.pointerType === \"mouse\" ? i = this.mouse : this.activeInteractionData[n] ? i = this.activeInteractionData[n] : (i = this.interactionDataPool.pop() || new qu(), i.identifier = n, this.activeInteractionData[n] = i), i.copyEvent(e), i;\n }, t.prototype.releaseInteractionDataForPointerId = function(e) {\n var n = this.activeInteractionData[e];\n n && (delete this.activeInteractionData[e], n.reset(), this.interactionDataPool.push(n));\n }, t.prototype.configureInteractionEventForDOMEvent = function(e, n, i) {\n return e.data = i, this.mapPositionToPoint(i.global, n.clientX, n.clientY), n.pointerType === \"touch\" && (n.globalX = i.global.x, n.globalY = i.global.y), i.originalEvent = n, e.reset(), e;\n }, t.prototype.normalizeToPointerData = function(e) {\n var n = [];\n if (this.supportsTouchEvents && e instanceof TouchEvent)\n for (var i = 0, o = e.changedTouches.length; i < o; i++) {\n var a = e.changedTouches[i];\n typeof a.button > \"u\" && (a.button = e.touches.length ? 1 : 0), typeof a.buttons > \"u\" && (a.buttons = e.touches.length ? 1 : 0), typeof a.isPrimary > \"u\" && (a.isPrimary = e.touches.length === 1 && e.type === \"touchstart\"), typeof a.width > \"u\" && (a.width = a.radiusX || 1), typeof a.height > \"u\" && (a.height = a.radiusY || 1), typeof a.tiltX > \"u\" && (a.tiltX = 0), typeof a.tiltY > \"u\" && (a.tiltY = 0), typeof a.pointerType > \"u\" && (a.pointerType = \"touch\"), typeof a.pointerId > \"u\" && (a.pointerId = a.identifier || 0), typeof a.pressure > \"u\" && (a.pressure = a.force || 0.5), typeof a.twist > \"u\" && (a.twist = 0), typeof a.tangentialPressure > \"u\" && (a.tangentialPressure = 0), typeof a.layerX > \"u\" && (a.layerX = a.offsetX = a.clientX), typeof a.layerY > \"u\" && (a.layerY = a.offsetY = a.clientY), a.isNormalized = !0, n.push(a);\n }\n else if (!globalThis.MouseEvent || e instanceof MouseEvent && (!this.supportsPointerEvents || !(e instanceof globalThis.PointerEvent))) {\n var s = e;\n typeof s.isPrimary > \"u\" && (s.isPrimary = !0), typeof s.width > \"u\" && (s.width = 1), typeof s.height > \"u\" && (s.height = 1), typeof s.tiltX > \"u\" && (s.tiltX = 0), typeof s.tiltY > \"u\" && (s.tiltY = 0), typeof s.pointerType > \"u\" && (s.pointerType = \"mouse\"), typeof s.pointerId > \"u\" && (s.pointerId = ei), typeof s.pressure > \"u\" && (s.pressure = 0.5), typeof s.twist > \"u\" && (s.twist = 0), typeof s.tangentialPressure > \"u\" && (s.tangentialPressure = 0), s.isNormalized = !0, n.push(s);\n } else\n n.push(e);\n return n;\n }, t.prototype.destroy = function() {\n this.removeEvents(), this.removeTickerListener(), 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.search = null;\n }, t.extension = {\n name: \"interaction\",\n type: [\n gt.RendererPlugin,\n gt.CanvasRendererPlugin\n ]\n }, t;\n }(Rn)\n);\n/*!\n * @pixi/extract - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/extract is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\nvar V0 = new ht(), z0 = 4, W0 = (\n /** @class */\n function() {\n function r(t) {\n this.renderer = t;\n }\n return r.prototype.image = function(t, e, n) {\n var i = new Image();\n return i.src = this.base64(t, e, n), i;\n }, r.prototype.base64 = function(t, e, n) {\n return this.canvas(t).toDataURL(e, n);\n }, r.prototype.canvas = function(t, e) {\n var n = this._rawPixels(t, e), i = n.pixels, o = n.width, a = n.height, s = n.flipY, u = new Cu(o, a, 1), h = u.context.getImageData(0, 0, o, a);\n if (r.arrayPostDivide(i, h.data), u.context.putImageData(h, 0, 0), s) {\n var f = new Cu(u.width, u.height, 1);\n f.context.scale(1, -1), f.context.drawImage(u.canvas, 0, -a), u.destroy(), u = f;\n }\n return u.canvas;\n }, r.prototype.pixels = function(t, e) {\n var n = this._rawPixels(t, e).pixels;\n return r.arrayPostDivide(n, n), n;\n }, r.prototype._rawPixels = function(t, e) {\n var n = this.renderer, i, o = !1, a, s = !1;\n if (t)\n if (t instanceof fr)\n a = t;\n else {\n var u = n.context.webGLVersion >= 2 ? n.multisample : wt.NONE;\n if (a = this.renderer.generateTexture(t, { multisample: u }), u !== wt.NONE) {\n var h = fr.create({\n width: a.width,\n height: a.height\n });\n n.framebuffer.bind(a.framebuffer), n.framebuffer.blit(h.framebuffer), n.framebuffer.bind(null), a.destroy(!0), a = h;\n }\n s = !0;\n }\n a ? (i = a.baseTexture.resolution, e = e ?? a.frame, o = !1, n.renderTexture.bind(a)) : (i = n.resolution, e || (e = V0, e.width = n.width, e.height = n.height), o = !0, n.renderTexture.bind(null));\n var f = Math.round(e.width * i), l = Math.round(e.height * i), c = new Uint8Array(z0 * f * l), d = n.gl;\n return d.readPixels(Math.round(e.x * i), Math.round(e.y * i), f, l, d.RGBA, d.UNSIGNED_BYTE, c), s && a.destroy(!0), { pixels: c, width: f, height: l, flipY: o };\n }, r.prototype.destroy = function() {\n this.renderer = null;\n }, r.arrayPostDivide = function(t, e) {\n for (var n = 0; n < t.length; n += 4) {\n var i = e[n + 3] = t[n + 3];\n i !== 0 ? (e[n] = Math.round(Math.min(t[n] * 255 / i, 255)), e[n + 1] = Math.round(Math.min(t[n + 1] * 255 / i, 255)), e[n + 2] = Math.round(Math.min(t[n + 2] * 255 / i, 255))) : (e[n] = t[n], e[n + 1] = t[n + 1], e[n + 2] = t[n + 2]);\n }\n }, r.extension = {\n name: \"extract\",\n type: gt.RendererPlugin\n }, r;\n }()\n);\n/*!\n * @pixi/loaders - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/loaders is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\nvar ni = (\n /** @class */\n function() {\n function r(t, e, n) {\n e === void 0 && (e = !1), this._fn = t, this._once = e, this._thisArg = n, this._next = this._prev = this._owner = null;\n }\n return r.prototype.detach = function() {\n return this._owner === null ? !1 : (this._owner.detach(this), !0);\n }, r;\n }()\n);\nfunction $u(r, t) {\n return r._head ? (r._tail._next = t, t._prev = r._tail, r._tail = t) : (r._head = t, r._tail = t), t._owner = r, t;\n}\nvar Oe = (\n /** @class */\n function() {\n function r() {\n this._head = this._tail = void 0;\n }\n return r.prototype.handlers = function(t) {\n t === void 0 && (t = !1);\n var e = this._head;\n if (t)\n return !!e;\n for (var n = []; e; )\n n.push(e), e = e._next;\n return n;\n }, r.prototype.has = function(t) {\n if (!(t instanceof ni))\n throw new Error(\"MiniSignal#has(): First arg must be a SignalBinding object.\");\n return t._owner === this;\n }, r.prototype.dispatch = function() {\n for (var t = arguments, e = [], n = 0; n < arguments.length; n++)\n e[n] = t[n];\n var i = this._head;\n if (!i)\n return !1;\n for (; i; )\n i._once && this.detach(i), i._fn.apply(i._thisArg, e), i = i._next;\n return !0;\n }, r.prototype.add = function(t, e) {\n if (e === void 0 && (e = null), typeof t != \"function\")\n throw new Error(\"MiniSignal#add(): First arg must be a Function.\");\n return $u(this, new ni(t, !1, e));\n }, r.prototype.once = function(t, e) {\n if (e === void 0 && (e = null), typeof t != \"function\")\n throw new Error(\"MiniSignal#once(): First arg must be a Function.\");\n return $u(this, new ni(t, !0, e));\n }, r.prototype.detach = function(t) {\n if (!(t instanceof ni))\n throw new Error(\"MiniSignal#detach(): First arg must be a SignalBinding object.\");\n return t._owner !== this ? this : (t._prev && (t._prev._next = t._next), t._next && (t._next._prev = t._prev), t === this._head ? (this._head = t._next, t._next === null && (this._tail = null)) : t === this._tail && (this._tail = t._prev, this._tail._next = null), t._owner = null, this);\n }, r.prototype.detachAll = function() {\n var t = this._head;\n if (!t)\n return this;\n for (this._head = this._tail = null; t; )\n t._owner = null, t = t._next;\n return this;\n }, r;\n }()\n);\nfunction ql(r, t) {\n t = t || {};\n for (var e = {\n // eslint-disable-next-line max-len\n key: [\"source\", \"protocol\", \"authority\", \"userInfo\", \"user\", \"password\", \"host\", \"port\", \"relative\", \"path\", \"directory\", \"file\", \"query\", \"anchor\"],\n q: {\n name: \"queryKey\",\n parser: /(?:^|&)([^&=]*)=?([^&]*)/g\n },\n parser: {\n // eslint-disable-next-line max-len\n strict: /^(?:([^:\\/?#]+):)?(?:\\/\\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\\/?#]*)(?::(\\d*))?))?((((?:[^?#\\/]*\\/)*)([^?#]*))(?:\\?([^#]*))?(?:#(.*))?)/,\n // eslint-disable-next-line max-len\n loose: /^(?:(?![^:@]+:[^:@\\/]*@)([^:\\/?#.]+):)?(?:\\/\\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\\/?#]*)(?::(\\d*))?)(((\\/(?:[^?#](?![^?#\\/]*\\.[^?#\\/.]+(?:[?#]|$)))*\\/?)?([^?#\\/]*))(?:\\?([^#]*))?(?:#(.*))?)/\n }\n }, n = e.parser[t.strictMode ? \"strict\" : \"loose\"].exec(r), i = {}, o = 14; o--; )\n i[e.key[o]] = n[o] || \"\";\n return i[e.q.name] = {}, i[e.key[12]].replace(e.q.parser, function(a, s, u) {\n s && (i[e.q.name][s] = u);\n }), i;\n}\nvar Po, ii = null, q0 = 0, Ku = 200, $0 = 204, K0 = 1223, Z0 = 2;\nfunction Zu() {\n}\nfunction Ju(r, t, e) {\n t && t.indexOf(\".\") === 0 && (t = t.substring(1)), t && (r[t] = e);\n}\nfunction Oo(r) {\n return r.toString().replace(\"object \", \"\");\n}\nvar Rt = (\n /** @class */\n function() {\n function r(t, e, n) {\n if (this._dequeue = Zu, this._onLoadBinding = null, this._elementTimer = 0, this._boundComplete = null, this._boundOnError = null, this._boundOnProgress = null, this._boundOnTimeout = null, this._boundXhrOnError = null, this._boundXhrOnTimeout = null, this._boundXhrOnAbort = null, this._boundXhrOnLoad = null, typeof t != \"string\" || typeof e != \"string\")\n throw new Error(\"Both name and url are required for constructing a resource.\");\n n = n || {}, this._flags = 0, this._setFlag(r.STATUS_FLAGS.DATA_URL, e.indexOf(\"data:\") === 0), this.name = t, this.url = e, this.extension = this._getExtension(), this.data = null, this.crossOrigin = n.crossOrigin === !0 ? \"anonymous\" : n.crossOrigin, this.timeout = n.timeout || 0, this.loadType = n.loadType || this._determineLoadType(), this.xhrType = n.xhrType, this.metadata = n.metadata || {}, this.error = null, this.xhr = null, this.children = [], this.type = r.TYPE.UNKNOWN, this.progressChunk = 0, this._dequeue = Zu, this._onLoadBinding = null, this._elementTimer = 0, this._boundComplete = this.complete.bind(this), this._boundOnError = this._onError.bind(this), this._boundOnProgress = this._onProgress.bind(this), this._boundOnTimeout = this._onTimeout.bind(this), this._boundXhrOnError = this._xhrOnError.bind(this), this._boundXhrOnTimeout = this._xhrOnTimeout.bind(this), this._boundXhrOnAbort = this._xhrOnAbort.bind(this), this._boundXhrOnLoad = this._xhrOnLoad.bind(this), this.onStart = new Oe(), this.onProgress = new Oe(), this.onComplete = new Oe(), this.onAfterMiddleware = new Oe();\n }\n return r.setExtensionLoadType = function(t, e) {\n Ju(r._loadTypeMap, t, e);\n }, r.setExtensionXhrType = function(t, e) {\n Ju(r._xhrTypeMap, t, e);\n }, Object.defineProperty(r.prototype, \"isDataUrl\", {\n /**\n * When the resource starts to load.\n * @memberof PIXI.LoaderResource\n * @callback OnStartSignal\n * @param {PIXI.Resource} resource - The resource that the event happened on.\n */\n /**\n * When the resource reports loading progress.\n * @memberof PIXI.LoaderResource\n * @callback OnProgressSignal\n * @param {PIXI.Resource} resource - The resource that the event happened on.\n * @param {number} percentage - The progress of the load in the range [0, 1].\n */\n /**\n * When the resource finishes loading.\n * @memberof PIXI.LoaderResource\n * @callback OnCompleteSignal\n * @param {PIXI.Resource} resource - The resource that the event happened on.\n */\n /**\n * @memberof PIXI.LoaderResource\n * @typedef {object} IMetadata\n * @property {HTMLImageElement|HTMLAudioElement|HTMLVideoElement} [loadElement=null] - The\n * element to use for loading, instead of creating one.\n * @property {boolean} [skipSource=false] - Skips adding source(s) to the load element. This\n * is useful if you want to pass in a `loadElement` that you already added load sources to.\n * @property {string|string[]} [mimeType] - The mime type to use for the source element\n * of a video/audio elment. If the urls are an array, you can pass this as an array as well\n * where each index is the mime type to use for the corresponding url index.\n */\n /**\n * Stores whether or not this url is a data url.\n * @readonly\n * @member {boolean}\n */\n get: function() {\n return this._hasFlag(r.STATUS_FLAGS.DATA_URL);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"isComplete\", {\n /**\n * Describes if this resource has finished loading. Is true when the resource has completely\n * loaded.\n * @readonly\n * @member {boolean}\n */\n get: function() {\n return this._hasFlag(r.STATUS_FLAGS.COMPLETE);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"isLoading\", {\n /**\n * Describes if this resource is currently loading. Is true when the resource starts loading,\n * and is false again when complete.\n * @readonly\n * @member {boolean}\n */\n get: function() {\n return this._hasFlag(r.STATUS_FLAGS.LOADING);\n },\n enumerable: !1,\n configurable: !0\n }), r.prototype.complete = function() {\n this._clearEvents(), this._finish();\n }, r.prototype.abort = function(t) {\n if (!this.error) {\n if (this.error = new Error(t), this._clearEvents(), this.xhr)\n this.xhr.abort();\n else if (this.xdr)\n this.xdr.abort();\n else if (this.data)\n if (this.data.src)\n this.data.src = r.EMPTY_GIF;\n else\n for (; this.data.firstChild; )\n this.data.removeChild(this.data.firstChild);\n this._finish();\n }\n }, r.prototype.load = function(t) {\n var e = this;\n if (!this.isLoading) {\n if (this.isComplete) {\n t && setTimeout(function() {\n return t(e);\n }, 1);\n return;\n } else\n t && this.onComplete.once(t);\n switch (this._setFlag(r.STATUS_FLAGS.LOADING, !0), this.onStart.dispatch(this), (this.crossOrigin === !1 || typeof this.crossOrigin != \"string\") && (this.crossOrigin = this._determineCrossOrigin(this.url)), this.loadType) {\n case r.LOAD_TYPE.IMAGE:\n this.type = r.TYPE.IMAGE, this._loadElement(\"image\");\n break;\n case r.LOAD_TYPE.AUDIO:\n this.type = r.TYPE.AUDIO, this._loadSourceElement(\"audio\");\n break;\n case r.LOAD_TYPE.VIDEO:\n this.type = r.TYPE.VIDEO, this._loadSourceElement(\"video\");\n break;\n case r.LOAD_TYPE.XHR:\n default:\n typeof Po > \"u\" && (Po = !!(globalThis.XDomainRequest && !(\"withCredentials\" in new XMLHttpRequest()))), Po && this.crossOrigin ? this._loadXdr() : this._loadXhr();\n break;\n }\n }\n }, r.prototype._hasFlag = function(t) {\n return (this._flags & t) !== 0;\n }, r.prototype._setFlag = function(t, e) {\n this._flags = e ? this._flags | t : this._flags & ~t;\n }, r.prototype._clearEvents = function() {\n clearTimeout(this._elementTimer), this.data && this.data.removeEventListener && (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 && (this.xhr.removeEventListener ? (this.xhr.removeEventListener(\"error\", this._boundXhrOnError, !1), this.xhr.removeEventListener(\"timeout\", this._boundXhrOnTimeout, !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));\n }, r.prototype._finish = function() {\n if (this.isComplete)\n throw new Error(\"Complete called again for an already completed resource.\");\n this._setFlag(r.STATUS_FLAGS.COMPLETE, !0), this._setFlag(r.STATUS_FLAGS.LOADING, !1), this.onComplete.dispatch(this);\n }, r.prototype._loadElement = function(t) {\n this.metadata.loadElement ? this.data = this.metadata.loadElement : t === \"image\" && typeof globalThis.Image < \"u\" ? this.data = new Image() : this.data = document.createElement(t), this.crossOrigin && (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), this.timeout && (this._elementTimer = setTimeout(this._boundOnTimeout, this.timeout));\n }, r.prototype._loadSourceElement = function(t) {\n if (this.metadata.loadElement ? this.data = this.metadata.loadElement : t === \"audio\" && typeof globalThis.Audio < \"u\" ? this.data = new Audio() : this.data = document.createElement(t), this.data === null) {\n this.abort(\"Unsupported element: \" + t);\n return;\n }\n if (this.crossOrigin && (this.data.crossOrigin = this.crossOrigin), !this.metadata.skipSource)\n if (navigator.isCocoonJS)\n this.data.src = Array.isArray(this.url) ? this.url[0] : this.url;\n else if (Array.isArray(this.url))\n for (var e = this.metadata.mimeType, n = 0; n < this.url.length; ++n)\n this.data.appendChild(this._createSource(t, this.url[n], Array.isArray(e) ? e[n] : e));\n else {\n var e = this.metadata.mimeType;\n this.data.appendChild(this._createSource(t, this.url, Array.isArray(e) ? e[0] : e));\n }\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(), this.timeout && (this._elementTimer = setTimeout(this._boundOnTimeout, this.timeout));\n }, r.prototype._loadXhr = function() {\n typeof this.xhrType != \"string\" && (this.xhrType = this._determineXhrType());\n var t = this.xhr = new XMLHttpRequest();\n this.crossOrigin === \"use-credentials\" && (t.withCredentials = !0), t.open(\"GET\", this.url, !0), t.timeout = this.timeout, this.xhrType === r.XHR_RESPONSE_TYPE.JSON || this.xhrType === r.XHR_RESPONSE_TYPE.DOCUMENT ? t.responseType = r.XHR_RESPONSE_TYPE.TEXT : t.responseType = this.xhrType, t.addEventListener(\"error\", this._boundXhrOnError, !1), t.addEventListener(\"timeout\", this._boundXhrOnTimeout, !1), t.addEventListener(\"abort\", this._boundXhrOnAbort, !1), t.addEventListener(\"progress\", this._boundOnProgress, !1), t.addEventListener(\"load\", this._boundXhrOnLoad, !1), t.send();\n }, r.prototype._loadXdr = function() {\n typeof this.xhrType != \"string\" && (this.xhrType = this._determineXhrType());\n var t = this.xhr = new globalThis.XDomainRequest();\n t.timeout = this.timeout || 5e3, t.onerror = this._boundXhrOnError, t.ontimeout = this._boundXhrOnTimeout, t.onprogress = this._boundOnProgress, t.onload = this._boundXhrOnLoad, t.open(\"GET\", this.url, !0), setTimeout(function() {\n return t.send();\n }, 1);\n }, r.prototype._createSource = function(t, e, n) {\n n || (n = t + \"/\" + this._getExtension(e));\n var i = document.createElement(\"source\");\n return i.src = e, i.type = n, i;\n }, r.prototype._onError = function(t) {\n this.abort(\"Failed to load element using: \" + t.target.nodeName);\n }, r.prototype._onProgress = function(t) {\n t && t.lengthComputable && this.onProgress.dispatch(this, t.loaded / t.total);\n }, r.prototype._onTimeout = function() {\n this.abort(\"Load timed out.\");\n }, r.prototype._xhrOnError = function() {\n var t = this.xhr;\n this.abort(Oo(t) + \" Request failed. Status: \" + t.status + ', text: \"' + t.statusText + '\"');\n }, r.prototype._xhrOnTimeout = function() {\n var t = this.xhr;\n this.abort(Oo(t) + \" Request timed out.\");\n }, r.prototype._xhrOnAbort = function() {\n var t = this.xhr;\n this.abort(Oo(t) + \" Request was aborted by the user.\");\n }, r.prototype._xhrOnLoad = function() {\n var t = this.xhr, e = \"\", n = typeof t.status > \"u\" ? Ku : t.status;\n (t.responseType === \"\" || t.responseType === \"text\" || typeof t.responseType > \"u\") && (e = t.responseText), n === q0 && (e.length > 0 || t.responseType === r.XHR_RESPONSE_TYPE.BUFFER) ? n = Ku : n === K0 && (n = $0);\n var i = n / 100 | 0;\n if (i === Z0)\n if (this.xhrType === r.XHR_RESPONSE_TYPE.TEXT)\n this.data = e, this.type = r.TYPE.TEXT;\n else if (this.xhrType === r.XHR_RESPONSE_TYPE.JSON)\n try {\n this.data = JSON.parse(e), this.type = r.TYPE.JSON;\n } catch (s) {\n this.abort(\"Error trying to parse loaded json: \" + s);\n return;\n }\n else if (this.xhrType === r.XHR_RESPONSE_TYPE.DOCUMENT)\n try {\n if (globalThis.DOMParser) {\n var o = new DOMParser();\n this.data = o.parseFromString(e, \"text/xml\");\n } else {\n var a = document.createElement(\"div\");\n a.innerHTML = e, this.data = a;\n }\n this.type = r.TYPE.XML;\n } catch (s) {\n this.abort(\"Error trying to parse loaded xml: \" + s);\n return;\n }\n else\n this.data = t.response || e;\n else {\n this.abort(\"[\" + t.status + \"] \" + t.statusText + \": \" + t.responseURL);\n return;\n }\n this.complete();\n }, r.prototype._determineCrossOrigin = function(t, e) {\n if (t.indexOf(\"data:\") === 0)\n return \"\";\n if (globalThis.origin !== globalThis.location.origin)\n return \"anonymous\";\n e = e || globalThis.location, ii || (ii = document.createElement(\"a\")), ii.href = t;\n var n = ql(ii.href, { strictMode: !0 }), i = !n.port && e.port === \"\" || n.port === e.port, o = n.protocol ? n.protocol + \":\" : \"\";\n return n.host !== e.hostname || !i || o !== e.protocol ? \"anonymous\" : \"\";\n }, r.prototype._determineXhrType = function() {\n return r._xhrTypeMap[this.extension] || r.XHR_RESPONSE_TYPE.TEXT;\n }, r.prototype._determineLoadType = function() {\n return r._loadTypeMap[this.extension] || r.LOAD_TYPE.XHR;\n }, r.prototype._getExtension = function(t) {\n t === void 0 && (t = this.url);\n var e = \"\";\n if (this.isDataUrl) {\n var n = t.indexOf(\"/\");\n e = t.substring(n + 1, t.indexOf(\";\", n));\n } else {\n var i = t.indexOf(\"?\"), o = t.indexOf(\"#\"), a = Math.min(i > -1 ? i : t.length, o > -1 ? o : t.length);\n t = t.substring(0, a), e = t.substring(t.lastIndexOf(\".\") + 1);\n }\n return e.toLowerCase();\n }, r.prototype._getMimeFromXhrType = function(t) {\n switch (t) {\n case r.XHR_RESPONSE_TYPE.BUFFER:\n return \"application/octet-binary\";\n case r.XHR_RESPONSE_TYPE.BLOB:\n return \"application/blob\";\n case r.XHR_RESPONSE_TYPE.DOCUMENT:\n return \"application/xml\";\n case r.XHR_RESPONSE_TYPE.JSON:\n return \"application/json\";\n case r.XHR_RESPONSE_TYPE.DEFAULT:\n case r.XHR_RESPONSE_TYPE.TEXT:\n default:\n return \"text/plain\";\n }\n }, r;\n }()\n);\n(function(r) {\n (function(t) {\n t[t.NONE = 0] = \"NONE\", t[t.DATA_URL = 1] = \"DATA_URL\", t[t.COMPLETE = 2] = \"COMPLETE\", t[t.LOADING = 4] = \"LOADING\";\n })(r.STATUS_FLAGS || (r.STATUS_FLAGS = {})), function(t) {\n t[t.UNKNOWN = 0] = \"UNKNOWN\", t[t.JSON = 1] = \"JSON\", t[t.XML = 2] = \"XML\", t[t.IMAGE = 3] = \"IMAGE\", t[t.AUDIO = 4] = \"AUDIO\", t[t.VIDEO = 5] = \"VIDEO\", t[t.TEXT = 6] = \"TEXT\";\n }(r.TYPE || (r.TYPE = {})), function(t) {\n t[t.XHR = 1] = \"XHR\", t[t.IMAGE = 2] = \"IMAGE\", t[t.AUDIO = 3] = \"AUDIO\", t[t.VIDEO = 4] = \"VIDEO\";\n }(r.LOAD_TYPE || (r.LOAD_TYPE = {})), function(t) {\n t.DEFAULT = \"text\", t.BUFFER = \"arraybuffer\", t.BLOB = \"blob\", t.DOCUMENT = \"document\", t.JSON = \"json\", t.TEXT = \"text\";\n }(r.XHR_RESPONSE_TYPE || (r.XHR_RESPONSE_TYPE = {})), r._loadTypeMap = {\n // images\n gif: r.LOAD_TYPE.IMAGE,\n png: r.LOAD_TYPE.IMAGE,\n bmp: r.LOAD_TYPE.IMAGE,\n jpg: r.LOAD_TYPE.IMAGE,\n jpeg: r.LOAD_TYPE.IMAGE,\n tif: r.LOAD_TYPE.IMAGE,\n tiff: r.LOAD_TYPE.IMAGE,\n webp: r.LOAD_TYPE.IMAGE,\n tga: r.LOAD_TYPE.IMAGE,\n avif: r.LOAD_TYPE.IMAGE,\n svg: r.LOAD_TYPE.IMAGE,\n \"svg+xml\": r.LOAD_TYPE.IMAGE,\n // audio\n mp3: r.LOAD_TYPE.AUDIO,\n ogg: r.LOAD_TYPE.AUDIO,\n wav: r.LOAD_TYPE.AUDIO,\n // videos\n mp4: r.LOAD_TYPE.VIDEO,\n webm: r.LOAD_TYPE.VIDEO\n }, r._xhrTypeMap = {\n // xml\n xhtml: r.XHR_RESPONSE_TYPE.DOCUMENT,\n html: r.XHR_RESPONSE_TYPE.DOCUMENT,\n htm: r.XHR_RESPONSE_TYPE.DOCUMENT,\n xml: r.XHR_RESPONSE_TYPE.DOCUMENT,\n tmx: r.XHR_RESPONSE_TYPE.DOCUMENT,\n svg: r.XHR_RESPONSE_TYPE.DOCUMENT,\n // This was added to handle Tiled Tileset XML, but .tsx is also a TypeScript React Component.\n // Since it is way less likely for people to be loading TypeScript files instead of Tiled files,\n // this should probably be fine.\n tsx: r.XHR_RESPONSE_TYPE.DOCUMENT,\n // images\n gif: r.XHR_RESPONSE_TYPE.BLOB,\n png: r.XHR_RESPONSE_TYPE.BLOB,\n bmp: r.XHR_RESPONSE_TYPE.BLOB,\n jpg: r.XHR_RESPONSE_TYPE.BLOB,\n jpeg: r.XHR_RESPONSE_TYPE.BLOB,\n tif: r.XHR_RESPONSE_TYPE.BLOB,\n tiff: r.XHR_RESPONSE_TYPE.BLOB,\n webp: r.XHR_RESPONSE_TYPE.BLOB,\n tga: r.XHR_RESPONSE_TYPE.BLOB,\n avif: r.XHR_RESPONSE_TYPE.BLOB,\n // json\n json: r.XHR_RESPONSE_TYPE.JSON,\n // text\n text: r.XHR_RESPONSE_TYPE.TEXT,\n txt: r.XHR_RESPONSE_TYPE.TEXT,\n // fonts\n ttf: r.XHR_RESPONSE_TYPE.BUFFER,\n otf: r.XHR_RESPONSE_TYPE.BUFFER\n }, r.EMPTY_GIF = \"data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==\";\n})(Rt || (Rt = {}));\nfunction qe() {\n}\nfunction J0(r) {\n return function() {\n for (var e = arguments, n = [], i = 0; i < arguments.length; i++)\n n[i] = e[i];\n if (r === null)\n throw new Error(\"Callback was already called.\");\n var o = r;\n r = null, o.apply(this, n);\n };\n}\nvar Q0 = (\n /** @class */\n function() {\n function r(t, e) {\n this.data = t, this.callback = e;\n }\n return r;\n }()\n), Ro = (\n /** @class */\n function() {\n function r(t, e) {\n var n = this;\n if (e === void 0 && (e = 1), this.workers = 0, this.saturated = qe, this.unsaturated = qe, this.empty = qe, this.drain = qe, this.error = qe, this.started = !1, this.paused = !1, this._tasks = [], this._insert = function(i, o, a) {\n if (a && typeof a != \"function\")\n throw new Error(\"task callback must be a function\");\n if (n.started = !0, i == null && n.idle()) {\n setTimeout(function() {\n return n.drain();\n }, 1);\n return;\n }\n var s = new Q0(i, typeof a == \"function\" ? a : qe);\n o ? n._tasks.unshift(s) : n._tasks.push(s), setTimeout(n.process, 1);\n }, this.process = function() {\n for (; !n.paused && n.workers < n.concurrency && n._tasks.length; ) {\n var i = n._tasks.shift();\n n._tasks.length === 0 && n.empty(), n.workers += 1, n.workers === n.concurrency && n.saturated(), n._worker(i.data, J0(n._next(i)));\n }\n }, this._worker = t, e === 0)\n throw new Error(\"Concurrency must not be zero\");\n this.concurrency = e, this.buffer = e / 4;\n }\n return r.prototype._next = function(t) {\n var e = this;\n return function() {\n for (var n = arguments, i = [], o = 0; o < arguments.length; o++)\n i[o] = n[o];\n e.workers -= 1, t.callback.apply(t, i), i[0] != null && e.error(i[0], t.data), e.workers <= e.concurrency - e.buffer && e.unsaturated(), e.idle() && e.drain(), e.process();\n };\n }, r.prototype.push = function(t, e) {\n this._insert(t, !1, e);\n }, r.prototype.kill = function() {\n this.workers = 0, this.drain = qe, this.started = !1, this._tasks = [];\n }, r.prototype.unshift = function(t, e) {\n this._insert(t, !0, e);\n }, r.prototype.length = function() {\n return this._tasks.length;\n }, r.prototype.running = function() {\n return this.workers;\n }, r.prototype.idle = function() {\n return this._tasks.length + this.workers === 0;\n }, r.prototype.pause = function() {\n this.paused !== !0 && (this.paused = !0);\n }, r.prototype.resume = function() {\n if (this.paused !== !1) {\n this.paused = !1;\n for (var t = 1; t <= this.concurrency; t++)\n this.process();\n }\n }, r.eachSeries = function(t, e, n, i) {\n var o = 0, a = t.length;\n function s(u) {\n if (u || o === a) {\n n && n(u);\n return;\n }\n i ? setTimeout(function() {\n e(t[o++], s);\n }, 1) : e(t[o++], s);\n }\n s();\n }, r.queue = function(t, e) {\n return new r(t, e);\n }, r;\n }()\n), Io = 100, tb = /(#[\\w-]+)?$/, Ni = (\n /** @class */\n function() {\n function r(t, e) {\n var n = this;\n t === void 0 && (t = \"\"), e === void 0 && (e = 10), this.progress = 0, this.loading = !1, this.defaultQueryString = \"\", this._beforeMiddleware = [], this._afterMiddleware = [], this._resourcesParsing = [], this._boundLoadResource = function(u, h) {\n return n._loadResource(u, h);\n }, this.resources = {}, this.baseUrl = t, this._beforeMiddleware = [], this._afterMiddleware = [], this._resourcesParsing = [], this._boundLoadResource = function(u, h) {\n return n._loadResource(u, h);\n }, this._queue = Ro.queue(this._boundLoadResource, e), this._queue.pause(), this.resources = {}, this.onProgress = new Oe(), this.onError = new Oe(), this.onLoad = new Oe(), this.onStart = new Oe(), this.onComplete = new Oe();\n for (var i = 0; i < r._plugins.length; ++i) {\n var o = r._plugins[i], a = o.pre, s = o.use;\n a && this.pre(a), s && this.use(s);\n }\n this._protected = !1;\n }\n return r.prototype._add = function(t, e, n, i) {\n if (this.loading && (!n || !n.parentResource))\n throw new Error(\"Cannot add resources while the loader is running.\");\n if (this.resources[t])\n throw new Error('Resource named \"' + t + '\" already exists.');\n if (e = this._prepareUrl(e), this.resources[t] = new Rt(t, e, n), typeof i == \"function\" && this.resources[t].onAfterMiddleware.once(i), this.loading) {\n for (var o = n.parentResource, a = [], s = 0; s < o.children.length; ++s)\n o.children[s].isComplete || a.push(o.children[s]);\n var u = o.progressChunk * (a.length + 1), h = u / (a.length + 2);\n o.children.push(this.resources[t]), o.progressChunk = h;\n for (var s = 0; s < a.length; ++s)\n a[s].progressChunk = h;\n this.resources[t].progressChunk = h;\n }\n return this._queue.push(this.resources[t]), this;\n }, r.prototype.pre = function(t) {\n return this._beforeMiddleware.push(t), this;\n }, r.prototype.use = function(t) {\n return this._afterMiddleware.push(t), this;\n }, r.prototype.reset = function() {\n this.progress = 0, this.loading = !1, this._queue.kill(), this._queue.pause();\n for (var t in this.resources) {\n var e = this.resources[t];\n e._onLoadBinding && e._onLoadBinding.detach(), e.isLoading && e.abort(\"loader reset\");\n }\n return this.resources = {}, this;\n }, r.prototype.load = function(t) {\n if (he(\"6.5.0\", \"@pixi/loaders is being replaced with @pixi/assets in the next major release.\"), typeof t == \"function\" && this.onComplete.once(t), this.loading)\n return this;\n if (this._queue.idle())\n this._onStart(), this._onComplete();\n else {\n for (var e = this._queue._tasks.length, n = Io / e, i = 0; i < this._queue._tasks.length; ++i)\n this._queue._tasks[i].data.progressChunk = n;\n this._onStart(), this._queue.resume();\n }\n return this;\n }, Object.defineProperty(r.prototype, \"concurrency\", {\n /**\n * The number of resources to load concurrently.\n * @default 10\n */\n get: function() {\n return this._queue.concurrency;\n },\n set: function(t) {\n this._queue.concurrency = t;\n },\n enumerable: !1,\n configurable: !0\n }), r.prototype._prepareUrl = function(t) {\n var e = ql(t, { strictMode: !0 }), n;\n if (e.protocol || !e.path || t.indexOf(\"//\") === 0 ? n = t : this.baseUrl.length && this.baseUrl.lastIndexOf(\"/\") !== this.baseUrl.length - 1 && t.charAt(0) !== \"/\" ? n = this.baseUrl + \"/\" + t : n = this.baseUrl + t, this.defaultQueryString) {\n var i = tb.exec(n)[0];\n n = n.slice(0, n.length - i.length), n.indexOf(\"?\") !== -1 ? n += \"&\" + this.defaultQueryString : n += \"?\" + this.defaultQueryString, n += i;\n }\n return n;\n }, r.prototype._loadResource = function(t, e) {\n var n = this;\n t._dequeue = e, Ro.eachSeries(this._beforeMiddleware, function(i, o) {\n i.call(n, t, function() {\n o(t.isComplete ? {} : null);\n });\n }, function() {\n t.isComplete ? n._onLoad(t) : (t._onLoadBinding = t.onComplete.once(n._onLoad, n), t.load());\n }, !0);\n }, r.prototype._onStart = function() {\n this.progress = 0, this.loading = !0, this.onStart.dispatch(this);\n }, r.prototype._onComplete = function() {\n this.progress = Io, this.loading = !1, this.onComplete.dispatch(this, this.resources);\n }, r.prototype._onLoad = function(t) {\n var e = this;\n t._onLoadBinding = null, this._resourcesParsing.push(t), t._dequeue(), Ro.eachSeries(this._afterMiddleware, function(n, i) {\n n.call(e, t, i);\n }, function() {\n t.onAfterMiddleware.dispatch(t), e.progress = Math.min(Io, 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() && e._resourcesParsing.length === 0 && e._onComplete();\n }, !0);\n }, r.prototype.destroy = function() {\n this._protected || this.reset();\n }, Object.defineProperty(r, \"shared\", {\n /** A premade instance of the loader that can be used to load resources. */\n get: function() {\n var t = r._shared;\n return t || (t = new r(), t._protected = !0, r._shared = t), t;\n },\n enumerable: !1,\n configurable: !0\n }), r.registerPlugin = function(t) {\n return he(\"6.5.0\", \"Loader.registerPlugin() is deprecated, use extensions.add() instead.\"), Me.add({\n type: gt.Loader,\n ref: t\n }), r;\n }, r._plugins = [], r;\n }()\n);\nMe.handleByList(gt.Loader, Ni._plugins);\nNi.prototype.add = function(t, e, n, i) {\n if (Array.isArray(t)) {\n for (var o = 0; o < t.length; ++o)\n this.add(t[o]);\n return this;\n }\n if (typeof t == \"object\" && (n = t, i = e || n.callback || n.onComplete, e = n.url, t = n.name || n.key || n.url), typeof e != \"string\" && (i = n, n = e, e = t), typeof e != \"string\")\n throw new Error(\"No url passed to add resource to loader.\");\n return typeof n == \"function\" && (i = n, n = null), this._add(t, e, n, i);\n};\nvar eb = (\n /** @class */\n function() {\n function r() {\n }\n return r.init = function(t) {\n t = Object.assign({\n sharedLoader: !1\n }, t), this.loader = t.sharedLoader ? Ni.shared : new Ni();\n }, r.destroy = function() {\n this.loader && (this.loader.destroy(), this.loader = null);\n }, r.extension = gt.Application, r;\n }()\n), rb = (\n /** @class */\n function() {\n function r() {\n }\n return r.add = function() {\n Rt.setExtensionLoadType(\"svg\", Rt.LOAD_TYPE.XHR), Rt.setExtensionXhrType(\"svg\", Rt.XHR_RESPONSE_TYPE.TEXT);\n }, r.use = function(t, e) {\n if (t.data && (t.type === Rt.TYPE.IMAGE || t.extension === \"svg\")) {\n var n = t.data, i = t.url, o = t.name, a = t.metadata;\n J.fromLoader(n, i, o, a).then(function(s) {\n t.texture = s, e();\n }).catch(e);\n } else\n e();\n }, r.extension = gt.Loader, r;\n }()\n), nb = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\nfunction ib(r) {\n for (var t = \"\", e = 0; e < r.length; ) {\n for (var n = [0, 0, 0], i = [0, 0, 0, 0], o = 0; o < n.length; ++o)\n e < r.length ? n[o] = r.charCodeAt(e++) & 255 : n[o] = 0;\n i[0] = n[0] >> 2, i[1] = (n[0] & 3) << 4 | n[1] >> 4, i[2] = (n[1] & 15) << 2 | n[2] >> 6, i[3] = n[2] & 63;\n var a = e - (r.length - 1);\n switch (a) {\n case 2:\n i[3] = 64, i[2] = 64;\n break;\n case 1:\n i[3] = 64;\n break;\n }\n for (var o = 0; o < i.length; ++o)\n t += nb.charAt(i[o]);\n }\n return t;\n}\nfunction ob(r, t) {\n if (!r.data) {\n t();\n return;\n }\n if (r.xhr && r.xhrType === Rt.XHR_RESPONSE_TYPE.BLOB) {\n if (!self.Blob || typeof r.data == \"string\") {\n var e = r.xhr.getResponseHeader(\"content-type\");\n if (e && e.indexOf(\"image\") === 0) {\n r.data = new Image(), r.data.src = \"data:\" + e + \";base64,\" + ib(r.xhr.responseText), r.type = Rt.TYPE.IMAGE, r.data.onload = function() {\n r.data.onload = null, t();\n };\n return;\n }\n } else if (r.data.type.indexOf(\"image\") === 0) {\n var n = globalThis.URL || globalThis.webkitURL, i = n.createObjectURL(r.data);\n r.blob = r.data, r.data = new Image(), r.data.src = i, r.type = Rt.TYPE.IMAGE, r.data.onload = function() {\n n.revokeObjectURL(i), r.data.onload = null, t();\n };\n return;\n }\n }\n t();\n}\nvar ab = (\n /** @class */\n function() {\n function r() {\n }\n return r.extension = gt.Loader, r.use = ob, r;\n }()\n);\nMe.add(rb, ab);\n/*!\n * @pixi/compressed-textures - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/compressed-textures is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\nvar vt, rt;\n(function(r) {\n r[r.COMPRESSED_RGB_S3TC_DXT1_EXT = 33776] = \"COMPRESSED_RGB_S3TC_DXT1_EXT\", r[r.COMPRESSED_RGBA_S3TC_DXT1_EXT = 33777] = \"COMPRESSED_RGBA_S3TC_DXT1_EXT\", r[r.COMPRESSED_RGBA_S3TC_DXT3_EXT = 33778] = \"COMPRESSED_RGBA_S3TC_DXT3_EXT\", r[r.COMPRESSED_RGBA_S3TC_DXT5_EXT = 33779] = \"COMPRESSED_RGBA_S3TC_DXT5_EXT\", r[r.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT = 35917] = \"COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT\", r[r.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT = 35918] = \"COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT\", r[r.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT = 35919] = \"COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT\", r[r.COMPRESSED_SRGB_S3TC_DXT1_EXT = 35916] = \"COMPRESSED_SRGB_S3TC_DXT1_EXT\", r[r.COMPRESSED_R11_EAC = 37488] = \"COMPRESSED_R11_EAC\", r[r.COMPRESSED_SIGNED_R11_EAC = 37489] = \"COMPRESSED_SIGNED_R11_EAC\", r[r.COMPRESSED_RG11_EAC = 37490] = \"COMPRESSED_RG11_EAC\", r[r.COMPRESSED_SIGNED_RG11_EAC = 37491] = \"COMPRESSED_SIGNED_RG11_EAC\", r[r.COMPRESSED_RGB8_ETC2 = 37492] = \"COMPRESSED_RGB8_ETC2\", r[r.COMPRESSED_RGBA8_ETC2_EAC = 37496] = \"COMPRESSED_RGBA8_ETC2_EAC\", r[r.COMPRESSED_SRGB8_ETC2 = 37493] = \"COMPRESSED_SRGB8_ETC2\", r[r.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC = 37497] = \"COMPRESSED_SRGB8_ALPHA8_ETC2_EAC\", r[r.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 37494] = \"COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2\", r[r.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 37495] = \"COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2\", r[r.COMPRESSED_RGB_PVRTC_4BPPV1_IMG = 35840] = \"COMPRESSED_RGB_PVRTC_4BPPV1_IMG\", r[r.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG = 35842] = \"COMPRESSED_RGBA_PVRTC_4BPPV1_IMG\", r[r.COMPRESSED_RGB_PVRTC_2BPPV1_IMG = 35841] = \"COMPRESSED_RGB_PVRTC_2BPPV1_IMG\", r[r.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG = 35843] = \"COMPRESSED_RGBA_PVRTC_2BPPV1_IMG\", r[r.COMPRESSED_RGB_ETC1_WEBGL = 36196] = \"COMPRESSED_RGB_ETC1_WEBGL\", r[r.COMPRESSED_RGB_ATC_WEBGL = 35986] = \"COMPRESSED_RGB_ATC_WEBGL\", r[r.COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL = 35986] = \"COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL\", r[r.COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL = 34798] = \"COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL\", r[r.COMPRESSED_RGBA_ASTC_4x4_KHR = 37808] = \"COMPRESSED_RGBA_ASTC_4x4_KHR\";\n})(rt || (rt = {}));\nvar Li = (vt = {}, // WEBGL_compressed_texture_s3tc\nvt[rt.COMPRESSED_RGB_S3TC_DXT1_EXT] = 0.5, vt[rt.COMPRESSED_RGBA_S3TC_DXT1_EXT] = 0.5, vt[rt.COMPRESSED_RGBA_S3TC_DXT3_EXT] = 1, vt[rt.COMPRESSED_RGBA_S3TC_DXT5_EXT] = 1, // WEBGL_compressed_texture_s3tc\nvt[rt.COMPRESSED_SRGB_S3TC_DXT1_EXT] = 0.5, vt[rt.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT] = 0.5, vt[rt.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT] = 1, vt[rt.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT] = 1, // WEBGL_compressed_texture_etc\nvt[rt.COMPRESSED_R11_EAC] = 0.5, vt[rt.COMPRESSED_SIGNED_R11_EAC] = 0.5, vt[rt.COMPRESSED_RG11_EAC] = 1, vt[rt.COMPRESSED_SIGNED_RG11_EAC] = 1, vt[rt.COMPRESSED_RGB8_ETC2] = 0.5, vt[rt.COMPRESSED_RGBA8_ETC2_EAC] = 1, vt[rt.COMPRESSED_SRGB8_ETC2] = 0.5, vt[rt.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC] = 1, vt[rt.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2] = 0.5, vt[rt.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2] = 0.5, // WEBGL_compressed_texture_pvrtc\nvt[rt.COMPRESSED_RGB_PVRTC_4BPPV1_IMG] = 0.5, vt[rt.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG] = 0.5, vt[rt.COMPRESSED_RGB_PVRTC_2BPPV1_IMG] = 0.25, vt[rt.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG] = 0.25, // WEBGL_compressed_texture_etc1\nvt[rt.COMPRESSED_RGB_ETC1_WEBGL] = 0.5, // @see https://www.khronos.org/registry/OpenGL/extensions/AMD/AMD_compressed_ATC_texture.txt\n// WEBGL_compressed_texture_atc\nvt[rt.COMPRESSED_RGB_ATC_WEBGL] = 0.5, vt[rt.COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL] = 1, vt[rt.COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL] = 1, // @see https://registry.khronos.org/OpenGL/extensions/KHR/KHR_texture_compression_astc_hdr.txt\n// WEBGL_compressed_texture_astc\n/* eslint-disable-next-line camelcase */\nvt[rt.COMPRESSED_RGBA_ASTC_4x4_KHR] = 1, vt);\n/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\nvar ma = function(r, t) {\n return ma = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(e, n) {\n e.__proto__ = n;\n } || function(e, n) {\n for (var i in n)\n n.hasOwnProperty(i) && (e[i] = n[i]);\n }, ma(r, t);\n};\nfunction $l(r, t) {\n ma(r, t);\n function e() {\n this.constructor = r;\n }\n r.prototype = t === null ? Object.create(t) : (e.prototype = t.prototype, new e());\n}\nfunction sb(r, t, e, n) {\n function i(o) {\n return o instanceof e ? o : new e(function(a) {\n a(o);\n });\n }\n return new (e || (e = Promise))(function(o, a) {\n function s(f) {\n try {\n h(n.next(f));\n } catch (l) {\n a(l);\n }\n }\n function u(f) {\n try {\n h(n.throw(f));\n } catch (l) {\n a(l);\n }\n }\n function h(f) {\n f.done ? o(f.value) : i(f.value).then(s, u);\n }\n h((n = n.apply(r, t || [])).next());\n });\n}\nfunction ub(r, t) {\n var e = { label: 0, sent: function() {\n if (o[0] & 1)\n throw o[1];\n return o[1];\n }, trys: [], ops: [] }, n, i, o, a;\n return a = { next: s(0), throw: s(1), return: s(2) }, typeof Symbol == \"function\" && (a[Symbol.iterator] = function() {\n return this;\n }), a;\n function s(h) {\n return function(f) {\n return u([h, f]);\n };\n }\n function u(h) {\n if (n)\n throw new TypeError(\"Generator is already executing.\");\n for (; e; )\n try {\n if (n = 1, i && (o = h[0] & 2 ? i.return : h[0] ? i.throw || ((o = i.return) && o.call(i), 0) : i.next) && !(o = o.call(i, h[1])).done)\n return o;\n switch (i = 0, o && (h = [h[0] & 2, o.value]), h[0]) {\n case 0:\n case 1:\n o = h;\n break;\n case 4:\n return e.label++, { value: h[1], done: !1 };\n case 5:\n e.label++, i = h[1], h = [0];\n continue;\n case 7:\n h = e.ops.pop(), e.trys.pop();\n continue;\n default:\n if (o = e.trys, !(o = o.length > 0 && o[o.length - 1]) && (h[0] === 6 || h[0] === 2)) {\n e = 0;\n continue;\n }\n if (h[0] === 3 && (!o || h[1] > o[0] && h[1] < o[3])) {\n e.label = h[1];\n break;\n }\n if (h[0] === 6 && e.label < o[1]) {\n e.label = o[1], o = h;\n break;\n }\n if (o && e.label < o[2]) {\n e.label = o[2], e.ops.push(h);\n break;\n }\n o[2] && e.ops.pop(), e.trys.pop();\n continue;\n }\n h = t.call(r, e);\n } catch (f) {\n h = [6, f], i = 0;\n } finally {\n n = o = 0;\n }\n if (h[0] & 5)\n throw h[1];\n return { value: h[0] ? h[1] : void 0, done: !0 };\n }\n}\nvar hb = (\n /** @class */\n function(r) {\n $l(t, r);\n function t(e, n) {\n n === void 0 && (n = { width: 1, height: 1, autoLoad: !0 });\n var i = this, o, a;\n return typeof e == \"string\" ? (o = e, a = new Uint8Array()) : (o = null, a = e), i = r.call(this, a, n) || this, i.origin = o, i.buffer = a ? new va(a) : null, i.origin && n.autoLoad !== !1 && i.load(), a && a.length && (i.loaded = !0, i.onBlobLoaded(i.buffer.rawBinaryData)), i;\n }\n return t.prototype.onBlobLoaded = function(e) {\n }, t.prototype.load = function() {\n return sb(this, void 0, Promise, function() {\n var e, n, i;\n return ub(this, function(o) {\n switch (o.label) {\n case 0:\n return [4, fetch(this.origin)];\n case 1:\n return e = o.sent(), [4, e.blob()];\n case 2:\n return n = o.sent(), [4, n.arrayBuffer()];\n case 3:\n return i = o.sent(), this.data = new Uint32Array(i), this.buffer = new va(i), this.loaded = !0, this.onBlobLoaded(i), this.update(), [2, this];\n }\n });\n });\n }, t;\n }(Cn)\n), ga = (\n /** @class */\n function(r) {\n $l(t, r);\n function t(e, n) {\n var i = r.call(this, e, n) || this;\n return i.format = n.format, i.levels = n.levels || 1, i._width = n.width, i._height = n.height, i._extension = t._formatToExtension(i.format), (n.levelBuffers || i.buffer) && (i._levelBuffers = n.levelBuffers || t._createLevelBuffers(\n e instanceof Uint8Array ? e : i.buffer.uint8View,\n i.format,\n i.levels,\n 4,\n 4,\n // PVRTC has 8x4 blocks in 2bpp mode\n i.width,\n i.height\n )), i;\n }\n return t.prototype.upload = function(e, n, i) {\n var o = e.gl, a = e.context.extensions[this._extension];\n if (!a)\n throw new Error(this._extension + \" textures are not supported on the current machine\");\n if (!this._levelBuffers)\n return !1;\n for (var s = 0, u = this.levels; s < u; s++) {\n var h = this._levelBuffers[s], f = h.levelID, l = h.levelWidth, c = h.levelHeight, d = h.levelBuffer;\n o.compressedTexImage2D(o.TEXTURE_2D, f, this.format, l, c, 0, d);\n }\n return !0;\n }, t.prototype.onBlobLoaded = function() {\n this._levelBuffers = t._createLevelBuffers(\n this.buffer.uint8View,\n this.format,\n this.levels,\n 4,\n 4,\n // PVRTC has 8x4 blocks in 2bpp mode\n this.width,\n this.height\n );\n }, t._formatToExtension = function(e) {\n if (e >= 33776 && e <= 33779)\n return \"s3tc\";\n if (e >= 37488 && e <= 37497)\n return \"etc\";\n if (e >= 35840 && e <= 35843)\n return \"pvrtc\";\n if (e >= 36196)\n return \"etc1\";\n if (e >= 35986 && e <= 34798)\n return \"atc\";\n throw new Error(\"Invalid (compressed) texture format given!\");\n }, t._createLevelBuffers = function(e, n, i, o, a, s, u) {\n for (var h = new Array(i), f = e.byteOffset, l = s, c = u, d = l + o - 1 & ~(o - 1), p = c + a - 1 & ~(a - 1), v = d * p * Li[n], _ = 0; _ < i; _++)\n h[_] = {\n levelID: _,\n levelWidth: i > 1 ? l : d,\n levelHeight: i > 1 ? c : p,\n levelBuffer: new Uint8Array(e.buffer, f, v)\n }, f += v, l = l >> 1 || 1, c = c >> 1 || 1, d = l + o - 1 & ~(o - 1), p = c + a - 1 & ~(a - 1), v = d * p * Li[n];\n return h;\n }, t;\n }(hb)\n), lb = (\n /** @class */\n function() {\n function r() {\n }\n return r.use = function(t, e) {\n var n = t.data, i = this;\n if (t.type === Rt.TYPE.JSON && n && n.cacheID && n.textures) {\n for (var o = n.textures, a = void 0, s = void 0, u = 0, h = o.length; u < h; u++) {\n var f = o[u], l = f.src, c = f.format;\n if (c || (s = l), r.textureFormats[c]) {\n a = l;\n break;\n }\n }\n if (a = a || s, !a) {\n e(new Error(\"Cannot load compressed-textures in \" + t.url + \", make sure you provide a fallback\"));\n return;\n }\n if (a === t.url) {\n e(new Error(\"URL of compressed texture cannot be the same as the manifest's URL\"));\n return;\n }\n var d = {\n crossOrigin: t.crossOrigin,\n metadata: t.metadata.imageMetadata,\n parentResource: t\n }, p = Ir.resolve(t.url.replace(i.baseUrl, \"\"), a), v = n.cacheID;\n i.add(v, p, d, function(_) {\n if (_.error) {\n e(_.error);\n return;\n }\n var g = _.texture, m = g === void 0 ? null : g, y = _.textures, T = y === void 0 ? {} : y;\n Object.assign(t, { texture: m, textures: T }), e();\n });\n } else\n e();\n }, Object.defineProperty(r, \"textureExtensions\", {\n /** Map of available texture extensions. */\n get: function() {\n if (!r._textureExtensions) {\n var t = k.ADAPTER.createCanvas(), e = t.getContext(\"webgl\");\n if (!e)\n return console.warn(\"WebGL not available for compressed textures. Silently failing.\"), {};\n var n = {\n s3tc: e.getExtension(\"WEBGL_compressed_texture_s3tc\"),\n s3tc_sRGB: e.getExtension(\"WEBGL_compressed_texture_s3tc_srgb\"),\n etc: e.getExtension(\"WEBGL_compressed_texture_etc\"),\n etc1: e.getExtension(\"WEBGL_compressed_texture_etc1\"),\n pvrtc: e.getExtension(\"WEBGL_compressed_texture_pvrtc\") || e.getExtension(\"WEBKIT_WEBGL_compressed_texture_pvrtc\"),\n atc: e.getExtension(\"WEBGL_compressed_texture_atc\"),\n astc: e.getExtension(\"WEBGL_compressed_texture_astc\")\n };\n r._textureExtensions = n;\n }\n return r._textureExtensions;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r, \"textureFormats\", {\n /** Map of available texture formats. */\n get: function() {\n if (!r._textureFormats) {\n var t = r.textureExtensions;\n r._textureFormats = {};\n for (var e in t) {\n var n = t[e];\n n && Object.assign(r._textureFormats, Object.getPrototypeOf(n));\n }\n }\n return r._textureFormats;\n },\n enumerable: !1,\n configurable: !0\n }), r.extension = gt.Loader, r;\n }()\n);\nfunction Kl(r, t, e) {\n var n = {\n textures: {},\n texture: null\n };\n if (!t)\n return n;\n var i = t.map(function(o) {\n return new J(new ut(o, Object.assign({\n mipmap: le.OFF,\n alphaMode: fe.NO_PREMULTIPLIED_ALPHA\n }, e)));\n });\n return i.forEach(function(o, a) {\n var s = o.baseTexture, u = r + \"-\" + (a + 1);\n ut.addToCache(s, u), J.addToCache(o, u), a === 0 && (ut.addToCache(s, r), J.addToCache(o, r), n.texture = o), n.textures[u] = o;\n }), n;\n}\nvar rn, ee, Co = 4, oi = 124, fb = 32, Qu = 20, cb = 542327876, ai = {\n SIZE: 1,\n FLAGS: 2,\n HEIGHT: 3,\n WIDTH: 4,\n MIPMAP_COUNT: 7,\n PIXEL_FORMAT: 19\n}, db = {\n SIZE: 0,\n FLAGS: 1,\n FOURCC: 2,\n RGB_BITCOUNT: 3,\n R_BIT_MASK: 4,\n G_BIT_MASK: 5,\n B_BIT_MASK: 6,\n A_BIT_MASK: 7\n}, si = {\n DXGI_FORMAT: 0,\n RESOURCE_DIMENSION: 1,\n MISC_FLAG: 2,\n ARRAY_SIZE: 3,\n MISC_FLAGS2: 4\n}, ie;\n(function(r) {\n r[r.DXGI_FORMAT_UNKNOWN = 0] = \"DXGI_FORMAT_UNKNOWN\", r[r.DXGI_FORMAT_R32G32B32A32_TYPELESS = 1] = \"DXGI_FORMAT_R32G32B32A32_TYPELESS\", r[r.DXGI_FORMAT_R32G32B32A32_FLOAT = 2] = \"DXGI_FORMAT_R32G32B32A32_FLOAT\", r[r.DXGI_FORMAT_R32G32B32A32_UINT = 3] = \"DXGI_FORMAT_R32G32B32A32_UINT\", r[r.DXGI_FORMAT_R32G32B32A32_SINT = 4] = \"DXGI_FORMAT_R32G32B32A32_SINT\", r[r.DXGI_FORMAT_R32G32B32_TYPELESS = 5] = \"DXGI_FORMAT_R32G32B32_TYPELESS\", r[r.DXGI_FORMAT_R32G32B32_FLOAT = 6] = \"DXGI_FORMAT_R32G32B32_FLOAT\", r[r.DXGI_FORMAT_R32G32B32_UINT = 7] = \"DXGI_FORMAT_R32G32B32_UINT\", r[r.DXGI_FORMAT_R32G32B32_SINT = 8] = \"DXGI_FORMAT_R32G32B32_SINT\", r[r.DXGI_FORMAT_R16G16B16A16_TYPELESS = 9] = \"DXGI_FORMAT_R16G16B16A16_TYPELESS\", r[r.DXGI_FORMAT_R16G16B16A16_FLOAT = 10] = \"DXGI_FORMAT_R16G16B16A16_FLOAT\", r[r.DXGI_FORMAT_R16G16B16A16_UNORM = 11] = \"DXGI_FORMAT_R16G16B16A16_UNORM\", r[r.DXGI_FORMAT_R16G16B16A16_UINT = 12] = \"DXGI_FORMAT_R16G16B16A16_UINT\", r[r.DXGI_FORMAT_R16G16B16A16_SNORM = 13] = \"DXGI_FORMAT_R16G16B16A16_SNORM\", r[r.DXGI_FORMAT_R16G16B16A16_SINT = 14] = \"DXGI_FORMAT_R16G16B16A16_SINT\", r[r.DXGI_FORMAT_R32G32_TYPELESS = 15] = \"DXGI_FORMAT_R32G32_TYPELESS\", r[r.DXGI_FORMAT_R32G32_FLOAT = 16] = \"DXGI_FORMAT_R32G32_FLOAT\", r[r.DXGI_FORMAT_R32G32_UINT = 17] = \"DXGI_FORMAT_R32G32_UINT\", r[r.DXGI_FORMAT_R32G32_SINT = 18] = \"DXGI_FORMAT_R32G32_SINT\", r[r.DXGI_FORMAT_R32G8X24_TYPELESS = 19] = \"DXGI_FORMAT_R32G8X24_TYPELESS\", r[r.DXGI_FORMAT_D32_FLOAT_S8X24_UINT = 20] = \"DXGI_FORMAT_D32_FLOAT_S8X24_UINT\", r[r.DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS = 21] = \"DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS\", r[r.DXGI_FORMAT_X32_TYPELESS_G8X24_UINT = 22] = \"DXGI_FORMAT_X32_TYPELESS_G8X24_UINT\", r[r.DXGI_FORMAT_R10G10B10A2_TYPELESS = 23] = \"DXGI_FORMAT_R10G10B10A2_TYPELESS\", r[r.DXGI_FORMAT_R10G10B10A2_UNORM = 24] = \"DXGI_FORMAT_R10G10B10A2_UNORM\", r[r.DXGI_FORMAT_R10G10B10A2_UINT = 25] = \"DXGI_FORMAT_R10G10B10A2_UINT\", r[r.DXGI_FORMAT_R11G11B10_FLOAT = 26] = \"DXGI_FORMAT_R11G11B10_FLOAT\", r[r.DXGI_FORMAT_R8G8B8A8_TYPELESS = 27] = \"DXGI_FORMAT_R8G8B8A8_TYPELESS\", r[r.DXGI_FORMAT_R8G8B8A8_UNORM = 28] = \"DXGI_FORMAT_R8G8B8A8_UNORM\", r[r.DXGI_FORMAT_R8G8B8A8_UNORM_SRGB = 29] = \"DXGI_FORMAT_R8G8B8A8_UNORM_SRGB\", r[r.DXGI_FORMAT_R8G8B8A8_UINT = 30] = \"DXGI_FORMAT_R8G8B8A8_UINT\", r[r.DXGI_FORMAT_R8G8B8A8_SNORM = 31] = \"DXGI_FORMAT_R8G8B8A8_SNORM\", r[r.DXGI_FORMAT_R8G8B8A8_SINT = 32] = \"DXGI_FORMAT_R8G8B8A8_SINT\", r[r.DXGI_FORMAT_R16G16_TYPELESS = 33] = \"DXGI_FORMAT_R16G16_TYPELESS\", r[r.DXGI_FORMAT_R16G16_FLOAT = 34] = \"DXGI_FORMAT_R16G16_FLOAT\", r[r.DXGI_FORMAT_R16G16_UNORM = 35] = \"DXGI_FORMAT_R16G16_UNORM\", r[r.DXGI_FORMAT_R16G16_UINT = 36] = \"DXGI_FORMAT_R16G16_UINT\", r[r.DXGI_FORMAT_R16G16_SNORM = 37] = \"DXGI_FORMAT_R16G16_SNORM\", r[r.DXGI_FORMAT_R16G16_SINT = 38] = \"DXGI_FORMAT_R16G16_SINT\", r[r.DXGI_FORMAT_R32_TYPELESS = 39] = \"DXGI_FORMAT_R32_TYPELESS\", r[r.DXGI_FORMAT_D32_FLOAT = 40] = \"DXGI_FORMAT_D32_FLOAT\", r[r.DXGI_FORMAT_R32_FLOAT = 41] = \"DXGI_FORMAT_R32_FLOAT\", r[r.DXGI_FORMAT_R32_UINT = 42] = \"DXGI_FORMAT_R32_UINT\", r[r.DXGI_FORMAT_R32_SINT = 43] = \"DXGI_FORMAT_R32_SINT\", r[r.DXGI_FORMAT_R24G8_TYPELESS = 44] = \"DXGI_FORMAT_R24G8_TYPELESS\", r[r.DXGI_FORMAT_D24_UNORM_S8_UINT = 45] = \"DXGI_FORMAT_D24_UNORM_S8_UINT\", r[r.DXGI_FORMAT_R24_UNORM_X8_TYPELESS = 46] = \"DXGI_FORMAT_R24_UNORM_X8_TYPELESS\", r[r.DXGI_FORMAT_X24_TYPELESS_G8_UINT = 47] = \"DXGI_FORMAT_X24_TYPELESS_G8_UINT\", r[r.DXGI_FORMAT_R8G8_TYPELESS = 48] = \"DXGI_FORMAT_R8G8_TYPELESS\", r[r.DXGI_FORMAT_R8G8_UNORM = 49] = \"DXGI_FORMAT_R8G8_UNORM\", r[r.DXGI_FORMAT_R8G8_UINT = 50] = \"DXGI_FORMAT_R8G8_UINT\", r[r.DXGI_FORMAT_R8G8_SNORM = 51] = \"DXGI_FORMAT_R8G8_SNORM\", r[r.DXGI_FORMAT_R8G8_SINT = 52] = \"DXGI_FORMAT_R8G8_SINT\", r[r.DXGI_FORMAT_R16_TYPELESS = 53] = \"DXGI_FORMAT_R16_TYPELESS\", r[r.DXGI_FORMAT_R16_FLOAT = 54] = \"DXGI_FORMAT_R16_FLOAT\", r[r.DXGI_FORMAT_D16_UNORM = 55] = \"DXGI_FORMAT_D16_UNORM\", r[r.DXGI_FORMAT_R16_UNORM = 56] = \"DXGI_FORMAT_R16_UNORM\", r[r.DXGI_FORMAT_R16_UINT = 57] = \"DXGI_FORMAT_R16_UINT\", r[r.DXGI_FORMAT_R16_SNORM = 58] = \"DXGI_FORMAT_R16_SNORM\", r[r.DXGI_FORMAT_R16_SINT = 59] = \"DXGI_FORMAT_R16_SINT\", r[r.DXGI_FORMAT_R8_TYPELESS = 60] = \"DXGI_FORMAT_R8_TYPELESS\", r[r.DXGI_FORMAT_R8_UNORM = 61] = \"DXGI_FORMAT_R8_UNORM\", r[r.DXGI_FORMAT_R8_UINT = 62] = \"DXGI_FORMAT_R8_UINT\", r[r.DXGI_FORMAT_R8_SNORM = 63] = \"DXGI_FORMAT_R8_SNORM\", r[r.DXGI_FORMAT_R8_SINT = 64] = \"DXGI_FORMAT_R8_SINT\", r[r.DXGI_FORMAT_A8_UNORM = 65] = \"DXGI_FORMAT_A8_UNORM\", r[r.DXGI_FORMAT_R1_UNORM = 66] = \"DXGI_FORMAT_R1_UNORM\", r[r.DXGI_FORMAT_R9G9B9E5_SHAREDEXP = 67] = \"DXGI_FORMAT_R9G9B9E5_SHAREDEXP\", r[r.DXGI_FORMAT_R8G8_B8G8_UNORM = 68] = \"DXGI_FORMAT_R8G8_B8G8_UNORM\", r[r.DXGI_FORMAT_G8R8_G8B8_UNORM = 69] = \"DXGI_FORMAT_G8R8_G8B8_UNORM\", r[r.DXGI_FORMAT_BC1_TYPELESS = 70] = \"DXGI_FORMAT_BC1_TYPELESS\", r[r.DXGI_FORMAT_BC1_UNORM = 71] = \"DXGI_FORMAT_BC1_UNORM\", r[r.DXGI_FORMAT_BC1_UNORM_SRGB = 72] = \"DXGI_FORMAT_BC1_UNORM_SRGB\", r[r.DXGI_FORMAT_BC2_TYPELESS = 73] = \"DXGI_FORMAT_BC2_TYPELESS\", r[r.DXGI_FORMAT_BC2_UNORM = 74] = \"DXGI_FORMAT_BC2_UNORM\", r[r.DXGI_FORMAT_BC2_UNORM_SRGB = 75] = \"DXGI_FORMAT_BC2_UNORM_SRGB\", r[r.DXGI_FORMAT_BC3_TYPELESS = 76] = \"DXGI_FORMAT_BC3_TYPELESS\", r[r.DXGI_FORMAT_BC3_UNORM = 77] = \"DXGI_FORMAT_BC3_UNORM\", r[r.DXGI_FORMAT_BC3_UNORM_SRGB = 78] = \"DXGI_FORMAT_BC3_UNORM_SRGB\", r[r.DXGI_FORMAT_BC4_TYPELESS = 79] = \"DXGI_FORMAT_BC4_TYPELESS\", r[r.DXGI_FORMAT_BC4_UNORM = 80] = \"DXGI_FORMAT_BC4_UNORM\", r[r.DXGI_FORMAT_BC4_SNORM = 81] = \"DXGI_FORMAT_BC4_SNORM\", r[r.DXGI_FORMAT_BC5_TYPELESS = 82] = \"DXGI_FORMAT_BC5_TYPELESS\", r[r.DXGI_FORMAT_BC5_UNORM = 83] = \"DXGI_FORMAT_BC5_UNORM\", r[r.DXGI_FORMAT_BC5_SNORM = 84] = \"DXGI_FORMAT_BC5_SNORM\", r[r.DXGI_FORMAT_B5G6R5_UNORM = 85] = \"DXGI_FORMAT_B5G6R5_UNORM\", r[r.DXGI_FORMAT_B5G5R5A1_UNORM = 86] = \"DXGI_FORMAT_B5G5R5A1_UNORM\", r[r.DXGI_FORMAT_B8G8R8A8_UNORM = 87] = \"DXGI_FORMAT_B8G8R8A8_UNORM\", r[r.DXGI_FORMAT_B8G8R8X8_UNORM = 88] = \"DXGI_FORMAT_B8G8R8X8_UNORM\", r[r.DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM = 89] = \"DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM\", r[r.DXGI_FORMAT_B8G8R8A8_TYPELESS = 90] = \"DXGI_FORMAT_B8G8R8A8_TYPELESS\", r[r.DXGI_FORMAT_B8G8R8A8_UNORM_SRGB = 91] = \"DXGI_FORMAT_B8G8R8A8_UNORM_SRGB\", r[r.DXGI_FORMAT_B8G8R8X8_TYPELESS = 92] = \"DXGI_FORMAT_B8G8R8X8_TYPELESS\", r[r.DXGI_FORMAT_B8G8R8X8_UNORM_SRGB = 93] = \"DXGI_FORMAT_B8G8R8X8_UNORM_SRGB\", r[r.DXGI_FORMAT_BC6H_TYPELESS = 94] = \"DXGI_FORMAT_BC6H_TYPELESS\", r[r.DXGI_FORMAT_BC6H_UF16 = 95] = \"DXGI_FORMAT_BC6H_UF16\", r[r.DXGI_FORMAT_BC6H_SF16 = 96] = \"DXGI_FORMAT_BC6H_SF16\", r[r.DXGI_FORMAT_BC7_TYPELESS = 97] = \"DXGI_FORMAT_BC7_TYPELESS\", r[r.DXGI_FORMAT_BC7_UNORM = 98] = \"DXGI_FORMAT_BC7_UNORM\", r[r.DXGI_FORMAT_BC7_UNORM_SRGB = 99] = \"DXGI_FORMAT_BC7_UNORM_SRGB\", r[r.DXGI_FORMAT_AYUV = 100] = \"DXGI_FORMAT_AYUV\", r[r.DXGI_FORMAT_Y410 = 101] = \"DXGI_FORMAT_Y410\", r[r.DXGI_FORMAT_Y416 = 102] = \"DXGI_FORMAT_Y416\", r[r.DXGI_FORMAT_NV12 = 103] = \"DXGI_FORMAT_NV12\", r[r.DXGI_FORMAT_P010 = 104] = \"DXGI_FORMAT_P010\", r[r.DXGI_FORMAT_P016 = 105] = \"DXGI_FORMAT_P016\", r[r.DXGI_FORMAT_420_OPAQUE = 106] = \"DXGI_FORMAT_420_OPAQUE\", r[r.DXGI_FORMAT_YUY2 = 107] = \"DXGI_FORMAT_YUY2\", r[r.DXGI_FORMAT_Y210 = 108] = \"DXGI_FORMAT_Y210\", r[r.DXGI_FORMAT_Y216 = 109] = \"DXGI_FORMAT_Y216\", r[r.DXGI_FORMAT_NV11 = 110] = \"DXGI_FORMAT_NV11\", r[r.DXGI_FORMAT_AI44 = 111] = \"DXGI_FORMAT_AI44\", r[r.DXGI_FORMAT_IA44 = 112] = \"DXGI_FORMAT_IA44\", r[r.DXGI_FORMAT_P8 = 113] = \"DXGI_FORMAT_P8\", r[r.DXGI_FORMAT_A8P8 = 114] = \"DXGI_FORMAT_A8P8\", r[r.DXGI_FORMAT_B4G4R4A4_UNORM = 115] = \"DXGI_FORMAT_B4G4R4A4_UNORM\", r[r.DXGI_FORMAT_P208 = 116] = \"DXGI_FORMAT_P208\", r[r.DXGI_FORMAT_V208 = 117] = \"DXGI_FORMAT_V208\", r[r.DXGI_FORMAT_V408 = 118] = \"DXGI_FORMAT_V408\", r[r.DXGI_FORMAT_SAMPLER_FEEDBACK_MIN_MIP_OPAQUE = 119] = \"DXGI_FORMAT_SAMPLER_FEEDBACK_MIN_MIP_OPAQUE\", r[r.DXGI_FORMAT_SAMPLER_FEEDBACK_MIP_REGION_USED_OPAQUE = 120] = \"DXGI_FORMAT_SAMPLER_FEEDBACK_MIP_REGION_USED_OPAQUE\", r[r.DXGI_FORMAT_FORCE_UINT = 121] = \"DXGI_FORMAT_FORCE_UINT\";\n})(ie || (ie = {}));\nvar ya;\n(function(r) {\n r[r.DDS_DIMENSION_TEXTURE1D = 2] = \"DDS_DIMENSION_TEXTURE1D\", r[r.DDS_DIMENSION_TEXTURE2D = 3] = \"DDS_DIMENSION_TEXTURE2D\", r[r.DDS_DIMENSION_TEXTURE3D = 6] = \"DDS_DIMENSION_TEXTURE3D\";\n})(ya || (ya = {}));\nvar pb = 1, vb = 2, _b = 4, mb = 64, gb = 512, yb = 131072, bb = 827611204, xb = 861165636, Eb = 894720068, Tb = 808540228, wb = 4, Sb = (rn = {}, rn[bb] = rt.COMPRESSED_RGBA_S3TC_DXT1_EXT, rn[xb] = rt.COMPRESSED_RGBA_S3TC_DXT3_EXT, rn[Eb] = rt.COMPRESSED_RGBA_S3TC_DXT5_EXT, rn), Ab = (ee = {}, // WEBGL_compressed_texture_s3tc\nee[ie.DXGI_FORMAT_BC1_TYPELESS] = rt.COMPRESSED_RGBA_S3TC_DXT1_EXT, ee[ie.DXGI_FORMAT_BC1_UNORM] = rt.COMPRESSED_RGBA_S3TC_DXT1_EXT, ee[ie.DXGI_FORMAT_BC2_TYPELESS] = rt.COMPRESSED_RGBA_S3TC_DXT3_EXT, ee[ie.DXGI_FORMAT_BC2_UNORM] = rt.COMPRESSED_RGBA_S3TC_DXT3_EXT, ee[ie.DXGI_FORMAT_BC3_TYPELESS] = rt.COMPRESSED_RGBA_S3TC_DXT5_EXT, ee[ie.DXGI_FORMAT_BC3_UNORM] = rt.COMPRESSED_RGBA_S3TC_DXT5_EXT, // WEBGL_compressed_texture_s3tc_srgb\nee[ie.DXGI_FORMAT_BC1_UNORM_SRGB] = rt.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT, ee[ie.DXGI_FORMAT_BC2_UNORM_SRGB] = rt.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT, ee[ie.DXGI_FORMAT_BC3_UNORM_SRGB] = rt.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT, ee);\nfunction Pb(r) {\n var t = new Uint32Array(r), e = t[0];\n if (e !== cb)\n throw new Error(\"Invalid DDS file magic word\");\n var n = new Uint32Array(r, 0, oi / Uint32Array.BYTES_PER_ELEMENT), i = n[ai.HEIGHT], o = n[ai.WIDTH], a = n[ai.MIPMAP_COUNT], s = new Uint32Array(r, ai.PIXEL_FORMAT * Uint32Array.BYTES_PER_ELEMENT, fb / Uint32Array.BYTES_PER_ELEMENT), u = s[pb];\n if (u & _b) {\n var h = s[db.FOURCC];\n if (h !== Tb) {\n var f = Sb[h], l = Co + oi, c = new Uint8Array(r, l), d = new ga(c, {\n format: f,\n width: o,\n height: i,\n levels: a\n // CompressedTextureResource will separate the levelBuffers for us!\n });\n return [d];\n }\n var p = Co + oi, v = new Uint32Array(t.buffer, p, Qu / Uint32Array.BYTES_PER_ELEMENT), _ = v[si.DXGI_FORMAT], g = v[si.RESOURCE_DIMENSION], m = v[si.MISC_FLAG], y = v[si.ARRAY_SIZE], T = Ab[_];\n if (T === void 0)\n throw new Error(\"DDSParser cannot parse texture data with DXGI format \" + _);\n if (m === wb)\n throw new Error(\"DDSParser does not support cubemap textures\");\n if (g === ya.DDS_DIMENSION_TEXTURE3D)\n throw new Error(\"DDSParser does not supported 3D texture data\");\n var x = new Array(), w = Co + oi + Qu;\n if (y === 1)\n x.push(new Uint8Array(r, w));\n else {\n for (var S = Li[T], I = 0, O = o, b = i, P = 0; P < a; P++) {\n var A = Math.max(1, O + 3 & -4), R = Math.max(1, b + 3 & -4), M = A * R * S;\n I += M, O = O >>> 1, b = b >>> 1;\n }\n for (var D = w, P = 0; P < y; P++)\n x.push(new Uint8Array(r, D, I)), D += I;\n }\n return x.map(function(B) {\n return new ga(B, {\n format: T,\n width: o,\n height: i,\n levels: a\n });\n });\n }\n throw u & mb ? new Error(\"DDSParser does not support uncompressed texture data.\") : u & gb ? new Error(\"DDSParser does not supported YUV uncompressed texture data.\") : u & yb ? new Error(\"DDSParser does not support single-channel (lumninance) texture data!\") : u & vb ? new Error(\"DDSParser does not support single-channel (alpha) texture data!\") : new Error(\"DDSParser failed to load a texture file due to an unknown reason!\");\n}\nvar De, Se, nn, th = [171, 75, 84, 88, 32, 49, 49, 187, 13, 10, 26, 10], Ob = 67305985, re = {\n FILE_IDENTIFIER: 0,\n ENDIANNESS: 12,\n GL_TYPE: 16,\n GL_TYPE_SIZE: 20,\n GL_FORMAT: 24,\n GL_INTERNAL_FORMAT: 28,\n GL_BASE_INTERNAL_FORMAT: 32,\n PIXEL_WIDTH: 36,\n PIXEL_HEIGHT: 40,\n PIXEL_DEPTH: 44,\n NUMBER_OF_ARRAY_ELEMENTS: 48,\n NUMBER_OF_FACES: 52,\n NUMBER_OF_MIPMAP_LEVELS: 56,\n BYTES_OF_KEY_VALUE_DATA: 60\n}, ba = 64, eh = (De = {}, De[j.UNSIGNED_BYTE] = 1, De[j.UNSIGNED_SHORT] = 2, De[j.INT] = 4, De[j.UNSIGNED_INT] = 4, De[j.FLOAT] = 4, De[j.HALF_FLOAT] = 8, De), Rb = (Se = {}, Se[G.RGBA] = 4, Se[G.RGB] = 3, Se[G.RG] = 2, Se[G.RED] = 1, Se[G.LUMINANCE] = 1, Se[G.LUMINANCE_ALPHA] = 2, Se[G.ALPHA] = 1, Se), Ib = (nn = {}, nn[j.UNSIGNED_SHORT_4_4_4_4] = 2, nn[j.UNSIGNED_SHORT_5_5_5_1] = 2, nn[j.UNSIGNED_SHORT_5_6_5] = 2, nn);\nfunction Cb(r, t, e) {\n e === void 0 && (e = !1);\n var n = new DataView(t);\n if (!Mb(r, n))\n return null;\n var i = n.getUint32(re.ENDIANNESS, !0) === Ob, o = n.getUint32(re.GL_TYPE, i), a = n.getUint32(re.GL_FORMAT, i), s = n.getUint32(re.GL_INTERNAL_FORMAT, i), u = n.getUint32(re.PIXEL_WIDTH, i), h = n.getUint32(re.PIXEL_HEIGHT, i) || 1, f = n.getUint32(re.PIXEL_DEPTH, i) || 1, l = n.getUint32(re.NUMBER_OF_ARRAY_ELEMENTS, i) || 1, c = n.getUint32(re.NUMBER_OF_FACES, i), d = n.getUint32(re.NUMBER_OF_MIPMAP_LEVELS, i), p = n.getUint32(re.BYTES_OF_KEY_VALUE_DATA, i);\n if (h === 0 || f !== 1)\n throw new Error(\"Only 2D textures are supported\");\n if (c !== 1)\n throw new Error(\"CubeTextures are not supported by KTXLoader yet!\");\n if (l !== 1)\n throw new Error(\"WebGL does not support array textures\");\n var v = 4, _ = 4, g = u + 3 & -4, m = h + 3 & -4, y = new Array(l), T = u * h;\n o === 0 && (T = g * m);\n var x;\n if (o !== 0 ? eh[o] ? x = eh[o] * Rb[a] : x = Ib[o] : x = Li[s], x === void 0)\n throw new Error(\"Unable to resolve the pixel format stored in the *.ktx file!\");\n for (var w = e ? Fb(n, p, i) : null, S = T * x, I = S, O = u, b = h, P = g, A = m, R = ba + p, M = 0; M < d; M++) {\n for (var D = n.getUint32(R, i), B = R + 4, X = 0; X < l; X++) {\n var $ = y[X];\n $ || ($ = y[X] = new Array(d)), $[M] = {\n levelID: M,\n // don't align mipWidth when texture not compressed! (glType not zero)\n levelWidth: d > 1 || o !== 0 ? O : P,\n levelHeight: d > 1 || o !== 0 ? b : A,\n levelBuffer: new Uint8Array(t, B, I)\n }, B += I;\n }\n R += D + 4, R = R % 4 !== 0 ? R + 4 - R % 4 : R, O = O >> 1 || 1, b = b >> 1 || 1, P = O + v - 1 & ~(v - 1), A = b + _ - 1 & ~(_ - 1), I = P * A * x;\n }\n return o !== 0 ? {\n uncompressed: y.map(function(Q) {\n var U = Q[0].levelBuffer, L = !1;\n return o === j.FLOAT ? U = new Float32Array(Q[0].levelBuffer.buffer, Q[0].levelBuffer.byteOffset, Q[0].levelBuffer.byteLength / 4) : o === j.UNSIGNED_INT ? (L = !0, U = new Uint32Array(Q[0].levelBuffer.buffer, Q[0].levelBuffer.byteOffset, Q[0].levelBuffer.byteLength / 4)) : o === j.INT && (L = !0, U = new Int32Array(Q[0].levelBuffer.buffer, Q[0].levelBuffer.byteOffset, Q[0].levelBuffer.byteLength / 4)), {\n resource: new Cn(U, {\n width: Q[0].levelWidth,\n height: Q[0].levelHeight\n }),\n type: o,\n format: L ? Db(a) : a\n };\n }),\n kvData: w\n } : {\n compressed: y.map(function(Q) {\n return new ga(null, {\n format: s,\n width: u,\n height: h,\n levels: d,\n levelBuffers: Q\n });\n }),\n kvData: w\n };\n}\nfunction Mb(r, t) {\n for (var e = 0; e < th.length; e++)\n if (t.getUint8(e) !== th[e])\n return console.error(r + \" is not a valid *.ktx file!\"), !1;\n return !0;\n}\nfunction Db(r) {\n switch (r) {\n case G.RGBA:\n return G.RGBA_INTEGER;\n case G.RGB:\n return G.RGB_INTEGER;\n case G.RG:\n return G.RG_INTEGER;\n case G.RED:\n return G.RED_INTEGER;\n default:\n return r;\n }\n}\nfunction Fb(r, t, e) {\n for (var n = /* @__PURE__ */ new Map(), i = 0; i < t; ) {\n var o = r.getUint32(ba + i, e), a = ba + i + 4, s = 3 - (o + 3) % 4;\n if (o === 0 || o > t - i) {\n console.error(\"KTXLoader: keyAndValueByteSize out of bounds\");\n break;\n }\n for (var u = 0; u < o && r.getUint8(a + u) !== 0; u++)\n ;\n if (u === -1) {\n console.error(\"KTXLoader: Failed to find null byte terminating kvData key\");\n break;\n }\n var h = new TextDecoder().decode(new Uint8Array(r.buffer, a, u)), f = new DataView(r.buffer, a + u + 1, o - u - 1);\n n.set(h, f), i += 4 + o + s;\n }\n return n;\n}\nRt.setExtensionXhrType(\"dds\", Rt.XHR_RESPONSE_TYPE.BUFFER);\nvar Bb = (\n /** @class */\n function() {\n function r() {\n }\n return r.use = function(t, e) {\n if (t.extension === \"dds\" && t.data)\n try {\n Object.assign(t, Kl(t.name || t.url, Pb(t.data), t.metadata));\n } catch (n) {\n e(n);\n return;\n }\n e();\n }, r.extension = gt.Loader, r;\n }()\n);\nRt.setExtensionXhrType(\"ktx\", Rt.XHR_RESPONSE_TYPE.BUFFER);\nvar Nb = (\n /** @class */\n function() {\n function r() {\n }\n return r.use = function(t, e) {\n if (t.extension === \"ktx\" && t.data)\n try {\n var n = t.name || t.url, i = Cb(n, t.data, this.loadKeyValueData), o = i.compressed, a = i.uncompressed, s = i.kvData;\n if (o) {\n var u = Kl(n, o, t.metadata);\n if (s && u.textures)\n for (var h in u.textures)\n u.textures[h].baseTexture.ktxKeyValueData = s;\n Object.assign(t, u);\n } else if (a) {\n var f = {};\n a.forEach(function(l, c) {\n var d = new J(new ut(l.resource, {\n mipmap: le.OFF,\n alphaMode: fe.NO_PREMULTIPLIED_ALPHA,\n type: l.type,\n format: l.format\n })), p = n + \"-\" + (c + 1);\n s && (d.baseTexture.ktxKeyValueData = s), ut.addToCache(d.baseTexture, p), J.addToCache(d, p), c === 0 && (f[n] = d, ut.addToCache(d.baseTexture, n), J.addToCache(d, n)), f[p] = d;\n }), Object.assign(t, { textures: f });\n }\n } catch (l) {\n e(l);\n return;\n }\n e();\n }, r.extension = gt.Loader, r.loadKeyValueData = !1, r;\n }()\n);\n/*!\n * @pixi/particle-container - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/particle-container is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\n/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\nvar xa = function(r, t) {\n return xa = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(e, n) {\n e.__proto__ = n;\n } || function(e, n) {\n for (var i in n)\n n.hasOwnProperty(i) && (e[i] = n[i]);\n }, xa(r, t);\n};\nfunction Zl(r, t) {\n xa(r, t);\n function e() {\n this.constructor = r;\n }\n r.prototype = t === null ? Object.create(t) : (e.prototype = t.prototype, new e());\n}\n(function(r) {\n Zl(t, r);\n function t(e, n, i, o) {\n e === void 0 && (e = 1500), i === void 0 && (i = 16384), o === void 0 && (o = !1);\n var a = r.call(this) || this, s = 16384;\n return i > s && (i = s), a._properties = [!1, !0, !1, !1, !1], a._maxSize = e, a._batchSize = i, a._buffers = null, a._bufferUpdateIDs = [], a._updateID = 0, a.interactiveChildren = !1, a.blendMode = V.NORMAL, a.autoResize = o, a.roundPixels = !0, a.baseTexture = null, a.setProperties(n), a._tint = 0, a.tintRgb = new Float32Array(4), a.tint = 16777215, a;\n }\n return t.prototype.setProperties = function(e) {\n e && (this._properties[0] = \"vertices\" in e || \"scale\" in e ? !!e.vertices || !!e.scale : this._properties[0], this._properties[1] = \"position\" in e ? !!e.position : this._properties[1], this._properties[2] = \"rotation\" in e ? !!e.rotation : this._properties[2], this._properties[3] = \"uvs\" in e ? !!e.uvs : this._properties[3], this._properties[4] = \"tint\" in e || \"alpha\" in e ? !!e.tint || !!e.alpha : this._properties[4]);\n }, t.prototype.updateTransform = function() {\n this.displayObjectUpdateTransform();\n }, Object.defineProperty(t.prototype, \"tint\", {\n /**\n * The tint applied to the container. This is a hex value.\n * A value of 0xFFFFFF will remove any tint effect.\n * IMPORTANT: This is a WebGL only feature and will be ignored by the canvas renderer.\n * @default 0xFFFFFF\n */\n get: function() {\n return this._tint;\n },\n set: function(e) {\n this._tint = e, Yr(e, this.tintRgb);\n },\n enumerable: !1,\n configurable: !0\n }), t.prototype.render = function(e) {\n var n = this;\n !this.visible || this.worldAlpha <= 0 || !this.children.length || !this.renderable || (this.baseTexture || (this.baseTexture = this.children[0]._texture.baseTexture, this.baseTexture.valid || this.baseTexture.once(\"update\", function() {\n return n.onChildrenChange(0);\n })), e.batch.setObjectRenderer(e.plugins.particle), e.plugins.particle.render(this));\n }, t.prototype.onChildrenChange = function(e) {\n for (var n = Math.floor(e / this._batchSize); this._bufferUpdateIDs.length < n; )\n this._bufferUpdateIDs.push(0);\n this._bufferUpdateIDs[n] = ++this._updateID;\n }, t.prototype.dispose = function() {\n if (this._buffers) {\n for (var e = 0; e < this._buffers.length; ++e)\n this._buffers[e].destroy();\n this._buffers = null;\n }\n }, t.prototype.destroy = function(e) {\n r.prototype.destroy.call(this, e), this.dispose(), this._properties = null, this._buffers = null, this._bufferUpdateIDs = null;\n }, t;\n})(xe);\nvar rh = (\n /** @class */\n function() {\n function r(t, e, n) {\n this.geometry = new Mn(), this.indexBuffer = null, this.size = n, this.dynamicProperties = [], this.staticProperties = [];\n for (var i = 0; i < t.length; ++i) {\n var o = t[i];\n o = {\n attributeName: o.attributeName,\n size: o.size,\n uploadFunction: o.uploadFunction,\n type: o.type || j.FLOAT,\n offset: o.offset\n }, e[i] ? this.dynamicProperties.push(o) : this.staticProperties.push(o);\n }\n 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();\n }\n return r.prototype.initBuffers = function() {\n var t = this.geometry, e = 0;\n this.indexBuffer = new Mt(Wg(this.size), !0, !0), t.addIndex(this.indexBuffer), this.dynamicStride = 0;\n for (var n = 0; n < this.dynamicProperties.length; ++n) {\n var i = this.dynamicProperties[n];\n i.offset = e, e += i.size, this.dynamicStride += i.size;\n }\n var o = new ArrayBuffer(this.size * this.dynamicStride * 4 * 4);\n this.dynamicData = new Float32Array(o), this.dynamicDataUint32 = new Uint32Array(o), this.dynamicBuffer = new Mt(this.dynamicData, !1, !1);\n var a = 0;\n this.staticStride = 0;\n for (var n = 0; n < this.staticProperties.length; ++n) {\n var i = this.staticProperties[n];\n i.offset = a, a += i.size, this.staticStride += i.size;\n }\n var s = new ArrayBuffer(this.size * this.staticStride * 4 * 4);\n this.staticData = new Float32Array(s), this.staticDataUint32 = new Uint32Array(s), this.staticBuffer = new Mt(this.staticData, !0, !1);\n for (var n = 0; n < this.dynamicProperties.length; ++n) {\n var i = this.dynamicProperties[n];\n t.addAttribute(i.attributeName, this.dynamicBuffer, 0, i.type === j.UNSIGNED_BYTE, i.type, this.dynamicStride * 4, i.offset * 4);\n }\n for (var n = 0; n < this.staticProperties.length; ++n) {\n var i = this.staticProperties[n];\n t.addAttribute(i.attributeName, this.staticBuffer, 0, i.type === j.UNSIGNED_BYTE, i.type, this.staticStride * 4, i.offset * 4);\n }\n }, r.prototype.uploadDynamic = function(t, e, n) {\n for (var i = 0; i < this.dynamicProperties.length; i++) {\n var o = this.dynamicProperties[i];\n o.uploadFunction(t, e, n, o.type === j.UNSIGNED_BYTE ? this.dynamicDataUint32 : this.dynamicData, this.dynamicStride, o.offset);\n }\n this.dynamicBuffer._updateID++;\n }, r.prototype.uploadStatic = function(t, e, n) {\n for (var i = 0; i < this.staticProperties.length; i++) {\n var o = this.staticProperties[i];\n o.uploadFunction(t, e, n, o.type === j.UNSIGNED_BYTE ? this.staticDataUint32 : this.staticData, this.staticStride, o.offset);\n }\n this.staticBuffer._updateID++;\n }, r.prototype.destroy = function() {\n this.indexBuffer = null, this.dynamicProperties = null, this.dynamicBuffer = null, this.dynamicData = null, this.dynamicDataUint32 = null, this.staticProperties = null, this.staticBuffer = null, this.staticData = null, this.staticDataUint32 = null, this.geometry.destroy();\n }, r;\n }()\n), Lb = `varying vec2 vTextureCoord;\nvarying vec4 vColor;\n\nuniform sampler2D uSampler;\n\nvoid main(void){\n vec4 color = texture2D(uSampler, vTextureCoord) * vColor;\n gl_FragColor = color;\n}`, Ub = `attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\nattribute vec4 aColor;\n\nattribute vec2 aPositionCoord;\nattribute float aRotation;\n\nuniform mat3 translationMatrix;\nuniform vec4 uColor;\n\nvarying vec2 vTextureCoord;\nvarying vec4 vColor;\n\nvoid main(void){\n float x = (aVertexPosition.x) * cos(aRotation) - (aVertexPosition.y) * sin(aRotation);\n float y = (aVertexPosition.x) * sin(aRotation) + (aVertexPosition.y) * cos(aRotation);\n\n vec2 v = vec2(x, y);\n v = v + aPositionCoord;\n\n gl_Position = vec4((translationMatrix * vec3(v, 1.0)).xy, 0.0, 1.0);\n\n vTextureCoord = aTextureCoord;\n vColor = aColor * uColor;\n}\n`, Gb = (\n /** @class */\n function(r) {\n Zl(t, r);\n function t(e) {\n var n = r.call(this, e) || this;\n return n.shader = null, n.properties = null, n.tempMatrix = new Dt(), n.properties = [\n // verticesData\n {\n attributeName: \"aVertexPosition\",\n size: 2,\n uploadFunction: n.uploadVertices,\n offset: 0\n },\n // positionData\n {\n attributeName: \"aPositionCoord\",\n size: 2,\n uploadFunction: n.uploadPosition,\n offset: 0\n },\n // rotationData\n {\n attributeName: \"aRotation\",\n size: 1,\n uploadFunction: n.uploadRotation,\n offset: 0\n },\n // uvsData\n {\n attributeName: \"aTextureCoord\",\n size: 2,\n uploadFunction: n.uploadUvs,\n offset: 0\n },\n // tintData\n {\n attributeName: \"aColor\",\n size: 1,\n type: j.UNSIGNED_BYTE,\n uploadFunction: n.uploadTint,\n offset: 0\n }\n ], n.shader = Ue.from(Ub, Lb, {}), n.state = dr.for2d(), n;\n }\n return t.prototype.render = function(e) {\n var n = e.children, i = e._maxSize, o = e._batchSize, a = this.renderer, s = n.length;\n if (s !== 0) {\n s > i && !e.autoResize && (s = i);\n var u = e._buffers;\n u || (u = e._buffers = this.generateBuffers(e));\n var h = n[0]._texture.baseTexture, f = h.alphaMode > 0;\n this.state.blendMode = Sl(e.blendMode, f), a.state.set(this.state);\n var l = a.gl, c = e.worldTransform.copyTo(this.tempMatrix);\n c.prepend(a.globalUniforms.uniforms.projectionMatrix), this.shader.uniforms.translationMatrix = c.toArray(!0), this.shader.uniforms.uColor = zg(e.tintRgb, e.worldAlpha, this.shader.uniforms.uColor, f), this.shader.uniforms.uSampler = h, this.renderer.shader.bind(this.shader);\n for (var d = !1, p = 0, v = 0; p < s; p += o, v += 1) {\n var _ = s - p;\n _ > o && (_ = o), v >= u.length && u.push(this._generateOneMoreBuffer(e));\n var g = u[v];\n g.uploadDynamic(n, p, _);\n var m = e._bufferUpdateIDs[v] || 0;\n d = d || g._updateID < m, d && (g._updateID = e._updateID, g.uploadStatic(n, p, _)), a.geometry.bind(g.geometry), l.drawElements(l.TRIANGLES, _ * 6, l.UNSIGNED_SHORT, 0);\n }\n }\n }, t.prototype.generateBuffers = function(e) {\n for (var n = [], i = e._maxSize, o = e._batchSize, a = e._properties, s = 0; s < i; s += o)\n n.push(new rh(this.properties, a, o));\n return n;\n }, t.prototype._generateOneMoreBuffer = function(e) {\n var n = e._batchSize, i = e._properties;\n return new rh(this.properties, i, n);\n }, t.prototype.uploadVertices = function(e, n, i, o, a, s) {\n for (var u = 0, h = 0, f = 0, l = 0, c = 0; c < i; ++c) {\n var d = e[n + c], p = d._texture, v = d.scale.x, _ = d.scale.y, g = p.trim, m = p.orig;\n g ? (h = g.x - d.anchor.x * m.width, u = h + g.width, l = g.y - d.anchor.y * m.height, f = l + g.height) : (u = m.width * (1 - d.anchor.x), h = m.width * -d.anchor.x, f = m.height * (1 - d.anchor.y), l = m.height * -d.anchor.y), o[s] = h * v, o[s + 1] = l * _, o[s + a] = u * v, o[s + a + 1] = l * _, o[s + a * 2] = u * v, o[s + a * 2 + 1] = f * _, o[s + a * 3] = h * v, o[s + a * 3 + 1] = f * _, s += a * 4;\n }\n }, t.prototype.uploadPosition = function(e, n, i, o, a, s) {\n for (var u = 0; u < i; u++) {\n var h = e[n + u].position;\n o[s] = h.x, o[s + 1] = h.y, o[s + a] = h.x, o[s + a + 1] = h.y, o[s + a * 2] = h.x, o[s + a * 2 + 1] = h.y, o[s + a * 3] = h.x, o[s + a * 3 + 1] = h.y, s += a * 4;\n }\n }, t.prototype.uploadRotation = function(e, n, i, o, a, s) {\n for (var u = 0; u < i; u++) {\n var h = e[n + u].rotation;\n o[s] = h, o[s + a] = h, o[s + a * 2] = h, o[s + a * 3] = h, s += a * 4;\n }\n }, t.prototype.uploadUvs = function(e, n, i, o, a, s) {\n for (var u = 0; u < i; ++u) {\n var h = e[n + u]._texture._uvs;\n h ? (o[s] = h.x0, o[s + 1] = h.y0, o[s + a] = h.x1, o[s + a + 1] = h.y1, o[s + a * 2] = h.x2, o[s + a * 2 + 1] = h.y2, o[s + a * 3] = h.x3, o[s + a * 3 + 1] = h.y3, s += a * 4) : (o[s] = 0, o[s + 1] = 0, o[s + a] = 0, o[s + a + 1] = 0, o[s + a * 2] = 0, o[s + a * 2 + 1] = 0, o[s + a * 3] = 0, o[s + a * 3 + 1] = 0, s += a * 4);\n }\n }, t.prototype.uploadTint = function(e, n, i, o, a, s) {\n for (var u = 0; u < i; ++u) {\n var h = e[n + u], f = h._texture.baseTexture.alphaMode > 0, l = h.alpha, c = l < 1 && f ? os(h._tintRGB, l) : h._tintRGB + (l * 255 << 24);\n o[s] = c, o[s + a] = c, o[s + a * 2] = c, o[s + a * 3] = c, s += a * 4;\n }\n }, t.prototype.destroy = function() {\n r.prototype.destroy.call(this), this.shader && (this.shader.destroy(), this.shader = null), this.tempMatrix = null;\n }, t.extension = {\n name: \"particle\",\n type: gt.RendererPlugin\n }, t;\n }(ji)\n);\n/*!\n * @pixi/graphics - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/graphics is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\nvar Re;\n(function(r) {\n r.MITER = \"miter\", r.BEVEL = \"bevel\", r.ROUND = \"round\";\n})(Re || (Re = {}));\nvar Le;\n(function(r) {\n r.BUTT = \"butt\", r.ROUND = \"round\", r.SQUARE = \"square\";\n})(Le || (Le = {}));\nvar wn = {\n adaptive: !0,\n maxLength: 10,\n minSegments: 8,\n maxSegments: 2048,\n epsilon: 1e-4,\n _segmentsCount: function(r, t) {\n if (t === void 0 && (t = 20), !this.adaptive || !r || isNaN(r))\n return t;\n var e = Math.ceil(r / this.maxLength);\n return e < this.minSegments ? e = this.minSegments : e > this.maxSegments && (e = this.maxSegments), e;\n }\n}, Jl = (\n /** @class */\n function() {\n function r() {\n this.color = 16777215, this.alpha = 1, this.texture = J.WHITE, this.matrix = null, this.visible = !1, this.reset();\n }\n return r.prototype.clone = function() {\n var t = new r();\n return t.color = this.color, t.alpha = this.alpha, t.texture = this.texture, t.matrix = this.matrix, t.visible = this.visible, t;\n }, r.prototype.reset = function() {\n this.color = 16777215, this.alpha = 1, this.texture = J.WHITE, this.matrix = null, this.visible = !1;\n }, r.prototype.destroy = function() {\n this.texture = null, this.matrix = null;\n }, r;\n }()\n);\n/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\nvar Ea = function(r, t) {\n return Ea = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(e, n) {\n e.__proto__ = n;\n } || function(e, n) {\n for (var i in n)\n n.hasOwnProperty(i) && (e[i] = n[i]);\n }, Ea(r, t);\n};\nfunction us(r, t) {\n Ea(r, t);\n function e() {\n this.constructor = r;\n }\n r.prototype = t === null ? Object.create(t) : (e.prototype = t.prototype, new e());\n}\nfunction nh(r, t) {\n var e, n;\n t === void 0 && (t = !1);\n var i = r.length;\n if (!(i < 6)) {\n for (var o = 0, a = 0, s = r[i - 2], u = r[i - 1]; a < i; a += 2) {\n var h = r[a], f = r[a + 1];\n o += (h - s) * (f + u), s = h, u = f;\n }\n if (!t && o > 0 || t && o <= 0)\n for (var l = i / 2, a = l + l % 2; a < i; a += 2) {\n var c = i - a - 2, d = i - a - 1, p = a, v = a + 1;\n e = [r[p], r[c]], r[c] = e[0], r[p] = e[1], n = [r[v], r[d]], r[d] = n[0], r[v] = n[1];\n }\n }\n}\nvar Ql = {\n build: function(r) {\n r.points = r.shape.points.slice();\n },\n triangulate: function(r, t) {\n var e = r.points, n = r.holes, i = t.points, o = t.indices;\n if (e.length >= 6) {\n nh(e, !1);\n for (var a = [], s = 0; s < n.length; s++) {\n var u = n[s];\n nh(u.points, !0), a.push(e.length / 2), e = e.concat(u.points);\n }\n var h = il(e, a, 2);\n if (!h)\n return;\n for (var f = i.length / 2, s = 0; s < h.length; s += 3)\n o.push(h[s] + f), o.push(h[s + 1] + f), o.push(h[s + 2] + f);\n for (var s = 0; s < e.length; s++)\n i.push(e[s]);\n }\n }\n}, Ui = {\n build: function(r) {\n var t = r.points, e, n, i, o, a, s;\n if (r.type === Nt.CIRC) {\n var u = r.shape;\n e = u.x, n = u.y, a = s = u.radius, i = o = 0;\n } else if (r.type === Nt.ELIP) {\n var h = r.shape;\n e = h.x, n = h.y, a = h.width, s = h.height, i = o = 0;\n } else {\n var f = r.shape, l = f.width / 2, c = f.height / 2;\n e = f.x + l, n = f.y + c, a = s = Math.max(0, Math.min(f.radius, Math.min(l, c))), i = l - a, o = c - s;\n }\n if (!(a >= 0 && s >= 0 && i >= 0 && o >= 0)) {\n t.length = 0;\n return;\n }\n var d = Math.ceil(2.3 * Math.sqrt(a + s)), p = d * 8 + (i ? 4 : 0) + (o ? 4 : 0);\n if (t.length = p, p !== 0) {\n if (d === 0) {\n t.length = 8, t[0] = t[6] = e + i, t[1] = t[3] = n + o, t[2] = t[4] = e - i, t[5] = t[7] = n - o;\n return;\n }\n var v = 0, _ = d * 4 + (i ? 2 : 0) + 2, g = _, m = p;\n {\n var y = i + a, T = o, x = e + y, w = e - y, S = n + T;\n if (t[v++] = x, t[v++] = S, t[--_] = S, t[--_] = w, o) {\n var I = n - T;\n t[g++] = w, t[g++] = I, t[--m] = I, t[--m] = x;\n }\n }\n for (var O = 1; O < d; O++) {\n var b = Math.PI / 2 * (O / d), y = i + Math.cos(b) * a, T = o + Math.sin(b) * s, x = e + y, w = e - y, S = n + T, I = n - T;\n t[v++] = x, t[v++] = S, t[--_] = S, t[--_] = w, t[g++] = w, t[g++] = I, t[--m] = I, t[--m] = x;\n }\n {\n var y = i, T = o + s, x = e + y, w = e - y, S = n + T, I = n - T;\n t[v++] = x, t[v++] = S, t[--m] = I, t[--m] = x, i && (t[v++] = w, t[v++] = S, t[--m] = I, t[--m] = w);\n }\n }\n },\n triangulate: function(r, t) {\n var e = r.points, n = t.points, i = t.indices;\n if (e.length !== 0) {\n var o = n.length / 2, a = o, s, u;\n if (r.type !== Nt.RREC) {\n var h = r.shape;\n s = h.x, u = h.y;\n } else {\n var f = r.shape;\n s = f.x + f.width / 2, u = f.y + f.height / 2;\n }\n var l = r.matrix;\n n.push(r.matrix ? l.a * s + l.c * u + l.tx : s, r.matrix ? l.b * s + l.d * u + l.ty : u), o++, n.push(e[0], e[1]);\n for (var c = 2; c < e.length; c += 2)\n n.push(e[c], e[c + 1]), i.push(o++, a, o);\n i.push(a + 1, a, o);\n }\n }\n}, kb = {\n build: function(r) {\n var t = r.shape, e = t.x, n = t.y, i = t.width, o = t.height, a = r.points;\n a.length = 0, a.push(e, n, e + i, n, e + i, n + o, e, n + o);\n },\n triangulate: function(r, t) {\n var e = r.points, n = t.points, i = n.length / 2;\n n.push(e[0], e[1], e[2], e[3], e[6], e[7], e[4], e[5]), t.indices.push(i, i + 1, i + 2, i + 1, i + 2, i + 3);\n }\n};\nfunction Er(r, t, e) {\n var n = t - r;\n return r + n * e;\n}\nfunction ui(r, t, e, n, i, o, a) {\n a === void 0 && (a = []);\n for (var s = 20, u = a, h = 0, f = 0, l = 0, c = 0, d = 0, p = 0, v = 0, _ = 0; v <= s; ++v)\n _ = v / s, h = Er(r, e, _), f = Er(t, n, _), l = Er(e, i, _), c = Er(n, o, _), d = Er(h, l, _), p = Er(f, c, _), !(v === 0 && u[u.length - 2] === d && u[u.length - 1] === p) && u.push(d, p);\n return u;\n}\nvar Hb = {\n build: function(r) {\n if (Vr.nextRoundedRectBehavior) {\n Ui.build(r);\n return;\n }\n var t = r.shape, e = r.points, n = t.x, i = t.y, o = t.width, a = t.height, s = Math.max(0, Math.min(t.radius, Math.min(o, a) / 2));\n e.length = 0, s ? (ui(n, i + s, n, i, n + s, i, e), ui(n + o - s, i, n + o, i, n + o, i + s, e), ui(n + o, i + a - s, n + o, i + a, n + o - s, i + a, e), ui(n + s, i + a, n, i + a, n, i + a - s, e)) : e.push(n, i, n + o, i, n + o, i + a, n, i + a);\n },\n triangulate: function(r, t) {\n if (Vr.nextRoundedRectBehavior) {\n Ui.triangulate(r, t);\n return;\n }\n for (var e = r.points, n = t.points, i = t.indices, o = n.length / 2, a = il(e, null, 2), s = 0, u = a.length; s < u; s += 3)\n i.push(a[s] + o), i.push(a[s + 1] + o), i.push(a[s + 2] + o);\n for (var s = 0, u = e.length; s < u; s++)\n n.push(e[s], e[++s]);\n }\n};\nfunction ih(r, t, e, n, i, o, a, s) {\n var u = r - e * i, h = t - n * i, f = r + e * o, l = t + n * o, c, d;\n a ? (c = n, d = -e) : (c = -n, d = e);\n var p = u + c, v = h + d, _ = f + c, g = l + d;\n return s.push(p, v), s.push(_, g), 2;\n}\nfunction $e(r, t, e, n, i, o, a, s) {\n var u = e - r, h = n - t, f = Math.atan2(u, h), l = Math.atan2(i - r, o - t);\n s && f < l ? f += Math.PI * 2 : !s && f > l && (l += Math.PI * 2);\n var c = f, d = l - f, p = Math.abs(d), v = Math.sqrt(u * u + h * h), _ = (15 * p * Math.sqrt(v) / Math.PI >> 0) + 1, g = d / _;\n if (c += g, s) {\n a.push(r, t), a.push(e, n);\n for (var m = 1, y = c; m < _; m++, y += g)\n a.push(r, t), a.push(r + Math.sin(y) * v, t + Math.cos(y) * v);\n a.push(r, t), a.push(i, o);\n } else {\n a.push(e, n), a.push(r, t);\n for (var m = 1, y = c; m < _; m++, y += g)\n a.push(r + Math.sin(y) * v, t + Math.cos(y) * v), a.push(r, t);\n a.push(i, o), a.push(r, t);\n }\n return _ * 2;\n}\nfunction Xb(r, t) {\n var e = r.shape, n = r.points || e.points.slice(), i = t.closePointEps;\n if (n.length !== 0) {\n var o = r.lineStyle, a = new Tt(n[0], n[1]), s = new Tt(n[n.length - 2], n[n.length - 1]), u = e.type !== Nt.POLY || e.closeStroke, h = Math.abs(a.x - s.x) < i && Math.abs(a.y - s.y) < i;\n if (u) {\n n = n.slice(), h && (n.pop(), n.pop(), s.set(n[n.length - 2], n[n.length - 1]));\n var f = (a.x + s.x) * 0.5, l = (s.y + a.y) * 0.5;\n n.unshift(f, l), n.push(f, l);\n }\n var c = t.points, d = n.length / 2, p = n.length, v = c.length / 2, _ = o.width / 2, g = _ * _, m = o.miterLimit * o.miterLimit, y = n[0], T = n[1], x = n[2], w = n[3], S = 0, I = 0, O = -(T - w), b = y - x, P = 0, A = 0, R = Math.sqrt(O * O + b * b);\n O /= R, b /= R, O *= _, b *= _;\n var M = o.alignment, D = (1 - M) * 2, B = M * 2;\n u || (o.cap === Le.ROUND ? p += $e(y - O * (D - B) * 0.5, T - b * (D - B) * 0.5, y - O * D, T - b * D, y + O * B, T + b * B, c, !0) + 2 : o.cap === Le.SQUARE && (p += ih(y, T, O, b, D, B, !0, c))), c.push(y - O * D, T - b * D), c.push(y + O * B, T + b * B);\n for (var X = 1; X < d - 1; ++X) {\n y = n[(X - 1) * 2], T = n[(X - 1) * 2 + 1], x = n[X * 2], w = n[X * 2 + 1], S = n[(X + 1) * 2], I = n[(X + 1) * 2 + 1], O = -(T - w), b = y - x, R = Math.sqrt(O * O + b * b), O /= R, b /= R, O *= _, b *= _, P = -(w - I), A = x - S, R = Math.sqrt(P * P + A * A), P /= R, A /= R, P *= _, A *= _;\n var $ = x - y, Q = T - w, U = x - S, L = I - w, H = $ * U + Q * L, tt = Q * U - L * $, et = tt < 0;\n if (Math.abs(tt) < 1e-3 * Math.abs(H)) {\n c.push(x - O * D, w - b * D), c.push(x + O * B, w + b * B), H >= 0 && (o.join === Re.ROUND ? p += $e(x, w, x - O * D, w - b * D, x - P * D, w - A * D, c, !1) + 4 : p += 2, c.push(x - P * B, w - A * B), c.push(x + P * D, w + A * D));\n continue;\n }\n var pt = (-O + y) * (-b + w) - (-O + x) * (-b + T), Y = (-P + S) * (-A + w) - (-P + x) * (-A + I), st = ($ * Y - U * pt) / tt, _t = (L * pt - Q * Y) / tt, Et = (st - x) * (st - x) + (_t - w) * (_t - w), q = x + (st - x) * D, it = w + (_t - w) * D, at = x - (st - x) * B, ft = w - (_t - w) * B, nt = Math.min($ * $ + Q * Q, U * U + L * L), N = et ? D : B, C = nt + N * N * g, dt = Et <= C;\n dt ? o.join === Re.BEVEL || Et / g > m ? (et ? (c.push(q, it), c.push(x + O * B, w + b * B), c.push(q, it), c.push(x + P * B, w + A * B)) : (c.push(x - O * D, w - b * D), c.push(at, ft), c.push(x - P * D, w - A * D), c.push(at, ft)), p += 2) : o.join === Re.ROUND ? et ? (c.push(q, it), c.push(x + O * B, w + b * B), p += $e(x, w, x + O * B, w + b * B, x + P * B, w + A * B, c, !0) + 4, c.push(q, it), c.push(x + P * B, w + A * B)) : (c.push(x - O * D, w - b * D), c.push(at, ft), p += $e(x, w, x - O * D, w - b * D, x - P * D, w - A * D, c, !1) + 4, c.push(x - P * D, w - A * D), c.push(at, ft)) : (c.push(q, it), c.push(at, ft)) : (c.push(x - O * D, w - b * D), c.push(x + O * B, w + b * B), o.join === Re.ROUND ? et ? p += $e(x, w, x + O * B, w + b * B, x + P * B, w + A * B, c, !0) + 2 : p += $e(x, w, x - O * D, w - b * D, x - P * D, w - A * D, c, !1) + 2 : o.join === Re.MITER && Et / g <= m && (et ? (c.push(at, ft), c.push(at, ft)) : (c.push(q, it), c.push(q, it)), p += 2), c.push(x - P * D, w - A * D), c.push(x + P * B, w + A * B), p += 2);\n }\n y = n[(d - 2) * 2], T = n[(d - 2) * 2 + 1], x = n[(d - 1) * 2], w = n[(d - 1) * 2 + 1], O = -(T - w), b = y - x, R = Math.sqrt(O * O + b * b), O /= R, b /= R, O *= _, b *= _, c.push(x - O * D, w - b * D), c.push(x + O * B, w + b * B), u || (o.cap === Le.ROUND ? p += $e(x - O * (D - B) * 0.5, w - b * (D - B) * 0.5, x - O * D, w - b * D, x + O * B, w + b * B, c, !1) + 2 : o.cap === Le.SQUARE && (p += ih(x, w, O, b, D, B, !1, c)));\n for (var pe = t.indices, vr = wn.epsilon * wn.epsilon, X = v; X < p + v - 2; ++X)\n y = c[X * 2], T = c[X * 2 + 1], x = c[(X + 1) * 2], w = c[(X + 1) * 2 + 1], S = c[(X + 2) * 2], I = c[(X + 2) * 2 + 1], !(Math.abs(y * (w - I) + x * (I - T) + S * (T - w)) < vr) && pe.push(X, X + 1, X + 2);\n }\n}\nfunction jb(r, t) {\n var e = 0, n = r.shape, i = r.points || n.points, o = n.type !== Nt.POLY || n.closeStroke;\n if (i.length !== 0) {\n var a = t.points, s = t.indices, u = i.length / 2, h = a.length / 2, f = h;\n for (a.push(i[0], i[1]), e = 1; e < u; e++)\n a.push(i[e * 2], i[e * 2 + 1]), s.push(f, f + 1), f++;\n o && s.push(f, h);\n }\n}\nfunction oh(r, t) {\n r.lineStyle.native ? jb(r, t) : Xb(r, t);\n}\nvar ah = (\n /** @class */\n function() {\n function r() {\n }\n return r.curveTo = function(t, e, n, i, o, a) {\n var s = a[a.length - 2], u = a[a.length - 1], h = u - e, f = s - t, l = i - e, c = n - t, d = Math.abs(h * c - f * l);\n if (d < 1e-8 || o === 0)\n return (a[a.length - 2] !== t || a[a.length - 1] !== e) && a.push(t, e), null;\n var p = h * h + f * f, v = l * l + c * c, _ = h * l + f * c, g = o * Math.sqrt(p) / d, m = o * Math.sqrt(v) / d, y = g * _ / p, T = m * _ / v, x = g * c + m * f, w = g * l + m * h, S = f * (m + y), I = h * (m + y), O = c * (g + T), b = l * (g + T), P = Math.atan2(I - w, S - x), A = Math.atan2(b - w, O - x);\n return {\n cx: x + t,\n cy: w + e,\n radius: o,\n startAngle: P,\n endAngle: A,\n anticlockwise: f * l > c * h\n };\n }, r.arc = function(t, e, n, i, o, a, s, u, h) {\n for (var f = s - a, l = wn._segmentsCount(Math.abs(f) * o, Math.ceil(Math.abs(f) / Fi) * 40), c = f / (l * 2), d = c * 2, p = Math.cos(c), v = Math.sin(c), _ = l - 1, g = _ % 1 / _, m = 0; m <= _; ++m) {\n var y = m + g * m, T = c + a + d * y, x = Math.cos(T), w = -Math.sin(T);\n h.push((p * x + v * w) * o + n, (p * -w + v * x) * o + i);\n }\n }, r;\n }()\n), Yb = (\n /** @class */\n function() {\n function r() {\n }\n return r.curveLength = function(t, e, n, i, o, a, s, u) {\n for (var h = 10, f = 0, l = 0, c = 0, d = 0, p = 0, v = 0, _ = 0, g = 0, m = 0, y = 0, T = 0, x = t, w = e, S = 1; S <= h; ++S)\n l = S / h, c = l * l, d = c * l, p = 1 - l, v = p * p, _ = v * p, g = _ * t + 3 * v * l * n + 3 * p * c * o + d * s, m = _ * e + 3 * v * l * i + 3 * p * c * a + d * u, y = x - g, T = w - m, x = g, w = m, f += Math.sqrt(y * y + T * T);\n return f;\n }, r.curveTo = function(t, e, n, i, o, a, s) {\n var u = s[s.length - 2], h = s[s.length - 1];\n s.length -= 2;\n var f = wn._segmentsCount(r.curveLength(u, h, t, e, n, i, o, a)), l = 0, c = 0, d = 0, p = 0, v = 0;\n s.push(u, h);\n for (var _ = 1, g = 0; _ <= f; ++_)\n g = _ / f, l = 1 - g, c = l * l, d = c * l, p = g * g, v = p * g, s.push(d * u + 3 * c * g * t + 3 * l * p * n + v * o, d * h + 3 * c * g * e + 3 * l * p * i + v * a);\n }, r;\n }()\n), Vb = (\n /** @class */\n function() {\n function r() {\n }\n return r.curveLength = function(t, e, n, i, o, a) {\n var s = t - 2 * n + o, u = e - 2 * i + a, h = 2 * n - 2 * t, f = 2 * i - 2 * e, l = 4 * (s * s + u * u), c = 4 * (s * h + u * f), d = h * h + f * f, p = 2 * Math.sqrt(l + c + d), v = Math.sqrt(l), _ = 2 * l * v, g = 2 * Math.sqrt(d), m = c / v;\n return (_ * p + v * c * (p - g) + (4 * d * l - c * c) * Math.log((2 * v + m + p) / (m + g))) / (4 * _);\n }, r.curveTo = function(t, e, n, i, o) {\n for (var a = o[o.length - 2], s = o[o.length - 1], u = wn._segmentsCount(r.curveLength(a, s, t, e, n, i)), h = 0, f = 0, l = 1; l <= u; ++l) {\n var c = l / u;\n h = a + (t - a) * c, f = s + (e - s) * c, o.push(h + (t + (n - t) * c - h) * c, f + (e + (i - e) * c - f) * c);\n }\n }, r;\n }()\n), zb = (\n /** @class */\n function() {\n function r() {\n this.reset();\n }\n return r.prototype.begin = function(t, e, n) {\n this.reset(), this.style = t, this.start = e, this.attribStart = n;\n }, r.prototype.end = function(t, e) {\n this.attribSize = e - this.attribStart, this.size = t - this.start;\n }, r.prototype.reset = function() {\n this.style = null, this.size = 0, this.start = 0, this.attribStart = 0, this.attribSize = 0;\n }, r;\n }()\n), Ke, Mo = (Ke = {}, Ke[Nt.POLY] = Ql, Ke[Nt.CIRC] = Ui, Ke[Nt.ELIP] = Ui, Ke[Nt.RECT] = kb, Ke[Nt.RREC] = Hb, Ke), sh = [], hi = [], uh = (\n /** @class */\n function() {\n function r(t, e, n, i) {\n e === void 0 && (e = null), n === void 0 && (n = null), i === void 0 && (i = null), this.points = [], this.holes = [], this.shape = t, this.lineStyle = n, this.fillStyle = e, this.matrix = i, this.type = t.type;\n }\n return r.prototype.clone = function() {\n return new r(this.shape, this.fillStyle, this.lineStyle, this.matrix);\n }, r.prototype.destroy = function() {\n this.shape = null, this.holes.length = 0, this.holes = null, this.points.length = 0, this.points = null, this.lineStyle = null, this.fillStyle = null;\n }, r;\n }()\n), Tr = new Tt(), Wb = (\n /** @class */\n function(r) {\n us(t, r);\n function t() {\n var e = r.call(this) || this;\n return e.closePointEps = 1e-4, e.boundsPadding = 0, e.uvsFloat32 = null, e.indicesUint16 = null, e.batchable = !1, e.points = [], e.colors = [], e.uvs = [], e.indices = [], e.textureIds = [], e.graphicsData = [], e.drawCalls = [], e.batchDirty = -1, e.batches = [], e.dirty = 0, e.cacheDirty = -1, e.clearDirty = 0, e.shapeIndex = 0, e._bounds = new Bi(), e.boundsDirty = -1, e;\n }\n return Object.defineProperty(t.prototype, \"bounds\", {\n /**\n * Get the current bounds of the graphic geometry.\n * @readonly\n */\n get: function() {\n return this.updateBatches(), this.boundsDirty !== this.dirty && (this.boundsDirty = this.dirty, this.calculateBounds()), this._bounds;\n },\n enumerable: !1,\n configurable: !0\n }), t.prototype.invalidate = function() {\n this.boundsDirty = -1, this.dirty++, this.batchDirty++, this.shapeIndex = 0, this.points.length = 0, this.colors.length = 0, this.uvs.length = 0, this.indices.length = 0, this.textureIds.length = 0;\n for (var e = 0; e < this.drawCalls.length; e++)\n this.drawCalls[e].texArray.clear(), hi.push(this.drawCalls[e]);\n this.drawCalls.length = 0;\n for (var e = 0; e < this.batches.length; e++) {\n var n = this.batches[e];\n n.reset(), sh.push(n);\n }\n this.batches.length = 0;\n }, t.prototype.clear = function() {\n return this.graphicsData.length > 0 && (this.invalidate(), this.clearDirty++, this.graphicsData.length = 0), this;\n }, t.prototype.drawShape = function(e, n, i, o) {\n n === void 0 && (n = null), i === void 0 && (i = null), o === void 0 && (o = null);\n var a = new uh(e, n, i, o);\n return this.graphicsData.push(a), this.dirty++, this;\n }, t.prototype.drawHole = function(e, n) {\n if (n === void 0 && (n = null), !this.graphicsData.length)\n return null;\n var i = new uh(e, null, null, n), o = this.graphicsData[this.graphicsData.length - 1];\n return i.lineStyle = o.lineStyle, o.holes.push(i), this.dirty++, this;\n }, t.prototype.destroy = function() {\n r.prototype.destroy.call(this);\n for (var e = 0; e < this.graphicsData.length; ++e)\n this.graphicsData[e].destroy();\n this.points.length = 0, this.points = null, this.colors.length = 0, this.colors = null, this.uvs.length = 0, this.uvs = null, this.indices.length = 0, this.indices = null, this.indexBuffer.destroy(), this.indexBuffer = null, this.graphicsData.length = 0, this.graphicsData = null, this.drawCalls.length = 0, this.drawCalls = null, this.batches.length = 0, this.batches = null, this._bounds = null;\n }, t.prototype.containsPoint = function(e) {\n for (var n = this.graphicsData, i = 0; i < n.length; ++i) {\n var o = n[i];\n if (o.fillStyle.visible && o.shape && (o.matrix ? o.matrix.applyInverse(e, Tr) : Tr.copyFrom(e), o.shape.contains(Tr.x, Tr.y))) {\n var a = !1;\n if (o.holes)\n for (var s = 0; s < o.holes.length; s++) {\n var u = o.holes[s];\n if (u.shape.contains(Tr.x, Tr.y)) {\n a = !0;\n break;\n }\n }\n if (!a)\n return !0;\n }\n }\n return !1;\n }, t.prototype.updateBatches = function() {\n if (!this.graphicsData.length) {\n this.batchable = !0;\n return;\n }\n if (this.validateBatching()) {\n this.cacheDirty = this.dirty;\n var e = this.uvs, n = this.graphicsData, i = null, o = null;\n this.batches.length > 0 && (i = this.batches[this.batches.length - 1], o = i.style);\n for (var a = this.shapeIndex; a < n.length; a++) {\n this.shapeIndex++;\n var s = n[a], u = s.fillStyle, h = s.lineStyle, f = Mo[s.type];\n f.build(s), s.matrix && this.transformPoints(s.points, s.matrix), (u.visible || h.visible) && this.processHoles(s.holes);\n for (var l = 0; l < 2; l++) {\n var c = l === 0 ? u : h;\n if (c.visible) {\n var d = c.texture.baseTexture, p = this.indices.length, v = this.points.length / 2;\n d.wrapMode = ye.REPEAT, l === 0 ? this.processFill(s) : this.processLine(s);\n var _ = this.points.length / 2 - v;\n _ !== 0 && (i && !this._compareStyles(o, c) && (i.end(p, v), i = null), i || (i = sh.pop() || new zb(), i.begin(c, p, v), this.batches.push(i), o = c), this.addUvs(this.points, e, c.texture, v, _, c.matrix));\n }\n }\n }\n var g = this.indices.length, m = this.points.length / 2;\n if (i && i.end(g, m), this.batches.length === 0) {\n this.batchable = !0;\n return;\n }\n var y = m > 65535;\n this.indicesUint16 && this.indices.length === this.indicesUint16.length && y === this.indicesUint16.BYTES_PER_ELEMENT > 2 ? this.indicesUint16.set(this.indices) : this.indicesUint16 = y ? new Uint32Array(this.indices) : new Uint16Array(this.indices), this.batchable = this.isBatchable(), this.batchable ? this.packBatches() : this.buildDrawCalls();\n }\n }, t.prototype._compareStyles = function(e, n) {\n return !(!e || !n || e.texture.baseTexture !== n.texture.baseTexture || e.color + e.alpha !== n.color + n.alpha || !!e.native != !!n.native);\n }, t.prototype.validateBatching = function() {\n if (this.dirty === this.cacheDirty || !this.graphicsData.length)\n return !1;\n for (var e = 0, n = this.graphicsData.length; e < n; e++) {\n var i = this.graphicsData[e], o = i.fillStyle, a = i.lineStyle;\n if (o && !o.texture.baseTexture.valid || a && !a.texture.baseTexture.valid)\n return !1;\n }\n return !0;\n }, t.prototype.packBatches = function() {\n this.batchDirty++, this.uvsFloat32 = new Float32Array(this.uvs);\n for (var e = this.batches, n = 0, i = e.length; n < i; n++)\n for (var o = e[n], a = 0; a < o.size; a++) {\n var s = o.start + a;\n this.indicesUint16[s] = this.indicesUint16[s] - o.attribStart;\n }\n }, t.prototype.isBatchable = function() {\n if (this.points.length > 65535 * 2)\n return !1;\n for (var e = this.batches, n = 0; n < e.length; n++)\n if (e[n].style.native)\n return !1;\n return this.points.length < t.BATCHABLE_SIZE * 2;\n }, t.prototype.buildDrawCalls = function() {\n for (var e = ++ut._globalBatch, n = 0; n < this.drawCalls.length; n++)\n this.drawCalls[n].texArray.clear(), hi.push(this.drawCalls[n]);\n this.drawCalls.length = 0;\n var i = this.colors, o = this.textureIds, a = hi.pop();\n a || (a = new da(), a.texArray = new pa()), a.texArray.count = 0, a.start = 0, a.size = 0, a.type = se.TRIANGLES;\n var s = 0, u = null, h = 0, f = !1, l = se.TRIANGLES, c = 0;\n this.drawCalls.push(a);\n for (var n = 0; n < this.batches.length; n++) {\n var d = this.batches[n], p = 8, v = d.style, _ = v.texture.baseTexture;\n f !== !!v.native && (f = !!v.native, l = f ? se.LINES : se.TRIANGLES, u = null, s = p, e++), u !== _ && (u = _, _._batchEnabled !== e && (s === p && (e++, s = 0, a.size > 0 && (a = hi.pop(), a || (a = new da(), a.texArray = new pa()), this.drawCalls.push(a)), a.start = c, a.size = 0, a.texArray.count = 0, a.type = l), _.touched = 1, _._batchEnabled = e, _._batchLocation = s, _.wrapMode = ye.REPEAT, a.texArray.elements[a.texArray.count++] = _, s++)), a.size += d.size, c += d.size, h = _._batchLocation, this.addColors(i, v.color, v.alpha, d.attribSize, d.attribStart), this.addTextureIds(o, h, d.attribSize, d.attribStart);\n }\n ut._globalBatch = e, this.packAttributes();\n }, t.prototype.packAttributes = function() {\n for (var e = this.points, n = this.uvs, i = this.colors, o = this.textureIds, a = new ArrayBuffer(e.length * 3 * 4), s = new Float32Array(a), u = new Uint32Array(a), h = 0, f = 0; f < e.length / 2; f++)\n s[h++] = e[f * 2], s[h++] = e[f * 2 + 1], s[h++] = n[f * 2], s[h++] = n[f * 2 + 1], u[h++] = i[f], s[h++] = o[f];\n this._buffer.update(a), this._indexBuffer.update(this.indicesUint16);\n }, t.prototype.processFill = function(e) {\n if (e.holes.length)\n Ql.triangulate(e, this);\n else {\n var n = Mo[e.type];\n n.triangulate(e, this);\n }\n }, t.prototype.processLine = function(e) {\n oh(e, this);\n for (var n = 0; n < e.holes.length; n++)\n oh(e.holes[n], this);\n }, t.prototype.processHoles = function(e) {\n for (var n = 0; n < e.length; n++) {\n var i = e[n], o = Mo[i.type];\n o.build(i), i.matrix && this.transformPoints(i.points, i.matrix);\n }\n }, t.prototype.calculateBounds = function() {\n var e = this._bounds;\n e.clear(), e.addVertexData(this.points, 0, this.points.length), e.pad(this.boundsPadding, this.boundsPadding);\n }, t.prototype.transformPoints = function(e, n) {\n for (var i = 0; i < e.length / 2; i++) {\n var o = e[i * 2], a = e[i * 2 + 1];\n e[i * 2] = n.a * o + n.c * a + n.tx, e[i * 2 + 1] = n.b * o + n.d * a + n.ty;\n }\n }, t.prototype.addColors = function(e, n, i, o, a) {\n a === void 0 && (a = 0);\n var s = (n >> 16) + (n & 65280) + ((n & 255) << 16), u = os(s, i);\n e.length = Math.max(e.length, a + o);\n for (var h = 0; h < o; h++)\n e[a + h] = u;\n }, t.prototype.addTextureIds = function(e, n, i, o) {\n o === void 0 && (o = 0), e.length = Math.max(e.length, o + i);\n for (var a = 0; a < i; a++)\n e[o + a] = n;\n }, t.prototype.addUvs = function(e, n, i, o, a, s) {\n s === void 0 && (s = null);\n for (var u = 0, h = n.length, f = i.frame; u < a; ) {\n var l = e[(o + u) * 2], c = e[(o + u) * 2 + 1];\n if (s) {\n var d = s.a * l + s.c * c + s.tx;\n c = s.b * l + s.d * c + s.ty, l = d;\n }\n u++, n.push(l / f.width, c / f.height);\n }\n var p = i.baseTexture;\n (f.width < p.width || f.height < p.height) && this.adjustUvs(n, i, h, a);\n }, t.prototype.adjustUvs = function(e, n, i, o) {\n for (var a = n.baseTexture, s = 1e-6, u = i + o * 2, h = n.frame, f = h.width / a.width, l = h.height / a.height, c = h.x / h.width, d = h.y / h.height, p = Math.floor(e[i] + s), v = Math.floor(e[i + 1] + s), _ = i + 2; _ < u; _ += 2)\n p = Math.min(p, Math.floor(e[_] + s)), v = Math.min(v, Math.floor(e[_ + 1] + s));\n c -= p, d -= v;\n for (var _ = i; _ < u; _ += 2)\n e[_] = (e[_] + c) * f, e[_ + 1] = (e[_ + 1] + d) * l;\n }, t.BATCHABLE_SIZE = 100, t;\n }(zl)\n), qb = (\n /** @class */\n function(r) {\n us(t, r);\n function t() {\n var e = r !== null && r.apply(this, arguments) || this;\n return e.width = 0, e.alignment = 0.5, e.native = !1, e.cap = Le.BUTT, e.join = Re.MITER, e.miterLimit = 10, e;\n }\n return t.prototype.clone = function() {\n var e = new t();\n return e.color = this.color, e.alpha = this.alpha, e.texture = this.texture, e.matrix = this.matrix, e.visible = this.visible, e.width = this.width, e.alignment = this.alignment, e.native = this.native, e.cap = this.cap, e.join = this.join, e.miterLimit = this.miterLimit, e;\n }, t.prototype.reset = function() {\n r.prototype.reset.call(this), this.color = 0, this.alignment = 0.5, this.width = 0, this.native = !1;\n }, t;\n }(Jl)\n), $b = new Float32Array(3), Do = {}, Vr = (\n /** @class */\n function(r) {\n us(t, r);\n function t(e) {\n e === void 0 && (e = null);\n var n = r.call(this) || this;\n return n.shader = null, n.pluginName = \"batch\", n.currentPath = null, n.batches = [], n.batchTint = -1, n.batchDirty = -1, n.vertexData = null, n._fillStyle = new Jl(), n._lineStyle = new qb(), n._matrix = null, n._holeMode = !1, n.state = dr.for2d(), n._geometry = e || new Wb(), n._geometry.refCount++, n._transformID = -1, n.tint = 16777215, n.blendMode = V.NORMAL, n;\n }\n return Object.defineProperty(t.prototype, \"geometry\", {\n /**\n * Includes vertex positions, face indices, normals, colors, UVs, and\n * custom attributes within buffers, reducing the cost of passing all\n * this data to the GPU. Can be shared between multiple Mesh or Graphics objects.\n * @readonly\n */\n get: function() {\n return this._geometry;\n },\n enumerable: !1,\n configurable: !0\n }), t.prototype.clone = function() {\n return this.finishPoly(), new t(this._geometry);\n }, Object.defineProperty(t.prototype, \"blendMode\", {\n get: function() {\n return this.state.blendMode;\n },\n /**\n * The blend mode to be applied to the graphic shape. Apply a value of\n * `PIXI.BLEND_MODES.NORMAL` to reset the blend mode. Note that, since each\n * primitive in the GraphicsGeometry list is rendered sequentially, modes\n * such as `PIXI.BLEND_MODES.ADD` and `PIXI.BLEND_MODES.MULTIPLY` will\n * be applied per-primitive.\n * @default PIXI.BLEND_MODES.NORMAL\n */\n set: function(e) {\n this.state.blendMode = e;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"tint\", {\n /**\n * The tint applied to each graphic shape. This is a hex value. A value of\n * 0xFFFFFF will remove any tint effect.\n * @default 0xFFFFFF\n */\n get: function() {\n return this._tint;\n },\n set: function(e) {\n this._tint = e;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"fill\", {\n /**\n * The current fill style.\n * @readonly\n */\n get: function() {\n return this._fillStyle;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"line\", {\n /**\n * The current line style.\n * @readonly\n */\n get: function() {\n return this._lineStyle;\n },\n enumerable: !1,\n configurable: !0\n }), t.prototype.lineStyle = function(e, n, i, o, a) {\n return e === void 0 && (e = null), n === void 0 && (n = 0), i === void 0 && (i = 1), o === void 0 && (o = 0.5), a === void 0 && (a = !1), typeof e == \"number\" && (e = { width: e, color: n, alpha: i, alignment: o, native: a }), this.lineTextureStyle(e);\n }, t.prototype.lineTextureStyle = function(e) {\n e = Object.assign({\n width: 0,\n texture: J.WHITE,\n color: e && e.texture ? 16777215 : 0,\n alpha: 1,\n matrix: null,\n alignment: 0.5,\n native: !1,\n cap: Le.BUTT,\n join: Re.MITER,\n miterLimit: 10\n }, e), this.currentPath && this.startPoly();\n var n = e.width > 0 && e.alpha > 0;\n return n ? (e.matrix && (e.matrix = e.matrix.clone(), e.matrix.invert()), Object.assign(this._lineStyle, { visible: n }, e)) : this._lineStyle.reset(), this;\n }, t.prototype.startPoly = function() {\n if (this.currentPath) {\n var e = this.currentPath.points, n = this.currentPath.points.length;\n n > 2 && (this.drawShape(this.currentPath), this.currentPath = new gi(), this.currentPath.closeStroke = !1, this.currentPath.points.push(e[n - 2], e[n - 1]));\n } else\n this.currentPath = new gi(), this.currentPath.closeStroke = !1;\n }, t.prototype.finishPoly = function() {\n this.currentPath && (this.currentPath.points.length > 2 ? (this.drawShape(this.currentPath), this.currentPath = null) : this.currentPath.points.length = 0);\n }, t.prototype.moveTo = function(e, n) {\n return this.startPoly(), this.currentPath.points[0] = e, this.currentPath.points[1] = n, this;\n }, t.prototype.lineTo = function(e, n) {\n this.currentPath || this.moveTo(0, 0);\n var i = this.currentPath.points, o = i[i.length - 2], a = i[i.length - 1];\n return (o !== e || a !== n) && i.push(e, n), this;\n }, t.prototype._initCurve = function(e, n) {\n e === void 0 && (e = 0), n === void 0 && (n = 0), this.currentPath ? this.currentPath.points.length === 0 && (this.currentPath.points = [e, n]) : this.moveTo(e, n);\n }, t.prototype.quadraticCurveTo = function(e, n, i, o) {\n this._initCurve();\n var a = this.currentPath.points;\n return a.length === 0 && this.moveTo(0, 0), Vb.curveTo(e, n, i, o, a), this;\n }, t.prototype.bezierCurveTo = function(e, n, i, o, a, s) {\n return this._initCurve(), Yb.curveTo(e, n, i, o, a, s, this.currentPath.points), this;\n }, t.prototype.arcTo = function(e, n, i, o, a) {\n this._initCurve(e, n);\n var s = this.currentPath.points, u = ah.curveTo(e, n, i, o, a, s);\n if (u) {\n var h = u.cx, f = u.cy, l = u.radius, c = u.startAngle, d = u.endAngle, p = u.anticlockwise;\n this.arc(h, f, l, c, d, p);\n }\n return this;\n }, t.prototype.arc = function(e, n, i, o, a, s) {\n if (s === void 0 && (s = !1), o === a)\n return this;\n !s && a <= o ? a += Fi : s && o <= a && (o += Fi);\n var u = a - o;\n if (u === 0)\n return this;\n var h = e + Math.cos(o) * i, f = n + Math.sin(o) * i, l = this._geometry.closePointEps, c = this.currentPath ? this.currentPath.points : null;\n if (c) {\n var d = Math.abs(c[c.length - 2] - h), p = Math.abs(c[c.length - 1] - f);\n d < l && p < l || c.push(h, f);\n } else\n this.moveTo(h, f), c = this.currentPath.points;\n return ah.arc(h, f, e, n, i, o, a, s, c), this;\n }, t.prototype.beginFill = function(e, n) {\n return e === void 0 && (e = 0), n === void 0 && (n = 1), this.beginTextureFill({ texture: J.WHITE, color: e, alpha: n });\n }, t.prototype.beginTextureFill = function(e) {\n e = Object.assign({\n texture: J.WHITE,\n color: 16777215,\n alpha: 1,\n matrix: null\n }, e), this.currentPath && this.startPoly();\n var n = e.alpha > 0;\n return n ? (e.matrix && (e.matrix = e.matrix.clone(), e.matrix.invert()), Object.assign(this._fillStyle, { visible: n }, e)) : this._fillStyle.reset(), this;\n }, t.prototype.endFill = function() {\n return this.finishPoly(), this._fillStyle.reset(), this;\n }, t.prototype.drawRect = function(e, n, i, o) {\n return this.drawShape(new ht(e, n, i, o));\n }, t.prototype.drawRoundedRect = function(e, n, i, o, a) {\n return this.drawShape(new ey(e, n, i, o, a));\n }, t.prototype.drawCircle = function(e, n, i) {\n return this.drawShape(new Qg(e, n, i));\n }, t.prototype.drawEllipse = function(e, n, i, o) {\n return this.drawShape(new ty(e, n, i, o));\n }, t.prototype.drawPolygon = function() {\n for (var e = arguments, n = [], i = 0; i < arguments.length; i++)\n n[i] = e[i];\n var o, a = !0, s = n[0];\n s.points ? (a = s.closeStroke, o = s.points) : Array.isArray(n[0]) ? o = n[0] : o = n;\n var u = new gi(o);\n return u.closeStroke = a, this.drawShape(u), this;\n }, t.prototype.drawShape = function(e) {\n return this._holeMode ? this._geometry.drawHole(e, this._matrix) : this._geometry.drawShape(e, this._fillStyle.clone(), this._lineStyle.clone(), this._matrix), this;\n }, t.prototype.clear = function() {\n return this._geometry.clear(), this._lineStyle.reset(), this._fillStyle.reset(), this._boundsID++, this._matrix = null, this._holeMode = !1, this.currentPath = null, this;\n }, t.prototype.isFastRect = function() {\n var e = this._geometry.graphicsData;\n return e.length === 1 && e[0].shape.type === Nt.RECT && !e[0].matrix && !e[0].holes.length && !(e[0].lineStyle.visible && e[0].lineStyle.width);\n }, t.prototype._render = function(e) {\n this.finishPoly();\n var n = this._geometry;\n n.updateBatches(), n.batchable ? (this.batchDirty !== n.batchDirty && this._populateBatches(), this._renderBatched(e)) : (e.batch.flush(), this._renderDirect(e));\n }, t.prototype._populateBatches = function() {\n var e = this._geometry, n = this.blendMode, i = e.batches.length;\n this.batchTint = -1, this._transformID = -1, this.batchDirty = e.batchDirty, this.batches.length = i, this.vertexData = new Float32Array(e.points);\n for (var o = 0; o < i; o++) {\n var a = e.batches[o], s = a.style.color, u = new Float32Array(this.vertexData.buffer, a.attribStart * 4 * 2, a.attribSize * 2), h = new Float32Array(e.uvsFloat32.buffer, a.attribStart * 4 * 2, a.attribSize * 2), f = new Uint16Array(e.indicesUint16.buffer, a.start * 2, a.size), l = {\n vertexData: u,\n blendMode: n,\n indices: f,\n uvs: h,\n _batchRGB: Yr(s),\n _tintRGB: s,\n _texture: a.style.texture,\n alpha: a.style.alpha,\n worldAlpha: 1\n };\n this.batches[o] = l;\n }\n }, t.prototype._renderBatched = function(e) {\n if (this.batches.length) {\n e.batch.setObjectRenderer(e.plugins[this.pluginName]), this.calculateVertices(), this.calculateTints();\n for (var n = 0, i = this.batches.length; n < i; n++) {\n var o = this.batches[n];\n o.worldAlpha = this.worldAlpha * o.alpha, e.plugins[this.pluginName].render(o);\n }\n }\n }, t.prototype._renderDirect = function(e) {\n var n = this._resolveDirectShader(e), i = this._geometry, o = this.tint, a = this.worldAlpha, s = n.uniforms, u = i.drawCalls;\n s.translationMatrix = this.transform.worldTransform, s.tint[0] = (o >> 16 & 255) / 255 * a, s.tint[1] = (o >> 8 & 255) / 255 * a, s.tint[2] = (o & 255) / 255 * a, s.tint[3] = a, e.shader.bind(n), e.geometry.bind(i, n), e.state.set(this.state);\n for (var h = 0, f = u.length; h < f; h++)\n this._renderDrawCallDirect(e, i.drawCalls[h]);\n }, t.prototype._renderDrawCallDirect = function(e, n) {\n for (var i = n.texArray, o = n.type, a = n.size, s = n.start, u = i.count, h = 0; h < u; h++)\n e.texture.bind(i.elements[h], h);\n e.geometry.draw(o, a, s);\n }, t.prototype._resolveDirectShader = function(e) {\n var n = this.shader, i = this.pluginName;\n if (!n) {\n if (!Do[i]) {\n for (var o = e.plugins[i].MAX_TEXTURES, a = new Int32Array(o), s = 0; s < o; s++)\n a[s] = s;\n var u = {\n tint: new Float32Array([1, 1, 1, 1]),\n translationMatrix: new Dt(),\n default: ur.from({ uSamplers: a }, !0)\n }, h = e.plugins[i]._shader.program;\n Do[i] = new Ue(h, u);\n }\n n = Do[i];\n }\n return n;\n }, t.prototype._calculateBounds = function() {\n this.finishPoly();\n var e = this._geometry;\n if (e.graphicsData.length) {\n var n = e.bounds, i = n.minX, o = n.minY, a = n.maxX, s = n.maxY;\n this._bounds.addFrame(this.transform, i, o, a, s);\n }\n }, t.prototype.containsPoint = function(e) {\n return this.worldTransform.applyInverse(e, t._TEMP_POINT), this._geometry.containsPoint(t._TEMP_POINT);\n }, t.prototype.calculateTints = function() {\n if (this.batchTint !== this.tint) {\n this.batchTint = this.tint;\n for (var e = Yr(this.tint, $b), n = 0; n < this.batches.length; n++) {\n var i = this.batches[n], o = i._batchRGB, a = e[0] * o[0] * 255, s = e[1] * o[1] * 255, u = e[2] * o[2] * 255, h = (a << 16) + (s << 8) + (u | 0);\n i._tintRGB = (h >> 16) + (h & 65280) + ((h & 255) << 16);\n }\n }\n }, t.prototype.calculateVertices = function() {\n var e = this.transform._worldID;\n if (this._transformID !== e) {\n this._transformID = e;\n for (var n = this.transform.worldTransform, i = n.a, o = n.b, a = n.c, s = n.d, u = n.tx, h = n.ty, f = this._geometry.points, l = this.vertexData, c = 0, d = 0; d < f.length; d += 2) {\n var p = f[d], v = f[d + 1];\n l[c++] = i * p + a * v + u, l[c++] = s * v + o * p + h;\n }\n }\n }, t.prototype.closePath = function() {\n var e = this.currentPath;\n return e && (e.closeStroke = !0, this.finishPoly()), this;\n }, t.prototype.setMatrix = function(e) {\n return this._matrix = e, this;\n }, t.prototype.beginHole = function() {\n return this.finishPoly(), this._holeMode = !0, this;\n }, t.prototype.endHole = function() {\n return this.finishPoly(), this._holeMode = !1, this;\n }, t.prototype.destroy = function(e) {\n this._geometry.refCount--, this._geometry.refCount === 0 && this._geometry.dispose(), this._matrix = null, this.currentPath = null, this._lineStyle.destroy(), this._lineStyle = null, this._fillStyle.destroy(), this._fillStyle = null, this._geometry = null, this.shader = null, this.vertexData = null, this.batches.length = 0, this.batches = null, r.prototype.destroy.call(this, e);\n }, t.nextRoundedRectBehavior = !1, t._TEMP_POINT = new Tt(), t;\n }(xe)\n);\n/*!\n * @pixi/sprite - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/sprite is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\n/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\nvar Ta = function(r, t) {\n return Ta = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(e, n) {\n e.__proto__ = n;\n } || function(e, n) {\n for (var i in n)\n n.hasOwnProperty(i) && (e[i] = n[i]);\n }, Ta(r, t);\n};\nfunction Kb(r, t) {\n Ta(r, t);\n function e() {\n this.constructor = r;\n }\n r.prototype = t === null ? Object.create(t) : (e.prototype = t.prototype, new e());\n}\nvar on = new Tt(), Zb = new Uint16Array([0, 1, 2, 0, 2, 3]), Fn = (\n /** @class */\n function(r) {\n Kb(t, r);\n function t(e) {\n var n = r.call(this) || this;\n return n._anchor = new Mr(n._onAnchorUpdate, n, e ? e.defaultAnchor.x : 0, e ? e.defaultAnchor.y : 0), n._texture = null, n._width = 0, n._height = 0, n._tint = null, n._tintRGB = null, n.tint = 16777215, n.blendMode = V.NORMAL, n._cachedTint = 16777215, n.uvs = null, n.texture = e || J.EMPTY, n.vertexData = new Float32Array(8), n.vertexTrimmedData = null, n._transformID = -1, n._textureID = -1, n._transformTrimmedID = -1, n._textureTrimmedID = -1, n.indices = Zb, n.pluginName = \"batch\", n.isSprite = !0, n._roundPixels = k.ROUND_PIXELS, n;\n }\n return t.prototype._onTextureUpdate = function() {\n this._textureID = -1, this._textureTrimmedID = -1, this._cachedTint = 16777215, this._width && (this.scale.x = Cr(this.scale.x) * this._width / this._texture.orig.width), this._height && (this.scale.y = Cr(this.scale.y) * this._height / this._texture.orig.height);\n }, t.prototype._onAnchorUpdate = function() {\n this._transformID = -1, this._transformTrimmedID = -1;\n }, t.prototype.calculateVertices = function() {\n var e = this._texture;\n if (!(this._transformID === this.transform._worldID && this._textureID === e._updateID)) {\n this._textureID !== e._updateID && (this.uvs = this._texture._uvs.uvsFloat32), this._transformID = this.transform._worldID, this._textureID = e._updateID;\n var n = this.transform.worldTransform, i = n.a, o = n.b, a = n.c, s = n.d, u = n.tx, h = n.ty, f = this.vertexData, l = e.trim, c = e.orig, d = this._anchor, p = 0, v = 0, _ = 0, g = 0;\n if (l ? (v = l.x - d._x * c.width, p = v + l.width, g = l.y - d._y * c.height, _ = g + l.height) : (v = -d._x * c.width, p = v + c.width, g = -d._y * c.height, _ = g + c.height), f[0] = i * v + a * g + u, f[1] = s * g + o * v + h, f[2] = i * p + a * g + u, f[3] = s * g + o * p + h, f[4] = i * p + a * _ + u, f[5] = s * _ + o * p + h, f[6] = i * v + a * _ + u, f[7] = s * _ + o * v + h, this._roundPixels)\n for (var m = k.RESOLUTION, y = 0; y < f.length; ++y)\n f[y] = Math.round((f[y] * m | 0) / m);\n }\n }, t.prototype.calculateTrimmedVertices = function() {\n if (!this.vertexTrimmedData)\n this.vertexTrimmedData = new Float32Array(8);\n else if (this._transformTrimmedID === this.transform._worldID && this._textureTrimmedID === this._texture._updateID)\n return;\n this._transformTrimmedID = this.transform._worldID, this._textureTrimmedID = this._texture._updateID;\n var e = this._texture, n = this.vertexTrimmedData, i = e.orig, o = this._anchor, a = this.transform.worldTransform, s = a.a, u = a.b, h = a.c, f = a.d, l = a.tx, c = a.ty, d = -o._x * i.width, p = d + i.width, v = -o._y * i.height, _ = v + i.height;\n n[0] = s * d + h * v + l, n[1] = f * v + u * d + c, n[2] = s * p + h * v + l, n[3] = f * v + u * p + c, n[4] = s * p + h * _ + l, n[5] = f * _ + u * p + c, n[6] = s * d + h * _ + l, n[7] = f * _ + u * d + c;\n }, t.prototype._render = function(e) {\n this.calculateVertices(), e.batch.setObjectRenderer(e.plugins[this.pluginName]), e.plugins[this.pluginName].render(this);\n }, t.prototype._calculateBounds = function() {\n var e = this._texture.trim, n = this._texture.orig;\n !e || e.width === n.width && e.height === n.height ? (this.calculateVertices(), this._bounds.addQuad(this.vertexData)) : (this.calculateTrimmedVertices(), this._bounds.addQuad(this.vertexTrimmedData));\n }, t.prototype.getLocalBounds = function(e) {\n return this.children.length === 0 ? (this._localBounds || (this._localBounds = new Bi()), this._localBounds.minX = this._texture.orig.width * -this._anchor._x, this._localBounds.minY = this._texture.orig.height * -this._anchor._y, this._localBounds.maxX = this._texture.orig.width * (1 - this._anchor._x), this._localBounds.maxY = this._texture.orig.height * (1 - this._anchor._y), e || (this._localBoundsRect || (this._localBoundsRect = new ht()), e = this._localBoundsRect), this._localBounds.getRectangle(e)) : r.prototype.getLocalBounds.call(this, e);\n }, t.prototype.containsPoint = function(e) {\n this.worldTransform.applyInverse(e, on);\n var n = this._texture.orig.width, i = this._texture.orig.height, o = -n * this.anchor.x, a = 0;\n return on.x >= o && on.x < o + n && (a = -i * this.anchor.y, on.y >= a && on.y < a + i);\n }, t.prototype.destroy = function(e) {\n r.prototype.destroy.call(this, e), this._texture.off(\"update\", this._onTextureUpdate, this), this._anchor = null;\n var n = typeof e == \"boolean\" ? e : e && e.texture;\n if (n) {\n var i = typeof e == \"boolean\" ? e : e && e.baseTexture;\n this._texture.destroy(!!i);\n }\n this._texture = null;\n }, t.from = function(e, n) {\n var i = e instanceof J ? e : J.from(e, n);\n return new t(i);\n }, Object.defineProperty(t.prototype, \"roundPixels\", {\n get: function() {\n return this._roundPixels;\n },\n /**\n * If true PixiJS will Math.floor() x/y values when rendering, stopping pixel interpolation.\n *\n * Advantages can include sharper image quality (like text) and faster rendering on canvas.\n * The main disadvantage is movement of objects may appear less smooth.\n *\n * To set the global default, change {@link PIXI.settings.ROUND_PIXELS}.\n * @default false\n */\n set: function(e) {\n this._roundPixels !== e && (this._transformID = -1), this._roundPixels = e;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"width\", {\n /** The width of the sprite, setting this will actually modify the scale to achieve the value set. */\n get: function() {\n return Math.abs(this.scale.x) * this._texture.orig.width;\n },\n set: function(e) {\n var n = Cr(this.scale.x) || 1;\n this.scale.x = n * e / this._texture.orig.width, this._width = e;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"height\", {\n /** The height of the sprite, setting this will actually modify the scale to achieve the value set. */\n get: function() {\n return Math.abs(this.scale.y) * this._texture.orig.height;\n },\n set: function(e) {\n var n = Cr(this.scale.y) || 1;\n this.scale.y = n * e / this._texture.orig.height, this._height = e;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"anchor\", {\n /**\n * The anchor sets the origin point of the sprite. The default value is taken from the {@link PIXI.Texture|Texture}\n * and passed to the constructor.\n *\n * The default is `(0,0)`, this means the sprite's origin is the top left.\n *\n * Setting the anchor to `(0.5,0.5)` means the sprite's origin is centered.\n *\n * Setting the anchor to `(1,1)` would mean the sprite's origin point will be the bottom right corner.\n *\n * If you pass only single parameter, it will set both x and y to the same value as shown in the example below.\n * @example\n * const sprite = new PIXI.Sprite(texture);\n * sprite.anchor.set(0.5); // This will set the origin to center. (0.5) is same as (0.5, 0.5).\n */\n get: function() {\n return this._anchor;\n },\n set: function(e) {\n this._anchor.copyFrom(e);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"tint\", {\n /**\n * The tint applied to the sprite. This is a hex value.\n *\n * A value of 0xFFFFFF will remove any tint effect.\n * @default 0xFFFFFF\n */\n get: function() {\n return this._tint;\n },\n set: function(e) {\n this._tint = e, this._tintRGB = (e >> 16) + (e & 65280) + ((e & 255) << 16);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"texture\", {\n /** The texture that the sprite is using. */\n get: function() {\n return this._texture;\n },\n set: function(e) {\n this._texture !== e && (this._texture && this._texture.off(\"update\", this._onTextureUpdate, this), this._texture = e || J.EMPTY, this._cachedTint = 16777215, this._textureID = -1, this._textureTrimmedID = -1, e && (e.baseTexture.valid ? this._onTextureUpdate() : e.once(\"update\", this._onTextureUpdate, this)));\n },\n enumerable: !1,\n configurable: !0\n }), t;\n }(xe)\n);\n/*!\n * @pixi/text - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/text is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\n/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\nvar wa = function(r, t) {\n return wa = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(e, n) {\n e.__proto__ = n;\n } || function(e, n) {\n for (var i in n)\n n.hasOwnProperty(i) && (e[i] = n[i]);\n }, wa(r, t);\n};\nfunction Jb(r, t) {\n wa(r, t);\n function e() {\n this.constructor = r;\n }\n r.prototype = t === null ? Object.create(t) : (e.prototype = t.prototype, new e());\n}\nvar Sn;\n(function(r) {\n r[r.LINEAR_VERTICAL = 0] = \"LINEAR_VERTICAL\", r[r.LINEAR_HORIZONTAL = 1] = \"LINEAR_HORIZONTAL\";\n})(Sn || (Sn = {}));\nvar Fo = {\n align: \"left\",\n breakWords: !1,\n dropShadow: !1,\n dropShadowAlpha: 1,\n dropShadowAngle: Math.PI / 6,\n dropShadowBlur: 0,\n dropShadowColor: \"black\",\n dropShadowDistance: 5,\n fill: \"black\",\n fillGradientType: Sn.LINEAR_VERTICAL,\n fillGradientStops: [],\n fontFamily: \"Arial\",\n fontSize: 26,\n fontStyle: \"normal\",\n fontVariant: \"normal\",\n fontWeight: \"normal\",\n letterSpacing: 0,\n lineHeight: 0,\n lineJoin: \"miter\",\n miterLimit: 10,\n padding: 0,\n stroke: \"black\",\n strokeThickness: 0,\n textBaseline: \"alphabetic\",\n trim: !1,\n whiteSpace: \"pre\",\n wordWrap: !1,\n wordWrapWidth: 100,\n leading: 0\n}, Qb = [\n \"serif\",\n \"sans-serif\",\n \"monospace\",\n \"cursive\",\n \"fantasy\",\n \"system-ui\"\n], zr = (\n /** @class */\n function() {\n function r(t) {\n this.styleID = 0, this.reset(), No(this, t, t);\n }\n return r.prototype.clone = function() {\n var t = {};\n return No(t, this, Fo), new r(t);\n }, r.prototype.reset = function() {\n No(this, Fo, Fo);\n }, Object.defineProperty(r.prototype, \"align\", {\n /**\n * Alignment for multiline text ('left', 'center' or 'right'), does not affect single line text\n *\n * @member {string}\n */\n get: function() {\n return this._align;\n },\n set: function(t) {\n this._align !== t && (this._align = t, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"breakWords\", {\n /** Indicates if lines can be wrapped within words, it needs wordWrap to be set to true. */\n get: function() {\n return this._breakWords;\n },\n set: function(t) {\n this._breakWords !== t && (this._breakWords = t, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"dropShadow\", {\n /** Set a drop shadow for the text. */\n get: function() {\n return this._dropShadow;\n },\n set: function(t) {\n this._dropShadow !== t && (this._dropShadow = t, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"dropShadowAlpha\", {\n /** Set alpha for the drop shadow. */\n get: function() {\n return this._dropShadowAlpha;\n },\n set: function(t) {\n this._dropShadowAlpha !== t && (this._dropShadowAlpha = t, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"dropShadowAngle\", {\n /** Set a angle of the drop shadow. */\n get: function() {\n return this._dropShadowAngle;\n },\n set: function(t) {\n this._dropShadowAngle !== t && (this._dropShadowAngle = t, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"dropShadowBlur\", {\n /** Set a shadow blur radius. */\n get: function() {\n return this._dropShadowBlur;\n },\n set: function(t) {\n this._dropShadowBlur !== t && (this._dropShadowBlur = t, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"dropShadowColor\", {\n /** A fill style to be used on the dropshadow e.g 'red', '#00FF00'. */\n get: function() {\n return this._dropShadowColor;\n },\n set: function(t) {\n var e = Bo(t);\n this._dropShadowColor !== e && (this._dropShadowColor = e, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"dropShadowDistance\", {\n /** Set a distance of the drop shadow. */\n get: function() {\n return this._dropShadowDistance;\n },\n set: function(t) {\n this._dropShadowDistance !== t && (this._dropShadowDistance = t, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"fill\", {\n /**\n * A canvas fillstyle that will be used on the text e.g 'red', '#00FF00'.\n *\n * Can be an array to create a gradient eg ['#000000','#FFFFFF']\n * {@link https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/fillStyle|MDN}\n *\n * @member {string|string[]|number|number[]|CanvasGradient|CanvasPattern}\n */\n get: function() {\n return this._fill;\n },\n set: function(t) {\n var e = Bo(t);\n this._fill !== e && (this._fill = e, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"fillGradientType\", {\n /**\n * If fill is an array of colours to create a gradient, this can change the type/direction of the gradient.\n *\n * @see PIXI.TEXT_GRADIENT\n */\n get: function() {\n return this._fillGradientType;\n },\n set: function(t) {\n this._fillGradientType !== t && (this._fillGradientType = t, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"fillGradientStops\", {\n /**\n * If fill is an array of colours to create a gradient, this array can set the stop points\n * (numbers between 0 and 1) for the color, overriding the default behaviour of evenly spacing them.\n */\n get: function() {\n return this._fillGradientStops;\n },\n set: function(t) {\n tx(this._fillGradientStops, t) || (this._fillGradientStops = t, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"fontFamily\", {\n /** The font family. */\n get: function() {\n return this._fontFamily;\n },\n set: function(t) {\n this.fontFamily !== t && (this._fontFamily = t, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"fontSize\", {\n /**\n * The font size\n * (as a number it converts to px, but as a string, equivalents are '26px','20pt','160%' or '1.6em')\n */\n get: function() {\n return this._fontSize;\n },\n set: function(t) {\n this._fontSize !== t && (this._fontSize = t, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"fontStyle\", {\n /**\n * The font style\n * ('normal', 'italic' or 'oblique')\n *\n * @member {string}\n */\n get: function() {\n return this._fontStyle;\n },\n set: function(t) {\n this._fontStyle !== t && (this._fontStyle = t, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"fontVariant\", {\n /**\n * The font variant\n * ('normal' or 'small-caps')\n *\n * @member {string}\n */\n get: function() {\n return this._fontVariant;\n },\n set: function(t) {\n this._fontVariant !== t && (this._fontVariant = t, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"fontWeight\", {\n /**\n * The font weight\n * ('normal', 'bold', 'bolder', 'lighter' and '100', '200', '300', '400', '500', '600', '700', 800' or '900')\n *\n * @member {string}\n */\n get: function() {\n return this._fontWeight;\n },\n set: function(t) {\n this._fontWeight !== t && (this._fontWeight = t, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"letterSpacing\", {\n /** The amount of spacing between letters, default is 0. */\n get: function() {\n return this._letterSpacing;\n },\n set: function(t) {\n this._letterSpacing !== t && (this._letterSpacing = t, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"lineHeight\", {\n /** The line height, a number that represents the vertical space that a letter uses. */\n get: function() {\n return this._lineHeight;\n },\n set: function(t) {\n this._lineHeight !== t && (this._lineHeight = t, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"leading\", {\n /** The space between lines. */\n get: function() {\n return this._leading;\n },\n set: function(t) {\n this._leading !== t && (this._leading = t, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"lineJoin\", {\n /**\n * The lineJoin property sets the type of corner created, it can resolve spiked text issues.\n * Default is 'miter' (creates a sharp corner).\n *\n * @member {string}\n */\n get: function() {\n return this._lineJoin;\n },\n set: function(t) {\n this._lineJoin !== t && (this._lineJoin = t, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"miterLimit\", {\n /**\n * The miter limit to use when using the 'miter' lineJoin mode.\n *\n * This can reduce or increase the spikiness of rendered text.\n */\n get: function() {\n return this._miterLimit;\n },\n set: function(t) {\n this._miterLimit !== t && (this._miterLimit = t, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"padding\", {\n /**\n * Occasionally some fonts are cropped. Adding some padding will prevent this from happening\n * by adding padding to all sides of the text.\n */\n get: function() {\n return this._padding;\n },\n set: function(t) {\n this._padding !== t && (this._padding = t, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"stroke\", {\n /**\n * A canvas fillstyle that will be used on the text stroke\n * e.g 'blue', '#FCFF00'\n */\n get: function() {\n return this._stroke;\n },\n set: function(t) {\n var e = Bo(t);\n this._stroke !== e && (this._stroke = e, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"strokeThickness\", {\n /**\n * A number that represents the thickness of the stroke.\n *\n * @default 0\n */\n get: function() {\n return this._strokeThickness;\n },\n set: function(t) {\n this._strokeThickness !== t && (this._strokeThickness = t, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"textBaseline\", {\n /**\n * The baseline of the text that is rendered.\n *\n * @member {string}\n */\n get: function() {\n return this._textBaseline;\n },\n set: function(t) {\n this._textBaseline !== t && (this._textBaseline = t, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"trim\", {\n /** Trim transparent borders. */\n get: function() {\n return this._trim;\n },\n set: function(t) {\n this._trim !== t && (this._trim = t, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"whiteSpace\", {\n /**\n * How newlines and spaces should be handled.\n * Default is 'pre' (preserve, preserve).\n *\n * value | New lines | Spaces\n * --- | --- | ---\n * 'normal' | Collapse | Collapse\n * 'pre' | Preserve | Preserve\n * 'pre-line' | Preserve | Collapse\n *\n * @member {string}\n */\n get: function() {\n return this._whiteSpace;\n },\n set: function(t) {\n this._whiteSpace !== t && (this._whiteSpace = t, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"wordWrap\", {\n /** Indicates if word wrap should be used. */\n get: function() {\n return this._wordWrap;\n },\n set: function(t) {\n this._wordWrap !== t && (this._wordWrap = t, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"wordWrapWidth\", {\n /** The width at which text will wrap, it needs wordWrap to be set to true. */\n get: function() {\n return this._wordWrapWidth;\n },\n set: function(t) {\n this._wordWrapWidth !== t && (this._wordWrapWidth = t, this.styleID++);\n },\n enumerable: !1,\n configurable: !0\n }), r.prototype.toFontString = function() {\n var t = typeof this.fontSize == \"number\" ? this.fontSize + \"px\" : this.fontSize, e = this.fontFamily;\n Array.isArray(this.fontFamily) || (e = this.fontFamily.split(\",\"));\n for (var n = e.length - 1; n >= 0; n--) {\n var i = e[n].trim();\n !/([\\\"\\'])[^\\'\\\"]+\\1/.test(i) && Qb.indexOf(i) < 0 && (i = '\"' + i + '\"'), e[n] = i;\n }\n return this.fontStyle + \" \" + this.fontVariant + \" \" + this.fontWeight + \" \" + t + \" \" + e.join(\",\");\n }, r;\n }()\n);\nfunction hh(r) {\n return typeof r == \"number\" ? Tl(r) : (typeof r == \"string\" && r.indexOf(\"0x\") === 0 && (r = r.replace(\"0x\", \"#\")), r);\n}\nfunction Bo(r) {\n if (Array.isArray(r)) {\n for (var t = 0; t < r.length; ++t)\n r[t] = hh(r[t]);\n return r;\n } else\n return hh(r);\n}\nfunction tx(r, t) {\n if (!Array.isArray(r) || !Array.isArray(t) || r.length !== t.length)\n return !1;\n for (var e = 0; e < r.length; ++e)\n if (r[e] !== t[e])\n return !1;\n return !0;\n}\nfunction No(r, t, e) {\n for (var n in e)\n Array.isArray(t[n]) ? r[n] = t[n].slice() : r[n] = t[n];\n}\nvar li = {\n // TextMetrics requires getImageData readback for measuring fonts.\n willReadFrequently: !0\n}, Te = (\n /** @class */\n function() {\n function r(t, e, n, i, o, a, s, u, h) {\n this.text = t, this.style = e, this.width = n, this.height = i, this.lines = o, this.lineWidths = a, this.lineHeight = s, this.maxLineWidth = u, this.fontProperties = h;\n }\n return r.measureText = function(t, e, n, i) {\n i === void 0 && (i = r._canvas), n = n ?? e.wordWrap;\n var o = e.toFontString(), a = r.measureFont(o);\n a.fontSize === 0 && (a.fontSize = e.fontSize, a.ascent = e.fontSize);\n var s = i.getContext(\"2d\", li);\n s.font = o;\n for (var u = n ? r.wordWrap(t, e, i) : t, h = u.split(/(?:\\r\\n|\\r|\\n)/), f = new Array(h.length), l = 0, c = 0; c < h.length; c++) {\n var d = s.measureText(h[c]).width + (h[c].length - 1) * e.letterSpacing;\n f[c] = d, l = Math.max(l, d);\n }\n var p = l + e.strokeThickness;\n e.dropShadow && (p += e.dropShadowDistance);\n var v = e.lineHeight || a.fontSize + e.strokeThickness, _ = Math.max(v, a.fontSize + e.strokeThickness) + (h.length - 1) * (v + e.leading);\n return e.dropShadow && (_ += e.dropShadowDistance), new r(t, e, p, _, h, f, v + e.leading, l, a);\n }, r.wordWrap = function(t, e, n) {\n n === void 0 && (n = r._canvas);\n for (var i = n.getContext(\"2d\", li), o = 0, a = \"\", s = \"\", u = /* @__PURE__ */ Object.create(null), h = e.letterSpacing, f = e.whiteSpace, l = r.collapseSpaces(f), c = r.collapseNewlines(f), d = !l, p = e.wordWrapWidth + h, v = r.tokenize(t), _ = 0; _ < v.length; _++) {\n var g = v[_];\n if (r.isNewline(g)) {\n if (!c) {\n s += r.addLine(a), d = !l, a = \"\", o = 0;\n continue;\n }\n g = \" \";\n }\n if (l) {\n var m = r.isBreakingSpace(g), y = r.isBreakingSpace(a[a.length - 1]);\n if (m && y)\n continue;\n }\n var T = r.getFromCache(g, h, u, i);\n if (T > p)\n if (a !== \"\" && (s += r.addLine(a), a = \"\", o = 0), r.canBreakWords(g, e.breakWords))\n for (var x = r.wordWrapSplit(g), w = 0; w < x.length; w++) {\n for (var S = x[w], I = 1; x[w + I]; ) {\n var O = x[w + I], b = S[S.length - 1];\n if (!r.canBreakChars(b, O, g, w, e.breakWords))\n S += O;\n else\n break;\n I++;\n }\n w += S.length - 1;\n var P = r.getFromCache(S, h, u, i);\n P + o > p && (s += r.addLine(a), d = !1, a = \"\", o = 0), a += S, o += P;\n }\n else {\n a.length > 0 && (s += r.addLine(a), a = \"\", o = 0);\n var A = _ === v.length - 1;\n s += r.addLine(g, !A), d = !1, a = \"\", o = 0;\n }\n else\n T + o > p && (d = !1, s += r.addLine(a), a = \"\", o = 0), (a.length > 0 || !r.isBreakingSpace(g) || d) && (a += g, o += T);\n }\n return s += r.addLine(a, !1), s;\n }, r.addLine = function(t, e) {\n return e === void 0 && (e = !0), t = r.trimRight(t), t = e ? t + `\n` : t, t;\n }, r.getFromCache = function(t, e, n, i) {\n var o = n[t];\n if (typeof o != \"number\") {\n var a = t.length * e;\n o = i.measureText(t).width + a, n[t] = o;\n }\n return o;\n }, r.collapseSpaces = function(t) {\n return t === \"normal\" || t === \"pre-line\";\n }, r.collapseNewlines = function(t) {\n return t === \"normal\";\n }, r.trimRight = function(t) {\n if (typeof t != \"string\")\n return \"\";\n for (var e = t.length - 1; e >= 0; e--) {\n var n = t[e];\n if (!r.isBreakingSpace(n))\n break;\n t = t.slice(0, -1);\n }\n return t;\n }, r.isNewline = function(t) {\n return typeof t != \"string\" ? !1 : r._newlines.indexOf(t.charCodeAt(0)) >= 0;\n }, r.isBreakingSpace = function(t, e) {\n return typeof t != \"string\" ? !1 : r._breakingSpaces.indexOf(t.charCodeAt(0)) >= 0;\n }, r.tokenize = function(t) {\n var e = [], n = \"\";\n if (typeof t != \"string\")\n return e;\n for (var i = 0; i < t.length; i++) {\n var o = t[i], a = t[i + 1];\n if (r.isBreakingSpace(o, a) || r.isNewline(o)) {\n n !== \"\" && (e.push(n), n = \"\"), e.push(o);\n continue;\n }\n n += o;\n }\n return n !== \"\" && e.push(n), e;\n }, r.canBreakWords = function(t, e) {\n return e;\n }, r.canBreakChars = function(t, e, n, i, o) {\n return !0;\n }, r.wordWrapSplit = function(t) {\n return t.split(\"\");\n }, r.measureFont = function(t) {\n if (r._fonts[t])\n return r._fonts[t];\n var e = {\n ascent: 0,\n descent: 0,\n fontSize: 0\n }, n = r._canvas, i = r._context;\n i.font = t;\n var o = r.METRICS_STRING + r.BASELINE_SYMBOL, a = Math.ceil(i.measureText(o).width), s = Math.ceil(i.measureText(r.BASELINE_SYMBOL).width), u = Math.ceil(r.HEIGHT_MULTIPLIER * s);\n s = s * r.BASELINE_MULTIPLIER | 0, n.width = a, n.height = u, i.fillStyle = \"#f00\", i.fillRect(0, 0, a, u), i.font = t, i.textBaseline = \"alphabetic\", i.fillStyle = \"#000\", i.fillText(o, 0, s);\n var h = i.getImageData(0, 0, a, u).data, f = h.length, l = a * 4, c = 0, d = 0, p = !1;\n for (c = 0; c < s; ++c) {\n for (var v = 0; v < l; v += 4)\n if (h[d + v] !== 255) {\n p = !0;\n break;\n }\n if (!p)\n d += l;\n else\n break;\n }\n for (e.ascent = s - c, d = f - l, p = !1, c = u; c > s; --c) {\n for (var v = 0; v < l; v += 4)\n if (h[d + v] !== 255) {\n p = !0;\n break;\n }\n if (!p)\n d -= l;\n else\n break;\n }\n return e.descent = c - s, e.fontSize = e.ascent + e.descent, r._fonts[t] = e, e;\n }, r.clearMetrics = function(t) {\n t === void 0 && (t = \"\"), t ? delete r._fonts[t] : r._fonts = {};\n }, Object.defineProperty(r, \"_canvas\", {\n /**\n * Cached canvas element for measuring text\n * TODO: this should be private, but isn't because of backward compat, will fix later.\n * @ignore\n */\n get: function() {\n if (!r.__canvas) {\n var t = void 0;\n try {\n var e = new OffscreenCanvas(0, 0), n = e.getContext(\"2d\", li);\n if (n && n.measureText)\n return r.__canvas = e, e;\n t = k.ADAPTER.createCanvas();\n } catch {\n t = k.ADAPTER.createCanvas();\n }\n t.width = t.height = 10, r.__canvas = t;\n }\n return r.__canvas;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r, \"_context\", {\n /**\n * TODO: this should be private, but isn't because of backward compat, will fix later.\n * @ignore\n */\n get: function() {\n return r.__context || (r.__context = r._canvas.getContext(\"2d\", li)), r.__context;\n },\n enumerable: !1,\n configurable: !0\n }), r;\n }()\n);\nTe._fonts = {};\nTe.METRICS_STRING = \"|ÉqÅ\";\nTe.BASELINE_SYMBOL = \"M\";\nTe.BASELINE_MULTIPLIER = 1.4;\nTe.HEIGHT_MULTIPLIER = 2;\nTe._newlines = [\n 10,\n 13\n];\nTe._breakingSpaces = [\n 9,\n 32,\n 8192,\n 8193,\n 8194,\n 8195,\n 8196,\n 8197,\n 8198,\n 8200,\n 8201,\n 8202,\n 8287,\n 12288\n];\nvar ex = {\n texture: !0,\n children: !1,\n baseTexture: !0\n}, tf = (\n /** @class */\n function(r) {\n Jb(t, r);\n function t(e, n, i) {\n var o = this, a = !1;\n i || (i = k.ADAPTER.createCanvas(), a = !0), i.width = 3, i.height = 3;\n var s = J.from(i);\n return s.orig = new ht(), s.trim = new ht(), o = r.call(this, s) || this, o._ownCanvas = a, o.canvas = i, o.context = i.getContext(\"2d\", {\n // required for trimming to work without warnings\n willReadFrequently: !0\n }), o._resolution = k.RESOLUTION, o._autoResolution = !0, o._text = null, o._style = null, o._styleListener = null, o._font = \"\", o.text = e, o.style = n, o.localStyleID = -1, o;\n }\n return t.prototype.updateText = function(e) {\n var n = this._style;\n if (this.localStyleID !== n.styleID && (this.dirty = !0, this.localStyleID = n.styleID), !(!this.dirty && e)) {\n this._font = this._style.toFontString();\n var i = this.context, o = Te.measureText(this._text || \" \", this._style, this._style.wordWrap, this.canvas), a = o.width, s = o.height, u = o.lines, h = o.lineHeight, f = o.lineWidths, l = o.maxLineWidth, c = o.fontProperties;\n this.canvas.width = Math.ceil(Math.ceil(Math.max(1, a) + n.padding * 2) * this._resolution), this.canvas.height = Math.ceil(Math.ceil(Math.max(1, s) + n.padding * 2) * this._resolution), i.scale(this._resolution, this._resolution), i.clearRect(0, 0, this.canvas.width, this.canvas.height), i.font = this._font, i.lineWidth = n.strokeThickness, i.textBaseline = n.textBaseline, i.lineJoin = n.lineJoin, i.miterLimit = n.miterLimit;\n for (var d, p, v = n.dropShadow ? 2 : 1, _ = 0; _ < v; ++_) {\n var g = n.dropShadow && _ === 0, m = g ? Math.ceil(Math.max(1, s) + n.padding * 2) : 0, y = m * this._resolution;\n if (g) {\n i.fillStyle = \"black\", i.strokeStyle = \"black\";\n var T = n.dropShadowColor, x = Yr(typeof T == \"number\" ? T : En(T)), w = n.dropShadowBlur * this._resolution, S = n.dropShadowDistance * this._resolution;\n i.shadowColor = \"rgba(\" + x[0] * 255 + \",\" + x[1] * 255 + \",\" + x[2] * 255 + \",\" + n.dropShadowAlpha + \")\", i.shadowBlur = w, i.shadowOffsetX = Math.cos(n.dropShadowAngle) * S, i.shadowOffsetY = Math.sin(n.dropShadowAngle) * S + y;\n } else\n i.fillStyle = this._generateFillStyle(n, u, o), i.strokeStyle = n.stroke, i.shadowColor = \"black\", i.shadowBlur = 0, i.shadowOffsetX = 0, i.shadowOffsetY = 0;\n var I = (h - c.fontSize) / 2;\n (!t.nextLineHeightBehavior || h - c.fontSize < 0) && (I = 0);\n for (var O = 0; O < u.length; O++)\n d = n.strokeThickness / 2, p = n.strokeThickness / 2 + O * h + c.ascent + I, n.align === \"right\" ? d += l - f[O] : n.align === \"center\" && (d += (l - f[O]) / 2), n.stroke && n.strokeThickness && this.drawLetterSpacing(u[O], d + n.padding, p + n.padding - m, !0), n.fill && this.drawLetterSpacing(u[O], d + n.padding, p + n.padding - m);\n }\n this.updateTexture();\n }\n }, t.prototype.drawLetterSpacing = function(e, n, i, o) {\n o === void 0 && (o = !1);\n var a = this._style, s = a.letterSpacing, u = t.experimentalLetterSpacing && (\"letterSpacing\" in CanvasRenderingContext2D.prototype || \"textLetterSpacing\" in CanvasRenderingContext2D.prototype);\n if (s === 0 || u) {\n u && (this.context.letterSpacing = s, this.context.textLetterSpacing = s), o ? this.context.strokeText(e, n, i) : this.context.fillText(e, n, i);\n return;\n }\n for (var h = n, f = Array.from ? Array.from(e) : e.split(\"\"), l = this.context.measureText(e).width, c = 0, d = 0; d < f.length; ++d) {\n var p = f[d];\n o ? this.context.strokeText(p, h, i) : this.context.fillText(p, h, i);\n for (var v = \"\", _ = d + 1; _ < f.length; ++_)\n v += f[_];\n c = this.context.measureText(v).width, h += l - c + s, l = c;\n }\n }, t.prototype.updateTexture = function() {\n var e = this.canvas;\n if (this._style.trim) {\n var n = $g(e);\n n.data && (e.width = n.width, e.height = n.height, this.context.putImageData(n.data, 0, 0));\n }\n var i = this._texture, o = this._style, a = o.trim ? 0 : o.padding, s = i.baseTexture;\n i.trim.width = i._frame.width = e.width / this._resolution, i.trim.height = i._frame.height = e.height / this._resolution, i.trim.x = -a, i.trim.y = -a, i.orig.width = i._frame.width - a * 2, i.orig.height = i._frame.height - a * 2, this._onTextureUpdate(), s.setRealSize(e.width, e.height, this._resolution), i.updateUvs(), this.dirty = !1;\n }, t.prototype._render = function(e) {\n this._autoResolution && this._resolution !== e.resolution && (this._resolution = e.resolution, this.dirty = !0), this.updateText(!0), r.prototype._render.call(this, e);\n }, t.prototype.updateTransform = function() {\n this.updateText(!0), r.prototype.updateTransform.call(this);\n }, t.prototype.getBounds = function(e, n) {\n return this.updateText(!0), this._textureID === -1 && (e = !1), r.prototype.getBounds.call(this, e, n);\n }, t.prototype.getLocalBounds = function(e) {\n return this.updateText(!0), r.prototype.getLocalBounds.call(this, e);\n }, t.prototype._calculateBounds = function() {\n this.calculateVertices(), this._bounds.addQuad(this.vertexData);\n }, t.prototype._generateFillStyle = function(e, n, i) {\n var o = e.fill;\n if (Array.isArray(o)) {\n if (o.length === 1)\n return o[0];\n } else\n return o;\n var a, s = e.dropShadow ? e.dropShadowDistance : 0, u = e.padding || 0, h = this.canvas.width / this._resolution - s - u * 2, f = this.canvas.height / this._resolution - s - u * 2, l = o.slice(), c = e.fillGradientStops.slice();\n if (!c.length)\n for (var d = l.length + 1, p = 1; p < d; ++p)\n c.push(p / d);\n if (l.unshift(o[0]), c.unshift(0), l.push(o[o.length - 1]), c.push(1), e.fillGradientType === Sn.LINEAR_VERTICAL) {\n a = this.context.createLinearGradient(h / 2, u, h / 2, f + u);\n for (var v = i.fontProperties.fontSize + e.strokeThickness, p = 0; p < n.length; p++) {\n var _ = i.lineHeight * (p - 1) + v, g = i.lineHeight * p, m = g;\n p > 0 && _ > g && (m = (g + _) / 2);\n var y = g + v, T = i.lineHeight * (p + 1), x = y;\n p + 1 < n.length && T < y && (x = (y + T) / 2);\n for (var w = (x - m) / f, S = 0; S < l.length; S++) {\n var I = 0;\n typeof c[S] == \"number\" ? I = c[S] : I = S / l.length;\n var O = Math.min(1, Math.max(0, m / f + I * w));\n O = Number(O.toFixed(5)), a.addColorStop(O, l[S]);\n }\n }\n } else {\n a = this.context.createLinearGradient(u, f / 2, h + u, f / 2);\n for (var b = l.length + 1, P = 1, p = 0; p < l.length; p++) {\n var A = void 0;\n typeof c[p] == \"number\" ? A = c[p] : A = P / b, a.addColorStop(A, l[p]), P++;\n }\n }\n return a;\n }, t.prototype.destroy = function(e) {\n typeof e == \"boolean\" && (e = { children: e }), e = Object.assign({}, ex, e), r.prototype.destroy.call(this, e), this._ownCanvas && (this.canvas.height = this.canvas.width = 0), this.context = null, this.canvas = null, this._style = null;\n }, Object.defineProperty(t.prototype, \"width\", {\n /** The width of the Text, setting this will actually modify the scale to achieve the value set. */\n get: function() {\n return this.updateText(!0), Math.abs(this.scale.x) * this._texture.orig.width;\n },\n set: function(e) {\n this.updateText(!0);\n var n = Cr(this.scale.x) || 1;\n this.scale.x = n * e / this._texture.orig.width, this._width = e;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"height\", {\n /** The height of the Text, setting this will actually modify the scale to achieve the value set. */\n get: function() {\n return this.updateText(!0), Math.abs(this.scale.y) * this._texture.orig.height;\n },\n set: function(e) {\n this.updateText(!0);\n var n = Cr(this.scale.y) || 1;\n this.scale.y = n * e / this._texture.orig.height, this._height = e;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"style\", {\n /**\n * Set the style of the text.\n *\n * Set up an event listener to listen for changes on the style object and mark the text as dirty.\n */\n get: function() {\n return this._style;\n },\n set: function(e) {\n e = e || {}, e instanceof zr ? this._style = e : this._style = new zr(e), this.localStyleID = -1, this.dirty = !0;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"text\", {\n /** Set the copy for the text object. To split a line you can use '\\n'. */\n get: function() {\n return this._text;\n },\n set: function(e) {\n e = String(e ?? \"\"), this._text !== e && (this._text = e, this.dirty = !0);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"resolution\", {\n /**\n * The resolution / device pixel ratio of the canvas.\n *\n * This is set to automatically match the renderer resolution by default, but can be overridden by setting manually.\n * @default 1\n */\n get: function() {\n return this._resolution;\n },\n set: function(e) {\n this._autoResolution = !1, this._resolution !== e && (this._resolution = e, this.dirty = !0);\n },\n enumerable: !1,\n configurable: !0\n }), t.nextLineHeightBehavior = !1, t.experimentalLetterSpacing = !1, t;\n }(Fn)\n);\n/*!\n * @pixi/prepare - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/prepare is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\nk.UPLOADS_PER_FRAME = 4;\n/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\nvar Sa = function(r, t) {\n return Sa = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(e, n) {\n e.__proto__ = n;\n } || function(e, n) {\n for (var i in n)\n n.hasOwnProperty(i) && (e[i] = n[i]);\n }, Sa(r, t);\n};\nfunction rx(r, t) {\n Sa(r, t);\n function e() {\n this.constructor = r;\n }\n r.prototype = t === null ? Object.create(t) : (e.prototype = t.prototype, new e());\n}\nvar nx = (\n /** @class */\n function() {\n function r(t) {\n this.maxItemsPerFrame = t, this.itemsLeft = 0;\n }\n return r.prototype.beginFrame = function() {\n this.itemsLeft = this.maxItemsPerFrame;\n }, r.prototype.allowedToUpload = function() {\n return this.itemsLeft-- > 0;\n }, r;\n }()\n);\nfunction ix(r, t) {\n var e = !1;\n if (r && r._textures && r._textures.length) {\n for (var n = 0; n < r._textures.length; n++)\n if (r._textures[n] instanceof J) {\n var i = r._textures[n].baseTexture;\n t.indexOf(i) === -1 && (t.push(i), e = !0);\n }\n }\n return e;\n}\nfunction ox(r, t) {\n if (r.baseTexture instanceof ut) {\n var e = r.baseTexture;\n return t.indexOf(e) === -1 && t.push(e), !0;\n }\n return !1;\n}\nfunction ax(r, t) {\n if (r._texture && r._texture instanceof J) {\n var e = r._texture.baseTexture;\n return t.indexOf(e) === -1 && t.push(e), !0;\n }\n return !1;\n}\nfunction sx(r, t) {\n return t instanceof tf ? (t.updateText(!0), !0) : !1;\n}\nfunction ux(r, t) {\n if (t instanceof zr) {\n var e = t.toFontString();\n return Te.measureFont(e), !0;\n }\n return !1;\n}\nfunction hx(r, t) {\n if (r instanceof tf) {\n t.indexOf(r.style) === -1 && t.push(r.style), t.indexOf(r) === -1 && t.push(r);\n var e = r._texture.baseTexture;\n return t.indexOf(e) === -1 && t.push(e), !0;\n }\n return !1;\n}\nfunction lx(r, t) {\n return r instanceof zr ? (t.indexOf(r) === -1 && t.push(r), !0) : !1;\n}\nvar fx = (\n /** @class */\n function() {\n function r(t) {\n var e = this;\n this.limiter = new nx(k.UPLOADS_PER_FRAME), this.renderer = t, this.uploadHookHelper = null, this.queue = [], this.addHooks = [], this.uploadHooks = [], this.completes = [], this.ticking = !1, this.delayedTick = function() {\n e.queue && e.prepareItems();\n }, this.registerFindHook(hx), this.registerFindHook(lx), this.registerFindHook(ix), this.registerFindHook(ox), this.registerFindHook(ax), this.registerUploadHook(sx), this.registerUploadHook(ux);\n }\n return r.prototype.upload = function(t, e) {\n var n = this;\n return typeof t == \"function\" && (e = t, t = null), e && he(\"6.5.0\", \"BasePrepare.upload callback is deprecated, use the return Promise instead.\"), new Promise(function(i) {\n t && n.add(t);\n var o = function() {\n e == null || e(), i();\n };\n n.queue.length ? (n.completes.push(o), n.ticking || (n.ticking = !0, kt.system.addOnce(n.tick, n, Ce.UTILITY))) : o();\n });\n }, r.prototype.tick = function() {\n setTimeout(this.delayedTick, 0);\n }, r.prototype.prepareItems = function() {\n for (this.limiter.beginFrame(); this.queue.length && this.limiter.allowedToUpload(); ) {\n var t = this.queue[0], e = !1;\n if (t && !t._destroyed) {\n for (var n = 0, i = this.uploadHooks.length; n < i; n++)\n if (this.uploadHooks[n](this.uploadHookHelper, t)) {\n this.queue.shift(), e = !0;\n break;\n }\n }\n e || this.queue.shift();\n }\n if (this.queue.length)\n kt.system.addOnce(this.tick, this, Ce.UTILITY);\n else {\n this.ticking = !1;\n var o = this.completes.slice(0);\n this.completes.length = 0;\n for (var n = 0, i = o.length; n < i; n++)\n o[n]();\n }\n }, r.prototype.registerFindHook = function(t) {\n return t && this.addHooks.push(t), this;\n }, r.prototype.registerUploadHook = function(t) {\n return t && this.uploadHooks.push(t), this;\n }, r.prototype.add = function(t) {\n for (var e = 0, n = this.addHooks.length; e < n && !this.addHooks[e](t, this.queue); e++)\n ;\n if (t instanceof xe)\n for (var e = t.children.length - 1; e >= 0; e--)\n this.add(t.children[e]);\n return this;\n }, r.prototype.destroy = function() {\n this.ticking && kt.system.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;\n }, r;\n }()\n);\nfunction ef(r, t) {\n return t instanceof ut ? (t._glTextures[r.CONTEXT_UID] || r.texture.bind(t), !0) : !1;\n}\nfunction cx(r, t) {\n if (!(t instanceof Vr))\n return !1;\n var e = t.geometry;\n t.finishPoly(), e.updateBatches();\n for (var n = e.batches, i = 0; i < n.length; i++) {\n var o = n[i].style.texture;\n o && ef(r, o.baseTexture);\n }\n return e.batchable || r.geometry.bind(e, t._resolveDirectShader(r)), !0;\n}\nfunction dx(r, t) {\n return r instanceof Vr ? (t.push(r), !0) : !1;\n}\nvar px = (\n /** @class */\n function(r) {\n rx(t, r);\n function t(e) {\n var n = r.call(this, e) || this;\n return n.uploadHookHelper = n.renderer, n.registerFindHook(dx), n.registerUploadHook(ef), n.registerUploadHook(cx), n;\n }\n return t.extension = {\n name: \"prepare\",\n type: gt.RendererPlugin\n }, t;\n }(fx)\n);\n/*!\n * @pixi/spritesheet - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/spritesheet is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\nvar vx = (\n /** @class */\n function() {\n function r(t, e, n) {\n n === void 0 && (n = null), this.linkedSheets = [], this._texture = t instanceof J ? t : null, this.baseTexture = t instanceof ut ? t : this._texture.baseTexture, this.textures = {}, this.animations = {}, this.data = e;\n var i = this.baseTexture.resource;\n this.resolution = this._updateResolution(n || (i ? i.url : null)), this._frames = this.data.frames, this._frameKeys = Object.keys(this._frames), this._batchIndex = 0, this._callback = null;\n }\n return r.prototype._updateResolution = function(t) {\n t === void 0 && (t = null);\n var e = this.data.meta.scale, n = Di(t, null);\n return n === null && (n = e !== void 0 ? parseFloat(e) : 1), n !== 1 && this.baseTexture.setResolution(n), n;\n }, r.prototype.parse = function(t) {\n var e = this;\n return t && he(\"6.5.0\", \"Spritesheet.parse callback is deprecated, use the return Promise instead.\"), new Promise(function(n) {\n e._callback = function(i) {\n t == null || t(i), n(i);\n }, e._batchIndex = 0, e._frameKeys.length <= r.BATCH_SIZE ? (e._processFrames(0), e._processAnimations(), e._parseComplete()) : e._nextBatch();\n });\n }, r.prototype._processFrames = function(t) {\n for (var e = t, n = r.BATCH_SIZE; e - t < n && e < this._frameKeys.length; ) {\n var i = this._frameKeys[e], o = this._frames[i], a = o.frame;\n if (a) {\n var s = null, u = null, h = o.trimmed !== !1 && o.sourceSize ? o.sourceSize : o.frame, f = new ht(0, 0, Math.floor(h.w) / this.resolution, Math.floor(h.h) / this.resolution);\n o.rotated ? s = new ht(Math.floor(a.x) / this.resolution, Math.floor(a.y) / this.resolution, Math.floor(a.h) / this.resolution, Math.floor(a.w) / this.resolution) : s = new ht(Math.floor(a.x) / this.resolution, Math.floor(a.y) / this.resolution, Math.floor(a.w) / this.resolution, Math.floor(a.h) / this.resolution), o.trimmed !== !1 && o.spriteSourceSize && (u = new ht(Math.floor(o.spriteSourceSize.x) / this.resolution, Math.floor(o.spriteSourceSize.y) / this.resolution, Math.floor(a.w) / this.resolution, Math.floor(a.h) / this.resolution)), this.textures[i] = new J(this.baseTexture, s, f, u, o.rotated ? 2 : 0, o.anchor), J.addToCache(this.textures[i], i);\n }\n e++;\n }\n }, r.prototype._processAnimations = function() {\n var t = this.data.animations || {};\n for (var e in t) {\n this.animations[e] = [];\n for (var n = 0; n < t[e].length; n++) {\n var i = t[e][n];\n this.animations[e].push(this.textures[i]);\n }\n }\n }, r.prototype._parseComplete = function() {\n var t = this._callback;\n this._callback = null, this._batchIndex = 0, t.call(this, this.textures);\n }, r.prototype._nextBatch = function() {\n var t = this;\n this._processFrames(this._batchIndex * r.BATCH_SIZE), this._batchIndex++, setTimeout(function() {\n t._batchIndex * r.BATCH_SIZE < t._frameKeys.length ? t._nextBatch() : (t._processAnimations(), t._parseComplete());\n }, 0);\n }, r.prototype.destroy = function(t) {\n var e;\n t === void 0 && (t = !1);\n for (var n in this.textures)\n this.textures[n].destroy();\n this._frames = null, this._frameKeys = null, this.data = null, this.textures = null, t && ((e = this._texture) === null || e === void 0 || e.destroy(), this.baseTexture.destroy()), this._texture = null, this.baseTexture = null, this.linkedSheets = [];\n }, r.BATCH_SIZE = 1e3, r;\n }()\n), _x = (\n /** @class */\n function() {\n function r() {\n }\n return r.use = function(t, e) {\n var n, i, o = this, a = t.name + \"_image\";\n if (!t.data || t.type !== Rt.TYPE.JSON || !t.data.frames || o.resources[a]) {\n e();\n return;\n }\n var s = (i = (n = t.data) === null || n === void 0 ? void 0 : n.meta) === null || i === void 0 ? void 0 : i.related_multi_packs;\n if (Array.isArray(s))\n for (var u = function(p) {\n if (typeof p != \"string\")\n return \"continue\";\n var v = p.replace(\".json\", \"\"), _ = Ir.resolve(t.url.replace(o.baseUrl, \"\"), p);\n if (o.resources[v] || Object.values(o.resources).some(function(m) {\n return Ir.format(Ir.parse(m.url)) === _;\n }))\n return \"continue\";\n var g = {\n crossOrigin: t.crossOrigin,\n loadType: Rt.LOAD_TYPE.XHR,\n xhrType: Rt.XHR_RESPONSE_TYPE.JSON,\n parentResource: t,\n metadata: t.metadata\n };\n o.add(v, _, g);\n }, h = 0, f = s; h < f.length; h++) {\n var l = f[h];\n u(l);\n }\n var c = {\n crossOrigin: t.crossOrigin,\n metadata: t.metadata.imageMetadata,\n parentResource: t\n }, d = r.getResourcePath(t, o.baseUrl);\n o.add(a, d, c, function(v) {\n if (v.error) {\n e(v.error);\n return;\n }\n var _ = new vx(v.texture, t.data, t.url);\n _.parse().then(function() {\n t.spritesheet = _, t.textures = _.textures, e();\n });\n });\n }, r.getResourcePath = function(t, e) {\n return t.isDataUrl ? t.data.meta.image : Ir.resolve(t.url.replace(e, \"\"), t.data.meta.image);\n }, r.extension = gt.Loader, r;\n }()\n);\n/*!\n * @pixi/sprite-tiling - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/sprite-tiling is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\n/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\nvar Aa = function(r, t) {\n return Aa = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(e, n) {\n e.__proto__ = n;\n } || function(e, n) {\n for (var i in n)\n n.hasOwnProperty(i) && (e[i] = n[i]);\n }, Aa(r, t);\n};\nfunction rf(r, t) {\n Aa(r, t);\n function e() {\n this.constructor = r;\n }\n r.prototype = t === null ? Object.create(t) : (e.prototype = t.prototype, new e());\n}\nvar an = new Tt();\n(function(r) {\n rf(t, r);\n function t(e, n, i) {\n n === void 0 && (n = 100), i === void 0 && (i = 100);\n var o = r.call(this, e) || this;\n return o.tileTransform = new Rl(), o._width = n, o._height = i, o.uvMatrix = o.texture.uvMatrix || new ss(e), o.pluginName = \"tilingSprite\", o.uvRespectAnchor = !1, o;\n }\n return Object.defineProperty(t.prototype, \"clampMargin\", {\n /**\n * Changes frame clamping in corresponding textureTransform, shortcut\n * Change to -0.5 to add a pixel to the edge, recommended for transparent trimmed textures in atlas\n * @default 0.5\n * @member {number}\n */\n get: function() {\n return this.uvMatrix.clampMargin;\n },\n set: function(e) {\n this.uvMatrix.clampMargin = e, this.uvMatrix.update(!0);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"tileScale\", {\n /** The scaling of the image that is being tiled. */\n get: function() {\n return this.tileTransform.scale;\n },\n set: function(e) {\n this.tileTransform.scale.copyFrom(e);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"tilePosition\", {\n /** The offset of the image that is being tiled. */\n get: function() {\n return this.tileTransform.position;\n },\n set: function(e) {\n this.tileTransform.position.copyFrom(e);\n },\n enumerable: !1,\n configurable: !0\n }), t.prototype._onTextureUpdate = function() {\n this.uvMatrix && (this.uvMatrix.texture = this._texture), this._cachedTint = 16777215;\n }, t.prototype._render = function(e) {\n var n = this._texture;\n !n || !n.valid || (this.tileTransform.updateLocalTransform(), this.uvMatrix.update(), e.batch.setObjectRenderer(e.plugins[this.pluginName]), e.plugins[this.pluginName].render(this));\n }, t.prototype._calculateBounds = function() {\n var e = this._width * -this._anchor._x, n = this._height * -this._anchor._y, i = this._width * (1 - this._anchor._x), o = this._height * (1 - this._anchor._y);\n this._bounds.addFrame(this.transform, e, n, i, o);\n }, t.prototype.getLocalBounds = function(e) {\n return this.children.length === 0 ? (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 ht()), e = this._localBoundsRect), this._bounds.getRectangle(e)) : r.prototype.getLocalBounds.call(this, e);\n }, t.prototype.containsPoint = function(e) {\n this.worldTransform.applyInverse(e, an);\n var n = this._width, i = this._height, o = -n * this.anchor._x;\n if (an.x >= o && an.x < o + n) {\n var a = -i * this.anchor._y;\n if (an.y >= a && an.y < a + i)\n return !0;\n }\n return !1;\n }, t.prototype.destroy = function(e) {\n r.prototype.destroy.call(this, e), this.tileTransform = null, this.uvMatrix = null;\n }, t.from = function(e, n) {\n var i = e instanceof J ? e : J.from(e, n);\n return new t(i, n.width, n.height);\n }, Object.defineProperty(t.prototype, \"width\", {\n /** The width of the sprite, setting this will actually modify the scale to achieve the value set. */\n get: function() {\n return this._width;\n },\n set: function(e) {\n this._width = e;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"height\", {\n /** The height of the TilingSprite, setting this will actually modify the scale to achieve the value set. */\n get: function() {\n return this._height;\n },\n set: function(e) {\n this._height = e;\n },\n enumerable: !1,\n configurable: !0\n }), t;\n})(Fn);\nvar mx = `#version 100\n#define SHADER_NAME Tiling-Sprite-Simple-100\n\nprecision lowp float;\n\nvarying vec2 vTextureCoord;\n\nuniform sampler2D uSampler;\nuniform vec4 uColor;\n\nvoid main(void)\n{\n vec4 texSample = texture2D(uSampler, vTextureCoord);\n gl_FragColor = texSample * uColor;\n}\n`, lh = `#version 100\n#define SHADER_NAME Tiling-Sprite-100\n\nprecision lowp float;\n\nattribute 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`, gx = `#version 100\n#ifdef GL_EXT_shader_texture_lod\n #extension GL_EXT_shader_texture_lod : enable\n#endif\n#define SHADER_NAME Tiling-Sprite-100\n\nprecision lowp float;\n\nvarying 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 = vTextureCoord + ceil(uClampOffset - vTextureCoord);\n coord = (uMapCoord * vec3(coord, 1.0)).xy;\n vec2 unclamped = coord;\n coord = clamp(coord, uClampFrame.xy, uClampFrame.zw);\n\n #ifdef GL_EXT_shader_texture_lod\n vec4 texSample = unclamped == coord\n ? texture2D(uSampler, coord) \n : texture2DLodEXT(uSampler, coord, 0);\n #else\n vec4 texSample = texture2D(uSampler, coord);\n #endif\n\n gl_FragColor = texSample * uColor;\n}\n`, yx = `#version 300 es\n#define SHADER_NAME Tiling-Sprite-300\n\nprecision lowp float;\n\nin vec2 aVertexPosition;\nin vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\nuniform mat3 translationMatrix;\nuniform mat3 uTransform;\n\nout 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`, bx = `#version 300 es\n#define SHADER_NAME Tiling-Sprite-100\n\nprecision lowp float;\n\nin vec2 vTextureCoord;\n\nout vec4 fragmentColor;\n\nuniform sampler2D uSampler;\nuniform vec4 uColor;\nuniform mat3 uMapCoord;\nuniform vec4 uClampFrame;\nuniform vec2 uClampOffset;\n\nvoid main(void)\n{\n vec2 coord = vTextureCoord + ceil(uClampOffset - vTextureCoord);\n coord = (uMapCoord * vec3(coord, 1.0)).xy;\n vec2 unclamped = coord;\n coord = clamp(coord, uClampFrame.xy, uClampFrame.zw);\n\n vec4 texSample = texture(uSampler, coord, unclamped == coord ? 0.0f : -32.0f);// lod-bias very negative to force lod 0\n\n fragmentColor = texSample * uColor;\n}\n`, fi = new Dt(), xx = (\n /** @class */\n function(r) {\n rf(t, r);\n function t(e) {\n var n = r.call(this, e) || this;\n return e.runners.contextChange.add(n), n.quad = new Nl(), n.state = dr.for2d(), n;\n }\n return t.prototype.contextChange = function() {\n var e = this.renderer, n = { globals: e.globalUniforms };\n this.simpleShader = Ue.from(lh, mx, n), this.shader = e.context.webGLVersion > 1 ? Ue.from(yx, bx, n) : Ue.from(lh, gx, n);\n }, t.prototype.render = function(e) {\n var n = this.renderer, i = this.quad, o = i.vertices;\n o[0] = o[6] = e._width * -e.anchor.x, o[1] = o[3] = e._height * -e.anchor.y, o[2] = o[4] = e._width * (1 - e.anchor.x), o[5] = o[7] = e._height * (1 - e.anchor.y);\n var a = e.uvRespectAnchor ? e.anchor.x : 0, s = e.uvRespectAnchor ? e.anchor.y : 0;\n o = i.uvs, o[0] = o[6] = -a, o[1] = o[3] = -s, o[2] = o[4] = 1 - a, o[5] = o[7] = 1 - s, i.invalidate();\n var u = e._texture, h = u.baseTexture, f = h.alphaMode > 0, l = e.tileTransform.localTransform, c = e.uvMatrix, d = h.isPowerOfTwo && u.frame.width === h.width && u.frame.height === h.height;\n d && (h._glTextures[n.CONTEXT_UID] ? d = h.wrapMode !== ye.CLAMP : h.wrapMode === ye.CLAMP && (h.wrapMode = ye.REPEAT));\n var p = d ? this.simpleShader : this.shader, v = u.width, _ = u.height, g = e._width, m = e._height;\n fi.set(l.a * v / g, l.b * v / m, l.c * _ / g, l.d * _ / m, l.tx / g, l.ty / m), fi.invert(), d ? fi.prepend(c.mapCoord) : (p.uniforms.uMapCoord = c.mapCoord.toArray(!0), p.uniforms.uClampFrame = c.uClampFrame, p.uniforms.uClampOffset = c.uClampOffset), p.uniforms.uTransform = fi.toArray(!0), p.uniforms.uColor = Al(e.tint, e.worldAlpha, p.uniforms.uColor, f), p.uniforms.translationMatrix = e.transform.worldTransform.toArray(!0), p.uniforms.uSampler = u, n.shader.bind(p), n.geometry.bind(i), this.state.blendMode = Sl(e.blendMode, f), n.state.set(this.state), n.geometry.draw(this.renderer.gl.TRIANGLES, 6, 0);\n }, t.extension = {\n name: \"tilingSprite\",\n type: gt.RendererPlugin\n }, t;\n }(ji)\n);\n/*!\n * @pixi/mesh - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/mesh is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\n/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\nvar Pa = function(r, t) {\n return Pa = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(e, n) {\n e.__proto__ = n;\n } || function(e, n) {\n for (var i in n)\n n.hasOwnProperty(i) && (e[i] = n[i]);\n }, Pa(r, t);\n};\nfunction hs(r, t) {\n Pa(r, t);\n function e() {\n this.constructor = r;\n }\n r.prototype = t === null ? Object.create(t) : (e.prototype = t.prototype, new e());\n}\nvar Ex = (\n /** @class */\n function() {\n function r(t, e) {\n this.uvBuffer = t, this.uvMatrix = e, this.data = null, this._bufferUpdateId = -1, this._textureUpdateId = -1, this._updateID = 0;\n }\n return r.prototype.update = function(t) {\n if (!(!t && this._bufferUpdateId === this.uvBuffer._updateID && this._textureUpdateId === this.uvMatrix._updateID)) {\n this._bufferUpdateId = this.uvBuffer._updateID, this._textureUpdateId = this.uvMatrix._updateID;\n var e = this.uvBuffer.data;\n (!this.data || this.data.length !== e.length) && (this.data = new Float32Array(e.length)), this.uvMatrix.multiplyUvs(e, this.data), this._updateID++;\n }\n }, r;\n }()\n), Lo = new Tt(), fh = new gi(), An = (\n /** @class */\n function(r) {\n hs(t, r);\n function t(e, n, i, o) {\n o === void 0 && (o = se.TRIANGLES);\n var a = r.call(this) || this;\n return a.geometry = e, a.shader = n, a.state = i || dr.for2d(), a.drawMode = o, a.start = 0, a.size = 0, a.uvs = null, a.indices = null, a.vertexData = new Float32Array(1), a.vertexDirty = -1, a._transformID = -1, a._roundPixels = k.ROUND_PIXELS, a.batchUvs = null, a;\n }\n return Object.defineProperty(t.prototype, \"geometry\", {\n /**\n * Includes vertex positions, face indices, normals, colors, UVs, and\n * custom attributes within buffers, reducing the cost of passing all\n * this data to the GPU. Can be shared between multiple Mesh objects.\n */\n get: function() {\n return this._geometry;\n },\n set: function(e) {\n this._geometry !== e && (this._geometry && (this._geometry.refCount--, this._geometry.refCount === 0 && this._geometry.dispose()), this._geometry = e, this._geometry && this._geometry.refCount++, this.vertexDirty = -1);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"uvBuffer\", {\n /**\n * To change mesh uv's, change its uvBuffer data and increment its _updateID.\n * @readonly\n */\n get: function() {\n return this.geometry.buffers[1];\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"verticesBuffer\", {\n /**\n * To change mesh vertices, change its uvBuffer data and increment its _updateID.\n * Incrementing _updateID is optional because most of Mesh objects do it anyway.\n * @readonly\n */\n get: function() {\n return this.geometry.buffers[0];\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"material\", {\n get: function() {\n return this.shader;\n },\n /** Alias for {@link PIXI.Mesh#shader}. */\n set: function(e) {\n this.shader = e;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"blendMode\", {\n get: function() {\n return this.state.blendMode;\n },\n /**\n * The blend mode to be applied to the Mesh. Apply a value of\n * `PIXI.BLEND_MODES.NORMAL` to reset the blend mode.\n * @default PIXI.BLEND_MODES.NORMAL;\n */\n set: function(e) {\n this.state.blendMode = e;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"roundPixels\", {\n get: function() {\n return this._roundPixels;\n },\n /**\n * If true PixiJS will Math.floor() x/y values when rendering, stopping pixel interpolation.\n * Advantages can include sharper image quality (like text) and faster rendering on canvas.\n * The main disadvantage is movement of objects may appear less smooth.\n * To set the global default, change {@link PIXI.settings.ROUND_PIXELS}\n * @default false\n */\n set: function(e) {\n this._roundPixels !== e && (this._transformID = -1), this._roundPixels = e;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"tint\", {\n /**\n * The multiply tint applied to the Mesh. This is a hex value. A value of\n * `0xFFFFFF` will remove any tint effect.\n *\n * Null for non-MeshMaterial shaders\n * @default 0xFFFFFF\n */\n get: function() {\n return \"tint\" in this.shader ? this.shader.tint : null;\n },\n set: function(e) {\n this.shader.tint = e;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"texture\", {\n /** The texture that the Mesh uses. Null for non-MeshMaterial shaders */\n get: function() {\n return \"texture\" in this.shader ? this.shader.texture : null;\n },\n set: function(e) {\n this.shader.texture = e;\n },\n enumerable: !1,\n configurable: !0\n }), t.prototype._render = function(e) {\n var n = this.geometry.buffers[0].data, i = this.shader;\n i.batchable && this.drawMode === se.TRIANGLES && n.length < t.BATCHABLE_SIZE * 2 ? this._renderToBatch(e) : this._renderDefault(e);\n }, t.prototype._renderDefault = function(e) {\n var n = this.shader;\n n.alpha = this.worldAlpha, n.update && n.update(), e.batch.flush(), n.uniforms.translationMatrix = this.transform.worldTransform.toArray(!0), e.shader.bind(n), e.state.set(this.state), e.geometry.bind(this.geometry, n), e.geometry.draw(this.drawMode, this.size, this.start, this.geometry.instanceCount);\n }, t.prototype._renderToBatch = function(e) {\n var n = this.geometry, i = this.shader;\n i.uvMatrix && (i.uvMatrix.update(), this.calculateUvs()), this.calculateVertices(), this.indices = n.indexBuffer.data, this._tintRGB = i._tintRGB, this._texture = i.texture;\n var o = this.material.pluginName;\n e.batch.setObjectRenderer(e.plugins[o]), e.plugins[o].render(this);\n }, t.prototype.calculateVertices = function() {\n var e = this.geometry, n = e.buffers[0], i = n.data, o = n._updateID;\n if (!(o === this.vertexDirty && this._transformID === this.transform._worldID)) {\n this._transformID = this.transform._worldID, this.vertexData.length !== i.length && (this.vertexData = new Float32Array(i.length));\n for (var a = this.transform.worldTransform, s = a.a, u = a.b, h = a.c, f = a.d, l = a.tx, c = a.ty, d = this.vertexData, p = 0; p < d.length / 2; p++) {\n var v = i[p * 2], _ = i[p * 2 + 1];\n d[p * 2] = s * v + h * _ + l, d[p * 2 + 1] = u * v + f * _ + c;\n }\n if (this._roundPixels)\n for (var g = k.RESOLUTION, p = 0; p < d.length; ++p)\n d[p] = Math.round((d[p] * g | 0) / g);\n this.vertexDirty = o;\n }\n }, t.prototype.calculateUvs = function() {\n var e = this.geometry.buffers[1], n = this.shader;\n n.uvMatrix.isSimple ? this.uvs = e.data : (this.batchUvs || (this.batchUvs = new Ex(e, n.uvMatrix)), this.batchUvs.update(), this.uvs = this.batchUvs.data);\n }, t.prototype._calculateBounds = function() {\n this.calculateVertices(), this._bounds.addVertexData(this.vertexData, 0, this.vertexData.length);\n }, t.prototype.containsPoint = function(e) {\n if (!this.getBounds().contains(e.x, e.y))\n return !1;\n this.worldTransform.applyInverse(e, Lo);\n for (var n = this.geometry.getBuffer(\"aVertexPosition\").data, i = fh.points, o = this.geometry.getIndex().data, a = o.length, s = this.drawMode === 4 ? 3 : 1, u = 0; u + 2 < a; u += s) {\n var h = o[u] * 2, f = o[u + 1] * 2, l = o[u + 2] * 2;\n if (i[0] = n[h], i[1] = n[h + 1], i[2] = n[f], i[3] = n[f + 1], i[4] = n[l], i[5] = n[l + 1], fh.contains(Lo.x, Lo.y))\n return !0;\n }\n return !1;\n }, t.prototype.destroy = function(e) {\n r.prototype.destroy.call(this, e), this._cachedTexture && (this._cachedTexture.destroy(), this._cachedTexture = null), this.geometry = null, this.shader = null, this.state = null, this.uvs = null, this.indices = null, this.vertexData = null;\n }, t.BATCHABLE_SIZE = 100, t;\n }(xe)\n), Tx = `varying vec2 vTextureCoord;\nuniform vec4 uColor;\n\nuniform sampler2D uSampler;\n\nvoid main(void)\n{\n gl_FragColor = texture2D(uSampler, vTextureCoord) * uColor;\n}\n`, wx = `attribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\nuniform mat3 translationMatrix;\nuniform mat3 uTextureMatrix;\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 = (uTextureMatrix * vec3(aTextureCoord, 1.0)).xy;\n}\n`, Pn = (\n /** @class */\n function(r) {\n hs(t, r);\n function t(e, n) {\n var i = this, o = {\n uSampler: e,\n alpha: 1,\n uTextureMatrix: Dt.IDENTITY,\n uColor: new Float32Array([1, 1, 1, 1])\n };\n return n = Object.assign({\n tint: 16777215,\n alpha: 1,\n pluginName: \"batch\"\n }, n), n.uniforms && Object.assign(o, n.uniforms), i = r.call(this, n.program || Dn.from(wx, Tx), o) || this, i._colorDirty = !1, i.uvMatrix = new ss(e), i.batchable = n.program === void 0, i.pluginName = n.pluginName, i.tint = n.tint, i.alpha = n.alpha, i;\n }\n return Object.defineProperty(t.prototype, \"texture\", {\n /** Reference to the texture being rendered. */\n get: function() {\n return this.uniforms.uSampler;\n },\n set: function(e) {\n this.uniforms.uSampler !== e && (!this.uniforms.uSampler.baseTexture.alphaMode != !e.baseTexture.alphaMode && (this._colorDirty = !0), this.uniforms.uSampler = e, this.uvMatrix.texture = e);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"alpha\", {\n get: function() {\n return this._alpha;\n },\n /**\n * This gets automatically set by the object using this.\n * @default 1\n */\n set: function(e) {\n e !== this._alpha && (this._alpha = e, this._colorDirty = !0);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"tint\", {\n get: function() {\n return this._tint;\n },\n /**\n * Multiply tint for the material.\n * @default 0xFFFFFF\n */\n set: function(e) {\n e !== this._tint && (this._tint = e, this._tintRGB = (e >> 16) + (e & 65280) + ((e & 255) << 16), this._colorDirty = !0);\n },\n enumerable: !1,\n configurable: !0\n }), t.prototype.update = function() {\n if (this._colorDirty) {\n this._colorDirty = !1;\n var e = this.texture.baseTexture;\n Al(this._tint, this._alpha, this.uniforms.uColor, e.alphaMode);\n }\n this.uvMatrix.update() && (this.uniforms.uTextureMatrix = this.uvMatrix.mapCoord);\n }, t;\n }(Ue)\n), Yi = (\n /** @class */\n function(r) {\n hs(t, r);\n function t(e, n, i) {\n var o = r.call(this) || this, a = new Mt(e), s = new Mt(n, !0), u = new Mt(i, !0, !0);\n return o.addAttribute(\"aVertexPosition\", a, 2, !1, j.FLOAT).addAttribute(\"aTextureCoord\", s, 2, !1, j.FLOAT).addIndex(u), o._updateId = -1, o;\n }\n return Object.defineProperty(t.prototype, \"vertexDirtyId\", {\n /**\n * If the vertex position is updated.\n * @readonly\n * @private\n */\n get: function() {\n return this.buffers[0]._updateID;\n },\n enumerable: !1,\n configurable: !0\n }), t;\n }(Mn)\n);\n/*!\n * @pixi/text-bitmap - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/text-bitmap is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\n/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\nvar Oa = function(r, t) {\n return Oa = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(e, n) {\n e.__proto__ = n;\n } || function(e, n) {\n for (var i in n)\n n.hasOwnProperty(i) && (e[i] = n[i]);\n }, Oa(r, t);\n};\nfunction Sx(r, t) {\n Oa(r, t);\n function e() {\n this.constructor = r;\n }\n r.prototype = t === null ? Object.create(t) : (e.prototype = t.prototype, new e());\n}\nvar Gi = (\n /** @class */\n function() {\n function r() {\n this.info = [], this.common = [], this.page = [], this.char = [], this.kerning = [], this.distanceField = [];\n }\n return r;\n }()\n), Ax = (\n /** @class */\n function() {\n function r() {\n }\n return r.test = function(t) {\n return typeof t == \"string\" && t.indexOf(\"info face=\") === 0;\n }, r.parse = function(t) {\n var e = t.match(/^[a-z]+\\s+.+$/gm), n = {\n info: [],\n common: [],\n page: [],\n char: [],\n chars: [],\n kerning: [],\n kernings: [],\n distanceField: []\n };\n for (var i in e) {\n var o = e[i].match(/^[a-z]+/gm)[0], a = e[i].match(/[a-zA-Z]+=([^\\s\"']+|\"([^\"]*)\")/gm), s = {};\n for (var u in a) {\n var h = a[u].split(\"=\"), f = h[0], l = h[1].replace(/\"/gm, \"\"), c = parseFloat(l), d = isNaN(c) ? l : c;\n s[f] = d;\n }\n n[o].push(s);\n }\n var p = new Gi();\n return n.info.forEach(function(v) {\n return p.info.push({\n face: v.face,\n size: parseInt(v.size, 10)\n });\n }), n.common.forEach(function(v) {\n return p.common.push({\n lineHeight: parseInt(v.lineHeight, 10)\n });\n }), n.page.forEach(function(v) {\n return p.page.push({\n id: parseInt(v.id, 10),\n file: v.file\n });\n }), n.char.forEach(function(v) {\n return p.char.push({\n id: parseInt(v.id, 10),\n page: parseInt(v.page, 10),\n x: parseInt(v.x, 10),\n y: parseInt(v.y, 10),\n width: parseInt(v.width, 10),\n height: parseInt(v.height, 10),\n xoffset: parseInt(v.xoffset, 10),\n yoffset: parseInt(v.yoffset, 10),\n xadvance: parseInt(v.xadvance, 10)\n });\n }), n.kerning.forEach(function(v) {\n return p.kerning.push({\n first: parseInt(v.first, 10),\n second: parseInt(v.second, 10),\n amount: parseInt(v.amount, 10)\n });\n }), n.distanceField.forEach(function(v) {\n return p.distanceField.push({\n distanceRange: parseInt(v.distanceRange, 10),\n fieldType: v.fieldType\n });\n }), p;\n }, r;\n }()\n), Ra = (\n /** @class */\n function() {\n function r() {\n }\n return r.test = function(t) {\n return t instanceof XMLDocument && t.getElementsByTagName(\"page\").length && t.getElementsByTagName(\"info\")[0].getAttribute(\"face\") !== null;\n }, r.parse = function(t) {\n for (var e = new Gi(), n = t.getElementsByTagName(\"info\"), i = t.getElementsByTagName(\"common\"), o = t.getElementsByTagName(\"page\"), a = t.getElementsByTagName(\"char\"), s = t.getElementsByTagName(\"kerning\"), u = t.getElementsByTagName(\"distanceField\"), h = 0; h < n.length; h++)\n e.info.push({\n face: n[h].getAttribute(\"face\"),\n size: parseInt(n[h].getAttribute(\"size\"), 10)\n });\n for (var h = 0; h < i.length; h++)\n e.common.push({\n lineHeight: parseInt(i[h].getAttribute(\"lineHeight\"), 10)\n });\n for (var h = 0; h < o.length; h++)\n e.page.push({\n id: parseInt(o[h].getAttribute(\"id\"), 10) || 0,\n file: o[h].getAttribute(\"file\")\n });\n for (var h = 0; h < a.length; h++) {\n var f = a[h];\n e.char.push({\n id: parseInt(f.getAttribute(\"id\"), 10),\n page: parseInt(f.getAttribute(\"page\"), 10) || 0,\n x: parseInt(f.getAttribute(\"x\"), 10),\n y: parseInt(f.getAttribute(\"y\"), 10),\n width: parseInt(f.getAttribute(\"width\"), 10),\n height: parseInt(f.getAttribute(\"height\"), 10),\n xoffset: parseInt(f.getAttribute(\"xoffset\"), 10),\n yoffset: parseInt(f.getAttribute(\"yoffset\"), 10),\n xadvance: parseInt(f.getAttribute(\"xadvance\"), 10)\n });\n }\n for (var h = 0; h < s.length; h++)\n e.kerning.push({\n first: parseInt(s[h].getAttribute(\"first\"), 10),\n second: parseInt(s[h].getAttribute(\"second\"), 10),\n amount: parseInt(s[h].getAttribute(\"amount\"), 10)\n });\n for (var h = 0; h < u.length; h++)\n e.distanceField.push({\n fieldType: u[h].getAttribute(\"fieldType\"),\n distanceRange: parseInt(u[h].getAttribute(\"distanceRange\"), 10)\n });\n return e;\n }, r;\n }()\n), Px = (\n /** @class */\n function() {\n function r() {\n }\n return r.test = function(t) {\n if (typeof t == \"string\" && t.indexOf(\"<font>\") > -1) {\n var e = new globalThis.DOMParser().parseFromString(t, \"text/xml\");\n return Ra.test(e);\n }\n return !1;\n }, r.parse = function(t) {\n var e = new globalThis.DOMParser().parseFromString(t, \"text/xml\");\n return Ra.parse(e);\n }, r;\n }()\n), Uo = [\n Ax,\n Ra,\n Px\n];\nfunction nf(r) {\n for (var t = 0; t < Uo.length; t++)\n if (Uo[t].test(r))\n return Uo[t];\n return null;\n}\nfunction Ox(r, t, e, n, i, o) {\n var a = e.fill;\n if (Array.isArray(a)) {\n if (a.length === 1)\n return a[0];\n } else\n return a;\n var s, u = e.dropShadow ? e.dropShadowDistance : 0, h = e.padding || 0, f = r.width / n - u - h * 2, l = r.height / n - u - h * 2, c = a.slice(), d = e.fillGradientStops.slice();\n if (!d.length)\n for (var p = c.length + 1, v = 1; v < p; ++v)\n d.push(v / p);\n if (c.unshift(a[0]), d.unshift(0), c.push(a[a.length - 1]), d.push(1), e.fillGradientType === Sn.LINEAR_VERTICAL) {\n s = t.createLinearGradient(f / 2, h, f / 2, l + h);\n for (var _ = 0, g = o.fontProperties.fontSize + e.strokeThickness, m = g / l, v = 0; v < i.length; v++)\n for (var y = o.lineHeight * v, T = 0; T < c.length; T++) {\n var x = 0;\n typeof d[T] == \"number\" ? x = d[T] : x = T / c.length;\n var w = y / l + x * m, S = Math.max(_, w);\n S = Math.min(S, 1), s.addColorStop(S, c[T]), _ = S;\n }\n } else {\n s = t.createLinearGradient(h, l / 2, f + h, l / 2);\n for (var I = c.length + 1, O = 1, v = 0; v < c.length; v++) {\n var b = void 0;\n typeof d[v] == \"number\" ? b = d[v] : b = O / I, s.addColorStop(b, c[v]), O++;\n }\n }\n return s;\n}\nfunction Rx(r, t, e, n, i, o, a) {\n var s = e.text, u = e.fontProperties;\n t.translate(n, i), t.scale(o, o);\n var h = a.strokeThickness / 2, f = -(a.strokeThickness / 2);\n if (t.font = a.toFontString(), t.lineWidth = a.strokeThickness, t.textBaseline = a.textBaseline, t.lineJoin = a.lineJoin, t.miterLimit = a.miterLimit, t.fillStyle = Ox(r, t, a, o, [s], e), t.strokeStyle = a.stroke, a.dropShadow) {\n var l = a.dropShadowColor, c = Yr(typeof l == \"number\" ? l : En(l)), d = a.dropShadowBlur * o, p = a.dropShadowDistance * o;\n t.shadowColor = \"rgba(\" + c[0] * 255 + \",\" + c[1] * 255 + \",\" + c[2] * 255 + \",\" + a.dropShadowAlpha + \")\", t.shadowBlur = d, t.shadowOffsetX = Math.cos(a.dropShadowAngle) * p, t.shadowOffsetY = Math.sin(a.dropShadowAngle) * p;\n } else\n t.shadowColor = \"black\", t.shadowBlur = 0, t.shadowOffsetX = 0, t.shadowOffsetY = 0;\n a.stroke && a.strokeThickness && t.strokeText(s, h, f + e.lineHeight - u.descent), a.fill && t.fillText(s, h, f + e.lineHeight - u.descent), t.setTransform(1, 0, 0, 1, 0, 0), t.fillStyle = \"rgba(0, 0, 0, 0)\";\n}\nfunction of(r) {\n return Array.from ? Array.from(r) : r.split(\"\");\n}\nfunction Ix(r) {\n typeof r == \"string\" && (r = [r]);\n for (var t = [], e = 0, n = r.length; e < n; e++) {\n var i = r[e];\n if (Array.isArray(i)) {\n if (i.length !== 2)\n throw new Error(\"[BitmapFont]: Invalid character range length, expecting 2 got \" + i.length + \".\");\n var o = i[0].charCodeAt(0), a = i[1].charCodeAt(0);\n if (a < o)\n throw new Error(\"[BitmapFont]: Invalid character range.\");\n for (var s = o, u = a; s <= u; s++)\n t.push(String.fromCharCode(s));\n } else\n t.push.apply(t, of(i));\n }\n if (t.length === 0)\n throw new Error(\"[BitmapFont]: Empty set when resolving characters.\");\n return t;\n}\nfunction yi(r) {\n return r.codePointAt ? r.codePointAt(0) : r.charCodeAt(0);\n}\nvar Fe = (\n /** @class */\n function() {\n function r(t, e, n) {\n var i, o, a = t.info[0], s = t.common[0], u = t.page[0], h = t.distanceField[0], f = Di(u.file), l = {};\n this._ownsTextures = n, this.font = a.face, this.size = a.size, this.lineHeight = s.lineHeight / f, this.chars = {}, this.pageTextures = l;\n for (var c = 0; c < t.page.length; c++) {\n var d = t.page[c], p = d.id, v = d.file;\n l[p] = e instanceof Array ? e[c] : e[v], h != null && h.fieldType && h.fieldType !== \"none\" && (l[p].baseTexture.alphaMode = fe.NO_PREMULTIPLIED_ALPHA, l[p].baseTexture.mipmap = le.OFF);\n }\n for (var c = 0; c < t.char.length; c++) {\n var _ = t.char[c], p = _.id, g = _.page, m = t.char[c], y = m.x, T = m.y, x = m.width, w = m.height, S = m.xoffset, I = m.yoffset, O = m.xadvance;\n y /= f, T /= f, x /= f, w /= f, S /= f, I /= f, O /= f;\n var b = new ht(y + l[g].frame.x / f, T + l[g].frame.y / f, x, w);\n this.chars[p] = {\n xOffset: S,\n yOffset: I,\n xAdvance: O,\n kerning: {},\n texture: new J(l[g].baseTexture, b),\n page: g\n };\n }\n for (var c = 0; c < t.kerning.length; c++) {\n var P = t.kerning[c], A = P.first, R = P.second, M = P.amount;\n A /= f, R /= f, M /= f, this.chars[R] && (this.chars[R].kerning[A] = M);\n }\n this.distanceFieldRange = h == null ? void 0 : h.distanceRange, this.distanceFieldType = (o = (i = h == null ? void 0 : h.fieldType) === null || i === void 0 ? void 0 : i.toLowerCase()) !== null && o !== void 0 ? o : \"none\";\n }\n return r.prototype.destroy = function() {\n for (var t in this.chars)\n this.chars[t].texture.destroy(), this.chars[t].texture = null;\n for (var t in this.pageTextures)\n this._ownsTextures && this.pageTextures[t].destroy(!0), this.pageTextures[t] = null;\n this.chars = null, this.pageTextures = null;\n }, r.install = function(t, e, n) {\n var i;\n if (t instanceof Gi)\n i = t;\n else {\n var o = nf(t);\n if (!o)\n throw new Error(\"Unrecognized data format for font.\");\n i = o.parse(t);\n }\n e instanceof J && (e = [e]);\n var a = new r(i, e, n);\n return r.available[a.font] = a, a;\n }, r.uninstall = function(t) {\n var e = r.available[t];\n if (!e)\n throw new Error(\"No font found named '\" + t + \"'\");\n e.destroy(), delete r.available[t];\n }, r.from = function(t, e, n) {\n if (!t)\n throw new Error(\"[BitmapFont] Property `name` is required.\");\n var i = Object.assign({}, r.defaultOptions, n), o = i.chars, a = i.padding, s = i.resolution, u = i.textureWidth, h = i.textureHeight, f = Ix(o), l = e instanceof zr ? e : new zr(e), c = u, d = new Gi();\n d.info[0] = {\n face: l.fontFamily,\n size: l.fontSize\n }, d.common[0] = {\n lineHeight: l.fontSize\n };\n for (var p = 0, v = 0, _, g, m, y = 0, T = [], x = 0; x < f.length; x++) {\n _ || (_ = k.ADAPTER.createCanvas(), _.width = u, _.height = h, g = _.getContext(\"2d\"), m = new ut(_, { resolution: s }), T.push(new J(m)), d.page.push({\n id: T.length - 1,\n file: \"\"\n }));\n var w = f[x], S = Te.measureText(w, l, !1, _), I = S.width, O = Math.ceil(S.height), b = Math.ceil((l.fontStyle === \"italic\" ? 2 : 1) * I);\n if (v >= h - O * s) {\n if (v === 0)\n throw new Error(\"[BitmapFont] textureHeight \" + h + \"px is too small \" + (\"(fontFamily: '\" + l.fontFamily + \"', fontSize: \" + l.fontSize + \"px, char: '\" + w + \"')\"));\n --x, _ = null, g = null, m = null, v = 0, p = 0, y = 0;\n continue;\n }\n if (y = Math.max(O + S.fontProperties.descent, y), b * s + p >= c) {\n if (p === 0)\n throw new Error(\"[BitmapFont] textureWidth \" + u + \"px is too small \" + (\"(fontFamily: '\" + l.fontFamily + \"', fontSize: \" + l.fontSize + \"px, char: '\" + w + \"')\"));\n --x, v += y * s, v = Math.ceil(v), p = 0, y = 0;\n continue;\n }\n Rx(_, g, S, p, v, s, l);\n var P = yi(S.text);\n d.char.push({\n id: P,\n page: T.length - 1,\n x: p / s,\n y: v / s,\n width: b,\n height: O,\n xoffset: 0,\n yoffset: 0,\n xadvance: Math.ceil(I - (l.dropShadow ? l.dropShadowDistance : 0) - (l.stroke ? l.strokeThickness : 0))\n }), p += (b + 2 * a) * s, p = Math.ceil(p);\n }\n if (!(n != null && n.skipKerning))\n for (var x = 0, A = f.length; x < A; x++)\n for (var R = f[x], M = 0; M < A; M++) {\n var D = f[M], B = g.measureText(R).width, X = g.measureText(D).width, $ = g.measureText(R + D).width, Q = $ - (B + X);\n Q && d.kerning.push({\n first: yi(R),\n second: yi(D),\n amount: Q\n });\n }\n var U = new r(d, T, !0);\n return r.available[t] !== void 0 && r.uninstall(t), r.available[t] = U, U;\n }, r.ALPHA = [[\"a\", \"z\"], [\"A\", \"Z\"], \" \"], r.NUMERIC = [[\"0\", \"9\"]], r.ALPHANUMERIC = [[\"a\", \"z\"], [\"A\", \"Z\"], [\"0\", \"9\"], \" \"], r.ASCII = [[\" \", \"~\"]], r.defaultOptions = {\n resolution: 1,\n textureWidth: 512,\n textureHeight: 512,\n padding: 4,\n chars: r.ALPHANUMERIC\n }, r.available = {}, r;\n }()\n), Cx = `// Pixi texture info\\r\nvarying vec2 vTextureCoord;\\r\nuniform sampler2D uSampler;\\r\n\\r\n// Tint\\r\nuniform vec4 uColor;\\r\n\\r\n// on 2D applications fwidth is screenScale / glyphAtlasScale * distanceFieldRange\\r\nuniform float uFWidth;\\r\n\\r\nvoid main(void) {\\r\n\\r\n // To stack MSDF and SDF we need a non-pre-multiplied-alpha texture.\\r\n vec4 texColor = texture2D(uSampler, vTextureCoord);\\r\n\\r\n // MSDF\\r\n float median = texColor.r + texColor.g + texColor.b -\\r\n min(texColor.r, min(texColor.g, texColor.b)) -\\r\n max(texColor.r, max(texColor.g, texColor.b));\\r\n // SDF\\r\n median = min(median, texColor.a);\\r\n\\r\n float screenPxDistance = uFWidth * (median - 0.5);\\r\n float alpha = clamp(screenPxDistance + 0.5, 0.0, 1.0);\\r\n if (median < 0.01) {\\r\n alpha = 0.0;\\r\n } else if (median > 0.99) {\\r\n alpha = 1.0;\\r\n }\\r\n\\r\n // NPM Textures, NPM outputs\\r\n gl_FragColor = vec4(uColor.rgb, uColor.a * alpha);\\r\n\\r\n}\\r\n`, Mx = `// Mesh material default fragment\\r\nattribute vec2 aVertexPosition;\\r\nattribute vec2 aTextureCoord;\\r\n\\r\nuniform mat3 projectionMatrix;\\r\nuniform mat3 translationMatrix;\\r\nuniform mat3 uTextureMatrix;\\r\n\\r\nvarying vec2 vTextureCoord;\\r\n\\r\nvoid main(void)\\r\n{\\r\n gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\\r\n\\r\n vTextureCoord = (uTextureMatrix * vec3(aTextureCoord, 1.0)).xy;\\r\n}\\r\n`, ch = [], dh = [], ph = [];\n(function(r) {\n Sx(t, r);\n function t(e, n) {\n n === void 0 && (n = {});\n var i = r.call(this) || this;\n i._tint = 16777215;\n var o = Object.assign({}, t.styleDefaults, n), a = o.align, s = o.tint, u = o.maxWidth, h = o.letterSpacing, f = o.fontName, l = o.fontSize;\n if (!Fe.available[f])\n throw new Error('Missing BitmapFont \"' + f + '\"');\n return i._activePagesMeshData = [], i._textWidth = 0, i._textHeight = 0, i._align = a, i._tint = s, i._font = void 0, i._fontName = f, i._fontSize = l, i.text = e, i._maxWidth = u, i._maxLineHeight = 0, i._letterSpacing = h, i._anchor = new Mr(function() {\n i.dirty = !0;\n }, i, 0, 0), i._roundPixels = k.ROUND_PIXELS, i.dirty = !0, i._resolution = k.RESOLUTION, i._autoResolution = !0, i._textureCache = {}, i;\n }\n return t.prototype.updateText = function() {\n for (var e, n = Fe.available[this._fontName], i = this.fontSize, o = i / n.size, a = new Tt(), s = [], u = [], h = [], f = this._text.replace(/(?:\\r\\n|\\r)/g, `\n`) || \" \", l = of(f), c = this._maxWidth * n.size / i, d = n.distanceFieldType === \"none\" ? ch : dh, p = null, v = 0, _ = 0, g = 0, m = -1, y = 0, T = 0, x = 0, w = 0, S = 0; S < l.length; S++) {\n var I = l[S], O = yi(I);\n if (/(?:\\s)/.test(I) && (m = S, y = v, w++), I === \"\\r\" || I === `\n`) {\n u.push(v), h.push(-1), _ = Math.max(_, v), ++g, ++T, a.x = 0, a.y += n.lineHeight, p = null, w = 0;\n continue;\n }\n var b = n.chars[O];\n if (b) {\n p && b.kerning[p] && (a.x += b.kerning[p]);\n var P = ph.pop() || {\n texture: J.EMPTY,\n line: 0,\n charCode: 0,\n prevSpaces: 0,\n position: new Tt()\n };\n P.texture = b.texture, P.line = g, P.charCode = O, P.position.x = a.x + b.xOffset + this._letterSpacing / 2, P.position.y = a.y + b.yOffset, P.prevSpaces = w, s.push(P), v = P.position.x + Math.max(b.xAdvance - b.xOffset, b.texture.orig.width), a.x += b.xAdvance + this._letterSpacing, x = Math.max(x, b.yOffset + b.texture.height), p = O, m !== -1 && c > 0 && a.x > c && (++T, Lr(s, 1 + m - T, 1 + S - m), S = m, m = -1, u.push(y), h.push(s.length > 0 ? s[s.length - 1].prevSpaces : 0), _ = Math.max(_, y), g++, a.x = 0, a.y += n.lineHeight, p = null, w = 0);\n }\n }\n var A = l[l.length - 1];\n A !== \"\\r\" && A !== `\n` && (/(?:\\s)/.test(A) && (v = y), u.push(v), _ = Math.max(_, v), h.push(-1));\n for (var R = [], S = 0; S <= g; S++) {\n var M = 0;\n this._align === \"right\" ? M = _ - u[S] : this._align === \"center\" ? M = (_ - u[S]) / 2 : this._align === \"justify\" && (M = h[S] < 0 ? 0 : (_ - u[S]) / h[S]), R.push(M);\n }\n var D = s.length, B = {}, X = [], $ = this._activePagesMeshData;\n d.push.apply(d, $);\n for (var S = 0; S < D; S++) {\n var Q = s[S].texture, U = Q.baseTexture.uid;\n if (!B[U]) {\n var L = d.pop();\n if (!L) {\n var H = new Yi(), tt = void 0, et = void 0;\n n.distanceFieldType === \"none\" ? (tt = new Pn(J.EMPTY), et = V.NORMAL) : (tt = new Pn(J.EMPTY, { program: Dn.from(Mx, Cx), uniforms: { uFWidth: 0 } }), et = V.NORMAL_NPM);\n var pt = new An(H, tt);\n pt.blendMode = et, L = {\n index: 0,\n indexCount: 0,\n vertexCount: 0,\n uvsCount: 0,\n total: 0,\n mesh: pt,\n vertices: null,\n uvs: null,\n indices: null\n };\n }\n L.index = 0, L.indexCount = 0, L.vertexCount = 0, L.uvsCount = 0, L.total = 0;\n var Y = this._textureCache;\n Y[U] = Y[U] || new J(Q.baseTexture), L.mesh.texture = Y[U], L.mesh.tint = this._tint, X.push(L), B[U] = L;\n }\n B[U].total++;\n }\n for (var S = 0; S < $.length; S++)\n X.indexOf($[S]) === -1 && this.removeChild($[S].mesh);\n for (var S = 0; S < X.length; S++)\n X[S].mesh.parent !== this && this.addChild(X[S].mesh);\n this._activePagesMeshData = X;\n for (var S in B) {\n var L = B[S], st = L.total;\n if (!(((e = L.indices) === null || e === void 0 ? void 0 : e.length) > 6 * st) || L.vertices.length < An.BATCHABLE_SIZE * 2)\n L.vertices = new Float32Array(4 * 2 * st), L.uvs = new Float32Array(4 * 2 * st), L.indices = new Uint16Array(6 * st);\n else\n for (var _t = L.total, Et = L.vertices, q = _t * 4 * 2; q < Et.length; q++)\n Et[q] = 0;\n L.mesh.size = 6 * st;\n }\n for (var S = 0; S < D; S++) {\n var I = s[S], it = I.position.x + R[I.line] * (this._align === \"justify\" ? I.prevSpaces : 1);\n this._roundPixels && (it = Math.round(it));\n var at = it * o, ft = I.position.y * o, Q = I.texture, nt = B[Q.baseTexture.uid], N = Q.frame, C = Q._uvs, dt = nt.index++;\n nt.indices[dt * 6 + 0] = 0 + dt * 4, nt.indices[dt * 6 + 1] = 1 + dt * 4, nt.indices[dt * 6 + 2] = 2 + dt * 4, nt.indices[dt * 6 + 3] = 0 + dt * 4, nt.indices[dt * 6 + 4] = 2 + dt * 4, nt.indices[dt * 6 + 5] = 3 + dt * 4, nt.vertices[dt * 8 + 0] = at, nt.vertices[dt * 8 + 1] = ft, nt.vertices[dt * 8 + 2] = at + N.width * o, nt.vertices[dt * 8 + 3] = ft, nt.vertices[dt * 8 + 4] = at + N.width * o, nt.vertices[dt * 8 + 5] = ft + N.height * o, nt.vertices[dt * 8 + 6] = at, nt.vertices[dt * 8 + 7] = ft + N.height * o, nt.uvs[dt * 8 + 0] = C.x0, nt.uvs[dt * 8 + 1] = C.y0, nt.uvs[dt * 8 + 2] = C.x1, nt.uvs[dt * 8 + 3] = C.y1, nt.uvs[dt * 8 + 4] = C.x2, nt.uvs[dt * 8 + 5] = C.y2, nt.uvs[dt * 8 + 6] = C.x3, nt.uvs[dt * 8 + 7] = C.y3;\n }\n this._textWidth = _ * o, this._textHeight = (a.y + n.lineHeight) * o;\n for (var S in B) {\n var L = B[S];\n if (this.anchor.x !== 0 || this.anchor.y !== 0)\n for (var pe = 0, vr = this._textWidth * this.anchor.x, Bn = this._textHeight * this.anchor.y, gs = 0; gs < L.total; gs++)\n L.vertices[pe++] -= vr, L.vertices[pe++] -= Bn, L.vertices[pe++] -= vr, L.vertices[pe++] -= Bn, L.vertices[pe++] -= vr, L.vertices[pe++] -= Bn, L.vertices[pe++] -= vr, L.vertices[pe++] -= Bn;\n this._maxLineHeight = x * o;\n var ys = L.mesh.geometry.getBuffer(\"aVertexPosition\"), bs = L.mesh.geometry.getBuffer(\"aTextureCoord\"), xs = L.mesh.geometry.getIndex();\n ys.data = L.vertices, bs.data = L.uvs, xs.data = L.indices, ys.update(), bs.update(), xs.update();\n }\n for (var S = 0; S < s.length; S++)\n ph.push(s[S]);\n this._font = n, this.dirty = !1;\n }, t.prototype.updateTransform = function() {\n this.validate(), this.containerUpdateTransform();\n }, t.prototype._render = function(e) {\n this._autoResolution && this._resolution !== e.resolution && (this._resolution = e.resolution, this.dirty = !0);\n var n = Fe.available[this._fontName], i = n.distanceFieldRange, o = n.distanceFieldType, a = n.size;\n if (o !== \"none\")\n for (var s = this.worldTransform, u = s.a, h = s.b, f = s.c, l = s.d, c = Math.sqrt(u * u + h * h), d = Math.sqrt(f * f + l * l), p = (Math.abs(c) + Math.abs(d)) / 2, v = this.fontSize / a, _ = 0, g = this._activePagesMeshData; _ < g.length; _++) {\n var m = g[_];\n m.mesh.shader.uniforms.uFWidth = p * i * v * this._resolution;\n }\n r.prototype._render.call(this, e);\n }, t.prototype.getLocalBounds = function() {\n return this.validate(), r.prototype.getLocalBounds.call(this);\n }, t.prototype.validate = function() {\n var e = Fe.available[this._fontName];\n if (!e)\n throw new Error('Missing BitmapFont \"' + this._fontName + '\"');\n this._font !== e && (this.dirty = !0), this.dirty && this.updateText();\n }, Object.defineProperty(t.prototype, \"tint\", {\n /**\n * The tint of the BitmapText object.\n * @default 0xffffff\n */\n get: function() {\n return this._tint;\n },\n set: function(e) {\n if (this._tint !== e) {\n this._tint = e;\n for (var n = 0; n < this._activePagesMeshData.length; n++)\n this._activePagesMeshData[n].mesh.tint = e;\n }\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"align\", {\n /**\n * The alignment of the BitmapText object.\n * @member {string}\n * @default 'left'\n */\n get: function() {\n return this._align;\n },\n set: function(e) {\n this._align !== e && (this._align = e, this.dirty = !0);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"fontName\", {\n /** The name of the BitmapFont. */\n get: function() {\n return this._fontName;\n },\n set: function(e) {\n if (!Fe.available[e])\n throw new Error('Missing BitmapFont \"' + e + '\"');\n this._fontName !== e && (this._fontName = e, this.dirty = !0);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"fontSize\", {\n /** The size of the font to display. */\n get: function() {\n var e;\n return (e = this._fontSize) !== null && e !== void 0 ? e : Fe.available[this._fontName].size;\n },\n set: function(e) {\n this._fontSize !== e && (this._fontSize = e, this.dirty = !0);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"anchor\", {\n /**\n * The anchor sets the origin point of the text.\n *\n * The default is `(0,0)`, this means the text's origin is the top left.\n *\n * Setting the anchor to `(0.5,0.5)` means the text's origin is centered.\n *\n * Setting the anchor to `(1,1)` would mean the text's origin point will be the bottom right corner.\n */\n get: function() {\n return this._anchor;\n },\n set: function(e) {\n typeof e == \"number\" ? this._anchor.set(e) : this._anchor.copyFrom(e);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"text\", {\n /** The text of the BitmapText object. */\n get: function() {\n return this._text;\n },\n set: function(e) {\n e = String(e ?? \"\"), this._text !== e && (this._text = e, this.dirty = !0);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"maxWidth\", {\n /**\n * The max width of this bitmap text in pixels. If the text provided is longer than the\n * value provided, line breaks will be automatically inserted in the last whitespace.\n * Disable by setting the value to 0.\n */\n get: function() {\n return this._maxWidth;\n },\n set: function(e) {\n this._maxWidth !== e && (this._maxWidth = e, this.dirty = !0);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"maxLineHeight\", {\n /**\n * The max line height. This is useful when trying to use the total height of the Text,\n * i.e. when trying to vertically align.\n * @readonly\n */\n get: function() {\n return this.validate(), this._maxLineHeight;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"textWidth\", {\n /**\n * The width of the overall text, different from fontSize,\n * which is defined in the style object.\n * @readonly\n */\n get: function() {\n return this.validate(), this._textWidth;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"letterSpacing\", {\n /** Additional space between characters. */\n get: function() {\n return this._letterSpacing;\n },\n set: function(e) {\n this._letterSpacing !== e && (this._letterSpacing = e, this.dirty = !0);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"roundPixels\", {\n /**\n * If true PixiJS will Math.floor() x/y values when rendering, stopping pixel interpolation.\n * Advantages can include sharper image quality (like text) and faster rendering on canvas.\n * The main disadvantage is movement of objects may appear less smooth.\n * To set the global default, change {@link PIXI.settings.ROUND_PIXELS}\n * @default PIXI.settings.ROUND_PIXELS\n */\n get: function() {\n return this._roundPixels;\n },\n set: function(e) {\n e !== this._roundPixels && (this._roundPixels = e, this.dirty = !0);\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"textHeight\", {\n /**\n * The height of the overall text, different from fontSize,\n * which is defined in the style object.\n * @readonly\n */\n get: function() {\n return this.validate(), this._textHeight;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"resolution\", {\n /**\n * The resolution / device pixel ratio of the canvas.\n *\n * This is set to automatically match the renderer resolution by default, but can be overridden by setting manually.\n * @default 1\n */\n get: function() {\n return this._resolution;\n },\n set: function(e) {\n this._autoResolution = !1, this._resolution !== e && (this._resolution = e, this.dirty = !0);\n },\n enumerable: !1,\n configurable: !0\n }), t.prototype.destroy = function(e) {\n var n = this._textureCache, i = Fe.available[this._fontName], o = i.distanceFieldType === \"none\" ? ch : dh;\n o.push.apply(o, this._activePagesMeshData);\n for (var a = 0, s = this._activePagesMeshData; a < s.length; a++) {\n var u = s[a];\n this.removeChild(u.mesh);\n }\n this._activePagesMeshData = [], o.filter(function(l) {\n return n[l.mesh.texture.baseTexture.uid];\n }).forEach(function(l) {\n l.mesh.texture = J.EMPTY;\n });\n for (var h in n) {\n var f = n[h];\n f.destroy(), delete n[h];\n }\n this._font = null, this._textureCache = null, r.prototype.destroy.call(this, e);\n }, t.styleDefaults = {\n align: \"left\",\n tint: 16777215,\n maxWidth: 0,\n letterSpacing: 0\n }, t;\n})(xe);\nvar Dx = (\n /** @class */\n function() {\n function r() {\n }\n return r.add = function() {\n Rt.setExtensionXhrType(\"fnt\", Rt.XHR_RESPONSE_TYPE.TEXT);\n }, r.use = function(t, e) {\n var n = nf(t.data);\n if (!n) {\n e();\n return;\n }\n for (var i = r.getBaseUrl(this, t), o = n.parse(t.data), a = {}, s = function(v) {\n a[v.metadata.pageFile] = v.texture, Object.keys(a).length === o.page.length && (t.bitmapFont = Fe.install(o, a, !0), e());\n }, u = 0; u < o.page.length; ++u) {\n var h = o.page[u].file, f = i + h, l = !1;\n for (var c in this.resources) {\n var d = this.resources[c];\n if (d.url === f) {\n d.metadata.pageFile = h, d.texture ? s(d) : d.onAfterMiddleware.add(s), l = !0;\n break;\n }\n }\n if (!l) {\n var p = {\n crossOrigin: t.crossOrigin,\n loadType: Rt.LOAD_TYPE.IMAGE,\n metadata: Object.assign({ pageFile: h }, t.metadata.imageMetadata),\n parentResource: t\n };\n this.add(f, p, s);\n }\n }\n }, r.getBaseUrl = function(t, e) {\n var n = e.isDataUrl ? \"\" : r.dirname(e.url);\n return e.isDataUrl && (n === \".\" && (n = \"\"), t.baseUrl && n && t.baseUrl.charAt(t.baseUrl.length - 1) === \"/\" && (n += \"/\")), n = n.replace(t.baseUrl, \"\"), n && n.charAt(n.length - 1) !== \"/\" && (n += \"/\"), n;\n }, r.dirname = function(t) {\n var e = t.replace(/\\\\/g, \"/\").replace(/\\/$/, \"\").replace(/\\/[^\\/]*$/, \"\");\n return e === t ? \".\" : e === \"\" ? \"/\" : e;\n }, r.extension = gt.Loader, r;\n }()\n);\n/*!\n * @pixi/filter-alpha - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/filter-alpha is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\n/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\nvar Ia = function(r, t) {\n return Ia = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(e, n) {\n e.__proto__ = n;\n } || function(e, n) {\n for (var i in n)\n n.hasOwnProperty(i) && (e[i] = n[i]);\n }, Ia(r, t);\n};\nfunction Fx(r, t) {\n Ia(r, t);\n function e() {\n this.constructor = r;\n }\n r.prototype = t === null ? Object.create(t) : (e.prototype = t.prototype, new e());\n}\nvar Bx = `varying vec2 vTextureCoord;\n\nuniform sampler2D uSampler;\nuniform float uAlpha;\n\nvoid main(void)\n{\n gl_FragColor = texture2D(uSampler, vTextureCoord) * uAlpha;\n}\n`;\n(function(r) {\n Fx(t, r);\n function t(e) {\n e === void 0 && (e = 1);\n var n = r.call(this, O0, Bx, { uAlpha: 1 }) || this;\n return n.alpha = e, n;\n }\n return Object.defineProperty(t.prototype, \"alpha\", {\n /**\n * Coefficient for alpha multiplication\n * @default 1\n */\n get: function() {\n return this.uniforms.uAlpha;\n },\n set: function(e) {\n this.uniforms.uAlpha = e;\n },\n enumerable: !1,\n configurable: !0\n }), t;\n})(Ve);\n/*!\n * @pixi/filter-blur - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/filter-blur is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\n/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\nvar Ca = function(r, t) {\n return Ca = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(e, n) {\n e.__proto__ = n;\n } || function(e, n) {\n for (var i in n)\n n.hasOwnProperty(i) && (e[i] = n[i]);\n }, Ca(r, t);\n};\nfunction af(r, t) {\n Ca(r, t);\n function e() {\n this.constructor = r;\n }\n r.prototype = t === null ? Object.create(t) : (e.prototype = t.prototype, new e());\n}\nvar Nx = `\n attribute vec2 aVertexPosition;\n\n uniform mat3 projectionMatrix;\n\n uniform float strength;\n\n varying vec2 vBlurTexCoords[%size%];\n\n uniform vec4 inputSize;\n uniform vec4 outputFrame;\n\n vec4 filterVertexPosition( void )\n {\n vec2 position = aVertexPosition * max(outputFrame.zw, vec2(0.)) + outputFrame.xy;\n\n return vec4((projectionMatrix * vec3(position, 1.0)).xy, 0.0, 1.0);\n }\n\n vec2 filterTextureCoord( void )\n {\n return aVertexPosition * (outputFrame.zw * inputSize.zw);\n }\n\n void main(void)\n {\n gl_Position = filterVertexPosition();\n\n vec2 textureCoord = filterTextureCoord();\n %blur%\n }`;\nfunction Lx(r, t) {\n var e = Math.ceil(r / 2), n = Nx, i = \"\", o;\n t ? o = \"vBlurTexCoords[%index%] = textureCoord + vec2(%sampleIndex% * strength, 0.0);\" : o = \"vBlurTexCoords[%index%] = textureCoord + vec2(0.0, %sampleIndex% * strength);\";\n for (var a = 0; a < r; a++) {\n var s = o.replace(\"%index%\", a.toString());\n s = s.replace(\"%sampleIndex%\", a - (e - 1) + \".0\"), i += s, i += `\n`;\n }\n return n = n.replace(\"%blur%\", i), n = n.replace(\"%size%\", r.toString()), n;\n}\nvar Ux = {\n 5: [0.153388, 0.221461, 0.250301],\n 7: [0.071303, 0.131514, 0.189879, 0.214607],\n 9: [0.028532, 0.067234, 0.124009, 0.179044, 0.20236],\n 11: [93e-4, 0.028002, 0.065984, 0.121703, 0.175713, 0.198596],\n 13: [2406e-6, 9255e-6, 0.027867, 0.065666, 0.121117, 0.174868, 0.197641],\n 15: [489e-6, 2403e-6, 9246e-6, 0.02784, 0.065602, 0.120999, 0.174697, 0.197448]\n}, Gx = [\n \"varying vec2 vBlurTexCoords[%size%];\",\n \"uniform sampler2D uSampler;\",\n \"void main(void)\",\n \"{\",\n \" gl_FragColor = vec4(0.0);\",\n \" %blur%\",\n \"}\"\n].join(`\n`);\nfunction kx(r) {\n for (var t = Ux[r], e = t.length, n = Gx, i = \"\", o = \"gl_FragColor += texture2D(uSampler, vBlurTexCoords[%index%]) * %value%;\", a, s = 0; s < r; s++) {\n var u = o.replace(\"%index%\", s.toString());\n a = s, s >= e && (a = r - s - 1), u = u.replace(\"%value%\", t[a].toString()), i += u, i += `\n`;\n }\n return n = n.replace(\"%blur%\", i), n = n.replace(\"%size%\", r.toString()), n;\n}\nvar vh = (\n /** @class */\n function(r) {\n af(t, r);\n function t(e, n, i, o, a) {\n n === void 0 && (n = 8), i === void 0 && (i = 4), o === void 0 && (o = k.FILTER_RESOLUTION), a === void 0 && (a = 5);\n var s = this, u = Lx(a, e), h = kx(a);\n return s = r.call(\n this,\n // vertex shader\n u,\n // fragment shader\n h\n ) || this, s.horizontal = e, s.resolution = o, s._quality = 0, s.quality = i, s.blur = n, s;\n }\n return t.prototype.apply = function(e, n, i, o) {\n if (i ? this.horizontal ? this.uniforms.strength = 1 / i.width * (i.width / n.width) : this.uniforms.strength = 1 / i.height * (i.height / n.height) : this.horizontal ? this.uniforms.strength = 1 / e.renderer.width * (e.renderer.width / n.width) : this.uniforms.strength = 1 / e.renderer.height * (e.renderer.height / n.height), this.uniforms.strength *= this.strength, this.uniforms.strength /= this.passes, this.passes === 1)\n e.applyFilter(this, n, i, o);\n else {\n var a = e.getFilterTexture(), s = e.renderer, u = n, h = a;\n this.state.blend = !1, e.applyFilter(this, u, h, ae.CLEAR);\n for (var f = 1; f < this.passes - 1; f++) {\n e.bindAndClear(u, ae.BLIT), this.uniforms.uSampler = h;\n var l = h;\n h = u, u = l, s.shader.bind(this), s.geometry.draw(5);\n }\n this.state.blend = !0, e.applyFilter(this, h, i, o), e.returnFilterTexture(a);\n }\n }, Object.defineProperty(t.prototype, \"blur\", {\n /**\n * Sets the strength of both the blur.\n * @default 16\n */\n get: function() {\n return this.strength;\n },\n set: function(e) {\n this.padding = 1 + Math.abs(e) * 2, this.strength = e;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"quality\", {\n /**\n * Sets the quality of the blur by modifying the number of passes. More passes means higher\n * quality bluring but the lower the performance.\n * @default 4\n */\n get: function() {\n return this._quality;\n },\n set: function(e) {\n this._quality = e, this.passes = e;\n },\n enumerable: !1,\n configurable: !0\n }), t;\n }(Ve)\n);\n(function(r) {\n af(t, r);\n function t(e, n, i, o) {\n e === void 0 && (e = 8), n === void 0 && (n = 4), i === void 0 && (i = k.FILTER_RESOLUTION), o === void 0 && (o = 5);\n var a = r.call(this) || this;\n return a.blurXFilter = new vh(!0, e, n, i, o), a.blurYFilter = new vh(!1, e, n, i, o), a.resolution = i, a.quality = n, a.blur = e, a.repeatEdgePixels = !1, a;\n }\n return t.prototype.apply = function(e, n, i, o) {\n var a = Math.abs(this.blurXFilter.strength), s = Math.abs(this.blurYFilter.strength);\n if (a && s) {\n var u = e.getFilterTexture();\n this.blurXFilter.apply(e, n, u, ae.CLEAR), this.blurYFilter.apply(e, u, i, o), e.returnFilterTexture(u);\n } else\n s ? this.blurYFilter.apply(e, n, i, o) : this.blurXFilter.apply(e, n, i, o);\n }, t.prototype.updatePadding = function() {\n this._repeatEdgePixels ? this.padding = 0 : this.padding = Math.max(Math.abs(this.blurXFilter.strength), Math.abs(this.blurYFilter.strength)) * 2;\n }, Object.defineProperty(t.prototype, \"blur\", {\n /**\n * Sets the strength of both the blurX and blurY properties simultaneously\n * @default 2\n */\n get: function() {\n return this.blurXFilter.blur;\n },\n set: function(e) {\n this.blurXFilter.blur = this.blurYFilter.blur = e, this.updatePadding();\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"quality\", {\n /**\n * Sets the number of passes for blur. More passes means higher quality bluring.\n * @default 1\n */\n get: function() {\n return this.blurXFilter.quality;\n },\n set: function(e) {\n this.blurXFilter.quality = this.blurYFilter.quality = e;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"blurX\", {\n /**\n * Sets the strength of the blurX property\n * @default 2\n */\n get: function() {\n return this.blurXFilter.blur;\n },\n set: function(e) {\n this.blurXFilter.blur = e, this.updatePadding();\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"blurY\", {\n /**\n * Sets the strength of the blurY property\n * @default 2\n */\n get: function() {\n return this.blurYFilter.blur;\n },\n set: function(e) {\n this.blurYFilter.blur = e, this.updatePadding();\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"blendMode\", {\n /**\n * Sets the blendmode of the filter\n * @default PIXI.BLEND_MODES.NORMAL\n */\n get: function() {\n return this.blurYFilter.blendMode;\n },\n set: function(e) {\n this.blurYFilter.blendMode = e;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"repeatEdgePixels\", {\n /**\n * If set to true the edge of the target will be clamped\n * @default false\n */\n get: function() {\n return this._repeatEdgePixels;\n },\n set: function(e) {\n this._repeatEdgePixels = e, this.updatePadding();\n },\n enumerable: !1,\n configurable: !0\n }), t;\n})(Ve);\n/*!\n * @pixi/filter-color-matrix - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/filter-color-matrix is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\n/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\nvar Ma = function(r, t) {\n return Ma = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(e, n) {\n e.__proto__ = n;\n } || function(e, n) {\n for (var i in n)\n n.hasOwnProperty(i) && (e[i] = n[i]);\n }, Ma(r, t);\n};\nfunction Hx(r, t) {\n Ma(r, t);\n function e() {\n this.constructor = r;\n }\n r.prototype = t === null ? Object.create(t) : (e.prototype = t.prototype, new e());\n}\nvar Xx = `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 > 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`, _h = (\n /** @class */\n function(r) {\n Hx(t, r);\n function t() {\n var e = this, n = {\n m: new Float32Array([\n 1,\n 0,\n 0,\n 0,\n 0,\n 0,\n 1,\n 0,\n 0,\n 0,\n 0,\n 0,\n 1,\n 0,\n 0,\n 0,\n 0,\n 0,\n 1,\n 0\n ]),\n uAlpha: 1\n };\n return e = r.call(this, Vl, Xx, n) || this, e.alpha = 1, e;\n }\n return t.prototype._loadMatrix = function(e, n) {\n n === void 0 && (n = !1);\n var i = e;\n n && (this._multiply(i, this.uniforms.m, e), i = this._colorMatrix(i)), this.uniforms.m = i;\n }, t.prototype._multiply = function(e, n, i) {\n return e[0] = n[0] * i[0] + n[1] * i[5] + n[2] * i[10] + n[3] * i[15], e[1] = n[0] * i[1] + n[1] * i[6] + n[2] * i[11] + n[3] * i[16], e[2] = n[0] * i[2] + n[1] * i[7] + n[2] * i[12] + n[3] * i[17], e[3] = n[0] * i[3] + n[1] * i[8] + n[2] * i[13] + n[3] * i[18], e[4] = n[0] * i[4] + n[1] * i[9] + n[2] * i[14] + n[3] * i[19] + n[4], e[5] = n[5] * i[0] + n[6] * i[5] + n[7] * i[10] + n[8] * i[15], e[6] = n[5] * i[1] + n[6] * i[6] + n[7] * i[11] + n[8] * i[16], e[7] = n[5] * i[2] + n[6] * i[7] + n[7] * i[12] + n[8] * i[17], e[8] = n[5] * i[3] + n[6] * i[8] + n[7] * i[13] + n[8] * i[18], e[9] = n[5] * i[4] + n[6] * i[9] + n[7] * i[14] + n[8] * i[19] + n[9], e[10] = n[10] * i[0] + n[11] * i[5] + n[12] * i[10] + n[13] * i[15], e[11] = n[10] * i[1] + n[11] * i[6] + n[12] * i[11] + n[13] * i[16], e[12] = n[10] * i[2] + n[11] * i[7] + n[12] * i[12] + n[13] * i[17], e[13] = n[10] * i[3] + n[11] * i[8] + n[12] * i[13] + n[13] * i[18], e[14] = n[10] * i[4] + n[11] * i[9] + n[12] * i[14] + n[13] * i[19] + n[14], e[15] = n[15] * i[0] + n[16] * i[5] + n[17] * i[10] + n[18] * i[15], e[16] = n[15] * i[1] + n[16] * i[6] + n[17] * i[11] + n[18] * i[16], e[17] = n[15] * i[2] + n[16] * i[7] + n[17] * i[12] + n[18] * i[17], e[18] = n[15] * i[3] + n[16] * i[8] + n[17] * i[13] + n[18] * i[18], e[19] = n[15] * i[4] + n[16] * i[9] + n[17] * i[14] + n[18] * i[19] + n[19], e;\n }, t.prototype._colorMatrix = function(e) {\n var n = new Float32Array(e);\n return n[4] /= 255, n[9] /= 255, n[14] /= 255, n[19] /= 255, n;\n }, t.prototype.brightness = function(e, n) {\n var i = [\n e,\n 0,\n 0,\n 0,\n 0,\n 0,\n e,\n 0,\n 0,\n 0,\n 0,\n 0,\n e,\n 0,\n 0,\n 0,\n 0,\n 0,\n 1,\n 0\n ];\n this._loadMatrix(i, n);\n }, t.prototype.tint = function(e, n) {\n var i = e >> 16 & 255, o = e >> 8 & 255, a = e & 255, s = [\n i / 255,\n 0,\n 0,\n 0,\n 0,\n 0,\n o / 255,\n 0,\n 0,\n 0,\n 0,\n 0,\n a / 255,\n 0,\n 0,\n 0,\n 0,\n 0,\n 1,\n 0\n ];\n this._loadMatrix(s, n);\n }, t.prototype.greyscale = function(e, n) {\n var i = [\n e,\n e,\n e,\n 0,\n 0,\n e,\n e,\n e,\n 0,\n 0,\n e,\n e,\n e,\n 0,\n 0,\n 0,\n 0,\n 0,\n 1,\n 0\n ];\n this._loadMatrix(i, n);\n }, t.prototype.blackAndWhite = function(e) {\n var n = [\n 0.3,\n 0.6,\n 0.1,\n 0,\n 0,\n 0.3,\n 0.6,\n 0.1,\n 0,\n 0,\n 0.3,\n 0.6,\n 0.1,\n 0,\n 0,\n 0,\n 0,\n 0,\n 1,\n 0\n ];\n this._loadMatrix(n, e);\n }, t.prototype.hue = function(e, n) {\n e = (e || 0) / 180 * Math.PI;\n var i = Math.cos(e), o = Math.sin(e), a = Math.sqrt, s = 1 / 3, u = a(s), h = i + (1 - i) * s, f = s * (1 - i) - u * o, l = s * (1 - i) + u * o, c = s * (1 - i) + u * o, d = i + s * (1 - i), p = s * (1 - i) - u * o, v = s * (1 - i) - u * o, _ = s * (1 - i) + u * o, g = i + s * (1 - i), m = [\n h,\n f,\n l,\n 0,\n 0,\n c,\n d,\n p,\n 0,\n 0,\n v,\n _,\n g,\n 0,\n 0,\n 0,\n 0,\n 0,\n 1,\n 0\n ];\n this._loadMatrix(m, n);\n }, t.prototype.contrast = function(e, n) {\n var i = (e || 0) + 1, o = -0.5 * (i - 1), a = [\n i,\n 0,\n 0,\n 0,\n o,\n 0,\n i,\n 0,\n 0,\n o,\n 0,\n 0,\n i,\n 0,\n o,\n 0,\n 0,\n 0,\n 1,\n 0\n ];\n this._loadMatrix(a, n);\n }, t.prototype.saturate = function(e, n) {\n e === void 0 && (e = 0);\n var i = e * 2 / 3 + 1, o = (i - 1) * -0.5, a = [\n i,\n o,\n o,\n 0,\n 0,\n o,\n i,\n o,\n 0,\n 0,\n o,\n o,\n i,\n 0,\n 0,\n 0,\n 0,\n 0,\n 1,\n 0\n ];\n this._loadMatrix(a, n);\n }, t.prototype.desaturate = function() {\n this.saturate(-1);\n }, t.prototype.negative = function(e) {\n var n = [\n -1,\n 0,\n 0,\n 1,\n 0,\n 0,\n -1,\n 0,\n 1,\n 0,\n 0,\n 0,\n -1,\n 1,\n 0,\n 0,\n 0,\n 0,\n 1,\n 0\n ];\n this._loadMatrix(n, e);\n }, t.prototype.sepia = function(e) {\n var n = [\n 0.393,\n 0.7689999,\n 0.18899999,\n 0,\n 0,\n 0.349,\n 0.6859999,\n 0.16799999,\n 0,\n 0,\n 0.272,\n 0.5339999,\n 0.13099999,\n 0,\n 0,\n 0,\n 0,\n 0,\n 1,\n 0\n ];\n this._loadMatrix(n, e);\n }, t.prototype.technicolor = function(e) {\n var n = [\n 1.9125277891456083,\n -0.8545344976951645,\n -0.09155508482755585,\n 0,\n 11.793603434377337,\n -0.3087833385928097,\n 1.7658908555458428,\n -0.10601743074722245,\n 0,\n -70.35205161461398,\n -0.231103377548616,\n -0.7501899197440212,\n 1.847597816108189,\n 0,\n 30.950940869491138,\n 0,\n 0,\n 0,\n 1,\n 0\n ];\n this._loadMatrix(n, e);\n }, t.prototype.polaroid = function(e) {\n var n = [\n 1.438,\n -0.062,\n -0.062,\n 0,\n 0,\n -0.122,\n 1.378,\n -0.122,\n 0,\n 0,\n -0.016,\n -0.016,\n 1.483,\n 0,\n 0,\n 0,\n 0,\n 0,\n 1,\n 0\n ];\n this._loadMatrix(n, e);\n }, t.prototype.toBGR = function(e) {\n var n = [\n 0,\n 0,\n 1,\n 0,\n 0,\n 0,\n 1,\n 0,\n 0,\n 0,\n 1,\n 0,\n 0,\n 0,\n 0,\n 0,\n 0,\n 0,\n 1,\n 0\n ];\n this._loadMatrix(n, e);\n }, t.prototype.kodachrome = function(e) {\n var n = [\n 1.1285582396593525,\n -0.3967382283601348,\n -0.03992559172921793,\n 0,\n 63.72958762196502,\n -0.16404339962244616,\n 1.0835251566291304,\n -0.05498805115633132,\n 0,\n 24.732407896706203,\n -0.16786010706155763,\n -0.5603416277695248,\n 1.6014850761964943,\n 0,\n 35.62982807460946,\n 0,\n 0,\n 0,\n 1,\n 0\n ];\n this._loadMatrix(n, e);\n }, t.prototype.browni = function(e) {\n var n = [\n 0.5997023498159715,\n 0.34553243048391263,\n -0.2708298674538042,\n 0,\n 47.43192855600873,\n -0.037703249837783157,\n 0.8609577587992641,\n 0.15059552388459913,\n 0,\n -36.96841498319127,\n 0.24113635128153335,\n -0.07441037908422492,\n 0.44972182064877153,\n 0,\n -7.562075277591283,\n 0,\n 0,\n 0,\n 1,\n 0\n ];\n this._loadMatrix(n, e);\n }, t.prototype.vintage = function(e) {\n var n = [\n 0.6279345635605994,\n 0.3202183420819367,\n -0.03965408211312453,\n 0,\n 9.651285835294123,\n 0.02578397704808868,\n 0.6441188644374771,\n 0.03259127616149294,\n 0,\n 7.462829176470591,\n 0.0466055556782719,\n -0.0851232987247891,\n 0.5241648018700465,\n 0,\n 5.159190588235296,\n 0,\n 0,\n 0,\n 1,\n 0\n ];\n this._loadMatrix(n, e);\n }, t.prototype.colorTone = function(e, n, i, o, a) {\n e = e || 0.2, n = n || 0.15, i = i || 16770432, o = o || 3375104;\n var s = (i >> 16 & 255) / 255, u = (i >> 8 & 255) / 255, h = (i & 255) / 255, f = (o >> 16 & 255) / 255, l = (o >> 8 & 255) / 255, c = (o & 255) / 255, d = [\n 0.3,\n 0.59,\n 0.11,\n 0,\n 0,\n s,\n u,\n h,\n e,\n 0,\n f,\n l,\n c,\n n,\n 0,\n s - f,\n u - l,\n h - c,\n 0,\n 0\n ];\n this._loadMatrix(d, a);\n }, t.prototype.night = function(e, n) {\n e = e || 0.1;\n var i = [\n e * -2,\n -e,\n 0,\n 0,\n 0,\n -e,\n 0,\n e,\n 0,\n 0,\n 0,\n e,\n e * 2,\n 0,\n 0,\n 0,\n 0,\n 0,\n 1,\n 0\n ];\n this._loadMatrix(i, n);\n }, t.prototype.predator = function(e, n) {\n var i = [\n // row 1\n 11.224130630493164 * e,\n -4.794486999511719 * e,\n -2.8746118545532227 * e,\n 0 * e,\n 0.40342438220977783 * e,\n // row 2\n -3.6330697536468506 * e,\n 9.193157196044922 * e,\n -2.951810836791992 * e,\n 0 * e,\n -1.316135048866272 * e,\n // row 3\n -3.2184197902679443 * e,\n -4.2375030517578125 * e,\n 7.476448059082031 * e,\n 0 * e,\n 0.8044459223747253 * e,\n // row 4\n 0,\n 0,\n 0,\n 1,\n 0\n ];\n this._loadMatrix(i, n);\n }, t.prototype.lsd = function(e) {\n var n = [\n 2,\n -0.4,\n 0.5,\n 0,\n 0,\n -0.5,\n 2,\n -0.4,\n 0,\n 0,\n -0.4,\n -0.5,\n 3,\n 0,\n 0,\n 0,\n 0,\n 0,\n 1,\n 0\n ];\n this._loadMatrix(n, e);\n }, t.prototype.reset = function() {\n var e = [\n 1,\n 0,\n 0,\n 0,\n 0,\n 0,\n 1,\n 0,\n 0,\n 0,\n 0,\n 0,\n 1,\n 0,\n 0,\n 0,\n 0,\n 0,\n 1,\n 0\n ];\n this._loadMatrix(e, !1);\n }, Object.defineProperty(t.prototype, \"matrix\", {\n /**\n * The matrix of the color matrix filter\n * @member {number[]}\n * @default [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]\n */\n get: function() {\n return this.uniforms.m;\n },\n set: function(e) {\n this.uniforms.m = e;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"alpha\", {\n /**\n * The opacity value to use when mixing the original and resultant colors.\n *\n * When the value is 0, the original color is used without modification.\n * When the value is 1, the result color is used.\n * When in the range (0, 1) the color is interpolated between the original and result by this amount.\n * @default 1\n */\n get: function() {\n return this.uniforms.uAlpha;\n },\n set: function(e) {\n this.uniforms.uAlpha = e;\n },\n enumerable: !1,\n configurable: !0\n }), t;\n }(Ve)\n);\n_h.prototype.grayscale = _h.prototype.greyscale;\n/*!\n * @pixi/filter-displacement - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/filter-displacement is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\n/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\nvar Da = function(r, t) {\n return Da = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(e, n) {\n e.__proto__ = n;\n } || function(e, n) {\n for (var i in n)\n n.hasOwnProperty(i) && (e[i] = n[i]);\n }, Da(r, t);\n};\nfunction jx(r, t) {\n Da(r, t);\n function e() {\n this.constructor = r;\n }\n r.prototype = t === null ? Object.create(t) : (e.prototype = t.prototype, new e());\n}\nvar Yx = `varying vec2 vFilterCoord;\nvarying vec2 vTextureCoord;\n\nuniform vec2 scale;\nuniform mat2 rotation;\nuniform sampler2D uSampler;\nuniform sampler2D mapSampler;\n\nuniform highp vec4 inputSize;\nuniform vec4 inputClamp;\n\nvoid main(void)\n{\n vec4 map = texture2D(mapSampler, vFilterCoord);\n\n map -= 0.5;\n map.xy = scale * inputSize.zw * (rotation * map.xy);\n\n gl_FragColor = texture2D(uSampler, clamp(vec2(vTextureCoord.x + map.x, vTextureCoord.y + map.y), inputClamp.xy, inputClamp.zw));\n}\n`, Vx = `attribute vec2 aVertexPosition;\n\nuniform mat3 projectionMatrix;\nuniform mat3 filterMatrix;\n\nvarying vec2 vTextureCoord;\nvarying vec2 vFilterCoord;\n\nuniform vec4 inputSize;\nuniform vec4 outputFrame;\n\nvec4 filterVertexPosition( void )\n{\n vec2 position = aVertexPosition * max(outputFrame.zw, vec2(0.)) + outputFrame.xy;\n\n return vec4((projectionMatrix * vec3(position, 1.0)).xy, 0.0, 1.0);\n}\n\nvec2 filterTextureCoord( void )\n{\n return aVertexPosition * (outputFrame.zw * inputSize.zw);\n}\n\nvoid main(void)\n{\n\tgl_Position = filterVertexPosition();\n\tvTextureCoord = filterTextureCoord();\n\tvFilterCoord = ( filterMatrix * vec3( vTextureCoord, 1.0) ).xy;\n}\n`;\n(function(r) {\n jx(t, r);\n function t(e, n) {\n var i = this, o = new Dt();\n return e.renderable = !1, i = r.call(this, Vx, Yx, {\n mapSampler: e._texture,\n filterMatrix: o,\n scale: { x: 1, y: 1 },\n rotation: new Float32Array([1, 0, 0, 1])\n }) || this, i.maskSprite = e, i.maskMatrix = o, n == null && (n = 20), i.scale = new Tt(n, n), i;\n }\n return t.prototype.apply = function(e, n, i, o) {\n this.uniforms.filterMatrix = e.calculateSpriteMatrix(this.maskMatrix, this.maskSprite), this.uniforms.scale.x = this.scale.x, this.uniforms.scale.y = this.scale.y;\n var a = this.maskSprite.worldTransform, s = Math.sqrt(a.a * a.a + a.b * a.b), u = Math.sqrt(a.c * a.c + a.d * a.d);\n s !== 0 && u !== 0 && (this.uniforms.rotation[0] = a.a / s, this.uniforms.rotation[1] = a.b / s, this.uniforms.rotation[2] = a.c / u, this.uniforms.rotation[3] = a.d / u), e.applyFilter(this, n, i, o);\n }, Object.defineProperty(t.prototype, \"map\", {\n /** The texture used for the displacement map. Must be power of 2 sized texture. */\n get: function() {\n return this.uniforms.mapSampler;\n },\n set: function(e) {\n this.uniforms.mapSampler = e;\n },\n enumerable: !1,\n configurable: !0\n }), t;\n})(Ve);\n/*!\n * @pixi/filter-fxaa - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/filter-fxaa is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\n/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\nvar Fa = function(r, t) {\n return Fa = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(e, n) {\n e.__proto__ = n;\n } || function(e, n) {\n for (var i in n)\n n.hasOwnProperty(i) && (e[i] = n[i]);\n }, Fa(r, t);\n};\nfunction zx(r, t) {\n Fa(r, t);\n function e() {\n this.constructor = r;\n }\n r.prototype = t === null ? Object.create(t) : (e.prototype = t.prototype, new e());\n}\nvar Wx = `\nattribute vec2 aVertexPosition;\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\nvarying vec2 vFragCoord;\n\nuniform vec4 inputSize;\nuniform vec4 outputFrame;\n\nvec4 filterVertexPosition( void )\n{\n vec2 position = aVertexPosition * max(outputFrame.zw, vec2(0.)) + outputFrame.xy;\n\n return vec4((projectionMatrix * vec3(position, 1.0)).xy, 0.0, 1.0);\n}\n\nvoid texcoords(vec2 fragCoord, vec2 inverseVP,\n out vec2 v_rgbNW, out vec2 v_rgbNE,\n out vec2 v_rgbSW, out vec2 v_rgbSE,\n out vec2 v_rgbM) {\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 = filterVertexPosition();\n\n vFragCoord = aVertexPosition * outputFrame.zw;\n\n texcoords(vFragCoord, inputSize.zw, v_rgbNW, v_rgbNE, v_rgbSW, v_rgbSE, v_rgbM);\n}\n`, qx = `varying vec2 v_rgbNW;\nvarying vec2 v_rgbNE;\nvarying vec2 v_rgbSW;\nvarying vec2 v_rgbSE;\nvarying vec2 v_rgbM;\n\nvarying vec2 vFragCoord;\nuniform sampler2D uSampler;\nuniform highp vec4 inputSize;\n\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 inverseVP,\n vec2 v_rgbNW, vec2 v_rgbNE,\n vec2 v_rgbSW, vec2 v_rgbSE,\n vec2 v_rgbM) {\n vec4 color;\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 < lumaMin) || (lumaB > lumaMax))\n color = vec4(rgbA, texColor.a);\n else\n color = vec4(rgbB, texColor.a);\n return color;\n}\n\nvoid main() {\n\n vec4 color;\n\n color = fxaa(uSampler, vFragCoord, inputSize.zw, v_rgbNW, v_rgbNE, v_rgbSW, v_rgbSE, v_rgbM);\n\n gl_FragColor = color;\n}\n`;\n(function(r) {\n zx(t, r);\n function t() {\n return r.call(this, Wx, qx) || this;\n }\n return t;\n})(Ve);\n/*!\n * @pixi/filter-noise - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/filter-noise is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\n/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\nvar Ba = function(r, t) {\n return Ba = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(e, n) {\n e.__proto__ = n;\n } || function(e, n) {\n for (var i in n)\n n.hasOwnProperty(i) && (e[i] = n[i]);\n }, Ba(r, t);\n};\nfunction $x(r, t) {\n Ba(r, t);\n function e() {\n this.constructor = r;\n }\n r.prototype = t === null ? Object.create(t) : (e.prototype = t.prototype, new e());\n}\nvar Kx = `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 > 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`;\n(function(r) {\n $x(t, r);\n function t(e, n) {\n e === void 0 && (e = 0.5), n === void 0 && (n = Math.random());\n var i = r.call(this, Vl, Kx, {\n uNoise: 0,\n uSeed: 0\n }) || this;\n return i.noise = e, i.seed = n, i;\n }\n return Object.defineProperty(t.prototype, \"noise\", {\n /**\n * The amount of noise to apply, this value should be in the range (0, 1].\n * @default 0.5\n */\n get: function() {\n return this.uniforms.uNoise;\n },\n set: function(e) {\n this.uniforms.uNoise = e;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"seed\", {\n /** A seed value to apply to the random noise generation. `Math.random()` is a good value to use. */\n get: function() {\n return this.uniforms.uSeed;\n },\n set: function(e) {\n this.uniforms.uSeed = e;\n },\n enumerable: !1,\n configurable: !0\n }), t;\n})(Ve);\n/*!\n * @pixi/mixin-cache-as-bitmap - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/mixin-cache-as-bitmap is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\nvar sf = new Dt();\nIt.prototype._cacheAsBitmap = !1;\nIt.prototype._cacheData = null;\nIt.prototype._cacheAsBitmapResolution = null;\nIt.prototype._cacheAsBitmapMultisample = wt.NONE;\nvar Zx = (\n /** @class */\n function() {\n function r() {\n this.textureCacheId = null, this.originalRender = null, this.originalRenderCanvas = null, this.originalCalculateBounds = null, this.originalGetLocalBounds = null, this.originalUpdateTransform = null, this.originalDestroy = null, this.originalMask = null, this.originalFilterArea = null, this.originalContainsPoint = null, this.sprite = null;\n }\n return r;\n }()\n);\nObject.defineProperties(It.prototype, {\n /**\n * The resolution to use for cacheAsBitmap. By default this will use the renderer's resolution\n * but can be overriden for performance. Lower values will reduce memory usage at the expense\n * of render quality. A falsey value of `null` or `0` will default to the renderer's resolution.\n * If `cacheAsBitmap` is set to `true`, this will re-render with the new resolution.\n * @member {number} cacheAsBitmapResolution\n * @memberof PIXI.DisplayObject#\n * @default null\n */\n cacheAsBitmapResolution: {\n get: function() {\n return this._cacheAsBitmapResolution;\n },\n set: function(r) {\n r !== this._cacheAsBitmapResolution && (this._cacheAsBitmapResolution = r, this.cacheAsBitmap && (this.cacheAsBitmap = !1, this.cacheAsBitmap = !0));\n }\n },\n /**\n * The number of samples to use for cacheAsBitmap. If set to `null`, the renderer's\n * sample count is used.\n * If `cacheAsBitmap` is set to `true`, this will re-render with the new number of samples.\n * @member {number} cacheAsBitmapMultisample\n * @memberof PIXI.DisplayObject#\n * @default PIXI.MSAA_QUALITY.NONE\n */\n cacheAsBitmapMultisample: {\n get: function() {\n return this._cacheAsBitmapMultisample;\n },\n set: function(r) {\n r !== this._cacheAsBitmapMultisample && (this._cacheAsBitmapMultisample = r, this.cacheAsBitmap && (this.cacheAsBitmap = !1, this.cacheAsBitmap = !0));\n }\n },\n /**\n * Set this to true if you want this display object to be cached as a bitmap.\n * This basically takes a snap shot of the display object as it is at that moment. It can\n * provide a performance benefit for complex static displayObjects.\n * To remove simply set this property to `false`\n *\n * IMPORTANT GOTCHA - Make sure that all your textures are preloaded BEFORE setting this property to true\n * as it will take a snapshot of what is currently there. If the textures have not loaded then they will not appear.\n * @member {boolean}\n * @memberof PIXI.DisplayObject#\n */\n cacheAsBitmap: {\n get: function() {\n return this._cacheAsBitmap;\n },\n set: function(r) {\n if (this._cacheAsBitmap !== r) {\n this._cacheAsBitmap = r;\n var t;\n r ? (this._cacheData || (this._cacheData = new Zx()), t = this._cacheData, t.originalRender = this.render, t.originalRenderCanvas = this.renderCanvas, t.originalUpdateTransform = this.updateTransform, t.originalCalculateBounds = this.calculateBounds, t.originalGetLocalBounds = this.getLocalBounds, t.originalDestroy = this.destroy, t.originalContainsPoint = this.containsPoint, t.originalMask = this._mask, t.originalFilterArea = this.filterArea, this.render = this._renderCached, this.renderCanvas = this._renderCachedCanvas, this.destroy = this._cacheAsBitmapDestroy) : (t = this._cacheData, t.sprite && this._destroyCachedDisplayObject(), this.render = t.originalRender, this.renderCanvas = t.originalRenderCanvas, this.calculateBounds = t.originalCalculateBounds, this.getLocalBounds = t.originalGetLocalBounds, this.destroy = t.originalDestroy, this.updateTransform = t.originalUpdateTransform, this.containsPoint = t.originalContainsPoint, this._mask = t.originalMask, this.filterArea = t.originalFilterArea);\n }\n }\n }\n});\nIt.prototype._renderCached = function(t) {\n !this.visible || this.worldAlpha <= 0 || !this.renderable || (this._initCachedDisplayObject(t), this._cacheData.sprite.transform._worldID = this.transform._worldID, this._cacheData.sprite.worldAlpha = this.worldAlpha, this._cacheData.sprite._render(t));\n};\nIt.prototype._initCachedDisplayObject = function(t) {\n var e;\n if (!(this._cacheData && this._cacheData.sprite)) {\n var n = this.alpha;\n this.alpha = 1, t.batch.flush();\n var i = this.getLocalBounds(null, !0).clone();\n if (this.filters && this.filters.length) {\n var o = this.filters[0].padding;\n i.pad(o);\n }\n i.ceil(k.RESOLUTION);\n var a = t.renderTexture.current, s = t.renderTexture.sourceFrame.clone(), u = t.renderTexture.destinationFrame.clone(), h = t.projection.transform, f = fr.create({\n width: i.width,\n height: i.height,\n resolution: this.cacheAsBitmapResolution || t.resolution,\n multisample: (e = this.cacheAsBitmapMultisample) !== null && e !== void 0 ? e : t.multisample\n }), l = \"cacheAsBitmap_\" + lr();\n this._cacheData.textureCacheId = l, ut.addToCache(f.baseTexture, l), J.addToCache(f, l);\n var c = this.transform.localTransform.copyTo(sf).invert().translate(-i.x, -i.y);\n this.render = this._cacheData.originalRender, t.render(this, { renderTexture: f, clear: !0, transform: c, skipUpdateTransform: !1 }), t.framebuffer.blit(), t.projection.transform = h, t.renderTexture.bind(a, s, u), this.render = this._renderCached, this.updateTransform = this.displayObjectUpdateTransform, this.calculateBounds = this._calculateCachedBounds, this.getLocalBounds = this._getCachedLocalBounds, this._mask = null, this.filterArea = null, this.alpha = n;\n var d = new Fn(f);\n d.transform.worldTransform = this.transform.worldTransform, d.anchor.x = -(i.x / i.width), d.anchor.y = -(i.y / i.height), d.alpha = n, d._bounds = this._bounds, this._cacheData.sprite = d, this.transform._parentID = -1, this.parent ? this.updateTransform() : (this.enableTempParent(), this.updateTransform(), this.disableTempParent(null)), this.containsPoint = d.containsPoint.bind(d);\n }\n};\nIt.prototype._renderCachedCanvas = function(t) {\n !this.visible || this.worldAlpha <= 0 || !this.renderable || (this._initCachedDisplayObjectCanvas(t), this._cacheData.sprite.worldAlpha = this.worldAlpha, this._cacheData.sprite._renderCanvas(t));\n};\nIt.prototype._initCachedDisplayObjectCanvas = function(t) {\n if (!(this._cacheData && this._cacheData.sprite)) {\n var e = this.getLocalBounds(null, !0), n = this.alpha;\n this.alpha = 1;\n var i = t.context, o = t._projTransform;\n e.ceil(k.RESOLUTION);\n var a = fr.create({ width: e.width, height: e.height }), s = \"cacheAsBitmap_\" + lr();\n this._cacheData.textureCacheId = s, ut.addToCache(a.baseTexture, s), J.addToCache(a, s);\n var u = sf;\n this.transform.localTransform.copyTo(u), u.invert(), u.tx -= e.x, u.ty -= e.y, this.renderCanvas = this._cacheData.originalRenderCanvas, t.render(this, { renderTexture: a, clear: !0, transform: u, skipUpdateTransform: !1 }), t.context = i, t._projTransform = o, this.renderCanvas = this._renderCachedCanvas, this.updateTransform = this.displayObjectUpdateTransform, this.calculateBounds = this._calculateCachedBounds, this.getLocalBounds = this._getCachedLocalBounds, this._mask = null, this.filterArea = null, this.alpha = n;\n var h = new Fn(a);\n h.transform.worldTransform = this.transform.worldTransform, h.anchor.x = -(e.x / e.width), h.anchor.y = -(e.y / e.height), h.alpha = n, h._bounds = this._bounds, this._cacheData.sprite = h, this.transform._parentID = -1, this.parent ? this.updateTransform() : (this.parent = t._tempDisplayObjectParent, this.updateTransform(), this.parent = null), this.containsPoint = h.containsPoint.bind(h);\n }\n};\nIt.prototype._calculateCachedBounds = function() {\n this._bounds.clear(), this._cacheData.sprite.transform._worldID = this.transform._worldID, this._cacheData.sprite._calculateBounds(), this._bounds.updateID = this._boundsID;\n};\nIt.prototype._getCachedLocalBounds = function() {\n return this._cacheData.sprite.getLocalBounds(null);\n};\nIt.prototype._destroyCachedDisplayObject = function() {\n this._cacheData.sprite._texture.destroy(!0), this._cacheData.sprite = null, ut.removeFromCache(this._cacheData.textureCacheId), J.removeFromCache(this._cacheData.textureCacheId), this._cacheData.textureCacheId = null;\n};\nIt.prototype._cacheAsBitmapDestroy = function(t) {\n this.cacheAsBitmap = !1, this.destroy(t);\n};\n/*!\n * @pixi/mixin-get-child-by-name - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/mixin-get-child-by-name is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\nIt.prototype.name = null;\nxe.prototype.getChildByName = function(t, e) {\n for (var n = 0, i = this.children.length; n < i; n++)\n if (this.children[n].name === t)\n return this.children[n];\n if (e)\n for (var n = 0, i = this.children.length; n < i; n++) {\n var o = this.children[n];\n if (o.getChildByName) {\n var a = o.getChildByName(t, !0);\n if (a)\n return a;\n }\n }\n return null;\n};\n/*!\n * @pixi/mixin-get-global-position - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/mixin-get-global-position is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\nIt.prototype.getGlobalPosition = function(t, e) {\n return t === void 0 && (t = new Tt()), e === void 0 && (e = !1), this.parent ? this.parent.toGlobal(this.position, t, e) : (t.x = this.position.x, t.y = this.position.y), t;\n};\n/*!\n * @pixi/app - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/app is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\nvar Jx = (\n /** @class */\n function() {\n function r() {\n }\n return r.init = function(t) {\n var e = this;\n Object.defineProperty(\n this,\n \"resizeTo\",\n /**\n * The HTML element or window to automatically resize the\n * renderer's view element to match width and height.\n * @member {Window|HTMLElement}\n * @name resizeTo\n * @memberof PIXI.Application#\n */\n {\n set: function(n) {\n globalThis.removeEventListener(\"resize\", this.queueResize), this._resizeTo = n, n && (globalThis.addEventListener(\"resize\", this.queueResize), this.resize());\n },\n get: function() {\n return this._resizeTo;\n }\n }\n ), this.queueResize = function() {\n e._resizeTo && (e.cancelResize(), e._resizeId = requestAnimationFrame(function() {\n return e.resize();\n }));\n }, this.cancelResize = function() {\n e._resizeId && (cancelAnimationFrame(e._resizeId), e._resizeId = null);\n }, this.resize = function() {\n if (e._resizeTo) {\n e.cancelResize();\n var n, i;\n if (e._resizeTo === globalThis.window)\n n = globalThis.innerWidth, i = globalThis.innerHeight;\n else {\n var o = e._resizeTo, a = o.clientWidth, s = o.clientHeight;\n n = a, i = s;\n }\n e.renderer.resize(n, i);\n }\n }, this._resizeId = null, this._resizeTo = null, this.resizeTo = t.resizeTo || null;\n }, r.destroy = function() {\n globalThis.removeEventListener(\"resize\", this.queueResize), this.cancelResize(), this.cancelResize = null, this.queueResize = null, this.resizeTo = null, this.resize = null;\n }, r.extension = gt.Application, r;\n }()\n), Qx = (\n /** @class */\n function() {\n function r(t) {\n var e = this;\n this.stage = new xe(), t = Object.assign({\n forceCanvas: !1\n }, t), this.renderer = Yl(t), r._plugins.forEach(function(n) {\n n.init.call(e, t);\n });\n }\n return r.registerPlugin = function(t) {\n he(\"6.5.0\", \"Application.registerPlugin() is deprecated, use extensions.add()\"), Me.add({\n type: gt.Application,\n ref: t\n });\n }, r.prototype.render = function() {\n this.renderer.render(this.stage);\n }, Object.defineProperty(r.prototype, \"view\", {\n /**\n * Reference to the renderer's canvas element.\n * @member {HTMLCanvasElement}\n * @readonly\n */\n get: function() {\n return this.renderer.view;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(r.prototype, \"screen\", {\n /**\n * Reference to the renderer's screen rectangle. Its safe to use as `filterArea` or `hitArea` for the whole screen.\n * @member {PIXI.Rectangle}\n * @readonly\n */\n get: function() {\n return this.renderer.screen;\n },\n enumerable: !1,\n configurable: !0\n }), r.prototype.destroy = function(t, e) {\n var n = this, i = r._plugins.slice(0);\n i.reverse(), i.forEach(function(o) {\n o.destroy.call(n);\n }), this.stage.destroy(e), this.stage = null, this.renderer.destroy(t), this.renderer = null;\n }, r._plugins = [], r;\n }()\n);\nMe.handleByList(gt.Application, Qx._plugins);\nMe.add(Jx);\n/*!\n * @pixi/mesh-extras - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/mesh-extras is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\n/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\nvar Na = function(r, t) {\n return Na = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(e, n) {\n e.__proto__ = n;\n } || function(e, n) {\n for (var i in n)\n n.hasOwnProperty(i) && (e[i] = n[i]);\n }, Na(r, t);\n};\nfunction Kr(r, t) {\n Na(r, t);\n function e() {\n this.constructor = r;\n }\n r.prototype = t === null ? Object.create(t) : (e.prototype = t.prototype, new e());\n}\nvar t1 = (\n /** @class */\n function(r) {\n Kr(t, r);\n function t(e, n, i, o) {\n e === void 0 && (e = 100), n === void 0 && (n = 100), i === void 0 && (i = 10), o === void 0 && (o = 10);\n var a = r.call(this) || this;\n return a.segWidth = i, a.segHeight = o, a.width = e, a.height = n, a.build(), a;\n }\n return t.prototype.build = function() {\n for (var e = this.segWidth * this.segHeight, n = [], i = [], o = [], a = this.segWidth - 1, s = this.segHeight - 1, u = this.width / a, h = this.height / s, f = 0; f < e; f++) {\n var l = f % this.segWidth, c = f / this.segWidth | 0;\n n.push(l * u, c * h), i.push(l / a, c / s);\n }\n for (var d = a * s, f = 0; f < d; f++) {\n var p = f % a, v = f / a | 0, _ = v * this.segWidth + p, g = v * this.segWidth + p + 1, m = (v + 1) * this.segWidth + p, y = (v + 1) * this.segWidth + p + 1;\n o.push(_, g, m, g, y, m);\n }\n this.buffers[0].data = new Float32Array(n), this.buffers[1].data = new Float32Array(i), this.indexBuffer.data = new Uint16Array(o), this.buffers[0].update(), this.buffers[1].update(), this.indexBuffer.update();\n }, t;\n }(Yi)\n), e1 = (\n /** @class */\n function(r) {\n Kr(t, r);\n function t(e, n, i) {\n e === void 0 && (e = 200), i === void 0 && (i = 0);\n var o = r.call(this, new Float32Array(n.length * 4), new Float32Array(n.length * 4), new Uint16Array((n.length - 1) * 6)) || this;\n return o.points = n, o._width = e, o.textureScale = i, o.build(), o;\n }\n return Object.defineProperty(t.prototype, \"width\", {\n /**\n * The width (i.e., thickness) of the rope.\n * @readonly\n */\n get: function() {\n return this._width;\n },\n enumerable: !1,\n configurable: !0\n }), t.prototype.build = function() {\n var e = this.points;\n if (e) {\n var n = this.getBuffer(\"aVertexPosition\"), i = this.getBuffer(\"aTextureCoord\"), o = this.getIndex();\n if (!(e.length < 1)) {\n n.data.length / 4 !== e.length && (n.data = new Float32Array(e.length * 4), i.data = new Float32Array(e.length * 4), o.data = new Uint16Array((e.length - 1) * 6));\n var a = i.data, s = o.data;\n a[0] = 0, a[1] = 0, a[2] = 0, a[3] = 1;\n for (var u = 0, h = e[0], f = this._width * this.textureScale, l = e.length, c = 0; c < l; c++) {\n var d = c * 4;\n if (this.textureScale > 0) {\n var p = h.x - e[c].x, v = h.y - e[c].y, _ = Math.sqrt(p * p + v * v);\n h = e[c], u += _ / f;\n } else\n u = c / (l - 1);\n a[d] = u, a[d + 1] = 0, a[d + 2] = u, a[d + 3] = 1;\n }\n for (var g = 0, c = 0; c < l - 1; c++) {\n var d = c * 2;\n s[g++] = d, s[g++] = d + 1, s[g++] = d + 2, s[g++] = d + 2, s[g++] = d + 1, s[g++] = d + 3;\n }\n i.update(), o.update(), this.updateVertices();\n }\n }\n }, t.prototype.updateVertices = function() {\n var e = this.points;\n if (!(e.length < 1)) {\n for (var n = e[0], i, o = 0, a = 0, s = this.buffers[0].data, u = e.length, h = 0; h < u; h++) {\n var f = e[h], l = h * 4;\n h < e.length - 1 ? i = e[h + 1] : i = f, a = -(i.x - n.x), o = i.y - n.y;\n var c = Math.sqrt(o * o + a * a), d = this.textureScale > 0 ? this.textureScale * this._width / 2 : this._width / 2;\n o /= c, a /= c, o *= d, a *= d, s[l] = f.x + o, s[l + 1] = f.y + a, s[l + 2] = f.x - o, s[l + 3] = f.y - a, n = f;\n }\n this.buffers[0].update();\n }\n }, t.prototype.update = function() {\n this.textureScale > 0 ? this.build() : this.updateVertices();\n }, t;\n }(Yi)\n);\n(function(r) {\n Kr(t, r);\n function t(e, n, i) {\n i === void 0 && (i = 0);\n var o = this, a = new e1(e.height, n, i), s = new Pn(e);\n return i > 0 && (e.baseTexture.wrapMode = ye.REPEAT), o = r.call(this, a, s) || this, o.autoUpdate = !0, o;\n }\n return t.prototype._render = function(e) {\n var n = this.geometry;\n (this.autoUpdate || n._width !== this.shader.texture.height) && (n._width = this.shader.texture.height, n.update()), r.prototype._render.call(this, e);\n }, t;\n})(An);\nvar r1 = (\n /** @class */\n function(r) {\n Kr(t, r);\n function t(e, n, i) {\n var o = this, a = new t1(e.width, e.height, n, i), s = new Pn(J.WHITE);\n return o = r.call(this, a, s) || this, o.texture = e, o.autoResize = !0, o;\n }\n return t.prototype.textureUpdated = function() {\n this._textureID = this.shader.texture._updateID;\n var e = this.geometry, n = this.shader.texture, i = n.width, o = n.height;\n this.autoResize && (e.width !== i || e.height !== o) && (e.width = this.shader.texture.width, e.height = this.shader.texture.height, e.build());\n }, Object.defineProperty(t.prototype, \"texture\", {\n get: function() {\n return this.shader.texture;\n },\n set: function(e) {\n this.shader.texture !== e && (this.shader.texture = e, this._textureID = -1, e.baseTexture.valid ? this.textureUpdated() : e.once(\"update\", this.textureUpdated, this));\n },\n enumerable: !1,\n configurable: !0\n }), t.prototype._render = function(e) {\n this._textureID !== this.shader.texture._updateID && this.textureUpdated(), r.prototype._render.call(this, e);\n }, t.prototype.destroy = function(e) {\n this.shader.texture.off(\"update\", this.textureUpdated, this), r.prototype.destroy.call(this, e);\n }, t;\n }(An)\n);\n(function(r) {\n Kr(t, r);\n function t(e, n, i, o, a) {\n e === void 0 && (e = J.EMPTY);\n var s = this, u = new Yi(n, i, o);\n u.getBuffer(\"aVertexPosition\").static = !1;\n var h = new Pn(e);\n return s = r.call(this, u, h, null, a) || this, s.autoUpdate = !0, s;\n }\n return Object.defineProperty(t.prototype, \"vertices\", {\n /**\n * Collection of vertices data.\n * @type {Float32Array}\n */\n get: function() {\n return this.geometry.getBuffer(\"aVertexPosition\").data;\n },\n set: function(e) {\n this.geometry.getBuffer(\"aVertexPosition\").data = e;\n },\n enumerable: !1,\n configurable: !0\n }), t.prototype._render = function(e) {\n this.autoUpdate && this.geometry.getBuffer(\"aVertexPosition\").update(), r.prototype._render.call(this, e);\n }, t;\n})(An);\nvar ci = 10;\n(function(r) {\n Kr(t, r);\n function t(e, n, i, o, a) {\n n === void 0 && (n = ci), i === void 0 && (i = ci), o === void 0 && (o = ci), a === void 0 && (a = ci);\n var s = r.call(this, J.WHITE, 4, 4) || this;\n return s._origWidth = e.orig.width, s._origHeight = e.orig.height, s._width = s._origWidth, s._height = s._origHeight, s._leftWidth = n, s._rightWidth = o, s._topHeight = i, s._bottomHeight = a, s.texture = e, s;\n }\n return t.prototype.textureUpdated = function() {\n this._textureID = this.shader.texture._updateID, this._refresh();\n }, Object.defineProperty(t.prototype, \"vertices\", {\n get: function() {\n return this.geometry.getBuffer(\"aVertexPosition\").data;\n },\n set: function(e) {\n this.geometry.getBuffer(\"aVertexPosition\").data = e;\n },\n enumerable: !1,\n configurable: !0\n }), t.prototype.updateHorizontalVertices = function() {\n var e = this.vertices, n = this._getMinScale();\n e[9] = e[11] = e[13] = e[15] = this._topHeight * n, e[17] = e[19] = e[21] = e[23] = this._height - this._bottomHeight * n, e[25] = e[27] = e[29] = e[31] = this._height;\n }, t.prototype.updateVerticalVertices = function() {\n var e = this.vertices, n = this._getMinScale();\n e[2] = e[10] = e[18] = e[26] = this._leftWidth * n, e[4] = e[12] = e[20] = e[28] = this._width - this._rightWidth * n, e[6] = e[14] = e[22] = e[30] = this._width;\n }, t.prototype._getMinScale = function() {\n var e = this._leftWidth + this._rightWidth, n = this._width > e ? 1 : this._width / e, i = this._topHeight + this._bottomHeight, o = this._height > i ? 1 : this._height / i, a = Math.min(n, o);\n return a;\n }, Object.defineProperty(t.prototype, \"width\", {\n /** The width of the NineSlicePlane, setting this will actually modify the vertices and UV's of this plane. */\n get: function() {\n return this._width;\n },\n set: function(e) {\n this._width = e, this._refresh();\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"height\", {\n /** The height of the NineSlicePlane, setting this will actually modify the vertices and UV's of this plane. */\n get: function() {\n return this._height;\n },\n set: function(e) {\n this._height = e, this._refresh();\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"leftWidth\", {\n /** The width of the left column. */\n get: function() {\n return this._leftWidth;\n },\n set: function(e) {\n this._leftWidth = e, this._refresh();\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"rightWidth\", {\n /** The width of the right column. */\n get: function() {\n return this._rightWidth;\n },\n set: function(e) {\n this._rightWidth = e, this._refresh();\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"topHeight\", {\n /** The height of the top row. */\n get: function() {\n return this._topHeight;\n },\n set: function(e) {\n this._topHeight = e, this._refresh();\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"bottomHeight\", {\n /** The height of the bottom row. */\n get: function() {\n return this._bottomHeight;\n },\n set: function(e) {\n this._bottomHeight = e, this._refresh();\n },\n enumerable: !1,\n configurable: !0\n }), t.prototype._refresh = function() {\n var e = this.texture, n = this.geometry.buffers[1].data;\n this._origWidth = e.orig.width, this._origHeight = e.orig.height;\n var i = 1 / this._origWidth, o = 1 / this._origHeight;\n n[0] = n[8] = n[16] = n[24] = 0, n[1] = n[3] = n[5] = n[7] = 0, n[6] = n[14] = n[22] = n[30] = 1, n[25] = n[27] = n[29] = n[31] = 1, n[2] = n[10] = n[18] = n[26] = i * this._leftWidth, n[4] = n[12] = n[20] = n[28] = 1 - i * this._rightWidth, n[9] = n[11] = n[13] = n[15] = o * this._topHeight, n[17] = n[19] = n[21] = n[23] = 1 - o * this._bottomHeight, this.updateHorizontalVertices(), this.updateVerticalVertices(), this.geometry.buffers[0].update(), this.geometry.buffers[1].update();\n }, t;\n})(r1);\n/*!\n * @pixi/sprite-animated - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * @pixi/sprite-animated is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\n/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\nvar La = function(r, t) {\n return La = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(e, n) {\n e.__proto__ = n;\n } || function(e, n) {\n for (var i in n)\n n.hasOwnProperty(i) && (e[i] = n[i]);\n }, La(r, t);\n};\nfunction n1(r, t) {\n La(r, t);\n function e() {\n this.constructor = r;\n }\n r.prototype = t === null ? Object.create(t) : (e.prototype = t.prototype, new e());\n}\n(function(r) {\n n1(t, r);\n function t(e, n) {\n n === void 0 && (n = !0);\n var i = r.call(this, e[0] instanceof J ? e[0] : e[0].texture) || this;\n return i._textures = null, i._durations = null, i._autoUpdate = n, i._isConnectedToTicker = !1, i.animationSpeed = 1, i.loop = !0, i.updateAnchor = !1, i.onComplete = null, i.onFrameChange = null, i.onLoop = null, i._currentTime = 0, i._playing = !1, i._previousFrame = null, i.textures = e, i;\n }\n return t.prototype.stop = function() {\n this._playing && (this._playing = !1, this._autoUpdate && this._isConnectedToTicker && (kt.shared.remove(this.update, this), this._isConnectedToTicker = !1));\n }, t.prototype.play = function() {\n this._playing || (this._playing = !0, this._autoUpdate && !this._isConnectedToTicker && (kt.shared.add(this.update, this, Ce.HIGH), this._isConnectedToTicker = !0));\n }, t.prototype.gotoAndStop = function(e) {\n this.stop();\n var n = this.currentFrame;\n this._currentTime = e, n !== this.currentFrame && this.updateTexture();\n }, t.prototype.gotoAndPlay = function(e) {\n var n = this.currentFrame;\n this._currentTime = e, n !== this.currentFrame && this.updateTexture(), this.play();\n }, t.prototype.update = function(e) {\n if (this._playing) {\n var n = this.animationSpeed * e, i = this.currentFrame;\n if (this._durations !== null) {\n var o = this._currentTime % 1 * this._durations[this.currentFrame];\n for (o += n / 60 * 1e3; o < 0; )\n this._currentTime--, o += this._durations[this.currentFrame];\n var a = Math.sign(this.animationSpeed * e);\n for (this._currentTime = Math.floor(this._currentTime); o >= this._durations[this.currentFrame]; )\n o -= this._durations[this.currentFrame] * a, this._currentTime += a;\n this._currentTime += o / this._durations[this.currentFrame];\n } else\n this._currentTime += n;\n this._currentTime < 0 && !this.loop ? (this.gotoAndStop(0), this.onComplete && this.onComplete()) : this._currentTime >= this._textures.length && !this.loop ? (this.gotoAndStop(this._textures.length - 1), this.onComplete && this.onComplete()) : i !== this.currentFrame && (this.loop && this.onLoop && (this.animationSpeed > 0 && this.currentFrame < i ? this.onLoop() : this.animationSpeed < 0 && this.currentFrame > i && this.onLoop()), this.updateTexture());\n }\n }, t.prototype.updateTexture = function() {\n var e = this.currentFrame;\n this._previousFrame !== e && (this._previousFrame = e, this._texture = this._textures[e], this._textureID = -1, this._textureTrimmedID = -1, this._cachedTint = 16777215, this.uvs = this._texture._uvs.uvsFloat32, this.updateAnchor && this._anchor.copyFrom(this._texture.defaultAnchor), this.onFrameChange && this.onFrameChange(this.currentFrame));\n }, t.prototype.destroy = function(e) {\n this.stop(), r.prototype.destroy.call(this, e), this.onComplete = null, this.onFrameChange = null, this.onLoop = null;\n }, t.fromFrames = function(e) {\n for (var n = [], i = 0; i < e.length; ++i)\n n.push(J.from(e[i]));\n return new t(n);\n }, t.fromImages = function(e) {\n for (var n = [], i = 0; i < e.length; ++i)\n n.push(J.from(e[i]));\n return new t(n);\n }, Object.defineProperty(t.prototype, \"totalFrames\", {\n /**\n * The total number of frames in the AnimatedSprite. This is the same as number of textures\n * assigned to the AnimatedSprite.\n * @readonly\n * @default 0\n */\n get: function() {\n return this._textures.length;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"textures\", {\n /** The array of textures used for this AnimatedSprite. */\n get: function() {\n return this._textures;\n },\n set: function(e) {\n if (e[0] instanceof J)\n this._textures = e, this._durations = null;\n else {\n this._textures = [], this._durations = [];\n for (var n = 0; n < e.length; n++)\n this._textures.push(e[n].texture), this._durations.push(e[n].time);\n }\n this._previousFrame = null, this.gotoAndStop(0), this.updateTexture();\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"currentFrame\", {\n /**\n * The AnimatedSprites current frame index.\n * @readonly\n */\n get: function() {\n var e = Math.floor(this._currentTime) % this._textures.length;\n return e < 0 && (e += this._textures.length), e;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"playing\", {\n /**\n * Indicates if the AnimatedSprite is currently playing.\n * @readonly\n */\n get: function() {\n return this._playing;\n },\n enumerable: !1,\n configurable: !0\n }), Object.defineProperty(t.prototype, \"autoUpdate\", {\n /** Whether to use PIXI.Ticker.shared to auto update animation time. */\n get: function() {\n return this._autoUpdate;\n },\n set: function(e) {\n e !== this._autoUpdate && (this._autoUpdate = e, !this._autoUpdate && this._isConnectedToTicker ? (kt.shared.remove(this.update, this), this._isConnectedToTicker = !1) : this._autoUpdate && !this._isConnectedToTicker && this._playing && (kt.shared.add(this.update, this), this._isConnectedToTicker = !0));\n },\n enumerable: !1,\n configurable: !0\n }), t;\n})(Fn);\n/*!\n * pixi.js - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * pixi.js is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\nMe.add(\n // Install renderer plugins\n G0,\n W0,\n Y0,\n Gb,\n px,\n Wl,\n xx,\n // Install loader plugins\n Dx,\n lb,\n Bb,\n Nb,\n _x,\n // Install application plugins\n iy,\n eb\n);\nconst bi = 1733608, i1 = 0.25, ls = (r) => (t, e) => {\n const n = e != null && e.fill ? En(e.fill) : bi, i = (e == null ? void 0 : e.fillOpacity) === void 0 ? i1 : e.fillOpacity, o = new Vr();\n return o.beginFill(16777215, i), o.lineStyle(1, 16777215, 1, 0.5, !0), r(t, o), o.endFill(), o.tint = n, o;\n}, o1 = ls((r, t) => {\n const { cx: e, cy: n, rx: i, ry: o } = r.geometry;\n t.drawEllipse(e, n, i, o);\n}), a1 = ls((r, t) => {\n const e = r.geometry.points.reduce((n, i) => [...n, ...i], []);\n t.drawPolygon(e);\n}), s1 = ls((r, t) => {\n const { x: e, y: n, w: i, h: o } = r.geometry;\n t.drawRect(e, n, i, o);\n}), u1 = (r, t, e) => () => {\n const n = r.viewport.viewportToImageRectangle(r.viewport.getBounds(!0)), i = r.viewport.getContainerSize().x, a = r.viewport.getZoom(!0) * i / r.world.getContentFactor(), s = Math.PI * r.viewport.getRotation() / 180, u = -n.x * a, h = -n.y * a;\n let f, l;\n s > 0 && s <= Math.PI / 2 ? (f = n.height * a, l = 0) : s > Math.PI / 2 && s <= Math.PI ? (f = n.width * a, l = n.height * a) : s > Math.PI && s <= Math.PI * 1.5 ? (f = 0, l = n.width * a) : (f = 0, l = 0), t.position.x = f + u * Math.cos(s) - h * Math.sin(s), t.position.y = l + u * Math.sin(s) + h * Math.cos(s), t.scale.set(a, a), t.rotation = s, e.render(t);\n}, h1 = (r, t) => {\n const e = new Vr(), n = Yl({\n width: t.width,\n height: t.height,\n backgroundAlpha: 0,\n view: t,\n antialias: !0\n }), i = /* @__PURE__ */ new Map();\n let o = /* @__PURE__ */ new Set(), a;\n const s = (v) => {\n const { selector: _ } = v.target, g = typeof a == \"function\" ? a(v) : a;\n let m;\n _.type === $t.RECTANGLE ? m = s1(_, g) : _.type === $t.POLYGON ? m = a1(_, g) : _.type === $t.ELLIPSE ? m = o1(_, g) : console.warn(`Unsupported shape type: ${_.type}`), m && (e.addChild(m), i.set(v.id, { g: m, annotation: v }));\n }, u = (v) => {\n const _ = i.get(v.id);\n _ && (i.delete(v.id), _.g.destroy());\n }, h = (v, _) => {\n const g = i.get(v.id);\n g && (i.delete(v.id), g.g.destroy(), s(_));\n }, f = (v, _) => {\n n.resize(v, _), n.render(e);\n }, l = (v) => {\n const { children: _ } = e;\n i.forEach(({ g, annotation: m }) => {\n const y = v ? o.has(m.id) || v(m) : !0;\n y && !_.includes(g) ? e.addChild(g) : !y && _.includes(g) && e.removeChild(g);\n }), n.render(e);\n }, c = (v) => {\n const { selected: _ } = v;\n o = new Set(_.map((g) => g.id));\n }, d = (v) => {\n if (typeof v == \"function\")\n i.forEach(({ g: _, annotation: g }, m) => {\n const y = v(g);\n y ? _.tint = y.fill ? En(y.fill) : bi : _.tint = bi;\n });\n else {\n const _ = v != null && v.fill ? En(v.fill) : bi;\n i.forEach(({ g }, m) => g.tint = _);\n }\n a = v, n.render(e);\n };\n return {\n addAnnotation: s,\n destroy: () => n.destroy(),\n redraw: u1(r, e, n),\n removeAnnotation: u,\n resize: f,\n setFilter: l,\n setSelected: c,\n setStyle: d,\n updateAnnotation: h\n };\n};\nfunction l1(r, t, e) {\n let n, i, { filter: o = void 0 } = t, { state: a } = t, { style: s = void 0 } = t, { viewer: u } = t;\n const { store: h, hover: f, selection: l, viewport: c } = a;\n ko(r, f, (x) => e(10, n = x)), ko(r, l, (x) => e(7, i = x));\n const d = qr();\n let p, v = !1;\n const _ = (x) => {\n const w = new Ei.Point(x.x, x.y), { x: S, y: I } = u.viewport.pointFromPixel(w);\n return u.viewport.viewportToImageCoordinates(S, I);\n }, g = (x) => (w) => {\n const { x: S, y: I } = _(new Ei.Point(w.offsetX, w.offsetY)), O = h.getAt(S, I);\n O && (!o || o(O)) ? (x.classList.add(\"hover\"), n !== O.id && f.set(O.id)) : (x.classList.remove(\"hover\"), n && f.set(null));\n }, m = (x) => {\n const w = x.originalEvent;\n if (!v) {\n const { x: S, y: I } = _(x.position), O = h.getAt(S, I);\n O ? d(\"click\", { originalEvent: w, annotation: O }) : d(\"click\", { originalEvent: w });\n }\n v = !1;\n }, y = () => v = !0;\n let T;\n return Wr(() => {\n const { offsetWidth: x, offsetHeight: w } = u.canvas, S = document.createElement(\"canvas\");\n S.width = x, S.height = w, S.className = \"a9s-gl-canvas\", u.element.querySelector(\".openseadragon-canvas\").appendChild(S), e(6, p = h1(u, S));\n const I = g(S);\n S.addEventListener(\"pointermove\", I), new ResizeObserver((P) => {\n try {\n const { width: A, height: R } = P[0].contentRect;\n S.width = A, S.height = R, p.resize(A, R);\n } catch {\n console.warn(\"WebGL canvas already disposed\");\n }\n }).observe(S);\n const b = () => {\n const P = u.viewport.getBounds();\n T = u.viewport.viewportToImageRectangle(P);\n const { x: A, y: R, width: M, height: D } = T, B = h.getIntersecting(A, R, M, D);\n c.set(B.map((X) => X.id));\n };\n return u.addHandler(\"canvas-drag\", y), u.addHandler(\"canvas-release\", m), u.addHandler(\"update-viewport\", p.redraw), u.addHandler(\"animation-finish\", b), () => {\n S.removeEventListener(\"pointermove\", I), u.removeHandler(\"canvas-drag\", y), u.removeHandler(\"canvas-release\", m), u.removeHandler(\"update-viewport\", p.redraw), u.removeHandler(\"animation-finish\", b), p.destroy(), S.parentNode.removeChild(S);\n };\n }), h.observe((x) => {\n const { created: w, updated: S, deleted: I } = x.changes;\n if (w.forEach((O) => p.addAnnotation(O)), S.forEach(({ oldValue: O, newValue: b }) => p.updateAnnotation(O, b)), I.forEach((O) => p.removeAnnotation(O)), T) {\n const { x: O, y: b, width: P, height: A } = T, R = h.getIntersecting(O, b, P, A);\n c.set(R.map((M) => M.id));\n } else\n c.set(h.all().map((O) => O.id));\n p.redraw();\n }), r.$$set = (x) => {\n \"filter\" in x && e(2, o = x.filter), \"state\" in x && e(3, a = x.state), \"style\" in x && e(4, s = x.style), \"viewer\" in x && e(5, u = x.viewer);\n }, r.$$.update = () => {\n r.$$.dirty & /*stage, filter*/\n 68 && (p == null || p.setFilter(o)), r.$$.dirty & /*stage, $selection*/\n 192 && (p == null || p.setSelected(i)), r.$$.dirty & /*stage, style*/\n 80 && (p == null || p.setStyle(s));\n }, [f, l, o, a, s, u, p, i];\n}\nclass f1 extends Jt {\n constructor(t) {\n super(), Zt(this, t, l1, null, Ht, { filter: 2, state: 3, style: 4, viewer: 5 });\n }\n}\nconst c1 = (r) => ({\n transform: r & /*layerTransform*/\n 2,\n scale: r & /*scale*/\n 1\n}), mh = (r) => ({\n transform: (\n /*layerTransform*/\n r[1]\n ),\n scale: (\n /*scale*/\n r[0]\n )\n});\nfunction d1(r) {\n let t;\n const e = (\n /*#slots*/\n r[4].default\n ), n = Uh(\n e,\n r,\n /*$$scope*/\n r[3],\n mh\n );\n return {\n c() {\n n && n.c();\n },\n m(i, o) {\n n && n.m(i, o), t = !0;\n },\n p(i, [o]) {\n n && n.p && (!t || o & /*$$scope, layerTransform, scale*/\n 11) && Hh(\n n,\n e,\n i,\n /*$$scope*/\n i[3],\n t ? kh(\n e,\n /*$$scope*/\n i[3],\n o,\n c1\n ) : Xh(\n /*$$scope*/\n i[3]\n ),\n mh\n );\n },\n i(i) {\n t || (lt(n, i), t = !0);\n },\n o(i) {\n mt(n, i), t = !1;\n },\n d(i) {\n n && n.d(i);\n }\n };\n}\nfunction p1(r, t, e) {\n let { $$slots: n = {}, $$scope: i } = t, { viewer: o } = t, a = 1, s;\n const u = () => {\n const h = o.viewport.getContainerSize().x, f = o.viewport.getZoom(!0), l = o.viewport.getFlip(), c = o.viewport.pixelFromPoint(new Ei.Point(0, 0), !0);\n l && (c.x = h - c.x);\n const d = f * h / o.world.getContentFactor(), p = l ? -d : d, v = o.viewport.getRotation();\n e(1, s = `translate(${c.x}, ${c.y}) scale(${p}, ${d}) rotate(${v})`), e(0, a = f * h / o.world.getContentFactor());\n };\n return Wr(() => (o.addHandler(\"update-viewport\", u), () => {\n o.removeHandler(\"update-viewport\", u);\n })), r.$$set = (h) => {\n \"viewer\" in h && e(2, o = h.viewer), \"$$scope\" in h && e(3, i = h.$$scope);\n }, [a, s, o, i, n];\n}\nclass uf extends Jt {\n constructor(t) {\n super(), Zt(this, t, p1, d1, Ht, { viewer: 2 });\n }\n}\nfunction v1(r, t, e) {\n const n = qr();\n let { drawingMode: i } = t, { target: o } = t, { tool: a } = t, { transform: s } = t, { viewer: u } = t, { viewportScale: h } = t, f;\n return Wr(() => {\n const l = o.closest(\"svg\"), c = [], d = (p, v, _) => {\n if (l.addEventListener(p, v, _), c.push(() => l.removeEventListener(p, v, _)), p === \"pointerup\" || p === \"dblclick\") {\n const g = (y) => {\n const { originalEvent: T } = y;\n v(T);\n }, m = p === \"pointerup\" ? \"canvas-click\" : \"canvas-double-click\";\n u.addHandler(m, g), c.push(() => u.removeHandler(m, g));\n } else if (p === \"pointermove\") {\n const g = (m) => {\n const { originalEvent: y } = m;\n v(y);\n };\n u.addHandler(\"canvas-drag\", g), c.push(() => u.removeHandler(\"canvas-drag\", g));\n }\n };\n return e(6, f = new a({\n target: o,\n props: {\n addEventListener: d,\n drawingMode: i,\n transform: s,\n viewportScale: h\n }\n })), f.$on(\"create\", (p) => n(\"create\", p.detail)), () => {\n c.forEach((p) => p()), f.$destroy();\n };\n }), r.$$set = (l) => {\n \"drawingMode\" in l && e(0, i = l.drawingMode), \"target\" in l && e(1, o = l.target), \"tool\" in l && e(2, a = l.tool), \"transform\" in l && e(3, s = l.transform), \"viewer\" in l && e(4, u = l.viewer), \"viewportScale\" in l && e(5, h = l.viewportScale);\n }, r.$$.update = () => {\n r.$$.dirty & /*toolComponent, transform*/\n 72 && f && f.$set({ transform: s }), r.$$.dirty & /*toolComponent, viewportScale*/\n 96 && f && f.$set({ viewportScale: h });\n }, [i, o, a, s, u, h, f];\n}\nclass _1 extends Jt {\n constructor(t) {\n super(), Zt(this, t, v1, null, Ht, {\n drawingMode: 0,\n target: 1,\n tool: 2,\n transform: 3,\n viewer: 4,\n viewportScale: 5\n });\n }\n}\nfunction gh(r, t, e) {\n const n = r.slice();\n return n[23] = t[e], n;\n}\nfunction m1(r) {\n let t = (\n /*tool*/\n r[1]\n ), e, n, i = yh(r);\n return {\n c() {\n i.c(), e = He();\n },\n m(o, a) {\n i.m(o, a), Z(o, e, a), n = !0;\n },\n p(o, a) {\n a & /*tool*/\n 2 && Ht(t, t = /*tool*/\n o[1]) ? (Xe(), mt(i, 1, 1, qt), je(), i = yh(o), i.c(), lt(i, 1), i.m(e.parentNode, e)) : i.p(o, a);\n },\n i(o) {\n n || (lt(i), n = !0);\n },\n o(o) {\n mt(i), n = !1;\n },\n d(o) {\n o && K(e), i.d(o);\n }\n };\n}\nfunction g1(r) {\n let t, e, n = (\n /*editableAnnotations*/\n r[5]\n ), i = [];\n for (let a = 0; a < n.length; a += 1)\n i[a] = xh(gh(r, n, a));\n const o = (a) => mt(i[a], 1, 1, () => {\n i[a] = null;\n });\n return {\n c() {\n for (let a = 0; a < i.length; a += 1)\n i[a].c();\n t = He();\n },\n m(a, s) {\n for (let u = 0; u < i.length; u += 1)\n i[u] && i[u].m(a, s);\n Z(a, t, s), e = !0;\n },\n p(a, s) {\n if (s & /*editableAnnotations, drawingEl, getEditor, toolTransform, scale, onGrab, onChangeSelected, onRelease*/\n 4196272) {\n n = /*editableAnnotations*/\n a[5];\n let u;\n for (u = 0; u < n.length; u += 1) {\n const h = gh(a, n, u);\n i[u] ? (i[u].p(h, s), lt(i[u], 1)) : (i[u] = xh(h), i[u].c(), lt(i[u], 1), i[u].m(t.parentNode, t));\n }\n for (Xe(), u = n.length; u < i.length; u += 1)\n o(u);\n je();\n }\n },\n i(a) {\n if (!e) {\n for (let s = 0; s < n.length; s += 1)\n lt(i[s]);\n e = !0;\n }\n },\n o(a) {\n i = i.filter(Boolean);\n for (let s = 0; s < i.length; s += 1)\n mt(i[s]);\n e = !1;\n },\n d(a) {\n Ha(i, a), a && K(t);\n }\n };\n}\nfunction yh(r) {\n let t, e;\n return t = new _1({\n props: {\n target: (\n /*drawingEl*/\n r[4]\n ),\n tool: (\n /*tool*/\n r[1]\n ),\n drawingMode: (\n /*drawingMode*/\n r[3]\n ),\n transform: { elementToImage: (\n /*toolTransform*/\n r[7]\n ) },\n viewer: (\n /*viewer*/\n r[2]\n ),\n viewportScale: (\n /*scale*/\n r[22]\n )\n }\n }), t.$on(\n \"create\",\n /*onSelectionCreated*/\n r[11]\n ), {\n c() {\n Ee(t.$$.fragment);\n },\n m(n, i) {\n ce(t, n, i), e = !0;\n },\n p(n, i) {\n const o = {};\n i & /*drawingEl*/\n 16 && (o.target = /*drawingEl*/\n n[4]), i & /*tool*/\n 2 && (o.tool = /*tool*/\n n[1]), i & /*drawingMode*/\n 8 && (o.drawingMode = /*drawingMode*/\n n[3]), i & /*viewer*/\n 4 && (o.viewer = /*viewer*/\n n[2]), i & /*scale*/\n 4194304 && (o.viewportScale = /*scale*/\n n[22]), t.$set(o);\n },\n i(n) {\n e || (lt(t.$$.fragment, n), e = !0);\n },\n o(n) {\n mt(t.$$.fragment, n), e = !1;\n },\n d(n) {\n de(t, n);\n }\n };\n}\nfunction bh(r) {\n let t, e;\n return t = new Sc({\n props: {\n target: (\n /*drawingEl*/\n r[4]\n ),\n editor: Cs(\n /*editable*/\n r[23].target.selector\n ),\n annotation: (\n /*editable*/\n r[23]\n ),\n transform: { elementToImage: (\n /*toolTransform*/\n r[7]\n ) },\n viewportScale: (\n /*scale*/\n r[22]\n )\n }\n }), t.$on(\n \"grab\",\n /*onGrab*/\n r[8]\n ), t.$on(\"change\", function() {\n jt(\n /*onChangeSelected*/\n r[10](\n /*editable*/\n r[23]\n )\n ) && r[10](\n /*editable*/\n r[23]\n ).apply(this, arguments);\n }), t.$on(\n \"release\",\n /*onRelease*/\n r[9]\n ), {\n c() {\n Ee(t.$$.fragment);\n },\n m(n, i) {\n ce(t, n, i), e = !0;\n },\n p(n, i) {\n r = n;\n const o = {};\n i & /*drawingEl*/\n 16 && (o.target = /*drawingEl*/\n r[4]), i & /*editableAnnotations*/\n 32 && (o.editor = Cs(\n /*editable*/\n r[23].target.selector\n )), i & /*editableAnnotations*/\n 32 && (o.annotation = /*editable*/\n r[23]), i & /*scale*/\n 4194304 && (o.viewportScale = /*scale*/\n r[22]), t.$set(o);\n },\n i(n) {\n e || (lt(t.$$.fragment, n), e = !0);\n },\n o(n) {\n mt(t.$$.fragment, n), e = !1;\n },\n d(n) {\n de(t, n);\n }\n };\n}\nfunction xh(r) {\n let t = (\n /*editable*/\n r[23].id\n ), e, n, i = bh(r);\n return {\n c() {\n i.c(), e = He();\n },\n m(o, a) {\n i.m(o, a), Z(o, e, a), n = !0;\n },\n p(o, a) {\n a & /*editableAnnotations*/\n 32 && Ht(t, t = /*editable*/\n o[23].id) ? (Xe(), mt(i, 1, 1, qt), je(), i = bh(o), i.c(), lt(i, 1), i.m(e.parentNode, e)) : i.p(o, a);\n },\n i(o) {\n n || (lt(i), n = !0);\n },\n o(o) {\n mt(i), n = !1;\n },\n d(o) {\n o && K(e), i.d(o);\n }\n };\n}\nfunction y1(r) {\n let t, e, n, i, o, a;\n const s = [g1, m1], u = [];\n function h(f, l) {\n return (\n /*drawingEl*/\n f[4] && /*editableAnnotations*/\n f[5] ? 0 : (\n /*drawingEl*/\n f[4] && /*tool*/\n f[1] && /*drawingEnabled*/\n f[0] ? 1 : -1\n )\n );\n }\n return ~(n = h(r)) && (i = u[n] = s[n](r)), {\n c() {\n t = ct(\"svg\"), e = ct(\"g\"), i && i.c(), E(e, \"transform\", o = /*transform*/\n r[21]), E(e, \"class\", \"svelte-190cqdf\"), E(t, \"class\", \"a9s-annotationlayer a9s-osd-drawinglayer svelte-190cqdf\"), ws(\n t,\n \"drawing\",\n /*drawingEnabled*/\n r[0]\n );\n },\n m(f, l) {\n Z(f, t, l), ir(t, e), ~n && u[n].m(e, null), r[17](e), a = !0;\n },\n p(f, l) {\n let c = n;\n n = h(f), n === c ? ~n && u[n].p(f, l) : (i && (Xe(), mt(u[c], 1, 1, () => {\n u[c] = null;\n }), je()), ~n ? (i = u[n], i ? i.p(f, l) : (i = u[n] = s[n](f), i.c()), lt(i, 1), i.m(e, null)) : i = null), (!a || l & /*transform*/\n 2097152 && o !== (o = /*transform*/\n f[21])) && E(e, \"transform\", o), (!a || l & /*drawingEnabled*/\n 1) && ws(\n t,\n \"drawing\",\n /*drawingEnabled*/\n f[0]\n );\n },\n i(f) {\n a || (lt(i), a = !0);\n },\n o(f) {\n mt(i), a = !1;\n },\n d(f) {\n f && K(t), ~n && u[n].d(), r[17](null);\n }\n };\n}\nfunction b1(r) {\n let t, e;\n return t = new uf({\n props: {\n viewer: (\n /*viewer*/\n r[2]\n ),\n $$slots: {\n default: [\n y1,\n ({ transform: n, scale: i }) => ({ 21: n, 22: i }),\n ({ transform: n, scale: i }) => (n ? 2097152 : 0) | (i ? 4194304 : 0)\n ]\n },\n $$scope: { ctx: r }\n }\n }), {\n c() {\n Ee(t.$$.fragment);\n },\n m(n, i) {\n ce(t, n, i), e = !0;\n },\n p(n, [i]) {\n const o = {};\n i & /*viewer*/\n 4 && (o.viewer = /*viewer*/\n n[2]), i & /*$$scope, drawingEnabled, transform, drawingEl, editableAnnotations, scale, tool, drawingMode, viewer*/\n 73400383 && (o.$$scope = { dirty: i, ctx: n }), t.$set(o);\n },\n i(n) {\n e || (lt(t.$$.fragment, n), e = !0);\n },\n o(n) {\n mt(t.$$.fragment, n), e = !1;\n },\n d(n) {\n de(t, n);\n }\n };\n}\nfunction x1(r, t, e) {\n let n, i, { drawingEnabled: o } = t, { preferredDrawingMode: a } = t, { state: s } = t, { tool: u, opts: h } = qh(\"rectangle\"), { tool: f = u, opts: l = h } = t, { user: c } = t, { viewer: d } = t, p;\n const { store: v, selection: _ } = s;\n ko(r, _, (b) => e(16, i = b));\n let g = null, m = null;\n const y = (b) => {\n v.unobserve(g);\n const P = b.filter(({ editable: A }) => A).map(({ id: A }) => A);\n P.length > 0 ? (e(5, m = P.map((A) => v.getAnnotation(A))), g = (A) => {\n const { updated: R } = A.changes;\n e(5, m = R.map((M) => M.newValue));\n }, v.observe(g, { annotations: P })) : e(5, m = null);\n }, T = (b, P) => {\n const { x: A, y: R } = d.viewport.viewerElementToImageCoordinates(new Ei.Point(b, P));\n return [A, R];\n }, x = () => d.setMouseNavEnabled(!1), w = () => d.setMouseNavEnabled(!0), S = (b) => (P) => {\n var D;\n const { target: A } = b, R = 10 * 60 * 1e3, M = ((D = A.creator) == null ? void 0 : D.id) !== c.id || !A.created || (/* @__PURE__ */ new Date()).getTime() - A.created.getTime() > R;\n v.updateTarget({\n ...A,\n selector: P.detail,\n created: M ? A.created : /* @__PURE__ */ new Date(),\n updated: M ? /* @__PURE__ */ new Date() : null,\n updatedBy: M ? c : null\n });\n }, I = (b) => {\n const P = Yh(), A = {\n id: P,\n bodies: [],\n target: {\n annotation: P,\n selector: b.detail,\n creator: c,\n created: /* @__PURE__ */ new Date()\n }\n };\n v.addAnnotation(A), _.setSelected(A.id), d.setMouseNavEnabled(!0);\n };\n function O(b) {\n Ti[b ? \"unshift\" : \"push\"](() => {\n p = b, e(4, p);\n });\n }\n return r.$$set = (b) => {\n \"drawingEnabled\" in b && e(0, o = b.drawingEnabled), \"preferredDrawingMode\" in b && e(12, a = b.preferredDrawingMode), \"state\" in b && e(13, s = b.state), \"tool\" in b && e(1, f = b.tool), \"opts\" in b && e(14, l = b.opts), \"user\" in b && e(15, c = b.user), \"viewer\" in b && e(2, d = b.viewer);\n }, r.$$.update = () => {\n r.$$.dirty & /*opts, preferredDrawingMode*/\n 20480 && e(3, n = (l == null ? void 0 : l.drawingMode) || a), r.$$.dirty & /*drawingEnabled, drawingMode, viewer*/\n 13 && (o && n === \"drag\" ? d.setMouseNavEnabled(!1) : d.setMouseNavEnabled(!0)), r.$$.dirty & /*drawingEnabled*/\n 1 && o && _.clear(), r.$$.dirty & /*$selection, drawingMode, drawingEnabled, viewer*/\n 65549 && i.selected.length === 0 && n === \"drag\" && o && d.setMouseNavEnabled(!1), r.$$.dirty & /*$selection*/\n 65536 && y(i.selected);\n }, [\n o,\n f,\n d,\n n,\n p,\n m,\n _,\n T,\n x,\n w,\n S,\n I,\n a,\n s,\n l,\n c,\n i,\n O\n ];\n}\nclass E1 extends Jt {\n constructor(t) {\n super(), Zt(this, t, x1, b1, Ht, {\n drawingEnabled: 0,\n preferredDrawingMode: 12,\n state: 13,\n tool: 1,\n opts: 14,\n user: 15,\n viewer: 2\n });\n }\n}\nfunction T1(r) {\n let t, e, n, i, o, a, s, u = (\n /*user*/\n r[2].appearance.label + \"\"\n ), h, f, l, c;\n return {\n c() {\n t = ct(\"g\"), e = ct(\"rect\"), s = ct(\"text\"), h = Xa(u), E(e, \"class\", \"a9s-presence-label-bg svelte-1rehw2p\"), E(\n e,\n \"x\",\n /*x*/\n r[0]\n ), E(e, \"y\", n = /*y*/\n r[1] - 18 / /*scale*/\n r[3]), E(e, \"height\", i = 18 / /*scale*/\n r[3]), E(e, \"fill\", o = /*user*/\n r[2].appearance.color), E(e, \"stroke\", a = /*user*/\n r[2].appearance.color), E(s, \"font-size\", f = 12 / /*scale*/\n r[3]), E(s, \"x\", l = /*x*/\n r[0] + Math.round(5 / /*scale*/\n r[3])), E(s, \"y\", c = /*y*/\n r[1] - 5 / /*scale*/\n r[3]), E(s, \"class\", \"svelte-1rehw2p\"), E(t, \"class\", \"a9s-presence-label\");\n },\n m(d, p) {\n Z(d, t, p), ir(t, e), ir(t, s), ir(s, h), r[6](t);\n },\n p(d, [p]) {\n p & /*x*/\n 1 && E(\n e,\n \"x\",\n /*x*/\n d[0]\n ), p & /*y, scale*/\n 10 && n !== (n = /*y*/\n d[1] - 18 / /*scale*/\n d[3]) && E(e, \"y\", n), p & /*scale*/\n 8 && i !== (i = 18 / /*scale*/\n d[3]) && E(e, \"height\", i), p & /*user*/\n 4 && o !== (o = /*user*/\n d[2].appearance.color) && E(e, \"fill\", o), p & /*user*/\n 4 && a !== (a = /*user*/\n d[2].appearance.color) && E(e, \"stroke\", a), p & /*user*/\n 4 && u !== (u = /*user*/\n d[2].appearance.label + \"\") && wf(h, u), p & /*scale*/\n 8 && f !== (f = 12 / /*scale*/\n d[3]) && E(s, \"font-size\", f), p & /*x, scale*/\n 9 && l !== (l = /*x*/\n d[0] + Math.round(5 / /*scale*/\n d[3])) && E(s, \"x\", l), p & /*y, scale*/\n 10 && c !== (c = /*y*/\n d[1] - 5 / /*scale*/\n d[3]) && E(s, \"y\", c);\n },\n i: qt,\n o: qt,\n d(d) {\n d && K(t), r[6](null);\n }\n };\n}\nfunction w1(r, t, e) {\n let { x: n } = t, { y: i } = t, { user: o } = t, { scale: a } = t, { hAlign: s = null } = t, u;\n const h = (l) => {\n const c = u.querySelector(\"text\"), d = u.querySelector(\"rect\"), p = c.getBBox().width + 10 / l;\n s === \"CENTER\" && u.setAttribute(\"style\", `transform: translateX(-${p / 2}px)`), d.setAttribute(\"width\", `${p}`);\n };\n function f(l) {\n Ti[l ? \"unshift\" : \"push\"](() => {\n u = l, e(4, u);\n });\n }\n return r.$$set = (l) => {\n \"x\" in l && e(0, n = l.x), \"y\" in l && e(1, i = l.y), \"user\" in l && e(2, o = l.user), \"scale\" in l && e(3, a = l.scale), \"hAlign\" in l && e(5, s = l.hAlign);\n }, r.$$.update = () => {\n r.$$.dirty & /*g, scale*/\n 24 && u && h(a);\n }, [n, i, o, a, u, s, f];\n}\nclass hf extends Jt {\n constructor(t) {\n super(), Zt(this, t, w1, T1, Ht, { x: 0, y: 1, user: 2, scale: 3, hAlign: 5 });\n }\n}\nfunction S1(r) {\n let t, e, n, i, o, a;\n return e = new hf({\n props: {\n scale: (\n /*scale*/\n r[1]\n ),\n user: (\n /*user*/\n r[0]\n ),\n x: (\n /*origin*/\n r[3][0]\n ),\n y: (\n /*origin*/\n r[3][1]\n ),\n hAlign: \"CENTER\"\n }\n }), {\n c() {\n t = ct(\"g\"), Ee(e.$$.fragment), n = ct(\"polygon\"), E(n, \"class\", \"a9s-presence-shape a9s-presence-polygon svelte-fgq4n0\"), E(n, \"stroke\", i = /*user*/\n r[0].appearance.color), E(n, \"fill\", \"transparent\"), E(n, \"points\", o = /*geom*/\n r[2].points.map(Eh).join(\" \")), E(t, \"class\", \"a9s-presence-overlay\");\n },\n m(s, u) {\n Z(s, t, u), ce(e, t, null), ir(t, n), a = !0;\n },\n p(s, [u]) {\n const h = {};\n u & /*scale*/\n 2 && (h.scale = /*scale*/\n s[1]), u & /*user*/\n 1 && (h.user = /*user*/\n s[0]), u & /*origin*/\n 8 && (h.x = /*origin*/\n s[3][0]), u & /*origin*/\n 8 && (h.y = /*origin*/\n s[3][1]), e.$set(h), (!a || u & /*user*/\n 1 && i !== (i = /*user*/\n s[0].appearance.color)) && E(n, \"stroke\", i), (!a || u & /*geom*/\n 4 && o !== (o = /*geom*/\n s[2].points.map(Eh).join(\" \"))) && E(n, \"points\", o);\n },\n i(s) {\n a || (lt(e.$$.fragment, s), a = !0);\n },\n o(s) {\n mt(e.$$.fragment, s), a = !1;\n },\n d(s) {\n s && K(t), de(e);\n }\n };\n}\nconst Eh = (r) => r.join(\",\");\nfunction A1(r, t, e) {\n let n, i, { annotation: o } = t, { user: a } = t, { scale: s } = t;\n const u = (h) => {\n let [f, ...l] = h.points;\n return l.forEach(([c, d]) => {\n d < f[1] && (f = [c, d]);\n }), f;\n };\n return r.$$set = (h) => {\n \"annotation\" in h && e(4, o = h.annotation), \"user\" in h && e(0, a = h.user), \"scale\" in h && e(1, s = h.scale);\n }, r.$$.update = () => {\n r.$$.dirty & /*annotation*/\n 16 && e(2, n = o.target.selector.geometry), r.$$.dirty & /*geom*/\n 4 && e(3, i = u(n));\n }, [a, s, n, i, o];\n}\nclass P1 extends Jt {\n constructor(t) {\n super(), Zt(this, t, A1, S1, Ht, { annotation: 4, user: 0, scale: 1 });\n }\n}\nfunction O1(r) {\n let t, e, n, i, o, a, s, u, h;\n return e = new hf({\n props: {\n scale: (\n /*scale*/\n r[1]\n ),\n user: (\n /*user*/\n r[0]\n ),\n x: (\n /*geom*/\n r[2].x\n ),\n y: (\n /*geom*/\n r[2].y\n )\n }\n }), {\n c() {\n t = ct(\"g\"), Ee(e.$$.fragment), n = ct(\"rect\"), E(n, \"class\", \"a9s-presence-shape a9s-presence-rectangle svelte-gze948\"), E(n, \"stroke\", i = /*user*/\n r[0].appearance.color), E(n, \"fill\", \"transparent\"), E(n, \"x\", o = /*geom*/\n r[2].x), E(n, \"y\", a = /*geom*/\n r[2].y), E(n, \"width\", s = /*geom*/\n r[2].w), E(n, \"height\", u = /*geom*/\n r[2].h), E(t, \"class\", \"a9s-presence-overlay\");\n },\n m(f, l) {\n Z(f, t, l), ce(e, t, null), ir(t, n), h = !0;\n },\n p(f, [l]) {\n const c = {};\n l & /*scale*/\n 2 && (c.scale = /*scale*/\n f[1]), l & /*user*/\n 1 && (c.user = /*user*/\n f[0]), l & /*geom*/\n 4 && (c.x = /*geom*/\n f[2].x), l & /*geom*/\n 4 && (c.y = /*geom*/\n f[2].y), e.$set(c), (!h || l & /*user*/\n 1 && i !== (i = /*user*/\n f[0].appearance.color)) && E(n, \"stroke\", i), (!h || l & /*geom*/\n 4 && o !== (o = /*geom*/\n f[2].x)) && E(n, \"x\", o), (!h || l & /*geom*/\n 4 && a !== (a = /*geom*/\n f[2].y)) && E(n, \"y\", a), (!h || l & /*geom*/\n 4 && s !== (s = /*geom*/\n f[2].w)) && E(n, \"width\", s), (!h || l & /*geom*/\n 4 && u !== (u = /*geom*/\n f[2].h)) && E(n, \"height\", u);\n },\n i(f) {\n h || (lt(e.$$.fragment, f), h = !0);\n },\n o(f) {\n mt(e.$$.fragment, f), h = !1;\n },\n d(f) {\n f && K(t), de(e);\n }\n };\n}\nfunction R1(r, t, e) {\n let n, { annotation: i } = t, { user: o } = t, { scale: a } = t;\n return r.$$set = (s) => {\n \"annotation\" in s && e(3, i = s.annotation), \"user\" in s && e(0, o = s.user), \"scale\" in s && e(1, a = s.scale);\n }, r.$$.update = () => {\n r.$$.dirty & /*annotation*/\n 8 && e(2, n = i.target.selector.geometry);\n }, [o, a, n, i];\n}\nclass I1 extends Jt {\n constructor(t) {\n super(), Zt(this, t, R1, O1, Ht, { annotation: 3, user: 0, scale: 1 });\n }\n}\nconst { Boolean: C1 } = Ef;\nfunction Th(r, t, e) {\n const n = r.slice();\n return n[8] = t[e], n;\n}\nfunction wh(r) {\n let t, e;\n return t = new uf({\n props: {\n viewer: (\n /*viewer*/\n r[0]\n ),\n $$slots: {\n default: [\n F1,\n ({ transform: n, scale: i }) => ({ 6: n, 7: i }),\n ({ transform: n, scale: i }) => (n ? 64 : 0) | (i ? 128 : 0)\n ]\n },\n $$scope: { ctx: r }\n }\n }), {\n c() {\n Ee(t.$$.fragment);\n },\n m(n, i) {\n ce(t, n, i), e = !0;\n },\n p(n, i) {\n const o = {};\n i & /*viewer*/\n 1 && (o.viewer = /*viewer*/\n n[0]), i & /*$$scope, transform, trackedAnnotations, scale*/\n 2244 && (o.$$scope = { dirty: i, ctx: n }), t.$set(o);\n },\n i(n) {\n e || (lt(t.$$.fragment, n), e = !0);\n },\n o(n) {\n mt(t.$$.fragment, n), e = !1;\n },\n d(n) {\n de(t, n);\n }\n };\n}\nfunction Sh(r) {\n let t, e, n = (\n /*trackedAnnotations*/\n r[2]\n ), i = [];\n for (let a = 0; a < n.length; a += 1)\n i[a] = Ah(Th(r, n, a));\n const o = (a) => mt(i[a], 1, 1, () => {\n i[a] = null;\n });\n return {\n c() {\n for (let a = 0; a < i.length; a += 1)\n i[a].c();\n t = He();\n },\n m(a, s) {\n for (let u = 0; u < i.length; u += 1)\n i[u] && i[u].m(a, s);\n Z(a, t, s), e = !0;\n },\n p(a, s) {\n if (s & /*trackedAnnotations, scale, ShapeType*/\n 132) {\n n = /*trackedAnnotations*/\n a[2];\n let u;\n for (u = 0; u < n.length; u += 1) {\n const h = Th(a, n, u);\n i[u] ? (i[u].p(h, s), lt(i[u], 1)) : (i[u] = Ah(h), i[u].c(), lt(i[u], 1), i[u].m(t.parentNode, t));\n }\n for (Xe(), u = n.length; u < i.length; u += 1)\n o(u);\n je();\n }\n },\n i(a) {\n if (!e) {\n for (let s = 0; s < n.length; s += 1)\n lt(i[s]);\n e = !0;\n }\n },\n o(a) {\n i = i.filter(C1);\n for (let s = 0; s < i.length; s += 1)\n mt(i[s]);\n e = !1;\n },\n d(a) {\n Ha(i, a), a && K(t);\n }\n };\n}\nfunction M1(r) {\n let t, e;\n return t = new P1({\n props: {\n annotation: (\n /*tracked*/\n r[8].annotation\n ),\n user: (\n /*tracked*/\n r[8].selectedBy\n ),\n scale: (\n /*scale*/\n r[7]\n )\n }\n }), {\n c() {\n Ee(t.$$.fragment);\n },\n m(n, i) {\n ce(t, n, i), e = !0;\n },\n p(n, i) {\n const o = {};\n i & /*trackedAnnotations*/\n 4 && (o.annotation = /*tracked*/\n n[8].annotation), i & /*trackedAnnotations*/\n 4 && (o.user = /*tracked*/\n n[8].selectedBy), i & /*scale*/\n 128 && (o.scale = /*scale*/\n n[7]), t.$set(o);\n },\n i(n) {\n e || (lt(t.$$.fragment, n), e = !0);\n },\n o(n) {\n mt(t.$$.fragment, n), e = !1;\n },\n d(n) {\n de(t, n);\n }\n };\n}\nfunction D1(r) {\n let t, e;\n return t = new I1({\n props: {\n annotation: (\n /*tracked*/\n r[8].annotation\n ),\n user: (\n /*tracked*/\n r[8].selectedBy\n ),\n scale: (\n /*scale*/\n r[7]\n )\n }\n }), {\n c() {\n Ee(t.$$.fragment);\n },\n m(n, i) {\n ce(t, n, i), e = !0;\n },\n p(n, i) {\n const o = {};\n i & /*trackedAnnotations*/\n 4 && (o.annotation = /*tracked*/\n n[8].annotation), i & /*trackedAnnotations*/\n 4 && (o.user = /*tracked*/\n n[8].selectedBy), i & /*scale*/\n 128 && (o.scale = /*scale*/\n n[7]), t.$set(o);\n },\n i(n) {\n e || (lt(t.$$.fragment, n), e = !0);\n },\n o(n) {\n mt(t.$$.fragment, n), e = !1;\n },\n d(n) {\n de(t, n);\n }\n };\n}\nfunction Ah(r) {\n let t, e, n, i;\n const o = [D1, M1], a = [];\n function s(u, h) {\n return (\n /*tracked*/\n u[8].annotation.target.selector.type === $t.RECTANGLE ? 0 : (\n /*tracked*/\n u[8].annotation.target.selector.type === $t.POLYGON ? 1 : -1\n )\n );\n }\n return ~(t = s(r)) && (e = a[t] = o[t](r)), {\n c() {\n e && e.c(), n = He();\n },\n m(u, h) {\n ~t && a[t].m(u, h), Z(u, n, h), i = !0;\n },\n p(u, h) {\n let f = t;\n t = s(u), t === f ? ~t && a[t].p(u, h) : (e && (Xe(), mt(a[f], 1, 1, () => {\n a[f] = null;\n }), je()), ~t ? (e = a[t], e ? e.p(u, h) : (e = a[t] = o[t](u), e.c()), lt(e, 1), e.m(n.parentNode, n)) : e = null);\n },\n i(u) {\n i || (lt(e), i = !0);\n },\n o(u) {\n mt(e), i = !1;\n },\n d(u) {\n ~t && a[t].d(u), u && K(n);\n }\n };\n}\nfunction F1(r) {\n let t, e, n, i, o = (\n /*trackedAnnotations*/\n r[2].length > 0 && Sh(r)\n );\n return {\n c() {\n t = ct(\"svg\"), e = ct(\"g\"), o && o.c(), E(e, \"transform\", n = /*transform*/\n r[6]), E(t, \"class\", \"a9s-osd-presencelayer svelte-1krwc4m\");\n },\n m(a, s) {\n Z(a, t, s), ir(t, e), o && o.m(e, null), i = !0;\n },\n p(a, s) {\n /*trackedAnnotations*/\n a[2].length > 0 ? o ? (o.p(a, s), s & /*trackedAnnotations*/\n 4 && lt(o, 1)) : (o = Sh(a), o.c(), lt(o, 1), o.m(e, null)) : o && (Xe(), mt(o, 1, 1, () => {\n o = null;\n }), je()), (!i || s & /*transform*/\n 64 && n !== (n = /*transform*/\n a[6])) && E(e, \"transform\", n);\n },\n i(a) {\n i || (lt(o), i = !0);\n },\n o(a) {\n mt(o), i = !1;\n },\n d(a) {\n a && K(t), o && o.d();\n }\n };\n}\nfunction B1(r) {\n let t = !!/*provider*/\n r[1], e, n, i = t && wh(r);\n return {\n c() {\n i && i.c(), e = He();\n },\n m(o, a) {\n i && i.m(o, a), Z(o, e, a), n = !0;\n },\n p(o, [a]) {\n a & /*provider*/\n 2 && (t = !!/*provider*/\n o[1]), t ? i ? (i.p(o, a), a & /*provider*/\n 2 && lt(i, 1)) : (i = wh(o), i.c(), lt(i, 1), i.m(e.parentNode, e)) : i && (Xe(), mt(i, 1, 1, () => {\n i = null;\n }), je());\n },\n i(o) {\n n || (lt(i), n = !0);\n },\n o(o) {\n mt(i), n = !1;\n },\n d(o) {\n i && i.d(o), o && K(e);\n }\n };\n}\nfunction N1(r, t, e) {\n let { store: n } = t, { viewer: i } = t, { provider: o = null } = t, a = [], s = null;\n const u = (h, f) => {\n e(2, a = [\n ...a.filter(({ selectedBy: l }) => l.presenceKey !== h.presenceKey),\n ...(f || []).map((l) => ({\n // Warning - could be undefined!\n annotation: n.getAnnotation(l),\n selectedBy: h\n }))\n ].filter(({ annotation: l }) => (l || console.warn(\"Selection event on unknown annotation\"), !!l))), s && n.unobserve(s), s = (l) => {\n const { deleted: c, updated: d } = l.changes, p = new Set(c.map((_) => _.id)), v = a.filter(({ annotation: _ }) => !p.has(_.id)).map((_) => {\n const g = d.find((m) => m.oldValue.id === _.annotation.id);\n return g ? {\n selectedBy: _.selectedBy,\n annotation: g.newValue\n } : _;\n });\n e(2, a = v);\n }, n.observe(s, {\n annotations: a.map((l) => l.annotation.id)\n });\n };\n return Af(() => {\n s && n.unobserve(s);\n }), r.$$set = (h) => {\n \"store\" in h && e(3, n = h.store), \"viewer\" in h && e(0, i = h.viewer), \"provider\" in h && e(1, o = h.provider);\n }, r.$$.update = () => {\n r.$$.dirty & /*provider*/\n 2 && o && o.on(\"selectionChange\", u);\n }, [i, o, a, n];\n}\nclass L1 extends Jt {\n constructor(t) {\n super(), Zt(this, t, N1, B1, Ht, { store: 3, viewer: 0, provider: 1 });\n }\n}\nconst U1 = (r) => {\n r.addHandler(\"open\", (t) => {\n const e = r.world.getItemCount();\n r.world.getItemAt(e - 1).addOnceHandler(\"fully-loaded-change\", (i) => {\n const { fullyLoaded: o } = i;\n if (o) {\n const a = r.canvas.querySelector(\"canvas\");\n zc(a, r.element);\n }\n });\n });\n}, lf = (r, t, e) => (n, i = {}) => {\n const o = typeof n == \"string\" ? n : n.id, a = t.getAnnotation(o);\n if (!a)\n return;\n const s = r.container.getBoundingClientRect(), { padding: u } = i;\n let [h, f, l, c] = u ? Array.isArray(u) ? u : [u, u, u, u] : [0, 0, 0, 0];\n h = h / s.height, f = f / s.width, l = l / s.height, c = c / s.width;\n const { minX: d, minY: p, maxX: v, maxY: _ } = a.target.selector.geometry.bounds, g = v - d, m = _ - p, y = d - c * g, T = p - h * m, x = g + (f + c) * g, w = m + (h + l) * m, S = r.viewport.imageToViewportRectangle(y, T, x, w);\n r.viewport[e](S, i.immediately);\n}, G1 = (r, t) => lf(r, t, \"fitBounds\"), k1 = (r, t) => lf(r, t, \"fitBoundsWithConstraints\");\nconst kE = (r, t = {}) => {\n const e = Wc(t), n = Yc(e), { hover: i, selection: o, store: a } = n, s = Zf(\n a,\n o,\n i,\n void 0,\n e.adapter,\n e.autoSave\n ), u = $f(a);\n let h = ic(), f = e.drawingEnabled, l = e.drawingMode;\n const c = qc(u, r.element), d = new f1({\n target: r.element,\n props: {\n state: n,\n viewer: r,\n style: e.style\n }\n }), p = new L1({\n target: r.element.querySelector(\".openseadragon-canvas\"),\n props: {\n store: a,\n viewer: r,\n provider: null\n }\n }), v = new E1({\n target: r.element.querySelector(\".openseadragon-canvas\"),\n props: {\n drawingEnabled: f,\n preferredDrawingMode: l,\n state: n,\n user: h,\n viewer: r\n }\n });\n d.$on(\"click\", (M) => {\n const { originalEvent: D, annotation: B } = M.detail;\n B && !(l === \"click\" && f) ? o.clickSelect(B.id, D) : o.isEmpty() || o.clear();\n }), r.element.addEventListener(\"pointerdown\", (M) => {\n if (i.current) {\n const D = a.getAnnotation(i.current);\n s.emit(\"clickAnnotation\", D, M);\n }\n }), U1(r);\n const _ = Qf(a, u, e.adapter), g = () => {\n d.$destroy(), p.$destroy(), v.$destroy(), c.destroy(), u.destroy();\n }, m = G1(r, a), y = k1(r, a), T = () => h, x = (M, D, B) => Fc(M, D, B), w = (M, D) => yc(M, D), S = (M) => {\n const D = qh(M);\n if (!D)\n throw `Tool not found: ${M}`;\n const { tool: B, opts: X } = D;\n l = (X == null ? void 0 : X.drawingMode) || l, v.$set({ tool: B, opts: X });\n }, I = (M) => {\n f = M, v.$set({ drawingEnabled: f });\n }, O = (M) => d.$set({ filter: M }), b = (M) => {\n M ? o.setSelected(M) : o.clear();\n }, P = (M) => d.$set({ style: M }), A = (M) => p.$set({ provider: M }), R = (M) => {\n h = M, v.$set({ user: M });\n };\n return {\n ..._,\n destroy: g,\n fitBounds: m,\n fitBoundsWithConstraints: y,\n getUser: T,\n listDrawingTools: Dc,\n on: s.on,\n off: s.off,\n registerDrawingTool: x,\n registerShapeEditor: w,\n setDrawingEnabled: I,\n setDrawingTool: S,\n setFilter: O,\n setPresenceProvider: A,\n setSelected: b,\n setStyle: P,\n setUser: R,\n state: n,\n viewer: r\n };\n};\nfunction Ua() {\n}\nfunction H1(r, t) {\n for (const e in t)\n r[e] = t[e];\n return r;\n}\nfunction ff(r) {\n return r();\n}\nfunction Ph() {\n return /* @__PURE__ */ Object.create(null);\n}\nfunction pr(r) {\n r.forEach(ff);\n}\nfunction zt(r) {\n return typeof r == \"function\";\n}\nfunction fs(r, t) {\n return r != r ? t == t : r !== t || r && typeof r == \"object\" || typeof r == \"function\";\n}\nfunction X1(r) {\n return Object.keys(r).length === 0;\n}\nfunction j1(r, t, e, n) {\n if (r) {\n const i = cf(r, t, e, n);\n return r[0](i);\n }\n}\nfunction cf(r, t, e, n) {\n return r[1] && n ? H1(e.ctx.slice(), r[1](n(t))) : e.ctx;\n}\nfunction Y1(r, t, e, n) {\n if (r[2] && n) {\n const i = r[2](n(e));\n if (t.dirty === void 0)\n return i;\n if (typeof i == \"object\") {\n const o = [], a = Math.max(t.dirty.length, i.length);\n for (let s = 0; s < a; s += 1)\n o[s] = t.dirty[s] | i[s];\n return o;\n }\n return t.dirty | i;\n }\n return t.dirty;\n}\nfunction V1(r, t, e, n, i, o) {\n if (i) {\n const a = cf(t, e, n, o);\n r.p(a, i);\n }\n}\nfunction z1(r) {\n if (r.ctx.length > 32) {\n const t = [], e = r.ctx.length / 32;\n for (let n = 0; n < e; n++)\n t[n] = -1;\n return t;\n }\n return -1;\n}\nfunction bt(r, t, e) {\n r.insertBefore(t, e || null);\n}\nfunction yt(r) {\n r.parentNode && r.parentNode.removeChild(r);\n}\nfunction W1(r, t) {\n for (let e = 0; e < r.length; e += 1)\n r[e] && r[e].d(t);\n}\nfunction Kt(r) {\n return document.createElementNS(\"http://www.w3.org/2000/svg\", r);\n}\nfunction df(r) {\n return document.createTextNode(r);\n}\nfunction oe() {\n return df(\" \");\n}\nfunction q1() {\n return df(\"\");\n}\nfunction Wt(r, t, e, n) {\n return r.addEventListener(t, e, n), () => r.removeEventListener(t, e, n);\n}\nfunction F(r, t, e) {\n e == null ? r.removeAttribute(t) : r.getAttribute(t) !== e && r.setAttribute(t, e);\n}\nfunction $1(r) {\n return Array.from(r.childNodes);\n}\nfunction K1(r, t, { bubbles: e = !1, cancelable: n = !1 } = {}) {\n const i = document.createEvent(\"CustomEvent\");\n return i.initCustomEvent(r, e, n, t), i;\n}\nlet On;\nfunction vn(r) {\n On = r;\n}\nfunction Z1() {\n if (!On)\n throw new Error(\"Function called outside component initialization\");\n return On;\n}\nfunction J1() {\n const r = Z1();\n return (t, e, { cancelable: n = !1 } = {}) => {\n const i = r.$$.callbacks[t];\n if (i) {\n const o = K1(t, e, { cancelable: n });\n return i.slice().forEach((a) => {\n a.call(r, o);\n }), !o.defaultPrevented;\n }\n return !0;\n };\n}\nfunction Gr(r, t) {\n const e = r.$$.callbacks[t.type];\n e && e.slice().forEach((n) => n.call(this, t));\n}\nconst Or = [], Oh = [];\nlet kr = [];\nconst Rh = [], Q1 = /* @__PURE__ */ Promise.resolve();\nlet Ga = !1;\nfunction tE() {\n Ga || (Ga = !0, Q1.then(pf));\n}\nfunction ka(r) {\n kr.push(r);\n}\nconst Go = /* @__PURE__ */ new Set();\nlet wr = 0;\nfunction pf() {\n if (wr !== 0)\n return;\n const r = On;\n do {\n try {\n for (; wr < Or.length; ) {\n const t = Or[wr];\n wr++, vn(t), eE(t.$$);\n }\n } catch (t) {\n throw Or.length = 0, wr = 0, t;\n }\n for (vn(null), Or.length = 0, wr = 0; Oh.length; )\n Oh.pop()();\n for (let t = 0; t < kr.length; t += 1) {\n const e = kr[t];\n Go.has(e) || (Go.add(e), e());\n }\n kr.length = 0;\n } while (Or.length);\n for (; Rh.length; )\n Rh.pop()();\n Ga = !1, Go.clear(), vn(r);\n}\nfunction eE(r) {\n if (r.fragment !== null) {\n r.update(), pr(r.before_update);\n const t = r.dirty;\n r.dirty = [-1], r.fragment && r.fragment.p(r.ctx, t), r.after_update.forEach(ka);\n }\n}\nfunction rE(r) {\n const t = [], e = [];\n kr.forEach((n) => r.indexOf(n) === -1 ? t.push(n) : e.push(n)), e.forEach((n) => n()), kr = t;\n}\nconst xi = /* @__PURE__ */ new Set();\nlet nE;\nfunction Vi(r, t) {\n r && r.i && (xi.delete(r), r.i(t));\n}\nfunction cs(r, t, e, n) {\n if (r && r.o) {\n if (xi.has(r))\n return;\n xi.add(r), nE.c.push(() => {\n xi.delete(r), n && (e && r.d(1), n());\n }), r.o(t);\n } else\n n && n();\n}\nfunction vf(r) {\n r && r.c();\n}\nfunction ds(r, t, e, n) {\n const { fragment: i, after_update: o } = r.$$;\n i && i.m(t, e), n || ka(() => {\n const a = r.$$.on_mount.map(ff).filter(zt);\n r.$$.on_destroy ? r.$$.on_destroy.push(...a) : pr(a), r.$$.on_mount = [];\n }), o.forEach(ka);\n}\nfunction ps(r, t) {\n const e = r.$$;\n e.fragment !== null && (rE(e.after_update), pr(e.on_destroy), e.fragment && e.fragment.d(t), e.on_destroy = e.fragment = null, e.ctx = []);\n}\nfunction iE(r, t) {\n r.$$.dirty[0] === -1 && (Or.push(r), tE(), r.$$.dirty.fill(0)), r.$$.dirty[t / 31 | 0] |= 1 << t % 31;\n}\nfunction vs(r, t, e, n, i, o, a, s = [-1]) {\n const u = On;\n vn(r);\n const h = r.$$ = {\n fragment: null,\n ctx: [],\n // state\n props: o,\n update: Ua,\n not_equal: i,\n bound: Ph(),\n // lifecycle\n on_mount: [],\n on_destroy: [],\n on_disconnect: [],\n before_update: [],\n after_update: [],\n context: new Map(t.context || (u ? u.$$.context : [])),\n // everything else\n callbacks: Ph(),\n dirty: s,\n skip_bound: !1,\n root: t.target || u.$$.root\n };\n a && a(h.root);\n let f = !1;\n if (h.ctx = e ? e(r, t.props || {}, (l, c, ...d) => {\n const p = d.length ? d[0] : c;\n return h.ctx && i(h.ctx[l], h.ctx[l] = p) && (!h.skip_bound && h.bound[l] && h.bound[l](p), f && iE(r, l)), c;\n }) : [], h.update(), f = !0, pr(h.before_update), h.fragment = n ? n(h.ctx) : !1, t.target) {\n if (t.hydrate) {\n const l = $1(t.target);\n h.fragment && h.fragment.l(l), l.forEach(yt);\n } else\n h.fragment && h.fragment.c();\n t.intro && Vi(r.$$.fragment), ds(r, t.target, t.anchor, t.customElement), pf();\n }\n vn(u);\n}\nclass _s {\n $destroy() {\n ps(this, 1), this.$destroy = Ua;\n }\n $on(t, e) {\n if (!zt(e))\n return Ua;\n const n = this.$$.callbacks[t] || (this.$$.callbacks[t] = []);\n return n.push(e), () => {\n const i = n.indexOf(e);\n i !== -1 && n.splice(i, 1);\n };\n }\n $set(t) {\n this.$$set && !X1(t) && (this.$$.skip_bound = !0, this.$$set(t), this.$$.skip_bound = !1);\n }\n}\nvar te = /* @__PURE__ */ ((r) => (r.ELLIPSE = \"ELLIPSE\", r.POLYGON = \"POLYGON\", r.RECTANGLE = \"RECTANGLE\", r))(te || {});\nconst ms = (r, t) => t, _f = (r) => {\n let t = 1 / 0, e = 1 / 0, n = -1 / 0, i = -1 / 0;\n return r.forEach(([o, a]) => {\n t = Math.min(t, o), e = Math.min(e, a), n = Math.max(n, o), i = Math.max(i, a);\n }), { minX: t, minY: e, maxX: n, maxY: i };\n}, oE = {\n area: (r) => Math.PI * r.geometry.rx * r.geometry.ry,\n intersects: (r, t, e) => {\n const { cx: n, cy: i, rx: o, ry: a } = r.geometry, s = 0, u = Math.cos(s), h = Math.sin(s), f = t - n, l = e - i, c = u * f + h * l, d = h * f - u * l;\n return c * c / (o * o) + d * d / (a * a) <= 1;\n }\n};\nms(te.ELLIPSE, oE);\nconst aE = {\n area: (r) => {\n const { points: t } = r.geometry;\n let e = 0, n = t.length - 1;\n for (let i = 0; i < t.length; i++)\n e += (t[n][0] + t[i][0]) * (t[n][1] - t[i][1]), n = i;\n return Math.abs(0.5 * e);\n },\n intersects: (r, t, e) => {\n const { points: n } = r.geometry;\n let i = !1;\n for (let o = 0, a = n.length - 1; o < n.length; a = o++) {\n const s = n[o][0], u = n[o][1], h = n[a][0], f = n[a][1];\n u > e != f > e && t < (h - s) * (e - u) / (f - u) + s && (i = !i);\n }\n return i;\n }\n};\nms(te.POLYGON, aE);\nconst sE = {\n area: (r) => r.geometry.w * r.geometry.h,\n intersects: (r, t, e) => t >= r.geometry.x && t <= r.geometry.x + r.geometry.w && e >= r.geometry.y && e <= r.geometry.y + r.geometry.h\n};\nms(te.RECTANGLE, sE);\nconst uE = (r, t = !1) => {\n const e = typeof r == \"string\" ? r : r.value, n = /^(xywh)=(pixel|percent)?:?(.+?),(.+?),(.+?),(.+)*/g, i = [...e.matchAll(n)][0], [o, a, s, u, h, f, l] = i;\n if (a !== \"xywh\")\n throw new Error(\"Unsupported MediaFragment: \" + e);\n if (s && s !== \"pixel\")\n throw new Error(`Unsupported MediaFragment unit: ${s}`);\n const [c, d, p, v] = [u, h, f, l].map(parseFloat);\n return {\n type: te.RECTANGLE,\n geometry: {\n x: c,\n y: d,\n w: p,\n h: v,\n bounds: {\n minX: c,\n minY: t ? d - v : d,\n maxX: c + p,\n maxY: t ? d : d + v\n }\n }\n };\n}, hE = (r) => {\n const { x: t, y: e, w: n, h: i } = r;\n return {\n type: \"FragmentSelector\",\n conformsTo: \"http://www.w3.org/TR/media-frags/\",\n value: `xywh=pixel:${t},${e},${n},${i}`\n };\n}, mf = \"http://www.w3.org/2000/svg\", Ih = (r) => {\n const t = (n) => {\n Array.from(n.attributes).forEach((i) => {\n i.name.startsWith(\"on\") && n.removeAttribute(i.name);\n });\n }, e = r.getElementsByTagName(\"script\");\n return Array.from(e).reverse().forEach((n) => n.parentNode.removeChild(n)), Array.from(r.querySelectorAll(\"*\")).forEach(t), r;\n}, lE = (r) => {\n const t = new XMLSerializer().serializeToString(r.documentElement).replace(\"<svg>\", `<svg xmlns=\"${mf}\">`);\n return new DOMParser().parseFromString(t, \"image/svg+xml\").documentElement;\n}, fE = (r) => {\n const t = new DOMParser().parseFromString(r, \"image/svg+xml\"), e = t.lookupPrefix(mf), n = t.lookupNamespaceURI(null);\n return e || n ? Ih(t).firstChild : Ih(lE(t)).firstChild;\n}, cE = (r) => {\n const [t, e, n] = r.match(/(<polygon points=[\"|'])([^(\"|')]*)/) || [];\n if (!n)\n return;\n const i = n.split(\" \").map((o) => o.split(\",\").map(parseFloat));\n return {\n type: te.POLYGON,\n geometry: {\n points: i,\n bounds: _f(i)\n }\n };\n}, dE = (r) => {\n const t = fE(r), e = parseFloat(t.getAttribute(\"cx\")), n = parseFloat(t.getAttribute(\"cy\")), i = parseFloat(t.getAttribute(\"rx\")), o = parseFloat(t.getAttribute(\"ry\")), a = {\n minX: e - i,\n minY: n - o,\n maxX: e + i,\n maxY: n + o\n };\n return {\n type: te.ELLIPSE,\n geometry: {\n cx: e,\n cy: n,\n rx: i,\n ry: o,\n bounds: a\n }\n };\n}, pE = (r) => {\n const t = typeof r == \"string\" ? r : r.value;\n if (t.includes(\"<polygon points=\"))\n return cE(t);\n if (t.includes(\"<ellipse \"))\n return dE(t);\n}, vE = (r) => {\n let t;\n if (r.type === te.POLYGON) {\n const e = r.geometry, { points: n } = e;\n t = `<svg><polygon points=\"${n.map((i) => i.join(\",\")).join(\" \")}\" /></svg>`;\n } else if (r.type === te.ELLIPSE) {\n const e = r.geometry;\n t = `<svg><ellipse cx=\"${e.cx}\" cy=\"${e.cy}\" rx=\"${e.rx}\" ry=\"${e.ry}\" /></svg>`;\n }\n if (t)\n return { type: \"SvgSelector\", value: t };\n throw `Unsupported shape type: ${r.type}`;\n};\nlet di;\nconst _E = new Uint8Array(16);\nfunction mE() {\n if (!di && (di = typeof crypto < \"u\" && crypto.getRandomValues && crypto.getRandomValues.bind(crypto), !di))\n throw new Error(\"crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported\");\n return di(_E);\n}\nconst Ut = [];\nfor (let r = 0; r < 256; ++r)\n Ut.push((r + 256).toString(16).slice(1));\nfunction gE(r, t = 0) {\n return Ut[r[t + 0]] + Ut[r[t + 1]] + Ut[r[t + 2]] + Ut[r[t + 3]] + \"-\" + Ut[r[t + 4]] + Ut[r[t + 5]] + \"-\" + Ut[r[t + 6]] + Ut[r[t + 7]] + \"-\" + Ut[r[t + 8]] + Ut[r[t + 9]] + \"-\" + Ut[r[t + 10]] + Ut[r[t + 11]] + Ut[r[t + 12]] + Ut[r[t + 13]] + Ut[r[t + 14]] + Ut[r[t + 15]];\n}\nconst yE = typeof crypto < \"u\" && crypto.randomUUID && crypto.randomUUID.bind(crypto), Ch = {\n randomUUID: yE\n};\nfunction bE(r, t, e) {\n if (Ch.randomUUID && !t && !r)\n return Ch.randomUUID();\n r = r || {};\n const n = r.random || (r.rng || mE)();\n if (n[6] = n[6] & 15 | 64, n[8] = n[8] & 63 | 128, t) {\n e = e || 0;\n for (let i = 0; i < 16; ++i)\n t[e + i] = n[i];\n return t;\n }\n return gE(n);\n}\nlet xE = (r = 21) => crypto.getRandomValues(new Uint8Array(r)).reduce((t, e) => (e &= 63, e < 36 ? t += e.toString(36) : e < 62 ? t += (e - 26).toString(36).toUpperCase() : e > 62 ? t += \"-\" : t += \"_\", t), \"\");\nconst EE = (r) => {\n const t = JSON.stringify(r);\n let e = 0;\n for (let n = 0, i = t.length; n < i; n++) {\n let o = t.charCodeAt(n);\n e = (e << 5) - e + o, e |= 0;\n }\n return `${e}`;\n}, TE = (r, t) => (Array.isArray(r) ? r : [r]).map((e) => {\n const { id: n, type: i, purpose: o, value: a, created: s, creator: u, ...h } = e;\n return {\n id: n || `temp-${EE(e)}`,\n annotation: t,\n type: i,\n purpose: o,\n value: a,\n created: s,\n creator: u ? typeof u == \"object\" ? { ...u } : u : void 0,\n ...h\n };\n}), wE = (r) => r.map((t) => {\n var e;\n const n = { ...t };\n return delete n.annotation, (e = n.id) != null && e.startsWith(\"temp-\") && delete n.id, n;\n});\nxE();\nconst SE = (r, t = !1) => ({ parse: (e) => AE(e, t), serialize: (e) => PE(e, r) }), AE = (r, t = !1) => {\n const e = r.id || bE(), { body: n, ...i } = r, o = TE(n, e), a = Array.isArray(r.target) ? r.target[0] : r.target, s = Array.isArray(a.selector) ? a.selector[0] : a.selector, u = s.type === \"FragmentSelector\" ? uE(s, t) : s.type === \"SvgSelector\" ? pE(s) : void 0;\n return u ? {\n parsed: {\n ...i,\n id: e,\n bodies: o,\n target: {\n annotation: e,\n selector: u\n }\n }\n } : {\n error: Error(`Unknown selector type: ${u.type}`)\n };\n}, PE = (r, t) => {\n const e = r.target.selector, n = e.type == te.RECTANGLE ? hE(e.geometry) : vE(e);\n return {\n ...r,\n \"@context\": \"http://www.w3.org/ns/anno.jsonld\",\n id: r.id,\n type: \"Annotation\",\n body: wE(r.bodies),\n target: {\n source: t,\n selector: n\n }\n };\n};\nfunction Mh(r, t, e) {\n const n = r.slice();\n return n[11] = t[e], n[13] = e, n;\n}\nfunction Dh(r) {\n let t, e, n, i, o;\n return {\n c() {\n t = Kt(\"rect\"), F(t, \"class\", \"a9s-corner-handle\"), F(t, \"x\", e = /*point*/\n r[11][0] - /*handleSize*/\n r[3] / 2), F(t, \"y\", n = /*point*/\n r[11][1] - /*handleSize*/\n r[3] / 2), F(\n t,\n \"height\",\n /*handleSize*/\n r[3]\n ), F(\n t,\n \"width\",\n /*handleSize*/\n r[3]\n );\n },\n m(a, s) {\n bt(a, t, s), i || (o = Wt(t, \"pointerdown\", function() {\n zt(\n /*grab*/\n r[10](W(\n /*idx*/\n r[13]\n ))\n ) && r[10](W(\n /*idx*/\n r[13]\n )).apply(this, arguments);\n }), i = !0);\n },\n p(a, s) {\n r = a, s & /*geom, handleSize*/\n 24 && e !== (e = /*point*/\n r[11][0] - /*handleSize*/\n r[3] / 2) && F(t, \"x\", e), s & /*geom, handleSize*/\n 24 && n !== (n = /*point*/\n r[11][1] - /*handleSize*/\n r[3] / 2) && F(t, \"y\", n), s & /*handleSize*/\n 8 && F(\n t,\n \"height\",\n /*handleSize*/\n r[3]\n ), s & /*handleSize*/\n 8 && F(\n t,\n \"width\",\n /*handleSize*/\n r[3]\n );\n },\n d(a) {\n a && yt(t), i = !1, o();\n }\n };\n}\nfunction OE(r) {\n let t, e, n, i, o, a, s, u, h, f, l = (\n /*geom*/\n r[4].points\n ), c = [];\n for (let d = 0; d < l.length; d += 1)\n c[d] = Dh(Mh(r, l, d));\n return {\n c() {\n t = Kt(\"polygon\"), i = oe(), o = Kt(\"polygon\"), s = oe();\n for (let d = 0; d < c.length; d += 1)\n c[d].c();\n u = q1(), F(t, \"class\", \"a9s-outer\"), F(t, \"style\", e = /*computedStyle*/\n r[1] ? \"display:none;\" : void 0), F(t, \"points\", n = /*geom*/\n r[4].points.map(Fh).join(\" \")), F(o, \"class\", \"a9s-inner a9s-shape-handle\"), F(\n o,\n \"style\",\n /*computedStyle*/\n r[1]\n ), F(o, \"points\", a = /*geom*/\n r[4].points.map(Bh).join(\" \"));\n },\n m(d, p) {\n bt(d, t, p), bt(d, i, p), bt(d, o, p), bt(d, s, p);\n for (let v = 0; v < c.length; v += 1)\n c[v] && c[v].m(d, p);\n bt(d, u, p), h || (f = [\n Wt(t, \"pointerdown\", function() {\n zt(\n /*grab*/\n r[10](W.SHAPE)\n ) && r[10](W.SHAPE).apply(this, arguments);\n }),\n Wt(o, \"pointerdown\", function() {\n zt(\n /*grab*/\n r[10](W.SHAPE)\n ) && r[10](W.SHAPE).apply(this, arguments);\n })\n ], h = !0);\n },\n p(d, p) {\n if (r = d, p & /*computedStyle*/\n 2 && e !== (e = /*computedStyle*/\n r[1] ? \"display:none;\" : void 0) && F(t, \"style\", e), p & /*geom*/\n 16 && n !== (n = /*geom*/\n r[4].points.map(Fh).join(\" \")) && F(t, \"points\", n), p & /*computedStyle*/\n 2 && F(\n o,\n \"style\",\n /*computedStyle*/\n r[1]\n ), p & /*geom*/\n 16 && a !== (a = /*geom*/\n r[4].points.map(Bh).join(\" \")) && F(o, \"points\", a), p & /*geom, handleSize, grab, Handle*/\n 1048) {\n l = /*geom*/\n r[4].points;\n let v;\n for (v = 0; v < l.length; v += 1) {\n const _ = Mh(r, l, v);\n c[v] ? c[v].p(_, p) : (c[v] = Dh(_), c[v].c(), c[v].m(u.parentNode, u));\n }\n for (; v < c.length; v += 1)\n c[v].d(1);\n c.length = l.length;\n }\n },\n d(d) {\n d && yt(t), d && yt(i), d && yt(o), d && yt(s), W1(c, d), d && yt(u), h = !1, pr(f);\n }\n };\n}\nfunction RE(r) {\n let t, e;\n return t = new gf({\n props: {\n shape: (\n /*shape*/\n r[0]\n ),\n transform: (\n /*transform*/\n r[2]\n ),\n editor: (\n /*editor*/\n r[5]\n ),\n $$slots: {\n default: [\n OE,\n ({ grab: n }) => ({ 10: n }),\n ({ grab: n }) => n ? 1024 : 0\n ]\n },\n $$scope: { ctx: r }\n }\n }), t.$on(\n \"change\",\n /*change_handler*/\n r[7]\n ), t.$on(\n \"grab\",\n /*grab_handler*/\n r[8]\n ), t.$on(\n \"release\",\n /*release_handler*/\n r[9]\n ), {\n c() {\n vf(t.$$.fragment);\n },\n m(n, i) {\n ds(t, n, i), e = !0;\n },\n p(n, [i]) {\n const o = {};\n i & /*shape*/\n 1 && (o.shape = /*shape*/\n n[0]), i & /*transform*/\n 4 && (o.transform = /*transform*/\n n[2]), i & /*$$scope, geom, handleSize, grab, computedStyle*/\n 17434 && (o.$$scope = { dirty: i, ctx: n }), t.$set(o);\n },\n i(n) {\n e || (Vi(t.$$.fragment, n), e = !0);\n },\n o(n) {\n cs(t.$$.fragment, n), e = !1;\n },\n d(n) {\n ps(t, n);\n }\n };\n}\nconst Fh = (r) => r.join(\",\"), Bh = (r) => r.join(\",\");\nfunction IE(r, t, e) {\n let n, i, { shape: o } = t, { computedStyle: a = void 0 } = t, { transform: s } = t, { viewportScale: u = 1 } = t;\n const h = (d, p, v) => {\n let _;\n p === W.SHAPE ? _ = d.geometry.points.map(([m, y]) => [m + v[0], y + v[1]]) : _ = d.geometry.points.map(([m, y], T) => p === W(T) ? [m + v[0], y + v[1]] : [m, y]);\n const g = _f(_);\n return { ...d, geometry: { points: _, bounds: g } };\n };\n function f(d) {\n Gr.call(this, r, d);\n }\n function l(d) {\n Gr.call(this, r, d);\n }\n function c(d) {\n Gr.call(this, r, d);\n }\n return r.$$set = (d) => {\n \"shape\" in d && e(0, o = d.shape), \"computedStyle\" in d && e(1, a = d.computedStyle), \"transform\" in d && e(2, s = d.transform), \"viewportScale\" in d && e(6, u = d.viewportScale);\n }, r.$$.update = () => {\n r.$$.dirty & /*shape*/\n 1 && e(4, n = o.geometry), r.$$.dirty & /*viewportScale*/\n 64 && e(3, i = 10 / u);\n }, [\n o,\n a,\n s,\n i,\n n,\n h,\n u,\n f,\n l,\n c\n ];\n}\nclass CE extends _s {\n constructor(t) {\n super(), vs(this, t, IE, RE, fs, {\n shape: 0,\n computedStyle: 1,\n transform: 2,\n viewportScale: 6\n });\n }\n}\nfunction ME(r) {\n let t, e, n, i, o, a, s, u, h, f, l, c, d, p, v, _, g, m, y, T, x, w, S, I, O, b, P, A, R, M, D, B, X, $, Q, U, L, H, tt, et, pt, Y, st, _t, Et, q, it, at, ft, nt;\n return {\n c() {\n t = Kt(\"rect\"), s = oe(), u = Kt(\"rect\"), d = oe(), p = Kt(\"rect\"), m = oe(), y = Kt(\"rect\"), S = oe(), I = Kt(\"rect\"), A = oe(), R = Kt(\"rect\"), X = oe(), $ = Kt(\"rect\"), L = oe(), H = Kt(\"rect\"), pt = oe(), Y = Kt(\"rect\"), Et = oe(), q = Kt(\"rect\"), F(t, \"class\", \"a9s-outer\"), F(t, \"style\", e = /*computedStyle*/\n r[1] ? \"display:none;\" : void 0), F(t, \"x\", n = /*geom*/\n r[4].x), F(t, \"y\", i = /*geom*/\n r[4].y), F(t, \"width\", o = /*geom*/\n r[4].w), F(t, \"height\", a = /*geom*/\n r[4].h), F(u, \"class\", \"a9s-inner a9s-shape-handle\"), F(\n u,\n \"style\",\n /*computedStyle*/\n r[1]\n ), F(u, \"x\", h = /*geom*/\n r[4].x), F(u, \"y\", f = /*geom*/\n r[4].y), F(u, \"width\", l = /*geom*/\n r[4].w), F(u, \"height\", c = /*geom*/\n r[4].h), F(p, \"class\", \"a9s-edge-handle a9s-edge-handle-top\"), F(p, \"x\", v = /*geom*/\n r[4].x), F(p, \"y\", _ = /*geom*/\n r[4].y), F(p, \"height\", 1), F(p, \"width\", g = /*geom*/\n r[4].w), F(y, \"class\", \"a9s-edge-handle a9s-edge-handle-right\"), F(y, \"x\", T = /*geom*/\n r[4].x + /*geom*/\n r[4].w), F(y, \"y\", x = /*geom*/\n r[4].y), F(y, \"height\", w = /*geom*/\n r[4].h), F(y, \"width\", 1), F(I, \"class\", \"a9s-edge-handle a9s-edge-handle-bottom\"), F(I, \"x\", O = /*geom*/\n r[4].x), F(I, \"y\", b = /*geom*/\n r[4].y + /*geom*/\n r[4].h), F(I, \"height\", 1), F(I, \"width\", P = /*geom*/\n r[4].w), F(R, \"class\", \"a9s-edge-handle a9s-edge-handle-left\"), F(R, \"x\", M = /*geom*/\n r[4].x), F(R, \"y\", D = /*geom*/\n r[4].y), F(R, \"height\", B = /*geom*/\n r[4].h), F(R, \"width\", 1), F($, \"class\", \"a9s-corner-handle a9s-corner-handle-topleft\"), F($, \"x\", Q = /*geom*/\n r[4].x - /*handleSize*/\n r[3] / 2), F($, \"y\", U = /*geom*/\n r[4].y - /*handleSize*/\n r[3] / 2), F(\n $,\n \"height\",\n /*handleSize*/\n r[3]\n ), F(\n $,\n \"width\",\n /*handleSize*/\n r[3]\n ), F(H, \"class\", \"a9s-corner-handle a9s-corner-handle-topright\"), F(H, \"x\", tt = /*geom*/\n r[4].x + /*geom*/\n r[4].w - /*handleSize*/\n r[3] / 2), F(H, \"y\", et = /*geom*/\n r[4].y - /*handleSize*/\n r[3] / 2), F(\n H,\n \"height\",\n /*handleSize*/\n r[3]\n ), F(\n H,\n \"width\",\n /*handleSize*/\n r[3]\n ), F(Y, \"class\", \"a9s-corner-handle a9s-corner-handle-bottomright\"), F(Y, \"x\", st = /*geom*/\n r[4].x + /*geom*/\n r[4].w - /*handleSize*/\n r[3] / 2), F(Y, \"y\", _t = /*geom*/\n r[4].y + /*geom*/\n r[4].h - /*handleSize*/\n r[3] / 2), F(\n Y,\n \"height\",\n /*handleSize*/\n r[3]\n ), F(\n Y,\n \"width\",\n /*handleSize*/\n r[3]\n ), F(q, \"class\", \"a9s-corner-handle a9s-corner-handle-bottomleft\"), F(q, \"x\", it = /*geom*/\n r[4].x - /*handleSize*/\n r[3] / 2), F(q, \"y\", at = /*geom*/\n r[4].y + /*geom*/\n r[4].h - /*handleSize*/\n r[3] / 2), F(\n q,\n \"height\",\n /*handleSize*/\n r[3]\n ), F(\n q,\n \"width\",\n /*handleSize*/\n r[3]\n );\n },\n m(N, C) {\n bt(N, t, C), bt(N, s, C), bt(N, u, C), bt(N, d, C), bt(N, p, C), bt(N, m, C), bt(N, y, C), bt(N, S, C), bt(N, I, C), bt(N, A, C), bt(N, R, C), bt(N, X, C), bt(N, $, C), bt(N, L, C), bt(N, H, C), bt(N, pt, C), bt(N, Y, C), bt(N, Et, C), bt(N, q, C), ft || (nt = [\n Wt(t, \"pointerdown\", function() {\n zt(\n /*grab*/\n r[10](W.SHAPE)\n ) && r[10](W.SHAPE).apply(this, arguments);\n }),\n Wt(u, \"pointerdown\", function() {\n zt(\n /*grab*/\n r[10](W.SHAPE)\n ) && r[10](W.SHAPE).apply(this, arguments);\n }),\n Wt(p, \"pointerdown\", function() {\n zt(\n /*grab*/\n r[10](W.TOP)\n ) && r[10](W.TOP).apply(this, arguments);\n }),\n Wt(y, \"pointerdown\", function() {\n zt(\n /*grab*/\n r[10](W.RIGHT)\n ) && r[10](W.RIGHT).apply(this, arguments);\n }),\n Wt(I, \"pointerdown\", function() {\n zt(\n /*grab*/\n r[10](W.BOTTOM)\n ) && r[10](W.BOTTOM).apply(this, arguments);\n }),\n Wt(R, \"pointerdown\", function() {\n zt(\n /*grab*/\n r[10](W.LEFT)\n ) && r[10](W.LEFT).apply(this, arguments);\n }),\n Wt($, \"pointerdown\", function() {\n zt(\n /*grab*/\n r[10](W.TOP_LEFT)\n ) && r[10](W.TOP_LEFT).apply(this, arguments);\n }),\n Wt(H, \"pointerdown\", function() {\n zt(\n /*grab*/\n r[10](W.TOP_RIGHT)\n ) && r[10](W.TOP_RIGHT).apply(this, arguments);\n }),\n Wt(Y, \"pointerdown\", function() {\n zt(\n /*grab*/\n r[10](W.BOTTOM_RIGHT)\n ) && r[10](W.BOTTOM_RIGHT).apply(this, arguments);\n }),\n Wt(q, \"pointerdown\", function() {\n zt(\n /*grab*/\n r[10](W.BOTTOM_LEFT)\n ) && r[10](W.BOTTOM_LEFT).apply(this, arguments);\n })\n ], ft = !0);\n },\n p(N, C) {\n r = N, C & /*computedStyle*/\n 2 && e !== (e = /*computedStyle*/\n r[1] ? \"display:none;\" : void 0) && F(t, \"style\", e), C & /*geom*/\n 16 && n !== (n = /*geom*/\n r[4].x) && F(t, \"x\", n), C & /*geom*/\n 16 && i !== (i = /*geom*/\n r[4].y) && F(t, \"y\", i), C & /*geom*/\n 16 && o !== (o = /*geom*/\n r[4].w) && F(t, \"width\", o), C & /*geom*/\n 16 && a !== (a = /*geom*/\n r[4].h) && F(t, \"height\", a), C & /*computedStyle*/\n 2 && F(\n u,\n \"style\",\n /*computedStyle*/\n r[1]\n ), C & /*geom*/\n 16 && h !== (h = /*geom*/\n r[4].x) && F(u, \"x\", h), C & /*geom*/\n 16 && f !== (f = /*geom*/\n r[4].y) && F(u, \"y\", f), C & /*geom*/\n 16 && l !== (l = /*geom*/\n r[4].w) && F(u, \"width\", l), C & /*geom*/\n 16 && c !== (c = /*geom*/\n r[4].h) && F(u, \"height\", c), C & /*geom*/\n 16 && v !== (v = /*geom*/\n r[4].x) && F(p, \"x\", v), C & /*geom*/\n 16 && _ !== (_ = /*geom*/\n r[4].y) && F(p, \"y\", _), C & /*geom*/\n 16 && g !== (g = /*geom*/\n r[4].w) && F(p, \"width\", g), C & /*geom*/\n 16 && T !== (T = /*geom*/\n r[4].x + /*geom*/\n r[4].w) && F(y, \"x\", T), C & /*geom*/\n 16 && x !== (x = /*geom*/\n r[4].y) && F(y, \"y\", x), C & /*geom*/\n 16 && w !== (w = /*geom*/\n r[4].h) && F(y, \"height\", w), C & /*geom*/\n 16 && O !== (O = /*geom*/\n r[4].x) && F(I, \"x\", O), C & /*geom*/\n 16 && b !== (b = /*geom*/\n r[4].y + /*geom*/\n r[4].h) && F(I, \"y\", b), C & /*geom*/\n 16 && P !== (P = /*geom*/\n r[4].w) && F(I, \"width\", P), C & /*geom*/\n 16 && M !== (M = /*geom*/\n r[4].x) && F(R, \"x\", M), C & /*geom*/\n 16 && D !== (D = /*geom*/\n r[4].y) && F(R, \"y\", D), C & /*geom*/\n 16 && B !== (B = /*geom*/\n r[4].h) && F(R, \"height\", B), C & /*geom, handleSize*/\n 24 && Q !== (Q = /*geom*/\n r[4].x - /*handleSize*/\n r[3] / 2) && F($, \"x\", Q), C & /*geom, handleSize*/\n 24 && U !== (U = /*geom*/\n r[4].y - /*handleSize*/\n r[3] / 2) && F($, \"y\", U), C & /*handleSize*/\n 8 && F(\n $,\n \"height\",\n /*handleSize*/\n r[3]\n ), C & /*handleSize*/\n 8 && F(\n $,\n \"width\",\n /*handleSize*/\n r[3]\n ), C & /*geom, handleSize*/\n 24 && tt !== (tt = /*geom*/\n r[4].x + /*geom*/\n r[4].w - /*handleSize*/\n r[3] / 2) && F(H, \"x\", tt), C & /*geom, handleSize*/\n 24 && et !== (et = /*geom*/\n r[4].y - /*handleSize*/\n r[3] / 2) && F(H, \"y\", et), C & /*handleSize*/\n 8 && F(\n H,\n \"height\",\n /*handleSize*/\n r[3]\n ), C & /*handleSize*/\n 8 && F(\n H,\n \"width\",\n /*handleSize*/\n r[3]\n ), C & /*geom, handleSize*/\n 24 && st !== (st = /*geom*/\n r[4].x + /*geom*/\n r[4].w - /*handleSize*/\n r[3] / 2) && F(Y, \"x\", st), C & /*geom, handleSize*/\n 24 && _t !== (_t = /*geom*/\n r[4].y + /*geom*/\n r[4].h - /*handleSize*/\n r[3] / 2) && F(Y, \"y\", _t), C & /*handleSize*/\n 8 && F(\n Y,\n \"height\",\n /*handleSize*/\n r[3]\n ), C & /*handleSize*/\n 8 && F(\n Y,\n \"width\",\n /*handleSize*/\n r[3]\n ), C & /*geom, handleSize*/\n 24 && it !== (it = /*geom*/\n r[4].x - /*handleSize*/\n r[3] / 2) && F(q, \"x\", it), C & /*geom, handleSize*/\n 24 && at !== (at = /*geom*/\n r[4].y + /*geom*/\n r[4].h - /*handleSize*/\n r[3] / 2) && F(q, \"y\", at), C & /*handleSize*/\n 8 && F(\n q,\n \"height\",\n /*handleSize*/\n r[3]\n ), C & /*handleSize*/\n 8 && F(\n q,\n \"width\",\n /*handleSize*/\n r[3]\n );\n },\n d(N) {\n N && yt(t), N && yt(s), N && yt(u), N && yt(d), N && yt(p), N && yt(m), N && yt(y), N && yt(S), N && yt(I), N && yt(A), N && yt(R), N && yt(X), N && yt($), N && yt(L), N && yt(H), N && yt(pt), N && yt(Y), N && yt(Et), N && yt(q), ft = !1, pr(nt);\n }\n };\n}\nfunction DE(r) {\n let t, e;\n return t = new gf({\n props: {\n shape: (\n /*shape*/\n r[0]\n ),\n transform: (\n /*transform*/\n r[2]\n ),\n editor: (\n /*editor*/\n r[5]\n ),\n $$slots: {\n default: [\n ME,\n ({ grab: n }) => ({ 10: n }),\n ({ grab: n }) => n ? 1024 : 0\n ]\n },\n $$scope: { ctx: r }\n }\n }), t.$on(\n \"grab\",\n /*grab_handler*/\n r[7]\n ), t.$on(\n \"change\",\n /*change_handler*/\n r[8]\n ), t.$on(\n \"release\",\n /*release_handler*/\n r[9]\n ), {\n c() {\n vf(t.$$.fragment);\n },\n m(n, i) {\n ds(t, n, i), e = !0;\n },\n p(n, [i]) {\n const o = {};\n i & /*shape*/\n 1 && (o.shape = /*shape*/\n n[0]), i & /*transform*/\n 4 && (o.transform = /*transform*/\n n[2]), i & /*$$scope, geom, handleSize, grab, computedStyle*/\n 3098 && (o.$$scope = { dirty: i, ctx: n }), t.$set(o);\n },\n i(n) {\n e || (Vi(t.$$.fragment, n), e = !0);\n },\n o(n) {\n cs(t.$$.fragment, n), e = !1;\n },\n d(n) {\n ps(t, n);\n }\n };\n}\nfunction FE(r, t, e) {\n let n, i, { shape: o } = t, { computedStyle: a = void 0 } = t, { transform: s } = t, { viewportScale: u = 1 } = t;\n const h = (d, p, v) => {\n const _ = d.geometry.bounds;\n let [g, m] = [_.minX, _.minY], [y, T] = [_.maxX, _.maxY];\n const [x, w] = v;\n if (p === W.SHAPE)\n g += x, y += x, m += w, T += w;\n else {\n switch (p) {\n case W.TOP:\n case W.TOP_LEFT:\n case W.TOP_RIGHT: {\n m += w;\n break;\n }\n case W.BOTTOM:\n case W.BOTTOM_LEFT:\n case W.BOTTOM_RIGHT: {\n T += w;\n break;\n }\n }\n switch (p) {\n case W.LEFT:\n case W.TOP_LEFT:\n case W.BOTTOM_LEFT: {\n g += x;\n break;\n }\n case W.RIGHT:\n case W.TOP_RIGHT:\n case W.BOTTOM_RIGHT: {\n y += x;\n break;\n }\n }\n }\n const S = Math.min(g, y), I = Math.min(m, T), O = Math.abs(y - g), b = Math.abs(T - m);\n return {\n ...d,\n geometry: {\n x: S,\n y: I,\n w: O,\n h: b,\n bounds: {\n minX: S,\n minY: I,\n maxX: S + O,\n maxY: I + b\n }\n }\n };\n };\n function f(d) {\n Gr.call(this, r, d);\n }\n function l(d) {\n Gr.call(this, r, d);\n }\n function c(d) {\n Gr.call(this, r, d);\n }\n return r.$$set = (d) => {\n \"shape\" in d && e(0, o = d.shape), \"computedStyle\" in d && e(1, a = d.computedStyle), \"transform\" in d && e(2, s = d.transform), \"viewportScale\" in d && e(6, u = d.viewportScale);\n }, r.$$.update = () => {\n r.$$.dirty & /*shape*/\n 1 && e(4, n = o.geometry), r.$$.dirty & /*viewportScale*/\n 64 && e(3, i = 10 / u);\n }, [\n o,\n a,\n s,\n i,\n n,\n h,\n u,\n f,\n l,\n c\n ];\n}\nclass BE extends _s {\n constructor(t) {\n super(), vs(this, t, FE, DE, fs, {\n shape: 0,\n computedStyle: 1,\n transform: 2,\n viewportScale: 6\n });\n }\n}\nte.RECTANGLE, te.POLYGON;\nconst W = (r) => `HANDLE-${r}`;\nW.SHAPE = \"SHAPE\";\nW.TOP = \"TOP\";\nW.RIGHT = \"RIGHT\";\nW.BOTTOM = \"BOTTOM\";\nW.LEFT = \"LEFT\";\nW.TOP_LEFT = \"TOP_LEFT\";\nW.TOP_RIGHT = \"TOP_RIGHT\";\nW.BOTTOM_RIGHT = \"BOTTOM_RIGHT\";\nW.BOTTOM_LEFT = \"BOTTOM_LEFT\";\nconst NE = (r) => ({}), Nh = (r) => ({ grab: (\n /*onGrab*/\n r[0]\n) });\nfunction LE(r) {\n let t, e, n, i;\n const o = (\n /*#slots*/\n r[7].default\n ), a = j1(\n o,\n r,\n /*$$scope*/\n r[6],\n Nh\n );\n return {\n c() {\n t = Kt(\"g\"), a && a.c(), F(t, \"class\", \"a9s-annotation selected\");\n },\n m(s, u) {\n bt(s, t, u), a && a.m(t, null), e = !0, n || (i = [\n Wt(\n t,\n \"pointerup\",\n /*onRelease*/\n r[2]\n ),\n Wt(\n t,\n \"pointermove\",\n /*onPointerMove*/\n r[1]\n )\n ], n = !0);\n },\n p(s, [u]) {\n a && a.p && (!e || u & /*$$scope*/\n 64) && V1(\n a,\n o,\n s,\n /*$$scope*/\n s[6],\n e ? Y1(\n o,\n /*$$scope*/\n s[6],\n u,\n NE\n ) : z1(\n /*$$scope*/\n s[6]\n ),\n Nh\n );\n },\n i(s) {\n e || (Vi(a, s), e = !0);\n },\n o(s) {\n cs(a, s), e = !1;\n },\n d(s) {\n s && yt(t), a && a.d(s), n = !1, pr(i);\n }\n };\n}\nfunction UE(r, t, e) {\n let { $$slots: n = {}, $$scope: i } = t;\n const o = J1();\n let { shape: a } = t, { editor: s } = t, { transform: u } = t, h = null, f, l = null;\n const c = (v) => (_) => {\n h = v, f = u.elementToImage(_.offsetX, _.offsetY), l = a, _.target.setPointerCapture(_.pointerId), o(\"grab\");\n }, d = (v) => {\n if (h) {\n const [_, g] = u.elementToImage(v.offsetX, v.offsetY), m = [_ - f[0], g - f[1]];\n e(3, a = s(l, h, m)), o(\"change\", a);\n }\n }, p = (v) => {\n v.target.releasePointerCapture(v.pointerId), h = null, l = a, o(\"release\");\n };\n return r.$$set = (v) => {\n \"shape\" in v && e(3, a = v.shape), \"editor\" in v && e(4, s = v.editor), \"transform\" in v && e(5, u = v.transform), \"$$scope\" in v && e(6, i = v.$$scope);\n }, [c, d, p, a, s, u, i, n];\n}\nclass gf extends _s {\n constructor(t) {\n super(), vs(this, t, UE, LE, fs, { shape: 3, editor: 4, transform: 5 });\n }\n}\nnavigator.userAgent.indexOf(\"Mac OS X\");\nconst HE = ac, XE = Va, jE = Gf, YE = te, VE = SE;\nexport {\n XE as PointerSelectAction,\n YE as ShapeType,\n VE as W3CImageFormat,\n jE as createBody,\n kE as createOSDAnnotator,\n HE as defaultColorProvider\n};\n//# sourceMappingURL=annotorious-openseadragon.es.js.map\n"],"names":["Es","nr","t","e","n","qt","yf","Lh","Ts","ke","jt","Ht","bf","xf","ko","Uh","i","Gh","kh","a","s","Hh","Xh","Ef","ir","Z","K","Ha","ct","Xa","ne","He","Vt","E","Tf","wf","ws","Sf","_n","hn","ja","Wr","Af","qr","Dr","Sr","Ti","Fr","Ss","Pf","Ho","Of","jh","Xo","zi","_r","Rf","If","pi","rr","Xe","je","lt","mt","Ee","ce","de","Cf","Zt","u","h","f","l","c","d","p","Jt","mr","Ya","Mf","Va","Wi","Df","Ff","v","Nn","Bf","Nf","Lt","Lf","Uf","As","Yh","kf","Hf","Xf","jf","Vh","Ot","Yf","o","Vf","zf","Wf","b","P","A","R","M","D","B","_","g","m","y","T","S","qf","$f","Kf","Zf","x","Jf","Qf","tc","ec","rc","nc","ic","$t","za","Wa","jo","sc","Yo","uc","hc","lc","Ps","Os","z","Rs","Is","cc","Wh","dc","pc","vc","I","O","X","$","Q","U","L","H","tt","et","pt","Y","st","_t","Et","q","it","at","ft","nt","N","C","_c","mc","gc","zh","Cs","yc","bc","Ms","xc","Ec","Tc","wc","Sc","Ds","Ac","Pc","Oc","qi","$i","Fs","Bs","Rc","Ic","Cc","Mc","qa","Dc","qh","Fc","Bc","$h","Nc","Zr","Lc","Un","Zi","Ar","Uc","gr","Ns","Ki","Hc","un","sn","Xc","Gc","kc","Ln","jc","Yc","Vc","zc","Wc","Ls","qc","$c","Kc","Kh","Zc","Jc","Zh","Qc","td","Pt","Qh","Jh","Vo","mn","zo","ed","vi","$a","rd","Us","nd","id","od","ad","sd","ud","hd","ld","Ji","Gs","Qi","to","Ie","gn","wi","V","se","G","or","j","Si","me","ye","le","fe","ae","Ai","Qt","Ct","ks","wt","be","eo","Hs","Xs","js","ro","Ys","yr","Gn","we","Vs","zs","Ws","qs","$s","Ks","Zs","cd","dd","ge","pd","vd","k","tl","_d","Rn","Ka","ki","el","xd","yn","$o","Js","Hi","xn","hr","At","Ad","gd","md","yd","bd","Rr","Wo","rl","bn","Rd","nl","Od","Ed","Td","wd","Sd","Pd","Id","Cd","Hn","kn","qo","Md","il","Pi","Dd","Fd","Qs","Bd","Nd","tu","Ld","Ud","Gd","kd","Hd","Xd","eu","jd","Yd","Vd","zd","Za","Wd","qd","$d","Kd","ot","Hr","ol","Br","no","ar","io","Zd","br","Jd","Bt","Pr","Qd","sr","tp","ep","ru","In","Oi","rp","np","nu","Ri","ip","op","ap","sp","up","cr","al","hp","Ko","Zo","sl","lp","_i","ul","Ja","ln","cp","xr","iu","dp","hl","ou","pp","au","su","vp","_p","mp","ll","fl","gp","yp","bp","xp","Ep","Qa","oo","Ii","uu","ts","ao","Ci","hu","Tp","fn","wp","cn","Sp","lu","Ap","Pp","Op","Rp","es","Ne","Ip","fu","cl","cu","_e","Cp","du","Jo","so","Qo","Xr","Yt","dl","pu","vu","ta","_u","mu","vl","Mp","Be","ml","ea","Kp","_l","gu","Hp","Xn","Jr","Wp","pl","Dp","$p","ra","Bp","Xp","yu","Vp","jp","uo","zp","Yp","Lp","Gp","Up","Np","Fp","Ye","kp","qp","rs","$r","Zp","Jp","jn","Yn","Qp","tv","ev","rv","nv","iv","ns","ov","av","sv","uv","hv","lv","ho","is","fv","lo","er","ve","cv","gl","dv","pv","vv","_v","mv","gv","yv","bv","xv","yl","bl","mi","dn","Ev","bu","Pe","Tv","xl","wv","xu","Xt","Sv","fo","Av","Pv","Ov","jr","na","Rv","Ft","Iv","El","Cv","Mv","Dv","Fv","Bv","Nv","Lv","Uv","Gv","kv","Hv","Xv","ue","jv","Yv","Vv","zv","Wv","ia","Eu","Tu","qv","wu","$v","Kv","oa","Nr","aa","Xi","Zv","Jv","Qv","t_","e_","Ir","Su","Au","r_","co","n_","i_","o_","a_","s_","u_","h_","l_","f_","c_","d_","p_","v_","__","m_","g_","y_","b_","x_","E_","T_","w_","S_","A_","P_","O_","R_","I_","C_","M_","D_","F_","B_","N_","L_","U_","G_","k_","H_","X_","j_","Y_","V_","z_","W_","q_","$_","K_","Z_","J_","Q_","tm","em","rm","nm","im","om","am","sm","um","hm","lm","fm","cm","dm","pm","vm","_m","mm","gm","ym","bm","xm","Em","Tm","wm","Sm","Am","Pm","Om","Rm","Im","Cm","Mm","Dm","Fm","Bm","Nm","Lm","Um","Gm","km","Hm","Xm","jm","Ym","Vm","zm","Wm","qm","$m","Km","Zm","Jm","Qm","tg","eg","rg","ng","ig","og","ag","sg","ug","hg","lg","fg","cg","dg","pg","vg","_g","mg","gg","yg","bg","xg","Eg","Tg","wg","Sg","Ag","Pg","Og","Rg","Ig","Cg","Mg","Dg","Fg","Bg","Ng","Lg","Ug","Gg","kg","Hg","Xg","jg","Yg","Yr","Tl","En","Vg","wl","Sl","zg","os","Al","Wg","Pl","Mi","Pu","Ou","Lr","Cr","qg","lr","Ru","he","Iu","Ae","ze","Cu","$g","Vn","Kg","Di","Fi","Zg","Jg","Nt","Tt","zn","ht","Qg","ty","gi","ey","Mr","Dt","Ze","Je","Qe","tr","sa","Ol","Wn","ry","St","Rl","Bi","ua","as","It","Il","ny","xe","pn","gt","Mu","Me","Gt","Ce","po","kt","iy","ha","Cl","la","xt","fa","oy","Tn","Cn","ay","ut","Ml","sy","Ge","uy","hy","Dl","ly","fy","cy","dy","ca","Fl","Bl","Du","qn","J","fr","py","Fu","vy","Mt","_y","my","Bu","gy","yy","Mn","by","Nl","xy","ur","Ey","$n","vo","Ty","ji","wy","Nu","Sy","Ay","Py","Oy","_o","Ry","Iy","Lu","Uu","Cy","mo","Ll","Ul","Qr","My","Kn","Dy","Gu","Fy","Gl","Zn","ku","kl","Ur","By","Ny","Ly","Uy","Gy","ky","tn","Hy","Xy","jy","Yy","Jn","Dn","Ue","go","yo","bo","xo","Eo","To","dr","Vy","zy","Ve","Wy","qy","Hu","ss","$y","Ky","Hl","Xu","ju","Zy","Jy","Qy","We","en","t0","e0","r0","Xl","n0","i0","o0","a0","s0","u0","h0","l0","Qn","f0","c0","d0","p0","v0","_0","m0","g0","y0","b0","x0","wo","E0","So","T0","w0","S0","jl","Yl","A0","P0","O0","Vl","da","pa","va","R0","I0","zl","Yu","Vu","C0","Wl","M0","D0","ti","F0","B0","zu","Wu","N0","L0","U0","G0","qu","_a","k0","H0","Ao","X0","j0","ei","ri","Y0","V0","z0","W0","ni","$u","Oe","ql","Po","ii","q0","Ku","$0","K0","Z0","Zu","Ju","Oo","Rt","qe","J0","Q0","Ro","Io","tb","Ni","eb","rb","nb","ib","ob","ab","vt","rt","Li","ma","$l","sb","ub","hb","ga","lb","Kl","rn","ee","Co","oi","fb","Qu","cb","ai","db","si","ie","ya","pb","vb","_b","mb","gb","yb","bb","xb","Eb","Tb","wb","Sb","Ab","Pb","De","Se","nn","th","Ob","re","ba","eh","Rb","Ib","Cb","Mb","Fb","Db","Bb","Nb","xa","Zl","rh","Lb","Ub","Gb","Re","Le","wn","Jl","Ea","us","nh","Ql","Ui","kb","Er","ui","Hb","Vr","ih","$e","Xb","dt","pe","vr","jb","oh","ah","Yb","Vb","zb","Ke","Mo","sh","hi","uh","Tr","Wb","qb","$b","Do","Ta","Kb","on","Zb","Fn","wa","Jb","Sn","Fo","Qb","zr","No","Bo","tx","hh","li","Te","ex","tf","Sa","rx","nx","ix","ox","ax","sx","ux","hx","lx","fx","ef","cx","dx","px","vx","_x","Aa","rf","an","mx","lh","gx","yx","bx","fi","xx","Pa","hs","Ex","Lo","fh","An","Tx","wx","Pn","Yi","Oa","Sx","Gi","Ax","Ra","Px","Uo","nf","Ox","Rx","of","Ix","yi","Fe","Cx","Mx","ch","dh","ph","Bn","gs","ys","bs","xs","Dx","Ia","Fx","Bx","Ca","af","Nx","Lx","Ux","Gx","kx","vh","Ma","Hx","Xx","_h","Da","jx","Yx","Vx","Fa","zx","Wx","qx","Ba","$x","Kx","sf","Zx","Jx","Qx","Na","Kr","t1","e1","r1","ci","La","n1","bi","i1","ls","o1","a1","s1","u1","h1","l1","Ei","f1","c1","mh","d1","p1","uf","_1","gh","m1","yh","g1","xh","bh","y1","b1","x1","E1","T1","w1","hf","S1","Eh","A1","O1","R1","I1","C1","Th","wh","F1","Sh","Ah","M1","D1","B1","N1","L1","U1","lf","G1","k1","kE","te","ms","oE","aE","sE","Ut","xE"],"mappings":"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CAAC,IAAIZ,EAAE,CAAC,IAAIY,EAAE,EAAE,IAAIZ,EAAE,CAAC,IAAIY,EAAE,EAAE,GAAGb,EAAE,CAAC,IAAIC,EAAE,CAAC,IAAIY,EAAE,CAAC,IAAIZ,EAAE,CAAC,IAAIY,EAAE,CAAC,IAAIZ,EAAE,CAAC,IAAIY,EAAE,EAAE,IAAIZ,EAAE,CAAC,IAAIY,EAAE,EAAE,GAAGb,EAAE,CAAC,IAAIC,EAAE,CAAC,IAAIY,EAAE,CAAC,IAAIZ,EAAE,CAAC,IAAIY,EAAE,CAAC,IAAIZ,EAAE,CAAC,IAAIY,EAAE,EAAE,IAAIZ,EAAE,CAAC,IAAIY,EAAE,EAAE,GAAGb,EAAE,CAAC,IAAIC,EAAE,CAAC,IAAIY,EAAE,CAAC,IAAIZ,EAAE,CAAC,IAAIY,EAAE,CAAC,IAAIZ,EAAE,CAAC,IAAIY,EAAE,EAAE,IAAIZ,EAAE,CAAC,IAAIY,EAAE,EAAE,IAAIZ,EAAE,CAAC,GAAGD,EAAE,EAAE,IAAIC,EAAE,EAAE,IAAIY,EAAE,CAAC,IAAIZ,EAAE,EAAE,IAAIY,EAAE,CAAC,IAAIZ,EAAE,EAAE,IAAIY,EAAE,EAAE,IAAIZ,EAAE,EAAE,IAAIY,EAAE,EAAE,GAAGb,EAAE,EAAE,IAAIC,EAAE,EAAE,IAAIY,EAAE,CAAC,IAAIZ,EAAE,EAAE,IAAIY,EAAE,CAAC,IAAIZ,EAAE,EAAE,IAAIY,EAAE,EAAE,IAAIZ,EAAE,EAAE,IAAIY,EAAE,EAAE,GAAGb,EAAE,EAAE,IAAIC,EAAE,EAAE,IAAIY,EAAE,CAAC,IAAIZ,EAAE,EAAE,IAAIY,EAAE,CAAC,IAAIZ,EAAE,EAAE,IAAIY,EAAE,EAAE,IAAIZ,EAAE,EAAE,IAAIY,EAAE,EAAE,GAAGb,EAAE,EAAE,IAAIC,EAAE,EAAE,IAAIY,EAAE,CAAC,IAAIZ,EAAE,EAAE,IAAIY,EAAE,CAAC,IAAIZ,EAAE,EAAE,IAAIY,EAAE,EAAE,IAAIZ,EAAE,EAAE,IAAIY,EAAE,EAAE,GAAGb,EAAE,EAAE,IAAIC,EAAE,EAAE,IAAIY,EAAE,CAAC,IAAIZ,EAAE,EAAE,IAAIY,EAAE,CAAC,IAAIZ,EAAE,EAAE,IAAIY,EAAE,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"}
|
|
1
|
+
{"version":3,"file":"annotorious-react.es26.js","sources":["../src/openseadragon/setPosition.ts"],"sourcesContent":["import { ImageAnnotation } from '@annotorious/annotorious';\nimport OpenSeadragon from 'openseadragon';\n\nconst getAnnotationDomRect = (viewer: OpenSeadragon.Viewer, annotation: ImageAnnotation) => {\n const viewerBounds = viewer.element.getBoundingClientRect();\n \n // Annotation bounds (image coordinates)\n const { minX, minY, maxX, maxY } = annotation.target.selector.geometry.bounds;\n\n // Annotation coordinates - viewer element coordinates\n const topLeft = viewer.viewport.imageToViewerElementCoordinates(new OpenSeadragon.Point(minX, minY));\n const bottomRight = viewer.viewport.imageToViewerElementCoordinates(new OpenSeadragon.Point(maxX, maxY));\n\n // Account for viewer element offset\n return {\n x: topLeft.x + viewerBounds.x,\n right: bottomRight.x + viewerBounds.x,\n y: topLeft.y + viewerBounds.y,\n bottom: bottomRight.y + viewerBounds.y,\n width: bottomRight.x - topLeft.x,\n height: bottomRight.y - topLeft.y,\n };\n}\n\nexport const setPosition = (\n viewer: OpenSeadragon.Viewer, \n annotation: ImageAnnotation, \n popup: HTMLElement,\n sideOffset: number = 5\n) => {\n const viewerBounds = viewer.element.getBoundingClientRect();\n const annoBounds = getAnnotationDomRect(viewer, annotation);\n\n // Available space above, right, below, left the annotation in the viewport\n const availableAbove = annoBounds.y - viewerBounds.y;\n const availableRight = viewerBounds.right - annoBounds.x;\n const availableBelow = viewerBounds.bottom - annoBounds.bottom;\n const availableLeft = annoBounds.x - viewerBounds.left;\n\n // Popup element bounds\n const popupBounds = popup.firstElementChild.getBoundingClientRect();\n\n // Eight possible base alignment anchor points\n //\n // topleft topright\n // * *\n // leftdown * |---------------------| * rightdown\n // | |\n // | |\n // | |\n // leftup * |---------------------| * rightup\n // * * \n // bottomleft bottomright\n //\n // We'll position the popup at the cardinal direction\n // with the highest ratio: available space vs. popup size.\n const ratioAbove = availableAbove / popupBounds.height;\n const ratioRight = availableRight / popupBounds.width;\n const ratioBelow = availableBelow / popupBounds.height;\n const ratioLeft = availableLeft / popupBounds.width;\n\n const topleft = () => {\n popup.style.left = `${annoBounds.x}px`;\n popup.style.top = `${annoBounds.y - sideOffset - popupBounds.height}px`;\n }\n\n const topright = () => {\n popup.style.left = `${annoBounds.right - popupBounds.width}px`;\n popup.style.top = `${annoBounds.y - sideOffset - popupBounds.height}px`;\n }\n\n const leftdown = () => {\n popup.style.left = `${annoBounds.x - popupBounds.width - sideOffset}px`;\n popup.style.top = `${annoBounds.y}px`;\n } \n\n const rightdown = () => {\n popup.style.left = `${annoBounds.right + sideOffset}px`;\n popup.style.top = `${annoBounds.y}px`;\n }\n\n const leftup = () => {\n popup.style.left = `${annoBounds.x - popupBounds.width - sideOffset}px`;\n popup.style.top = `${annoBounds.bottom - popupBounds.height}px`;\n }\n\n const rightup = () => {\n popup.style.left = `${annoBounds.x + annoBounds.width + sideOffset}px`;\n popup.style.top = `${annoBounds.bottom - popupBounds.height}px`;\n }\n\n const bottomleft = () => {\n popup.style.left = `${annoBounds.x}px`;\n popup.style.top = `${annoBounds.bottom + sideOffset}px`;\n }\n\n const bottomright = () => {\n popup.style.left = `${annoBounds.right - popupBounds.width}px`;\n popup.style.top = `${annoBounds.bottom + sideOffset}px`;\n }\n\n const ratios = [ratioAbove, ratioRight, ratioBelow, ratioLeft];\n const maxIdx = ratios.indexOf(Math.max(...ratios));\n\n if (maxIdx === 0) {\n // Main orientation: above\n if (ratioRight > ratioLeft)\n topleft();\n else \n topright();\n } else if (maxIdx === 1) {\n // Main orientation: right\n if (ratioAbove > ratioBelow)\n rightup();\n else\n rightdown();\n } else if (maxIdx === 2) {\n // Main orientation: below\n if (ratioRight > ratioLeft)\n bottomleft();\n else\n bottomright();\n } else {\n // Main orientation: left\n if (ratioAbove > ratioBelow)\n leftup();\n else \n leftdown();\n }\n}"],"names":["getAnnotationDomRect","viewer","annotation","viewerBounds","minX","minY","maxX","maxY","topLeft","OpenSeadragon","bottomRight","setPosition","popup","sideOffset","annoBounds","availableAbove","availableRight","availableBelow","availableLeft","popupBounds","ratioAbove","ratioRight","ratioBelow","ratioLeft","topleft","topright","leftdown","rightdown","leftup","rightup","bottomleft","bottomright","ratios","maxIdx"],"mappings":"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"}
|