@annotorious/react 3.0.0-rc.8 → 3.0.0-rc.9

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.
Files changed (34) hide show
  1. package/dist/annotorious-react.es.js +4 -4
  2. package/dist/annotorious-react.es10.js +35 -28
  3. package/dist/annotorious-react.es10.js.map +1 -1
  4. package/dist/annotorious-react.es11.js +16 -36
  5. package/dist/annotorious-react.es11.js.map +1 -1
  6. package/dist/annotorious-react.es12.js +4 -16
  7. package/dist/annotorious-react.es12.js.map +1 -1
  8. package/dist/annotorious-react.es13.js +8 -4
  9. package/dist/annotorious-react.es13.js.map +1 -1
  10. package/dist/annotorious-react.es14.js +153 -8
  11. package/dist/annotorious-react.es14.js.map +1 -1
  12. package/dist/annotorious-react.es15.js +6 -153
  13. package/dist/annotorious-react.es15.js.map +1 -1
  14. package/dist/annotorious-react.es16.js +22155 -6
  15. package/dist/annotorious-react.es16.js.map +1 -1
  16. package/dist/annotorious-react.es17.js +31 -20707
  17. package/dist/annotorious-react.es17.js.map +1 -1
  18. package/dist/annotorious-react.es18.js +2 -32
  19. package/dist/annotorious-react.es18.js.map +1 -1
  20. package/dist/annotorious-react.es19.js +30 -2
  21. package/dist/annotorious-react.es19.js.map +1 -1
  22. package/dist/annotorious-react.es2.js +2 -2
  23. package/dist/annotorious-react.es20.js +590 -21
  24. package/dist/annotorious-react.es20.js.map +1 -1
  25. package/dist/annotorious-react.es21.js +2 -599
  26. package/dist/annotorious-react.es21.js.map +1 -1
  27. package/dist/annotorious-react.es22.js +2 -2
  28. package/dist/annotorious-react.es4.js +2 -2
  29. package/dist/annotorious-react.es5.js +2 -2
  30. package/dist/annotorious-react.es9.js +25 -3920
  31. package/dist/annotorious-react.es9.js.map +1 -1
  32. package/package.json +2 -1
  33. package/dist/annotorious-react.es23.js +0 -5
  34. package/dist/annotorious-react.es23.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"annotorious-react.es17.js","sources":["../../annotorious-openseadragon/dist/annotorious-openseadragon.es.js"],"sourcesContent":["import Ei from \"openseadragon\";\nvar Ts = 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 (Ts.call(r, e) && ++n && !Ts.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 zi() {\n}\nfunction Tf(r, t) {\n return r != r ? t == t : r !== t || r && typeof r == \"object\" || typeof r == \"function\";\n}\nconst _r = [];\nfunction ja(r, t = zi) {\n let e;\n const n = /* @__PURE__ */ new Set();\n function i(s) {\n if (Tf(r, s) && (r = s, e)) {\n const u = !_r.length;\n for (const h of n)\n h[1](), _r.push(h, r);\n if (u) {\n for (let h = 0; h < _r.length; h += 2)\n _r[h][0](_r[h + 1]);\n _r.length = 0;\n }\n }\n }\n function o(s) {\n i(s(r));\n }\n function a(s, u = zi) {\n const h = [s, u];\n return n.add(h), n.size === 1 && (e = t(i) || zi), 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 wf = (r) => {\n const { subscribe: t, set: e } = ja(null);\n let n = null;\n return t((i) => n = i), r.observe(({ changes: i }) => {\n if (n) {\n i.deleted.some((a) => a.id === n) && e(null);\n const o = i.updated.find(({ oldValue: a }) => a.id === n);\n o && e(o.newValue.id);\n }\n }), {\n get current() {\n return n;\n },\n subscribe: t,\n set: e\n };\n};\nvar Gh = /* @__PURE__ */ ((r) => (r.EDIT = \"EDIT\", r.SELECT = \"SELECT\", r.NONE = \"NONE\", r))(Gh || {});\nconst Wi = { selected: [] }, Sf = (r, t = \"EDIT\") => {\n const { subscribe: e, set: n } = ja(Wi);\n let i = Wi;\n e((f) => i = f);\n const o = () => n(Wi), a = () => {\n var f;\n return ((f = i.selected) == null ? void 0 : f.length) === 0;\n }, s = (f) => {\n if (i.selected.length === 0)\n return !1;\n const c = typeof f == \"string\" ? f : f.id;\n return i.selected.some((d) => d.id === c);\n }, u = (f, c) => {\n const d = r.getAnnotation(f);\n if (d) {\n const p = Af(d, t);\n n(p === \"EDIT\" ? { selected: [{ id: f, editable: !0 }], pointerEvent: c } : p === \"SELECT\" ? { selected: [{ id: f }], pointerEvent: c } : { selected: [], pointerEvent: c });\n } else\n console.warn(\"Invalid selection: \" + f);\n }, h = (f, c = !0) => {\n const d = Array.isArray(f) ? f : [f], 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\", f);\n }, l = (f) => {\n if (i.selected.length === 0)\n return !1;\n const { selected: c } = i;\n c.filter(({ id: d }) => f.includes(d)).length > 0 && n({ selected: c.filter(({ id: d }) => !f.includes(d)) });\n };\n return r.observe(({ changes: f }) => l(f.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}, Af = (r, t) => typeof t == \"function\" ? t(r) || \"EDIT\" : t || \"EDIT\", Pf = [];\nfor (let r = 0; r < 256; ++r)\n Pf.push((r + 256).toString(16).slice(1));\ntypeof crypto < \"u\" && crypto.randomUUID && crypto.randomUUID.bind(crypto);\nconst Of = (r, t) => {\n const e = new Set(r.bodies.map((n) => n.id));\n return t.bodies.filter((n) => !e.has(n.id));\n}, Rf = (r, t) => {\n const e = new Set(t.bodies.map((n) => n.id));\n return r.bodies.filter((n) => !e.has(n.id));\n}, If = (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), Cf = (r, t) => !nr(r.target, t.target), kh = (r, t) => {\n const e = Of(r, t), n = Rf(r, t), i = If(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: Cf(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 Mf = (r, t) => {\n var e, n;\n const { changes: i, origin: o } = t;\n if (!(!r.options.origin || r.options.origin === o))\n return !1;\n if (r.options.ignore) {\n const { ignore: a } = r.options, s = (u) => (u == null ? void 0 : u.length) > 0;\n if (!(s(i.created) || s(i.deleted))) {\n const u = (e = i.updated) == null ? void 0 : e.some((l) => s(l.bodiesCreated) || s(l.bodiesDeleted) || s(l.bodiesUpdated)), h = (n = i.updated) == null ? void 0 : n.some((l) => l.targetUpdated);\n if (a === \"BODY_ONLY\" && u && !h || a === \"TARGET_ONLY\" && h && !u)\n return !1;\n }\n }\n if (r.options.annotations) {\n const a = /* @__PURE__ */ new Set([\n ...i.created.map((s) => s.id),\n ...i.deleted.map((s) => s.id),\n ...i.updated.map(({ oldValue: s }) => s.id)\n ]);\n return !!(Array.isArray(r.options.annotations) ? r.options.annotations : [r.options.annotations]).find((s) => a.has(s));\n } else\n return !0;\n}, Df = (r, t) => {\n const e = new Set((r.created || []).map((f) => f.id)), n = new Set((r.updated || []).map(({ newValue: f }) => f.id)), i = new Set((t.created || []).map((f) => f.id)), o = new Set((t.deleted || []).map((f) => f.id)), a = new Set((t.updated || []).map(({ oldValue: f }) => f.id)), s = new Set((t.updated || []).filter(({ oldValue: f }) => e.has(f.id) || n.has(f.id)).map(({ oldValue: f }) => f.id)), u = [\n ...(r.created || []).filter((f) => !o.has(f.id)).map((f) => a.has(f.id) ? t.updated.find(({ oldValue: c }) => c.id === f.id).newValue : f),\n ...t.created || []\n ], h = [\n ...(r.deleted || []).filter((f) => !i.has(f.id)),\n ...(t.deleted || []).filter((f) => !e.has(f.id))\n ], l = [\n ...(r.updated || []).filter(({ newValue: f }) => !o.has(f.id)).map((f) => {\n const { oldValue: c, newValue: d } = f;\n if (a.has(d.id)) {\n const p = t.updated.find((v) => v.oldValue.id === d.id).newValue;\n return kh(c, p);\n } else\n return f;\n }),\n ...(t.updated || []).filter(({ oldValue: f }) => !s.has(f.id))\n ];\n return { created: u, deleted: h, updated: l };\n}, Ff = (r) => r.id !== void 0, Bf = () => {\n const r = /* @__PURE__ */ new Map(), t = /* @__PURE__ */ new Map(), e = [], n = (T, x = {}) => e.push({ onChange: T, options: x }), i = (T) => {\n const x = e.findIndex((w) => w.onChange == T);\n x > -1 && e.splice(x, 1);\n }, o = (T, x) => {\n const w = {\n origin: T,\n changes: {\n created: x.created || [],\n updated: x.updated || [],\n deleted: x.deleted || []\n },\n state: [...r.values()]\n };\n e.forEach((O) => {\n Mf(O, w) && O.onChange(w);\n });\n }, a = (T, x = Ot.LOCAL) => {\n if (r.get(T.id))\n throw Error(`Cannot add annotation ${T.id} - exists already`);\n r.set(T.id, T), T.bodies.forEach((w) => t.set(w.id, T.id)), o(x, { created: [T] });\n }, s = (T, x) => {\n const w = typeof T == \"string\" ? x : T, O = typeof T == \"string\" ? T : T.id, I = r.get(O);\n if (I) {\n const C = kh(I, w);\n return O === w.id ? r.set(O, w) : (r.delete(O), r.set(w.id, w)), I.bodies.forEach((U) => t.delete(U.id)), w.bodies.forEach((U) => t.set(U.id, w.id)), C;\n } else\n console.warn(`Cannot update annotation ${O} - does not exist`);\n }, u = (T, x = Ot.LOCAL, w = Ot.LOCAL) => {\n const O = Ff(x) ? w : x, I = s(T, x);\n I && o(O, { updated: [I] });\n }, h = (T, x = Ot.LOCAL) => {\n const w = T.reduce((O, I) => {\n const C = s(I);\n return C ? [...O, C] : O;\n }, []);\n w.length > 0 && o(x, { updated: w });\n }, l = (T, x = Ot.LOCAL) => {\n const w = r.get(T.annotation);\n if (w) {\n const O = {\n ...w,\n bodies: [...w.bodies, T]\n };\n r.set(w.id, O), t.set(T.id, O.id), o(x, { updated: [{\n oldValue: w,\n newValue: O,\n bodiesCreated: [T]\n }] });\n } else\n console.warn(`Attempt to add body to missing annotation: ${T.annotation}`);\n }, f = () => [...r.values()], c = (T = Ot.LOCAL) => {\n const x = [...r.values()];\n r.clear(), t.clear(), o(T, { deleted: x });\n }, d = (T, x = !0, w = Ot.LOCAL) => {\n if (x) {\n const O = [...r.values()];\n r.clear(), t.clear(), T.forEach((I) => {\n r.set(I.id, I), I.bodies.forEach((C) => t.set(C.id, I.id));\n }), o(w, { created: T, deleted: O });\n } else {\n const O = T.reduce((I, C) => {\n const U = r.get(C.id);\n return U ? [...I, U] : I;\n }, []);\n if (O.length > 0)\n throw Error(`Bulk insert would overwrite the following annotations: ${O.map((I) => I.id).join(\", \")}`);\n T.forEach((I) => {\n r.set(I.id, I), I.bodies.forEach((C) => t.set(C.id, I.id));\n }), o(w, { created: T });\n }\n }, p = (T) => {\n const x = typeof T == \"string\" ? T : T.id, w = r.get(x);\n if (w)\n return r.delete(x), w.bodies.forEach((O) => t.delete(O.id)), w;\n console.warn(`Attempt to delete missing annotation: ${x}`);\n }, v = (T, x = Ot.LOCAL) => {\n const w = p(T);\n w && o(x, { deleted: [w] });\n }, _ = (T, x = Ot.LOCAL) => {\n const w = T.reduce((O, I) => {\n const C = p(I);\n return C ? [...O, C] : O;\n }, []);\n w.length > 0 && o(x, { deleted: w });\n }, m = (T, x = Ot.LOCAL) => {\n const w = r.get(T.annotation);\n if (w) {\n const O = w.bodies.find((I) => I.id === T.id);\n if (O) {\n t.delete(O.id);\n const I = {\n ...w,\n bodies: w.bodies.filter((C) => C.id !== T.id)\n };\n r.set(w.id, I), o(x, { updated: [{\n oldValue: w,\n newValue: I,\n bodiesDeleted: [O]\n }] });\n } else\n console.warn(`Attempt to delete missing body ${T.id} from annotation ${T.annotation}`);\n } else\n console.warn(`Attempt to delete body from missing annotation ${T.annotation}`);\n }, g = (T) => {\n const x = r.get(T);\n return x ? { ...x } : void 0;\n }, y = (T) => {\n const x = t.get(T);\n if (x) {\n const w = g(x).bodies.find((O) => O.id === T);\n if (w)\n return w;\n console.error(`Store integrity error: body ${T} in index, but not in annotation`);\n } else\n console.warn(`Attempt to retrieve missing body: ${T}`);\n }, E = (T, x) => {\n if (T.annotation !== x.annotation)\n throw \"Annotation integrity violation: annotation ID must be the same when updating bodies\";\n const w = r.get(T.annotation);\n if (w) {\n const O = w.bodies.find((C) => C.id === T.id), I = {\n ...w,\n bodies: w.bodies.map((C) => C.id === O.id ? x : C)\n };\n return r.set(w.id, I), O.id !== x.id && (t.delete(O.id), t.set(x.id, I.id)), {\n oldValue: w,\n newValue: I,\n bodiesUpdated: [{ oldBody: O, newBody: x }]\n };\n } else\n console.warn(`Attempt to add body to missing annotation ${T.annotation}`);\n }, b = (T, x, w = Ot.LOCAL) => {\n const O = E(T, x);\n o(w, { updated: [O] });\n }, S = (T, x = Ot.LOCAL) => {\n const w = T.map((O) => E({ id: O.id, annotation: O.annotation }, O));\n o(x, { updated: w });\n }, P = (T) => {\n const x = r.get(T.annotation);\n if (x) {\n const w = {\n ...x,\n target: {\n ...x.target,\n ...T\n }\n };\n return r.set(x.id, w), {\n oldValue: x,\n newValue: w,\n targetUpdated: {\n oldTarget: x.target,\n newTarget: T\n }\n };\n } else\n console.warn(`Attempt to update target on missing annotation: ${T.annotation}`);\n };\n return {\n addAnnotation: a,\n addBody: l,\n all: f,\n bulkAddAnnotation: d,\n bulkDeleteAnnotation: _,\n bulkUpdateAnnotation: h,\n bulkUpdateBodies: S,\n bulkUpdateTargets: (T, x = Ot.LOCAL) => {\n const w = T.map(P).filter((O) => O);\n w.length > 0 && o(x, { updated: w });\n },\n clear: c,\n deleteAnnotation: v,\n deleteBody: m,\n getAnnotation: g,\n getBody: y,\n observe: n,\n unobserve: i,\n updateAnnotation: u,\n updateBody: b,\n updateTarget: (T, x = Ot.LOCAL) => {\n const w = P(T);\n w && o(x, { updated: [w] });\n }\n };\n};\nlet Nf = () => ({\n emit(r, ...t) {\n let e = this.events[r] || [];\n for (let n = 0, i = e.length; n < i; n++)\n e[n](...t);\n },\n events: {},\n on(r, t) {\n var e;\n return (e = this.events[r]) != null && e.push(t) || (this.events[r] = [t]), () => {\n var n;\n this.events[r] = (n = this.events[r]) == null ? void 0 : n.filter((i) => t !== i);\n };\n }\n});\nconst Lf = 250, Uf = (r) => {\n const t = Nf(), e = [];\n let n = -1, i = !1, o = 0;\n const a = (d) => {\n if (!i) {\n const { changes: p } = d, v = performance.now();\n if (v - o > Lf)\n e.splice(n + 1), e.push(p), n = e.length - 1;\n else {\n const _ = e.length - 1;\n e[_] = Df(e[_], p);\n }\n o = v;\n }\n i = !1;\n };\n r.observe(a, { origin: Ot.LOCAL });\n const s = (d) => (d == null ? void 0 : d.length) > 0 && r.bulkDeleteAnnotation(d), u = (d) => (d == null ? void 0 : d.length) > 0 && r.bulkAddAnnotation(d, !1), h = (d) => (d == null ? void 0 : d.length) > 0 && r.bulkUpdateAnnotation(d.map(({ oldValue: p }) => p)), l = (d) => (d == null ? void 0 : d.length) > 0 && r.bulkUpdateAnnotation(d.map(({ newValue: p }) => p)), f = (d) => (d == null ? void 0 : d.length) > 0 && r.bulkAddAnnotation(d, !1), c = (d) => (d == null ? void 0 : d.length) > 0 && r.bulkDeleteAnnotation(d);\n return {\n canRedo: () => e.length - 1 > n,\n canUndo: () => n > -1,\n destroy: () => r.unobserve(a),\n on: (d, p) => t.on(d, p),\n redo: () => {\n if (e.length - 1 > n) {\n i = !0;\n const { created: d, updated: p, deleted: v } = e[n + 1];\n u(d), l(p), c(v), t.emit(\"redo\", e[n + 1]), n += 1;\n }\n },\n undo: () => {\n if (n > -1) {\n i = !0;\n const { created: d, updated: p, deleted: v } = e[n];\n s(d), h(p), f(v), t.emit(\"undo\", e[n]), n -= 1;\n }\n }\n };\n}, Gf = () => {\n const { subscribe: r, set: t } = ja([]);\n return {\n subscribe: r,\n set: t\n };\n}, kf = (r, t, e, n) => {\n const { store: i, selection: o, hover: a, viewport: s } = r, u = /* @__PURE__ */ new Map();\n let h = [], l, f;\n const c = (m, g) => {\n u.has(m) ? u.get(m).push(g) : u.set(m, [g]);\n }, d = (m, g) => {\n const y = u.get(m);\n y && y.indexOf(g) > 0 && y.splice(y.indexOf(g), 1);\n }, p = (m, g, y) => {\n u.has(m) && setTimeout(() => {\n u.get(m).forEach((E) => {\n if (e) {\n const b = Array.isArray(g) ? g.map((P) => e.serialize(P)) : e.serialize(g), S = y ? y instanceof PointerEvent ? y : e.serialize(y) : void 0;\n E(b, S);\n } else\n E(g, y);\n });\n }, 1);\n }, v = () => {\n const { selected: m } = o, g = m.map(({ id: y }) => i.getAnnotation(y));\n g.forEach((y) => {\n const E = h.find((b) => b.id === y.id);\n (!E || !nr(E, y)) && p(\"updateAnnotation\", y, E);\n }), h = h.map((y) => g.find(({ id: b }) => b === y.id) || y);\n };\n o.subscribe(({ selected: m }) => {\n if (!(h.length === 0 && m.length === 0)) {\n if (h.length === 0 && m.length > 0)\n h = m.map(({ id: g }) => i.getAnnotation(g));\n else if (h.length > 0 && m.length === 0)\n h.forEach((g) => {\n const y = i.getAnnotation(g.id);\n y && !nr(y, g) && p(\"updateAnnotation\", y, g);\n }), h = [];\n else {\n const g = new Set(h.map((E) => E.id)), y = new Set(m.map(({ id: E }) => E));\n h.filter((E) => !y.has(E.id)).forEach((E) => {\n const b = i.getAnnotation(E.id);\n b && !nr(b, E) && p(\"updateAnnotation\", b, E);\n }), h = [\n // Remove annotations that were deselected\n ...h.filter((E) => y.has(E.id)),\n // Add editable annotations that were selected\n ...m.filter(({ id: E }) => !g.has(E)).map(({ id: E }) => i.getAnnotation(E))\n ];\n }\n p(\"selectionChanged\", h);\n }\n }), a.subscribe((m) => {\n !l && m ? p(\"mouseEnterAnnotation\", i.getAnnotation(m)) : l && !m ? p(\"mouseLeaveAnnotation\", i.getAnnotation(l)) : l && m && (p(\"mouseLeaveAnnotation\", i.getAnnotation(l)), p(\"mouseEnterAnnotation\", i.getAnnotation(m))), l = m;\n }), s == null || s.subscribe((m) => p(\"viewportIntersect\", m.map(i.getAnnotation))), i.observe((m) => {\n n && (f && clearTimeout(f), f = setTimeout(v, 1e3));\n const { created: g, deleted: y } = m.changes;\n g.forEach((E) => p(\"createAnnotation\", E)), y.forEach((E) => p(\"deleteAnnotation\", E)), m.changes.updated.filter((E) => [\n ...E.bodiesCreated || [],\n ...E.bodiesDeleted || [],\n ...E.bodiesUpdated || []\n ].length > 0).forEach(({ oldValue: E, newValue: b }) => {\n const S = h.find((P) => P.id === E.id) || E;\n h = h.map((P) => P.id === E.id ? b : P), p(\"updateAnnotation\", b, S);\n });\n }, { origin: Ot.LOCAL }), i.observe((m) => {\n if (h) {\n const g = new Set(h.map((E) => E.id)), y = m.changes.updated.filter(({ newValue: E }) => g.has(E.id)).map(({ newValue: E }) => E);\n y.length > 0 && (h = h.map((E) => y.find((S) => S.id === E.id) || E));\n }\n }, { origin: Ot.REMOTE });\n const _ = (m) => (g) => {\n const { created: y, deleted: E, updated: b } = g;\n y.forEach((S) => p(\"createAnnotation\", S)), E.forEach((S) => p(\"deleteAnnotation\", S)), m ? b.forEach((S) => p(\"updateAnnotation\", S.oldValue, S.newValue)) : b.forEach((S) => p(\"updateAnnotation\", S.newValue, S.oldValue));\n };\n return t.on(\"undo\", _(!0)), t.on(\"redo\", _(!1)), { on: c, off: d, emit: p };\n}, Xf = (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: [] }), Hf = (r, t, e) => {\n const { store: n, selection: i } = r, o = (_) => {\n if (e) {\n const { parsed: m, error: g } = e.parse(_);\n m ? n.addAnnotation(m, Ot.REMOTE) : console.error(g);\n } else\n n.addAnnotation(_, Ot.REMOTE);\n }, a = () => i.clear(), s = () => n.clear(), u = (_) => {\n const m = n.getAnnotation(_);\n return e && m ? e.serialize(m) : m;\n }, h = () => e ? n.all().map(e.serialize) : n.all(), l = () => {\n var _;\n const m = (((_ = i.selected) == null ? void 0 : _.map((g) => g.id)) || []).map((g) => n.getAnnotation(g));\n return e ? m.map(e.serialize) : m;\n }, f = (_) => fetch(_).then((m) => m.json()).then((m) => (d(m), m)), c = (_) => {\n if (typeof _ == \"string\") {\n const m = n.getAnnotation(_);\n return n.deleteAnnotation(_), e ? e.serialize(m) : m;\n } else {\n const m = e ? e.parse(_).parsed : _;\n return n.deleteAnnotation(m), _;\n }\n }, d = (_) => {\n if (e) {\n const { parsed: m, failed: g } = Xf(e)(_);\n g.length > 0 && console.warn(`Discarded ${g.length} invalid annotations`, g), n.bulkAddAnnotation(m, !0, Ot.REMOTE);\n } else\n n.bulkAddAnnotation(_, !0, Ot.REMOTE);\n }, p = (_) => {\n _ ? i.setSelected(_) : i.clear();\n }, v = (_) => {\n if (e) {\n const m = e.parse(_).parsed, g = e.serialize(n.getAnnotation(m.id));\n return n.updateAnnotation(m), g;\n } else {\n const m = n.getAnnotation(_.id);\n return n.updateAnnotation(_), m;\n }\n };\n return {\n addAnnotation: o,\n cancelSelected: a,\n canRedo: t.canRedo,\n canUndo: t.canUndo,\n clearAnnotations: s,\n getAnnotationById: u,\n getAnnotations: h,\n getSelected: l,\n loadAnnotations: f,\n redo: t.redo,\n removeAnnotation: c,\n setAnnotations: d,\n setSelected: p,\n undo: t.undo,\n updateAnnotation: v\n };\n};\nlet jf = (r) => crypto.getRandomValues(new Uint8Array(r)), Vf = (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}, Yf = (r, t = 21) => Vf(r, t, jf), zf = (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 Wf = () => ({ isGuest: !0, id: Yf(\"1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_\", 20)() });\nzf();\nfunction te() {\n}\nfunction qf(r, t) {\n for (const e in t)\n r[e] = t[e];\n return r;\n}\nfunction Xh(r) {\n return r();\n}\nfunction ws() {\n return /* @__PURE__ */ Object.create(null);\n}\nfunction ke(r) {\n r.forEach(Xh);\n}\nfunction Ht(r) {\n return typeof r == \"function\";\n}\nfunction Vt(r, t) {\n return r != r ? t == t : r !== t || r && typeof r == \"object\" || typeof r == \"function\";\n}\nfunction $f(r) {\n return Object.keys(r).length === 0;\n}\nfunction Kf(r, ...t) {\n if (r == null)\n return te;\n const e = r.subscribe(...t);\n return e.unsubscribe ? () => e.unsubscribe() : e;\n}\nfunction Xo(r, t, e) {\n r.$$.on_destroy.push(Kf(t, e));\n}\nfunction Hh(r, t, e, n) {\n if (r) {\n const i = jh(r, t, e, n);\n return r[0](i);\n }\n}\nfunction jh(r, t, e, n) {\n return r[1] && n ? qf(e.ctx.slice(), r[1](n(t))) : e.ctx;\n}\nfunction Vh(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 Yh(r, t, e, n, i, o) {\n if (i) {\n const a = jh(t, e, n, o);\n r.p(a, i);\n }\n}\nfunction zh(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 Zf = 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 Va(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 Ya(r) {\n return document.createTextNode(r);\n}\nfunction ne() {\n return Ya(\" \");\n}\nfunction Xe() {\n return Ya(\"\");\n}\nfunction Yt(r, t, e, n) {\n return r.addEventListener(t, e, n), () => r.removeEventListener(t, e, n);\n}\nfunction A(r, t, e) {\n e == null ? r.removeAttribute(t) : r.getAttribute(t) !== e && r.setAttribute(t, e);\n}\nfunction Jf(r) {\n return Array.from(r.childNodes);\n}\nfunction Qf(r, t) {\n t = \"\" + t, r.data !== t && (r.data = t);\n}\nfunction Ss(r, t, e) {\n r.classList[e ? \"add\" : \"remove\"](t);\n}\nfunction tc(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 za() {\n if (!_n)\n throw new Error(\"Function called outside component initialization\");\n return _n;\n}\nfunction Wr(r) {\n za().$$.on_mount.push(r);\n}\nfunction ec(r) {\n za().$$.on_destroy.push(r);\n}\nfunction qr() {\n const r = za();\n return (t, e, { cancelable: n = !1 } = {}) => {\n const i = r.$$.callbacks[t];\n if (i) {\n const o = tc(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 As = [], rc = /* @__PURE__ */ Promise.resolve();\nlet Ho = !1;\nfunction nc() {\n Ho || (Ho = !0, rc.then(Wh));\n}\nfunction jo(r) {\n Fr.push(r);\n}\nconst qi = /* @__PURE__ */ new Set();\nlet mr = 0;\nfunction Wh() {\n if (mr !== 0)\n return;\n const r = _n;\n do {\n try {\n for (; mr < Sr.length; ) {\n const t = Sr[mr];\n mr++, hn(t), ic(t.$$);\n }\n } catch (t) {\n throw Sr.length = 0, mr = 0, t;\n }\n for (hn(null), Sr.length = 0, mr = 0; Ti.length; )\n Ti.pop()();\n for (let t = 0; t < Fr.length; t += 1) {\n const e = Fr[t];\n qi.has(e) || (qi.add(e), e());\n }\n Fr.length = 0;\n } while (Sr.length);\n for (; As.length; )\n As.pop()();\n Ho = !1, qi.clear(), hn(r);\n}\nfunction ic(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(jo);\n }\n}\nfunction oc(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 He() {\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 || jo(() => {\n const a = r.$$.on_mount.map(Xh).filter(Ht);\n r.$$.on_destroy ? r.$$.on_destroy.push(...a) : ke(a), r.$$.on_mount = [];\n }), o.forEach(jo);\n}\nfunction de(r, t) {\n const e = r.$$;\n e.fragment !== null && (oc(e.after_update), ke(e.on_destroy), e.fragment && e.fragment.d(t), e.on_destroy = e.fragment = null, e.ctx = []);\n}\nfunction ac(r, t) {\n r.$$.dirty[0] === -1 && (Sr.push(r), nc(), r.$$.dirty.fill(0)), r.$$.dirty[t / 31 | 0] |= 1 << t % 31;\n}\nfunction Kt(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: te,\n not_equal: i,\n bound: ws(),\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: ws(),\n dirty: s,\n skip_bound: !1,\n root: t.target || u.$$.root\n };\n a && a(h.root);\n let l = !1;\n if (h.ctx = e ? e(r, t.props || {}, (f, c, ...d) => {\n const p = d.length ? d[0] : c;\n return h.ctx && i(h.ctx[f], h.ctx[f] = p) && (!h.skip_bound && h.bound[f] && h.bound[f](p), l && ac(r, f)), c;\n }) : [], h.update(), l = !0, ke(h.before_update), h.fragment = n ? n(h.ctx) : !1, t.target) {\n if (t.hydrate) {\n const f = Jf(t.target);\n h.fragment && h.fragment.l(f), f.forEach(K);\n } else\n h.fragment && h.fragment.c();\n t.intro && lt(r.$$.fragment), ce(r, t.target, t.anchor, t.customElement), Wh();\n }\n hn(u);\n}\nclass Zt {\n $destroy() {\n de(this, 1), this.$destroy = te;\n }\n $on(t, e) {\n if (!Ht(e))\n return te;\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 && !$f(t) && (this.$$.skip_bound = !0, this.$$set(t), this.$$.skip_bound = !1);\n }\n}\nvar qt = /* @__PURE__ */ ((r) => (r.ELLIPSE = \"ELLIPSE\", r.POLYGON = \"POLYGON\", r.RECTANGLE = \"RECTANGLE\", r))(qt || {});\nconst Wa = {}, qa = (r, t) => Wa[r] = t, Vo = (r) => Wa[r.type].area(r), sc = (r, t, e) => Wa[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), l = t - n, f = e - i, c = u * l + h * f, d = h * l - u * f;\n return c * c / (o * o) + d * d / (a * a) <= 1;\n }\n};\nqa(qt.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], l = n[a][1];\n u > e != l > e && t < (h - s) * (e - u) / (l - u) + s && (i = !i);\n }\n return i;\n }\n};\nqa(qt.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};\nqa(qt.RECTANGLE, lc);\nlet Nn;\nconst fc = new Uint8Array(16);\nfunction cc() {\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(fc);\n}\nconst Lt = [];\nfor (let r = 0; r < 256; ++r)\n Lt.push((r + 256).toString(16).slice(1));\nfunction dc(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 pc = typeof crypto < \"u\" && crypto.randomUUID && crypto.randomUUID.bind(crypto), Ps = {\n randomUUID: pc\n};\nfunction qh(r, t, e) {\n if (Ps.randomUUID && !t && !r)\n return Ps.randomUUID();\n r = r || {};\n const n = r.random || (r.rng || cc)();\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 dc(n);\n}\nfunction Os(r, t, e) {\n const n = r.slice();\n return n[11] = t[e], n[13] = e, n;\n}\nfunction Rs(r) {\n let t, e, n, i, o;\n return {\n c() {\n t = ct(\"rect\"), A(t, \"class\", \"a9s-corner-handle\"), A(t, \"x\", e = /*point*/\n r[11][0] - /*handleSize*/\n r[3] / 2), A(t, \"y\", n = /*point*/\n r[11][1] - /*handleSize*/\n r[3] / 2), A(\n t,\n \"height\",\n /*handleSize*/\n r[3]\n ), A(\n t,\n \"width\",\n /*handleSize*/\n r[3]\n );\n },\n m(a, s) {\n Z(a, t, s), i || (o = Yt(t, \"pointerdown\", function() {\n Ht(\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) && A(t, \"x\", e), s & /*geom, handleSize*/\n 24 && n !== (n = /*point*/\n r[11][1] - /*handleSize*/\n r[3] / 2) && A(t, \"y\", n), s & /*handleSize*/\n 8 && A(\n t,\n \"height\",\n /*handleSize*/\n r[3]\n ), s & /*handleSize*/\n 8 && A(\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 vc(r) {\n let t, e, n, i, o, a, s, u, h, l, f = (\n /*geom*/\n r[4].points\n ), c = [];\n for (let d = 0; d < f.length; d += 1)\n c[d] = Rs(Os(r, f, 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 = Xe(), A(t, \"class\", \"a9s-outer\"), A(t, \"style\", e = /*computedStyle*/\n r[1] ? \"display:none;\" : void 0), A(t, \"points\", n = /*geom*/\n r[4].points.map(Is).join(\" \")), A(o, \"class\", \"a9s-inner a9s-shape-handle\"), A(\n o,\n \"style\",\n /*computedStyle*/\n r[1]\n ), A(o, \"points\", a = /*geom*/\n r[4].points.map(Cs).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 || (l = [\n Yt(t, \"pointerdown\", function() {\n Ht(\n /*grab*/\n r[10](z.SHAPE)\n ) && r[10](z.SHAPE).apply(this, arguments);\n }),\n Yt(o, \"pointerdown\", function() {\n Ht(\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) && A(t, \"style\", e), p & /*geom*/\n 16 && n !== (n = /*geom*/\n r[4].points.map(Is).join(\" \")) && A(t, \"points\", n), p & /*computedStyle*/\n 2 && A(\n o,\n \"style\",\n /*computedStyle*/\n r[1]\n ), p & /*geom*/\n 16 && a !== (a = /*geom*/\n r[4].points.map(Cs).join(\" \")) && A(o, \"points\", a), p & /*geom, handleSize, grab, Handle*/\n 1048) {\n f = /*geom*/\n r[4].points;\n let v;\n for (v = 0; v < f.length; v += 1) {\n const _ = Os(r, f, v);\n c[v] ? c[v].p(_, p) : (c[v] = Rs(_), 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 = f.length;\n }\n },\n d(d) {\n d && K(t), d && K(i), d && K(o), d && K(s), Va(c, d), d && K(u), h = !1, ke(l);\n }\n };\n}\nfunction _c(r) {\n let t, e;\n return t = new Kh({\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 \"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 Is = (r) => r.join(\",\"), Cs = (r) => r.join(\",\");\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 let _;\n p === z.SHAPE ? _ = d.geometry.points.map(([g, y]) => [g + v[0], y + v[1]]) : _ = d.geometry.points.map(([g, y], E) => p === z(E) ? [g + v[0], y + v[1]] : [g, y]);\n const m = Yo(_);\n return { ...d, geometry: { points: _, bounds: m } };\n };\n function l(d) {\n Dr.call(this, r, d);\n }\n function f(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 l,\n f,\n c\n ];\n}\nclass gc extends Zt {\n constructor(t) {\n super(), Kt(this, t, mc, _c, Vt, {\n shape: 0,\n computedStyle: 1,\n transform: 2,\n viewportScale: 6\n });\n }\n}\nfunction yc(r) {\n let t, e, n, i, o, a, s, u, h, l, f, c, d, p, v, _, m, g, y, E, b, S, P, T, x, w, O, I, C, U, B, N, Y, $, Q, L, F, X, tt, et, pt, j, 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\"), g = ne(), y = ct(\"rect\"), P = ne(), T = ct(\"rect\"), I = ne(), C = ct(\"rect\"), Y = ne(), $ = ct(\"rect\"), F = ne(), X = ct(\"rect\"), pt = ne(), j = ct(\"rect\"), Et = ne(), q = ct(\"rect\"), A(t, \"class\", \"a9s-outer\"), A(t, \"style\", e = /*computedStyle*/\n r[1] ? \"display:none;\" : void 0), A(t, \"x\", n = /*geom*/\n r[4].x), A(t, \"y\", i = /*geom*/\n r[4].y), A(t, \"width\", o = /*geom*/\n r[4].w), A(t, \"height\", a = /*geom*/\n r[4].h), A(u, \"class\", \"a9s-inner a9s-shape-handle\"), A(\n u,\n \"style\",\n /*computedStyle*/\n r[1]\n ), A(u, \"x\", h = /*geom*/\n r[4].x), A(u, \"y\", l = /*geom*/\n r[4].y), A(u, \"width\", f = /*geom*/\n r[4].w), A(u, \"height\", c = /*geom*/\n r[4].h), A(p, \"class\", \"a9s-edge-handle a9s-edge-handle-top\"), A(p, \"x\", v = /*geom*/\n r[4].x), A(p, \"y\", _ = /*geom*/\n r[4].y), A(p, \"height\", 1), A(p, \"width\", m = /*geom*/\n r[4].w), A(y, \"class\", \"a9s-edge-handle a9s-edge-handle-right\"), A(y, \"x\", E = /*geom*/\n r[4].x + /*geom*/\n r[4].w), A(y, \"y\", b = /*geom*/\n r[4].y), A(y, \"height\", S = /*geom*/\n r[4].h), A(y, \"width\", 1), A(T, \"class\", \"a9s-edge-handle a9s-edge-handle-bottom\"), A(T, \"x\", x = /*geom*/\n r[4].x), A(T, \"y\", w = /*geom*/\n r[4].y + /*geom*/\n r[4].h), A(T, \"height\", 1), A(T, \"width\", O = /*geom*/\n r[4].w), A(C, \"class\", \"a9s-edge-handle a9s-edge-handle-left\"), A(C, \"x\", U = /*geom*/\n r[4].x), A(C, \"y\", B = /*geom*/\n r[4].y), A(C, \"height\", N = /*geom*/\n r[4].h), A(C, \"width\", 1), A($, \"class\", \"a9s-corner-handle a9s-corner-handle-topleft\"), A($, \"x\", Q = /*geom*/\n r[4].x - /*handleSize*/\n r[3] / 2), A($, \"y\", L = /*geom*/\n r[4].y - /*handleSize*/\n r[3] / 2), A(\n $,\n \"height\",\n /*handleSize*/\n r[3]\n ), A(\n $,\n \"width\",\n /*handleSize*/\n r[3]\n ), A(X, \"class\", \"a9s-corner-handle a9s-corner-handle-topright\"), A(X, \"x\", tt = /*geom*/\n r[4].x + /*geom*/\n r[4].w - /*handleSize*/\n r[3] / 2), A(X, \"y\", et = /*geom*/\n r[4].y - /*handleSize*/\n r[3] / 2), A(\n X,\n \"height\",\n /*handleSize*/\n r[3]\n ), A(\n X,\n \"width\",\n /*handleSize*/\n r[3]\n ), A(j, \"class\", \"a9s-corner-handle a9s-corner-handle-bottomright\"), A(j, \"x\", st = /*geom*/\n r[4].x + /*geom*/\n r[4].w - /*handleSize*/\n r[3] / 2), A(j, \"y\", _t = /*geom*/\n r[4].y + /*geom*/\n r[4].h - /*handleSize*/\n r[3] / 2), A(\n j,\n \"height\",\n /*handleSize*/\n r[3]\n ), A(\n j,\n \"width\",\n /*handleSize*/\n r[3]\n ), A(q, \"class\", \"a9s-corner-handle a9s-corner-handle-bottomleft\"), A(q, \"x\", it = /*geom*/\n r[4].x - /*handleSize*/\n r[3] / 2), A(q, \"y\", at = /*geom*/\n r[4].y + /*geom*/\n r[4].h - /*handleSize*/\n r[3] / 2), A(\n q,\n \"height\",\n /*handleSize*/\n r[3]\n ), A(\n q,\n \"width\",\n /*handleSize*/\n r[3]\n );\n },\n m(D, R) {\n Z(D, t, R), Z(D, s, R), Z(D, u, R), Z(D, d, R), Z(D, p, R), Z(D, g, R), Z(D, y, R), Z(D, P, R), Z(D, T, R), Z(D, I, R), Z(D, C, R), Z(D, Y, R), Z(D, $, R), Z(D, F, R), Z(D, X, R), Z(D, pt, R), Z(D, j, R), Z(D, Et, R), Z(D, q, R), ft || (nt = [\n Yt(t, \"pointerdown\", function() {\n Ht(\n /*grab*/\n r[10](z.SHAPE)\n ) && r[10](z.SHAPE).apply(this, arguments);\n }),\n Yt(u, \"pointerdown\", function() {\n Ht(\n /*grab*/\n r[10](z.SHAPE)\n ) && r[10](z.SHAPE).apply(this, arguments);\n }),\n Yt(p, \"pointerdown\", function() {\n Ht(\n /*grab*/\n r[10](z.TOP)\n ) && r[10](z.TOP).apply(this, arguments);\n }),\n Yt(y, \"pointerdown\", function() {\n Ht(\n /*grab*/\n r[10](z.RIGHT)\n ) && r[10](z.RIGHT).apply(this, arguments);\n }),\n Yt(T, \"pointerdown\", function() {\n Ht(\n /*grab*/\n r[10](z.BOTTOM)\n ) && r[10](z.BOTTOM).apply(this, arguments);\n }),\n Yt(C, \"pointerdown\", function() {\n Ht(\n /*grab*/\n r[10](z.LEFT)\n ) && r[10](z.LEFT).apply(this, arguments);\n }),\n Yt($, \"pointerdown\", function() {\n Ht(\n /*grab*/\n r[10](z.TOP_LEFT)\n ) && r[10](z.TOP_LEFT).apply(this, arguments);\n }),\n Yt(X, \"pointerdown\", function() {\n Ht(\n /*grab*/\n r[10](z.TOP_RIGHT)\n ) && r[10](z.TOP_RIGHT).apply(this, arguments);\n }),\n Yt(j, \"pointerdown\", function() {\n Ht(\n /*grab*/\n r[10](z.BOTTOM_RIGHT)\n ) && r[10](z.BOTTOM_RIGHT).apply(this, arguments);\n }),\n Yt(q, \"pointerdown\", function() {\n Ht(\n /*grab*/\n r[10](z.BOTTOM_LEFT)\n ) && r[10](z.BOTTOM_LEFT).apply(this, arguments);\n })\n ], ft = !0);\n },\n p(D, R) {\n r = D, R & /*computedStyle*/\n 2 && e !== (e = /*computedStyle*/\n r[1] ? \"display:none;\" : void 0) && A(t, \"style\", e), R & /*geom*/\n 16 && n !== (n = /*geom*/\n r[4].x) && A(t, \"x\", n), R & /*geom*/\n 16 && i !== (i = /*geom*/\n r[4].y) && A(t, \"y\", i), R & /*geom*/\n 16 && o !== (o = /*geom*/\n r[4].w) && A(t, \"width\", o), R & /*geom*/\n 16 && a !== (a = /*geom*/\n r[4].h) && A(t, \"height\", a), R & /*computedStyle*/\n 2 && A(\n u,\n \"style\",\n /*computedStyle*/\n r[1]\n ), R & /*geom*/\n 16 && h !== (h = /*geom*/\n r[4].x) && A(u, \"x\", h), R & /*geom*/\n 16 && l !== (l = /*geom*/\n r[4].y) && A(u, \"y\", l), R & /*geom*/\n 16 && f !== (f = /*geom*/\n r[4].w) && A(u, \"width\", f), R & /*geom*/\n 16 && c !== (c = /*geom*/\n r[4].h) && A(u, \"height\", c), R & /*geom*/\n 16 && v !== (v = /*geom*/\n r[4].x) && A(p, \"x\", v), R & /*geom*/\n 16 && _ !== (_ = /*geom*/\n r[4].y) && A(p, \"y\", _), R & /*geom*/\n 16 && m !== (m = /*geom*/\n r[4].w) && A(p, \"width\", m), R & /*geom*/\n 16 && E !== (E = /*geom*/\n r[4].x + /*geom*/\n r[4].w) && A(y, \"x\", E), R & /*geom*/\n 16 && b !== (b = /*geom*/\n r[4].y) && A(y, \"y\", b), R & /*geom*/\n 16 && S !== (S = /*geom*/\n r[4].h) && A(y, \"height\", S), R & /*geom*/\n 16 && x !== (x = /*geom*/\n r[4].x) && A(T, \"x\", x), R & /*geom*/\n 16 && w !== (w = /*geom*/\n r[4].y + /*geom*/\n r[4].h) && A(T, \"y\", w), R & /*geom*/\n 16 && O !== (O = /*geom*/\n r[4].w) && A(T, \"width\", O), R & /*geom*/\n 16 && U !== (U = /*geom*/\n r[4].x) && A(C, \"x\", U), R & /*geom*/\n 16 && B !== (B = /*geom*/\n r[4].y) && A(C, \"y\", B), R & /*geom*/\n 16 && N !== (N = /*geom*/\n r[4].h) && A(C, \"height\", N), R & /*geom, handleSize*/\n 24 && Q !== (Q = /*geom*/\n r[4].x - /*handleSize*/\n r[3] / 2) && A($, \"x\", Q), R & /*geom, handleSize*/\n 24 && L !== (L = /*geom*/\n r[4].y - /*handleSize*/\n r[3] / 2) && A($, \"y\", L), R & /*handleSize*/\n 8 && A(\n $,\n \"height\",\n /*handleSize*/\n r[3]\n ), R & /*handleSize*/\n 8 && A(\n $,\n \"width\",\n /*handleSize*/\n r[3]\n ), R & /*geom, handleSize*/\n 24 && tt !== (tt = /*geom*/\n r[4].x + /*geom*/\n r[4].w - /*handleSize*/\n r[3] / 2) && A(X, \"x\", tt), R & /*geom, handleSize*/\n 24 && et !== (et = /*geom*/\n r[4].y - /*handleSize*/\n r[3] / 2) && A(X, \"y\", et), R & /*handleSize*/\n 8 && A(\n X,\n \"height\",\n /*handleSize*/\n r[3]\n ), R & /*handleSize*/\n 8 && A(\n X,\n \"width\",\n /*handleSize*/\n r[3]\n ), R & /*geom, handleSize*/\n 24 && st !== (st = /*geom*/\n r[4].x + /*geom*/\n r[4].w - /*handleSize*/\n r[3] / 2) && A(j, \"x\", st), R & /*geom, handleSize*/\n 24 && _t !== (_t = /*geom*/\n r[4].y + /*geom*/\n r[4].h - /*handleSize*/\n r[3] / 2) && A(j, \"y\", _t), R & /*handleSize*/\n 8 && A(\n j,\n \"height\",\n /*handleSize*/\n r[3]\n ), R & /*handleSize*/\n 8 && A(\n j,\n \"width\",\n /*handleSize*/\n r[3]\n ), R & /*geom, handleSize*/\n 24 && it !== (it = /*geom*/\n r[4].x - /*handleSize*/\n r[3] / 2) && A(q, \"x\", it), R & /*geom, handleSize*/\n 24 && at !== (at = /*geom*/\n r[4].y + /*geom*/\n r[4].h - /*handleSize*/\n r[3] / 2) && A(q, \"y\", at), R & /*handleSize*/\n 8 && A(\n q,\n \"height\",\n /*handleSize*/\n r[3]\n ), R & /*handleSize*/\n 8 && A(\n q,\n \"width\",\n /*handleSize*/\n r[3]\n );\n },\n d(D) {\n D && K(t), D && K(s), D && K(u), D && K(d), D && K(p), D && K(g), D && K(y), D && K(P), D && K(T), D && K(I), D && K(C), D && K(Y), D && K($), D && K(F), D && K(X), D && K(pt), D && K(j), D && K(Et), D && K(q), ft = !1, ke(nt);\n }\n };\n}\nfunction bc(r) {\n let t, e;\n return t = new Kh({\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 yc,\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 xc(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 [m, g] = [_.minX, _.minY], [y, E] = [_.maxX, _.maxY];\n const [b, S] = v;\n if (p === z.SHAPE)\n m += b, y += b, g += S, E += S;\n else {\n switch (p) {\n case z.TOP:\n case z.TOP_LEFT:\n case z.TOP_RIGHT: {\n g += S;\n break;\n }\n case z.BOTTOM:\n case z.BOTTOM_LEFT:\n case z.BOTTOM_RIGHT: {\n E += S;\n break;\n }\n }\n switch (p) {\n case z.LEFT:\n case z.TOP_LEFT:\n case z.BOTTOM_LEFT: {\n m += b;\n break;\n }\n case z.RIGHT:\n case z.TOP_RIGHT:\n case z.BOTTOM_RIGHT: {\n y += b;\n break;\n }\n }\n }\n const P = Math.min(m, y), T = Math.min(g, E), x = Math.abs(y - m), w = Math.abs(E - g);\n return {\n ...d,\n geometry: {\n x: P,\n y: T,\n w: x,\n h: w,\n bounds: {\n minX: P,\n minY: T,\n maxX: P + x,\n maxY: T + w\n }\n }\n };\n };\n function l(d) {\n Dr.call(this, r, d);\n }\n function f(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 l,\n f,\n c\n ];\n}\nclass Ec extends Zt {\n constructor(t) {\n super(), Kt(this, t, xc, bc, Vt, {\n shape: 0,\n computedStyle: 1,\n transform: 2,\n viewportScale: 6\n });\n }\n}\nconst $h = /* @__PURE__ */ new Map([\n [qt.RECTANGLE, Ec],\n [qt.POLYGON, gc]\n]), Ms = (r) => $h.get(r.type), Tc = (r, t) => $h.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 wc = (r) => ({}), Ds = (r) => ({ grab: (\n /*onGrab*/\n r[0]\n) });\nfunction Sc(r) {\n let t, e, n, i;\n const o = (\n /*#slots*/\n r[7].default\n ), a = Hh(\n o,\n r,\n /*$$scope*/\n r[6],\n Ds\n );\n return {\n c() {\n t = ct(\"g\"), a && a.c(), A(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 Yt(\n t,\n \"pointerup\",\n /*onRelease*/\n r[2]\n ),\n Yt(\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) && Yh(\n a,\n o,\n s,\n /*$$scope*/\n s[6],\n e ? Vh(\n o,\n /*$$scope*/\n s[6],\n u,\n wc\n ) : zh(\n /*$$scope*/\n s[6]\n ),\n Ds\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 Ac(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, l, f = null;\n const c = (v) => (_) => {\n h = v, l = u.elementToImage(_.offsetX, _.offsetY), f = a, _.target.setPointerCapture(_.pointerId), o(\"grab\");\n }, d = (v) => {\n if (h) {\n const [_, m] = u.elementToImage(v.offsetX, v.offsetY), g = [_ - l[0], m - l[1]];\n e(3, a = s(f, h, g)), o(\"change\", a);\n }\n }, p = (v) => {\n v.target.releasePointerCapture(v.pointerId), h = null, f = 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 Kh extends Zt {\n constructor(t) {\n super(), Kt(this, t, Ac, Sc, Vt, { shape: 3, editor: 4, transform: 5 });\n }\n}\nconst Pc = (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 Oc(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: l } = t, f;\n return Wr(() => (e(6, f = new a({\n target: u,\n props: {\n shape: o.target.selector,\n computedStyle: n,\n transform: h,\n viewportScale: l\n }\n })), f.$on(\"change\", (c) => {\n f.$$set({ shape: c.detail }), i(\"change\", c.detail);\n }), f.$on(\"grab\", (c) => i(\"grab\", c.detail)), f.$on(\"release\", (c) => i(\"release\", c.detail)), () => {\n f.$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, l = c.viewportScale);\n }, r.$$.update = () => {\n r.$$.dirty & /*annotation, style*/\n 5 && (n = Pc(o, s)), r.$$.dirty & /*annotation, editorComponent*/\n 65 && o && (f == null || f.$set({ shape: o.target.selector })), r.$$.dirty & /*editorComponent, transform*/\n 80 && f && f.$set({ transform: h }), r.$$.dirty & /*editorComponent, viewportScale*/\n 96 && f && f.$set({ viewportScale: l });\n }, [o, a, s, u, h, l, f];\n}\nclass Rc extends Zt {\n constructor(t) {\n super(), Kt(this, t, Oc, null, Vt, {\n annotation: 0,\n editor: 1,\n style: 2,\n target: 3,\n transform: 4,\n viewportScale: 5\n });\n }\n}\nfunction Fs(r) {\n let t, e;\n return {\n c() {\n t = ct(\"rect\"), e = ct(\"rect\"), A(t, \"class\", \"a9s-outer\"), A(\n t,\n \"x\",\n /*x*/\n r[1]\n ), A(\n t,\n \"y\",\n /*y*/\n r[2]\n ), A(\n t,\n \"width\",\n /*w*/\n r[3]\n ), A(\n t,\n \"height\",\n /*h*/\n r[4]\n ), A(e, \"class\", \"a9s-inner\"), A(\n e,\n \"x\",\n /*x*/\n r[1]\n ), A(\n e,\n \"y\",\n /*y*/\n r[2]\n ), A(\n e,\n \"width\",\n /*w*/\n r[3]\n ), A(\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 && A(\n t,\n \"x\",\n /*x*/\n n[1]\n ), i & /*y*/\n 4 && A(\n t,\n \"y\",\n /*y*/\n n[2]\n ), i & /*w*/\n 8 && A(\n t,\n \"width\",\n /*w*/\n n[3]\n ), i & /*h*/\n 16 && A(\n t,\n \"height\",\n /*h*/\n n[4]\n ), i & /*x*/\n 2 && A(\n e,\n \"x\",\n /*x*/\n n[1]\n ), i & /*y*/\n 4 && A(\n e,\n \"y\",\n /*y*/\n n[2]\n ), i & /*w*/\n 8 && A(\n e,\n \"width\",\n /*w*/\n n[3]\n ), i & /*h*/\n 16 && A(\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 Ic(r) {\n let t, e = (\n /*origin*/\n r[0] && Fs(r)\n );\n return {\n c() {\n t = ct(\"g\"), e && e.c(), A(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 = Fs(n), e.c(), e.m(t, null)) : e && (e.d(1), e = null);\n },\n i: te,\n o: te,\n d(n) {\n n && K(t), e && e.d();\n }\n };\n}\nfunction Cc(r, t, e) {\n const n = qr();\n let { addEventListener: i } = t, { drawingMode: o } = t, { transform: a } = t, s, u, h, l, f, c, d;\n const p = (g) => {\n s = performance.now(), o === \"drag\" && (e(0, u = a.elementToImage(g.offsetX, g.offsetY)), h = u, e(1, l = u[0]), e(2, f = u[1]), e(3, c = 1), e(4, d = 1));\n }, v = (g) => {\n u && (h = a.elementToImage(g.offsetX, g.offsetY), e(1, l = Math.min(h[0], u[0])), e(2, f = 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 }, _ = (g) => {\n const y = performance.now() - s;\n if (o === \"click\") {\n if (y > 300)\n return;\n g.stopPropagation(), u ? m() : (e(0, u = a.elementToImage(g.offsetX, g.offsetY)), h = u, e(1, l = u[0]), e(2, f = u[1]), e(3, c = 1), e(4, d = 1));\n } else\n u && (y > 300 || c * d > 100 ? (g.stopPropagation(), m()) : (e(0, u = null), h = null));\n }, m = () => {\n if (c * d > 15) {\n const g = {\n type: qt.RECTANGLE,\n geometry: {\n bounds: {\n minX: l,\n minY: f,\n maxX: l + c,\n maxY: f + d\n },\n x: l,\n y: f,\n w: c,\n h: d\n }\n };\n n(\"create\", g);\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 = (g) => {\n \"addEventListener\" in g && e(5, i = g.addEventListener), \"drawingMode\" in g && e(6, o = g.drawingMode), \"transform\" in g && e(7, a = g.transform);\n }, [u, l, f, c, d, i, o, a];\n}\nclass Mc extends Zt {\n constructor(t) {\n super(), Kt(this, t, Cc, Ic, Vt, {\n addEventListener: 5,\n drawingMode: 6,\n transform: 7\n });\n }\n}\nconst $i = (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 Ki(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 Bs(r) {\n let t, e, n, i, o, a = (\n /*isClosable*/\n r[2] && Ns(r)\n );\n return {\n c() {\n t = ct(\"polygon\"), n = ct(\"polygon\"), a && a.c(), o = Xe(), A(t, \"class\", \"a9s-outer\"), A(t, \"points\", e = /*coords*/\n r[15]), A(n, \"class\", \"a9s-inner\"), A(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]) && A(t, \"points\", e), u & /*isClosable, points, cursor*/\n 7 && i !== (i = /*coords*/\n s[15]) && A(n, \"points\", i), /*isClosable*/\n s[2] ? a ? a.p(s, u) : (a = Ns(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 Ns(r) {\n let t, e, n;\n return {\n c() {\n t = ct(\"rect\"), A(t, \"class\", \"a9s-corner-handle\"), A(t, \"x\", e = /*points*/\n r[0][0][0] - /*handleSize*/\n r[3] / 2), A(t, \"y\", n = /*points*/\n r[0][0][1] - /*handleSize*/\n r[3] / 2), A(\n t,\n \"height\",\n /*handleSize*/\n r[3]\n ), A(\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) && A(t, \"x\", e), o & /*points, handleSize*/\n 9 && n !== (n = /*points*/\n i[0][0][1] - /*handleSize*/\n i[3] / 2) && A(t, \"y\", n), o & /*handleSize*/\n 8 && A(\n t,\n \"height\",\n /*handleSize*/\n i[3]\n ), o & /*handleSize*/\n 8 && A(\n t,\n \"width\",\n /*handleSize*/\n i[3]\n );\n },\n d(i) {\n i && K(t);\n }\n };\n}\nfunction Dc(r) {\n let t, e = (\n /*cursor*/\n r[1] && Bs(Ki(r))\n );\n return {\n c() {\n t = ct(\"g\"), e && e.c(), A(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(Ki(n), i) : (e = Bs(Ki(n)), e.c(), e.m(t, null)) : e && (e.d(1), e = null);\n },\n i: te,\n o: te,\n d(n) {\n n && K(t), e && e.d();\n }\n };\n}\nconst Fc = 20;\nfunction Bc(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, l = [], f = null, c = !1;\n const d = (g) => {\n const { timeStamp: y, offsetX: E, offsetY: b } = g;\n if (h = { timeStamp: y, offsetX: E, offsetY: b }, a === \"drag\" && l.length === 0) {\n const S = s.elementToImage(g.offsetX, g.offsetY);\n l.push(S), e(1, f = S);\n }\n }, p = (g) => {\n if (l.length > 0 && (e(1, f = s.elementToImage(g.offsetX, g.offsetY)), l.length > 2)) {\n const y = $i(f, l[0]) * u;\n e(2, c = y < Fc);\n }\n }, v = (g) => {\n if (a === \"click\") {\n const y = g.timeStamp - h.timeStamp, E = $i([h.offsetX, h.offsetY], [g.offsetX, g.offsetY]);\n if (y > 300 || E > 15)\n return;\n if (c)\n m();\n else if (l.length === 0) {\n const b = s.elementToImage(g.offsetX, g.offsetY);\n l.push(b), e(1, f = b);\n } else\n l.push(f);\n } else {\n if (l.length === 1 && $i(l[0], f) <= 4) {\n e(0, l = []), e(1, f = null);\n return;\n }\n g.stopImmediatePropagation(), c ? m() : l.push(f);\n }\n }, _ = () => {\n const g = [...l, f], y = {\n type: qt.POLYGON,\n geometry: { bounds: Yo(g), points: g }\n };\n Vo(y) > 4 && (e(0, l = []), e(1, f = null), i(\"create\", y));\n }, m = () => {\n const g = {\n type: qt.POLYGON,\n geometry: {\n bounds: Yo(l),\n points: [...l]\n }\n };\n e(0, l = []), e(1, f = null), i(\"create\", g);\n };\n return Wr(() => {\n o(\"pointerdown\", d, !0), o(\"pointermove\", p), o(\"pointerup\", v, !0), o(\"dblclick\", _, !0);\n }), r.$$set = (g) => {\n \"addEventListener\" in g && e(4, o = g.addEventListener), \"drawingMode\" in g && e(5, a = g.drawingMode), \"transform\" in g && e(6, s = g.transform), \"viewportScale\" in g && e(7, u = g.viewportScale);\n }, r.$$.update = () => {\n r.$$.dirty & /*viewportScale*/\n 128 && e(3, n = 10 / u);\n }, [\n l,\n f,\n c,\n n,\n o,\n a,\n s,\n u\n ];\n}\nclass Nc extends Zt {\n constructor(t) {\n super(), Kt(this, t, Bc, Dc, Vt, {\n addEventListener: 4,\n drawingMode: 5,\n transform: 6,\n viewportScale: 7\n });\n }\n}\nconst $a = /* @__PURE__ */ new Map([\n [\"rectangle\", { tool: Mc }],\n [\"polygon\", { tool: Nc }]\n]), zo = () => [...$a.keys()], Zh = (r) => $a.get(r), Lc = (r, t, e) => $a.set(r, { tool: t, opts: e });\nfunction Uc(r, t, e, n, i) {\n Jh(r, t, e || 0, n || r.length - 1, i || Gc);\n}\nfunction Jh(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), l = Math.max(e, Math.floor(t - a * u / o + h)), f = Math.min(n, Math.floor(t + (o - a) * u / o + h));\n Jh(r, t, l, f, 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 Gc(r, t) {\n return r < t ? -1 : r > t ? 1 : 0;\n}\nclass kc {\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) : Ji(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 || Ji(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 l = Xc(t, n.children, e);\n if (l !== -1)\n return n.children.splice(l, 1), o.push(n), this._condense(o), this;\n }\n !h && !n.leaf && Ji(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 Ls(t, e, n, h, this.compareMinX);\n for (let l = e; l <= n; l += h) {\n const f = Math.min(l + h - 1, n);\n Ls(t, l, f, u, this.compareMinY);\n for (let c = l; c <= f; c += u) {\n const d = Math.min(c + u - 1, f);\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], l = Zi(h), f = Vc(t, h) - l;\n f < a ? (a = f, o = l < o ? l : o, s = h) : f === a && l < o && (o = l, 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), l = Yc(u, h), f = Zi(u) + Zi(h);\n l < o ? (o = l, i = s, a = f < a ? f : a) : l === o && f < a && (a = f, 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 : Hc, o = t.leaf ? this.compareMinY : jc, 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 l = t.children[h];\n un(a, t.leaf ? o(l) : l), u += Ln(a);\n }\n for (let h = n - e - 1; h >= e; h--) {\n const l = t.children[h];\n un(s, t.leaf ? o(l) : l), 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 Xc(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 Hc(r, t) {\n return r.minX - t.minX;\n}\nfunction jc(r, t) {\n return r.minY - t.minY;\n}\nfunction Zi(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 Vc(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 Yc(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 Ji(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 Ls(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 Uc(r, a, t, e, i), o.push(t, a, a, e);\n }\n}\nconst zc = () => {\n const r = new kc(), t = /* @__PURE__ */ new Map(), e = () => [...t.values()], n = () => {\n r.clear(), t.clear();\n }, i = (f) => {\n const { minX: c, minY: d, maxX: p, maxY: v } = f.selector.geometry.bounds, _ = { minX: c, minY: d, maxX: p, maxY: v, target: f };\n r.insert(_), t.set(f.annotation, _);\n }, o = (f) => {\n const c = t.get(f.annotation);\n r.remove(c), t.delete(f.annotation);\n };\n return {\n all: e,\n clear: n,\n getAt: (f, c) => {\n const p = r.search({\n minX: f,\n minY: c,\n maxX: f,\n maxY: c\n }).map((v) => v.target).filter((v) => v.selector.type === qt.RECTANGLE || sc(v.selector, f, c));\n if (p.length > 0)\n return p.sort((v, _) => Vo(v.selector) - Vo(_.selector)), p[0];\n },\n getIntersecting: (f, c, d, p) => r.search({\n minX: f,\n minY: c,\n maxX: f + d,\n maxY: c + p\n }).map((v) => v.target),\n insert: i,\n remove: o,\n set: (f, c = !0) => {\n c && n();\n const d = f.map((p) => {\n const { minX: v, minY: _, maxX: m, maxY: g } = p.selector.geometry.bounds;\n return { minX: v, minY: _, maxX: m, maxY: g, target: p };\n });\n d.forEach((p) => t.set(p.target.annotation, p)), r.load(d);\n },\n size: () => r.all().length,\n update: (f, c) => {\n o(f), i(c);\n }\n };\n}, Wc = (r) => {\n const t = Bf(), e = zc(), n = Sf(t, r.pointerSelectAction), i = wf(t), o = Gf();\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: l }) => e.update(h.target, l.target));\n }), {\n store: {\n ...t,\n getAt: (u, h) => {\n const l = e.getAt(u, h);\n return l ? t.getAnnotation(l.annotation) : void 0;\n },\n getIntersecting: (u, h, l, f) => e.getIntersecting(u, h, l, f).map((c) => t.getAnnotation(c.annotation))\n },\n selection: n,\n hover: i,\n viewport: o\n };\n}, qc = (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}, $c = (r) => {\n const t = qc(r), e = t > 0.6 ? \"dark\" : \"light\";\n return console.log(`[Annotorious] Image brightness: ${t.toFixed(1)}. Setting ${e} theme.`), e;\n}, Kc = (r) => ({\n ...r,\n drawingEnabled: r.drawingEnabled === void 0 ? !0 : r.drawingEnabled,\n drawingMode: r.drawingMode || \"drag\",\n pointerSelectAction: r.pointerSelectAction || Gh.EDIT,\n theme: r.theme || \"light\"\n}), Us = navigator.userAgent.indexOf(\"Mac OS X\") !== -1, Zc = (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 Us ? e.removeEventListener(\"keydown\", i) : e.removeEventListener(\"keydown\", n);\n };\n return Us ? e.addEventListener(\"keydown\", i) : e.addEventListener(\"keydown\", n), {\n destroy: o\n };\n};\nfunction Jc(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 Qc(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 l = h.then;\n if (typeof l == \"function\") {\n l.call(\n h,\n function(f) {\n a(u, f);\n },\n function(f) {\n i[u] = { status: \"rejected\", reason: f }, --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 Qh(r, t) {\n this.name = \"AggregateError\", this.errors = r, this.message = t || \"\";\n}\nQh.prototype = Error.prototype;\nfunction td(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 Qh(\n o,\n \"All promises were rejected\"\n )\n );\n });\n } catch (s) {\n n(s);\n }\n });\n}\nvar ed = setTimeout;\nfunction tl(r) {\n return !!(r && typeof r.length < \"u\");\n}\nfunction rd() {\n}\nfunction nd(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 = [], rl(r, this);\n}\nfunction el(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 ? Wo : 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 Wo(t.promise, n);\n });\n}\nfunction Wo(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, qo(r);\n return;\n } else if (typeof e == \"function\") {\n rl(nd(e, t), r);\n return;\n }\n }\n r._state = 1, r._value = t, qo(r);\n } catch (n) {\n mn(r, n);\n }\n}\nfunction mn(r, t) {\n r._state = 2, r._value = t, qo(r);\n}\nfunction qo(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 el(r, r._deferreds[t]);\n r._deferreds = null;\n}\nfunction id(r, t, e) {\n this.onFulfilled = typeof r == \"function\" ? r : null, this.onRejected = typeof t == \"function\" ? t : null, this.promise = e;\n}\nfunction rl(r, t) {\n var e = !1;\n try {\n r(\n function(n) {\n e || (e = !0, Wo(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(rd);\n return el(this, new id(r, t, e)), e;\n};\nPt.prototype.finally = Jc;\nPt.all = function(r) {\n return new Pt(function(t, e) {\n if (!tl(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(l) {\n o(s, l);\n },\n e\n );\n return;\n }\n }\n n[s] = u, --i === 0 && t(n);\n } catch (l) {\n e(l);\n }\n }\n for (var a = 0; a < n.length; a++)\n o(a, n[a]);\n });\n};\nPt.any = td;\nPt.allSettled = Qc;\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 (!tl(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 ed(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 Ka(r) {\n return r && r.__esModule && Object.prototype.hasOwnProperty.call(r, \"default\") ? r.default : r;\n}\nfunction od(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 Gs = Object.getOwnPropertySymbols, ad = Object.prototype.hasOwnProperty, sd = Object.prototype.propertyIsEnumerable;\nfunction ud(r) {\n if (r == null)\n throw new TypeError(\"Object.assign cannot be called with null or undefined\");\n return Object(r);\n}\nfunction hd() {\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 ld = hd() ? Object.assign : function(r, t) {\n for (var e, n = ud(r), i, o = 1; o < arguments.length; o++) {\n e = Object(arguments[o]);\n for (var a in e)\n ad.call(e, a) && (n[a] = e[a]);\n if (Gs) {\n i = Gs(e);\n for (var s = 0; s < i.length; s++)\n sd.call(e, i[s]) && (n[i[s]] = e[i[s]]);\n }\n }\n return n;\n};\nconst fd = /* @__PURE__ */ Ka(ld);\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 = fd);\nvar cd = 16;\nDate.now && Date.prototype.getTime || (Date.now = function() {\n return (/* @__PURE__ */ new Date()).getTime();\n});\nif (!(globalThis.performance && globalThis.performance.now)) {\n var dd = Date.now();\n globalThis.performance || (globalThis.performance = {}), globalThis.performance.now = function() {\n return Date.now() - dd;\n };\n}\nvar Qi = Date.now(), ks = [\"ms\", \"moz\", \"webkit\", \"o\"];\nfor (var to = 0; to < ks.length && !globalThis.requestAnimationFrame; ++to) {\n var eo = ks[to];\n globalThis.requestAnimationFrame = globalThis[eo + \"RequestAnimationFrame\"], globalThis.cancelAnimationFrame = globalThis[eo + \"CancelAnimationFrame\"] || globalThis[eo + \"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 = cd + Qi - t;\n return e < 0 && (e = 0), Qi = t, globalThis.self.setTimeout(function() {\n Qi = 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 H;\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})(H || (H = {}));\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 Jt;\n(function(r) {\n r.LOW = \"lowp\", r.MEDIUM = \"mediump\", r.HIGH = \"highp\";\n})(Jt || (Jt = {}));\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 Xs;\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})(Xs || (Xs = {}));\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 pd = {\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}, ro = /iPhone/i, Hs = /iPod/i, js = /iPad/i, Vs = /\\biOS-universal(?:.+)Mac\\b/i, no = /\\bAndroid(?:.+)Mobile\\b/i, Ys = /Android/i, yr = /(?:SD4930UR|\\bSilk(?:.+)Mobile\\b)/i, Gn = /Silk/i, we = /Windows Phone/i, zs = /\\bWindows(?:.+)ARM\\b/i, Ws = /BlackBerry/i, qs = /BB10/i, $s = /Opera Mini/i, Ks = /\\b(CriOS|Chrome)(?:.+)Mobile/i, Zs = /Mobile(?:.+)Firefox\\b/i, Js = function(r) {\n return typeof r < \"u\" && r.platform === \"MacIntel\" && typeof r.maxTouchPoints == \"number\" && r.maxTouchPoints > 1 && typeof MSStream > \"u\";\n};\nfunction vd(r) {\n return function(t) {\n return t.test(r);\n };\n}\nfunction _d(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 = vd(e), o = {\n apple: {\n phone: i(ro) && !i(we),\n ipod: i(Hs),\n tablet: !i(ro) && (i(js) || Js(t)) && !i(we),\n universal: i(Vs),\n device: (i(ro) || i(Hs) || i(js) || i(Vs) || Js(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(no),\n tablet: !i(we) && !i(yr) && !i(no) && (i(Gn) || i(Ys)),\n device: !i(we) && (i(yr) || i(Gn) || i(no) || i(Ys)) || i(/\\bokhttp\\b/i)\n },\n windows: {\n phone: i(we),\n tablet: i(zs),\n device: i(we) || i(zs)\n },\n other: {\n blackberry: i(Ws),\n blackberry10: i(qs),\n opera: i($s),\n firefox: i(Zs),\n chrome: i(Ks),\n device: i(Ws) || i(qs) || i($s) || i(Zs) || i(Ks)\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 = _d(globalThis.navigator);\nfunction md() {\n return !ge.apple.device;\n}\nfunction gd(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: pd,\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: gd(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: Jt.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 ? Jt.HIGH : Jt.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: md(),\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}, nl = { 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, l) {\n this.fn = u, this.context = h, this.once = l || !1;\n }\n function o(u, h, l, f, c) {\n if (typeof l != \"function\")\n throw new TypeError(\"The listener must be a function\");\n var d = new i(l, f || 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 = [], l, f;\n if (this._eventsCount === 0)\n return h;\n for (f in l = this._events)\n t.call(l, f) && h.push(e ? f.slice(1) : f);\n return Object.getOwnPropertySymbols ? h.concat(Object.getOwnPropertySymbols(l)) : h;\n }, s.prototype.listeners = function(h) {\n var l = e ? e + h : h, f = this._events[l];\n if (!f)\n return [];\n if (f.fn)\n return [f.fn];\n for (var c = 0, d = f.length, p = new Array(d); c < d; c++)\n p[c] = f[c].fn;\n return p;\n }, s.prototype.listenerCount = function(h) {\n var l = e ? e + h : h, f = this._events[l];\n return f ? f.fn ? 1 : f.length : 0;\n }, s.prototype.emit = function(h, l, f, c, d, p) {\n var v = e ? e + h : h;\n if (!this._events[v])\n return !1;\n var _ = this._events[v], m = arguments.length, g, y;\n if (_.fn) {\n switch (_.once && this.removeListener(h, _.fn, void 0, !0), m) {\n case 1:\n return _.fn.call(_.context), !0;\n case 2:\n return _.fn.call(_.context, l), !0;\n case 3:\n return _.fn.call(_.context, l, f), !0;\n case 4:\n return _.fn.call(_.context, l, f, c), !0;\n case 5:\n return _.fn.call(_.context, l, f, c, d), !0;\n case 6:\n return _.fn.call(_.context, l, f, c, d, p), !0;\n }\n for (y = 1, g = new Array(m - 1); y < m; y++)\n g[y - 1] = arguments[y];\n _.fn.apply(_.context, g);\n } else {\n var E = _.length, b;\n for (y = 0; y < E; y++)\n switch (_[y].once && this.removeListener(h, _[y].fn, void 0, !0), m) {\n case 1:\n _[y].fn.call(_[y].context);\n break;\n case 2:\n _[y].fn.call(_[y].context, l);\n break;\n case 3:\n _[y].fn.call(_[y].context, l, f);\n break;\n case 4:\n _[y].fn.call(_[y].context, l, f, c);\n break;\n default:\n if (!g)\n for (b = 1, g = new Array(m - 1); b < m; b++)\n g[b - 1] = arguments[b];\n _[y].fn.apply(_[y].context, g);\n }\n }\n return !0;\n }, s.prototype.on = function(h, l, f) {\n return o(this, h, l, f, !1);\n }, s.prototype.once = function(h, l, f) {\n return o(this, h, l, f, !0);\n }, s.prototype.removeListener = function(h, l, f, c) {\n var d = e ? e + h : h;\n if (!this._events[d])\n return this;\n if (!l)\n return a(this, d), this;\n var p = this._events[d];\n if (p.fn)\n p.fn === l && (!c || p.once) && (!f || p.context === f) && a(this, d);\n else {\n for (var v = 0, _ = [], m = p.length; v < m; v++)\n (p[v].fn !== l || c && !p[v].once || f && p[v].context !== f) && _.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 l;\n return h ? (l = e ? e + h : h, this._events[l] && a(this, l)) : (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})(nl);\nvar yd = nl.exports;\nconst Rn = /* @__PURE__ */ Ka(yd);\nvar Za = { exports: {} };\nZa.exports = ki;\nZa.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 = il(r, 0, i, e, !0), a = [];\n if (!o || o.next === o.prev)\n return a;\n var s, u, h, l, f, c, d;\n if (n && (o = wd(r, t, o, e)), r.length > 80 * e) {\n s = h = r[0], u = l = r[1];\n for (var p = e; p < i; p += e)\n f = r[p], c = r[p + 1], f < s && (s = f), c < u && (u = c), f > h && (h = f), c > l && (l = c);\n d = Math.max(h - s, l - u), d = d !== 0 ? 32767 / d : 0;\n }\n return yn(o, a, e, s, u, d, 0), a;\n}\nfunction il(r, t, e, n, i) {\n var o, a;\n if (i === Zo(r, t, e, n) > 0)\n for (o = t; o < e; o += n)\n a = Qs(o, r[o], r[o + 1], a);\n else\n for (o = e - n; o >= t; o -= n)\n a = Qs(o, r[o], r[o + 1], a);\n return a && Xi(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 && (Xi(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 && Rd(r, n, i, o);\n for (var s = r, u, h; r.prev !== r.next; ) {\n if (u = r.prev, h = r.next, o ? xd(r, n, i, o) : bd(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 = Ed(hr(r), t, e), yn(r, t, e, n, i, o, 2)) : a === 2 && Td(r, t, e, n, i, o) : yn(hr(r), t, e, n, i, o, 1);\n break;\n }\n }\n }\n}\nfunction bd(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, l = i < o ? i < a ? i : a : o < a ? o : a, f = 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 >= l && p.x <= c && p.y >= f && 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 xd(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, l = i.y, f = o.y, c = a.y, d = s < u ? s < h ? s : h : u < h ? u : h, p = l < f ? l < c ? l : c : f < c ? f : c, v = s > u ? s > h ? s : h : u > h ? u : h, _ = l > f ? l > c ? l : c : f > c ? f : c, m = $o(d, p, t, e, n), g = $o(v, _, t, e, n), y = r.prevZ, E = r.nextZ; y && y.z >= m && E && E.z <= g; ) {\n if (y.x >= d && y.x <= v && y.y >= p && y.y <= _ && y !== i && y !== a && Rr(s, l, u, f, h, c, y.x, y.y) && At(y.prev, y, y.next) >= 0 || (y = y.prevZ, E.x >= d && E.x <= v && E.y >= p && E.y <= _ && E !== i && E !== a && Rr(s, l, u, f, h, c, E.x, E.y) && At(E.prev, E, E.next) >= 0))\n return !1;\n E = E.nextZ;\n }\n for (; y && y.z >= m; ) {\n if (y.x >= d && y.x <= v && y.y >= p && y.y <= _ && y !== i && y !== a && Rr(s, l, u, f, h, c, y.x, y.y) && At(y.prev, y, y.next) >= 0)\n return !1;\n y = y.prevZ;\n }\n for (; E && E.z <= g; ) {\n if (E.x >= d && E.x <= v && E.y >= p && E.y <= _ && E !== i && E !== a && Rr(s, l, u, f, h, c, E.x, E.y) && At(E.prev, E, E.next) >= 0)\n return !1;\n E = E.nextZ;\n }\n return !0;\n}\nfunction Ed(r, t, e) {\n var n = r;\n do {\n var i = n.prev, o = n.next.next;\n !Xi(i, o) && ol(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 Td(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 && Md(a, s)) {\n var u = al(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 wd(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 = il(r, s, u, n, !1), h === h.next && (h.steiner = !0), i.push(Cd(h));\n for (i.sort(Sd), o = 0; o < i.length; o++)\n e = Ad(i[o], e);\n return e;\n}\nfunction Sd(r, t) {\n return r.x - t.x;\n}\nfunction Ad(r, t) {\n var e = Pd(r, t);\n if (!e)\n return t;\n var n = al(e, r);\n return hr(n, n.next), hr(e, e.next);\n}\nfunction Pd(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, l = a.y, f = 1 / 0, c;\n e = a;\n do\n n >= e.x && e.x >= h && n !== e.x && Rr(i < l ? n : o, i, h, l, i < l ? o : n, i, e.x, e.y) && (c = Math.abs(i - e.y) / (n - e.x), bn(e, r) && (c < f || c === f && (e.x > a.x || e.x === a.x && Od(a, e))) && (a = e, f = c)), e = e.next;\n while (e !== u);\n return a;\n}\nfunction Od(r, t) {\n return At(r.prev, r, t.prev) < 0 && At(t.next, r, r.next) < 0;\n}\nfunction Rd(r, t, e, n) {\n var i = r;\n do\n i.z === 0 && (i.z = $o(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, Id(i);\n}\nfunction Id(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 $o(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 Cd(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 Md(r, t) {\n return r.next.i !== t.i && r.prev.i !== t.i && !Dd(r, t) && // dones't intersect other edges\n (bn(r, t) && bn(t, r) && Fd(r, t) && // locally visible\n (At(r.prev, r, t.prev) || At(r, t.prev, t)) || // does not create opposite-facing sectors\n Xi(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 Xi(r, t) {\n return r.x === t.x && r.y === t.y;\n}\nfunction ol(r, t, e, n) {\n var i = Xn(At(r, t, e)), o = Xn(At(r, t, n)), a = Xn(At(e, n, r)), s = Xn(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 Xn(r) {\n return r > 0 ? 1 : r < 0 ? -1 : 0;\n}\nfunction Dd(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 && ol(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 Fd(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 al(r, t) {\n var e = new Ko(r.i, r.x, r.y), n = new Ko(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 Qs(r, t, e, n) {\n var i = new Ko(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 Ko(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(Zo(r, 0, o, e));\n if (i)\n for (var s = 0, u = t.length; s < u; s++) {\n var h = t[s] * e, l = s < u - 1 ? t[s + 1] * e : r.length;\n a -= Math.abs(Zo(r, h, l, e));\n }\n var f = 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 f += 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 && f === 0 ? 0 : Math.abs((f - a) / a);\n};\nfunction Zo(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 Bd = Za.exports;\nconst sl = /* @__PURE__ */ Ka(Bd);\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, l = 26, f = 38, c = 700, d = 72, p = 128, v = \"-\", _ = /^xn--/, m = /[^\\x20-\\x7E]/, g = /[\\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 }, E = u - h, b = Math.floor, S = String.fromCharCode, P;\n function T(L) {\n throw new RangeError(y[L]);\n }\n function x(L, F) {\n for (var X = L.length, tt = []; X--; )\n tt[X] = F(L[X]);\n return tt;\n }\n function w(L, F) {\n var X = L.split(\"@\"), tt = \"\";\n X.length > 1 && (tt = X[0] + \"@\", L = X[1]), L = L.replace(g, \".\");\n var et = L.split(\".\"), pt = x(et, F).join(\".\");\n return tt + pt;\n }\n function O(L) {\n for (var F = [], X = 0, tt = L.length, et, pt; X < tt; )\n et = L.charCodeAt(X++), et >= 55296 && et <= 56319 && X < tt ? (pt = L.charCodeAt(X++), (pt & 64512) == 56320 ? F.push(((et & 1023) << 10) + (pt & 1023) + 65536) : (F.push(et), X--)) : F.push(et);\n return F;\n }\n function I(L) {\n return x(L, function(F) {\n var X = \"\";\n return F > 65535 && (F -= 65536, X += S(F >>> 10 & 1023 | 55296), F = 56320 | F & 1023), X += S(F), X;\n }).join(\"\");\n }\n function C(L) {\n return L - 48 < 10 ? L - 22 : L - 65 < 26 ? L - 65 : L - 97 < 26 ? L - 97 : u;\n }\n function U(L, F) {\n return L + 22 + 75 * (L < 26) - ((F != 0) << 5);\n }\n function B(L, F, X) {\n var tt = 0;\n for (L = X ? b(L / c) : L >> 1, L += b(L / F); L > E * l >> 1; tt += u)\n L = b(L / E);\n return b(tt + (E + 1) * L / (L + f));\n }\n function N(L) {\n var F = [], X = L.length, tt, et = 0, pt = p, j = d, st, _t, Et, q, it, at, ft, nt, D;\n for (st = L.lastIndexOf(v), st < 0 && (st = 0), _t = 0; _t < st; ++_t)\n L.charCodeAt(_t) >= 128 && T(\"not-basic\"), F.push(L.charCodeAt(_t));\n for (Et = st > 0 ? st + 1 : 0; Et < X; ) {\n for (q = et, it = 1, at = u; Et >= X && T(\"invalid-input\"), ft = C(L.charCodeAt(Et++)), (ft >= u || ft > b((s - et) / it)) && T(\"overflow\"), et += ft * it, nt = at <= j ? h : at >= j + l ? l : at - j, !(ft < nt); at += u)\n D = u - nt, it > b(s / D) && T(\"overflow\"), it *= D;\n tt = F.length + 1, j = B(et - q, tt, q == 0), b(et / tt) > s - pt && T(\"overflow\"), pt += b(et / tt), et %= tt, F.splice(et++, 0, pt);\n }\n return I(F);\n }\n function Y(L) {\n var F, X, tt, et, pt, j, st, _t, Et, q, it, at = [], ft, nt, D, R;\n for (L = O(L), ft = L.length, F = p, X = 0, pt = d, j = 0; j < ft; ++j)\n it = L[j], it < 128 && at.push(S(it));\n for (tt = et = at.length, et && at.push(v); tt < ft; ) {\n for (st = s, j = 0; j < ft; ++j)\n it = L[j], it >= F && it < st && (st = it);\n for (nt = tt + 1, st - F > b((s - X) / nt) && T(\"overflow\"), X += (st - F) * nt, F = st, j = 0; j < ft; ++j)\n if (it = L[j], it < F && ++X > s && T(\"overflow\"), it == F) {\n for (_t = X, Et = u; q = Et <= pt ? h : Et >= pt + l ? l : Et - pt, !(_t < q); Et += u)\n R = _t - q, D = u - q, at.push(\n S(U(q + R % D, 0))\n ), _t = b(R / D);\n at.push(S(U(_t, 0))), pt = B(X, nt, tt == et), X = 0, ++tt;\n }\n ++X, ++F;\n }\n return at.join(\"\");\n }\n function $(L) {\n return w(L, function(F) {\n return _.test(F) ? N(F.slice(4).toLowerCase()) : F;\n });\n }\n function Q(L) {\n return w(L, function(F) {\n return m.test(F) ? \"xn--\" + Y(F) : F;\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: O,\n encode: I\n },\n decode: N,\n encode: Y,\n toASCII: Q,\n toUnicode: $\n }, n && i)\n if (r.exports == n)\n i.exports = a;\n else\n for (P in a)\n a.hasOwnProperty(P) && (n[P] = a[P]);\n else\n e.punycode = a;\n })(vi);\n})(Pi, Pi.exports);\nvar Nd = Pi.exports, Ld = 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}, tu = typeof Symbol < \"u\" && Symbol, Ud = Ld, Gd = function() {\n return typeof tu != \"function\" || typeof Symbol != \"function\" || typeof tu(\"foo\") != \"symbol\" || typeof Symbol(\"bar\") != \"symbol\" ? !1 : Ud();\n}, eu = {\n foo: {}\n}, kd = Object, Xd = function() {\n return { __proto__: eu }.foo === eu.foo && !({ __proto__: null } instanceof kd);\n}, Hd = \"Function.prototype.bind called on incompatible \", jd = Object.prototype.toString, Vd = Math.max, Yd = \"[object Function]\", ru = 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}, zd = 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}, Wd = 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}, qd = function(t) {\n var e = this;\n if (typeof e != \"function\" || jd.apply(e) !== Yd)\n throw new TypeError(Hd + e);\n for (var n = zd(arguments, 1), i, o = function() {\n if (this instanceof i) {\n var l = e.apply(\n this,\n ru(n, arguments)\n );\n return Object(l) === l ? l : this;\n }\n return e.apply(\n t,\n ru(n, arguments)\n );\n }, a = Vd(0, e.length - n.length), s = [], u = 0; u < a; u++)\n s[u] = \"$\" + u;\n if (i = Function(\"binder\", \"return function (\" + Wd(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}, $d = qd, Ja = Function.prototype.bind || $d, Kd = Function.prototype.call, Zd = Object.prototype.hasOwnProperty, Jd = Ja, Qd = Jd.call(Kd, Zd), ot, Xr = SyntaxError, ul = Function, Br = TypeError, io = function(r) {\n try {\n return ul('\"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 oo = function() {\n throw new Br();\n}, tp = ar ? function() {\n try {\n return arguments.callee, oo;\n } catch {\n try {\n return ar(arguments, \"callee\").get;\n } catch {\n return oo;\n }\n }\n}() : oo, br = Gd(), ep = Xd(), Bt = Object.getPrototypeOf || (ep ? function(r) {\n return r.__proto__;\n} : null), Pr = {}, rp = 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%\": ul,\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%\": Xr,\n \"%ThrowTypeError%\": tp,\n \"%TypedArray%\": rp,\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 np = Bt(Bt(r));\n sr[\"%Error.prototype%\"] = np;\n }\nvar ip = function r(t) {\n var e;\n if (t === \"%AsyncFunction%\")\n e = io(\"async function () {}\");\n else if (t === \"%GeneratorFunction%\")\n e = io(\"function* () {}\");\n else if (t === \"%AsyncGeneratorFunction%\")\n e = io(\"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}, nu = {\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 = Ja, Oi = Qd, op = In.call(Function.call, Array.prototype.concat), ap = In.call(Function.apply, Array.prototype.splice), iu = In.call(Function.call, String.prototype.replace), Ri = In.call(Function.call, String.prototype.slice), sp = In.call(Function.call, RegExp.prototype.exec), up = /[^%.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|%$))/g, hp = /\\\\(\\\\)?/g, lp = function(t) {\n var e = Ri(t, 0, 1), n = Ri(t, -1);\n if (e === \"%\" && n !== \"%\")\n throw new Xr(\"invalid intrinsic syntax, expected closing `%`\");\n if (n === \"%\" && e !== \"%\")\n throw new Xr(\"invalid intrinsic syntax, expected opening `%`\");\n var i = [];\n return iu(t, up, function(o, a, s, u) {\n i[i.length] = s ? iu(u, hp, \"$1\") : a || o;\n }), i;\n}, fp = function(t, e) {\n var n = t, i;\n if (Oi(nu, n) && (i = nu[n], n = \"%\" + i[0] + \"%\"), Oi(sr, n)) {\n var o = sr[n];\n if (o === Pr && (o = ip(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 Xr(\"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 (sp(/^%?[^%]*%?$/, t) === null)\n throw new Xr(\"`%` may not be present anywhere but at the beginning and end of the intrinsic name\");\n var n = lp(t), i = n.length > 0 ? n[0] : \"\", o = fp(\"%\" + i + \"%\", e), a = o.name, s = o.value, u = !1, h = o.alias;\n h && (i = h[0], ap(n, op([0, 1], h)));\n for (var l = 1, f = !0; l < n.length; l += 1) {\n var c = n[l], d = Ri(c, 0, 1), p = Ri(c, -1);\n if ((d === '\"' || d === \"'\" || d === \"`\" || p === '\"' || p === \"'\" || p === \"`\") && d !== p)\n throw new Xr(\"property names with quotes must have matching quotes\");\n if ((c === \"constructor\" || !f) && (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 && l + 1 >= n.length) {\n var v = ar(s, c);\n f = !!v, f && \"get\" in v && !(\"originalValue\" in v.get) ? s = v.get : s = s[c];\n } else\n f = Oi(s, c), s = s[c];\n f && !u && (sr[a] = s);\n }\n }\n return s;\n}, hl = { exports: {} }, cp = cr, Jo = cp(\"%Object.defineProperty%\", !0), Qo = function() {\n if (Jo)\n try {\n return Jo({}, \"a\", { value: 1 }), !0;\n } catch {\n return !1;\n }\n return !1;\n};\nQo.hasArrayLengthDefineBug = function() {\n if (!Qo())\n return null;\n try {\n return Jo([], \"length\", { value: 1 }).length !== 1;\n } catch {\n return !0;\n }\n};\nvar ll = Qo, dp = cr, _i = dp(\"%Object.getOwnPropertyDescriptor%\", !0);\nif (_i)\n try {\n _i([], \"length\");\n } catch {\n _i = null;\n }\nvar fl = _i, pp = ll(), Qa = cr, ln = pp && Qa(\"%Object.defineProperty%\", !0);\nif (ln)\n try {\n ln({}, \"a\", { value: 1 });\n } catch {\n ln = !1;\n }\nvar vp = Qa(\"%SyntaxError%\"), xr = Qa(\"%TypeError%\"), ou = fl, _p = 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 = !!ou && ou(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 vp(\"This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.\");\n}, cl = cr, au = _p, mp = ll(), su = fl, uu = cl(\"%TypeError%\"), gp = cl(\"%Math.floor%\"), yp = function(t, e) {\n if (typeof t != \"function\")\n throw new uu(\"`fn` is not a function\");\n if (typeof e != \"number\" || e < 0 || e > 4294967295 || gp(e) !== e)\n throw new uu(\"`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 && su) {\n var a = su(t, \"length\");\n a && !a.configurable && (i = !1), a && !a.writable && (o = !1);\n }\n return (i || o || !n) && (mp ? au(t, \"length\", e, !0, !0) : au(t, \"length\", e)), t;\n};\n(function(r) {\n var t = Ja, e = cr, n = yp, 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 l = function() {\n return s(t, o, arguments);\n };\n u ? u(r.exports, \"apply\", { value: l }) : r.exports.apply = l;\n})(hl);\nvar bp = hl.exports, dl = cr, pl = bp, xp = pl(dl(\"String.prototype.indexOf\")), Ep = function(t, e) {\n var n = dl(t, !!e);\n return typeof n == \"function\" && xp(t, \".prototype.\") > -1 ? pl(n) : n;\n};\nconst Tp = {}, wp = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({\n __proto__: null,\n default: Tp\n}, Symbol.toStringTag, { value: \"Module\" })), Sp = /* @__PURE__ */ od(wp);\nvar ts = typeof Map == \"function\" && Map.prototype, ao = Object.getOwnPropertyDescriptor && ts ? Object.getOwnPropertyDescriptor(Map.prototype, \"size\") : null, Ii = ts && ao && typeof ao.get == \"function\" ? ao.get : null, hu = ts && Map.prototype.forEach, es = typeof Set == \"function\" && Set.prototype, so = Object.getOwnPropertyDescriptor && es ? Object.getOwnPropertyDescriptor(Set.prototype, \"size\") : null, Ci = es && so && typeof so.get == \"function\" ? so.get : null, lu = es && Set.prototype.forEach, Ap = typeof WeakMap == \"function\" && WeakMap.prototype, fn = Ap ? WeakMap.prototype.has : null, Pp = typeof WeakSet == \"function\" && WeakSet.prototype, cn = Pp ? WeakSet.prototype.has : null, Op = typeof WeakRef == \"function\" && WeakRef.prototype, fu = Op ? WeakRef.prototype.deref : null, Rp = Boolean.prototype.valueOf, Ip = Object.prototype.toString, Cp = Function.prototype.toString, Mp = String.prototype.match, rs = String.prototype.slice, Ne = String.prototype.replace, Dp = String.prototype.toUpperCase, cu = String.prototype.toLowerCase, vl = RegExp.prototype.test, du = Array.prototype.concat, _e = Array.prototype.join, Fp = Array.prototype.slice, pu = Math.floor, ta = typeof BigInt == \"function\" ? BigInt.prototype.valueOf : null, uo = Object.getOwnPropertySymbols, ea = typeof Symbol == \"function\" && typeof Symbol.iterator == \"symbol\" ? Symbol.prototype.toString : null, Hr = typeof Symbol == \"function\" && typeof Symbol.iterator == \"object\", jt = typeof Symbol == \"function\" && Symbol.toStringTag && (typeof Symbol.toStringTag === Hr || \"symbol\") ? Symbol.toStringTag : null, _l = Object.prototype.propertyIsEnumerable, vu = (typeof Reflect == \"function\" ? Reflect.getPrototypeOf : Object.getPrototypeOf) || ([].__proto__ === Array.prototype ? function(r) {\n return r.__proto__;\n} : null);\nfunction _u(r, t) {\n if (r === 1 / 0 || r === -1 / 0 || r !== r || r && r > -1e3 && r < 1e3 || vl.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 ? -pu(-r) : pu(r);\n if (n !== r) {\n var i = String(n), o = rs.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 ra = Sp, mu = ra.custom, gu = gl(mu) ? mu : null, Bp = 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 bl(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 ? _u(t, u) : u;\n }\n if (typeof t == \"bigint\") {\n var h = String(t) + \"n\";\n return s ? _u(t, h) : h;\n }\n var l = typeof o.depth > \"u\" ? 5 : o.depth;\n if (typeof n > \"u\" && (n = 0), n >= l && l > 0 && typeof t == \"object\")\n return na(t) ? \"[Array]\" : \"[Object]\";\n var f = Qp(o, n);\n if (typeof i > \"u\")\n i = [];\n else if (yl(i, t) >= 0)\n return \"[Circular]\";\n function c(C, U, B) {\n if (U && (i = Fp.call(i), i.push(U)), B) {\n var N = {\n depth: o.depth\n };\n return Be(o, \"quoteStyle\") && (N.quoteStyle = o.quoteStyle), r(C, N, n + 1, i);\n }\n return r(C, o, n + 1, i);\n }\n if (typeof t == \"function\" && !yu(t)) {\n var d = Vp(t), p = Hn(t, c);\n return \"[Function\" + (d ? \": \" + d : \" (anonymous)\") + \"]\" + (p.length > 0 ? \" { \" + _e.call(p, \", \") + \" }\" : \"\");\n }\n if (gl(t)) {\n var v = Hr ? Ne.call(String(t), /^(Symbol\\(.*\\))_[^)]*$/, \"$1\") : ea.call(t);\n return typeof t == \"object\" && !Hr ? Jr(v) : v;\n }\n if (Kp(t)) {\n for (var _ = \"<\" + cu.call(String(t.nodeName)), m = t.attributes || [], g = 0; g < m.length; g++)\n _ += \" \" + m[g].name + \"=\" + ml(Np(m[g].value), \"double\", o);\n return _ += \">\", t.childNodes && t.childNodes.length && (_ += \"...\"), _ += \"</\" + cu.call(String(t.nodeName)) + \">\", _;\n }\n if (na(t)) {\n if (t.length === 0)\n return \"[]\";\n var y = Hn(t, c);\n return f && !Jp(y) ? \"[\" + ia(y, f) + \"]\" : \"[ \" + _e.call(y, \", \") + \" ]\";\n }\n if (Up(t)) {\n var E = Hn(t, c);\n return !(\"cause\" in Error.prototype) && \"cause\" in t && !_l.call(t, \"cause\") ? \"{ [\" + String(t) + \"] \" + _e.call(du.call(\"[cause]: \" + c(t.cause), E), \", \") + \" }\" : E.length === 0 ? \"[\" + String(t) + \"]\" : \"{ [\" + String(t) + \"] \" + _e.call(E, \", \") + \" }\";\n }\n if (typeof t == \"object\" && a) {\n if (gu && typeof t[gu] == \"function\" && ra)\n return ra(t, { depth: l - n });\n if (a !== \"symbol\" && typeof t.inspect == \"function\")\n return t.inspect();\n }\n if (Yp(t)) {\n var b = [];\n return hu && hu.call(t, function(C, U) {\n b.push(c(U, t, !0) + \" => \" + c(C, t));\n }), bu(\"Map\", Ii.call(t), b, f);\n }\n if (qp(t)) {\n var S = [];\n return lu && lu.call(t, function(C) {\n S.push(c(C, t));\n }), bu(\"Set\", Ci.call(t), S, f);\n }\n if (zp(t))\n return ho(\"WeakMap\");\n if ($p(t))\n return ho(\"WeakSet\");\n if (Wp(t))\n return ho(\"WeakRef\");\n if (kp(t))\n return Jr(c(Number(t)));\n if (Hp(t))\n return Jr(c(ta.call(t)));\n if (Xp(t))\n return Jr(Rp.call(t));\n if (Gp(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 (!Lp(t) && !yu(t)) {\n var P = Hn(t, c), T = vu ? vu(t) === Object.prototype : t instanceof Object || t.constructor === Object, x = t instanceof Object ? \"\" : \"null prototype\", w = !T && jt && Object(t) === t && jt in t ? rs.call(Ve(t), 8, -1) : x ? \"Object\" : \"\", O = T || typeof t.constructor != \"function\" ? \"\" : t.constructor.name ? t.constructor.name + \" \" : \"\", I = O + (w || x ? \"[\" + _e.call(du.call([], w || [], x || []), \": \") + \"] \" : \"\");\n return P.length === 0 ? I + \"{}\" : f ? I + \"{\" + ia(P, f) + \"}\" : I + \"{ \" + _e.call(P, \", \") + \" }\";\n }\n return String(t);\n};\nfunction ml(r, t, e) {\n var n = (e.quoteStyle || t) === \"double\" ? '\"' : \"'\";\n return n + r + n;\n}\nfunction Np(r) {\n return Ne.call(String(r), /\"/g, \"&quot;\");\n}\nfunction na(r) {\n return Ve(r) === \"[object Array]\" && (!jt || !(typeof r == \"object\" && jt in r));\n}\nfunction Lp(r) {\n return Ve(r) === \"[object Date]\" && (!jt || !(typeof r == \"object\" && jt in r));\n}\nfunction yu(r) {\n return Ve(r) === \"[object RegExp]\" && (!jt || !(typeof r == \"object\" && jt in r));\n}\nfunction Up(r) {\n return Ve(r) === \"[object Error]\" && (!jt || !(typeof r == \"object\" && jt in r));\n}\nfunction Gp(r) {\n return Ve(r) === \"[object String]\" && (!jt || !(typeof r == \"object\" && jt in r));\n}\nfunction kp(r) {\n return Ve(r) === \"[object Number]\" && (!jt || !(typeof r == \"object\" && jt in r));\n}\nfunction Xp(r) {\n return Ve(r) === \"[object Boolean]\" && (!jt || !(typeof r == \"object\" && jt in r));\n}\nfunction gl(r) {\n if (Hr)\n return r && typeof r == \"object\" && r instanceof Symbol;\n if (typeof r == \"symbol\")\n return !0;\n if (!r || typeof r != \"object\" || !ea)\n return !1;\n try {\n return ea.call(r), !0;\n } catch {\n }\n return !1;\n}\nfunction Hp(r) {\n if (!r || typeof r != \"object\" || !ta)\n return !1;\n try {\n return ta.call(r), !0;\n } catch {\n }\n return !1;\n}\nvar jp = Object.prototype.hasOwnProperty || function(r) {\n return r in this;\n};\nfunction Be(r, t) {\n return jp.call(r, t);\n}\nfunction Ve(r) {\n return Ip.call(r);\n}\nfunction Vp(r) {\n if (r.name)\n return r.name;\n var t = Mp.call(Cp.call(r), /^function\\s*([\\w$]+)/);\n return t ? t[1] : null;\n}\nfunction yl(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 Yp(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 zp(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 Wp(r) {\n if (!fu || !r || typeof r != \"object\")\n return !1;\n try {\n return fu.call(r), !0;\n } catch {\n }\n return !1;\n}\nfunction qp(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 $p(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 Kp(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 bl(r, t) {\n if (r.length > t.maxStringLength) {\n var e = r.length - t.maxStringLength, n = \"... \" + e + \" more character\" + (e > 1 ? \"s\" : \"\");\n return bl(rs.call(r, 0, t.maxStringLength), t) + n;\n }\n var i = Ne.call(Ne.call(r, /(['\\\\])/g, \"\\\\$1\"), /[\\x00-\\x1f]/g, Zp);\n return ml(i, \"single\", t);\n}\nfunction Zp(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\" : \"\") + Dp.call(t.toString(16));\n}\nfunction Jr(r) {\n return \"Object(\" + r + \")\";\n}\nfunction ho(r) {\n return r + \" { ? }\";\n}\nfunction bu(r, t, e, n) {\n var i = n ? ia(e, n) : _e.call(e, \", \");\n return r + \" (\" + t + \") {\" + i + \"}\";\n}\nfunction Jp(r) {\n for (var t = 0; t < r.length; t++)\n if (yl(r[t], `\n`) >= 0)\n return !1;\n return !0;\n}\nfunction Qp(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 ia(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 Hn(r, t) {\n var e = na(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 uo == \"function\" ? uo(r) : [], a;\n if (Hr) {\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 || Hr && a[\"$\" + u] instanceof Symbol || (vl.call(/[^\\w$]/, u) ? n.push(t(u, r) + \": \" + t(r[u], r)) : n.push(u + \": \" + t(r[u], r))));\n if (typeof uo == \"function\")\n for (var h = 0; h < o.length; h++)\n _l.call(r, o[h]) && n.push(\"[\" + t(o[h]) + \"]: \" + t(r[o[h]], r));\n return n;\n}\nvar ns = cr, $r = Ep, tv = Bp, ev = ns(\"%TypeError%\"), jn = ns(\"%WeakMap%\", !0), Vn = ns(\"%Map%\", !0), rv = $r(\"WeakMap.prototype.get\", !0), nv = $r(\"WeakMap.prototype.set\", !0), iv = $r(\"WeakMap.prototype.has\", !0), ov = $r(\"Map.prototype.get\", !0), av = $r(\"Map.prototype.set\", !0), sv = $r(\"Map.prototype.has\", !0), is = 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}, uv = function(r, t) {\n var e = is(r, t);\n return e && e.value;\n}, hv = function(r, t, e) {\n var n = is(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}, lv = function(r, t) {\n return !!is(r, t);\n}, fv = function() {\n var t, e, n, i = {\n assert: function(o) {\n if (!i.has(o))\n throw new ev(\"Side channel does not contain \" + tv(o));\n },\n get: function(o) {\n if (jn && o && (typeof o == \"object\" || typeof o == \"function\")) {\n if (t)\n return rv(t, o);\n } else if (Vn) {\n if (e)\n return ov(e, o);\n } else if (n)\n return uv(n, o);\n },\n has: function(o) {\n if (jn && o && (typeof o == \"object\" || typeof o == \"function\")) {\n if (t)\n return iv(t, o);\n } else if (Vn) {\n if (e)\n return sv(e, o);\n } else if (n)\n return lv(n, o);\n return !1;\n },\n set: function(o, a) {\n jn && o && (typeof o == \"object\" || typeof o == \"function\") ? (t || (t = new jn()), nv(t, o, a)) : Vn ? (e || (e = new Vn()), av(e, o, a)) : (n || (n = { key: {}, next: null }), hv(n, o, a));\n }\n };\n return i;\n}, cv = String.prototype.replace, dv = /%20/g, lo = {\n RFC1738: \"RFC1738\",\n RFC3986: \"RFC3986\"\n}, os = {\n default: lo.RFC3986,\n formatters: {\n RFC1738: function(r) {\n return cv.call(r, dv, \"+\");\n },\n RFC3986: function(r) {\n return String(r);\n }\n },\n RFC1738: lo.RFC1738,\n RFC3986: lo.RFC3986\n}, pv = os, fo = 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}(), vv = 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}, xl = 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}, _v = 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) || !fo.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 = xl(t, n)), er(t) && er(e) ? (e.forEach(function(o, a) {\n if (fo.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 fo.call(o, a) ? o[a] = r(o[a], s, n) : o[a] = s, o;\n }, i);\n}, mv = function(t, e) {\n return Object.keys(e).reduce(function(n, i) {\n return n[i] = e[i], n;\n }, t);\n}, gv = 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}, yv = 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(l) {\n return \"%26%23\" + parseInt(l.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 === pv.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}, bv = 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], l = a[h];\n typeof l == \"object\" && l !== null && n.indexOf(l) === -1 && (e.push({ obj: a, prop: h }), n.push(l));\n }\n return vv(e), t;\n}, xv = function(t) {\n return Object.prototype.toString.call(t) === \"[object RegExp]\";\n}, Ev = function(t) {\n return !t || typeof t != \"object\" ? !1 : !!(t.constructor && t.constructor.isBuffer && t.constructor.isBuffer(t));\n}, Tv = function(t, e) {\n return [].concat(t, e);\n}, wv = 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}, El = {\n arrayToObject: xl,\n assign: mv,\n combine: Tv,\n compact: bv,\n decode: gv,\n encode: yv,\n isBuffer: Ev,\n isRegExp: xv,\n maybeMap: wv,\n merge: _v\n}, Tl = fv, mi = El, dn = os, Sv = Object.prototype.hasOwnProperty, xu = {\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, Av = Array.prototype.push, wl = function(r, t) {\n Av.apply(r, Pe(t) ? t : [t]);\n}, Pv = Date.prototype.toISOString, Eu = 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: Eu,\n formatter: dn.formatters[Eu],\n // deprecated\n indices: !1,\n serializeDate: function(t) {\n return Pv.call(t);\n },\n skipNulls: !1,\n strictNullHandling: !1\n}, Ov = function(t) {\n return typeof t == \"string\" || typeof t == \"number\" || typeof t == \"boolean\" || typeof t == \"symbol\" || typeof t == \"bigint\";\n}, co = {}, Rv = function r(t, e, n, i, o, a, s, u, h, l, f, c, d, p, v, _) {\n for (var m = t, g = _, y = 0, E = !1; (g = g.get(co)) !== void 0 && !E; ) {\n var b = g.get(t);\n if (y += 1, typeof b < \"u\") {\n if (b === y)\n throw new RangeError(\"Cyclic object value\");\n E = !0;\n }\n typeof g.get(co) > \"u\" && (y = 0);\n }\n if (typeof u == \"function\" ? m = u(e, m) : m instanceof Date ? m = f(m) : n === \"comma\" && Pe(m) && (m = mi.maybeMap(m, function(N) {\n return N instanceof Date ? f(N) : N;\n })), m === null) {\n if (o)\n return s && !p ? s(e, Xt.encoder, v, \"key\", c) : e;\n m = \"\";\n }\n if (Ov(m) || mi.isBuffer(m)) {\n if (s) {\n var S = p ? e : s(e, Xt.encoder, v, \"key\", c);\n return [d(S) + \"=\" + d(s(m, Xt.encoder, v, \"value\", c))];\n }\n return [d(e) + \"=\" + d(String(m))];\n }\n var P = [];\n if (typeof m > \"u\")\n return P;\n var T;\n if (n === \"comma\" && Pe(m))\n p && s && (m = mi.maybeMap(m, s)), T = [{ value: m.length > 0 ? m.join(\",\") || null : void 0 }];\n else if (Pe(u))\n T = u;\n else {\n var x = Object.keys(m);\n T = h ? x.sort(h) : x;\n }\n for (var w = i && Pe(m) && m.length === 1 ? e + \"[]\" : e, O = 0; O < T.length; ++O) {\n var I = T[O], C = typeof I == \"object\" && typeof I.value < \"u\" ? I.value : m[I];\n if (!(a && C === null)) {\n var U = Pe(m) ? typeof n == \"function\" ? n(w, I) : w : w + (l ? \".\" + I : \"[\" + I + \"]\");\n _.set(t, y);\n var B = Tl();\n B.set(co, _), wl(P, r(\n C,\n U,\n n,\n i,\n o,\n a,\n n === \"comma\" && p && Pe(m) ? null : s,\n u,\n h,\n l,\n f,\n c,\n d,\n p,\n v,\n B\n ));\n }\n }\n return P;\n}, Iv = 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 (!Sv.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}, Cv = function(r, t) {\n var e = r, n = Iv(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 xu ? s = t.arrayFormat : t && \"indices\" in t ? s = t.indices ? \"indices\" : \"repeat\" : s = \"indices\";\n var u = xu[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 l = Tl(), f = 0; f < i.length; ++f) {\n var c = i[f];\n n.skipNulls && e[c] === null || wl(a, Rv(\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 l\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 = El, oa = Object.prototype.hasOwnProperty, Mv = 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}, Dv = function(r) {\n return r.replace(/&#(\\d+);/g, function(t, e) {\n return String.fromCharCode(parseInt(e, 10));\n });\n}, Sl = function(r, t) {\n return r && typeof r == \"string\" && t.comma && r.indexOf(\",\") > -1 ? r.split(\",\") : r;\n}, Fv = \"utf8=%26%2310003%3B\", Bv = \"utf8=%E2%9C%93\", Nv = 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] === Bv ? h = \"utf-8\" : a[u] === Fv && (h = \"iso-8859-1\"), s = u, u = a.length);\n for (u = 0; u < a.length; ++u)\n if (u !== s) {\n var l = a[u], f = l.indexOf(\"]=\"), c = f === -1 ? l.indexOf(\"=\") : f + 1, d, p;\n c === -1 ? (d = e.decoder(l, Ft.decoder, h, \"key\"), p = e.strictNullHandling ? null : \"\") : (d = e.decoder(l.slice(0, c), Ft.decoder, h, \"key\"), p = jr.maybeMap(\n Sl(l.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 = Dv(p)), l.indexOf(\"[]=\") > -1 && (p = Mv(p) ? [p] : p), oa.call(n, d) ? n[d] = jr.combine(n[d], p) : n[d] = p;\n }\n return n;\n}, Lv = function(r, t, e, n) {\n for (var i = n ? t : Sl(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}, Uv = 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, l = [];\n if (h) {\n if (!n.plainObjects && oa.call(Object.prototype, h) && !n.allowPrototypes)\n return;\n l.push(h);\n }\n for (var f = 0; n.depth > 0 && (u = s.exec(o)) !== null && f < n.depth; ) {\n if (f += 1, !n.plainObjects && oa.call(Object.prototype, u[1].slice(1, -1)) && !n.allowPrototypes)\n return;\n l.push(u[1]);\n }\n return u && l.push(\"[\" + o.slice(u.index) + \"]\"), Lv(l, e, n, i);\n }\n}, Gv = 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}, kv = function(r, t) {\n var e = Gv(t);\n if (r === \"\" || r === null || typeof r > \"u\")\n return e.plainObjects ? /* @__PURE__ */ Object.create(null) : {};\n for (var n = typeof r == \"string\" ? Nv(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 = Uv(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}, Xv = Cv, Hv = kv, jv = os, Vv = {\n formats: jv,\n parse: Hv,\n stringify: Xv\n}, Yv = Nd;\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 zv = /^([a-z0-9.+-]+:)/i, Wv = /:[0-9]*$/, qv = /^(\\/\\/?(?!\\/)[^?\\s]*)(\\?[^\\s]*)?$/, $v = [\n \"<\",\n \">\",\n '\"',\n \"`\",\n \" \",\n \"\\r\",\n `\n`,\n \"\t\"\n], Kv = [\n \"{\",\n \"}\",\n \"|\",\n \"\\\\\",\n \"^\",\n \"`\"\n].concat($v), aa = [\"'\"].concat(Kv), Tu = [\n \"%\",\n \"/\",\n \"?\",\n \";\",\n \"#\"\n].concat(aa), wu = [\n \"/\",\n \"?\",\n \"#\"\n], Zv = 255, Su = /^[+a-z0-9A-Z_-]{0,63}$/, Jv = /^([+a-z0-9A-Z_-]{0,63})(.*)$/, Qv = {\n javascript: !0,\n \"javascript:\": !0\n}, sa = {\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}, ua = Vv;\nfunction Hi(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 = qv.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 = ua.parse(this.search.substr(1)) : this.query = this.search.substr(1)) : t && (this.search = \"\", this.query = {}), this;\n }\n var h = zv.exec(s);\n if (h) {\n h = h[0];\n var l = h.toLowerCase();\n this.protocol = l, s = s.substr(h.length);\n }\n if (e || h || s.match(/^\\/\\/[^@/]+@[^@/]+/)) {\n var f = s.substr(0, 2) === \"//\";\n f && !(h && sa[h]) && (s = s.substr(2), this.slashes = !0);\n }\n if (!sa[h] && (f || h && !Nr[h])) {\n for (var c = -1, d = 0; d < wu.length; d++) {\n var p = s.indexOf(wu[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 < Tu.length; d++) {\n var p = s.indexOf(Tu[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 m = this.hostname[0] === \"[\" && this.hostname[this.hostname.length - 1] === \"]\";\n if (!m)\n for (var g = this.hostname.split(/\\./), d = 0, y = g.length; d < y; d++) {\n var E = g[d];\n if (E && !E.match(Su)) {\n for (var b = \"\", S = 0, P = E.length; S < P; S++)\n E.charCodeAt(S) > 127 ? b += \"x\" : b += E[S];\n if (!b.match(Su)) {\n var T = g.slice(0, d), x = g.slice(d + 1), w = E.match(Jv);\n w && (T.push(w[1]), x.unshift(w[2])), x.length && (s = \"/\" + x.join(\".\") + s), this.hostname = T.join(\".\");\n break;\n }\n }\n }\n this.hostname.length > Zv ? this.hostname = \"\" : this.hostname = this.hostname.toLowerCase(), m || (this.hostname = Yv.toASCII(this.hostname));\n var O = this.port ? \":\" + this.port : \"\", I = this.hostname || \"\";\n this.host = I + O, this.href += this.host, m && (this.hostname = this.hostname.substr(1, this.hostname.length - 2), s[0] !== \"/\" && (s = \"/\" + s));\n }\n if (!Qv[l])\n for (var d = 0, y = aa.length; d < y; d++) {\n var C = aa[d];\n if (s.indexOf(C) !== -1) {\n var U = encodeURIComponent(C);\n U === C && (U = escape(C)), s = s.split(C).join(U);\n }\n }\n var B = s.indexOf(\"#\");\n B !== -1 && (this.hash = s.substr(B), s = s.slice(0, B));\n var N = s.indexOf(\"?\");\n if (N !== -1 ? (this.search = s.substr(N), this.query = s.substr(N + 1), t && (this.query = ua.parse(this.query)), s = s.slice(0, N)) : t && (this.search = \"\", this.query = {}), s && (this.pathname = s), Nr[l] && this.hostname && !this.pathname && (this.pathname = \"/\"), this.pathname || this.search) {\n var O = this.pathname || \"\", Y = this.search || \"\";\n this.path = O + Y;\n }\n return this.href = this.format(), this;\n};\nfunction t_(r) {\n return typeof r == \"string\" && (r = Hi(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 = ua.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 e_(r, t) {\n return Hi(r, !1, !0).resolve(t);\n}\nue.prototype.resolve = function(r) {\n return this.resolveObject(Hi(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), l = 0; l < h.length; l++) {\n var f = h[l];\n e[f] = r[f];\n }\n return e.href = e.format(), e;\n }\n if (e.protocol = r.protocol, !r.host && !sa[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, m = _, g = e.pathname && e.pathname.split(\"/\") || [], y = r.pathname && r.pathname.split(\"/\") || [], E = e.protocol && !Nr[e.protocol];\n if (E && (e.hostname = \"\", e.port = null, e.host && (g[0] === \"\" ? g[0] = e.host : g.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] === \"\" || g[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, g = y;\n else if (y.length)\n g || (g = []), g.pop(), g = g.concat(y), e.search = r.search, e.query = r.query;\n else if (r.search != null) {\n if (E) {\n e.host = g.shift(), e.hostname = e.host;\n var b = e.host && e.host.indexOf(\"@\") > 0 ? e.host.split(\"@\") : !1;\n b && (e.auth = b.shift(), e.hostname = b.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 (!g.length)\n return e.pathname = null, e.search ? e.path = \"/\" + e.search : e.path = null, e.href = e.format(), e;\n for (var S = g.slice(-1)[0], P = (e.host || r.host || g.length > 1) && (S === \".\" || S === \"..\") || S === \"\", T = 0, x = g.length; x >= 0; x--)\n S = g[x], S === \".\" ? g.splice(x, 1) : S === \"..\" ? (g.splice(x, 1), T++) : T && (g.splice(x, 1), T--);\n if (!_ && !m)\n for (; T--; T)\n g.unshift(\"..\");\n _ && g[0] !== \"\" && (!g[0] || g[0].charAt(0) !== \"/\") && g.unshift(\"\"), P && g.join(\"/\").substr(-1) !== \"/\" && g.push(\"\");\n var w = g[0] === \"\" || g[0] && g[0].charAt(0) === \"/\";\n if (E) {\n e.hostname = w ? \"\" : g.length ? g.shift() : \"\", e.host = e.hostname;\n var b = e.host && e.host.indexOf(\"@\") > 0 ? e.host.split(\"@\") : !1;\n b && (e.auth = b.shift(), e.hostname = b.shift(), e.host = e.hostname);\n }\n return _ = _ || e.host && g.length, _ && !w && g.unshift(\"\"), g.length > 0 ? e.pathname = g.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 = Wv.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 r_ = Hi, n_ = e_, i_ = t_;\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: r_,\n format: i_,\n resolve: n_\n};\nk.RETINA_PREFIX = /@([0-9\\.]+)x/;\nk.FAIL_IF_MAJOR_PERFORMANCE_CAVEAT = !1;\nvar Au = !1, Pu = \"6.5.10\";\nfunction o_(r) {\n var t;\n if (!Au) {\n if (k.ADAPTER.getNavigator().userAgent.toLowerCase().indexOf(\"chrome\") > -1) {\n var e = [\n `\n %c %c %c PixiJS ` + Pu + \" - ✰ \" + 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 \" + Pu + \" - \" + r + \" - http://www.pixijs.com/\");\n Au = !0;\n }\n}\nvar po;\nfunction a_() {\n return typeof po > \"u\" && (po = 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 }()), po;\n}\nvar s_ = \"#f0f8ff\", u_ = \"#faebd7\", h_ = \"#00ffff\", l_ = \"#7fffd4\", f_ = \"#f0ffff\", c_ = \"#f5f5dc\", d_ = \"#ffe4c4\", p_ = \"#000000\", v_ = \"#ffebcd\", __ = \"#0000ff\", m_ = \"#8a2be2\", g_ = \"#a52a2a\", y_ = \"#deb887\", b_ = \"#5f9ea0\", x_ = \"#7fff00\", E_ = \"#d2691e\", T_ = \"#ff7f50\", w_ = \"#6495ed\", S_ = \"#fff8dc\", A_ = \"#dc143c\", P_ = \"#00ffff\", O_ = \"#00008b\", R_ = \"#008b8b\", I_ = \"#b8860b\", C_ = \"#a9a9a9\", M_ = \"#006400\", D_ = \"#a9a9a9\", F_ = \"#bdb76b\", B_ = \"#8b008b\", N_ = \"#556b2f\", L_ = \"#ff8c00\", U_ = \"#9932cc\", G_ = \"#8b0000\", k_ = \"#e9967a\", X_ = \"#8fbc8f\", H_ = \"#483d8b\", j_ = \"#2f4f4f\", V_ = \"#2f4f4f\", Y_ = \"#00ced1\", z_ = \"#9400d3\", W_ = \"#ff1493\", q_ = \"#00bfff\", $_ = \"#696969\", K_ = \"#696969\", Z_ = \"#1e90ff\", J_ = \"#b22222\", Q_ = \"#fffaf0\", tm = \"#228b22\", em = \"#ff00ff\", rm = \"#dcdcdc\", nm = \"#f8f8ff\", im = \"#daa520\", om = \"#ffd700\", am = \"#808080\", sm = \"#008000\", um = \"#adff2f\", hm = \"#808080\", lm = \"#f0fff0\", fm = \"#ff69b4\", cm = \"#cd5c5c\", dm = \"#4b0082\", pm = \"#fffff0\", vm = \"#f0e68c\", _m = \"#fff0f5\", mm = \"#e6e6fa\", gm = \"#7cfc00\", ym = \"#fffacd\", bm = \"#add8e6\", xm = \"#f08080\", Em = \"#e0ffff\", Tm = \"#fafad2\", wm = \"#d3d3d3\", Sm = \"#90ee90\", Am = \"#d3d3d3\", Pm = \"#ffb6c1\", Om = \"#ffa07a\", Rm = \"#20b2aa\", Im = \"#87cefa\", Cm = \"#778899\", Mm = \"#778899\", Dm = \"#b0c4de\", Fm = \"#ffffe0\", Bm = \"#00ff00\", Nm = \"#32cd32\", Lm = \"#faf0e6\", Um = \"#ff00ff\", Gm = \"#800000\", km = \"#66cdaa\", Xm = \"#0000cd\", Hm = \"#ba55d3\", jm = \"#9370db\", Vm = \"#3cb371\", Ym = \"#7b68ee\", zm = \"#00fa9a\", Wm = \"#48d1cc\", qm = \"#c71585\", $m = \"#191970\", Km = \"#f5fffa\", Zm = \"#ffe4e1\", Jm = \"#ffe4b5\", Qm = \"#ffdead\", tg = \"#000080\", eg = \"#fdf5e6\", rg = \"#808000\", ng = \"#6b8e23\", ig = \"#ffa500\", og = \"#ff4500\", ag = \"#da70d6\", sg = \"#eee8aa\", ug = \"#98fb98\", hg = \"#afeeee\", lg = \"#db7093\", fg = \"#ffefd5\", cg = \"#ffdab9\", dg = \"#cd853f\", pg = \"#ffc0cb\", vg = \"#dda0dd\", _g = \"#b0e0e6\", mg = \"#800080\", gg = \"#663399\", yg = \"#ff0000\", bg = \"#bc8f8f\", xg = \"#4169e1\", Eg = \"#8b4513\", Tg = \"#fa8072\", wg = \"#f4a460\", Sg = \"#2e8b57\", Ag = \"#fff5ee\", Pg = \"#a0522d\", Og = \"#c0c0c0\", Rg = \"#87ceeb\", Ig = \"#6a5acd\", Cg = \"#708090\", Mg = \"#708090\", Dg = \"#fffafa\", Fg = \"#00ff7f\", Bg = \"#4682b4\", Ng = \"#d2b48c\", Lg = \"#008080\", Ug = \"#d8bfd8\", Gg = \"#ff6347\", kg = \"#40e0d0\", Xg = \"#ee82ee\", Hg = \"#f5deb3\", jg = \"#ffffff\", Vg = \"#f5f5f5\", Yg = \"#ffff00\", zg = \"#9acd32\", Wg = {\n aliceblue: s_,\n antiquewhite: u_,\n aqua: h_,\n aquamarine: l_,\n azure: f_,\n beige: c_,\n bisque: d_,\n black: p_,\n blanchedalmond: v_,\n blue: __,\n blueviolet: m_,\n brown: g_,\n burlywood: y_,\n cadetblue: b_,\n chartreuse: x_,\n chocolate: E_,\n coral: T_,\n cornflowerblue: w_,\n cornsilk: S_,\n crimson: A_,\n cyan: P_,\n darkblue: O_,\n darkcyan: R_,\n darkgoldenrod: I_,\n darkgray: C_,\n darkgreen: M_,\n darkgrey: D_,\n darkkhaki: F_,\n darkmagenta: B_,\n darkolivegreen: N_,\n darkorange: L_,\n darkorchid: U_,\n darkred: G_,\n darksalmon: k_,\n darkseagreen: X_,\n darkslateblue: H_,\n darkslategray: j_,\n darkslategrey: V_,\n darkturquoise: Y_,\n darkviolet: z_,\n deeppink: W_,\n deepskyblue: q_,\n dimgray: $_,\n dimgrey: K_,\n dodgerblue: Z_,\n firebrick: J_,\n floralwhite: Q_,\n forestgreen: tm,\n fuchsia: em,\n gainsboro: rm,\n ghostwhite: nm,\n goldenrod: im,\n gold: om,\n gray: am,\n green: sm,\n greenyellow: um,\n grey: hm,\n honeydew: lm,\n hotpink: fm,\n indianred: cm,\n indigo: dm,\n ivory: pm,\n khaki: vm,\n lavenderblush: _m,\n lavender: mm,\n lawngreen: gm,\n lemonchiffon: ym,\n lightblue: bm,\n lightcoral: xm,\n lightcyan: Em,\n lightgoldenrodyellow: Tm,\n lightgray: wm,\n lightgreen: Sm,\n lightgrey: Am,\n lightpink: Pm,\n lightsalmon: Om,\n lightseagreen: Rm,\n lightskyblue: Im,\n lightslategray: Cm,\n lightslategrey: Mm,\n lightsteelblue: Dm,\n lightyellow: Fm,\n lime: Bm,\n limegreen: Nm,\n linen: Lm,\n magenta: Um,\n maroon: Gm,\n mediumaquamarine: km,\n mediumblue: Xm,\n mediumorchid: Hm,\n mediumpurple: jm,\n mediumseagreen: Vm,\n mediumslateblue: Ym,\n mediumspringgreen: zm,\n mediumturquoise: Wm,\n mediumvioletred: qm,\n midnightblue: $m,\n mintcream: Km,\n mistyrose: Zm,\n moccasin: Jm,\n navajowhite: Qm,\n navy: tg,\n oldlace: eg,\n olive: rg,\n olivedrab: ng,\n orange: ig,\n orangered: og,\n orchid: ag,\n palegoldenrod: sg,\n palegreen: ug,\n paleturquoise: hg,\n palevioletred: lg,\n papayawhip: fg,\n peachpuff: cg,\n peru: dg,\n pink: pg,\n plum: vg,\n powderblue: _g,\n purple: mg,\n rebeccapurple: gg,\n red: yg,\n rosybrown: bg,\n royalblue: xg,\n saddlebrown: Eg,\n salmon: Tg,\n sandybrown: wg,\n seagreen: Sg,\n seashell: Ag,\n sienna: Pg,\n silver: Og,\n skyblue: Rg,\n slateblue: Ig,\n slategray: Cg,\n slategrey: Mg,\n snow: Dg,\n springgreen: Fg,\n steelblue: Bg,\n tan: Ng,\n teal: Lg,\n thistle: Ug,\n tomato: Gg,\n turquoise: kg,\n violet: Xg,\n wheat: Hg,\n white: jg,\n whitesmoke: Vg,\n yellow: Yg,\n yellowgreen: zg\n};\nfunction Vr(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 Al(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 = Wg[r.toLowerCase()] || r, r[0] === \"#\" && (r = r.slice(1))), parseInt(r, 16);\n}\nfunction qg() {\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 Pl = qg();\nfunction Ol(r, t) {\n return Pl[t ? 1 : 0][r];\n}\nfunction $g(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 as(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 Rl(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 Kg(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 Il(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 Ou(r) {\n return !(r & r - 1) && !!r;\n}\nfunction Ru(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 Zg = 0;\nfunction lr() {\n return ++Zg;\n}\nvar Iu = {};\nfunction he(r, t, e) {\n if (e === void 0 && (e = 3), !Iu[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))), Iu[t] = !0;\n }\n}\nvar Cu = {}, Ae = /* @__PURE__ */ Object.create(null), ze = /* @__PURE__ */ Object.create(null), Mu = (\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 Jg(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, l, f;\n for (h = 0; h < a; h += 4)\n o[h + 3] !== 0 && (l = h / 4 % t, f = ~~(h / 4 / t), s.top === null && (s.top = f), (s.left === null || l < s.left) && (s.left = l), (s.right === null || s.right < l) && (s.right = l + 1), (s.bottom === null || s.bottom < f) && (s.bottom = f));\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 Yn;\nfunction Qg(r, t) {\n if (t === void 0 && (t = globalThis.location), r.indexOf(\"data:\") === 0)\n return \"\";\n t = t || globalThis.location, Yn || (Yn = document.createElement(\"a\")), Yn.href = r;\n var e = Ir.parse(Yn.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, ty = 180 / Math.PI, ey = 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, l = this.bottom;\n if (u <= s || l <= h)\n return !1;\n var f = 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 <= f.x || c.y <= f.y)\n return !1;\n var v = Math.sign(e.a * e.d - e.b * e.c);\n if (v === 0 || (e.apply(f, f), e.apply(c, c), e.apply(d, d), e.apply(p, p), Math.max(f.x, c.x, d.x, p.x) <= s || Math.min(f.x, c.x, d.x, p.x) >= u || Math.max(f.y, c.y, d.y, p.y) <= h || Math.min(f.y, c.y, d.y, p.y) >= l))\n return !1;\n var _ = v * (c.y - f.y), m = v * (f.x - c.x), g = _ * s + m * h, y = _ * u + m * h, E = _ * s + m * l, b = _ * u + m * l;\n if (Math.max(g, y, E, b) <= _ * f.x + m * f.y || Math.min(g, y, E, b) >= _ * p.x + m * p.y)\n return !1;\n var S = v * (f.y - d.y), P = v * (d.x - f.x), T = S * s + P * h, x = S * u + P * h, w = S * s + P * l, O = S * u + P * l;\n return !(Math.max(T, x, w, O) <= S * f.x + P * f.y || Math.min(T, x, w, O) >= S * p.x + P * 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), ry = (\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), ny = (\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], l = this.points[a * 2 + 1], f = u > e != l > e && t < (h - s) * ((e - u) / (l - u)) + s;\n f && (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), iy = (\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], ha = [], Cl = [], Wn = Math.sign;\nfunction oy() {\n for (var r = 0; r < 16; r++) {\n var t = [];\n ha.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), Cl.push(u);\n }\n}\noy();\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 ha[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 ha[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 = Cl[St.inv(t)];\n i.tx = e, i.ty = n, r.append(i);\n }\n}, Ml = (\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, l = 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, l), this.maxY = Math.max(this.maxY, l);\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, l = t.tx, f = t.ty, c = this.minX, d = this.minY, p = this.maxX, v = this.maxY, _ = a * e + u * n + l, m = s * e + h * n + f;\n c = _ < c ? _ : c, d = m < d ? m : d, p = _ > p ? _ : p, v = m > v ? m : v, _ = a * i + u * n + l, m = s * i + h * n + f, c = _ < c ? _ : c, d = m < d ? m : d, p = _ > p ? _ : p, v = m > v ? m : v, _ = a * e + u * o + l, m = s * e + h * o + f, c = _ < c ? _ : c, d = m < d ? m : d, p = _ > p ? _ : p, v = m > v ? m : v, _ = a * i + u * o + l, m = s * i + h * o + f, c = _ < c ? _ : c, d = m < d ? m : d, p = _ > p ? _ : p, v = m > v ? m : 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], l = t[u + 1];\n i = h < i ? h : i, o = l < o ? l : o, a = h > a ? h : a, s = l > s ? l : 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, l = t.d, f = t.tx, c = t.ty, d = this.minX, p = this.minY, v = this.maxX, _ = this.maxY, m = n; m < i; m += 2) {\n var g = e[m], y = e[m + 1], E = s * g + h * y + f, b = l * y + u * g + c;\n d = Math.min(d, E - o), v = Math.max(v, E + o), p = Math.min(p, b - a), _ = Math.max(_, b + 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, l = this.maxY;\n this.minX = n < s ? n : s, this.minY = i < u ? i : u, this.maxX = o > h ? o : h, this.maxY = a > l ? a : l;\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, l = this.maxY;\n this.minX = n < s ? n : s, this.minY = i < u ? i : u, this.maxX = o > h ? o : h, this.maxY = a > l ? a : l;\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 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 ss(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 It = (\n /** @class */\n function(r) {\n ss(t, r);\n function t() {\n var e = r.call(this) || this;\n return e.tempDisplayObjectParent = null, e.transform = new Ml(), 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, l) {\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), l === void 0 && (l = 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 = l, 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 Dl()), 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 * ty;\n },\n set: function(e) {\n this.transform.rotation = e * ey;\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), Dl = (\n /** @class */\n function(r) {\n ss(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 ay(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 ss(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(ay), 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 Du = 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(Du).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(Du).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, l = h.name, f = h.items;\n this._aliasCount++;\n for (var c = 0, d = f.length; c < d; c++)\n f[c][l](t, e, n, i, o, a, s, u);\n return f === 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 vo = (\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 vo(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 vo(t, e, n));\n }, r.prototype.addOnce = function(t, e, n) {\n return n === void 0 && (n = Ce.NORMAL), this._addListener(new vo(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), sy = (\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 fa = [];\nfunction Fl(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 = fa.length - 1; i >= 0; --i) {\n var o = fa[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 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 xt(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 da = function() {\n return da = 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 }, da.apply(this, arguments);\n};\nfunction uy(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), hy = {\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, l = n.height, f = n.wrapMode, c = n.format, d = n.type, p = n.target, v = n.resolution, _ = n.resourceOptions;\n return e && !(e instanceof Tn) && (e = Fl(e, _), e.internal = !0), i.resolution = v || k.RESOLUTION, i.width = Math.round((h || 0) * i.resolution) / i.resolution, i.height = Math.round((l || 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 = f || k.WRAP_MODE, i._scaleMode = u !== void 0 ? u : k.SCALE_MODE, i.format = c || G.RGBA, i.type = d || H.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 && l > 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 = Ou(this.realWidth) && Ou(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 ? H.FLOAT : H.UNSIGNED_BYTE;\n return new t(a, Object.assign({}, hy, 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), Bl = (\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(Fl(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), ly = (\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 l = 0; l < a; l++) {\n var f = u[l];\n s[l] < f.dirtyId && (s[l] = f.dirtyId, f.valid && h.texSubImage3D(\n h.TEXTURE_2D_ARRAY,\n 0,\n 0,\n // xoffset\n 0,\n // yoffset\n l,\n // zoffset\n f.resource.width,\n f.resource.height,\n 1,\n n.format,\n i.type,\n f.resource.source\n ));\n }\n return !0;\n }, t;\n }(Bl)\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 = Qg(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), fy = (\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), cy = (\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 l = 0; l < t.SIDES; l++)\n i.items[l].target = or.TEXTURE_CUBE_MAP_POSITIVE_X + l;\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 }(Bl)\n), Nl = (\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), dy = (\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), py = (\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], l = h.src, f = h.mime;\n l = l || e[s];\n var c = l.split(\"?\").shift().toLowerCase(), d = c.slice(c.lastIndexOf(\".\") + 1);\n f = f || t.MIME_TYPES[d] || \"video/\" + d, u.src = l, u.type = f, 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), vy = (\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);\nfa.push(Nl, vy, fy, py, dy, Cn, cy, ly);\nvar _y = (\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), pa = (\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 _y(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: H.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), Ll = (\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 pa(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), Ul = (\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), Fu = new Ul();\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 = Fu, 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 === Fu && (this._uvs = new Ul()), 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 Nl && (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\", l = \"X: \" + n + \" + \" + o + \" = \" + (n + o) + \" > \" + this.baseTexture.width, f = \"Y: \" + i + \" + \" + a + \" = \" + (i + a) + \" > \" + this.baseTexture.height;\n throw new Error(\"Texture Error: frame does not fit inside the base Texture dimensions: \" + (l + \" \" + h + \" \" + f));\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 Ll(e));\n }, t;\n }(J)\n), my = (\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 Ll(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), Bu = (\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 = H.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), gy = 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 = gy++, 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), yy = {\n Float32Array,\n Uint32Array,\n Int32Array,\n Uint8Array\n};\nfunction by(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], l = r[o], f = Il(l);\n i[f] || (i[f] = new yy[f](a)), s = i[f];\n for (var c = 0; c < l.length; c++) {\n var d = (c / h | 0) * n + u, p = c % h;\n s[d + p] = l[c];\n }\n u += h;\n }\n return new Float32Array(a);\n}\nvar Nu = { 5126: 4, 5123: 2, 5121: 1 }, xy = 0, Ey = {\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 = xy++, 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 l = 0; l < h.length; l++)\n this.addAttribute(h[l], e, n, i, o);\n return this;\n }\n var f = this.buffers.indexOf(e);\n return f === -1 && (this.buffers.push(e), f = this.buffers.length - 1), this.attributes[t] = new Bu(f, 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 * Nu[o.type] / 4), o.buffer = 0;\n }\n for (n.data = by(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 Bu(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 Ey[Il(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, l = 0, f = 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 && (l += d.size * Nu[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 + f] += h;\n h += t[s].buffers[c].data.length / l, f += p.length;\n }\n }\n return e;\n }, r;\n }()\n), Ty = (\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), Gl = (\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), wy = 0, ur = (\n /** @class */\n function() {\n function r(t, e, n) {\n this.group = !0, this.syncUniforms = {}, this.dirtyId = 0, this.id = wy++, 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), Sy = (\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()], _o = new Dt(), Ay = (\n /** @class */\n function() {\n function r(t) {\n this.renderer = t, this.defaultFilterStack = [{}], this.texturePool = new my(), this.texturePool.setScreenSize(t.view), this.statePool = [], this.quad = new Ty(), this.quadUv = new Gl(), 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 Sy(), u = this.renderer.renderTexture, h = e[0].resolution, l = e[0].multisample, f = 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), l = Math.min(l, v.multisample), f = this.useMaxPadding ? Math.max(f, v.padding) : f + 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 = l, s.legacy = d, s.target = t, s.sourceFrame.copyFrom(t.filterArea || t.getBounds(!0)), s.sourceFrame.pad(f);\n var _ = this.tempRect.copyFrom(u.sourceFrame);\n o.projection.transform && this.transformAABB(_o.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, l), s.filters = e, s.destinationFrame.width = s.renderTexture.width, s.destinationFrame.height = s.renderTexture.height;\n var m = this.tempRect;\n m.x = 0, m.y = 0, m.width = s.sourceFrame.width, m.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, m), 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 l = e.renderTexture, f = this.getOptimalFilterTexture(l.width, l.height, e.resolution);\n f.filterFrame = l.filterFrame;\n var c = 0;\n for (c = 0; c < n.length - 1; ++c) {\n c === 1 && e.multisample > 1 && (f = this.getOptimalFilterTexture(l.width, l.height, e.resolution), f.filterFrame = l.filterFrame), n[c].apply(this, l, f, ae.CLEAR, e);\n var d = l;\n l = f, f = d;\n }\n n[c].apply(this, l, h.renderTexture, ae.BLEND, e), c > 1 && e.multisample > 1 && this.returnFilterTexture(e.renderTexture), this.returnFilterTexture(l), this.returnFilterTexture(f);\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), l = Math.max(n.y, i.y, o.y, a.y);\n e.x = s, e.y = u, e.width = h - s, e.height = l - 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 ? _o.copyFrom(o) : _o.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), Py = (\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 l = o[h], f = l._batchLocation;\n if (f >= 0 && f < i && e[f] === l) {\n a[h] = f;\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, l._batchLocation = u, e[u] = l;\n break;\n }\n }\n }, r.prototype.destroy = function() {\n this.renderer = null;\n }, r;\n }()\n), Lu = 0, Oy = (\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 = Lu++;\n }, r.prototype.initFromContext = function(t) {\n this.gl = t, this.validateContext(t), this.renderer.gl = t, this.renderer.CONTEXT_UID = Lu++, 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), Ry = (\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), Iy = new ht(), Cy = (\n /** @class */\n function() {\n function r(t) {\n this.renderer = t, this.managedFramebuffers = [], this.unknownFramebuffer = new pa(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, l = u / e.width;\n this.setViewport(e.x * l, e.y * l, 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 Ry(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], l = h.parentTextureArray || h;\n this.renderer.texture.bind(l, 0), !(u === 0 && i.msaaBuffer) && (n.framebufferTexture2D(n.FRAMEBUFFER, n.COLOR_ATTACHMENT0 + u, h.target, l._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 f = this.writeDepthTexture;\n if (f) {\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 l = o.colorTextures[0];\n if (!l)\n return;\n h.blitFramebuffer || (h.blitFramebuffer = new pa(o.width, o.height), h.blitFramebuffer.addColorTexture(0, l)), t = h.blitFramebuffer, t.colorTextures[0] !== l && (t.colorTextures[0] = l, 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 = Iy, e.width = o.width, e.height = o.height), n || (n = e);\n var f = 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, f ? 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), mo = { 5126: 4, 5123: 2, 5121: 1 }, My = (\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], l = h[u];\n if (l)\n return h[s.id] = l, l;\n var f = t.buffers, c = t.attributes, d = {}, p = {};\n for (var v in f)\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 * mo[c[v].type];\n for (var v in c) {\n var _ = c[v], m = _.size;\n _.stride === void 0 && (d[_.buffer] === m * mo[_.type] ? _.stride = 0 : _.stride = d[_.buffer]), _.start === void 0 && (_.start = p[_.buffer], p[_.buffer] += m * mo[_.type]);\n }\n l = i.createVertexArray(), i.bindVertexArray(l);\n for (var g = 0; g < f.length; g++) {\n var y = f[g];\n a.bind(y), n && y._glBuffers[o].refCount++;\n }\n return this.activateVao(t, s), this._activeVao = l, h[s.id] = l, h[u] = l, l;\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 l in i)\n if (l[0] === \"g\") {\n var f = i[l];\n this._activeVao === f && this.unbind(), o.deleteVertexArray(f);\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 l = s[h], f = a[l.buffer], c = f._glBuffers[i];\n if (e.attributeData[h]) {\n u !== c && (o.bind(f), u = c);\n var d = e.attributeData[h].location;\n if (n.enableVertexAttribArray(d), n.vertexAttribPointer(d, l.size, l.type || n.FLOAT, l.normalized, l.stride, l.start), l.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), Dy = (\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 Uu(r, t, e) {\n var n = r.createShader(t);\n return r.shaderSource(n, e), r.compileShader(n), n;\n}\nfunction Gu(r, t) {\n var e = r.getShaderSource(t).split(`\n`).map(function(h, l) {\n return l + \": \" + 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 Fy(r, t, e, n) {\n r.getProgramParameter(t, r.LINK_STATUS) || (r.getShaderParameter(e, r.COMPILE_STATUS) || Gu(r, e), r.getShaderParameter(n, r.COMPILE_STATUS) || Gu(r, n), console.error(\"PixiJS Error: Could not initialize shader.\"), r.getProgramInfoLog(t) !== \"\" && console.warn(\"PixiJS Warning: gl.getProgramInfoLog()\", r.getProgramInfoLog(t)));\n}\nfunction go(r) {\n for (var t = new Array(r), e = 0; e < t.length; e++)\n t[e] = !1;\n return t;\n}\nfunction kl(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 go(2 * t);\n case \"bvec3\":\n return go(3 * t);\n case \"bvec4\":\n return go(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 Xl = {}, Qr = Xl;\nfunction By() {\n if (Qr === Xl || 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 Ny() {\n if (!Kn) {\n Kn = Jt.MEDIUM;\n var r = By();\n if (r && r.getShaderPrecisionFormat) {\n var t = r.getShaderPrecisionFormat(r.FRAGMENT_SHADER, r.HIGH_FLOAT);\n Kn = t.precision ? Jt.HIGH : Jt.MEDIUM;\n }\n }\n return Kn;\n}\nfunction ku(r, t, e) {\n if (r.substring(0, 9) !== \"precision\") {\n var n = t;\n return t === Jt.HIGH && e !== Jt.HIGH && (n = Jt.MEDIUM), \"precision \" + n + ` float;\n` + r;\n } else if (e !== Jt.HIGH && r.substring(0, 15) === \"precision highp\")\n return r.replace(\"precision highp\", \"precision mediump\");\n return r;\n}\nvar Ly = {\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 Hl(r) {\n return Ly[r];\n}\nvar Zn = null, Xu = {\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 jl(r, t) {\n if (!Zn) {\n var e = Object.keys(Xu);\n Zn = {};\n for (var n = 0; n < e.length; ++n) {\n var i = e[n];\n Zn[r[i]] = Xu[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], Uy = {\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}, Gy = {\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 ky(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 ? Uy : Gy, l = h[o.type].replace(\"location\", 'ud[\"' + i + '\"].location');\n n.push(`\n cu = ud[\"` + i + `\"];\n cv = cu.value;\n v = uv[\"` + i + `\"];\n ` + l + \";\");\n }\n }\n return new Function(\"ud\", \"uv\", \"renderer\", \"syncData\", n.join(`\n`));\n}\nvar Xy = [\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 Hy(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 jy(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 = Xy.replace(/%forloop%/gi, Hy(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 Vy() {\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 Yy = `varying vec2 vTextureCoord;\n\nuniform sampler2D uSampler;\n\nvoid main(void){\n gl_FragColor *= texture2D(uSampler, vTextureCoord);\n}`, zy = `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`, Wy = 0, Jn = {}, Dn = (\n /** @class */\n function() {\n function r(t, e, n) {\n n === void 0 && (n = \"pixi-shader\"), this.id = Wy++, 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 = ku(this.vertexSrc, k.PRECISION_VERTEX, Jt.HIGH), this.fragmentSrc = ku(this.fragmentSrc, k.PRECISION_FRAGMENT, Ny())), 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 zy;\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 Yy;\n },\n enumerable: !1,\n configurable: !0\n }), r.from = function(t, e, n) {\n var i = t + e, o = Cu[i];\n return o || (Cu[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), yo = 0, bo = 1, xo = 2, Eo = 3, To = 4, wo = 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 << 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, \"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 << 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, \"culling\", {\n /**\n * Activates culling of polygons.\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, \"depthTest\", {\n /**\n * Activates depth comparisons and updates to the depth buffer.\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, \"depthMask\", {\n /**\n * Enables or disables writing to the depth buffer.\n * @default true\n */\n get: function() {\n return !!(this.data & 1 << wo);\n },\n set: function(t) {\n !!(this.data & 1 << wo) !== t && (this.data ^= 1 << wo);\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 << 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, \"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), qy = `varying vec2 vTextureCoord;\n\nuniform sampler2D uSampler;\n\nvoid main(void){\n gl_FragColor = texture2D(uSampler, vTextureCoord);\n}\n`, $y = `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`, Ye = (\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 $y;\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 qy;\n },\n enumerable: !1,\n configurable: !0\n }), t;\n }(Ue)\n), Ky = `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`, Zy = `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(), us = (\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), Jy = (\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 || Ky, n || Zy, 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 us(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 }(Ye)\n), Qy = (\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 Dy();\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 Jy()]));\n var s = this.renderer, u = s.renderTexture, h, l;\n if (u.current) {\n var f = u.current;\n h = t.resolution || f.resolution, l = (e = t.multisample) !== null && e !== void 0 ? e : f.multisample;\n } else\n h = t.resolution || s.resolution, l = (n = t.multisample) !== null && n !== void 0 ? n : s.multisample;\n a[0].resolution = h, a[0].multisample = l, 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), Vl = (\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), ju = new Dt(), Vu = [], t0 = (\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 = Vu.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 ? ju.copyFrom(a) : ju.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 && Vu.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 }(Vl)\n), e0 = (\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 }(Vl)\n), r0 = (\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(), n0 = (\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, l = a.height;\n s = Math.round(s), u = Math.round(u), h = Math.round(h), l = Math.round(l), this.renderer.gl.enable(this.renderer.gl.SCISSOR_TEST), this.renderer.gl.scissor(s, u, h, l);\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 i0(r, t, e, n, i) {\n e.buffer.update(i);\n}\nvar o0 = {\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}, Yl = {\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 a0(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 = Yl[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 s0(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 u0(r, t) {\n if (!r.autoManage)\n return { size: 0, syncFunc: i0 };\n for (var e = s0(r.uniforms, t), n = a0(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], l = u.data.name, f = !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)), f = !0;\n break;\n }\n }\n if (!f)\n if (u.data.size > 1) {\n var p = Hl(u.data.type), v = Math.max(Yl[u.data.type] / 16, 1), _ = p / v, m = (4 - _ % 4) % 4;\n a.push(`\n cv = ud.` + l + `.value;\n v = uv.` + l + `;\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 += ` + m + `;\n }\n\n `);\n } else {\n var g = o0[u.data.type];\n a.push(`\n cv = ud.` + l + `.value;\n v = uv.` + l + `;\n offset = ` + u.offset / 4 + `;\n ` + g + `;\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 h0 = (\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 l0(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 = jl(t, o.type), s = {\n type: a,\n name: o.name,\n size: Hl(a),\n location: t.getAttribLocation(r, o.name)\n };\n e[o.name] = s;\n }\n }\n return e;\n}\nfunction f0(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 = jl(t, o.type);\n e[a] = {\n name: a,\n index: i,\n type: u,\n size: o.size,\n isArray: s,\n value: kl(u, o.size)\n };\n }\n return e;\n}\nfunction c0(r, t) {\n var e = Uu(r, r.VERTEX_SHADER, t.vertexSrc), n = Uu(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) || Fy(r, i, e, n), t.attributeData = l0(i, r), t.uniformData = f0(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(l, f) {\n return l > f ? 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: kl(u.type, u.size)\n };\n }\n var h = new h0(i, s);\n return h;\n}\nvar d0 = 0, Qn = { textureCount: 0, uboCount: 0 }, p0 = (\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 = d0++;\n }\n return r.prototype.systemCheck = function() {\n if (!Vy())\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] = ky(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] = u0(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 = c0(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 v0(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 _0 = 0, m0 = 1, g0 = 2, y0 = 3, b0 = 4, x0 = 5, E0 = (\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[_0] = this.setBlend, this.map[m0] = this.setOffset, this.map[g0] = this.setCullFace, this.map[y0] = this.setDepthTest, this.map[b0] = this.setFrontFace, this.map[x0] = 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 = v0(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), T0 = (\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 w0(r) {\n var t, e, n, i, o, a, s, u, h, l, f, c, d, p, v, _, m, g, y, E, b, S, P;\n return \"WebGL2RenderingContext\" in globalThis && r instanceof globalThis.WebGL2RenderingContext ? P = (t = {}, t[H.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[H.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[H.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[H.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[H.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[H.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[H.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[H.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[H.UNSIGNED_SHORT_5_6_5] = (l = {}, l[G.RGB] = r.RGB565, l), t[H.UNSIGNED_SHORT_4_4_4_4] = (f = {}, f[G.RGBA] = r.RGBA4, f), t[H.UNSIGNED_SHORT_5_5_5_1] = (c = {}, c[G.RGBA] = r.RGB5_A1, c), t[H.UNSIGNED_INT_2_10_10_10_REV] = (d = {}, d[G.RGBA] = r.RGB10_A2, d[G.RGBA_INTEGER] = r.RGB10_A2UI, d), t[H.UNSIGNED_INT_10F_11F_11F_REV] = (p = {}, p[G.RGB] = r.R11F_G11F_B10F, p), t[H.UNSIGNED_INT_5_9_9_9_REV] = (v = {}, v[G.RGB] = r.RGB9_E5, v), t[H.UNSIGNED_INT_24_8] = (_ = {}, _[G.DEPTH_STENCIL] = r.DEPTH24_STENCIL8, _), t[H.FLOAT_32_UNSIGNED_INT_24_8_REV] = (m = {}, m[G.DEPTH_STENCIL] = r.DEPTH32F_STENCIL8, m), t) : P = (g = {}, g[H.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), g[H.UNSIGNED_SHORT_5_6_5] = (E = {}, E[G.RGB] = r.RGB, E), g[H.UNSIGNED_SHORT_4_4_4_4] = (b = {}, b[G.RGBA] = r.RGBA, b), g[H.UNSIGNED_SHORT_5_5_5_1] = (S = {}, S[G.RGBA] = r.RGBA, S), g), P;\n}\nvar So = (\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 = H.UNSIGNED_BYTE, this.internalFormat = G.RGBA, this.samplerType = 0;\n }\n return r;\n }()\n), S0 = (\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 = w0(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 So(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 So(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 So(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 === H.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), Ao = new Dt(), A0 = (\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 = uy(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(da({ width: o.width, height: o.height }, s));\n return Ao.tx = -o.x, Ao.ty = -o.y, this.render(e, {\n renderTexture: u,\n clear: !1,\n transform: Ao,\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 = Al(e), Vr(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), P0 = (\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), O0 = (\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 P0(i.createBuffer()), this.managedBuffers[t.id] = t, t.disposeRunner.add(this), t._glBuffers[n];\n }, r;\n }()\n), zl = (\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(Qy, \"mask\").addSystem(Oy, \"context\").addSystem(E0, \"state\").addSystem(p0, \"shader\").addSystem(S0, \"texture\").addSystem(O0, \"buffer\").addSystem(My, \"geometry\").addSystem(Cy, \"framebuffer\").addSystem(t0, \"scissor\").addSystem(e0, \"stencil\").addSystem(r0, \"projection\").addSystem(T0, \"textureGC\").addSystem(Ay, \"filter\").addSystem(n0, \"renderTexture\").addSystem(Py, \"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, o_(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 (a_())\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 }(A0)\n);\nMe.handleByMap(gt.RendererPlugin, zl.__plugins);\nfunction Wl(r) {\n return zl.create(r);\n}\nvar R0 = `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}`, I0 = `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`, C0 = R0, ql = I0, va = (\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), _a = (\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), ma = (\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), M0 = (\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 = jy(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 va());\n for (; n.length < o; )\n n.push(new _a());\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, l = 0, f = 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 && (f.count >= i && (a.boundArray(f, s, h, i), this.buildDrawCalls(f, c, d), c = d, f = o[++l], ++h), p._batchEnabled = h, p.touched = u, f.elements[f.count++] = p);\n }\n f.count > 0 && (a.boundArray(f, s, h, i), this.buildDrawCalls(f, c, this._bufferSize), ++l, ++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, l = t._drawCallPool, f = this._dcIndex, c = this._aIndex, d = this._iIndex, p = l[f];\n p.start = this._iIndex, p.texArray = e;\n for (var v = n; v < i; ++v) {\n var _ = a[v], m = _._texture.baseTexture, g = Pl[m.alphaMode ? 1 : 0][_.blendMode];\n a[v] = null, n < v && p.blend !== g && (p.size = d - p.start, n = v, p = l[++f], p.texArray = e, p.start = d), this.packInterleavedGeometry(_, s, u, c, d), c += _.vertexData.length / 2 * h, d += _.indices.length, p.blend = g;\n }\n n < i && (p.size = d - p.start, ++f), this._dcIndex = f, 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], l = h.texArray, f = h.type, c = h.size, d = h.start, p = h.blend;\n s !== l && (s = l, this.bindAndClearTexArray(l)), this.state.blendMode = p, o.set(this.state), i.drawElements(f, 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 = Ru(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 ma(o * this.vertexSize * 4)), a;\n }, t.prototype.getIndexBuffer = function(e) {\n var n = Mi(Math.ceil(e / 12)), i = Ru(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, l = e.uvs, f = e.indices, c = e.vertexData, d = e._texture.baseTexture._batchLocation, p = Math.min(e.worldAlpha, 1), v = p < 1 && e._texture.baseTexture.alphaMode ? as(e._tintRGB, p) : e._tintRGB + (p * 255 << 24), _ = 0; _ < c.length; _ += 2)\n u[o++] = c[_], u[o++] = c[_ + 1], u[o++] = l[_], u[o++] = l[_ + 1], s[o++] = v, u[o++] = d;\n for (var _ = 0; _ < f.length; _++)\n i[a++] = h + f[_];\n }, t._drawCallPool = [], t._textureArrayPool = [], t;\n }(ji)\n), D0 = (\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), $l = (\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, H.FLOAT).addAttribute(\"aTextureCoord\", n._buffer, 2, !1, H.FLOAT).addAttribute(\"aColor\", n._buffer, 4, !0, H.UNSIGNED_BYTE).addAttribute(\"aTextureId\", n._buffer, 1, !0, H.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`, zu = `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`, F0 = (\n /** @class */\n function() {\n function r() {\n }\n return r.create = function(t) {\n var e = Object.assign({\n vertex: Yu,\n fragment: zu,\n geometryClass: $l,\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 l = s.call(this, h) || this;\n return l.shaderGenerator = new D0(n, i), l.geometryClass = a, l.vertexSize = o, l;\n }\n return u;\n }(M0)\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 zu;\n },\n enumerable: !1,\n configurable: !0\n }), r;\n }()\n), Kl = F0.create();\nObject.assign(Kl, {\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 B0 = {\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(B0);\nvar N0 = 9, ti = 100, L0 = 0, U0 = 0, Wu = 2, qu = 1, G0 = -1e3, k0 = -1e3, X0 = 2, H0 = (\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 = L0 + \"px\", e.style.left = U0 + \"px\", e.style.zIndex = Wu.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 = qu + \"px\", e.style.height = qu + \"px\", e.style.position = \"absolute\", e.style.top = G0 + \"px\", e.style.left = k0 + \"px\", e.style.zIndex = X0.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, l = s.resolution, f = o / u * l, c = a / h * l, 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, m = v.worldTransform;\n v.hitArea ? (d.style.left = (m.tx + _.x * m.a) * f + \"px\", d.style.top = (m.ty + _.y * m.d) * c + \"px\", d.style.width = _.width * m.a * f + \"px\", d.style.height = _.height * m.d * c + \"px\") : (_ = v.getBounds(), this.capHitArea(_), d.style.left = _.x * f + \"px\", d.style.top = _.y * c + \"px\", d.style.width = _.width * f + \"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 = Wu.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 === N0 && 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 $u = (\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 ga = function(r, t) {\n return ga = 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 }, ga(r, t);\n};\nfunction j0(r, t) {\n ga(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 V0 = (\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), Po = (\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), Y0 = (\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, l = !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, l = !1)), h = !1;\n else if (e._mask && i) {\n var f = e._mask.isMaskData ? e._mask.maskObject : e._mask;\n f && !(!((a = f.containsPoint) === null || a === void 0) && a.call(f, s)) && (i = !1);\n }\n if (l && 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), z0 = {\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(z0);\nvar ei = 1, ri = {\n target: null,\n data: {\n global: null\n }\n}, W0 = (\n /** @class */\n function(r) {\n j0(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 $u(), i.mouse.identifier = ei, i.mouse.global.set(-999999), i.activeInteractionData = {}, i.activeInteractionData[ei] = i.mouse, i.interactionDataPool = [], i.eventData = new V0(), 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 Y0(), i._tempDisplayObject = new Dl(), 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 l = s[h], f = l.displayObject, c = l.eventString, d = l.eventData;\n d.stopsPropagatingAt === f && (d.stopPropagationHint = !0), this.dispatchEvent(f, 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 l = s.button === 2;\n this.emit(l ? \"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 Po(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 l = o[h], f = this.getInteractionDataForPointerId(l), c = this.configureInteractionEventForDOMEvent(this.eventData, l, f);\n if (c.data.originalEvent = e, this.processInteractive(c, this.lastObjectRendered, i, n || !u), this.emit(n ? \"pointercancel\" : \"pointerup\" + u, c), l.pointerType === \"mouse\" || l.pointerType === \"pen\") {\n var d = l.button === 2;\n this.emit(d ? \"rightup\" + u : \"mouseup\" + u, c);\n } else\n l.pointerType === \"touch\" && (this.emit(n ? \"touchcancel\" : \"touchend\" + u, c), this.releaseInteractionDataForPointerId(l.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\", l = !1;\n if (h) {\n var f = o.button === 2, c = Po.FLAGS, d = f ? c.RIGHT_DOWN : c.LEFT_DOWN, p = s !== void 0 && s.flags & d;\n i ? (this.dispatchEvent(n, f ? \"rightup\" : \"mouseup\", e), p && (this.dispatchEvent(n, f ? \"rightclick\" : \"click\", e), l = !0)) : p && this.dispatchEvent(n, f ? \"rightupoutside\" : \"mouseupoutside\", e), s && (f ? s.rightDown = !1 : s.leftDown = !1);\n }\n i ? (this.dispatchEvent(n, \"pointerup\", e), u && this.dispatchEvent(n, \"touchend\", e), s && ((!h || l) && 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 Po(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 $u(), 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 q0 = new ht(), $0 = 4, K0 = (\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 Mu(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 l = new Mu(u.width, u.height, 1);\n l.context.scale(1, -1), l.context.drawImage(u.canvas, 0, -a), u.destroy(), u = l;\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 = q0, e.width = n.width, e.height = n.height), o = !0, n.renderTexture.bind(null));\n var l = Math.round(e.width * i), f = Math.round(e.height * i), c = new Uint8Array($0 * l * f), d = n.gl;\n return d.readPixels(Math.round(e.x * i), Math.round(e.y * i), l, f, d.RGBA, d.UNSIGNED_BYTE, c), s && a.destroy(!0), { pixels: c, width: l, height: f, 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 Ku(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 Ku(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 Ku(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 Zl(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 Oo, ii = null, Z0 = 0, Zu = 200, J0 = 204, Q0 = 1223, tb = 2;\nfunction Ju() {\n}\nfunction Qu(r, t, e) {\n t && t.indexOf(\".\") === 0 && (t = t.substring(1)), t && (r[t] = e);\n}\nfunction Ro(r) {\n return r.toString().replace(\"object \", \"\");\n}\nvar Rt = (\n /** @class */\n function() {\n function r(t, e, n) {\n if (this._dequeue = Ju, 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 = Ju, 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 Qu(r._loadTypeMap, t, e);\n }, r.setExtensionXhrType = function(t, e) {\n Qu(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 Oo > \"u\" && (Oo = !!(globalThis.XDomainRequest && !(\"withCredentials\" in new XMLHttpRequest()))), Oo && 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(Ro(t) + \" Request failed. Status: \" + t.status + ', text: \"' + t.statusText + '\"');\n }, r.prototype._xhrOnTimeout = function() {\n var t = this.xhr;\n this.abort(Ro(t) + \" Request timed out.\");\n }, r.prototype._xhrOnAbort = function() {\n var t = this.xhr;\n this.abort(Ro(t) + \" Request was aborted by the user.\");\n }, r.prototype._xhrOnLoad = function() {\n var t = this.xhr, e = \"\", n = typeof t.status > \"u\" ? Zu : t.status;\n (t.responseType === \"\" || t.responseType === \"text\" || typeof t.responseType > \"u\") && (e = t.responseText), n === Z0 && (e.length > 0 || t.responseType === r.XHR_RESPONSE_TYPE.BUFFER) ? n = Zu : n === Q0 && (n = J0);\n var i = n / 100 | 0;\n if (i === tb)\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 = Zl(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 eb(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 rb = (\n /** @class */\n function() {\n function r(t, e) {\n this.data = t, this.callback = e;\n }\n return r;\n }()\n), Io = (\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 rb(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, eb(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), Co = 100, nb = /(#[\\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 = Io.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 = Co / 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 = Zl(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 = nb.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, Io.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 = Co, 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(), Io.eachSeries(this._afterMiddleware, function(n, i) {\n n.call(e, t, i);\n }, function() {\n t.onAfterMiddleware.dispatch(t), e.progress = Math.min(Co, 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 ib = (\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), ob = (\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), ab = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\nfunction sb(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 += ab.charAt(i[o]);\n }\n return t;\n}\nfunction ub(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,\" + sb(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 hb = (\n /** @class */\n function() {\n function r() {\n }\n return r.extension = gt.Loader, r.use = ub, r;\n }()\n);\nMe.add(ob, hb);\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 ya = function(r, t) {\n return ya = 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 }, ya(r, t);\n};\nfunction Jl(r, t) {\n ya(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 lb(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(l) {\n try {\n h(n.next(l));\n } catch (f) {\n a(f);\n }\n }\n function u(l) {\n try {\n h(n.throw(l));\n } catch (f) {\n a(f);\n }\n }\n function h(l) {\n l.done ? o(l.value) : i(l.value).then(s, u);\n }\n h((n = n.apply(r, t || [])).next());\n });\n}\nfunction fb(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(l) {\n return u([h, l]);\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 (l) {\n h = [6, l], 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 cb = (\n /** @class */\n function(r) {\n Jl(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 ma(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 lb(this, void 0, Promise, function() {\n var e, n, i;\n return fb(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 ma(i), this.loaded = !0, this.onBlobLoaded(i), this.update(), [2, this];\n }\n });\n });\n }, t;\n }(Cn)\n), ba = (\n /** @class */\n function(r) {\n Jl(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], l = h.levelID, f = h.levelWidth, c = h.levelHeight, d = h.levelBuffer;\n o.compressedTexImage2D(o.TEXTURE_2D, l, this.format, f, 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), l = e.byteOffset, f = s, c = u, d = f + 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 ? f : d,\n levelHeight: i > 1 ? c : p,\n levelBuffer: new Uint8Array(e.buffer, l, v)\n }, l += v, f = f >> 1 || 1, c = c >> 1 || 1, d = f + o - 1 & ~(o - 1), p = c + a - 1 & ~(a - 1), v = d * p * Li[n];\n return h;\n }, t;\n }(cb)\n), db = (\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 l = o[u], f = l.src, c = l.format;\n if (c || (s = f), r.textureFormats[c]) {\n a = f;\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 m = _.texture, g = m === void 0 ? null : m, y = _.textures, E = y === void 0 ? {} : y;\n Object.assign(t, { texture: g, textures: E }), 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 Ql(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, Mo = 4, oi = 124, pb = 32, th = 20, vb = 542327876, ai = {\n SIZE: 1,\n FLAGS: 2,\n HEIGHT: 3,\n WIDTH: 4,\n MIPMAP_COUNT: 7,\n PIXEL_FORMAT: 19\n}, _b = {\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 xa;\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})(xa || (xa = {}));\nvar mb = 1, gb = 2, yb = 4, bb = 64, xb = 512, Eb = 131072, Tb = 827611204, wb = 861165636, Sb = 894720068, Ab = 808540228, Pb = 4, Ob = (rn = {}, rn[Tb] = rt.COMPRESSED_RGBA_S3TC_DXT1_EXT, rn[wb] = rt.COMPRESSED_RGBA_S3TC_DXT3_EXT, rn[Sb] = rt.COMPRESSED_RGBA_S3TC_DXT5_EXT, rn), Rb = (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 Ib(r) {\n var t = new Uint32Array(r), e = t[0];\n if (e !== vb)\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, pb / Uint32Array.BYTES_PER_ELEMENT), u = s[mb];\n if (u & yb) {\n var h = s[_b.FOURCC];\n if (h !== Ab) {\n var l = Ob[h], f = Mo + oi, c = new Uint8Array(r, f), d = new ba(c, {\n format: l,\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 = Mo + oi, v = new Uint32Array(t.buffer, p, th / Uint32Array.BYTES_PER_ELEMENT), _ = v[si.DXGI_FORMAT], m = v[si.RESOURCE_DIMENSION], g = v[si.MISC_FLAG], y = v[si.ARRAY_SIZE], E = Rb[_];\n if (E === void 0)\n throw new Error(\"DDSParser cannot parse texture data with DXGI format \" + _);\n if (g === Pb)\n throw new Error(\"DDSParser does not support cubemap textures\");\n if (m === xa.DDS_DIMENSION_TEXTURE3D)\n throw new Error(\"DDSParser does not supported 3D texture data\");\n var b = new Array(), S = Mo + oi + th;\n if (y === 1)\n b.push(new Uint8Array(r, S));\n else {\n for (var P = Li[E], T = 0, x = o, w = i, O = 0; O < a; O++) {\n var I = Math.max(1, x + 3 & -4), C = Math.max(1, w + 3 & -4), U = I * C * P;\n T += U, x = x >>> 1, w = w >>> 1;\n }\n for (var B = S, O = 0; O < y; O++)\n b.push(new Uint8Array(r, B, T)), B += T;\n }\n return b.map(function(N) {\n return new ba(N, {\n format: E,\n width: o,\n height: i,\n levels: a\n });\n });\n }\n throw u & bb ? new Error(\"DDSParser does not support uncompressed texture data.\") : u & xb ? new Error(\"DDSParser does not supported YUV uncompressed texture data.\") : u & Eb ? new Error(\"DDSParser does not support single-channel (lumninance) texture data!\") : u & gb ? 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, eh = [171, 75, 84, 88, 32, 49, 49, 187, 13, 10, 26, 10], Cb = 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}, Ea = 64, rh = (De = {}, De[H.UNSIGNED_BYTE] = 1, De[H.UNSIGNED_SHORT] = 2, De[H.INT] = 4, De[H.UNSIGNED_INT] = 4, De[H.FLOAT] = 4, De[H.HALF_FLOAT] = 8, De), Mb = (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), Db = (nn = {}, nn[H.UNSIGNED_SHORT_4_4_4_4] = 2, nn[H.UNSIGNED_SHORT_5_5_5_1] = 2, nn[H.UNSIGNED_SHORT_5_6_5] = 2, nn);\nfunction Fb(r, t, e) {\n e === void 0 && (e = !1);\n var n = new DataView(t);\n if (!Bb(r, n))\n return null;\n var i = n.getUint32(re.ENDIANNESS, !0) === Cb, 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, l = n.getUint32(re.PIXEL_DEPTH, i) || 1, f = 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 || l !== 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 (f !== 1)\n throw new Error(\"WebGL does not support array textures\");\n var v = 4, _ = 4, m = u + 3 & -4, g = h + 3 & -4, y = new Array(f), E = u * h;\n o === 0 && (E = m * g);\n var b;\n if (o !== 0 ? rh[o] ? b = rh[o] * Mb[a] : b = Db[o] : b = Li[s], b === void 0)\n throw new Error(\"Unable to resolve the pixel format stored in the *.ktx file!\");\n for (var S = e ? Lb(n, p, i) : null, P = E * b, T = P, x = u, w = h, O = m, I = g, C = Ea + p, U = 0; U < d; U++) {\n for (var B = n.getUint32(C, i), N = C + 4, Y = 0; Y < f; Y++) {\n var $ = y[Y];\n $ || ($ = y[Y] = new Array(d)), $[U] = {\n levelID: U,\n // don't align mipWidth when texture not compressed! (glType not zero)\n levelWidth: d > 1 || o !== 0 ? x : O,\n levelHeight: d > 1 || o !== 0 ? w : I,\n levelBuffer: new Uint8Array(t, N, T)\n }, N += T;\n }\n C += B + 4, C = C % 4 !== 0 ? C + 4 - C % 4 : C, x = x >> 1 || 1, w = w >> 1 || 1, O = x + v - 1 & ~(v - 1), I = w + _ - 1 & ~(_ - 1), T = O * I * b;\n }\n return o !== 0 ? {\n uncompressed: y.map(function(Q) {\n var L = Q[0].levelBuffer, F = !1;\n return o === H.FLOAT ? L = new Float32Array(Q[0].levelBuffer.buffer, Q[0].levelBuffer.byteOffset, Q[0].levelBuffer.byteLength / 4) : o === H.UNSIGNED_INT ? (F = !0, L = new Uint32Array(Q[0].levelBuffer.buffer, Q[0].levelBuffer.byteOffset, Q[0].levelBuffer.byteLength / 4)) : o === H.INT && (F = !0, L = new Int32Array(Q[0].levelBuffer.buffer, Q[0].levelBuffer.byteOffset, Q[0].levelBuffer.byteLength / 4)), {\n resource: new Cn(L, {\n width: Q[0].levelWidth,\n height: Q[0].levelHeight\n }),\n type: o,\n format: F ? Nb(a) : a\n };\n }),\n kvData: S\n } : {\n compressed: y.map(function(Q) {\n return new ba(null, {\n format: s,\n width: u,\n height: h,\n levels: d,\n levelBuffers: Q\n });\n }),\n kvData: S\n };\n}\nfunction Bb(r, t) {\n for (var e = 0; e < eh.length; e++)\n if (t.getUint8(e) !== eh[e])\n return console.error(r + \" is not a valid *.ktx file!\"), !1;\n return !0;\n}\nfunction Nb(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 Lb(r, t, e) {\n for (var n = /* @__PURE__ */ new Map(), i = 0; i < t; ) {\n var o = r.getUint32(Ea + i, e), a = Ea + 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)), l = new DataView(r.buffer, a + u + 1, o - u - 1);\n n.set(h, l), i += 4 + o + s;\n }\n return n;\n}\nRt.setExtensionXhrType(\"dds\", Rt.XHR_RESPONSE_TYPE.BUFFER);\nvar Ub = (\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, Ql(t.name || t.url, Ib(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 Gb = (\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 = Fb(n, t.data, this.loadKeyValueData), o = i.compressed, a = i.uncompressed, s = i.kvData;\n if (o) {\n var u = Ql(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 l = {};\n a.forEach(function(f, c) {\n var d = new J(new ut(f.resource, {\n mipmap: le.OFF,\n alphaMode: fe.NO_PREMULTIPLIED_ALPHA,\n type: f.type,\n format: f.format\n })), p = n + \"-\" + (c + 1);\n s && (d.baseTexture.ktxKeyValueData = s), ut.addToCache(d.baseTexture, p), J.addToCache(d, p), c === 0 && (l[n] = d, ut.addToCache(d.baseTexture, n), J.addToCache(d, n)), l[p] = d;\n }), Object.assign(t, { textures: l });\n }\n } catch (f) {\n e(f);\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 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 tf(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}\n(function(r) {\n tf(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, Vr(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 nh = (\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 || H.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(Kg(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 === H.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 === H.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 === H.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 === H.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), kb = `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}`, Xb = `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`, Hb = (\n /** @class */\n function(r) {\n tf(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: H.UNSIGNED_BYTE,\n uploadFunction: n.uploadTint,\n offset: 0\n }\n ], n.shader = Ue.from(Xb, kb, {}), 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, l = h.alphaMode > 0;\n this.state.blendMode = Ol(e.blendMode, l), a.state.set(this.state);\n var f = 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 = $g(e.tintRgb, e.worldAlpha, this.shader.uniforms.uColor, l), 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 m = u[v];\n m.uploadDynamic(n, p, _);\n var g = e._bufferUpdateIDs[v] || 0;\n d = d || m._updateID < g, d && (m._updateID = e._updateID, m.uploadStatic(n, p, _)), a.geometry.bind(m.geometry), f.drawElements(f.TRIANGLES, _ * 6, f.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 nh(this.properties, a, o));\n return n;\n }, t.prototype._generateOneMoreBuffer = function(e) {\n var n = e._batchSize, i = e._properties;\n return new nh(this.properties, i, n);\n }, t.prototype.uploadVertices = function(e, n, i, o, a, s) {\n for (var u = 0, h = 0, l = 0, f = 0, c = 0; c < i; ++c) {\n var d = e[n + c], p = d._texture, v = d.scale.x, _ = d.scale.y, m = p.trim, g = p.orig;\n m ? (h = m.x - d.anchor.x * g.width, u = h + m.width, f = m.y - d.anchor.y * g.height, l = f + m.height) : (u = g.width * (1 - d.anchor.x), h = g.width * -d.anchor.x, l = g.height * (1 - d.anchor.y), f = g.height * -d.anchor.y), o[s] = h * v, o[s + 1] = f * _, o[s + a] = u * v, o[s + a + 1] = f * _, o[s + a * 2] = u * v, o[s + a * 2 + 1] = l * _, o[s + a * 3] = h * v, o[s + a * 3 + 1] = l * _, 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], l = h._texture.baseTexture.alphaMode > 0, f = h.alpha, c = f < 1 && l ? as(h._tintRGB, f) : h._tintRGB + (f * 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}, ef = (\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 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 hs(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}\nfunction ih(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], l = r[a + 1];\n o += (h - s) * (l + u), s = h, u = l;\n }\n if (!t && o > 0 || t && o <= 0)\n for (var f = i / 2, a = f + f % 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 rf = {\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 ih(e, !1);\n for (var a = [], s = 0; s < n.length; s++) {\n var u = n[s];\n ih(u.points, !0), a.push(e.length / 2), e = e.concat(u.points);\n }\n var h = sl(e, a, 2);\n if (!h)\n return;\n for (var l = i.length / 2, s = 0; s < h.length; s += 3)\n o.push(h[s] + l), o.push(h[s + 1] + l), o.push(h[s + 2] + l);\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 l = r.shape, f = l.width / 2, c = l.height / 2;\n e = l.x + f, n = l.y + c, a = s = Math.max(0, Math.min(l.radius, Math.min(f, c))), i = f - 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, m = _, g = p;\n {\n var y = i + a, E = o, b = e + y, S = e - y, P = n + E;\n if (t[v++] = b, t[v++] = P, t[--_] = P, t[--_] = S, o) {\n var T = n - E;\n t[m++] = S, t[m++] = T, t[--g] = T, t[--g] = b;\n }\n }\n for (var x = 1; x < d; x++) {\n var w = Math.PI / 2 * (x / d), y = i + Math.cos(w) * a, E = o + Math.sin(w) * s, b = e + y, S = e - y, P = n + E, T = n - E;\n t[v++] = b, t[v++] = P, t[--_] = P, t[--_] = S, t[m++] = S, t[m++] = T, t[--g] = T, t[--g] = b;\n }\n {\n var y = i, E = o + s, b = e + y, S = e - y, P = n + E, T = n - E;\n t[v++] = b, t[v++] = P, t[--g] = T, t[--g] = b, i && (t[v++] = S, t[v++] = P, t[--g] = T, t[--g] = S);\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 l = r.shape;\n s = l.x + l.width / 2, u = l.y + l.height / 2;\n }\n var f = r.matrix;\n n.push(r.matrix ? f.a * s + f.c * u + f.tx : s, r.matrix ? f.b * s + f.d * u + f.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}, jb = {\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, l = 0, f = 0, c = 0, d = 0, p = 0, v = 0, _ = 0; v <= s; ++v)\n _ = v / s, h = Er(r, e, _), l = Er(t, n, _), f = Er(e, i, _), c = Er(n, o, _), d = Er(h, f, _), p = Er(l, c, _), !(v === 0 && u[u.length - 2] === d && u[u.length - 1] === p) && u.push(d, p);\n return u;\n}\nvar Vb = {\n build: function(r) {\n if (Yr.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 (Yr.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 = sl(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 oh(r, t, e, n, i, o, a, s) {\n var u = r - e * i, h = t - n * i, l = r + e * o, f = t + n * o, c, d;\n a ? (c = n, d = -e) : (c = -n, d = e);\n var p = u + c, v = h + d, _ = l + c, m = f + d;\n return s.push(p, v), s.push(_, m), 2;\n}\nfunction $e(r, t, e, n, i, o, a, s) {\n var u = e - r, h = n - t, l = Math.atan2(u, h), f = Math.atan2(i - r, o - t);\n s && l < f ? l += Math.PI * 2 : !s && l > f && (f += Math.PI * 2);\n var c = l, d = f - l, p = Math.abs(d), v = Math.sqrt(u * u + h * h), _ = (15 * p * Math.sqrt(v) / Math.PI >> 0) + 1, m = d / _;\n if (c += m, s) {\n a.push(r, t), a.push(e, n);\n for (var g = 1, y = c; g < _; g++, y += m)\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 g = 1, y = c; g < _; g++, y += m)\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 Yb(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 l = (a.x + s.x) * 0.5, f = (s.y + a.y) * 0.5;\n n.unshift(l, f), n.push(l, f);\n }\n var c = t.points, d = n.length / 2, p = n.length, v = c.length / 2, _ = o.width / 2, m = _ * _, g = o.miterLimit * o.miterLimit, y = n[0], E = n[1], b = n[2], S = n[3], P = 0, T = 0, x = -(E - S), w = y - b, O = 0, I = 0, C = Math.sqrt(x * x + w * w);\n x /= C, w /= C, x *= _, w *= _;\n var U = o.alignment, B = (1 - U) * 2, N = U * 2;\n u || (o.cap === Le.ROUND ? p += $e(y - x * (B - N) * 0.5, E - w * (B - N) * 0.5, y - x * B, E - w * B, y + x * N, E + w * N, c, !0) + 2 : o.cap === Le.SQUARE && (p += oh(y, E, x, w, B, N, !0, c))), c.push(y - x * B, E - w * B), c.push(y + x * N, E + w * N);\n for (var Y = 1; Y < d - 1; ++Y) {\n y = n[(Y - 1) * 2], E = n[(Y - 1) * 2 + 1], b = n[Y * 2], S = n[Y * 2 + 1], P = n[(Y + 1) * 2], T = n[(Y + 1) * 2 + 1], x = -(E - S), w = y - b, C = Math.sqrt(x * x + w * w), x /= C, w /= C, x *= _, w *= _, O = -(S - T), I = b - P, C = Math.sqrt(O * O + I * I), O /= C, I /= C, O *= _, I *= _;\n var $ = b - y, Q = E - S, L = b - P, F = T - S, X = $ * L + Q * F, tt = Q * L - F * $, et = tt < 0;\n if (Math.abs(tt) < 1e-3 * Math.abs(X)) {\n c.push(b - x * B, S - w * B), c.push(b + x * N, S + w * N), X >= 0 && (o.join === Re.ROUND ? p += $e(b, S, b - x * B, S - w * B, b - O * B, S - I * B, c, !1) + 4 : p += 2, c.push(b - O * N, S - I * N), c.push(b + O * B, S + I * B));\n continue;\n }\n var pt = (-x + y) * (-w + S) - (-x + b) * (-w + E), j = (-O + P) * (-I + S) - (-O + b) * (-I + T), st = ($ * j - L * pt) / tt, _t = (F * pt - Q * j) / tt, Et = (st - b) * (st - b) + (_t - S) * (_t - S), q = b + (st - b) * B, it = S + (_t - S) * B, at = b - (st - b) * N, ft = S - (_t - S) * N, nt = Math.min($ * $ + Q * Q, L * L + F * F), D = et ? B : N, R = nt + D * D * m, dt = Et <= R;\n dt ? o.join === Re.BEVEL || Et / m > g ? (et ? (c.push(q, it), c.push(b + x * N, S + w * N), c.push(q, it), c.push(b + O * N, S + I * N)) : (c.push(b - x * B, S - w * B), c.push(at, ft), c.push(b - O * B, S - I * B), c.push(at, ft)), p += 2) : o.join === Re.ROUND ? et ? (c.push(q, it), c.push(b + x * N, S + w * N), p += $e(b, S, b + x * N, S + w * N, b + O * N, S + I * N, c, !0) + 4, c.push(q, it), c.push(b + O * N, S + I * N)) : (c.push(b - x * B, S - w * B), c.push(at, ft), p += $e(b, S, b - x * B, S - w * B, b - O * B, S - I * B, c, !1) + 4, c.push(b - O * B, S - I * B), c.push(at, ft)) : (c.push(q, it), c.push(at, ft)) : (c.push(b - x * B, S - w * B), c.push(b + x * N, S + w * N), o.join === Re.ROUND ? et ? p += $e(b, S, b + x * N, S + w * N, b + O * N, S + I * N, c, !0) + 2 : p += $e(b, S, b - x * B, S - w * B, b - O * B, S - I * B, c, !1) + 2 : o.join === Re.MITER && Et / m <= g && (et ? (c.push(at, ft), c.push(at, ft)) : (c.push(q, it), c.push(q, it)), p += 2), c.push(b - O * B, S - I * B), c.push(b + O * N, S + I * N), p += 2);\n }\n y = n[(d - 2) * 2], E = n[(d - 2) * 2 + 1], b = n[(d - 1) * 2], S = n[(d - 1) * 2 + 1], x = -(E - S), w = y - b, C = Math.sqrt(x * x + w * w), x /= C, w /= C, x *= _, w *= _, c.push(b - x * B, S - w * B), c.push(b + x * N, S + w * N), u || (o.cap === Le.ROUND ? p += $e(b - x * (B - N) * 0.5, S - w * (B - N) * 0.5, b - x * B, S - w * B, b + x * N, S + w * N, c, !1) + 2 : o.cap === Le.SQUARE && (p += oh(b, S, x, w, B, N, !1, c)));\n for (var pe = t.indices, vr = wn.epsilon * wn.epsilon, Y = v; Y < p + v - 2; ++Y)\n y = c[Y * 2], E = c[Y * 2 + 1], b = c[(Y + 1) * 2], S = c[(Y + 1) * 2 + 1], P = c[(Y + 2) * 2], T = c[(Y + 2) * 2 + 1], !(Math.abs(y * (S - T) + b * (T - E) + P * (E - S)) < vr) && pe.push(Y, Y + 1, Y + 2);\n }\n}\nfunction zb(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, l = 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(l, l + 1), l++;\n o && s.push(l, h);\n }\n}\nfunction ah(r, t) {\n r.lineStyle.native ? zb(r, t) : Yb(r, t);\n}\nvar sh = (\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, l = s - t, f = i - e, c = n - t, d = Math.abs(h * c - l * f);\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 + l * l, v = f * f + c * c, _ = h * f + l * c, m = o * Math.sqrt(p) / d, g = o * Math.sqrt(v) / d, y = m * _ / p, E = g * _ / v, b = m * c + g * l, S = m * f + g * h, P = l * (g + y), T = h * (g + y), x = c * (m + E), w = f * (m + E), O = Math.atan2(T - S, P - b), I = Math.atan2(w - S, x - b);\n return {\n cx: b + t,\n cy: S + e,\n radius: o,\n startAngle: O,\n endAngle: I,\n anticlockwise: l * f > c * h\n };\n }, r.arc = function(t, e, n, i, o, a, s, u, h) {\n for (var l = s - a, f = wn._segmentsCount(Math.abs(l) * o, Math.ceil(Math.abs(l) / Fi) * 40), c = l / (f * 2), d = c * 2, p = Math.cos(c), v = Math.sin(c), _ = f - 1, m = _ % 1 / _, g = 0; g <= _; ++g) {\n var y = g + m * g, E = c + a + d * y, b = Math.cos(E), S = -Math.sin(E);\n h.push((p * b + v * S) * o + n, (p * -S + v * b) * o + i);\n }\n }, r;\n }()\n), Wb = (\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, l = 0, f = 0, c = 0, d = 0, p = 0, v = 0, _ = 0, m = 0, g = 0, y = 0, E = 0, b = t, S = e, P = 1; P <= h; ++P)\n f = P / h, c = f * f, d = c * f, p = 1 - f, v = p * p, _ = v * p, m = _ * t + 3 * v * f * n + 3 * p * c * o + d * s, g = _ * e + 3 * v * f * i + 3 * p * c * a + d * u, y = b - m, E = S - g, b = m, S = g, l += Math.sqrt(y * y + E * E);\n return l;\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 l = wn._segmentsCount(r.curveLength(u, h, t, e, n, i, o, a)), f = 0, c = 0, d = 0, p = 0, v = 0;\n s.push(u, h);\n for (var _ = 1, m = 0; _ <= l; ++_)\n m = _ / l, f = 1 - m, c = f * f, d = c * f, p = m * m, v = p * m, s.push(d * u + 3 * c * m * t + 3 * f * p * n + v * o, d * h + 3 * c * m * e + 3 * f * p * i + v * a);\n }, r;\n }()\n), qb = (\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, l = 2 * i - 2 * e, f = 4 * (s * s + u * u), c = 4 * (s * h + u * l), d = h * h + l * l, p = 2 * Math.sqrt(f + c + d), v = Math.sqrt(f), _ = 2 * f * v, m = 2 * Math.sqrt(d), g = c / v;\n return (_ * p + v * c * (p - m) + (4 * d * f - c * c) * Math.log((2 * v + g + p) / (g + m))) / (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, l = 0, f = 1; f <= u; ++f) {\n var c = f / u;\n h = a + (t - a) * c, l = s + (e - s) * c, o.push(h + (t + (n - t) * c - h) * c, l + (e + (i - e) * c - l) * c);\n }\n }, r;\n }()\n), $b = (\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, Do = (Ke = {}, Ke[Nt.POLY] = rf, Ke[Nt.CIRC] = Ui, Ke[Nt.ELIP] = Ui, Ke[Nt.RECT] = jb, Ke[Nt.RREC] = Vb, Ke), uh = [], hi = [], hh = (\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(), Kb = (\n /** @class */\n function(r) {\n hs(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(), uh.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 hh(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 hh(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, l = Do[s.type];\n l.build(s), s.matrix && this.transformPoints(s.points, s.matrix), (u.visible || h.visible) && this.processHoles(s.holes);\n for (var f = 0; f < 2; f++) {\n var c = f === 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, f === 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 = uh.pop() || new $b(), 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 m = this.indices.length, g = this.points.length / 2;\n if (i && i.end(m, g), this.batches.length === 0) {\n this.batchable = !0;\n return;\n }\n var y = g > 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 va(), a.texArray = new _a()), a.texArray.count = 0, a.start = 0, a.size = 0, a.type = se.TRIANGLES;\n var s = 0, u = null, h = 0, l = !1, f = 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 l !== !!v.native && (l = !!v.native, f = l ? 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 va(), a.texArray = new _a()), this.drawCalls.push(a)), a.start = c, a.size = 0, a.texArray.count = 0, a.type = f), _.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, l = 0; l < e.length / 2; l++)\n s[h++] = e[l * 2], s[h++] = e[l * 2 + 1], s[h++] = n[l * 2], s[h++] = n[l * 2 + 1], u[h++] = i[l], s[h++] = o[l];\n this._buffer.update(a), this._indexBuffer.update(this.indicesUint16);\n }, t.prototype.processFill = function(e) {\n if (e.holes.length)\n rf.triangulate(e, this);\n else {\n var n = Do[e.type];\n n.triangulate(e, this);\n }\n }, t.prototype.processLine = function(e) {\n ah(e, this);\n for (var n = 0; n < e.holes.length; n++)\n ah(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 = Do[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 = as(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, l = i.frame; u < a; ) {\n var f = e[(o + u) * 2], c = e[(o + u) * 2 + 1];\n if (s) {\n var d = s.a * f + s.c * c + s.tx;\n c = s.b * f + s.d * c + s.ty, f = d;\n }\n u++, n.push(f / l.width, c / l.height);\n }\n var p = i.baseTexture;\n (l.width < p.width || l.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, l = h.width / a.width, f = 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) * l, e[_ + 1] = (e[_ + 1] + d) * f;\n }, t.BATCHABLE_SIZE = 100, t;\n }($l)\n), Zb = (\n /** @class */\n function(r) {\n hs(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 }(ef)\n), Jb = new Float32Array(3), Fo = {}, Yr = (\n /** @class */\n function(r) {\n hs(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 ef(), n._lineStyle = new Zb(), n._matrix = null, n._holeMode = !1, n.state = dr.for2d(), n._geometry = e || new Kb(), 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), qb.curveTo(e, n, i, o, a), this;\n }, t.prototype.bezierCurveTo = function(e, n, i, o, a, s) {\n return this._initCurve(), Wb.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 = sh.curveTo(e, n, i, o, a, s);\n if (u) {\n var h = u.cx, l = u.cy, f = u.radius, c = u.startAngle, d = u.endAngle, p = u.anticlockwise;\n this.arc(h, l, f, 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, l = n + Math.sin(o) * i, f = 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] - l);\n d < f && p < f || c.push(h, l);\n } else\n this.moveTo(h, l), c = this.currentPath.points;\n return sh.arc(h, l, 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 iy(e, n, i, o, a));\n }, t.prototype.drawCircle = function(e, n, i) {\n return this.drawShape(new ry(e, n, i));\n }, t.prototype.drawEllipse = function(e, n, i, o) {\n return this.drawShape(new ny(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), l = new Uint16Array(e.indicesUint16.buffer, a.start * 2, a.size), f = {\n vertexData: u,\n blendMode: n,\n indices: l,\n uvs: h,\n _batchRGB: Vr(s),\n _tintRGB: s,\n _texture: a.style.texture,\n alpha: a.style.alpha,\n worldAlpha: 1\n };\n this.batches[o] = f;\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, l = u.length; h < l; 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 (!Fo[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 Fo[i] = new Ue(h, u);\n }\n n = Fo[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 = Vr(this.tint, Jb), 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, l = this._geometry.points, f = this.vertexData, c = 0, d = 0; d < l.length; d += 2) {\n var p = l[d], v = l[d + 1];\n f[c++] = i * p + a * v + u, f[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 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 Qb(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 on = new Tt(), t1 = new Uint16Array([0, 1, 2, 0, 2, 3]), Fn = (\n /** @class */\n function(r) {\n Qb(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 = t1, 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, l = this.vertexData, f = e.trim, c = e.orig, d = this._anchor, p = 0, v = 0, _ = 0, m = 0;\n if (f ? (v = f.x - d._x * c.width, p = v + f.width, m = f.y - d._y * c.height, _ = m + f.height) : (v = -d._x * c.width, p = v + c.width, m = -d._y * c.height, _ = m + c.height), l[0] = i * v + a * m + u, l[1] = s * m + o * v + h, l[2] = i * p + a * m + u, l[3] = s * m + o * p + h, l[4] = i * p + a * _ + u, l[5] = s * _ + o * p + h, l[6] = i * v + a * _ + u, l[7] = s * _ + o * v + h, this._roundPixels)\n for (var g = k.RESOLUTION, y = 0; y < l.length; ++y)\n l[y] = Math.round((l[y] * g | 0) / g);\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, l = a.d, f = 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 + f, n[1] = l * v + u * d + c, n[2] = s * p + h * v + f, n[3] = l * v + u * p + c, n[4] = s * p + h * _ + f, n[5] = l * _ + u * p + c, n[6] = s * d + h * _ + f, n[7] = l * _ + 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 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 e1(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 Sn;\n(function(r) {\n r[r.LINEAR_VERTICAL = 0] = \"LINEAR_VERTICAL\", r[r.LINEAR_HORIZONTAL = 1] = \"LINEAR_HORIZONTAL\";\n})(Sn || (Sn = {}));\nvar Bo = {\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}, r1 = [\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(), Lo(this, t, t);\n }\n return r.prototype.clone = function() {\n var t = {};\n return Lo(t, this, Bo), new r(t);\n }, r.prototype.reset = function() {\n Lo(this, Bo, Bo);\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 = No(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 = No(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 n1(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 = No(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) && r1.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 lh(r) {\n return typeof r == \"number\" ? Al(r) : (typeof r == \"string\" && r.indexOf(\"0x\") === 0 && (r = r.replace(\"0x\", \"#\")), r);\n}\nfunction No(r) {\n if (Array.isArray(r)) {\n for (var t = 0; t < r.length; ++t)\n r[t] = lh(r[t]);\n return r;\n } else\n return lh(r);\n}\nfunction n1(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 Lo(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)/), l = new Array(h.length), f = 0, c = 0; c < h.length; c++) {\n var d = s.measureText(h[c]).width + (h[c].length - 1) * e.letterSpacing;\n l[c] = d, f = Math.max(f, d);\n }\n var p = f + 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, l, v + e.leading, f, 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, l = e.whiteSpace, f = r.collapseSpaces(l), c = r.collapseNewlines(l), d = !f, p = e.wordWrapWidth + h, v = r.tokenize(t), _ = 0; _ < v.length; _++) {\n var m = v[_];\n if (r.isNewline(m)) {\n if (!c) {\n s += r.addLine(a), d = !f, a = \"\", o = 0;\n continue;\n }\n m = \" \";\n }\n if (f) {\n var g = r.isBreakingSpace(m), y = r.isBreakingSpace(a[a.length - 1]);\n if (g && y)\n continue;\n }\n var E = r.getFromCache(m, h, u, i);\n if (E > p)\n if (a !== \"\" && (s += r.addLine(a), a = \"\", o = 0), r.canBreakWords(m, e.breakWords))\n for (var b = r.wordWrapSplit(m), S = 0; S < b.length; S++) {\n for (var P = b[S], T = 1; b[S + T]; ) {\n var x = b[S + T], w = P[P.length - 1];\n if (!r.canBreakChars(w, x, m, S, e.breakWords))\n P += x;\n else\n break;\n T++;\n }\n S += P.length - 1;\n var O = r.getFromCache(P, h, u, i);\n O + o > p && (s += r.addLine(a), d = !1, a = \"\", o = 0), a += P, o += O;\n }\n else {\n a.length > 0 && (s += r.addLine(a), a = \"\", o = 0);\n var I = _ === v.length - 1;\n s += r.addLine(m, !I), d = !1, a = \"\", o = 0;\n }\n else\n E + o > p && (d = !1, s += r.addLine(a), a = \"\", o = 0), (a.length > 0 || !r.isBreakingSpace(m) || d) && (a += m, o += E);\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, l = h.length, f = a * 4, c = 0, d = 0, p = !1;\n for (c = 0; c < s; ++c) {\n for (var v = 0; v < f; v += 4)\n if (h[d + v] !== 255) {\n p = !0;\n break;\n }\n if (!p)\n d += f;\n else\n break;\n }\n for (e.ascent = s - c, d = l - f, p = !1, c = u; c > s; --c) {\n for (var v = 0; v < f; v += 4)\n if (h[d + v] !== 255) {\n p = !0;\n break;\n }\n if (!p)\n d -= f;\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 i1 = {\n texture: !0,\n children: !1,\n baseTexture: !0\n}, nf = (\n /** @class */\n function(r) {\n e1(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, l = o.lineWidths, f = 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 m = n.dropShadow && _ === 0, g = m ? Math.ceil(Math.max(1, s) + n.padding * 2) : 0, y = g * this._resolution;\n if (m) {\n i.fillStyle = \"black\", i.strokeStyle = \"black\";\n var E = n.dropShadowColor, b = Vr(typeof E == \"number\" ? E : En(E)), S = n.dropShadowBlur * this._resolution, P = n.dropShadowDistance * this._resolution;\n i.shadowColor = \"rgba(\" + b[0] * 255 + \",\" + b[1] * 255 + \",\" + b[2] * 255 + \",\" + n.dropShadowAlpha + \")\", i.shadowBlur = S, i.shadowOffsetX = Math.cos(n.dropShadowAngle) * P, i.shadowOffsetY = Math.sin(n.dropShadowAngle) * P + 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 T = (h - c.fontSize) / 2;\n (!t.nextLineHeightBehavior || h - c.fontSize < 0) && (T = 0);\n for (var x = 0; x < u.length; x++)\n d = n.strokeThickness / 2, p = n.strokeThickness / 2 + x * h + c.ascent + T, n.align === \"right\" ? d += f - l[x] : n.align === \"center\" && (d += (f - l[x]) / 2), n.stroke && n.strokeThickness && this.drawLetterSpacing(u[x], d + n.padding, p + n.padding - g, !0), n.fill && this.drawLetterSpacing(u[x], d + n.padding, p + n.padding - g);\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, l = Array.from ? Array.from(e) : e.split(\"\"), f = this.context.measureText(e).width, c = 0, d = 0; d < l.length; ++d) {\n var p = l[d];\n o ? this.context.strokeText(p, h, i) : this.context.fillText(p, h, i);\n for (var v = \"\", _ = d + 1; _ < l.length; ++_)\n v += l[_];\n c = this.context.measureText(v).width, h += f - c + s, f = c;\n }\n }, t.prototype.updateTexture = function() {\n var e = this.canvas;\n if (this._style.trim) {\n var n = Jg(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, l = this.canvas.height / this._resolution - s - u * 2, f = o.slice(), c = e.fillGradientStops.slice();\n if (!c.length)\n for (var d = f.length + 1, p = 1; p < d; ++p)\n c.push(p / d);\n if (f.unshift(o[0]), c.unshift(0), f.push(o[o.length - 1]), c.push(1), e.fillGradientType === Sn.LINEAR_VERTICAL) {\n a = this.context.createLinearGradient(h / 2, u, h / 2, l + u);\n for (var v = i.fontProperties.fontSize + e.strokeThickness, p = 0; p < n.length; p++) {\n var _ = i.lineHeight * (p - 1) + v, m = i.lineHeight * p, g = m;\n p > 0 && _ > m && (g = (m + _) / 2);\n var y = m + v, E = i.lineHeight * (p + 1), b = y;\n p + 1 < n.length && E < y && (b = (y + E) / 2);\n for (var S = (b - g) / l, P = 0; P < f.length; P++) {\n var T = 0;\n typeof c[P] == \"number\" ? T = c[P] : T = P / f.length;\n var x = Math.min(1, Math.max(0, g / l + T * S));\n x = Number(x.toFixed(5)), a.addColorStop(x, f[P]);\n }\n }\n } else {\n a = this.context.createLinearGradient(u, l / 2, h + u, l / 2);\n for (var w = f.length + 1, O = 1, p = 0; p < f.length; p++) {\n var I = void 0;\n typeof c[p] == \"number\" ? I = c[p] : I = O / w, a.addColorStop(I, f[p]), O++;\n }\n }\n return a;\n }, t.prototype.destroy = function(e) {\n typeof e == \"boolean\" && (e = { children: e }), e = Object.assign({}, i1, 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 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 o1(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 a1 = (\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 s1(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 u1(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 h1(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 l1(r, t) {\n return t instanceof nf ? (t.updateText(!0), !0) : !1;\n}\nfunction f1(r, t) {\n if (t instanceof zr) {\n var e = t.toFontString();\n return Te.measureFont(e), !0;\n }\n return !1;\n}\nfunction c1(r, t) {\n if (r instanceof nf) {\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 d1(r, t) {\n return r instanceof zr ? (t.indexOf(r) === -1 && t.push(r), !0) : !1;\n}\nvar p1 = (\n /** @class */\n function() {\n function r(t) {\n var e = this;\n this.limiter = new a1(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(c1), this.registerFindHook(d1), this.registerFindHook(s1), this.registerFindHook(u1), this.registerFindHook(h1), this.registerUploadHook(l1), this.registerUploadHook(f1);\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 of(r, t) {\n return t instanceof ut ? (t._glTextures[r.CONTEXT_UID] || r.texture.bind(t), !0) : !1;\n}\nfunction v1(r, t) {\n if (!(t instanceof Yr))\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 && of(r, o.baseTexture);\n }\n return e.batchable || r.geometry.bind(e, t._resolveDirectShader(r)), !0;\n}\nfunction _1(r, t) {\n return r instanceof Yr ? (t.push(r), !0) : !1;\n}\nvar m1 = (\n /** @class */\n function(r) {\n o1(t, r);\n function t(e) {\n var n = r.call(this, e) || this;\n return n.uploadHookHelper = n.renderer, n.registerFindHook(_1), n.registerUploadHook(of), n.registerUploadHook(v1), n;\n }\n return t.extension = {\n name: \"prepare\",\n type: gt.RendererPlugin\n }, t;\n }(p1)\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 g1 = (\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, l = 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, l, 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), y1 = (\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(g) {\n return Ir.format(Ir.parse(g.url)) === _;\n }))\n return \"continue\";\n var m = {\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, _, m);\n }, h = 0, l = s; h < l.length; h++) {\n var f = l[h];\n u(f);\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 g1(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 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 af(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 an = new Tt();\n(function(r) {\n af(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 Ml(), o._width = n, o._height = i, o.uvMatrix = o.texture.uvMatrix || new us(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 b1 = `#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`, fh = `#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`, x1 = `#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`, E1 = `#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`, T1 = `#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(), w1 = (\n /** @class */\n function(r) {\n af(t, r);\n function t(e) {\n var n = r.call(this, e) || this;\n return e.runners.contextChange.add(n), n.quad = new Gl(), 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(fh, b1, n), this.shader = e.context.webGLVersion > 1 ? Ue.from(E1, T1, n) : Ue.from(fh, x1, 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, l = h.alphaMode > 0, f = 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, m = e._width, g = e._height;\n fi.set(f.a * v / m, f.b * v / g, f.c * _ / m, f.d * _ / g, f.tx / m, f.ty / g), 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 = Rl(e.tint, e.worldAlpha, p.uniforms.uColor, l), p.uniforms.translationMatrix = e.transform.worldTransform.toArray(!0), p.uniforms.uSampler = u, n.shader.bind(p), n.geometry.bind(i), this.state.blendMode = Ol(e.blendMode, l), 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 Ra = function(r, t) {\n return Ra = 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 }, Ra(r, t);\n};\nfunction ls(r, t) {\n Ra(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 S1 = (\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), Uo = new Tt(), ch = new gi(), An = (\n /** @class */\n function(r) {\n ls(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, l = a.d, f = 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 * _ + f, d[p * 2 + 1] = u * v + l * _ + c;\n }\n if (this._roundPixels)\n for (var m = k.RESOLUTION, p = 0; p < d.length; ++p)\n d[p] = Math.round((d[p] * m | 0) / m);\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 S1(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, Uo);\n for (var n = this.geometry.getBuffer(\"aVertexPosition\").data, i = ch.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, l = o[u + 1] * 2, f = o[u + 2] * 2;\n if (i[0] = n[h], i[1] = n[h + 1], i[2] = n[l], i[3] = n[l + 1], i[4] = n[f], i[5] = n[f + 1], ch.contains(Uo.x, Uo.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), A1 = `varying vec2 vTextureCoord;\nuniform vec4 uColor;\n\nuniform sampler2D uSampler;\n\nvoid main(void)\n{\n gl_FragColor = texture2D(uSampler, vTextureCoord) * uColor;\n}\n`, P1 = `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 ls(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(P1, A1), o) || this, i._colorDirty = !1, i.uvMatrix = new us(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 Rl(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), Vi = (\n /** @class */\n function(r) {\n ls(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, H.FLOAT).addAttribute(\"aTextureCoord\", s, 2, !1, H.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 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 O1(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 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), R1 = (\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(\"=\"), l = h[0], f = h[1].replace(/\"/gm, \"\"), c = parseFloat(f), d = isNaN(c) ? f : c;\n s[l] = 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), Ca = (\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 l = a[h];\n e.char.push({\n id: parseInt(l.getAttribute(\"id\"), 10),\n page: parseInt(l.getAttribute(\"page\"), 10) || 0,\n x: parseInt(l.getAttribute(\"x\"), 10),\n y: parseInt(l.getAttribute(\"y\"), 10),\n width: parseInt(l.getAttribute(\"width\"), 10),\n height: parseInt(l.getAttribute(\"height\"), 10),\n xoffset: parseInt(l.getAttribute(\"xoffset\"), 10),\n yoffset: parseInt(l.getAttribute(\"yoffset\"), 10),\n xadvance: parseInt(l.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), I1 = (\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 Ca.test(e);\n }\n return !1;\n }, r.parse = function(t) {\n var e = new globalThis.DOMParser().parseFromString(t, \"text/xml\");\n return Ca.parse(e);\n }, r;\n }()\n), Go = [\n R1,\n Ca,\n I1\n];\nfunction sf(r) {\n for (var t = 0; t < Go.length; t++)\n if (Go[t].test(r))\n return Go[t];\n return null;\n}\nfunction C1(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, l = r.width / n - u - h * 2, f = 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(l / 2, h, l / 2, f + h);\n for (var _ = 0, m = o.fontProperties.fontSize + e.strokeThickness, g = m / f, v = 0; v < i.length; v++)\n for (var y = o.lineHeight * v, E = 0; E < c.length; E++) {\n var b = 0;\n typeof d[E] == \"number\" ? b = d[E] : b = E / c.length;\n var S = y / f + b * g, P = Math.max(_, S);\n P = Math.min(P, 1), s.addColorStop(P, c[E]), _ = P;\n }\n } else {\n s = t.createLinearGradient(h, f / 2, l + h, f / 2);\n for (var T = c.length + 1, x = 1, v = 0; v < c.length; v++) {\n var w = void 0;\n typeof d[v] == \"number\" ? w = d[v] : w = x / T, s.addColorStop(w, c[v]), x++;\n }\n }\n return s;\n}\nfunction M1(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, l = -(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 = C1(r, t, a, o, [s], e), t.strokeStyle = a.stroke, a.dropShadow) {\n var f = a.dropShadowColor, c = Vr(typeof f == \"number\" ? f : En(f)), 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, l + e.lineHeight - u.descent), a.fill && t.fillText(s, h, l + e.lineHeight - u.descent), t.setTransform(1, 0, 0, 1, 0, 0), t.fillStyle = \"rgba(0, 0, 0, 0)\";\n}\nfunction uf(r) {\n return Array.from ? Array.from(r) : r.split(\"\");\n}\nfunction D1(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, uf(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], l = Di(u.file), f = {};\n this._ownsTextures = n, this.font = a.face, this.size = a.size, this.lineHeight = s.lineHeight / l, this.chars = {}, this.pageTextures = f;\n for (var c = 0; c < t.page.length; c++) {\n var d = t.page[c], p = d.id, v = d.file;\n f[p] = e instanceof Array ? e[c] : e[v], h != null && h.fieldType && h.fieldType !== \"none\" && (f[p].baseTexture.alphaMode = fe.NO_PREMULTIPLIED_ALPHA, f[p].baseTexture.mipmap = le.OFF);\n }\n for (var c = 0; c < t.char.length; c++) {\n var _ = t.char[c], p = _.id, m = _.page, g = t.char[c], y = g.x, E = g.y, b = g.width, S = g.height, P = g.xoffset, T = g.yoffset, x = g.xadvance;\n y /= l, E /= l, b /= l, S /= l, P /= l, T /= l, x /= l;\n var w = new ht(y + f[m].frame.x / l, E + f[m].frame.y / l, b, S);\n this.chars[p] = {\n xOffset: P,\n yOffset: T,\n xAdvance: x,\n kerning: {},\n texture: new J(f[m].baseTexture, w),\n page: m\n };\n }\n for (var c = 0; c < t.kerning.length; c++) {\n var O = t.kerning[c], I = O.first, C = O.second, U = O.amount;\n I /= l, C /= l, U /= l, this.chars[C] && (this.chars[C].kerning[I] = U);\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 = sf(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, l = D1(o), f = e instanceof zr ? e : new zr(e), c = u, d = new Gi();\n d.info[0] = {\n face: f.fontFamily,\n size: f.fontSize\n }, d.common[0] = {\n lineHeight: f.fontSize\n };\n for (var p = 0, v = 0, _, m, g, y = 0, E = [], b = 0; b < l.length; b++) {\n _ || (_ = k.ADAPTER.createCanvas(), _.width = u, _.height = h, m = _.getContext(\"2d\"), g = new ut(_, { resolution: s }), E.push(new J(g)), d.page.push({\n id: E.length - 1,\n file: \"\"\n }));\n var S = l[b], P = Te.measureText(S, f, !1, _), T = P.width, x = Math.ceil(P.height), w = Math.ceil((f.fontStyle === \"italic\" ? 2 : 1) * T);\n if (v >= h - x * s) {\n if (v === 0)\n throw new Error(\"[BitmapFont] textureHeight \" + h + \"px is too small \" + (\"(fontFamily: '\" + f.fontFamily + \"', fontSize: \" + f.fontSize + \"px, char: '\" + S + \"')\"));\n --b, _ = null, m = null, g = null, v = 0, p = 0, y = 0;\n continue;\n }\n if (y = Math.max(x + P.fontProperties.descent, y), w * s + p >= c) {\n if (p === 0)\n throw new Error(\"[BitmapFont] textureWidth \" + u + \"px is too small \" + (\"(fontFamily: '\" + f.fontFamily + \"', fontSize: \" + f.fontSize + \"px, char: '\" + S + \"')\"));\n --b, v += y * s, v = Math.ceil(v), p = 0, y = 0;\n continue;\n }\n M1(_, m, P, p, v, s, f);\n var O = yi(P.text);\n d.char.push({\n id: O,\n page: E.length - 1,\n x: p / s,\n y: v / s,\n width: w,\n height: x,\n xoffset: 0,\n yoffset: 0,\n xadvance: Math.ceil(T - (f.dropShadow ? f.dropShadowDistance : 0) - (f.stroke ? f.strokeThickness : 0))\n }), p += (w + 2 * a) * s, p = Math.ceil(p);\n }\n if (!(n != null && n.skipKerning))\n for (var b = 0, I = l.length; b < I; b++)\n for (var C = l[b], U = 0; U < I; U++) {\n var B = l[U], N = m.measureText(C).width, Y = m.measureText(B).width, $ = m.measureText(C + B).width, Q = $ - (N + Y);\n Q && d.kerning.push({\n first: yi(C),\n second: yi(B),\n amount: Q\n });\n }\n var L = new r(d, E, !0);\n return r.available[t] !== void 0 && r.uninstall(t), r.available[t] = L, L;\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), F1 = `// 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`, B1 = `// 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`, dh = [], ph = [], vh = [];\n(function(r) {\n O1(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, l = o.fontName, f = o.fontSize;\n if (!Fe.available[l])\n throw new Error('Missing BitmapFont \"' + l + '\"');\n return i._activePagesMeshData = [], i._textWidth = 0, i._textHeight = 0, i._align = a, i._tint = s, i._font = void 0, i._fontName = l, i._fontSize = f, 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 = [], l = this._text.replace(/(?:\\r\\n|\\r)/g, `\n`) || \" \", f = uf(l), c = this._maxWidth * n.size / i, d = n.distanceFieldType === \"none\" ? dh : ph, p = null, v = 0, _ = 0, m = 0, g = -1, y = 0, E = 0, b = 0, S = 0, P = 0; P < f.length; P++) {\n var T = f[P], x = yi(T);\n if (/(?:\\s)/.test(T) && (g = P, y = v, S++), T === \"\\r\" || T === `\n`) {\n u.push(v), h.push(-1), _ = Math.max(_, v), ++m, ++E, a.x = 0, a.y += n.lineHeight, p = null, S = 0;\n continue;\n }\n var w = n.chars[x];\n if (w) {\n p && w.kerning[p] && (a.x += w.kerning[p]);\n var O = vh.pop() || {\n texture: J.EMPTY,\n line: 0,\n charCode: 0,\n prevSpaces: 0,\n position: new Tt()\n };\n O.texture = w.texture, O.line = m, O.charCode = x, O.position.x = a.x + w.xOffset + this._letterSpacing / 2, O.position.y = a.y + w.yOffset, O.prevSpaces = S, s.push(O), v = O.position.x + Math.max(w.xAdvance - w.xOffset, w.texture.orig.width), a.x += w.xAdvance + this._letterSpacing, b = Math.max(b, w.yOffset + w.texture.height), p = x, g !== -1 && c > 0 && a.x > c && (++E, Lr(s, 1 + g - E, 1 + P - g), P = g, g = -1, u.push(y), h.push(s.length > 0 ? s[s.length - 1].prevSpaces : 0), _ = Math.max(_, y), m++, a.x = 0, a.y += n.lineHeight, p = null, S = 0);\n }\n }\n var I = f[f.length - 1];\n I !== \"\\r\" && I !== `\n` && (/(?:\\s)/.test(I) && (v = y), u.push(v), _ = Math.max(_, v), h.push(-1));\n for (var C = [], P = 0; P <= m; P++) {\n var U = 0;\n this._align === \"right\" ? U = _ - u[P] : this._align === \"center\" ? U = (_ - u[P]) / 2 : this._align === \"justify\" && (U = h[P] < 0 ? 0 : (_ - u[P]) / h[P]), C.push(U);\n }\n var B = s.length, N = {}, Y = [], $ = this._activePagesMeshData;\n d.push.apply(d, $);\n for (var P = 0; P < B; P++) {\n var Q = s[P].texture, L = Q.baseTexture.uid;\n if (!N[L]) {\n var F = d.pop();\n if (!F) {\n var X = new Vi(), 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(B1, F1), uniforms: { uFWidth: 0 } }), et = V.NORMAL_NPM);\n var pt = new An(X, tt);\n pt.blendMode = et, F = {\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 F.index = 0, F.indexCount = 0, F.vertexCount = 0, F.uvsCount = 0, F.total = 0;\n var j = this._textureCache;\n j[L] = j[L] || new J(Q.baseTexture), F.mesh.texture = j[L], F.mesh.tint = this._tint, Y.push(F), N[L] = F;\n }\n N[L].total++;\n }\n for (var P = 0; P < $.length; P++)\n Y.indexOf($[P]) === -1 && this.removeChild($[P].mesh);\n for (var P = 0; P < Y.length; P++)\n Y[P].mesh.parent !== this && this.addChild(Y[P].mesh);\n this._activePagesMeshData = Y;\n for (var P in N) {\n var F = N[P], st = F.total;\n if (!(((e = F.indices) === null || e === void 0 ? void 0 : e.length) > 6 * st) || F.vertices.length < An.BATCHABLE_SIZE * 2)\n F.vertices = new Float32Array(4 * 2 * st), F.uvs = new Float32Array(4 * 2 * st), F.indices = new Uint16Array(6 * st);\n else\n for (var _t = F.total, Et = F.vertices, q = _t * 4 * 2; q < Et.length; q++)\n Et[q] = 0;\n F.mesh.size = 6 * st;\n }\n for (var P = 0; P < B; P++) {\n var T = s[P], it = T.position.x + C[T.line] * (this._align === \"justify\" ? T.prevSpaces : 1);\n this._roundPixels && (it = Math.round(it));\n var at = it * o, ft = T.position.y * o, Q = T.texture, nt = N[Q.baseTexture.uid], D = Q.frame, R = 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 + D.width * o, nt.vertices[dt * 8 + 3] = ft, nt.vertices[dt * 8 + 4] = at + D.width * o, nt.vertices[dt * 8 + 5] = ft + D.height * o, nt.vertices[dt * 8 + 6] = at, nt.vertices[dt * 8 + 7] = ft + D.height * o, nt.uvs[dt * 8 + 0] = R.x0, nt.uvs[dt * 8 + 1] = R.y0, nt.uvs[dt * 8 + 2] = R.x1, nt.uvs[dt * 8 + 3] = R.y1, nt.uvs[dt * 8 + 4] = R.x2, nt.uvs[dt * 8 + 5] = R.y2, nt.uvs[dt * 8 + 6] = R.x3, nt.uvs[dt * 8 + 7] = R.y3;\n }\n this._textWidth = _ * o, this._textHeight = (a.y + n.lineHeight) * o;\n for (var P in N) {\n var F = N[P];\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, ys = 0; ys < F.total; ys++)\n F.vertices[pe++] -= vr, F.vertices[pe++] -= Bn, F.vertices[pe++] -= vr, F.vertices[pe++] -= Bn, F.vertices[pe++] -= vr, F.vertices[pe++] -= Bn, F.vertices[pe++] -= vr, F.vertices[pe++] -= Bn;\n this._maxLineHeight = b * o;\n var bs = F.mesh.geometry.getBuffer(\"aVertexPosition\"), xs = F.mesh.geometry.getBuffer(\"aTextureCoord\"), Es = F.mesh.geometry.getIndex();\n bs.data = F.vertices, xs.data = F.uvs, Es.data = F.indices, bs.update(), xs.update(), Es.update();\n }\n for (var P = 0; P < s.length; P++)\n vh.push(s[P]);\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, l = s.c, f = s.d, c = Math.sqrt(u * u + h * h), d = Math.sqrt(l * l + f * f), p = (Math.abs(c) + Math.abs(d)) / 2, v = this.fontSize / a, _ = 0, m = this._activePagesMeshData; _ < m.length; _++) {\n var g = m[_];\n g.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\" ? dh : ph;\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(f) {\n return n[f.mesh.texture.baseTexture.uid];\n }).forEach(function(f) {\n f.mesh.texture = J.EMPTY;\n });\n for (var h in n) {\n var l = n[h];\n l.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 N1 = (\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 = sf(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, l = i + h, f = !1;\n for (var c in this.resources) {\n var d = this.resources[c];\n if (d.url === l) {\n d.metadata.pageFile = h, d.texture ? s(d) : d.onAfterMiddleware.add(s), f = !0;\n break;\n }\n }\n if (!f) {\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(l, 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 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 L1(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 U1 = `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 L1(t, r);\n function t(e) {\n e === void 0 && (e = 1);\n var n = r.call(this, C0, U1, { 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})(Ye);\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 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 hf(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 G1 = `\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 k1(r, t) {\n var e = Math.ceil(r / 2), n = G1, 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 X1 = {\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}, H1 = [\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 j1(r) {\n for (var t = X1[r], e = t.length, n = H1, 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 _h = (\n /** @class */\n function(r) {\n hf(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 = k1(a, e), h = j1(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 l = 1; l < this.passes - 1; l++) {\n e.bindAndClear(u, ae.BLIT), this.uniforms.uSampler = h;\n var f = h;\n h = u, u = f, 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 }(Ye)\n);\n(function(r) {\n hf(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 _h(!0, e, n, i, o), a.blurYFilter = new _h(!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})(Ye);\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 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 V1(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 Y1 = `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`, mh = (\n /** @class */\n function(r) {\n V1(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, ql, Y1, 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, l = s * (1 - i) - u * o, f = 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, m = i + s * (1 - i), g = [\n h,\n l,\n f,\n 0,\n 0,\n c,\n d,\n p,\n 0,\n 0,\n v,\n _,\n m,\n 0,\n 0,\n 0,\n 0,\n 0,\n 1,\n 0\n ];\n this._loadMatrix(g, 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, l = (o >> 16 & 255) / 255, f = (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 l,\n f,\n c,\n n,\n 0,\n s - l,\n u - f,\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 }(Ye)\n);\nmh.prototype.grayscale = mh.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 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 z1(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 W1 = `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`, q1 = `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 z1(t, r);\n function t(e, n) {\n var i = this, o = new Dt();\n return e.renderable = !1, i = r.call(this, q1, W1, {\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})(Ye);\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 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 $1(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 K1 = `\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`, Z1 = `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 $1(t, r);\n function t() {\n return r.call(this, K1, Z1) || this;\n }\n return t;\n})(Ye);\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 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 J1(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 Q1 = `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 J1(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, ql, Q1, {\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})(Ye);\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 lf = new Dt();\nIt.prototype._cacheAsBitmap = !1;\nIt.prototype._cacheData = null;\nIt.prototype._cacheAsBitmapResolution = null;\nIt.prototype._cacheAsBitmapMultisample = wt.NONE;\nvar tx = (\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 tx()), 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, l = 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 }), f = \"cacheAsBitmap_\" + lr();\n this._cacheData.textureCacheId = f, ut.addToCache(l.baseTexture, f), J.addToCache(l, f);\n var c = this.transform.localTransform.copyTo(lf).invert().translate(-i.x, -i.y);\n this.render = this._cacheData.originalRender, t.render(this, { renderTexture: l, 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(l);\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 = lf;\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 ex = (\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), rx = (\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 = Wl(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, rx._plugins);\nMe.add(ex);\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 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 Kr(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 nx = (\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, l = 0; l < e; l++) {\n var f = l % this.segWidth, c = l / this.segWidth | 0;\n n.push(f * u, c * h), i.push(f / a, c / s);\n }\n for (var d = a * s, l = 0; l < d; l++) {\n var p = l % a, v = l / a | 0, _ = v * this.segWidth + p, m = v * this.segWidth + p + 1, g = (v + 1) * this.segWidth + p, y = (v + 1) * this.segWidth + p + 1;\n o.push(_, m, g, m, y, g);\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 }(Vi)\n), ix = (\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], l = this._width * this.textureScale, f = e.length, c = 0; c < f; 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 += _ / l;\n } else\n u = c / (f - 1);\n a[d] = u, a[d + 1] = 0, a[d + 2] = u, a[d + 3] = 1;\n }\n for (var m = 0, c = 0; c < f - 1; c++) {\n var d = c * 2;\n s[m++] = d, s[m++] = d + 1, s[m++] = d + 2, s[m++] = d + 2, s[m++] = d + 1, s[m++] = 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 l = e[h], f = h * 4;\n h < e.length - 1 ? i = e[h + 1] : i = l, 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[f] = l.x + o, s[f + 1] = l.y + a, s[f + 2] = l.x - o, s[f + 3] = l.y - a, n = l;\n }\n this.buffers[0].update();\n }\n }, t.prototype.update = function() {\n this.textureScale > 0 ? this.build() : this.updateVertices();\n }, t;\n }(Vi)\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 ix(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 ox = (\n /** @class */\n function(r) {\n Kr(t, r);\n function t(e, n, i) {\n var o = this, a = new nx(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 Vi(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})(ox);\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 Ga = function(r, t) {\n return Ga = 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 }, Ga(r, t);\n};\nfunction ax(r, t) {\n Ga(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 ax(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 H0,\n K0,\n W0,\n Hb,\n m1,\n Kl,\n w1,\n // Install loader plugins\n N1,\n db,\n Ub,\n Gb,\n y1,\n // Install application plugins\n sy,\n ib\n);\nconst bi = 1733608, sx = 0.25, fs = (r) => (t, e) => {\n const n = e != null && e.fill ? En(e.fill) : bi, i = (e == null ? void 0 : e.fillOpacity) === void 0 ? sx : e.fillOpacity, o = new Yr();\n return o.beginFill(16777215, i), o.lineStyle(1, 16777215, 1, 0.5, !0), r(t, o), o.endFill(), o.tint = n, o;\n}, ux = fs((r, t) => {\n const { cx: e, cy: n, rx: i, ry: o } = r.geometry;\n t.drawEllipse(e, n, i, o);\n}), hx = fs((r, t) => {\n const e = r.geometry.points.reduce((n, i) => [...n, ...i], []);\n t.drawPolygon(e);\n}), lx = fs((r, t) => {\n const { x: e, y: n, w: i, h: o } = r.geometry;\n t.drawRect(e, n, i, o);\n}), fx = (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 l, f;\n s > 0 && s <= Math.PI / 2 ? (l = n.height * a, f = 0) : s > Math.PI / 2 && s <= Math.PI ? (l = n.width * a, f = n.height * a) : s > Math.PI && s <= Math.PI * 1.5 ? (l = 0, f = n.width * a) : (l = 0, f = 0), t.position.x = l + u * Math.cos(s) - h * Math.sin(s), t.position.y = f + u * Math.sin(s) + h * Math.cos(s), t.scale.set(a, a), t.rotation = s, e.render(t);\n}, cx = (r, t) => {\n const e = new Yr(), n = Wl({\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, m = typeof a == \"function\" ? a(v) : a;\n let g;\n _.type === qt.RECTANGLE ? g = lx(_, m) : _.type === qt.POLYGON ? g = hx(_, m) : _.type === qt.ELLIPSE ? g = ux(_, m) : console.warn(`Unsupported shape type: ${_.type}`), g && (e.addChild(g), i.set(v.id, { g, annotation: v }));\n }, u = (v) => {\n const _ = i.get(v.id);\n _ && (i.delete(v.id), _.g.destroy());\n }, h = (v, _) => {\n const m = i.get(v.id);\n m && (i.delete(v.id), m.g.destroy(), s(_));\n }, l = (v, _) => {\n n.resize(v, _), n.render(e);\n }, f = (v) => {\n const { children: _ } = e;\n i.forEach(({ g: m, annotation: g }) => {\n const y = v ? o.has(g.id) || v(g) : !0;\n y && !_.includes(m) ? e.addChild(m) : !y && _.includes(m) && e.removeChild(m);\n }), n.render(e);\n }, c = (v) => {\n const { selected: _ } = v;\n o = new Set(_.map((m) => m.id));\n }, d = (v) => {\n if (typeof v == \"function\")\n i.forEach(({ g: _, annotation: m }, g) => {\n const y = v(m);\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) => m.tint = _);\n }\n a = v, n.render(e);\n };\n return {\n addAnnotation: s,\n destroy: () => n.destroy(),\n redraw: fx(r, e, n),\n removeAnnotation: u,\n resize: l,\n setFilter: f,\n setSelected: c,\n setStyle: d,\n updateAnnotation: h\n };\n};\nfunction dx(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: l, selection: f, viewport: c } = a;\n Xo(r, l, (b) => e(10, n = b)), Xo(r, f, (b) => e(7, i = b));\n const d = qr();\n let p, v = !1;\n const _ = (b) => {\n const S = new Ei.Point(b.x, b.y), { x: P, y: T } = u.viewport.pointFromPixel(S);\n return u.viewport.viewportToImageCoordinates(P, T);\n }, m = (b) => (S) => {\n const { x: P, y: T } = _(new Ei.Point(S.offsetX, S.offsetY)), x = h.getAt(P, T);\n x && (!o || o(x)) ? (b.classList.add(\"hover\"), n !== x.id && l.set(x.id)) : (b.classList.remove(\"hover\"), n && l.set(null));\n }, g = (b) => {\n const S = b.originalEvent;\n if (!v) {\n const { x: P, y: T } = _(b.position), x = h.getAt(P, T);\n x ? d(\"click\", { originalEvent: S, annotation: x }) : d(\"click\", { originalEvent: S });\n }\n v = !1;\n }, y = () => v = !0;\n let E;\n return Wr(() => {\n const { offsetWidth: b, offsetHeight: S } = u.canvas, P = document.createElement(\"canvas\");\n P.width = b, P.height = S, P.className = \"a9s-gl-canvas\", u.element.querySelector(\".openseadragon-canvas\").appendChild(P), e(6, p = cx(u, P));\n const T = m(P);\n P.addEventListener(\"pointermove\", T), new ResizeObserver((O) => {\n try {\n const { width: I, height: C } = O[0].contentRect;\n P.width = I, P.height = C, p.resize(I, C);\n } catch {\n console.warn(\"WebGL canvas already disposed\");\n }\n }).observe(P);\n const w = () => {\n const O = u.viewport.getBounds();\n E = u.viewport.viewportToImageRectangle(O);\n const { x: I, y: C, width: U, height: B } = E, N = h.getIntersecting(I, C, U, B);\n c.set(N.map((Y) => Y.id));\n };\n return u.addHandler(\"canvas-drag\", y), u.addHandler(\"canvas-release\", g), u.addHandler(\"update-viewport\", p.redraw), u.addHandler(\"animation-finish\", w), () => {\n P.removeEventListener(\"pointermove\", T), u.removeHandler(\"canvas-drag\", y), u.removeHandler(\"canvas-release\", g), u.removeHandler(\"update-viewport\", p.redraw), u.removeHandler(\"animation-finish\", w), p.destroy(), P.parentNode.removeChild(P);\n };\n }), h.observe((b) => {\n const { created: S, updated: P, deleted: T } = b.changes;\n if (S.forEach((x) => p.addAnnotation(x)), P.forEach(({ oldValue: x, newValue: w }) => p.updateAnnotation(x, w)), T.forEach((x) => p.removeAnnotation(x)), E) {\n const { x, y: w, width: O, height: I } = E, C = h.getIntersecting(x, w, O, I);\n c.set(C.map((U) => U.id));\n } else\n c.set(h.all().map((x) => x.id));\n p.redraw();\n }), r.$$set = (b) => {\n \"filter\" in b && e(2, o = b.filter), \"state\" in b && e(3, a = b.state), \"style\" in b && e(4, s = b.style), \"viewer\" in b && e(5, u = b.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 }, [l, f, o, a, s, u, p, i];\n}\nclass px extends Zt {\n constructor(t) {\n super(), Kt(this, t, dx, null, Vt, { filter: 2, state: 3, style: 4, viewer: 5 });\n }\n}\nconst vx = (r) => ({\n transform: r & /*layerTransform*/\n 2,\n scale: r & /*scale*/\n 1\n}), gh = (r) => ({\n transform: (\n /*layerTransform*/\n r[1]\n ),\n scale: (\n /*scale*/\n r[0]\n )\n});\nfunction _x(r) {\n let t;\n const e = (\n /*#slots*/\n r[4].default\n ), n = Hh(\n e,\n r,\n /*$$scope*/\n r[3],\n gh\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) && Yh(\n n,\n e,\n i,\n /*$$scope*/\n i[3],\n t ? Vh(\n e,\n /*$$scope*/\n i[3],\n o,\n vx\n ) : zh(\n /*$$scope*/\n i[3]\n ),\n gh\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 mx(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, l = o.viewport.getZoom(!0), f = o.viewport.getFlip(), c = o.viewport.pixelFromPoint(new Ei.Point(0, 0), !0);\n f && (c.x = h - c.x);\n const d = l * h / o.world.getContentFactor(), p = f ? -d : d, v = o.viewport.getRotation();\n e(1, s = `translate(${c.x}, ${c.y}) scale(${p}, ${d}) rotate(${v})`), e(0, a = l * 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 ff extends Zt {\n constructor(t) {\n super(), Kt(this, t, mx, _x, Vt, { viewer: 2 });\n }\n}\nfunction gx(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, l;\n return Wr(() => {\n const f = o.closest(\"svg\"), c = [], d = (p, v, _) => {\n if (f.addEventListener(p, v, _), c.push(() => f.removeEventListener(p, v, _)), p === \"pointerup\" || p === \"dblclick\") {\n const m = (y) => {\n const { originalEvent: E } = y;\n v(E);\n }, g = p === \"pointerup\" ? \"canvas-click\" : \"canvas-double-click\";\n u.addHandler(g, m), c.push(() => u.removeHandler(g, m));\n } else if (p === \"pointermove\") {\n const m = (g) => {\n const { originalEvent: y } = g;\n v(y);\n };\n u.addHandler(\"canvas-drag\", m), c.push(() => u.removeHandler(\"canvas-drag\", m));\n }\n };\n return e(6, l = new a({\n target: o,\n props: {\n addEventListener: d,\n drawingMode: i,\n transform: s,\n viewportScale: h\n }\n })), l.$on(\"create\", (p) => n(\"create\", p.detail)), () => {\n c.forEach((p) => p()), l.$destroy();\n };\n }), r.$$set = (f) => {\n \"drawingMode\" in f && e(0, i = f.drawingMode), \"target\" in f && e(1, o = f.target), \"tool\" in f && e(2, a = f.tool), \"transform\" in f && e(3, s = f.transform), \"viewer\" in f && e(4, u = f.viewer), \"viewportScale\" in f && e(5, h = f.viewportScale);\n }, r.$$.update = () => {\n r.$$.dirty & /*toolComponent, transform*/\n 72 && l && l.$set({ transform: s }), r.$$.dirty & /*toolComponent, viewportScale*/\n 96 && l && l.$set({ viewportScale: h });\n }, [i, o, a, s, u, h, l];\n}\nclass yx extends Zt {\n constructor(t) {\n super(), Kt(this, t, gx, null, Vt, {\n drawingMode: 0,\n target: 1,\n tool: 2,\n transform: 3,\n viewer: 4,\n viewportScale: 5\n });\n }\n}\nfunction yh(r, t, e) {\n const n = r.slice();\n return n[24] = t[e], n;\n}\nfunction bx(r) {\n let t = (\n /*toolName*/\n r[1]\n ), e, n, i = bh(r);\n return {\n c() {\n i.c(), e = Xe();\n },\n m(o, a) {\n i.m(o, a), Z(o, e, a), n = !0;\n },\n p(o, a) {\n a & /*toolName*/\n 2 && Vt(t, t = /*toolName*/\n o[1]) ? (He(), mt(i, 1, 1, te), 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 xx(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] = Eh(yh(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 = Xe();\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 8392496) {\n n = /*editableAnnotations*/\n a[5];\n let u;\n for (u = 0; u < n.length; u += 1) {\n const h = yh(a, n, u);\n i[u] ? (i[u].p(h, s), lt(i[u], 1)) : (i[u] = Eh(h), i[u].c(), lt(i[u], 1), i[u].m(t.parentNode, t));\n }\n for (He(), 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 Va(i, a), a && K(t);\n }\n };\n}\nfunction bh(r) {\n let t, e;\n return t = new yx({\n props: {\n target: (\n /*drawingEl*/\n r[4]\n ),\n tool: (\n /*tool*/\n r[6]\n ),\n drawingMode: (\n /*drawingMode*/\n r[3]\n ),\n transform: { elementToImage: (\n /*toolTransform*/\n r[8]\n ) },\n viewer: (\n /*viewer*/\n r[2]\n ),\n viewportScale: (\n /*scale*/\n r[23]\n )\n }\n }), t.$on(\n \"create\",\n /*onSelectionCreated*/\n r[12]\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 64 && (o.tool = /*tool*/\n n[6]), i & /*drawingMode*/\n 8 && (o.drawingMode = /*drawingMode*/\n n[3]), i & /*viewer*/\n 4 && (o.viewer = /*viewer*/\n n[2]), i & /*scale*/\n 8388608 && (o.viewportScale = /*scale*/\n n[23]), 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, e;\n return t = new Rc({\n props: {\n target: (\n /*drawingEl*/\n r[4]\n ),\n editor: Ms(\n /*editable*/\n r[24].target.selector\n ),\n annotation: (\n /*editable*/\n r[24]\n ),\n transform: { elementToImage: (\n /*toolTransform*/\n r[8]\n ) },\n viewportScale: (\n /*scale*/\n r[23]\n )\n }\n }), t.$on(\n \"grab\",\n /*onGrab*/\n r[9]\n ), t.$on(\"change\", function() {\n Ht(\n /*onChangeSelected*/\n r[11](\n /*editable*/\n r[24]\n )\n ) && r[11](\n /*editable*/\n r[24]\n ).apply(this, arguments);\n }), t.$on(\n \"release\",\n /*onRelease*/\n r[10]\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 = Ms(\n /*editable*/\n r[24].target.selector\n )), i & /*editableAnnotations*/\n 32 && (o.annotation = /*editable*/\n r[24]), i & /*scale*/\n 8388608 && (o.viewportScale = /*scale*/\n r[23]), 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 Eh(r) {\n let t = (\n /*editable*/\n r[24].id\n ), e, n, i = xh(r);\n return {\n c() {\n i.c(), e = Xe();\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 && Vt(t, t = /*editable*/\n o[24].id) ? (He(), mt(i, 1, 1, te), je(), i = xh(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 Ex(r) {\n let t, e, n, i, o, a;\n const s = [xx, bx], u = [];\n function h(l, f) {\n return (\n /*drawingEl*/\n l[4] && /*editableAnnotations*/\n l[5] ? 0 : (\n /*drawingEl*/\n l[4] && /*tool*/\n l[6] && /*drawingEnabled*/\n l[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(), A(e, \"transform\", o = /*transform*/\n r[22]), A(e, \"class\", \"svelte-190cqdf\"), A(t, \"class\", \"a9s-annotationlayer a9s-osd-drawinglayer svelte-190cqdf\"), Ss(\n t,\n \"drawing\",\n /*drawingEnabled*/\n r[0]\n );\n },\n m(l, f) {\n Z(l, t, f), ir(t, e), ~n && u[n].m(e, null), r[18](e), a = !0;\n },\n p(l, f) {\n let c = n;\n n = h(l), n === c ? ~n && u[n].p(l, f) : (i && (He(), mt(u[c], 1, 1, () => {\n u[c] = null;\n }), je()), ~n ? (i = u[n], i ? i.p(l, f) : (i = u[n] = s[n](l), i.c()), lt(i, 1), i.m(e, null)) : i = null), (!a || f & /*transform*/\n 4194304 && o !== (o = /*transform*/\n l[22])) && A(e, \"transform\", o), (!a || f & /*drawingEnabled*/\n 1) && Ss(\n t,\n \"drawing\",\n /*drawingEnabled*/\n l[0]\n );\n },\n i(l) {\n a || (lt(i), a = !0);\n },\n o(l) {\n mt(i), a = !1;\n },\n d(l) {\n l && K(t), ~n && u[n].d(), r[18](null);\n }\n };\n}\nfunction Tx(r) {\n let t, e;\n return t = new ff({\n props: {\n viewer: (\n /*viewer*/\n r[2]\n ),\n $$slots: {\n default: [\n Ex,\n ({ transform: n, scale: i }) => ({ 22: n, 23: i }),\n ({ transform: n, scale: i }) => (n ? 4194304 : 0) | (i ? 8388608 : 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, toolName, tool, drawingMode, viewer*/\n 146800767 && (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 wx(r, t, e) {\n let n, i, o, a, { drawingEnabled: s } = t, { preferredDrawingMode: u } = t, { state: h } = t, { toolName: l = zo().length > 0 ? zo()[0] : void 0 } = t, { user: f } = t, { viewer: c } = t, d;\n const { store: p, selection: v } = h;\n Xo(r, v, (x) => e(17, a = x));\n let _ = null, m = null;\n const g = (x) => {\n p.unobserve(_);\n const w = x.filter(({ editable: O }) => O).map(({ id: O }) => O);\n w.length > 0 ? (e(5, m = w.map((O) => p.getAnnotation(O))), _ = (O) => {\n const { updated: I } = O.changes;\n e(5, m = I.map((C) => C.newValue));\n }, p.observe(_, { annotations: w })) : e(5, m = null);\n }, y = (x, w) => {\n const { x: O, y: I } = c.viewport.viewerElementToImageCoordinates(new Ei.Point(x, w));\n return [O, I];\n }, E = () => c.setMouseNavEnabled(!1), b = () => c.setMouseNavEnabled(!0), S = (x) => (w) => {\n var U;\n const { target: O } = x, I = 10 * 60 * 1e3, C = ((U = O.creator) == null ? void 0 : U.id) !== f.id || !O.created || (/* @__PURE__ */ new Date()).getTime() - O.created.getTime() > I;\n p.updateTarget({\n ...O,\n selector: w.detail,\n created: C ? O.created : /* @__PURE__ */ new Date(),\n updated: C ? /* @__PURE__ */ new Date() : null,\n updatedBy: C ? f : null\n });\n }, P = (x) => {\n const w = qh(), O = {\n id: w,\n bodies: [],\n target: {\n annotation: w,\n selector: x.detail,\n creator: f,\n created: /* @__PURE__ */ new Date()\n }\n };\n p.addAnnotation(O), v.setSelected(O.id), c.setMouseNavEnabled(!0);\n };\n function T(x) {\n Ti[x ? \"unshift\" : \"push\"](() => {\n d = x, e(4, d);\n });\n }\n return r.$$set = (x) => {\n \"drawingEnabled\" in x && e(0, s = x.drawingEnabled), \"preferredDrawingMode\" in x && e(13, u = x.preferredDrawingMode), \"state\" in x && e(14, h = x.state), \"toolName\" in x && e(1, l = x.toolName), \"user\" in x && e(15, f = x.user), \"viewer\" in x && e(2, c = x.viewer);\n }, r.$$.update = () => {\n r.$$.dirty & /*toolName*/\n 2 && e(6, { tool: n, opts: i } = Zh(l), n, (e(16, i), e(1, l))), r.$$.dirty & /*opts, preferredDrawingMode*/\n 73728 && e(3, o = (i == null ? void 0 : i.drawingMode) || u), r.$$.dirty & /*drawingEnabled, drawingMode, viewer*/\n 13 && (s && o === \"drag\" ? c.setMouseNavEnabled(!1) : c.setMouseNavEnabled(!0)), r.$$.dirty & /*drawingEnabled*/\n 1 && s && v.clear(), r.$$.dirty & /*$selection, drawingMode, drawingEnabled, viewer*/\n 131085 && a.selected.length === 0 && o === \"drag\" && s && c.setMouseNavEnabled(!1), r.$$.dirty & /*$selection*/\n 131072 && g(a.selected);\n }, [\n s,\n l,\n c,\n o,\n d,\n m,\n n,\n v,\n y,\n E,\n b,\n S,\n P,\n u,\n h,\n f,\n i,\n a,\n T\n ];\n}\nclass Sx extends Zt {\n constructor(t) {\n super(), Kt(this, t, wx, Tx, Vt, {\n drawingEnabled: 0,\n preferredDrawingMode: 13,\n state: 14,\n toolName: 1,\n user: 15,\n viewer: 2\n });\n }\n}\nfunction Ax(r) {\n let t, e, n, i, o, a, s, u = (\n /*user*/\n r[2].appearance.label + \"\"\n ), h, l, f, c;\n return {\n c() {\n t = ct(\"g\"), e = ct(\"rect\"), s = ct(\"text\"), h = Ya(u), A(e, \"class\", \"a9s-presence-label-bg svelte-1rehw2p\"), A(\n e,\n \"x\",\n /*x*/\n r[0]\n ), A(e, \"y\", n = /*y*/\n r[1] - 18 / /*scale*/\n r[3]), A(e, \"height\", i = 18 / /*scale*/\n r[3]), A(e, \"fill\", o = /*user*/\n r[2].appearance.color), A(e, \"stroke\", a = /*user*/\n r[2].appearance.color), A(s, \"font-size\", l = 12 / /*scale*/\n r[3]), A(s, \"x\", f = /*x*/\n r[0] + Math.round(5 / /*scale*/\n r[3])), A(s, \"y\", c = /*y*/\n r[1] - 5 / /*scale*/\n r[3]), A(s, \"class\", \"svelte-1rehw2p\"), A(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 && A(\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]) && A(e, \"y\", n), p & /*scale*/\n 8 && i !== (i = 18 / /*scale*/\n d[3]) && A(e, \"height\", i), p & /*user*/\n 4 && o !== (o = /*user*/\n d[2].appearance.color) && A(e, \"fill\", o), p & /*user*/\n 4 && a !== (a = /*user*/\n d[2].appearance.color) && A(e, \"stroke\", a), p & /*user*/\n 4 && u !== (u = /*user*/\n d[2].appearance.label + \"\") && Qf(h, u), p & /*scale*/\n 8 && l !== (l = 12 / /*scale*/\n d[3]) && A(s, \"font-size\", l), p & /*x, scale*/\n 9 && f !== (f = /*x*/\n d[0] + Math.round(5 / /*scale*/\n d[3])) && A(s, \"x\", f), p & /*y, scale*/\n 10 && c !== (c = /*y*/\n d[1] - 5 / /*scale*/\n d[3]) && A(s, \"y\", c);\n },\n i: te,\n o: te,\n d(d) {\n d && K(t), r[6](null);\n }\n };\n}\nfunction Px(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 = (f) => {\n const c = u.querySelector(\"text\"), d = u.querySelector(\"rect\"), p = c.getBBox().width + 10 / f;\n s === \"CENTER\" && u.setAttribute(\"style\", `transform: translateX(-${p / 2}px)`), d.setAttribute(\"width\", `${p}`);\n };\n function l(f) {\n Ti[f ? \"unshift\" : \"push\"](() => {\n u = f, e(4, u);\n });\n }\n return r.$$set = (f) => {\n \"x\" in f && e(0, n = f.x), \"y\" in f && e(1, i = f.y), \"user\" in f && e(2, o = f.user), \"scale\" in f && e(3, a = f.scale), \"hAlign\" in f && e(5, s = f.hAlign);\n }, r.$$.update = () => {\n r.$$.dirty & /*g, scale*/\n 24 && u && h(a);\n }, [n, i, o, a, u, s, l];\n}\nclass cf extends Zt {\n constructor(t) {\n super(), Kt(this, t, Px, Ax, Vt, { x: 0, y: 1, user: 2, scale: 3, hAlign: 5 });\n }\n}\nfunction Ox(r) {\n let t, e, n, i, o, a;\n return e = new cf({\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\"), A(n, \"class\", \"a9s-presence-shape a9s-presence-polygon svelte-fgq4n0\"), A(n, \"stroke\", i = /*user*/\n r[0].appearance.color), A(n, \"fill\", \"transparent\"), A(n, \"points\", o = /*geom*/\n r[2].points.map(Th).join(\" \")), A(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)) && A(n, \"stroke\", i), (!a || u & /*geom*/\n 4 && o !== (o = /*geom*/\n s[2].points.map(Th).join(\" \"))) && A(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 Th = (r) => r.join(\",\");\nfunction Rx(r, t, e) {\n let n, i, { annotation: o } = t, { user: a } = t, { scale: s } = t;\n const u = (h) => {\n let [l, ...f] = h.points;\n return f.forEach(([c, d]) => {\n d < l[1] && (l = [c, d]);\n }), l;\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 Ix extends Zt {\n constructor(t) {\n super(), Kt(this, t, Rx, Ox, Vt, { annotation: 4, user: 0, scale: 1 });\n }\n}\nfunction Cx(r) {\n let t, e, n, i, o, a, s, u, h;\n return e = new cf({\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\"), A(n, \"class\", \"a9s-presence-shape a9s-presence-rectangle svelte-gze948\"), A(n, \"stroke\", i = /*user*/\n r[0].appearance.color), A(n, \"fill\", \"transparent\"), A(n, \"x\", o = /*geom*/\n r[2].x), A(n, \"y\", a = /*geom*/\n r[2].y), A(n, \"width\", s = /*geom*/\n r[2].w), A(n, \"height\", u = /*geom*/\n r[2].h), A(t, \"class\", \"a9s-presence-overlay\");\n },\n m(l, f) {\n Z(l, t, f), ce(e, t, null), ir(t, n), h = !0;\n },\n p(l, [f]) {\n const c = {};\n f & /*scale*/\n 2 && (c.scale = /*scale*/\n l[1]), f & /*user*/\n 1 && (c.user = /*user*/\n l[0]), f & /*geom*/\n 4 && (c.x = /*geom*/\n l[2].x), f & /*geom*/\n 4 && (c.y = /*geom*/\n l[2].y), e.$set(c), (!h || f & /*user*/\n 1 && i !== (i = /*user*/\n l[0].appearance.color)) && A(n, \"stroke\", i), (!h || f & /*geom*/\n 4 && o !== (o = /*geom*/\n l[2].x)) && A(n, \"x\", o), (!h || f & /*geom*/\n 4 && a !== (a = /*geom*/\n l[2].y)) && A(n, \"y\", a), (!h || f & /*geom*/\n 4 && s !== (s = /*geom*/\n l[2].w)) && A(n, \"width\", s), (!h || f & /*geom*/\n 4 && u !== (u = /*geom*/\n l[2].h)) && A(n, \"height\", u);\n },\n i(l) {\n h || (lt(e.$$.fragment, l), h = !0);\n },\n o(l) {\n mt(e.$$.fragment, l), h = !1;\n },\n d(l) {\n l && K(t), de(e);\n }\n };\n}\nfunction Mx(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 Dx extends Zt {\n constructor(t) {\n super(), Kt(this, t, Mx, Cx, Vt, { annotation: 3, user: 0, scale: 1 });\n }\n}\nconst { Boolean: Fx } = Zf;\nfunction wh(r, t, e) {\n const n = r.slice();\n return n[8] = t[e], n;\n}\nfunction Sh(r) {\n let t, e;\n return t = new ff({\n props: {\n viewer: (\n /*viewer*/\n r[0]\n ),\n $$slots: {\n default: [\n Lx,\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 Ah(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] = Ph(wh(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 = Xe();\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 = wh(a, n, u);\n i[u] ? (i[u].p(h, s), lt(i[u], 1)) : (i[u] = Ph(h), i[u].c(), lt(i[u], 1), i[u].m(t.parentNode, t));\n }\n for (He(), 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(Fx);\n for (let s = 0; s < i.length; s += 1)\n mt(i[s]);\n e = !1;\n },\n d(a) {\n Va(i, a), a && K(t);\n }\n };\n}\nfunction Bx(r) {\n let t, e;\n return t = new Ix({\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 Nx(r) {\n let t, e;\n return t = new Dx({\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 Ph(r) {\n let t, e, n, i;\n const o = [Nx, Bx], a = [];\n function s(u, h) {\n return (\n /*tracked*/\n u[8].annotation.target.selector.type === qt.RECTANGLE ? 0 : (\n /*tracked*/\n u[8].annotation.target.selector.type === qt.POLYGON ? 1 : -1\n )\n );\n }\n return ~(t = s(r)) && (e = a[t] = o[t](r)), {\n c() {\n e && e.c(), n = Xe();\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 l = t;\n t = s(u), t === l ? ~t && a[t].p(u, h) : (e && (He(), mt(a[l], 1, 1, () => {\n a[l] = 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 Lx(r) {\n let t, e, n, i, o = (\n /*trackedAnnotations*/\n r[2].length > 0 && Ah(r)\n );\n return {\n c() {\n t = ct(\"svg\"), e = ct(\"g\"), o && o.c(), A(e, \"transform\", n = /*transform*/\n r[6]), A(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 = Ah(a), o.c(), lt(o, 1), o.m(e, null)) : o && (He(), mt(o, 1, 1, () => {\n o = null;\n }), je()), (!i || s & /*transform*/\n 64 && n !== (n = /*transform*/\n a[6])) && A(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 Ux(r) {\n let t = !!/*provider*/\n r[1], e, n, i = t && Sh(r);\n return {\n c() {\n i && i.c(), e = Xe();\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 = Sh(o), i.c(), lt(i, 1), i.m(e.parentNode, e)) : i && (He(), 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 Gx(r, t, e) {\n let { store: n } = t, { viewer: i } = t, { provider: o = null } = t, a = [], s = null;\n const u = (h, l) => {\n e(2, a = [\n ...a.filter(({ selectedBy: f }) => f.presenceKey !== h.presenceKey),\n ...(l || []).map((f) => ({\n // Warning - could be undefined!\n annotation: n.getAnnotation(f),\n selectedBy: h\n }))\n ].filter(({ annotation: f }) => (f || console.warn(\"Selection event on unknown annotation\"), !!f))), s && n.unobserve(s), s = (f) => {\n const { deleted: c, updated: d } = f.changes, p = new Set(c.map((_) => _.id)), v = a.filter(({ annotation: _ }) => !p.has(_.id)).map((_) => {\n const m = d.find((g) => g.oldValue.id === _.annotation.id);\n return m ? {\n selectedBy: _.selectedBy,\n annotation: m.newValue\n } : _;\n });\n e(2, a = v);\n }, n.observe(s, {\n annotations: a.map((f) => f.annotation.id)\n });\n };\n return ec(() => {\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 kx extends Zt {\n constructor(t) {\n super(), Kt(this, t, Gx, Ux, Vt, { store: 3, viewer: 0, provider: 1 });\n }\n}\nconst Oh = (r, t) => {\n t === \"auto\" ? r.addHandler(\"open\", (e) => {\n const n = r.world.getItemCount();\n r.world.getItemAt(n - 1).addOnceHandler(\"fully-loaded-change\", (o) => {\n const { fullyLoaded: a } = o;\n if (a) {\n const s = r.canvas.querySelector(\"canvas\"), u = $c(s);\n r.element.setAttribute(\"data-theme\", u);\n }\n });\n }) : r.element.setAttribute(\"data-theme\", t);\n}, df = (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, l, f, c] = u ? Array.isArray(u) ? u : [u, u, u, u] : [0, 0, 0, 0];\n h = h / s.height, l = l / s.width, f = f / s.height, c = c / s.width;\n const { minX: d, minY: p, maxX: v, maxY: _ } = a.target.selector.geometry.bounds, m = v - d, g = _ - p, y = d - c * m, E = p - h * g, b = m + (l + c) * m, S = g + (h + f) * g, P = r.viewport.imageToViewportRectangle(y, E, b, S);\n r.viewport[e](P, i.immediately);\n}, Xx = (r, t) => df(r, t, \"fitBounds\"), Hx = (r, t) => df(r, t, \"fitBoundsWithConstraints\");\nconst WE = (r, t = {}) => {\n const e = Kc(t), n = Wc(e), { hover: i, selection: o, store: a } = n, s = Uf(a), u = kf(\n n,\n s,\n e.adapter,\n e.autoSave\n );\n let h = Wf(), l = e.drawingEnabled, f = e.drawingMode;\n const c = Zc(s, r.element), d = new px({\n target: r.element,\n props: {\n state: n,\n viewer: r,\n style: e.style\n }\n }), p = new kx({\n target: r.element.querySelector(\".openseadragon-canvas\"),\n props: {\n store: a,\n viewer: r,\n provider: null\n }\n }), v = new Sx({\n target: r.element.querySelector(\".openseadragon-canvas\"),\n props: {\n drawingEnabled: l,\n preferredDrawingMode: f,\n state: n,\n user: h,\n viewer: r\n }\n });\n d.$on(\"click\", (U) => {\n const { originalEvent: B, annotation: N } = U.detail;\n N && !(f === \"click\" && l) ? o.clickSelect(N.id, B) : o.isEmpty() || o.clear();\n }), r.element.addEventListener(\"pointerdown\", (U) => {\n if (i.current) {\n const B = a.getAnnotation(i.current);\n u.emit(\"clickAnnotation\", B, U);\n }\n }), Oh(r, e.theme);\n const _ = Hf(n, s, e.adapter), m = () => {\n d.$destroy(), p.$destroy(), v.$destroy(), c.destroy(), s.destroy();\n }, g = Xx(r, a), y = Hx(r, a), E = () => h, b = (U, B, N) => Lc(U, B, N), S = (U, B) => Tc(U, B), P = (U) => {\n if (!Zh(U))\n throw `No drawing tool named ${U}`;\n v.$set({ toolName: U });\n }, T = (U) => {\n l = U, v.$set({ drawingEnabled: l });\n }, x = (U) => d.$set({ filter: U }), w = (U) => d.$set({ style: U }), O = (U) => p.$set({ provider: U }), I = (U) => Oh(r, U), C = (U) => {\n h = U, v.$set({ user: U });\n };\n return {\n ..._,\n destroy: m,\n fitBounds: g,\n fitBoundsWithConstraints: y,\n getUser: E,\n listDrawingTools: zo,\n on: u.on,\n off: u.off,\n registerDrawingTool: b,\n registerShapeEditor: S,\n setDrawingEnabled: T,\n setDrawingTool: P,\n setFilter: x,\n setPresenceProvider: O,\n setStyle: w,\n setTheme: I,\n setUser: C,\n state: n,\n viewer: r\n };\n}, jx = [\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], Vx = () => {\n const r = [...jx];\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};\nlet Yx = (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), \"\");\nYx();\nvar pf = /* @__PURE__ */ ((r) => (r.EDIT = \"EDIT\", r.SELECT = \"SELECT\", r.NONE = \"NONE\", r))(pf || {});\nconst zx = (r, t, e, n) => ({\n id: qh(),\n annotation: r.id,\n created: e || /* @__PURE__ */ new Date(),\n creator: n,\n ...t\n});\nfunction ka() {\n}\nfunction Wx(r, t) {\n for (const e in t)\n r[e] = t[e];\n return r;\n}\nfunction vf(r) {\n return r();\n}\nfunction Rh() {\n return /* @__PURE__ */ Object.create(null);\n}\nfunction pr(r) {\n r.forEach(vf);\n}\nfunction zt(r) {\n return typeof r == \"function\";\n}\nfunction cs(r, t) {\n return r != r ? t == t : r !== t || r && typeof r == \"object\" || typeof r == \"function\";\n}\nfunction qx(r) {\n return Object.keys(r).length === 0;\n}\nfunction $x(r, t, e, n) {\n if (r) {\n const i = _f(r, t, e, n);\n return r[0](i);\n }\n}\nfunction _f(r, t, e, n) {\n return r[1] && n ? Wx(e.ctx.slice(), r[1](n(t))) : e.ctx;\n}\nfunction Kx(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 Zx(r, t, e, n, i, o) {\n if (i) {\n const a = _f(t, e, n, o);\n r.p(a, i);\n }\n}\nfunction Jx(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 Qx(r, t) {\n for (let e = 0; e < r.length; e += 1)\n r[e] && r[e].d(t);\n}\nfunction $t(r) {\n return document.createElementNS(\"http://www.w3.org/2000/svg\", r);\n}\nfunction mf(r) {\n return document.createTextNode(r);\n}\nfunction oe() {\n return mf(\" \");\n}\nfunction tE() {\n return mf(\"\");\n}\nfunction Wt(r, t, e, n) {\n return r.addEventListener(t, e, n), () => r.removeEventListener(t, e, n);\n}\nfunction M(r, t, e) {\n e == null ? r.removeAttribute(t) : r.getAttribute(t) !== e && r.setAttribute(t, e);\n}\nfunction eE(r) {\n return Array.from(r.childNodes);\n}\nfunction rE(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 nE() {\n if (!On)\n throw new Error(\"Function called outside component initialization\");\n return On;\n}\nfunction iE() {\n const r = nE();\n return (t, e, { cancelable: n = !1 } = {}) => {\n const i = r.$$.callbacks[t];\n if (i) {\n const o = rE(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 = [], Ih = [];\nlet kr = [];\nconst Ch = [], oE = /* @__PURE__ */ Promise.resolve();\nlet Xa = !1;\nfunction aE() {\n Xa || (Xa = !0, oE.then(gf));\n}\nfunction Ha(r) {\n kr.push(r);\n}\nconst ko = /* @__PURE__ */ new Set();\nlet wr = 0;\nfunction gf() {\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), sE(t.$$);\n }\n } catch (t) {\n throw Or.length = 0, wr = 0, t;\n }\n for (vn(null), Or.length = 0, wr = 0; Ih.length; )\n Ih.pop()();\n for (let t = 0; t < kr.length; t += 1) {\n const e = kr[t];\n ko.has(e) || (ko.add(e), e());\n }\n kr.length = 0;\n } while (Or.length);\n for (; Ch.length; )\n Ch.pop()();\n Xa = !1, ko.clear(), vn(r);\n}\nfunction sE(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(Ha);\n }\n}\nfunction uE(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 hE;\nfunction Yi(r, t) {\n r && r.i && (xi.delete(r), r.i(t));\n}\nfunction ds(r, t, e, n) {\n if (r && r.o) {\n if (xi.has(r))\n return;\n xi.add(r), hE.c.push(() => {\n xi.delete(r), n && (e && r.d(1), n());\n }), r.o(t);\n } else\n n && n();\n}\nfunction yf(r) {\n r && r.c();\n}\nfunction ps(r, t, e, n) {\n const { fragment: i, after_update: o } = r.$$;\n i && i.m(t, e), n || Ha(() => {\n const a = r.$$.on_mount.map(vf).filter(zt);\n r.$$.on_destroy ? r.$$.on_destroy.push(...a) : pr(a), r.$$.on_mount = [];\n }), o.forEach(Ha);\n}\nfunction vs(r, t) {\n const e = r.$$;\n e.fragment !== null && (uE(e.after_update), pr(e.on_destroy), e.fragment && e.fragment.d(t), e.on_destroy = e.fragment = null, e.ctx = []);\n}\nfunction lE(r, t) {\n r.$$.dirty[0] === -1 && (Or.push(r), aE(), r.$$.dirty.fill(0)), r.$$.dirty[t / 31 | 0] |= 1 << t % 31;\n}\nfunction _s(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: ka,\n not_equal: i,\n bound: Rh(),\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: Rh(),\n dirty: s,\n skip_bound: !1,\n root: t.target || u.$$.root\n };\n a && a(h.root);\n let l = !1;\n if (h.ctx = e ? e(r, t.props || {}, (f, c, ...d) => {\n const p = d.length ? d[0] : c;\n return h.ctx && i(h.ctx[f], h.ctx[f] = p) && (!h.skip_bound && h.bound[f] && h.bound[f](p), l && lE(r, f)), c;\n }) : [], h.update(), l = !0, pr(h.before_update), h.fragment = n ? n(h.ctx) : !1, t.target) {\n if (t.hydrate) {\n const f = eE(t.target);\n h.fragment && h.fragment.l(f), f.forEach(yt);\n } else\n h.fragment && h.fragment.c();\n t.intro && Yi(r.$$.fragment), ps(r, t.target, t.anchor, t.customElement), gf();\n }\n vn(u);\n}\nclass ms {\n $destroy() {\n vs(this, 1), this.$destroy = ka;\n }\n $on(t, e) {\n if (!zt(e))\n return ka;\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 && !qx(t) && (this.$$.skip_bound = !0, this.$$set(t), this.$$.skip_bound = !1);\n }\n}\nvar Qt = /* @__PURE__ */ ((r) => (r.ELLIPSE = \"ELLIPSE\", r.POLYGON = \"POLYGON\", r.RECTANGLE = \"RECTANGLE\", r))(Qt || {});\nconst gs = (r, t) => t, bf = (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}, fE = {\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), l = t - n, f = e - i, c = u * l + h * f, d = h * l - u * f;\n return c * c / (o * o) + d * d / (a * a) <= 1;\n }\n};\ngs(Qt.ELLIPSE, fE);\nconst cE = {\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], l = n[a][1];\n u > e != l > e && t < (h - s) * (e - u) / (l - u) + s && (i = !i);\n }\n return i;\n }\n};\ngs(Qt.POLYGON, cE);\nconst dE = {\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};\ngs(Qt.RECTANGLE, dE);\nconst pE = (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, l, f] = 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, l, f].map(parseFloat);\n return {\n type: Qt.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}, vE = (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}, xf = \"http://www.w3.org/2000/svg\", Mh = (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}, _E = (r) => {\n const t = new XMLSerializer().serializeToString(r.documentElement).replace(\"<svg>\", `<svg xmlns=\"${xf}\">`);\n return new DOMParser().parseFromString(t, \"image/svg+xml\").documentElement;\n}, mE = (r) => {\n const t = new DOMParser().parseFromString(r, \"image/svg+xml\"), e = t.lookupPrefix(xf), n = t.lookupNamespaceURI(null);\n return e || n ? Mh(t).firstChild : Mh(_E(t)).firstChild;\n}, gE = (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: Qt.POLYGON,\n geometry: {\n points: i,\n bounds: bf(i)\n }\n };\n}, yE = (r) => {\n const t = mE(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: Qt.ELLIPSE,\n geometry: {\n cx: e,\n cy: n,\n rx: i,\n ry: o,\n bounds: a\n }\n };\n}, bE = (r) => {\n const t = typeof r == \"string\" ? r : r.value;\n if (t.includes(\"<polygon points=\"))\n return gE(t);\n if (t.includes(\"<ellipse \"))\n return yE(t);\n}, xE = (r) => {\n let t;\n if (r.type === Qt.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 === Qt.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 EE = new Uint8Array(16);\nfunction TE() {\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(EE);\n}\nconst Ut = [];\nfor (let r = 0; r < 256; ++r)\n Ut.push((r + 256).toString(16).slice(1));\nfunction wE(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 SE = typeof crypto < \"u\" && crypto.randomUUID && crypto.randomUUID.bind(crypto), Dh = {\n randomUUID: SE\n};\nfunction AE(r, t, e) {\n if (Dh.randomUUID && !t && !r)\n return Dh.randomUUID();\n r = r || {};\n const n = r.random || (r.rng || TE)();\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 wE(n);\n}\nconst PE = [];\nfor (let r = 0; r < 256; ++r)\n PE.push((r + 256).toString(16).slice(1));\ntypeof crypto < \"u\" && crypto.randomUUID && crypto.randomUUID.bind(crypto);\nlet OE = (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 RE = (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}, IE = (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-${RE(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}), CE = (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});\nOE();\nconst ME = (r, t = !1) => ({ parse: (e) => DE(e, t), serialize: (e) => FE(e, r) }), DE = (r, t = !1) => {\n const e = r.id || AE(), { body: n, ...i } = r, o = IE(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\" ? pE(s, t) : s.type === \"SvgSelector\" ? bE(s) : void 0;\n return u ? {\n parsed: {\n ...i,\n id: e,\n bodies: o,\n target: {\n ...i.target,\n annotation: e,\n selector: u\n }\n }\n } : {\n error: Error(`Unknown selector type: ${s.type}`)\n };\n}, FE = (r, t) => {\n const e = r.target.selector, n = e.type == Qt.RECTANGLE ? vE(e.geometry) : xE(e);\n return {\n ...r,\n \"@context\": \"http://www.w3.org/ns/anno.jsonld\",\n id: r.id,\n type: \"Annotation\",\n body: CE(r.bodies),\n target: {\n source: t,\n selector: n\n }\n };\n};\nfunction Fh(r, t, e) {\n const n = r.slice();\n return n[11] = t[e], n[13] = e, n;\n}\nfunction Bh(r) {\n let t, e, n, i, o;\n return {\n c() {\n t = $t(\"rect\"), M(t, \"class\", \"a9s-corner-handle\"), M(t, \"x\", e = /*point*/\n r[11][0] - /*handleSize*/\n r[3] / 2), M(t, \"y\", n = /*point*/\n r[11][1] - /*handleSize*/\n r[3] / 2), M(\n t,\n \"height\",\n /*handleSize*/\n r[3]\n ), M(\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) && M(t, \"x\", e), s & /*geom, handleSize*/\n 24 && n !== (n = /*point*/\n r[11][1] - /*handleSize*/\n r[3] / 2) && M(t, \"y\", n), s & /*handleSize*/\n 8 && M(\n t,\n \"height\",\n /*handleSize*/\n r[3]\n ), s & /*handleSize*/\n 8 && M(\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 BE(r) {\n let t, e, n, i, o, a, s, u, h, l, f = (\n /*geom*/\n r[4].points\n ), c = [];\n for (let d = 0; d < f.length; d += 1)\n c[d] = Bh(Fh(r, f, d));\n return {\n c() {\n t = $t(\"polygon\"), i = oe(), o = $t(\"polygon\"), s = oe();\n for (let d = 0; d < c.length; d += 1)\n c[d].c();\n u = tE(), M(t, \"class\", \"a9s-outer\"), M(t, \"style\", e = /*computedStyle*/\n r[1] ? \"display:none;\" : void 0), M(t, \"points\", n = /*geom*/\n r[4].points.map(Nh).join(\" \")), M(o, \"class\", \"a9s-inner a9s-shape-handle\"), M(\n o,\n \"style\",\n /*computedStyle*/\n r[1]\n ), M(o, \"points\", a = /*geom*/\n r[4].points.map(Lh).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 || (l = [\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) && M(t, \"style\", e), p & /*geom*/\n 16 && n !== (n = /*geom*/\n r[4].points.map(Nh).join(\" \")) && M(t, \"points\", n), p & /*computedStyle*/\n 2 && M(\n o,\n \"style\",\n /*computedStyle*/\n r[1]\n ), p & /*geom*/\n 16 && a !== (a = /*geom*/\n r[4].points.map(Lh).join(\" \")) && M(o, \"points\", a), p & /*geom, handleSize, grab, Handle*/\n 1048) {\n f = /*geom*/\n r[4].points;\n let v;\n for (v = 0; v < f.length; v += 1) {\n const _ = Fh(r, f, v);\n c[v] ? c[v].p(_, p) : (c[v] = Bh(_), 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 = f.length;\n }\n },\n d(d) {\n d && yt(t), d && yt(i), d && yt(o), d && yt(s), Qx(c, d), d && yt(u), h = !1, pr(l);\n }\n };\n}\nfunction NE(r) {\n let t, e;\n return t = new Ef({\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 BE,\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 yf(t.$$.fragment);\n },\n m(n, i) {\n ps(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 || (Yi(t.$$.fragment, n), e = !0);\n },\n o(n) {\n ds(t.$$.fragment, n), e = !1;\n },\n d(n) {\n vs(t, n);\n }\n };\n}\nconst Nh = (r) => r.join(\",\"), Lh = (r) => r.join(\",\");\nfunction LE(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(([g, y]) => [g + v[0], y + v[1]]) : _ = d.geometry.points.map(([g, y], E) => p === W(E) ? [g + v[0], y + v[1]] : [g, y]);\n const m = bf(_);\n return { ...d, geometry: { points: _, bounds: m } };\n };\n function l(d) {\n Gr.call(this, r, d);\n }\n function f(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 l,\n f,\n c\n ];\n}\nclass UE extends ms {\n constructor(t) {\n super(), _s(this, t, LE, NE, cs, {\n shape: 0,\n computedStyle: 1,\n transform: 2,\n viewportScale: 6\n });\n }\n}\nfunction GE(r) {\n let t, e, n, i, o, a, s, u, h, l, f, c, d, p, v, _, m, g, y, E, b, S, P, T, x, w, O, I, C, U, B, N, Y, $, Q, L, F, X, tt, et, pt, j, st, _t, Et, q, it, at, ft, nt;\n return {\n c() {\n t = $t(\"rect\"), s = oe(), u = $t(\"rect\"), d = oe(), p = $t(\"rect\"), g = oe(), y = $t(\"rect\"), P = oe(), T = $t(\"rect\"), I = oe(), C = $t(\"rect\"), Y = oe(), $ = $t(\"rect\"), F = oe(), X = $t(\"rect\"), pt = oe(), j = $t(\"rect\"), Et = oe(), q = $t(\"rect\"), M(t, \"class\", \"a9s-outer\"), M(t, \"style\", e = /*computedStyle*/\n r[1] ? \"display:none;\" : void 0), M(t, \"x\", n = /*geom*/\n r[4].x), M(t, \"y\", i = /*geom*/\n r[4].y), M(t, \"width\", o = /*geom*/\n r[4].w), M(t, \"height\", a = /*geom*/\n r[4].h), M(u, \"class\", \"a9s-inner a9s-shape-handle\"), M(\n u,\n \"style\",\n /*computedStyle*/\n r[1]\n ), M(u, \"x\", h = /*geom*/\n r[4].x), M(u, \"y\", l = /*geom*/\n r[4].y), M(u, \"width\", f = /*geom*/\n r[4].w), M(u, \"height\", c = /*geom*/\n r[4].h), M(p, \"class\", \"a9s-edge-handle a9s-edge-handle-top\"), M(p, \"x\", v = /*geom*/\n r[4].x), M(p, \"y\", _ = /*geom*/\n r[4].y), M(p, \"height\", 1), M(p, \"width\", m = /*geom*/\n r[4].w), M(y, \"class\", \"a9s-edge-handle a9s-edge-handle-right\"), M(y, \"x\", E = /*geom*/\n r[4].x + /*geom*/\n r[4].w), M(y, \"y\", b = /*geom*/\n r[4].y), M(y, \"height\", S = /*geom*/\n r[4].h), M(y, \"width\", 1), M(T, \"class\", \"a9s-edge-handle a9s-edge-handle-bottom\"), M(T, \"x\", x = /*geom*/\n r[4].x), M(T, \"y\", w = /*geom*/\n r[4].y + /*geom*/\n r[4].h), M(T, \"height\", 1), M(T, \"width\", O = /*geom*/\n r[4].w), M(C, \"class\", \"a9s-edge-handle a9s-edge-handle-left\"), M(C, \"x\", U = /*geom*/\n r[4].x), M(C, \"y\", B = /*geom*/\n r[4].y), M(C, \"height\", N = /*geom*/\n r[4].h), M(C, \"width\", 1), M($, \"class\", \"a9s-corner-handle a9s-corner-handle-topleft\"), M($, \"x\", Q = /*geom*/\n r[4].x - /*handleSize*/\n r[3] / 2), M($, \"y\", L = /*geom*/\n r[4].y - /*handleSize*/\n r[3] / 2), M(\n $,\n \"height\",\n /*handleSize*/\n r[3]\n ), M(\n $,\n \"width\",\n /*handleSize*/\n r[3]\n ), M(X, \"class\", \"a9s-corner-handle a9s-corner-handle-topright\"), M(X, \"x\", tt = /*geom*/\n r[4].x + /*geom*/\n r[4].w - /*handleSize*/\n r[3] / 2), M(X, \"y\", et = /*geom*/\n r[4].y - /*handleSize*/\n r[3] / 2), M(\n X,\n \"height\",\n /*handleSize*/\n r[3]\n ), M(\n X,\n \"width\",\n /*handleSize*/\n r[3]\n ), M(j, \"class\", \"a9s-corner-handle a9s-corner-handle-bottomright\"), M(j, \"x\", st = /*geom*/\n r[4].x + /*geom*/\n r[4].w - /*handleSize*/\n r[3] / 2), M(j, \"y\", _t = /*geom*/\n r[4].y + /*geom*/\n r[4].h - /*handleSize*/\n r[3] / 2), M(\n j,\n \"height\",\n /*handleSize*/\n r[3]\n ), M(\n j,\n \"width\",\n /*handleSize*/\n r[3]\n ), M(q, \"class\", \"a9s-corner-handle a9s-corner-handle-bottomleft\"), M(q, \"x\", it = /*geom*/\n r[4].x - /*handleSize*/\n r[3] / 2), M(q, \"y\", at = /*geom*/\n r[4].y + /*geom*/\n r[4].h - /*handleSize*/\n r[3] / 2), M(\n q,\n \"height\",\n /*handleSize*/\n r[3]\n ), M(\n q,\n \"width\",\n /*handleSize*/\n r[3]\n );\n },\n m(D, R) {\n bt(D, t, R), bt(D, s, R), bt(D, u, R), bt(D, d, R), bt(D, p, R), bt(D, g, R), bt(D, y, R), bt(D, P, R), bt(D, T, R), bt(D, I, R), bt(D, C, R), bt(D, Y, R), bt(D, $, R), bt(D, F, R), bt(D, X, R), bt(D, pt, R), bt(D, j, R), bt(D, Et, R), bt(D, q, R), 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(T, \"pointerdown\", function() {\n zt(\n /*grab*/\n r[10](W.BOTTOM)\n ) && r[10](W.BOTTOM).apply(this, arguments);\n }),\n Wt(C, \"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(X, \"pointerdown\", function() {\n zt(\n /*grab*/\n r[10](W.TOP_RIGHT)\n ) && r[10](W.TOP_RIGHT).apply(this, arguments);\n }),\n Wt(j, \"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(D, R) {\n r = D, R & /*computedStyle*/\n 2 && e !== (e = /*computedStyle*/\n r[1] ? \"display:none;\" : void 0) && M(t, \"style\", e), R & /*geom*/\n 16 && n !== (n = /*geom*/\n r[4].x) && M(t, \"x\", n), R & /*geom*/\n 16 && i !== (i = /*geom*/\n r[4].y) && M(t, \"y\", i), R & /*geom*/\n 16 && o !== (o = /*geom*/\n r[4].w) && M(t, \"width\", o), R & /*geom*/\n 16 && a !== (a = /*geom*/\n r[4].h) && M(t, \"height\", a), R & /*computedStyle*/\n 2 && M(\n u,\n \"style\",\n /*computedStyle*/\n r[1]\n ), R & /*geom*/\n 16 && h !== (h = /*geom*/\n r[4].x) && M(u, \"x\", h), R & /*geom*/\n 16 && l !== (l = /*geom*/\n r[4].y) && M(u, \"y\", l), R & /*geom*/\n 16 && f !== (f = /*geom*/\n r[4].w) && M(u, \"width\", f), R & /*geom*/\n 16 && c !== (c = /*geom*/\n r[4].h) && M(u, \"height\", c), R & /*geom*/\n 16 && v !== (v = /*geom*/\n r[4].x) && M(p, \"x\", v), R & /*geom*/\n 16 && _ !== (_ = /*geom*/\n r[4].y) && M(p, \"y\", _), R & /*geom*/\n 16 && m !== (m = /*geom*/\n r[4].w) && M(p, \"width\", m), R & /*geom*/\n 16 && E !== (E = /*geom*/\n r[4].x + /*geom*/\n r[4].w) && M(y, \"x\", E), R & /*geom*/\n 16 && b !== (b = /*geom*/\n r[4].y) && M(y, \"y\", b), R & /*geom*/\n 16 && S !== (S = /*geom*/\n r[4].h) && M(y, \"height\", S), R & /*geom*/\n 16 && x !== (x = /*geom*/\n r[4].x) && M(T, \"x\", x), R & /*geom*/\n 16 && w !== (w = /*geom*/\n r[4].y + /*geom*/\n r[4].h) && M(T, \"y\", w), R & /*geom*/\n 16 && O !== (O = /*geom*/\n r[4].w) && M(T, \"width\", O), R & /*geom*/\n 16 && U !== (U = /*geom*/\n r[4].x) && M(C, \"x\", U), R & /*geom*/\n 16 && B !== (B = /*geom*/\n r[4].y) && M(C, \"y\", B), R & /*geom*/\n 16 && N !== (N = /*geom*/\n r[4].h) && M(C, \"height\", N), R & /*geom, handleSize*/\n 24 && Q !== (Q = /*geom*/\n r[4].x - /*handleSize*/\n r[3] / 2) && M($, \"x\", Q), R & /*geom, handleSize*/\n 24 && L !== (L = /*geom*/\n r[4].y - /*handleSize*/\n r[3] / 2) && M($, \"y\", L), R & /*handleSize*/\n 8 && M(\n $,\n \"height\",\n /*handleSize*/\n r[3]\n ), R & /*handleSize*/\n 8 && M(\n $,\n \"width\",\n /*handleSize*/\n r[3]\n ), R & /*geom, handleSize*/\n 24 && tt !== (tt = /*geom*/\n r[4].x + /*geom*/\n r[4].w - /*handleSize*/\n r[3] / 2) && M(X, \"x\", tt), R & /*geom, handleSize*/\n 24 && et !== (et = /*geom*/\n r[4].y - /*handleSize*/\n r[3] / 2) && M(X, \"y\", et), R & /*handleSize*/\n 8 && M(\n X,\n \"height\",\n /*handleSize*/\n r[3]\n ), R & /*handleSize*/\n 8 && M(\n X,\n \"width\",\n /*handleSize*/\n r[3]\n ), R & /*geom, handleSize*/\n 24 && st !== (st = /*geom*/\n r[4].x + /*geom*/\n r[4].w - /*handleSize*/\n r[3] / 2) && M(j, \"x\", st), R & /*geom, handleSize*/\n 24 && _t !== (_t = /*geom*/\n r[4].y + /*geom*/\n r[4].h - /*handleSize*/\n r[3] / 2) && M(j, \"y\", _t), R & /*handleSize*/\n 8 && M(\n j,\n \"height\",\n /*handleSize*/\n r[3]\n ), R & /*handleSize*/\n 8 && M(\n j,\n \"width\",\n /*handleSize*/\n r[3]\n ), R & /*geom, handleSize*/\n 24 && it !== (it = /*geom*/\n r[4].x - /*handleSize*/\n r[3] / 2) && M(q, \"x\", it), R & /*geom, handleSize*/\n 24 && at !== (at = /*geom*/\n r[4].y + /*geom*/\n r[4].h - /*handleSize*/\n r[3] / 2) && M(q, \"y\", at), R & /*handleSize*/\n 8 && M(\n q,\n \"height\",\n /*handleSize*/\n r[3]\n ), R & /*handleSize*/\n 8 && M(\n q,\n \"width\",\n /*handleSize*/\n r[3]\n );\n },\n d(D) {\n D && yt(t), D && yt(s), D && yt(u), D && yt(d), D && yt(p), D && yt(g), D && yt(y), D && yt(P), D && yt(T), D && yt(I), D && yt(C), D && yt(Y), D && yt($), D && yt(F), D && yt(X), D && yt(pt), D && yt(j), D && yt(Et), D && yt(q), ft = !1, pr(nt);\n }\n };\n}\nfunction kE(r) {\n let t, e;\n return t = new Ef({\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 GE,\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 yf(t.$$.fragment);\n },\n m(n, i) {\n ps(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 || (Yi(t.$$.fragment, n), e = !0);\n },\n o(n) {\n ds(t.$$.fragment, n), e = !1;\n },\n d(n) {\n vs(t, n);\n }\n };\n}\nfunction XE(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 [m, g] = [_.minX, _.minY], [y, E] = [_.maxX, _.maxY];\n const [b, S] = v;\n if (p === W.SHAPE)\n m += b, y += b, g += S, E += S;\n else {\n switch (p) {\n case W.TOP:\n case W.TOP_LEFT:\n case W.TOP_RIGHT: {\n g += S;\n break;\n }\n case W.BOTTOM:\n case W.BOTTOM_LEFT:\n case W.BOTTOM_RIGHT: {\n E += S;\n break;\n }\n }\n switch (p) {\n case W.LEFT:\n case W.TOP_LEFT:\n case W.BOTTOM_LEFT: {\n m += b;\n break;\n }\n case W.RIGHT:\n case W.TOP_RIGHT:\n case W.BOTTOM_RIGHT: {\n y += b;\n break;\n }\n }\n }\n const P = Math.min(m, y), T = Math.min(g, E), x = Math.abs(y - m), w = Math.abs(E - g);\n return {\n ...d,\n geometry: {\n x: P,\n y: T,\n w: x,\n h: w,\n bounds: {\n minX: P,\n minY: T,\n maxX: P + x,\n maxY: T + w\n }\n }\n };\n };\n function l(d) {\n Gr.call(this, r, d);\n }\n function f(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 l,\n f,\n c\n ];\n}\nclass HE extends ms {\n constructor(t) {\n super(), _s(this, t, XE, kE, cs, {\n shape: 0,\n computedStyle: 1,\n transform: 2,\n viewportScale: 6\n });\n }\n}\nQt.RECTANGLE, Qt.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 jE = (r) => ({}), Uh = (r) => ({ grab: (\n /*onGrab*/\n r[0]\n) });\nfunction VE(r) {\n let t, e, n, i;\n const o = (\n /*#slots*/\n r[7].default\n ), a = $x(\n o,\n r,\n /*$$scope*/\n r[6],\n Uh\n );\n return {\n c() {\n t = $t(\"g\"), a && a.c(), M(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) && Zx(\n a,\n o,\n s,\n /*$$scope*/\n s[6],\n e ? Kx(\n o,\n /*$$scope*/\n s[6],\n u,\n jE\n ) : Jx(\n /*$$scope*/\n s[6]\n ),\n Uh\n );\n },\n i(s) {\n e || (Yi(a, s), e = !0);\n },\n o(s) {\n ds(a, s), e = !1;\n },\n d(s) {\n s && yt(t), a && a.d(s), n = !1, pr(i);\n }\n };\n}\nfunction YE(r, t, e) {\n let { $$slots: n = {}, $$scope: i } = t;\n const o = iE();\n let { shape: a } = t, { editor: s } = t, { transform: u } = t, h = null, l, f = null;\n const c = (v) => (_) => {\n h = v, l = u.elementToImage(_.offsetX, _.offsetY), f = a, _.target.setPointerCapture(_.pointerId), o(\"grab\");\n }, d = (v) => {\n if (h) {\n const [_, m] = u.elementToImage(v.offsetX, v.offsetY), g = [_ - l[0], m - l[1]];\n e(3, a = s(f, h, g)), o(\"change\", a);\n }\n }, p = (v) => {\n v.target.releasePointerCapture(v.pointerId), h = null, f = 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 Ef extends ms {\n constructor(t) {\n super(), _s(this, t, YE, VE, cs, { shape: 3, editor: 4, transform: 5 });\n }\n}\nnavigator.userAgent.indexOf(\"Mac OS X\");\nconst qE = Vx, $E = pf, KE = zx, ZE = Qt, JE = ME;\nexport {\n $E as PointerSelectAction,\n ZE as ShapeType,\n JE as W3CImageFormat,\n KE as createBody,\n WE as createOSDAnnotator,\n qE as defaultColorProvider\n};\n//# sourceMappingURL=annotorious-openseadragon.es.js.map\n"],"names":["Ts","nr","t","e","n","zi","Tf","_r","ja","i","s","u","h","a","wf","Gh","Wi","Sf","f","c","d","p","Af","v","Pf","Of","Rf","If","Cf","kh","Ot","Mf","Df","Ff","Bf","T","x","w","O","I","C","U","_","m","y","E","b","P","Nf","Lf","Uf","Gf","kf","S","Xf","Hf","jf","Vf","Yf","zf","Wf","te","qf","Xh","ws","ke","Ht","Vt","$f","Kf","Xo","Hh","jh","Vh","Yh","zh","Zf","ir","Z","K","Va","ct","Ya","ne","Xe","Yt","A","Jf","Qf","Ss","tc","_n","hn","za","Wr","ec","qr","Dr","Sr","Ti","Fr","As","rc","Ho","nc","Wh","jo","qi","mr","ic","oc","pi","rr","He","je","lt","mt","Ee","ce","de","ac","Kt","Zt","qt","Wa","qa","Vo","sc","Yo","uc","hc","lc","Nn","fc","cc","Lt","dc","pc","Ps","qh","Os","Rs","z","vc","Is","Cs","_c","Kh","mc","gc","yc","B","N","Y","$","Q","F","X","tt","et","pt","j","st","_t","Et","q","it","at","ft","nt","D","R","bc","xc","Ec","$h","Ms","Tc","wc","Ds","Sc","Ac","Pc","Oc","Rc","Fs","Ic","Cc","Mc","$i","Ki","Bs","Ns","Dc","Fc","Bc","Nc","$a","zo","Zh","Lc","Uc","Jh","Gc","Zr","kc","Un","Ji","Ar","Xc","gr","Ls","Zi","Vc","un","sn","Yc","Hc","jc","Ln","zc","g","Wc","l","qc","$c","Kc","Us","Zc","Jc","Qc","Qh","td","ed","tl","rd","nd","Pt","rl","el","Wo","mn","qo","id","vi","Ka","od","Gs","ad","sd","ud","hd","ld","fd","cd","dd","Qi","ks","to","eo","Ie","gn","wi","V","se","G","or","H","Si","me","ye","le","fe","ae","Ai","Jt","Ct","Xs","wt","be","pd","ro","Hs","js","Vs","no","Ys","yr","Gn","we","zs","Ws","qs","$s","Ks","Zs","Js","vd","_d","ge","md","gd","k","nl","yd","Rn","Za","ki","il","wd","yn","Zo","Qs","Xi","xn","hr","At","Rd","xd","bd","Ed","Td","Rr","$o","ol","bn","Md","al","Cd","Sd","Ad","Pd","Od","Id","Dd","Fd","Xn","kn","Ko","Bd","sl","Pi","Nd","Ld","o","tu","Ud","Gd","eu","kd","Xd","Hd","jd","Vd","Yd","ru","zd","Wd","qd","$d","Ja","Kd","Zd","Jd","Qd","ot","Xr","ul","Br","io","ar","oo","tp","br","ep","Bt","Pr","rp","sr","np","ip","nu","In","Oi","op","ap","iu","Ri","sp","up","hp","lp","fp","cr","hl","cp","Jo","Qo","ll","dp","_i","fl","pp","Qa","ln","vp","xr","ou","_p","cl","au","mp","su","uu","gp","yp","bp","dl","pl","xp","Ep","Tp","wp","Sp","ts","ao","Ii","hu","es","so","Ci","lu","Ap","fn","Pp","cn","Op","fu","Rp","Ip","Cp","Mp","rs","Ne","Dp","cu","vl","du","_e","Fp","pu","ta","uo","ea","Hr","jt","_l","vu","_u","ra","mu","gu","gl","Bp","Be","bl","na","Qp","yl","yu","Vp","Hn","Jr","Kp","ml","Np","Jp","ia","Up","Yp","bu","qp","zp","ho","$p","Wp","kp","Hp","Xp","Gp","Lp","Ve","jp","Zp","ns","$r","tv","ev","jn","Vn","rv","nv","iv","ov","av","sv","is","uv","hv","lv","fv","cv","dv","lo","os","pv","fo","er","ve","vv","xl","_v","mv","gv","yv","bv","xv","Ev","Tv","wv","El","Tl","mi","dn","Sv","xu","Pe","Av","wl","Pv","Eu","Xt","Ov","co","Rv","Iv","Cv","jr","oa","Mv","Ft","Dv","Sl","Fv","Bv","Nv","Lv","Uv","Gv","kv","Xv","Hv","jv","Vv","Yv","ue","zv","Wv","qv","$v","Kv","aa","Tu","wu","Zv","Su","Jv","Qv","sa","Nr","ua","Hi","t_","e_","r_","n_","i_","Ir","Au","Pu","o_","po","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_","X_","H_","j_","V_","Y_","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","Xm","Hm","jm","Vm","Ym","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","Xg","Hg","jg","Vg","Yg","zg","Wg","Vr","Al","En","qg","Pl","Ol","$g","as","Rl","Kg","Il","Mi","Ou","Ru","Lr","Cr","Zg","lr","Iu","he","Cu","Ae","ze","Mu","Jg","Yn","Qg","Di","Fi","ty","ey","Nt","Tt","zn","ht","ry","ny","gi","iy","Mr","Dt","Ze","Je","Qe","tr","ha","Cl","Wn","oy","St","Ml","Bi","la","ss","It","Dl","ay","xe","pn","gt","Du","Me","Gt","Ce","vo","kt","sy","fa","Fl","ca","xt","da","uy","Tn","Cn","hy","ut","Bl","ly","Ge","fy","cy","Nl","dy","py","vy","_y","pa","Ll","Ul","Fu","qn","J","fr","my","Bu","gy","Mt","yy","by","Nu","xy","Ey","Mn","Ty","Gl","wy","ur","Sy","$n","_o","Ay","ji","Py","Lu","Oy","Ry","Iy","Cy","mo","My","Dy","Uu","Gu","Fy","go","kl","Xl","Qr","By","Kn","Ny","ku","Ly","Hl","Zn","Xu","jl","Ur","Uy","Gy","ky","Xy","Hy","jy","tn","Vy","Yy","zy","Wy","Jn","Dn","Ue","yo","bo","xo","Eo","To","wo","dr","qy","$y","Ye","Ky","Zy","Hu","us","Jy","Qy","Vl","ju","Vu","t0","e0","r0","We","en","n0","i0","o0","Yl","a0","s0","u0","h0","l0","f0","c0","d0","Qn","p0","v0","_0","m0","g0","y0","b0","x0","E0","T0","w0","So","S0","Ao","A0","P0","O0","zl","Wl","R0","I0","C0","ql","va","_a","ma","M0","D0","$l","Yu","zu","F0","Kl","B0","N0","ti","L0","U0","Wu","qu","G0","k0","X0","H0","$u","ga","j0","V0","Po","Y0","z0","ei","ri","W0","q0","$0","K0","ni","Ku","Oe","Zl","Oo","ii","Z0","Zu","J0","Q0","tb","Ju","Qu","Ro","Rt","qe","eb","rb","Io","Co","nb","Ni","ib","ob","ab","sb","ub","hb","vt","rt","Li","ya","Jl","lb","fb","cb","ba","db","Ql","rn","ee","Mo","oi","pb","th","vb","ai","_b","si","ie","xa","mb","gb","yb","bb","xb","Eb","Tb","wb","Sb","Ab","Pb","Ob","Rb","Ib","De","Se","nn","eh","Cb","re","Ea","rh","Mb","Db","Fb","Bb","Lb","Nb","Ub","Gb","Ta","tf","nh","kb","Xb","Hb","Re","Le","wn","ef","wa","hs","ih","rf","Ui","jb","Er","ui","Vb","Yr","oh","$e","Yb","dt","pe","vr","zb","ah","sh","Wb","qb","$b","Ke","Do","uh","hi","hh","Tr","Kb","Zb","Jb","Fo","Sa","Qb","on","t1","Fn","Aa","e1","Sn","Bo","r1","zr","Lo","No","n1","lh","li","Te","i1","nf","Pa","o1","a1","s1","u1","h1","l1","f1","c1","d1","p1","of","v1","_1","m1","g1","y1","Oa","af","an","b1","fh","x1","E1","T1","fi","w1","Ra","ls","S1","Uo","ch","An","A1","P1","Pn","Vi","Ia","O1","Gi","R1","Ca","I1","Go","sf","C1","M1","uf","D1","yi","Fe","F1","B1","dh","ph","vh","Bn","ys","bs","xs","Es","N1","Ma","L1","U1","Da","hf","G1","k1","X1","H1","j1","_h","Fa","V1","Y1","mh","Ba","z1","W1","q1","Na","$1","K1","Z1","La","J1","Q1","lf","tx","ex","rx","Ua","Kr","nx","ix","ox","ci","Ga","ax","bi","sx","fs","ux","hx","lx","fx","cx","dx","Ei","px","vx","gh","_x","mx","ff","gx","yx","yh","bx","bh","xx","Eh","xh","Ex","Tx","wx","Sx","Ax","Px","cf","Ox","Th","Rx","Ix","Cx","Mx","Dx","Fx","wh","Sh","Lx","Ah","Ph","Bx","Nx","Ux","Gx","kx","Oh","df","Xx","Hx","WE","Yx","Qt","gs","fE","cE","dE","Ut","PE","OE"],"mappings":";AACA,IAAIA,KAAK,OAAO,UAAU;AAC1B,SAASC,GAAG,GAAGC,GAAG;AAChB,MAAIC,GAAGC;AACP,MAAI,MAAMF;AACR,WAAO;AACT,MAAI,KAAKA,MAAMC,IAAI,EAAE,iBAAiBD,EAAE,aAAa;AACnD,QAAIC,MAAM;AACR,aAAO,EAAE,QAAO,MAAOD,EAAE,QAAO;AAClC,QAAIC,MAAM;AACR,aAAO,EAAE,SAAQ,MAAOD,EAAE,SAAQ;AACpC,QAAIC,MAAM,OAAO;AACf,WAAKC,IAAI,EAAE,YAAYF,EAAE;AACvB,eAAOE,OAAOH,GAAG,EAAEG,CAAC,GAAGF,EAAEE,CAAC,CAAC;AACzB;AACJ,aAAOA,MAAM;AAAA,IACd;AACD,QAAI,CAACD,KAAK,OAAO,KAAK,UAAU;AAC9B,MAAAC,IAAI;AACJ,WAAKD,KAAK;AACR,YAAIH,GAAG,KAAK,GAAGG,CAAC,KAAK,EAAEC,KAAK,CAACJ,GAAG,KAAKE,GAAGC,CAAC,KAAK,EAAEA,KAAKD,MAAM,CAACD,GAAG,EAAEE,CAAC,GAAGD,EAAEC,CAAC,CAAC;AACvE,iBAAO;AACX,aAAO,OAAO,KAAKD,CAAC,EAAE,WAAWE;AAAA,IAClC;AAAA,EACF;AACD,SAAO,MAAM,KAAKF,MAAMA;AAC1B;AACA,SAASG,KAAK;AACd;AACA,SAASC,GAAG,GAAGJ,GAAG;AAChB,SAAO,KAAK,IAAIA,KAAKA,IAAI,MAAMA,KAAK,KAAK,OAAO,KAAK,YAAY,OAAO,KAAK;AAC/E;AACA,MAAMK,KAAK,CAAA;AACX,SAASC,GAAG,GAAGN,IAAIG,IAAI;AACrB,MAAIF;AACJ,QAAMC,IAAoB,oBAAI;AAC9B,WAASK,EAAEC,GAAG;AACZ,QAAIJ,GAAG,GAAGI,CAAC,MAAM,IAAIA,GAAGP,IAAI;AAC1B,YAAMQ,IAAI,CAACJ,GAAG;AACd,iBAAWK,KAAKR;AACd,QAAAQ,EAAE,CAAC,KAAKL,GAAG,KAAKK,GAAG,CAAC;AACtB,UAAID,GAAG;AACL,iBAASC,IAAI,GAAGA,IAAIL,GAAG,QAAQK,KAAK;AAClC,UAAAL,GAAGK,CAAC,EAAE,CAAC,EAAEL,GAAGK,IAAI,CAAC,CAAC;AACpB,QAAAL,GAAG,SAAS;AAAA,MACb;AAAA,IACF;AAAA,EACF;AACD,WAAS,EAAEG,GAAG;AACZ,IAAAD,EAAEC,EAAE,CAAC,CAAC;AAAA,EACP;AACD,WAASG,EAAEH,GAAGC,IAAIN,IAAI;AACpB,UAAMO,IAAI,CAACF,GAAGC,CAAC;AACf,WAAOP,EAAE,IAAIQ,CAAC,GAAGR,EAAE,SAAS,MAAMD,IAAID,EAAEO,CAAC,KAAKJ,KAAKK,EAAE,CAAC,GAAG,MAAM;AAC7D,MAAAN,EAAE,OAAOQ,CAAC,GAAGR,EAAE,SAAS,KAAKD,MAAMA,EAAC,GAAIA,IAAI;AAAA,IAClD;AAAA,EACG;AACD,SAAO,EAAE,KAAKM,GAAG,QAAQ,GAAG,WAAWI;AACzC;AACA,MAAMC,KAAK,CAAC,MAAM;AAChB,QAAM,EAAE,WAAWZ,GAAG,KAAKC,MAAMK,GAAG,IAAI;AACxC,MAAIJ,IAAI;AACR,SAAOF,EAAE,CAACO,MAAML,IAAIK,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,SAASA,EAAC,MAAO;AACpD,QAAIL,GAAG;AACL,MAAAK,EAAE,QAAQ,KAAK,CAACI,MAAMA,EAAE,OAAOT,CAAC,KAAKD,EAAE,IAAI;AAC3C,YAAM,IAAIM,EAAE,QAAQ,KAAK,CAAC,EAAE,UAAUI,QAAQA,EAAE,OAAOT,CAAC;AACxD,WAAKD,EAAE,EAAE,SAAS,EAAE;AAAA,IACrB;AAAA,EACL,CAAG,GAAG;AAAA,IACF,IAAI,UAAU;AACZ,aAAOC;AAAA,IACR;AAAA,IACD,WAAWF;AAAA,IACX,KAAKC;AAAA,EACT;AACA;AACA,IAAIY,KAAsB,kBAAC,OAAO,EAAE,OAAO,QAAQ,EAAE,SAAS,UAAU,EAAE,OAAO,QAAQ,IAAIA,MAAM,CAAA,CAAE;AACrG,MAAMC,KAAK,EAAE,UAAU,GAAI,GAAEC,KAAK,CAAC,GAAGf,IAAI,WAAW;AACnD,QAAM,EAAE,WAAWC,GAAG,KAAKC,MAAMI,GAAGQ,EAAE;AACtC,MAAIP,IAAIO;AACR,EAAAb,EAAE,CAACe,MAAMT,IAAIS,CAAC;AACd,QAAM,IAAI,MAAMd,EAAEY,EAAE,GAAGH,IAAI,MAAM;AAC/B,QAAIK;AACJ,aAASA,IAAIT,EAAE,aAAa,OAAO,SAASS,EAAE,YAAY;AAAA,EAC9D,GAAKR,IAAI,CAACQ,MAAM;AACZ,QAAIT,EAAE,SAAS,WAAW;AACxB,aAAO;AACT,UAAMU,IAAI,OAAOD,KAAK,WAAWA,IAAIA,EAAE;AACvC,WAAOT,EAAE,SAAS,KAAK,CAACW,MAAMA,EAAE,OAAOD,CAAC;AAAA,EAC5C,GAAKR,IAAI,CAACO,GAAGC,MAAM;AACf,UAAMC,IAAI,EAAE,cAAcF,CAAC;AAC3B,QAAIE,GAAG;AACL,YAAMC,IAAIC,GAAGF,GAAGlB,CAAC;AACjB,MAAAE,EAAEiB,MAAM,SAAS,EAAE,UAAU,CAAC,EAAE,IAAIH,GAAG,UAAU,GAAE,CAAE,GAAG,cAAcC,EAAC,IAAKE,MAAM,WAAW,EAAE,UAAU,CAAC,EAAE,IAAIH,EAAG,CAAA,GAAG,cAAcC,EAAG,IAAG,EAAE,UAAU,CAAA,GAAI,cAAcA,EAAG,CAAA;AAAA,IAC5K;AACC,cAAQ,KAAK,wBAAwBD,CAAC;AAAA,EACzC,GAAEN,IAAI,CAACM,GAAGC,IAAI,OAAO;AACpB,UAAMC,IAAI,MAAM,QAAQF,CAAC,IAAIA,IAAI,CAACA,CAAC,GAAGG,IAAID,EAAE,IAAI,CAACG,MAAM,EAAE,cAAcA,CAAC,CAAC,EAAE,OAAO,CAACA,MAAMA,CAAC;AAC1F,IAAAnB,EAAE,EAAE,UAAUiB,EAAE,IAAI,CAAC,EAAE,IAAIE,EAAG,OAAM,EAAE,IAAIA,GAAG,UAAUJ,EAAG,EAAC,EAAG,CAAA,GAAGE,EAAE,WAAWD,EAAE,UAAU,QAAQ,KAAK,qBAAqBF,CAAC;AAAA,EACjI,GAAK,IAAI,CAACA,MAAM;AACZ,QAAIT,EAAE,SAAS,WAAW;AACxB,aAAO;AACT,UAAM,EAAE,UAAUU,EAAG,IAAGV;AACxB,IAAAU,EAAE,OAAO,CAAC,EAAE,IAAIC,EAAG,MAAKF,EAAE,SAASE,CAAC,CAAC,EAAE,SAAS,KAAKhB,EAAE,EAAE,UAAUe,EAAE,OAAO,CAAC,EAAE,IAAIC,QAAQ,CAACF,EAAE,SAASE,CAAC,CAAC,EAAG,CAAA;AAAA,EAChH;AACE,SAAO,EAAE,QAAQ,CAAC,EAAE,SAASF,EAAG,MAAK,EAAEA,EAAE,QAAQ,IAAI,CAACC,MAAMA,EAAE,EAAE,CAAC,CAAC,GAAG;AAAA,IACnE,OAAO;AAAA,IACP,aAAaR;AAAA,IACb,IAAI,WAAW;AACb,aAAOF,IAAI,CAAC,GAAGA,EAAE,QAAQ,IAAI;AAAA,IAC9B;AAAA,IACD,IAAI,eAAe;AACjB,aAAOA,IAAIA,EAAE,eAAe;AAAA,IAC7B;AAAA,IACD,SAASI;AAAA,IACT,YAAYH;AAAA,IACZ,aAAaE;AAAA,IACb,WAAWT;AAAA,EACf;AACA,GAAGmB,KAAK,CAAC,GAAGpB,MAAM,OAAOA,KAAK,aAAaA,EAAE,CAAC,KAAK,SAASA,KAAK,QAAQsB,KAAK,CAAA;AAC9E,SAAS,IAAI,GAAG,IAAI,KAAK,EAAE;AACzB,EAAAA,GAAG,MAAM,IAAI,KAAK,SAAS,EAAE,EAAE,MAAM,CAAC,CAAC;AACzC,OAAO,SAAS,OAAO,OAAO,cAAc,OAAO,WAAW,KAAK,MAAM;AACzE,MAAMC,KAAK,CAAC,GAAGvB,MAAM;AACnB,QAAMC,IAAI,IAAI,IAAI,EAAE,OAAO,IAAI,CAACC,MAAMA,EAAE,EAAE,CAAC;AAC3C,SAAOF,EAAE,OAAO,OAAO,CAACE,MAAM,CAACD,EAAE,IAAIC,EAAE,EAAE,CAAC;AAC5C,GAAGsB,KAAK,CAAC,GAAGxB,MAAM;AAChB,QAAMC,IAAI,IAAI,IAAID,EAAE,OAAO,IAAI,CAACE,MAAMA,EAAE,EAAE,CAAC;AAC3C,SAAO,EAAE,OAAO,OAAO,CAACA,MAAM,CAACD,EAAE,IAAIC,EAAE,EAAE,CAAC;AAC5C,GAAGuB,KAAK,CAAC,GAAGzB,MAAMA,EAAE,OAAO,IAAI,CAACC,MAAM;AACpC,QAAMC,IAAI,EAAE,OAAO,KAAK,CAACK,MAAMA,EAAE,OAAON,EAAE,EAAE;AAC5C,SAAO,EAAE,SAASA,GAAG,SAASC,KAAK,CAACH,GAAGG,GAAGD,CAAC,IAAIC,IAAI,OAAM;AAC3D,CAAC,EAAE,OAAO,CAAC,EAAE,SAASD,EAAC,MAAOA,CAAC,GAAGyB,KAAK,CAAC,GAAG1B,MAAM,CAACD,GAAG,EAAE,QAAQC,EAAE,MAAM,GAAG2B,KAAK,CAAC,GAAG3B,MAAM;AACvF,QAAMC,IAAIsB,GAAG,GAAGvB,CAAC,GAAGE,IAAIsB,GAAG,GAAGxB,CAAC,GAAGO,IAAIkB,GAAG,GAAGzB,CAAC;AAC7C,SAAO;AAAA,IACL,UAAU;AAAA,IACV,UAAUA;AAAA,IACV,eAAeC,EAAE,SAAS,IAAIA,IAAI;AAAA,IAClC,eAAeC,EAAE,SAAS,IAAIA,IAAI;AAAA,IAClC,eAAeK,EAAE,SAAS,IAAIA,IAAI;AAAA,IAClC,eAAemB,GAAG,GAAG1B,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,WAAWA,EAAE,OAAM,IAAK;AAAA,EAC7E;AACA;AACA,IAAI4B,KAAsB,kBAAC,OAAO,EAAE,QAAQ,SAAS,EAAE,SAAS,UAAU,IAAIA,MAAM,CAAE,CAAA;AACtF,MAAMC,KAAK,CAAC,GAAG7B,MAAM;AACnB,MAAIC,GAAGC;AACP,QAAM,EAAE,SAASK,GAAG,QAAQ,EAAC,IAAKP;AAClC,MAAI,EAAE,CAAC,EAAE,QAAQ,UAAU,EAAE,QAAQ,WAAW;AAC9C,WAAO;AACT,MAAI,EAAE,QAAQ,QAAQ;AACpB,UAAM,EAAE,QAAQW,EAAC,IAAK,EAAE,SAASH,IAAI,CAACC,OAAOA,KAAK,OAAO,SAASA,EAAE,UAAU;AAC9E,QAAI,EAAED,EAAED,EAAE,OAAO,KAAKC,EAAED,EAAE,OAAO,IAAI;AACnC,YAAME,KAAKR,IAAIM,EAAE,YAAY,OAAO,SAASN,EAAE,KAAK,CAAC,MAAMO,EAAE,EAAE,aAAa,KAAKA,EAAE,EAAE,aAAa,KAAKA,EAAE,EAAE,aAAa,CAAC,GAAGE,KAAKR,IAAIK,EAAE,YAAY,OAAO,SAASL,EAAE,KAAK,CAAC,MAAM,EAAE,aAAa;AAChM,UAAIS,MAAM,eAAeF,KAAK,CAACC,KAAKC,MAAM,iBAAiBD,KAAK,CAACD;AAC/D,eAAO;AAAA,IACV;AAAA,EACF;AACD,MAAI,EAAE,QAAQ,aAAa;AACzB,UAAME,IAAoB,oBAAI,IAAI;AAAA,MAChC,GAAGJ,EAAE,QAAQ,IAAI,CAACC,MAAMA,EAAE,EAAE;AAAA,MAC5B,GAAGD,EAAE,QAAQ,IAAI,CAACC,MAAMA,EAAE,EAAE;AAAA,MAC5B,GAAGD,EAAE,QAAQ,IAAI,CAAC,EAAE,UAAUC,EAAC,MAAOA,EAAE,EAAE;AAAA,IAChD,CAAK;AACD,WAAO,CAAC,EAAE,MAAM,QAAQ,EAAE,QAAQ,WAAW,IAAI,EAAE,QAAQ,cAAc,CAAC,EAAE,QAAQ,WAAW,GAAG,KAAK,CAACA,MAAMG,EAAE,IAAIH,CAAC,CAAC;AAAA,EACvH;AACC,WAAO;AACX,GAAGsB,KAAK,CAAC,GAAG9B,MAAM;AAChB,QAAMC,IAAI,IAAI,KAAK,EAAE,WAAW,CAAA,GAAI,IAAI,CAACe,MAAMA,EAAE,EAAE,CAAC,GAAGd,IAAI,IAAI,KAAK,EAAE,WAAW,CAAA,GAAI,IAAI,CAAC,EAAE,UAAUc,EAAC,MAAOA,EAAE,EAAE,CAAC,GAAGT,IAAI,IAAI,KAAKP,EAAE,WAAW,IAAI,IAAI,CAACgB,MAAMA,EAAE,EAAE,CAAC,GAAG,IAAI,IAAI,KAAKhB,EAAE,WAAW,IAAI,IAAI,CAACgB,MAAMA,EAAE,EAAE,CAAC,GAAGL,IAAI,IAAI,KAAKX,EAAE,WAAW,IAAI,IAAI,CAAC,EAAE,UAAUgB,EAAG,MAAKA,EAAE,EAAE,CAAC,GAAGR,IAAI,IAAI,KAAKR,EAAE,WAAW,CAAE,GAAE,OAAO,CAAC,EAAE,UAAUgB,EAAC,MAAOf,EAAE,IAAIe,EAAE,EAAE,KAAKd,EAAE,IAAIc,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,UAAUA,EAAG,MAAKA,EAAE,EAAE,CAAC,GAAGP,IAAI;AAAA,IAChZ,IAAI,EAAE,WAAW,CAAE,GAAE,OAAO,CAACO,MAAM,CAAC,EAAE,IAAIA,EAAE,EAAE,CAAC,EAAE,IAAI,CAACA,MAAML,EAAE,IAAIK,EAAE,EAAE,IAAIhB,EAAE,QAAQ,KAAK,CAAC,EAAE,UAAUiB,EAAC,MAAOA,EAAE,OAAOD,EAAE,EAAE,EAAE,WAAWA,CAAC;AAAA,IACzI,GAAGhB,EAAE,WAAW,CAAE;AAAA,EACnB,GAAEU,IAAI;AAAA,IACL,IAAI,EAAE,WAAW,CAAA,GAAI,OAAO,CAACM,MAAM,CAACT,EAAE,IAAIS,EAAE,EAAE,CAAC;AAAA,IAC/C,IAAIhB,EAAE,WAAW,CAAA,GAAI,OAAO,CAACgB,MAAM,CAACf,EAAE,IAAIe,EAAE,EAAE,CAAC;AAAA,EAChD,GAAE,IAAI;AAAA,IACL,IAAI,EAAE,WAAW,CAAA,GAAI,OAAO,CAAC,EAAE,UAAUA,EAAC,MAAO,CAAC,EAAE,IAAIA,EAAE,EAAE,CAAC,EAAE,IAAI,CAACA,MAAM;AACxE,YAAM,EAAE,UAAUC,GAAG,UAAUC,EAAC,IAAKF;AACrC,UAAIL,EAAE,IAAIO,EAAE,EAAE,GAAG;AACf,cAAMC,IAAInB,EAAE,QAAQ,KAAK,CAACqB,MAAMA,EAAE,SAAS,OAAOH,EAAE,EAAE,EAAE;AACxD,eAAOS,GAAGV,GAAGE,CAAC;AAAA,MACf;AACC,eAAOH;AAAA,IACf,CAAK;AAAA,IACD,IAAIhB,EAAE,WAAW,CAAA,GAAI,OAAO,CAAC,EAAE,UAAUgB,EAAC,MAAO,CAACR,EAAE,IAAIQ,EAAE,EAAE,CAAC;AAAA,EACjE;AACE,SAAO,EAAE,SAASP,GAAG,SAASC,GAAG,SAAS;AAC5C,GAAGqB,KAAK,CAAC,MAAM,EAAE,OAAO,QAAQC,KAAK,MAAM;AACzC,QAAM,IAAoB,oBAAI,IAAK,GAAEhC,IAAoB,oBAAI,IAAK,GAAEC,IAAI,CAAA,GAAIC,IAAI,CAAC+B,GAAGC,IAAI,CAAA,MAAOjC,EAAE,KAAK,EAAE,UAAUgC,GAAG,SAASC,EAAG,CAAA,GAAG3B,IAAI,CAAC0B,MAAM;AAC7I,UAAMC,IAAIjC,EAAE,UAAU,CAACkC,MAAMA,EAAE,YAAYF,CAAC;AAC5C,IAAAC,IAAI,MAAMjC,EAAE,OAAOiC,GAAG,CAAC;AAAA,EAC3B,GAAK,IAAI,CAACD,GAAGC,MAAM;AACf,UAAMC,IAAI;AAAA,MACR,QAAQF;AAAA,MACR,SAAS;AAAA,QACP,SAASC,EAAE,WAAW,CAAE;AAAA,QACxB,SAASA,EAAE,WAAW,CAAE;AAAA,QACxB,SAASA,EAAE,WAAW,CAAE;AAAA,MACzB;AAAA,MACD,OAAO,CAAC,GAAG,EAAE,QAAQ;AAAA,IAC3B;AACI,IAAAjC,EAAE,QAAQ,CAACmC,MAAM;AACf,MAAAP,GAAGO,GAAGD,CAAC,KAAKC,EAAE,SAASD,CAAC;AAAA,IAC9B,CAAK;AAAA,EACF,GAAExB,IAAI,CAACsB,GAAGC,IAAIN,GAAG,UAAU;AAC1B,QAAI,EAAE,IAAIK,EAAE,EAAE;AACZ,YAAM,MAAM,yBAAyBA,EAAE,EAAE,mBAAmB;AAC9D,MAAE,IAAIA,EAAE,IAAIA,CAAC,GAAGA,EAAE,OAAO,QAAQ,CAACE,MAAMnC,EAAE,IAAImC,EAAE,IAAIF,EAAE,EAAE,CAAC,GAAG,EAAEC,GAAG,EAAE,SAAS,CAACD,CAAC,EAAG,CAAA;AAAA,EACrF,GAAKzB,IAAI,CAACyB,GAAGC,MAAM;AACf,UAAMC,IAAI,OAAOF,KAAK,WAAWC,IAAID,GAAGG,IAAI,OAAOH,KAAK,WAAWA,IAAIA,EAAE,IAAII,IAAI,EAAE,IAAID,CAAC;AACxF,QAAIC,GAAG;AACL,YAAMC,IAAIX,GAAGU,GAAGF,CAAC;AACjB,aAAOC,MAAMD,EAAE,KAAK,EAAE,IAAIC,GAAGD,CAAC,KAAK,EAAE,OAAOC,CAAC,GAAG,EAAE,IAAID,EAAE,IAAIA,CAAC,IAAIE,EAAE,OAAO,QAAQ,CAACE,MAAMvC,EAAE,OAAOuC,EAAE,EAAE,CAAC,GAAGJ,EAAE,OAAO,QAAQ,CAACI,MAAMvC,EAAE,IAAIuC,EAAE,IAAIJ,EAAE,EAAE,CAAC,GAAGG;AAAA,IACvJ;AACC,cAAQ,KAAK,4BAA4BF,CAAC,mBAAmB;AAAA,EACnE,GAAK3B,IAAI,CAACwB,GAAGC,IAAIN,GAAG,OAAOO,IAAIP,GAAG,UAAU;AACxC,UAAMQ,IAAIL,GAAGG,CAAC,IAAIC,IAAID,GAAGG,IAAI7B,EAAEyB,GAAGC,CAAC;AACnC,IAAAG,KAAK,EAAED,GAAG,EAAE,SAAS,CAACC,CAAC,EAAC,CAAE;AAAA,EAC3B,GAAE3B,IAAI,CAACuB,GAAGC,IAAIN,GAAG,UAAU;AAC1B,UAAMO,IAAIF,EAAE,OAAO,CAACG,GAAGC,MAAM;AAC3B,YAAMC,IAAI9B,EAAE6B,CAAC;AACb,aAAOC,IAAI,CAAC,GAAGF,GAAGE,CAAC,IAAIF;AAAA,IACxB,GAAE,CAAE,CAAA;AACL,IAAAD,EAAE,SAAS,KAAK,EAAED,GAAG,EAAE,SAASC,EAAC,CAAE;AAAA,EACpC,GAAE,IAAI,CAACF,GAAGC,IAAIN,GAAG,UAAU;AAC1B,UAAMO,IAAI,EAAE,IAAIF,EAAE,UAAU;AAC5B,QAAIE,GAAG;AACL,YAAMC,IAAI;AAAA,QACR,GAAGD;AAAA,QACH,QAAQ,CAAC,GAAGA,EAAE,QAAQF,CAAC;AAAA,MAC/B;AACM,QAAE,IAAIE,EAAE,IAAIC,CAAC,GAAGpC,EAAE,IAAIiC,EAAE,IAAIG,EAAE,EAAE,GAAG,EAAEF,GAAG,EAAE,SAAS,CAAC;AAAA,QAClD,UAAUC;AAAA,QACV,UAAUC;AAAA,QACV,eAAe,CAACH,CAAC;AAAA,MAClB,CAAA,EAAG,CAAA;AAAA,IACL;AACC,cAAQ,KAAK,8CAA8CA,EAAE,UAAU,EAAE;AAAA,EAC5E,GAAEjB,IAAI,MAAM,CAAC,GAAG,EAAE,OAAM,CAAE,GAAGC,IAAI,CAACgB,IAAIL,GAAG,UAAU;AAClD,UAAMM,IAAI,CAAC,GAAG,EAAE,OAAQ,CAAA;AACxB,MAAE,MAAK,GAAIlC,EAAE,MAAO,GAAE,EAAEiC,GAAG,EAAE,SAASC,EAAC,CAAE;AAAA,EAC7C,GAAKhB,IAAI,CAACe,GAAGC,IAAI,IAAIC,IAAIP,GAAG,UAAU;AAClC,QAAIM,GAAG;AACL,YAAME,IAAI,CAAC,GAAG,EAAE,OAAQ,CAAA;AACxB,QAAE,MAAO,GAAEpC,EAAE,MAAO,GAAEiC,EAAE,QAAQ,CAACI,MAAM;AACrC,UAAE,IAAIA,EAAE,IAAIA,CAAC,GAAGA,EAAE,OAAO,QAAQ,CAACC,MAAMtC,EAAE,IAAIsC,EAAE,IAAID,EAAE,EAAE,CAAC;AAAA,MACjE,CAAO,GAAG,EAAEF,GAAG,EAAE,SAASF,GAAG,SAASG,EAAC,CAAE;AAAA,IACzC,OAAW;AACL,YAAMA,IAAIH,EAAE,OAAO,CAACI,GAAGC,MAAM;AAC3B,cAAMC,IAAI,EAAE,IAAID,EAAE,EAAE;AACpB,eAAOC,IAAI,CAAC,GAAGF,GAAGE,CAAC,IAAIF;AAAA,MACxB,GAAE,CAAE,CAAA;AACL,UAAID,EAAE,SAAS;AACb,cAAM,MAAM,0DAA0DA,EAAE,IAAI,CAACC,MAAMA,EAAE,EAAE,EAAE,KAAK,IAAI,CAAC,EAAE;AACvG,MAAAJ,EAAE,QAAQ,CAACI,MAAM;AACf,UAAE,IAAIA,EAAE,IAAIA,CAAC,GAAGA,EAAE,OAAO,QAAQ,CAACC,MAAMtC,EAAE,IAAIsC,EAAE,IAAID,EAAE,EAAE,CAAC;AAAA,MACjE,CAAO,GAAG,EAAEF,GAAG,EAAE,SAASF,EAAG,CAAA;AAAA,IACxB;AAAA,EACL,GAAKd,IAAI,CAACc,MAAM;AACZ,UAAMC,IAAI,OAAOD,KAAK,WAAWA,IAAIA,EAAE,IAAIE,IAAI,EAAE,IAAID,CAAC;AACtD,QAAIC;AACF,aAAO,EAAE,OAAOD,CAAC,GAAGC,EAAE,OAAO,QAAQ,CAACC,MAAMpC,EAAE,OAAOoC,EAAE,EAAE,CAAC,GAAGD;AAC/D,YAAQ,KAAK,yCAAyCD,CAAC,EAAE;AAAA,EAC1D,GAAEb,IAAI,CAACY,GAAGC,IAAIN,GAAG,UAAU;AAC1B,UAAMO,IAAIhB,EAAEc,CAAC;AACb,IAAAE,KAAK,EAAED,GAAG,EAAE,SAAS,CAACC,CAAC,EAAC,CAAE;AAAA,EAC3B,GAAEK,IAAI,CAACP,GAAGC,IAAIN,GAAG,UAAU;AAC1B,UAAMO,IAAIF,EAAE,OAAO,CAACG,GAAGC,MAAM;AAC3B,YAAMC,IAAInB,EAAEkB,CAAC;AACb,aAAOC,IAAI,CAAC,GAAGF,GAAGE,CAAC,IAAIF;AAAA,IACxB,GAAE,CAAE,CAAA;AACL,IAAAD,EAAE,SAAS,KAAK,EAAED,GAAG,EAAE,SAASC,EAAC,CAAE;AAAA,EACpC,GAAEM,IAAI,CAACR,GAAGC,IAAIN,GAAG,UAAU;AAC1B,UAAMO,IAAI,EAAE,IAAIF,EAAE,UAAU;AAC5B,QAAIE,GAAG;AACL,YAAMC,IAAID,EAAE,OAAO,KAAK,CAACE,MAAMA,EAAE,OAAOJ,EAAE,EAAE;AAC5C,UAAIG,GAAG;AACL,QAAApC,EAAE,OAAOoC,EAAE,EAAE;AACb,cAAMC,IAAI;AAAA,UACR,GAAGF;AAAA,UACH,QAAQA,EAAE,OAAO,OAAO,CAACG,MAAMA,EAAE,OAAOL,EAAE,EAAE;AAAA,QACtD;AACQ,UAAE,IAAIE,EAAE,IAAIE,CAAC,GAAG,EAAEH,GAAG,EAAE,SAAS,CAAC;AAAA,UAC/B,UAAUC;AAAA,UACV,UAAUE;AAAA,UACV,eAAe,CAACD,CAAC;AAAA,QAClB,CAAA,EAAG,CAAA;AAAA,MACL;AACC,gBAAQ,KAAK,kCAAkCH,EAAE,EAAE,oBAAoBA,EAAE,UAAU,EAAE;AAAA,IACxF;AACC,cAAQ,KAAK,kDAAkDA,EAAE,UAAU,EAAE;AAAA,EACnF,GAAK,IAAI,CAACA,MAAM;AACZ,UAAMC,IAAI,EAAE,IAAID,CAAC;AACjB,WAAOC,IAAI,EAAE,GAAGA,EAAG,IAAG;AAAA,EAC1B,GAAKQ,IAAI,CAACT,MAAM;AACZ,UAAMC,IAAIlC,EAAE,IAAIiC,CAAC;AACjB,QAAIC,GAAG;AACL,YAAMC,IAAI,EAAED,CAAC,EAAE,OAAO,KAAK,CAACE,MAAMA,EAAE,OAAOH,CAAC;AAC5C,UAAIE;AACF,eAAOA;AACT,cAAQ,MAAM,+BAA+BF,CAAC,kCAAkC;AAAA,IACjF;AACC,cAAQ,KAAK,qCAAqCA,CAAC,EAAE;AAAA,EAC3D,GAAKU,IAAI,CAACV,GAAGC,MAAM;AACf,QAAID,EAAE,eAAeC,EAAE;AACrB,YAAM;AACR,UAAMC,IAAI,EAAE,IAAIF,EAAE,UAAU;AAC5B,QAAIE,GAAG;AACL,YAAMC,IAAID,EAAE,OAAO,KAAK,CAACG,MAAMA,EAAE,OAAOL,EAAE,EAAE,GAAGI,IAAI;AAAA,QACjD,GAAGF;AAAA,QACH,QAAQA,EAAE,OAAO,IAAI,CAACG,MAAMA,EAAE,OAAOF,EAAE,KAAKF,IAAII,CAAC;AAAA,MACzD;AACM,aAAO,EAAE,IAAIH,EAAE,IAAIE,CAAC,GAAGD,EAAE,OAAOF,EAAE,OAAOlC,EAAE,OAAOoC,EAAE,EAAE,GAAGpC,EAAE,IAAIkC,EAAE,IAAIG,EAAE,EAAE,IAAI;AAAA,QAC3E,UAAUF;AAAA,QACV,UAAUE;AAAA,QACV,eAAe,CAAC,EAAE,SAASD,GAAG,SAASF,EAAC,CAAE;AAAA,MAClD;AAAA,IACK;AACC,cAAQ,KAAK,6CAA6CD,EAAE,UAAU,EAAE;AAAA,EAC9E,GAAKW,IAAI,CAACX,GAAGC,GAAGC,IAAIP,GAAG,UAAU;AAC7B,UAAMQ,IAAIO,EAAEV,GAAGC,CAAC;AAChB,MAAEC,GAAG,EAAE,SAAS,CAACC,CAAC,EAAG,CAAA;AAAA,EACtB,GAAE,IAAI,CAACH,GAAGC,IAAIN,GAAG,UAAU;AAC1B,UAAMO,IAAIF,EAAE,IAAI,CAACG,MAAMO,EAAE,EAAE,IAAIP,EAAE,IAAI,YAAYA,EAAE,WAAY,GAAEA,CAAC,CAAC;AACnE,MAAEF,GAAG,EAAE,SAASC,EAAG,CAAA;AAAA,EACvB,GAAKU,IAAI,CAACZ,MAAM;AACZ,UAAMC,IAAI,EAAE,IAAID,EAAE,UAAU;AAC5B,QAAIC,GAAG;AACL,YAAMC,IAAI;AAAA,QACR,GAAGD;AAAA,QACH,QAAQ;AAAA,UACN,GAAGA,EAAE;AAAA,UACL,GAAGD;AAAA,QACJ;AAAA,MACT;AACM,aAAO,EAAE,IAAIC,EAAE,IAAIC,CAAC,GAAG;AAAA,QACrB,UAAUD;AAAA,QACV,UAAUC;AAAA,QACV,eAAe;AAAA,UACb,WAAWD,EAAE;AAAA,UACb,WAAWD;AAAA,QACZ;AAAA,MACT;AAAA,IACK;AACC,cAAQ,KAAK,mDAAmDA,EAAE,UAAU,EAAE;AAAA,EACpF;AACE,SAAO;AAAA,IACL,eAAetB;AAAA,IACf,SAAS;AAAA,IACT,KAAKK;AAAA,IACL,mBAAmBE;AAAA,IACnB,sBAAsBsB;AAAA,IACtB,sBAAsB9B;AAAA,IACtB,kBAAkB;AAAA,IAClB,mBAAmB,CAACuB,GAAGC,IAAIN,GAAG,UAAU;AACtC,YAAMO,IAAIF,EAAE,IAAIY,CAAC,EAAE,OAAO,CAACT,MAAMA,CAAC;AAClC,MAAAD,EAAE,SAAS,KAAK,EAAED,GAAG,EAAE,SAASC,EAAC,CAAE;AAAA,IACpC;AAAA,IACD,OAAOlB;AAAA,IACP,kBAAkBI;AAAA,IAClB,YAAYoB;AAAA,IACZ,eAAe;AAAA,IACf,SAASC;AAAA,IACT,SAASxC;AAAA,IACT,WAAWK;AAAA,IACX,kBAAkBE;AAAA,IAClB,YAAYmC;AAAA,IACZ,cAAc,CAACX,GAAGC,IAAIN,GAAG,UAAU;AACjC,YAAMO,IAAIU,EAAEZ,CAAC;AACb,MAAAE,KAAK,EAAED,GAAG,EAAE,SAAS,CAACC,CAAC,EAAC,CAAE;AAAA,IAC3B;AAAA,EACL;AACA;AACA,IAAIW,KAAK,OAAO;AAAA,EACd,KAAK,MAAM9C,GAAG;AACZ,QAAIC,IAAI,KAAK,OAAO,CAAC,KAAK,CAAA;AAC1B,aAASC,IAAI,GAAGK,IAAIN,EAAE,QAAQC,IAAIK,GAAGL;AACnC,MAAAD,EAAEC,CAAC,EAAE,GAAGF,CAAC;AAAA,EACZ;AAAA,EACD,QAAQ,CAAE;AAAA,EACV,GAAG,GAAGA,GAAG;AACP,QAAIC;AACJ,YAAQA,IAAI,KAAK,OAAO,CAAC,MAAM,QAAQA,EAAE,KAAKD,CAAC,MAAM,KAAK,OAAO,CAAC,IAAI,CAACA,CAAC,IAAI,MAAM;AAChF,UAAIE;AACJ,WAAK,OAAO,CAAC,KAAKA,IAAI,KAAK,OAAO,CAAC,MAAM,OAAO,SAASA,EAAE,OAAO,CAACK,MAAMP,MAAMO,CAAC;AAAA,IACtF;AAAA,EACG;AACH;AACA,MAAMwC,KAAK,KAAKC,KAAK,CAAC,MAAM;AAC1B,QAAMhD,IAAI8C,MAAM7C,IAAI,CAAA;AACpB,MAAIC,IAAI,IAAIK,IAAI,IAAI,IAAI;AACxB,QAAMI,IAAI,CAACO,MAAM;AACf,QAAI,CAACX,GAAG;AACN,YAAM,EAAE,SAASY,EAAG,IAAGD,GAAGG,IAAI,YAAY;AAC1C,UAAIA,IAAI,IAAI0B;AACV,QAAA9C,EAAE,OAAOC,IAAI,CAAC,GAAGD,EAAE,KAAKkB,CAAC,GAAGjB,IAAID,EAAE,SAAS;AAAA,WACxC;AACH,cAAMuC,IAAIvC,EAAE,SAAS;AACrB,QAAAA,EAAEuC,CAAC,IAAIV,GAAG7B,EAAEuC,CAAC,GAAGrB,CAAC;AAAA,MAClB;AACD,UAAIE;AAAA,IACL;AACD,IAAAd,IAAI;AAAA,EACR;AACE,IAAE,QAAQI,GAAG,EAAE,QAAQiB,GAAG,MAAK,CAAE;AACjC,QAAMpB,IAAI,CAACU,OAAOA,KAAK,OAAO,SAASA,EAAE,UAAU,KAAK,EAAE,qBAAqBA,CAAC,GAAGT,IAAI,CAACS,OAAOA,KAAK,OAAO,SAASA,EAAE,UAAU,KAAK,EAAE,kBAAkBA,GAAG,EAAE,GAAGR,IAAI,CAACQ,OAAOA,KAAK,OAAO,SAASA,EAAE,UAAU,KAAK,EAAE,qBAAqBA,EAAE,IAAI,CAAC,EAAE,UAAUC,EAAG,MAAKA,CAAC,CAAC,GAAG,IAAI,CAACD,OAAOA,KAAK,OAAO,SAASA,EAAE,UAAU,KAAK,EAAE,qBAAqBA,EAAE,IAAI,CAAC,EAAE,UAAUC,EAAG,MAAKA,CAAC,CAAC,GAAGH,IAAI,CAACE,OAAOA,KAAK,OAAO,SAASA,EAAE,UAAU,KAAK,EAAE,kBAAkBA,GAAG,EAAE,GAAGD,IAAI,CAACC,OAAOA,KAAK,OAAO,SAASA,EAAE,UAAU,KAAK,EAAE,qBAAqBA,CAAC;AAC3gB,SAAO;AAAA,IACL,SAAS,MAAMjB,EAAE,SAAS,IAAIC;AAAA,IAC9B,SAAS,MAAMA,IAAI;AAAA,IACnB,SAAS,MAAM,EAAE,UAAUS,CAAC;AAAA,IAC5B,IAAI,CAACO,GAAGC,MAAMnB,EAAE,GAAGkB,GAAGC,CAAC;AAAA,IACvB,MAAM,MAAM;AACV,UAAIlB,EAAE,SAAS,IAAIC,GAAG;AACpB,QAAAK,IAAI;AACJ,cAAM,EAAE,SAASW,GAAG,SAASC,GAAG,SAASE,MAAMpB,EAAEC,IAAI,CAAC;AACtD,QAAAO,EAAES,CAAC,GAAG,EAAEC,CAAC,GAAGF,EAAEI,CAAC,GAAGrB,EAAE,KAAK,QAAQC,EAAEC,IAAI,CAAC,CAAC,GAAGA,KAAK;AAAA,MAClD;AAAA,IACF;AAAA,IACD,MAAM,MAAM;AACV,UAAIA,IAAI,IAAI;AACV,QAAAK,IAAI;AACJ,cAAM,EAAE,SAASW,GAAG,SAASC,GAAG,SAASE,EAAG,IAAGpB,EAAEC,CAAC;AAClD,QAAAM,EAAEU,CAAC,GAAGR,EAAES,CAAC,GAAGH,EAAEK,CAAC,GAAGrB,EAAE,KAAK,QAAQC,EAAEC,CAAC,CAAC,GAAGA,KAAK;AAAA,MAC9C;AAAA,IACF;AAAA,EACL;AACA,GAAG+C,KAAK,MAAM;AACZ,QAAM,EAAE,WAAW,GAAG,KAAKjD,MAAMM,GAAG,CAAA,CAAE;AACtC,SAAO;AAAA,IACL,WAAW;AAAA,IACX,KAAKN;AAAA,EACT;AACA,GAAGkD,KAAK,CAAC,GAAGlD,GAAGC,GAAGC,MAAM;AACtB,QAAM,EAAE,OAAOK,GAAG,WAAW,GAAG,OAAOI,GAAG,UAAUH,EAAC,IAAK,GAAGC,IAAoB,oBAAI,IAAG;AACxF,MAAIC,IAAI,CAAA,GAAI,GAAGM;AACf,QAAMC,IAAI,CAACwB,GAAG,MAAM;AAClB,IAAAhC,EAAE,IAAIgC,CAAC,IAAIhC,EAAE,IAAIgC,CAAC,EAAE,KAAK,CAAC,IAAIhC,EAAE,IAAIgC,GAAG,CAAC,CAAC,CAAC;AAAA,EAC9C,GAAKvB,IAAI,CAACuB,GAAG,MAAM;AACf,UAAMC,IAAIjC,EAAE,IAAIgC,CAAC;AACjB,IAAAC,KAAKA,EAAE,QAAQ,CAAC,IAAI,KAAKA,EAAE,OAAOA,EAAE,QAAQ,CAAC,GAAG,CAAC;AAAA,EAClD,GAAEvB,IAAI,CAACsB,GAAG,GAAGC,MAAM;AAClB,IAAAjC,EAAE,IAAIgC,CAAC,KAAK,WAAW,MAAM;AAC3B,MAAAhC,EAAE,IAAIgC,CAAC,EAAE,QAAQ,CAACE,MAAM;AACtB,YAAI1C,GAAG;AACL,gBAAM2C,IAAI,MAAM,QAAQ,CAAC,IAAI,EAAE,IAAI,CAACC,MAAM5C,EAAE,UAAU4C,CAAC,CAAC,IAAI5C,EAAE,UAAU,CAAC,GAAG,IAAIyC,IAAIA,aAAa,eAAeA,IAAIzC,EAAE,UAAUyC,CAAC,IAAI;AACrI,UAAAC,EAAEC,GAAG,CAAC;AAAA,QACP;AACC,UAAAD,EAAE,GAAGD,CAAC;AAAA,MAChB,CAAO;AAAA,IACF,GAAE,CAAC;AAAA,EACL,GAAErB,IAAI,MAAM;AACX,UAAM,EAAE,UAAUoB,EAAC,IAAK,GAAG,IAAIA,EAAE,IAAI,CAAC,EAAE,IAAIC,EAAG,MAAKnC,EAAE,cAAcmC,CAAC,CAAC;AACtE,MAAE,QAAQ,CAACA,MAAM;AACf,YAAMC,IAAIjC,EAAE,KAAK,CAACkC,MAAMA,EAAE,OAAOF,EAAE,EAAE;AACrC,OAAC,CAACC,KAAK,CAAC5C,GAAG4C,GAAGD,CAAC,MAAMvB,EAAE,oBAAoBuB,GAAGC,CAAC;AAAA,IACrD,CAAK,GAAGjC,IAAIA,EAAE,IAAI,CAACgC,MAAM,EAAE,KAAK,CAAC,EAAE,IAAIE,EAAC,MAAOA,MAAMF,EAAE,EAAE,KAAKA,CAAC;AAAA,EAC/D;AACE,IAAE,UAAU,CAAC,EAAE,UAAUD,EAAC,MAAO;AAC/B,QAAI,EAAE/B,EAAE,WAAW,KAAK+B,EAAE,WAAW,IAAI;AACvC,UAAI/B,EAAE,WAAW,KAAK+B,EAAE,SAAS;AAC/B,QAAA/B,IAAI+B,EAAE,IAAI,CAAC,EAAE,IAAI,EAAG,MAAKlC,EAAE,cAAc,CAAC,CAAC;AAAA,eACpCG,EAAE,SAAS,KAAK+B,EAAE,WAAW;AACpC,QAAA/B,EAAE,QAAQ,CAAC,MAAM;AACf,gBAAMgC,IAAInC,EAAE,cAAc,EAAE,EAAE;AAC9B,UAAAmC,KAAK,CAAC3C,GAAG2C,GAAG,CAAC,KAAKvB,EAAE,oBAAoBuB,GAAG,CAAC;AAAA,QACtD,CAAS,GAAGhC,IAAI;WACL;AACH,cAAM,IAAI,IAAI,IAAIA,EAAE,IAAI,CAACiC,MAAMA,EAAE,EAAE,CAAC,GAAGD,IAAI,IAAI,IAAID,EAAE,IAAI,CAAC,EAAE,IAAIE,EAAC,MAAOA,CAAC,CAAC;AAC1E,QAAAjC,EAAE,OAAO,CAACiC,MAAM,CAACD,EAAE,IAAIC,EAAE,EAAE,CAAC,EAAE,QAAQ,CAACA,MAAM;AAC3C,gBAAMC,IAAIrC,EAAE,cAAcoC,EAAE,EAAE;AAC9B,UAAAC,KAAK,CAAC7C,GAAG6C,GAAGD,CAAC,KAAKxB,EAAE,oBAAoByB,GAAGD,CAAC;AAAA,QAC7C,CAAA,GAAGjC,IAAI;AAAA;AAAA,UAEN,GAAGA,EAAE,OAAO,CAACiC,MAAMD,EAAE,IAAIC,EAAE,EAAE,CAAC;AAAA;AAAA,UAE9B,GAAGF,EAAE,OAAO,CAAC,EAAE,IAAIE,QAAQ,CAAC,EAAE,IAAIA,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,IAAIA,EAAG,MAAKpC,EAAE,cAAcoC,CAAC,CAAC;AAAA,QACrF;AAAA,MACO;AACD,MAAAxB,EAAE,oBAAoBT,CAAC;AAAA,IACxB;AAAA,EACF,CAAA,GAAGC,EAAE,UAAU,CAAC8B,MAAM;AACrB,KAAC,KAAKA,IAAItB,EAAE,wBAAwBZ,EAAE,cAAckC,CAAC,CAAC,IAAI,KAAK,CAACA,IAAItB,EAAE,wBAAwBZ,EAAE,cAAc,CAAC,CAAC,IAAI,KAAKkC,MAAMtB,EAAE,wBAAwBZ,EAAE,cAAc,CAAC,CAAC,GAAGY,EAAE,wBAAwBZ,EAAE,cAAckC,CAAC,CAAC,IAAI,IAAIA;AAAA,EACtO,CAAG,GAAGjC,KAAK,QAAQA,EAAE,UAAU,CAACiC,MAAMtB,EAAE,qBAAqBsB,EAAE,IAAIlC,EAAE,aAAa,CAAC,CAAC,GAAGA,EAAE,QAAQ,CAACkC,MAAM;AACpG,IAAAvC,MAAMc,KAAK,aAAaA,CAAC,GAAGA,IAAI,WAAWK,GAAG,GAAG;AACjD,UAAM,EAAE,SAAS,GAAG,SAASqB,EAAG,IAAGD,EAAE;AACrC,MAAE,QAAQ,CAACE,MAAMxB,EAAE,oBAAoBwB,CAAC,CAAC,GAAGD,EAAE,QAAQ,CAACC,MAAMxB,EAAE,oBAAoBwB,CAAC,CAAC,GAAGF,EAAE,QAAQ,QAAQ,OAAO,CAACE,MAAM;AAAA,MACtH,GAAGA,EAAE,iBAAiB,CAAE;AAAA,MACxB,GAAGA,EAAE,iBAAiB,CAAE;AAAA,MACxB,GAAGA,EAAE,iBAAiB,CAAE;AAAA,IAC9B,EAAM,SAAS,CAAC,EAAE,QAAQ,CAAC,EAAE,UAAUA,GAAG,UAAUC,QAAQ;AACtD,YAAM,IAAIlC,EAAE,KAAK,CAACmC,MAAMA,EAAE,OAAOF,EAAE,EAAE,KAAKA;AAC1C,MAAAjC,IAAIA,EAAE,IAAI,CAACmC,MAAMA,EAAE,OAAOF,EAAE,KAAKC,IAAIC,CAAC,GAAG1B,EAAE,oBAAoByB,GAAG,CAAC;AAAA,IACzE,CAAK;AAAA,EACL,GAAK,EAAE,QAAQhB,GAAG,MAAK,CAAE,GAAGrB,EAAE,QAAQ,CAACkC,MAAM;AACzC,QAAI/B,GAAG;AACL,YAAM,IAAI,IAAI,IAAIA,EAAE,IAAI,CAACiC,MAAMA,EAAE,EAAE,CAAC,GAAGD,IAAID,EAAE,QAAQ,QAAQ,OAAO,CAAC,EAAE,UAAUE,EAAC,MAAO,EAAE,IAAIA,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,UAAUA,EAAG,MAAKA,CAAC;AAChI,MAAAD,EAAE,SAAS,MAAMhC,IAAIA,EAAE,IAAI,CAACiC,MAAMD,EAAE,KAAK,CAACS,MAAMA,EAAE,OAAOR,EAAE,EAAE,KAAKA,CAAC;AAAA,IACpE;AAAA,EACF,GAAE,EAAE,QAAQf,GAAG,OAAQ,CAAA;AACxB,QAAMY,IAAI,CAACC,MAAM,CAAC,MAAM;AACtB,UAAM,EAAE,SAASC,GAAG,SAASC,GAAG,SAASC,EAAG,IAAG;AAC/C,IAAAF,EAAE,QAAQ,CAAC,MAAMvB,EAAE,oBAAoB,CAAC,CAAC,GAAGwB,EAAE,QAAQ,CAAC,MAAMxB,EAAE,oBAAoB,CAAC,CAAC,GAAGsB,IAAIG,EAAE,QAAQ,CAAC,MAAMzB,EAAE,oBAAoB,EAAE,UAAU,EAAE,QAAQ,CAAC,IAAIyB,EAAE,QAAQ,CAAC,MAAMzB,EAAE,oBAAoB,EAAE,UAAU,EAAE,QAAQ,CAAC;AAAA,EAChO;AACE,SAAOnB,EAAE,GAAG,QAAQwC,EAAE,EAAE,CAAC,GAAGxC,EAAE,GAAG,QAAQwC,EAAE,EAAE,CAAC,GAAG,EAAE,IAAIvB,GAAG,KAAKC,GAAG,MAAMC;AAC1E,GAAGiC,KAAK,CAAC,MAAM,CAACpD,MAAMA,EAAE,OAAO,CAACC,GAAGC,MAAM;AACvC,QAAM,EAAE,QAAQK,GAAG,OAAO,EAAC,IAAK,EAAE,MAAML,CAAC;AACzC,SAAO,IAAI;AAAA,IACT,QAAQD,EAAE;AAAA,IACV,QAAQ,CAAC,GAAGA,EAAE,QAAQC,CAAC;AAAA,EAC3B,IAAM;AAAA,IACF,QAAQ,CAAC,GAAGD,EAAE,QAAQM,CAAC;AAAA,IACvB,QAAQN,EAAE;AAAA,EACd;AACA,GAAG,EAAE,QAAQ,IAAI,QAAQ,CAAE,EAAA,CAAE,GAAGoD,KAAK,CAAC,GAAGrD,GAAGC,MAAM;AAChD,QAAM,EAAE,OAAOC,GAAG,WAAWK,EAAC,IAAK,GAAG,IAAI,CAACiC,MAAM;AAC/C,QAAIvC,GAAG;AACL,YAAM,EAAE,QAAQwC,GAAG,OAAO,EAAC,IAAKxC,EAAE,MAAMuC,CAAC;AACzC,MAAAC,IAAIvC,EAAE,cAAcuC,GAAGb,GAAG,MAAM,IAAI,QAAQ,MAAM,CAAC;AAAA,IACpD;AACC,MAAA1B,EAAE,cAAcsC,GAAGZ,GAAG,MAAM;AAAA,EAC/B,GAAEjB,IAAI,MAAMJ,EAAE,SAASC,IAAI,MAAMN,EAAE,MAAK,GAAIO,IAAI,CAAC+B,MAAM;AACtD,UAAMC,IAAIvC,EAAE,cAAcsC,CAAC;AAC3B,WAAOvC,KAAKwC,IAAIxC,EAAE,UAAUwC,CAAC,IAAIA;AAAA,EAClC,GAAE/B,IAAI,MAAMT,IAAIC,EAAE,IAAG,EAAG,IAAID,EAAE,SAAS,IAAIC,EAAE,IAAK,GAAE,IAAI,MAAM;AAC7D,QAAIsC;AACJ,UAAMC,OAAOD,IAAIjC,EAAE,aAAa,OAAO,SAASiC,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,MAAM,CAAA,GAAI,IAAI,CAAC,MAAMtC,EAAE,cAAc,CAAC,CAAC;AACxG,WAAOD,IAAIwC,EAAE,IAAIxC,EAAE,SAAS,IAAIwC;AAAA,EACpC,GAAKzB,IAAI,CAACwB,MAAM,MAAMA,CAAC,EAAE,KAAK,CAACC,MAAMA,EAAE,KAAI,CAAE,EAAE,KAAK,CAACA,OAAOvB,EAAEuB,CAAC,GAAGA,EAAE,GAAGxB,IAAI,CAACuB,MAAM;AAC9E,QAAI,OAAOA,KAAK,UAAU;AACxB,YAAMC,IAAIvC,EAAE,cAAcsC,CAAC;AAC3B,aAAOtC,EAAE,iBAAiBsC,CAAC,GAAGvC,IAAIA,EAAE,UAAUwC,CAAC,IAAIA;AAAA,IACzD,OAAW;AACL,YAAMA,IAAIxC,IAAIA,EAAE,MAAMuC,CAAC,EAAE,SAASA;AAClC,aAAOtC,EAAE,iBAAiBuC,CAAC,GAAGD;AAAA,IAC/B;AAAA,EACL,GAAKtB,IAAI,CAACsB,MAAM;AACZ,QAAIvC,GAAG;AACL,YAAM,EAAE,QAAQwC,GAAG,QAAQ,EAAG,IAAGW,GAAGnD,CAAC,EAAEuC,CAAC;AACxC,QAAE,SAAS,KAAK,QAAQ,KAAK,aAAa,EAAE,MAAM,wBAAwB,CAAC,GAAGtC,EAAE,kBAAkBuC,GAAG,IAAIb,GAAG,MAAM;AAAA,IACnH;AACC,MAAA1B,EAAE,kBAAkBsC,GAAG,IAAIZ,GAAG,MAAM;AAAA,EAC1C,GAAKT,IAAI,CAACqB,MAAM;AACZ,IAAAA,IAAIjC,EAAE,YAAYiC,CAAC,IAAIjC,EAAE;EAC7B,GAAKc,IAAI,CAACmB,MAAM;AACZ,QAAIvC,GAAG;AACL,YAAMwC,IAAIxC,EAAE,MAAMuC,CAAC,EAAE,QAAQ,IAAIvC,EAAE,UAAUC,EAAE,cAAcuC,EAAE,EAAE,CAAC;AAClE,aAAOvC,EAAE,iBAAiBuC,CAAC,GAAG;AAAA,IACpC,OAAW;AACL,YAAMA,IAAIvC,EAAE,cAAcsC,EAAE,EAAE;AAC9B,aAAOtC,EAAE,iBAAiBsC,CAAC,GAAGC;AAAA,IAC/B;AAAA,EACL;AACE,SAAO;AAAA,IACL,eAAe;AAAA,IACf,gBAAgB9B;AAAA,IAChB,SAASX,EAAE;AAAA,IACX,SAASA,EAAE;AAAA,IACX,kBAAkBQ;AAAA,IAClB,mBAAmBC;AAAA,IACnB,gBAAgBC;AAAA,IAChB,aAAa;AAAA,IACb,iBAAiBM;AAAA,IACjB,MAAMhB,EAAE;AAAA,IACR,kBAAkBiB;AAAA,IAClB,gBAAgBC;AAAA,IAChB,aAAaC;AAAA,IACb,MAAMnB,EAAE;AAAA,IACR,kBAAkBqB;AAAA,EACtB;AACA;AACA,IAAIiC,KAAK,CAAC,MAAM,OAAO,gBAAgB,IAAI,WAAW,CAAC,CAAC,GAAGC,KAAK,CAAC,GAAGvD,GAAGC,MAAM;AAC3E,MAAIC,KAAK,KAAK,KAAK,IAAI,EAAE,SAAS,CAAC,IAAI,KAAK,OAAO,GAAGK,IAAI,CAAC,EAAE,MAAML,IAAIF,IAAI,EAAE;AAC7E,SAAO,CAAC,IAAIA,MAAM;AAChB,QAAIW,IAAI;AACR,eAAW;AACT,UAAIH,IAAIP,EAAEM,CAAC,GAAGE,IAAIF;AAClB,aAAOE;AACL,YAAIE,KAAK,EAAEH,EAAEC,CAAC,IAAIP,CAAC,KAAK,IAAIS,EAAE,WAAW;AACvC,iBAAOA;AAAA,IACZ;AAAA,EACL;AACA,GAAG6C,KAAK,CAAC,GAAGxD,IAAI,OAAOuD,GAAG,GAAGvD,GAAGsD,EAAE,GAAGG,KAAK,CAAC,IAAI,OAAO,OAAO,gBAAgB,IAAI,WAAW,CAAC,CAAC,EAAE,OAAO,CAACzD,GAAGC,OAAOA,KAAK,IAAIA,IAAI,KAAKD,KAAKC,EAAE,SAAS,EAAE,IAAIA,IAAI,KAAKD,MAAMC,IAAI,IAAI,SAAS,EAAE,EAAE,YAAW,IAAKA,IAAI,KAAKD,KAAK,MAAMA,KAAK,KAAKA,IAAI,EAAE;AAClP,MAAM0D,KAAK,OAAO,EAAE,SAAS,IAAI,IAAIF,GAAG,mEAAmE,EAAE,EAAG,EAAA;AAChHC;AACA,SAASE,KAAK;AACd;AACA,SAASC,GAAG,GAAG5D,GAAG;AAChB,aAAWC,KAAKD;AACd,MAAEC,CAAC,IAAID,EAAEC,CAAC;AACZ,SAAO;AACT;AACA,SAAS4D,GAAG,GAAG;AACb,SAAO,EAAC;AACV;AACA,SAASC,KAAK;AACZ,SAAuB,uBAAO,OAAO,IAAI;AAC3C;AACA,SAASC,GAAG,GAAG;AACb,IAAE,QAAQF,EAAE;AACd;AACA,SAASG,GAAG,GAAG;AACb,SAAO,OAAO,KAAK;AACrB;AACA,SAASC,GAAG,GAAGjE,GAAG;AAChB,SAAO,KAAK,IAAIA,KAAKA,IAAI,MAAMA,KAAK,KAAK,OAAO,KAAK,YAAY,OAAO,KAAK;AAC/E;AACA,SAASkE,GAAG,GAAG;AACb,SAAO,OAAO,KAAK,CAAC,EAAE,WAAW;AACnC;AACA,SAASC,GAAG,MAAMnE,GAAG;AACnB,MAAI,KAAK;AACP,WAAO2D;AACT,QAAM1D,IAAI,EAAE,UAAU,GAAGD,CAAC;AAC1B,SAAOC,EAAE,cAAc,MAAMA,EAAE,YAAW,IAAKA;AACjD;AACA,SAASmE,GAAG,GAAGpE,GAAGC,GAAG;AACnB,IAAE,GAAG,WAAW,KAAKkE,GAAGnE,GAAGC,CAAC,CAAC;AAC/B;AACA,SAASoE,GAAG,GAAGrE,GAAGC,GAAGC,GAAG;AACtB,MAAI,GAAG;AACL,UAAMK,IAAI+D,GAAG,GAAGtE,GAAGC,GAAGC,CAAC;AACvB,WAAO,EAAE,CAAC,EAAEK,CAAC;AAAA,EACd;AACH;AACA,SAAS+D,GAAG,GAAGtE,GAAGC,GAAGC,GAAG;AACtB,SAAO,EAAE,CAAC,KAAKA,IAAI0D,GAAG3D,EAAE,IAAI,MAAK,GAAI,EAAE,CAAC,EAAEC,EAAEF,CAAC,CAAC,CAAC,IAAIC,EAAE;AACvD;AACA,SAASsE,GAAG,GAAGvE,GAAGC,GAAGC,GAAG;AACtB,MAAI,EAAE,CAAC,KAAKA,GAAG;AACb,UAAMK,IAAI,EAAE,CAAC,EAAEL,EAAED,CAAC,CAAC;AACnB,QAAID,EAAE,UAAU;AACd,aAAOO;AACT,QAAI,OAAOA,KAAK,UAAU;AACxB,YAAM,IAAI,CAAA,GAAII,IAAI,KAAK,IAAIX,EAAE,MAAM,QAAQO,EAAE,MAAM;AACnD,eAASC,IAAI,GAAGA,IAAIG,GAAGH,KAAK;AAC1B,UAAEA,CAAC,IAAIR,EAAE,MAAMQ,CAAC,IAAID,EAAEC,CAAC;AACzB,aAAO;AAAA,IACR;AACD,WAAOR,EAAE,QAAQO;AAAA,EAClB;AACD,SAAOP,EAAE;AACX;AACA,SAASwE,GAAG,GAAGxE,GAAGC,GAAGC,GAAGK,GAAG,GAAG;AAC5B,MAAIA,GAAG;AACL,UAAMI,IAAI2D,GAAGtE,GAAGC,GAAGC,GAAG,CAAC;AACvB,MAAE,EAAES,GAAGJ,CAAC;AAAA,EACT;AACH;AACA,SAASkE,GAAG,GAAG;AACb,MAAI,EAAE,IAAI,SAAS,IAAI;AACrB,UAAMzE,IAAI,CAAA,GAAIC,IAAI,EAAE,IAAI,SAAS;AACjC,aAASC,IAAI,GAAGA,IAAID,GAAGC;AACrB,MAAAF,EAAEE,CAAC,IAAI;AACT,WAAOF;AAAA,EACR;AACD,SAAO;AACT;AACA,MAAM0E,KAAK,OAAO,SAAS,MAAM,SAAS,OAAO,aAAa,MAAM,aAAa;AACjF,SAASC,GAAG,GAAG3E,GAAG;AAChB,IAAE,YAAYA,CAAC;AACjB;AACA,SAAS4E,EAAE,GAAG5E,GAAGC,GAAG;AAClB,IAAE,aAAaD,GAAGC,KAAK,IAAI;AAC7B;AACA,SAAS4E,EAAE,GAAG;AACZ,IAAE,cAAc,EAAE,WAAW,YAAY,CAAC;AAC5C;AACA,SAASC,GAAG,GAAG9E,GAAG;AAChB,WAASC,IAAI,GAAGA,IAAI,EAAE,QAAQA,KAAK;AACjC,MAAEA,CAAC,KAAK,EAAEA,CAAC,EAAE,EAAED,CAAC;AACpB;AACA,SAAS+E,GAAG,GAAG;AACb,SAAO,SAAS,gBAAgB,8BAA8B,CAAC;AACjE;AACA,SAASC,GAAG,GAAG;AACb,SAAO,SAAS,eAAe,CAAC;AAClC;AACA,SAASC,KAAK;AACZ,SAAOD,GAAG,GAAG;AACf;AACA,SAASE,KAAK;AACZ,SAAOF,GAAG,EAAE;AACd;AACA,SAASG,GAAG,GAAGnF,GAAGC,GAAGC,GAAG;AACtB,SAAO,EAAE,iBAAiBF,GAAGC,GAAGC,CAAC,GAAG,MAAM,EAAE,oBAAoBF,GAAGC,GAAGC,CAAC;AACzE;AACA,SAASkF,EAAE,GAAGpF,GAAGC,GAAG;AAClB,EAAAA,KAAK,OAAO,EAAE,gBAAgBD,CAAC,IAAI,EAAE,aAAaA,CAAC,MAAMC,KAAK,EAAE,aAAaD,GAAGC,CAAC;AACnF;AACA,SAASoF,GAAG,GAAG;AACb,SAAO,MAAM,KAAK,EAAE,UAAU;AAChC;AACA,SAASC,GAAG,GAAGtF,GAAG;AAChB,EAAAA,IAAI,KAAKA,GAAG,EAAE,SAASA,MAAM,EAAE,OAAOA;AACxC;AACA,SAASuF,GAAG,GAAGvF,GAAGC,GAAG;AACnB,IAAE,UAAUA,IAAI,QAAQ,QAAQ,EAAED,CAAC;AACrC;AACA,SAASwF,GAAG,GAAGxF,GAAG,EAAE,SAASC,IAAI,IAAI,YAAYC,IAAI,GAAE,IAAK,CAAA,GAAI;AAC9D,QAAMK,IAAI,SAAS,YAAY,aAAa;AAC5C,SAAOA,EAAE,gBAAgB,GAAGN,GAAGC,GAAGF,CAAC,GAAGO;AACxC;AACA,IAAIkF;AACJ,SAASC,GAAG,GAAG;AACb,EAAAD,KAAK;AACP;AACA,SAASE,KAAK;AACZ,MAAI,CAACF;AACH,UAAM,IAAI,MAAM,kDAAkD;AACpE,SAAOA;AACT;AACA,SAASG,GAAG,GAAG;AACb,EAAAD,GAAI,EAAC,GAAG,SAAS,KAAK,CAAC;AACzB;AACA,SAASE,GAAG,GAAG;AACb,EAAAF,GAAI,EAAC,GAAG,WAAW,KAAK,CAAC;AAC3B;AACA,SAASG,KAAK;AACZ,QAAM,IAAIH;AACV,SAAO,CAAC3F,GAAGC,GAAG,EAAE,YAAYC,IAAI,GAAI,IAAG,OAAO;AAC5C,UAAMK,IAAI,EAAE,GAAG,UAAUP,CAAC;AAC1B,QAAIO,GAAG;AACL,YAAM,IAAIiF,GAAGxF,GAAGC,GAAG,EAAE,YAAYC,EAAC,CAAE;AACpC,aAAOK,EAAE,MAAK,EAAG,QAAQ,CAACI,MAAM;AAC9B,QAAAA,EAAE,KAAK,GAAG,CAAC;AAAA,MACnB,CAAO,GAAG,CAAC,EAAE;AAAA,IACR;AACD,WAAO;AAAA,EACX;AACA;AACA,SAASoF,GAAG,GAAG/F,GAAG;AAChB,QAAMC,IAAI,EAAE,GAAG,UAAUD,EAAE,IAAI;AAC/B,EAAAC,KAAKA,EAAE,MAAO,EAAC,QAAQ,CAACC,MAAMA,EAAE,KAAK,MAAMF,CAAC,CAAC;AAC/C;AACA,MAAMgG,KAAK,CAAA,GAAIC,KAAK;AACpB,IAAIC,KAAK,CAAA;AACT,MAAMC,KAAK,CAAA,GAAIC,KAAqB,wBAAQ,QAAO;AACnD,IAAIC,KAAK;AACT,SAASC,KAAK;AACZ,EAAAD,OAAOA,KAAK,IAAID,GAAG,KAAKG,EAAE;AAC5B;AACA,SAASC,GAAG,GAAG;AACb,EAAAN,GAAG,KAAK,CAAC;AACX;AACA,MAAMO,KAAqB,oBAAI;AAC/B,IAAIC,KAAK;AACT,SAASH,KAAK;AACZ,MAAIG,OAAO;AACT;AACF,QAAM,IAAIjB;AACV,KAAG;AACD,QAAI;AACF,aAAOiB,KAAKV,GAAG,UAAU;AACvB,cAAMhG,IAAIgG,GAAGU,EAAE;AACf,QAAAA,MAAMhB,GAAG1F,CAAC,GAAG2G,GAAG3G,EAAE,EAAE;AAAA,MACrB;AAAA,IACF,SAAQA,GAAG;AACV,YAAMgG,GAAG,SAAS,GAAGU,KAAK,GAAG1G;AAAA,IAC9B;AACD,SAAK0F,GAAG,IAAI,GAAGM,GAAG,SAAS,GAAGU,KAAK,GAAGT,GAAG;AACvC,MAAAA,GAAG,IAAG;AACR,aAASjG,IAAI,GAAGA,IAAIkG,GAAG,QAAQlG,KAAK,GAAG;AACrC,YAAMC,IAAIiG,GAAGlG,CAAC;AACd,MAAAyG,GAAG,IAAIxG,CAAC,MAAMwG,GAAG,IAAIxG,CAAC,GAAGA,EAAC;AAAA,IAC3B;AACD,IAAAiG,GAAG,SAAS;AAAA,EAChB,SAAWF,GAAG;AACZ,SAAOG,GAAG;AACR,IAAAA,GAAG,IAAG;AACR,EAAAE,KAAK,IAAII,GAAG,MAAK,GAAIf,GAAG,CAAC;AAC3B;AACA,SAASiB,GAAG,GAAG;AACb,MAAI,EAAE,aAAa,MAAM;AACvB,MAAE,OAAQ,GAAE5C,GAAG,EAAE,aAAa;AAC9B,UAAM/D,IAAI,EAAE;AACZ,MAAE,QAAQ,CAAC,EAAE,GAAG,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,KAAKA,CAAC,GAAG,EAAE,aAAa,QAAQwG,EAAE;AAAA,EAChF;AACH;AACA,SAASI,GAAG,GAAG;AACb,QAAM5G,IAAI,CAAA,GAAIC,IAAI;AAClB,EAAAiG,GAAG,QAAQ,CAAChG,MAAM,EAAE,QAAQA,CAAC,MAAM,KAAKF,EAAE,KAAKE,CAAC,IAAID,EAAE,KAAKC,CAAC,CAAC,GAAGD,EAAE,QAAQ,CAACC,MAAMA,EAAC,CAAE,GAAGgG,KAAKlG;AAC9F;AACA,MAAM6G,KAAqB,oBAAI;AAC/B,IAAIC;AACJ,SAASC,KAAK;AACZ,EAAAD,KAAK;AAAA,IACH,GAAG;AAAA,IACH,GAAG,CAAE;AAAA,IACL,GAAGA;AAAA;AAAA,EAEP;AACA;AACA,SAASE,KAAK;AACZ,EAAAF,GAAG,KAAK/C,GAAG+C,GAAG,CAAC,GAAGA,KAAKA,GAAG;AAC5B;AACA,SAASG,GAAG,GAAGjH,GAAG;AAChB,OAAK,EAAE,MAAM6G,GAAG,OAAO,CAAC,GAAG,EAAE,EAAE7G,CAAC;AAClC;AACA,SAASkH,GAAG,GAAGlH,GAAGC,GAAGC,GAAG;AACtB,MAAI,KAAK,EAAE,GAAG;AACZ,QAAI2G,GAAG,IAAI,CAAC;AACV;AACF,IAAAA,GAAG,IAAI,CAAC,GAAGC,GAAG,EAAE,KAAK,MAAM;AACzB,MAAAD,GAAG,OAAO,CAAC,GAAG3G,MAAMD,KAAK,EAAE,EAAE,CAAC,GAAGC,EAAG;AAAA,IACrC,CAAA,GAAG,EAAE,EAAEF,CAAC;AAAA,EACV;AACC,IAAAE,KAAKA,EAAC;AACV;AACA,SAASiH,GAAG,GAAG;AACb,OAAK,EAAE;AACT;AACA,SAASC,GAAG,GAAGpH,GAAGC,GAAGC,GAAG;AACtB,QAAM,EAAE,UAAUK,GAAG,cAAc,EAAG,IAAG,EAAE;AAC3C,EAAAA,KAAKA,EAAE,EAAEP,GAAGC,CAAC,GAAGC,KAAKsG,GAAG,MAAM;AAC5B,UAAM7F,IAAI,EAAE,GAAG,SAAS,IAAIkD,EAAE,EAAE,OAAOG,EAAE;AACzC,MAAE,GAAG,aAAa,EAAE,GAAG,WAAW,KAAK,GAAGrD,CAAC,IAAIoD,GAAGpD,CAAC,GAAG,EAAE,GAAG,WAAW;EACvE,CAAA,GAAG,EAAE,QAAQ6F,EAAE;AAClB;AACA,SAASa,GAAG,GAAGrH,GAAG;AAChB,QAAMC,IAAI,EAAE;AACZ,EAAAA,EAAE,aAAa,SAAS2G,GAAG3G,EAAE,YAAY,GAAG8D,GAAG9D,EAAE,UAAU,GAAGA,EAAE,YAAYA,EAAE,SAAS,EAAED,CAAC,GAAGC,EAAE,aAAaA,EAAE,WAAW,MAAMA,EAAE,MAAM,CAAE;AAC3I;AACA,SAASqH,GAAG,GAAGtH,GAAG;AAChB,IAAE,GAAG,MAAM,CAAC,MAAM,OAAOgG,GAAG,KAAK,CAAC,GAAGM,GAAI,GAAE,EAAE,GAAG,MAAM,KAAK,CAAC,IAAI,EAAE,GAAG,MAAMtG,IAAI,KAAK,CAAC,KAAK,KAAKA,IAAI;AACrG;AACA,SAASuH,GAAG,GAAGvH,GAAGC,GAAGC,GAAGK,GAAG,GAAGI,GAAGH,IAAI,CAAC,EAAE,GAAG;AACzC,QAAMC,IAAIgF;AACV,EAAAC,GAAG,CAAC;AACJ,QAAMhF,IAAI,EAAE,KAAK;AAAA,IACf,UAAU;AAAA,IACV,KAAK,CAAE;AAAA;AAAA,IAEP,OAAO;AAAA,IACP,QAAQiD;AAAA,IACR,WAAWpD;AAAA,IACX,OAAOuD,GAAI;AAAA;AAAA,IAEX,UAAU,CAAE;AAAA,IACZ,YAAY,CAAE;AAAA,IACd,eAAe,CAAE;AAAA,IACjB,eAAe,CAAE;AAAA,IACjB,cAAc,CAAE;AAAA,IAChB,SAAS,IAAI,IAAI9D,EAAE,YAAYS,IAAIA,EAAE,GAAG,UAAU,CAAA,EAAG;AAAA;AAAA,IAErD,WAAWqD,GAAI;AAAA,IACf,OAAOtD;AAAA,IACP,YAAY;AAAA,IACZ,MAAMR,EAAE,UAAUS,EAAE,GAAG;AAAA,EAC3B;AACE,EAAAE,KAAKA,EAAED,EAAE,IAAI;AACb,MAAI,IAAI;AACR,MAAIA,EAAE,MAAMT,IAAIA,EAAE,GAAGD,EAAE,SAAS,CAAE,GAAE,CAACgB,GAAGC,MAAMC,MAAM;AAClD,UAAMC,IAAID,EAAE,SAASA,EAAE,CAAC,IAAID;AAC5B,WAAOP,EAAE,OAAOH,EAAEG,EAAE,IAAIM,CAAC,GAAGN,EAAE,IAAIM,CAAC,IAAIG,CAAC,MAAM,CAACT,EAAE,cAAcA,EAAE,MAAMM,CAAC,KAAKN,EAAE,MAAMM,CAAC,EAAEG,CAAC,GAAG,KAAKmG,GAAG,GAAGtG,CAAC,IAAIC;AAAA,EAChH,CAAG,IAAI,CAAA,GAAIP,EAAE,OAAQ,GAAE,IAAI,IAAIqD,GAAGrD,EAAE,aAAa,GAAGA,EAAE,WAAWR,IAAIA,EAAEQ,EAAE,GAAG,IAAI,IAAIV,EAAE,QAAQ;AAC1F,QAAIA,EAAE,SAAS;AACb,YAAMgB,IAAIqE,GAAGrF,EAAE,MAAM;AACrB,MAAAU,EAAE,YAAYA,EAAE,SAAS,EAAEM,CAAC,GAAGA,EAAE,QAAQ6D,CAAC;AAAA,IAC3C;AACC,MAAAnE,EAAE,YAAYA,EAAE,SAAS,EAAC;AAC5B,IAAAV,EAAE,SAASiH,GAAG,EAAE,GAAG,QAAQ,GAAGG,GAAG,GAAGpH,EAAE,QAAQA,EAAE,QAAQA,EAAE,aAAa,GAAGuG;EAC3E;AACD,EAAAb,GAAGjF,CAAC;AACN;AACA,MAAM+G,GAAG;AAAA,EACP,WAAW;AACT,IAAAH,GAAG,MAAM,CAAC,GAAG,KAAK,WAAW1D;AAAA,EAC9B;AAAA,EACD,IAAI3D,GAAGC,GAAG;AACR,QAAI,CAAC+D,GAAG/D,CAAC;AACP,aAAO0D;AACT,UAAMzD,IAAI,KAAK,GAAG,UAAUF,CAAC,MAAM,KAAK,GAAG,UAAUA,CAAC,IAAI,CAAE;AAC5D,WAAOE,EAAE,KAAKD,CAAC,GAAG,MAAM;AACtB,YAAMM,IAAIL,EAAE,QAAQD,CAAC;AACrB,MAAAM,MAAM,MAAML,EAAE,OAAOK,GAAG,CAAC;AAAA,IAC/B;AAAA,EACG;AAAA,EACD,KAAKP,GAAG;AACN,SAAK,SAAS,CAACkE,GAAGlE,CAAC,MAAM,KAAK,GAAG,aAAa,IAAI,KAAK,MAAMA,CAAC,GAAG,KAAK,GAAG,aAAa;AAAA,EACvF;AACH;AACA,IAAIyH,KAAsB,kBAAC,OAAO,EAAE,UAAU,WAAW,EAAE,UAAU,WAAW,EAAE,YAAY,aAAa,IAAIA,MAAM,CAAA,CAAE;AACvH,MAAMC,KAAK,CAAE,GAAEC,KAAK,CAAC,GAAG3H,MAAM0H,GAAG,CAAC,IAAI1H,GAAG4H,KAAK,CAAC,MAAMF,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,GAAGG,KAAK,CAAC,GAAG7H,GAAGC,MAAMyH,GAAG,EAAE,IAAI,EAAE,WAAW,GAAG1H,GAAGC,CAAC,GAAG6H,KAAK,CAAC,MAAM;AACrI,MAAI9H,IAAI,OAAOC,IAAI,IAAI,GAAGC,IAAI,KAAK,GAAGK,IAAI,KAAK;AAC/C,SAAO,EAAE,QAAQ,CAAC,CAAC,GAAGI,CAAC,MAAM;AAC3B,IAAAX,IAAI,KAAK,IAAIA,GAAG,CAAC,GAAGC,IAAI,KAAK,IAAIA,GAAGU,CAAC,GAAGT,IAAI,KAAK,IAAIA,GAAG,CAAC,GAAGK,IAAI,KAAK,IAAIA,GAAGI,CAAC;AAAA,EACjF,CAAG,GAAG,EAAE,MAAMX,GAAG,MAAMC,GAAG,MAAMC,GAAG,MAAMK;AACzC,GAAGwH,KAAK;AAAA,EACN,MAAM,CAAC,MAAM,KAAK,KAAK,EAAE,SAAS,KAAK,EAAE,SAAS;AAAA,EAClD,YAAY,CAAC,GAAG/H,GAAGC,MAAM;AACvB,UAAM,EAAE,IAAIC,GAAG,IAAIK,GAAG,IAAI,GAAG,IAAII,EAAC,IAAK,EAAE,UAAUH,IAAI,GAAGC,IAAI,KAAK,IAAID,CAAC,GAAGE,IAAI,KAAK,IAAIF,CAAC,GAAG,IAAIR,IAAIE,GAAGc,IAAIf,IAAIM,GAAGU,IAAIR,IAAI,IAAIC,IAAIM,GAAGE,IAAIR,IAAI,IAAID,IAAIO;AACrJ,WAAOC,IAAIA,KAAK,IAAI,KAAKC,IAAIA,KAAKP,IAAIA,MAAM;AAAA,EAC7C;AACH;AACAgH,GAAGF,GAAG,SAASM,EAAE;AACjB,MAAMC,KAAK;AAAA,EACT,MAAM,CAAC,MAAM;AACX,UAAM,EAAE,QAAQhI,MAAM,EAAE;AACxB,QAAIC,IAAI,GAAGC,IAAIF,EAAE,SAAS;AAC1B,aAASO,IAAI,GAAGA,IAAIP,EAAE,QAAQO;AAC5B,MAAAN,MAAMD,EAAEE,CAAC,EAAE,CAAC,IAAIF,EAAEO,CAAC,EAAE,CAAC,MAAMP,EAAEE,CAAC,EAAE,CAAC,IAAIF,EAAEO,CAAC,EAAE,CAAC,IAAIL,IAAIK;AACtD,WAAO,KAAK,IAAI,MAAMN,CAAC;AAAA,EACxB;AAAA,EACD,YAAY,CAAC,GAAGD,GAAGC,MAAM;AACvB,UAAM,EAAE,QAAQC,MAAM,EAAE;AACxB,QAAIK,IAAI;AACR,aAAS,IAAI,GAAGI,IAAIT,EAAE,SAAS,GAAG,IAAIA,EAAE,QAAQS,IAAI,KAAK;AACvD,YAAMH,IAAIN,EAAE,CAAC,EAAE,CAAC,GAAGO,IAAIP,EAAE,CAAC,EAAE,CAAC,GAAGQ,IAAIR,EAAES,CAAC,EAAE,CAAC,GAAG,IAAIT,EAAES,CAAC,EAAE,CAAC;AACvD,MAAAF,IAAIR,KAAK,IAAIA,KAAKD,KAAKU,IAAIF,MAAMP,IAAIQ,MAAM,IAAIA,KAAKD,MAAMD,IAAI,CAACA;AAAA,IAChE;AACD,WAAOA;AAAA,EACR;AACH;AACAoH,GAAGF,GAAG,SAASO,EAAE;AACjB,MAAMC,KAAK;AAAA,EACT,MAAM,CAAC,MAAM,EAAE,SAAS,IAAI,EAAE,SAAS;AAAA,EACvC,YAAY,CAAC,GAAGjI,GAAGC,MAAMD,KAAK,EAAE,SAAS,KAAKA,KAAK,EAAE,SAAS,IAAI,EAAE,SAAS,KAAKC,KAAK,EAAE,SAAS,KAAKA,KAAK,EAAE,SAAS,IAAI,EAAE,SAAS;AACxI;AACA0H,GAAGF,GAAG,WAAWQ,EAAE;AACnB,IAAIC;AACJ,MAAMC,KAAK,IAAI,WAAW,EAAE;AAC5B,SAASC,KAAK;AACZ,MAAI,CAACF,OAAOA,KAAK,OAAO,SAAS,OAAO,OAAO,mBAAmB,OAAO,gBAAgB,KAAK,MAAM,GAAG,CAACA;AACtG,UAAM,IAAI,MAAM,0GAA0G;AAC5H,SAAOA,GAAGC,EAAE;AACd;AACA,MAAME,KAAK,CAAA;AACX,SAAS,IAAI,GAAG,IAAI,KAAK,EAAE;AACzB,EAAAA,GAAG,MAAM,IAAI,KAAK,SAAS,EAAE,EAAE,MAAM,CAAC,CAAC;AACzC,SAASC,GAAG,GAAGtI,IAAI,GAAG;AACpB,SAAOqI,GAAG,EAAErI,IAAI,CAAC,CAAC,IAAIqI,GAAG,EAAErI,IAAI,CAAC,CAAC,IAAIqI,GAAG,EAAErI,IAAI,CAAC,CAAC,IAAIqI,GAAG,EAAErI,IAAI,CAAC,CAAC,IAAI,MAAMqI,GAAG,EAAErI,IAAI,CAAC,CAAC,IAAIqI,GAAG,EAAErI,IAAI,CAAC,CAAC,IAAI,MAAMqI,GAAG,EAAErI,IAAI,CAAC,CAAC,IAAIqI,GAAG,EAAErI,IAAI,CAAC,CAAC,IAAI,MAAMqI,GAAG,EAAErI,IAAI,CAAC,CAAC,IAAIqI,GAAG,EAAErI,IAAI,CAAC,CAAC,IAAI,MAAMqI,GAAG,EAAErI,IAAI,EAAE,CAAC,IAAIqI,GAAG,EAAErI,IAAI,EAAE,CAAC,IAAIqI,GAAG,EAAErI,IAAI,EAAE,CAAC,IAAIqI,GAAG,EAAErI,IAAI,EAAE,CAAC,IAAIqI,GAAG,EAAErI,IAAI,EAAE,CAAC,IAAIqI,GAAG,EAAErI,IAAI,EAAE,CAAC;AACnR;AACA,MAAMuI,KAAK,OAAO,SAAS,OAAO,OAAO,cAAc,OAAO,WAAW,KAAK,MAAM,GAAGC,KAAK;AAAA,EAC1F,YAAYD;AACd;AACA,SAASE,GAAG,GAAGzI,GAAGC,GAAG;AACnB,MAAIuI,GAAG,cAAc,CAACxI,KAAK,CAAC;AAC1B,WAAOwI,GAAG;AACZ,MAAI,KAAK;AACT,QAAMtI,IAAI,EAAE,WAAW,EAAE,OAAOkI;AAChC,MAAIlI,EAAE,CAAC,IAAIA,EAAE,CAAC,IAAI,KAAK,IAAIA,EAAE,CAAC,IAAIA,EAAE,CAAC,IAAI,KAAK,KAAKF,GAAG;AACpD,IAAAC,IAAIA,KAAK;AACT,aAASM,IAAI,GAAGA,IAAI,IAAI,EAAEA;AACxB,MAAAP,EAAEC,IAAIM,CAAC,IAAIL,EAAEK,CAAC;AAChB,WAAOP;AAAA,EACR;AACD,SAAOsI,GAAGpI,CAAC;AACb;AACA,SAASwI,GAAG,GAAG1I,GAAGC,GAAG;AACnB,QAAMC,IAAI,EAAE;AACZ,SAAOA,EAAE,EAAE,IAAIF,EAAEC,CAAC,GAAGC,EAAE,EAAE,IAAID,GAAGC;AAClC;AACA,SAASyI,GAAG,GAAG;AACb,MAAI3I,GAAGC,GAAGC,GAAGK,GAAG;AAChB,SAAO;AAAA,IACL,IAAI;AACF,MAAAP,IAAI+E,GAAG,MAAM,GAAGK,EAAEpF,GAAG,SAAS,mBAAmB,GAAGoF,EAAEpF,GAAG,KAAKC;AAAA,MAC9D,EAAE,EAAE,EAAE,CAAC;AAAA,MACP,EAAE,CAAC,IAAI,CAAC,GAAGmF,EAAEpF,GAAG,KAAKE;AAAA,MACrB,EAAE,EAAE,EAAE,CAAC;AAAA,MACP,EAAE,CAAC,IAAI,CAAC,GAAGkF;AAAA,QACTpF;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAASoF;AAAA,QACDpF;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX;AAAA,IACK;AAAA,IACD,EAAEW,GAAGH,GAAG;AACN,MAAAoE,EAAEjE,GAAGX,GAAGQ,CAAC,GAAGD,MAAM,IAAI4E,GAAGnF,GAAG,eAAe,WAAW;AACpD,QAAAgE;AAAA;AAAA,UAEE,EAAE,EAAE,EAAE4E;AAAA;AAAA,YAEJ,EAAE,EAAE;AAAA,UAChB,CAAW;AAAA,QACX,KAAa,EAAE,EAAE,EAAEA;AAAA;AAAA,UAET,EAAE,EAAE;AAAA,QACL,CAAA,EAAE,MAAM,MAAM,SAAS;AAAA,MAChC,CAAO,GAAGrI,IAAI;AAAA,IACT;AAAA,IACD,EAAEI,GAAGH,GAAG;AACN,UAAIG,GAAGH;AAAA,MACP,MAAMP,OAAOA;AAAA,MACb,EAAE,EAAE,EAAE,CAAC;AAAA,MACP,EAAE,CAAC,IAAI,MAAMmF,EAAEpF,GAAG,KAAKC,CAAC,GAAGO;AAAA,MAC3B,MAAMN,OAAOA;AAAA,MACb,EAAE,EAAE,EAAE,CAAC;AAAA,MACP,EAAE,CAAC,IAAI,MAAMkF,EAAEpF,GAAG,KAAKE,CAAC,GAAGM;AAAA,MAC3B,KAAK4E;AAAA,QACHpF;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAASQ;AAAA,MACH,KAAK4E;AAAA,QACHpF;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX;AAAA,IACK;AAAA,IACD,EAAEW,GAAG;AACH,MAAAA,KAAKkE,EAAE7E,CAAC,GAAGO,IAAI,IAAI;IACpB;AAAA,EACL;AACA;AACA,SAASsI,GAAG,GAAG;AACb,MAAI7I,GAAGC,GAAGC,GAAGK,GAAG,GAAGI,GAAGH,GAAGC,GAAGC,GAAG,GAAGM;AAAA;AAAA,IAEhC,EAAE,CAAC,EAAE;AAAA,KACJC,IAAI,CAAA;AACP,WAASC,IAAI,GAAGA,IAAIF,EAAE,QAAQE,KAAK;AACjC,IAAAD,EAAEC,CAAC,IAAIyH,GAAGD,GAAG,GAAG1H,GAAGE,CAAC,CAAC;AACvB,SAAO;AAAA,IACL,IAAI;AACF,MAAAlB,IAAI+E,GAAG,SAAS,GAAGxE,IAAI0E,GAAE,GAAI,IAAIF,GAAG,SAAS,GAAGvE,IAAIyE,GAAE;AACtD,eAAS/D,IAAI,GAAGA,IAAID,EAAE,QAAQC,KAAK;AACjC,QAAAD,EAAEC,CAAC,EAAE;AACP,MAAAT,IAAIyE,GAAE,GAAIE,EAAEpF,GAAG,SAAS,WAAW,GAAGoF,EAAEpF,GAAG,SAASC;AAAA,MACpD,EAAE,CAAC,IAAI,kBAAkB,MAAM,GAAGmF,EAAEpF,GAAG,UAAUE;AAAA,MACjD,EAAE,CAAC,EAAE,OAAO,IAAI4I,EAAE,EAAE,KAAK,GAAG,CAAC,GAAG1D,EAAE,GAAG,SAAS,4BAA4B,GAAGA;AAAA,QAC3E;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAASA,EAAE,GAAG,UAAUzE;AAAA,MAClB,EAAE,CAAC,EAAE,OAAO,IAAIoI,EAAE,EAAE,KAAK,GAAG,CAAC;AAAA,IAC9B;AAAA,IACD,EAAE7H,GAAGC,GAAG;AACN,MAAAyD,EAAE1D,GAAGlB,GAAGmB,CAAC,GAAGyD,EAAE1D,GAAGX,GAAGY,CAAC,GAAGyD,EAAE1D,GAAG,GAAGC,CAAC,GAAGyD,EAAE1D,GAAGV,GAAGW,CAAC;AAC7C,eAASE,IAAI,GAAGA,IAAIJ,EAAE,QAAQI,KAAK;AACjC,QAAAJ,EAAEI,CAAC,KAAKJ,EAAEI,CAAC,EAAE,EAAEH,GAAGC,CAAC;AACrB,MAAAyD,EAAE1D,GAAGT,GAAGU,CAAC,GAAGT,MAAM,IAAI;AAAA,QACpByE,GAAGnF,GAAG,eAAe,WAAW;AAC9B,UAAAgE;AAAA;AAAA,YAEE,EAAE,EAAE,EAAE4E,EAAE,KAAK;AAAA,UACzB,KAAe,EAAE,EAAE,EAAEA,EAAE,KAAK,EAAE,MAAM,MAAM,SAAS;AAAA,QACnD,CAAS;AAAA,QACDzD,GAAG,GAAG,eAAe,WAAW;AAC9B,UAAAnB;AAAA;AAAA,YAEE,EAAE,EAAE,EAAE4E,EAAE,KAAK;AAAA,UACzB,KAAe,EAAE,EAAE,EAAEA,EAAE,KAAK,EAAE,MAAM,MAAM,SAAS;AAAA,QACnD,CAAS;AAAA,MACT,GAASlI,IAAI;AAAA,IACR;AAAA,IACD,EAAEQ,GAAGC,GAAG;AACN,UAAI,IAAID,GAAGC;AAAA,MACX,KAAKlB,OAAOA;AAAA,MACZ,EAAE,CAAC,IAAI,kBAAkB,WAAWmF,EAAEpF,GAAG,SAASC,CAAC,GAAGkB;AAAA,MACtD,MAAMjB,OAAOA;AAAA,MACb,EAAE,CAAC,EAAE,OAAO,IAAI4I,EAAE,EAAE,KAAK,GAAG,MAAM1D,EAAEpF,GAAG,UAAUE,CAAC,GAAGiB;AAAA,MACrD,KAAKiE;AAAA,QACH;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAASjE;AAAA,MACH,MAAMR,OAAOA;AAAA,MACb,EAAE,CAAC,EAAE,OAAO,IAAIoI,EAAE,EAAE,KAAK,GAAG,MAAM3D,EAAE,GAAG,UAAUzE,CAAC,GAAGQ;AAAA,MACrD,MAAM;AACJ,QAAAH;AAAA,QACA,EAAE,CAAC,EAAE;AACL,YAAIK;AACJ,aAAKA,IAAI,GAAGA,IAAIL,EAAE,QAAQK,KAAK,GAAG;AAChC,gBAAMmB,IAAIkG,GAAG,GAAG1H,GAAGK,CAAC;AACpB,UAAAJ,EAAEI,CAAC,IAAIJ,EAAEI,CAAC,EAAE,EAAEmB,GAAGrB,CAAC,KAAKF,EAAEI,CAAC,IAAIsH,GAAGnG,CAAC,GAAGvB,EAAEI,CAAC,EAAE,EAAG,GAAEJ,EAAEI,CAAC,EAAE,EAAEZ,EAAE,YAAYA,CAAC;AAAA,QACtE;AACD,eAAOY,IAAIJ,EAAE,QAAQI,KAAK;AACxB,UAAAJ,EAAEI,CAAC,EAAE,EAAE,CAAC;AACV,QAAAJ,EAAE,SAASD,EAAE;AAAA,MACd;AAAA,IACF;AAAA,IACD,EAAEE,GAAG;AACH,MAAAA,KAAK2D,EAAE7E,CAAC,GAAGkB,KAAK2D,EAAEtE,CAAC,GAAGW,KAAK2D,EAAE,CAAC,GAAG3D,KAAK2D,EAAErE,CAAC,GAAGsE,GAAG7D,GAAGC,CAAC,GAAGA,KAAK2D,EAAEpE,CAAC,GAAGC,IAAI,IAAIqD,GAAG,CAAC;AAAA,IAC9E;AAAA,EACL;AACA;AACA,SAASiF,GAAG,GAAG;AACb,MAAIhJ,GAAGC;AACP,SAAOD,IAAI,IAAIiJ,GAAG;AAAA,IAChB,OAAO;AAAA,MACL;AAAA;AAAA,QAEE,EAAE,CAAC;AAAA;AAAA,MAEL;AAAA;AAAA,QAEE,EAAE,CAAC;AAAA;AAAA,MAEL;AAAA;AAAA,QAEE,EAAE,CAAC;AAAA;AAAA,MAEL,SAAS;AAAA,QACP,SAAS;AAAA,UACPJ;AAAA,UACA,CAAC,EAAE,MAAM3I,EAAC,OAAQ,EAAE,IAAIA,EAAC;AAAA,UACzB,CAAC,EAAE,MAAMA,EAAG,MAAKA,IAAI,OAAO;AAAA,QAC7B;AAAA,MACF;AAAA,MACD,SAAS,EAAE,KAAK,EAAG;AAAA,IACpB;AAAA,EACL,CAAG,GAAGF,EAAE;AAAA,IACJ;AAAA;AAAA,IAEA,EAAE,CAAC;AAAA,EACJ,GAAEA,EAAE;AAAA,IACH;AAAA;AAAA,IAEA,EAAE,CAAC;AAAA,EACJ,GAAEA,EAAE;AAAA,IACH;AAAA;AAAA,IAEA,EAAE,CAAC;AAAA,EACP,GAAK;AAAA,IACD,IAAI;AACF,MAAAmH,GAAGnH,EAAE,GAAG,QAAQ;AAAA,IACjB;AAAA,IACD,EAAEE,GAAGK,GAAG;AACN,MAAA6G,GAAGpH,GAAGE,GAAGK,CAAC,GAAGN,IAAI;AAAA,IAClB;AAAA,IACD,EAAEC,GAAG,CAACK,CAAC,GAAG;AACR,YAAM,IAAI,CAAA;AACV,MAAAA;AAAA,MACA,MAAM,EAAE;AAAA,MACRL,EAAE,CAAC,IAAIK;AAAA,MACP,MAAM,EAAE;AAAA,MACRL,EAAE,CAAC,IAAIK;AAAA,MACP,UAAU,EAAE,UAAU,EAAE,OAAOA,GAAG,KAAKL,EAAG,IAAGF,EAAE,KAAK,CAAC;AAAA,IACtD;AAAA,IACD,EAAEE,GAAG;AACH,MAAAD,MAAMgH,GAAGjH,EAAE,GAAG,UAAUE,CAAC,GAAGD,IAAI;AAAA,IACjC;AAAA,IACD,EAAEC,GAAG;AACH,MAAAgH,GAAGlH,EAAE,GAAG,UAAUE,CAAC,GAAGD,IAAI;AAAA,IAC3B;AAAA,IACD,EAAEC,GAAG;AACH,MAAAmH,GAAGrH,GAAGE,CAAC;AAAA,IACR;AAAA,EACL;AACA;AACA,MAAM4I,KAAK,CAAC,MAAM,EAAE,KAAK,GAAG,GAAGC,KAAK,CAAC,MAAM,EAAE,KAAK,GAAG;AACrD,SAASG,GAAG,GAAGlJ,GAAGC,GAAG;AACnB,MAAIC,GAAGK,GAAG,EAAE,OAAO,EAAG,IAAGP,GAAG,EAAE,eAAeW,IAAI,OAAQ,IAAGX,GAAG,EAAE,WAAWQ,MAAMR,GAAG,EAAE,eAAeS,IAAI,EAAG,IAAGT;AAChH,QAAMU,IAAI,CAACQ,GAAGC,GAAGE,MAAM;AACrB,QAAImB;AACJ,IAAArB,MAAMyH,EAAE,QAAQpG,IAAItB,EAAE,SAAS,OAAO,IAAI,CAAC,CAAC,GAAGwB,CAAC,MAAM,CAAC,IAAIrB,EAAE,CAAC,GAAGqB,IAAIrB,EAAE,CAAC,CAAC,CAAC,IAAImB,IAAItB,EAAE,SAAS,OAAO,IAAI,CAAC,CAAC,GAAGwB,CAAC,GAAGC,MAAMxB,MAAMyH,EAAEjG,CAAC,IAAI,CAAC,IAAItB,EAAE,CAAC,GAAGqB,IAAIrB,EAAE,CAAC,CAAC,IAAI,CAAC,GAAGqB,CAAC,CAAC;AACjK,UAAMD,IAAIqF,GAAGtF,CAAC;AACd,WAAO,EAAE,GAAGtB,GAAG,UAAU,EAAE,QAAQsB,GAAG,QAAQC,EAAC;EACnD;AACE,WAAS,EAAEvB,GAAG;AACZ,IAAA6E,GAAG,KAAK,MAAM,GAAG7E,CAAC;AAAA,EACnB;AACD,WAASF,EAAEE,GAAG;AACZ,IAAA6E,GAAG,KAAK,MAAM,GAAG7E,CAAC;AAAA,EACnB;AACD,WAASD,EAAEC,GAAG;AACZ,IAAA6E,GAAG,KAAK,MAAM,GAAG7E,CAAC;AAAA,EACnB;AACD,SAAO,EAAE,QAAQ,CAACA,MAAM;AACtB,eAAWA,KAAKjB,EAAE,GAAG,IAAIiB,EAAE,KAAK,GAAG,mBAAmBA,KAAKjB,EAAE,GAAGU,IAAIO,EAAE,aAAa,GAAG,eAAeA,KAAKjB,EAAE,GAAGO,IAAIU,EAAE,SAAS,GAAG,mBAAmBA,KAAKjB,EAAE,GAAGQ,IAAIS,EAAE,aAAa;AAAA,EACrL,GAAK,EAAE,GAAG,SAAS,MAAM;AACrB,MAAE,GAAG;AAAA,IACL,KAAKjB,EAAE,GAAGC,IAAI,EAAE,QAAQ,GAAG,EAAE,GAAG;AAAA,IAChC,MAAMD,EAAE,GAAGM,IAAI,KAAKE,CAAC;AAAA,EACzB,GAAK;AAAA,IACD;AAAA,IACAE;AAAA,IACAH;AAAA,IACAD;AAAA,IACAL;AAAA,IACAQ;AAAA,IACAD;AAAA,IACA;AAAA,IACAO;AAAA,IACAC;AAAA,EACJ;AACA;AACA,MAAMkI,WAAW3B,GAAG;AAAA,EAClB,YAAYxH,GAAG;AACb,UAAK,GAAIuH,GAAG,MAAMvH,GAAGkJ,IAAIF,IAAI/E,IAAI;AAAA,MAC/B,OAAO;AAAA,MACP,eAAe;AAAA,MACf,WAAW;AAAA,MACX,eAAe;AAAA,IACrB,CAAK;AAAA,EACF;AACH;AACA,SAASmF,GAAG,GAAG;AACb,MAAIpJ,GAAGC,GAAGC,GAAGK,GAAG,GAAGI,GAAGH,GAAGC,GAAGC,GAAG,GAAGM,GAAGC,GAAGC,GAAGC,GAAGE,GAAGmB,GAAGC,GAAG,GAAGC,GAAGC,GAAGC,GAAG,GAAGC,GAAGZ,GAAGC,GAAGC,GAAGC,GAAGC,GAAGC,GAAGC,GAAG8G,GAAGC,GAAGC,GAAGC,IAAGC,GAAG,GAAGC,GAAGC,GAAGC,GAAIC,GAAIC,IAAIC,GAAGC,IAAIC,IAAIC,IAAIC,IAAGC,IAAIC,IAAIC,IAAIC;AAChK,SAAO;AAAA,IACL,IAAI;AACF,MAAAvK,IAAI+E,GAAG,MAAM,GAAGvE,IAAIyE,GAAI,GAAExE,IAAIsE,GAAG,MAAM,GAAG7D,IAAI+D,GAAI,GAAE9D,IAAI4D,GAAG,MAAM,GAAG,IAAIE,GAAE,GAAIvC,IAAIqC,GAAG,MAAM,GAAGlC,IAAIoC,GAAI,GAAEhD,IAAI8C,GAAG,MAAM,GAAG1C,IAAI4C,GAAI,GAAE3C,IAAIyC,GAAG,MAAM,GAAGwE,IAAItE,GAAE,GAAIuE,KAAIzE,GAAG,MAAM,GAAG2E,IAAIzE,GAAE,GAAI0E,IAAI5E,GAAG,MAAM,GAAG+E,KAAK7E,GAAE,GAAI8E,IAAIhF,GAAG,MAAM,GAAGmF,KAAKjF,GAAI,GAAEkF,KAAIpF,GAAG,MAAM,GAAGK,EAAEpF,GAAG,SAAS,WAAW,GAAGoF,EAAEpF,GAAG,SAASC;AAAA,MACtS,EAAE,CAAC,IAAI,kBAAkB,MAAM,GAAGmF,EAAEpF,GAAG,KAAKE;AAAA,MAC5C,EAAE,CAAC,EAAE,CAAC,GAAGkF,EAAEpF,GAAG,KAAKO;AAAA,MACnB,EAAE,CAAC,EAAE,CAAC,GAAG6E,EAAEpF,GAAG,SAAS;AAAA,MACvB,EAAE,CAAC,EAAE,CAAC,GAAGoF,EAAEpF,GAAG,UAAUW;AAAA,MACxB,EAAE,CAAC,EAAE,CAAC,GAAGyE,EAAE3E,GAAG,SAAS,4BAA4B,GAAG2E;AAAA,QACpD3E;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAAS2E,EAAE3E,GAAG,KAAKC;AAAA,MACb,EAAE,CAAC,EAAE,CAAC,GAAG0E,EAAE3E,GAAG,KAAK;AAAA,MACnB,EAAE,CAAC,EAAE,CAAC,GAAG2E,EAAE3E,GAAG,SAASO;AAAA,MACvB,EAAE,CAAC,EAAE,CAAC,GAAGoE,EAAE3E,GAAG,UAAUQ;AAAA,MACxB,EAAE,CAAC,EAAE,CAAC,GAAGmE,EAAEjE,GAAG,SAAS,qCAAqC,GAAGiE,EAAEjE,GAAG,KAAKE;AAAA,MACzE,EAAE,CAAC,EAAE,CAAC,GAAG+D,EAAEjE,GAAG,KAAKqB;AAAA,MACnB,EAAE,CAAC,EAAE,CAAC,GAAG4C,EAAEjE,GAAG,UAAU,CAAC,GAAGiE,EAAEjE,GAAG,SAASsB;AAAA,MAC1C,EAAE,CAAC,EAAE,CAAC,GAAG2C,EAAE1C,GAAG,SAAS,uCAAuC,GAAG0C,EAAE1C,GAAG,KAAKC;AAAA,MAC3E,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,EAAE,CAAC,GAAGyC,EAAE1C,GAAG,KAAKE;AAAA,MACnB,EAAE,CAAC,EAAE,CAAC,GAAGwC,EAAE1C,GAAG,UAAU;AAAA,MACxB,EAAE,CAAC,EAAE,CAAC,GAAG0C,EAAE1C,GAAG,SAAS,CAAC,GAAG0C,EAAEnD,GAAG,SAAS,wCAAwC,GAAGmD,EAAEnD,GAAG,KAAKC;AAAA,MAC9F,EAAE,CAAC,EAAE,CAAC,GAAGkD,EAAEnD,GAAG,KAAKE;AAAA,MACnB,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,EAAE,CAAC,GAAGiD,EAAEnD,GAAG,UAAU,CAAC,GAAGmD,EAAEnD,GAAG,SAASG;AAAA,MAC1C,EAAE,CAAC,EAAE,CAAC,GAAGgD,EAAE9C,GAAG,SAAS,sCAAsC,GAAG8C,EAAE9C,GAAG,KAAKC;AAAA,MAC1E,EAAE,CAAC,EAAE,CAAC,GAAG6C,EAAE9C,GAAG,KAAK+G;AAAA,MACnB,EAAE,CAAC,EAAE,CAAC,GAAGjE,EAAE9C,GAAG,UAAUgH;AAAA,MACxB,EAAE,CAAC,EAAE,CAAC,GAAGlE,EAAE9C,GAAG,SAAS,CAAC,GAAG8C,EAAEoE,IAAG,SAAS,6CAA6C,GAAGpE,EAAEoE,IAAG,KAAKC;AAAA,MACnG,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,IAAI,CAAC,GAAGrE,EAAEoE,IAAG,KAAK;AAAA,MACrB,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,IAAI,CAAC,GAAGpE;AAAA,QACToE;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAASpE;AAAA,QACDoE;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAASpE,EAAEuE,GAAG,SAAS,8CAA8C,GAAGvE,EAAEuE,GAAG,KAAKC;AAAA,MAC5E,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,IAAI,CAAC,GAAGxE,EAAEuE,GAAG,KAAKE;AAAA,MACrB,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,IAAI,CAAC,GAAGzE;AAAA,QACTuE;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAASvE;AAAA,QACDuE;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAASvE,EAAE2E,GAAG,SAAS,iDAAiD,GAAG3E,EAAE2E,GAAG,KAAKC;AAAA,MAC/E,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,IAAI,CAAC,GAAG5E,EAAE2E,GAAG,KAAKE;AAAA,MACrB,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,IAAI,CAAC,GAAG7E;AAAA,QACT2E;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAAS3E;AAAA,QACD2E;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAAS3E,EAAE+E,IAAG,SAAS,gDAAgD,GAAG/E,EAAE+E,IAAG,KAAKC;AAAA,MAC9E,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,IAAI,CAAC,GAAGhF,EAAE+E,IAAG,KAAKE;AAAA,MACrB,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,IAAI,CAAC,GAAGjF;AAAA,QACT+E;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAAS/E;AAAA,QACD+E;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX;AAAA,IACK;AAAA,IACD,EAAEK,GAAGC,GAAG;AACN,MAAA7F,EAAE4F,GAAGxK,GAAGyK,CAAC,GAAG7F,EAAE4F,GAAGhK,GAAGiK,CAAC,GAAG7F,EAAE4F,GAAG/J,GAAGgK,CAAC,GAAG7F,EAAE4F,GAAGtJ,GAAGuJ,CAAC,GAAG7F,EAAE4F,GAAGrJ,GAAGsJ,CAAC,GAAG7F,EAAE4F,GAAG,GAAGC,CAAC,GAAG7F,EAAE4F,GAAG9H,GAAG+H,CAAC,GAAG7F,EAAE4F,GAAG3H,GAAG4H,CAAC,GAAG7F,EAAE4F,GAAGvI,GAAGwI,CAAC,GAAG7F,EAAE4F,GAAGnI,GAAGoI,CAAC,GAAG7F,EAAE4F,GAAGlI,GAAGmI,CAAC,GAAG7F,EAAE4F,GAAGjB,GAAGkB,CAAC,GAAG7F,EAAE4F,GAAGhB,IAAGiB,CAAC,GAAG7F,EAAE4F,GAAGd,GAAGe,CAAC,GAAG7F,EAAE4F,GAAGb,GAAGc,CAAC,GAAG7F,EAAE4F,GAAGV,IAAIW,CAAC,GAAG7F,EAAE4F,GAAGT,GAAGU,CAAC,GAAG7F,EAAE4F,GAAGN,IAAIO,CAAC,GAAG7F,EAAE4F,GAAGL,IAAGM,CAAC,GAAGH,OAAOC,IAAK;AAAA,QAChPpF,GAAGnF,GAAG,eAAe,WAAW;AAC9B,UAAAgE;AAAA;AAAA,YAEE,EAAE,EAAE,EAAE4E,EAAE,KAAK;AAAA,UACzB,KAAe,EAAE,EAAE,EAAEA,EAAE,KAAK,EAAE,MAAM,MAAM,SAAS;AAAA,QACnD,CAAS;AAAA,QACDzD,GAAG1E,GAAG,eAAe,WAAW;AAC9B,UAAAuD;AAAA;AAAA,YAEE,EAAE,EAAE,EAAE4E,EAAE,KAAK;AAAA,UACzB,KAAe,EAAE,EAAE,EAAEA,EAAE,KAAK,EAAE,MAAM,MAAM,SAAS;AAAA,QACnD,CAAS;AAAA,QACDzD,GAAGhE,GAAG,eAAe,WAAW;AAC9B,UAAA6C;AAAA;AAAA,YAEE,EAAE,EAAE,EAAE4E,EAAE,GAAG;AAAA,UACvB,KAAe,EAAE,EAAE,EAAEA,EAAE,GAAG,EAAE,MAAM,MAAM,SAAS;AAAA,QACjD,CAAS;AAAA,QACDzD,GAAGzC,GAAG,eAAe,WAAW;AAC9B,UAAAsB;AAAA;AAAA,YAEE,EAAE,EAAE,EAAE4E,EAAE,KAAK;AAAA,UACzB,KAAe,EAAE,EAAE,EAAEA,EAAE,KAAK,EAAE,MAAM,MAAM,SAAS;AAAA,QACnD,CAAS;AAAA,QACDzD,GAAGlD,GAAG,eAAe,WAAW;AAC9B,UAAA+B;AAAA;AAAA,YAEE,EAAE,EAAE,EAAE4E,EAAE,MAAM;AAAA,UAC1B,KAAe,EAAE,EAAE,EAAEA,EAAE,MAAM,EAAE,MAAM,MAAM,SAAS;AAAA,QACpD,CAAS;AAAA,QACDzD,GAAG7C,GAAG,eAAe,WAAW;AAC9B,UAAA0B;AAAA;AAAA,YAEE,EAAE,EAAE,EAAE4E,EAAE,IAAI;AAAA,UACxB,KAAe,EAAE,EAAE,EAAEA,EAAE,IAAI,EAAE,MAAM,MAAM,SAAS;AAAA,QAClD,CAAS;AAAA,QACDzD,GAAGqE,IAAG,eAAe,WAAW;AAC9B,UAAAxF;AAAA;AAAA,YAEE,EAAE,EAAE,EAAE4E,EAAE,QAAQ;AAAA,UAC5B,KAAe,EAAE,EAAE,EAAEA,EAAE,QAAQ,EAAE,MAAM,MAAM,SAAS;AAAA,QACtD,CAAS;AAAA,QACDzD,GAAGwE,GAAG,eAAe,WAAW;AAC9B,UAAA3F;AAAA;AAAA,YAEE,EAAE,EAAE,EAAE4E,EAAE,SAAS;AAAA,UAC7B,KAAe,EAAE,EAAE,EAAEA,EAAE,SAAS,EAAE,MAAM,MAAM,SAAS;AAAA,QACvD,CAAS;AAAA,QACDzD,GAAG4E,GAAG,eAAe,WAAW;AAC9B,UAAA/F;AAAA;AAAA,YAEE,EAAE,EAAE,EAAE4E,EAAE,YAAY;AAAA,UAChC,KAAe,EAAE,EAAE,EAAEA,EAAE,YAAY,EAAE,MAAM,MAAM,SAAS;AAAA,QAC1D,CAAS;AAAA,QACDzD,GAAGgF,IAAG,eAAe,WAAW;AAC9B,UAAAnG;AAAA;AAAA,YAEE,EAAE,EAAE,EAAE4E,EAAE,WAAW;AAAA,UAC/B,KAAe,EAAE,EAAE,EAAEA,EAAE,WAAW,EAAE,MAAM,MAAM,SAAS;AAAA,QACzD,CAAS;AAAA,MACT,GAAS0B,KAAK;AAAA,IACT;AAAA,IACD,EAAEE,GAAGC,GAAG;AACN,UAAID,GAAGC;AAAA,MACP,KAAKxK,OAAOA;AAAA,MACZ,EAAE,CAAC,IAAI,kBAAkB,WAAWmF,EAAEpF,GAAG,SAASC,CAAC,GAAGwK;AAAA,MACtD,MAAMvK,OAAOA;AAAA,MACb,EAAE,CAAC,EAAE,MAAMkF,EAAEpF,GAAG,KAAKE,CAAC,GAAGuK;AAAA,MACzB,MAAMlK,OAAOA;AAAA,MACb,EAAE,CAAC,EAAE,MAAM6E,EAAEpF,GAAG,KAAKO,CAAC,GAAGkK;AAAA,MACzB,MAAM,OAAO;AAAA,MACb,EAAE,CAAC,EAAE,MAAMrF,EAAEpF,GAAG,SAAS,CAAC,GAAGyK;AAAA,MAC7B,MAAM9J,OAAOA;AAAA,MACb,EAAE,CAAC,EAAE,MAAMyE,EAAEpF,GAAG,UAAUW,CAAC,GAAG8J;AAAA,MAC9B,KAAKrF;AAAA,QACH3E;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAASgK;AAAA,MACH,MAAM/J,OAAOA;AAAA,MACb,EAAE,CAAC,EAAE,MAAM0E,EAAE3E,GAAG,KAAKC,CAAC,GAAG+J;AAAA,MACzB,MAAM,OAAO;AAAA,MACb,EAAE,CAAC,EAAE,MAAMrF,EAAE3E,GAAG,KAAK,CAAC,GAAGgK;AAAA,MACzB,MAAMzJ,OAAOA;AAAA,MACb,EAAE,CAAC,EAAE,MAAMoE,EAAE3E,GAAG,SAASO,CAAC,GAAGyJ;AAAA,MAC7B,MAAMxJ,OAAOA;AAAA,MACb,EAAE,CAAC,EAAE,MAAMmE,EAAE3E,GAAG,UAAUQ,CAAC,GAAGwJ;AAAA,MAC9B,MAAMpJ,OAAOA;AAAA,MACb,EAAE,CAAC,EAAE,MAAM+D,EAAEjE,GAAG,KAAKE,CAAC,GAAGoJ;AAAA,MACzB,MAAMjI,OAAOA;AAAA,MACb,EAAE,CAAC,EAAE,MAAM4C,EAAEjE,GAAG,KAAKqB,CAAC,GAAGiI;AAAA,MACzB,MAAMhI,OAAOA;AAAA,MACb,EAAE,CAAC,EAAE,MAAM2C,EAAEjE,GAAG,SAASsB,CAAC,GAAGgI;AAAA,MAC7B,MAAM9H,OAAOA;AAAA,MACb,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,EAAE,MAAMyC,EAAE1C,GAAG,KAAKC,CAAC,GAAG8H;AAAA,MACzB,MAAM7H,OAAOA;AAAA,MACb,EAAE,CAAC,EAAE,MAAMwC,EAAE1C,GAAG,KAAKE,CAAC,GAAG6H;AAAA,MACzB,MAAM,OAAO;AAAA,MACb,EAAE,CAAC,EAAE,MAAMrF,EAAE1C,GAAG,UAAU,CAAC,GAAG+H;AAAA,MAC9B,MAAMvI,OAAOA;AAAA,MACb,EAAE,CAAC,EAAE,MAAMkD,EAAEnD,GAAG,KAAKC,CAAC,GAAGuI;AAAA,MACzB,MAAMtI,OAAOA;AAAA,MACb,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,EAAE,MAAMiD,EAAEnD,GAAG,KAAKE,CAAC,GAAGsI;AAAA,MACzB,MAAMrI,OAAOA;AAAA,MACb,EAAE,CAAC,EAAE,MAAMgD,EAAEnD,GAAG,SAASG,CAAC,GAAGqI;AAAA,MAC7B,MAAMlI,OAAOA;AAAA,MACb,EAAE,CAAC,EAAE,MAAM6C,EAAE9C,GAAG,KAAKC,CAAC,GAAGkI;AAAA,MACzB,MAAMpB,OAAOA;AAAA,MACb,EAAE,CAAC,EAAE,MAAMjE,EAAE9C,GAAG,KAAK+G,CAAC,GAAGoB;AAAA,MACzB,MAAMnB,OAAOA;AAAA,MACb,EAAE,CAAC,EAAE,MAAMlE,EAAE9C,GAAG,UAAUgH,CAAC,GAAGmB;AAAA,MAC9B,MAAMhB,OAAOA;AAAA,MACb,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,IAAI,MAAMrE,EAAEoE,IAAG,KAAKC,CAAC,GAAGgB;AAAA,MAC3B,MAAM,OAAO;AAAA,MACb,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,IAAI,MAAMrF,EAAEoE,IAAG,KAAK,CAAC,GAAGiB;AAAA,MAC3B,KAAKrF;AAAA,QACHoE;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAASiB;AAAA,MACH,KAAKrF;AAAA,QACHoE;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAASiB;AAAA,MACH,MAAMb,OAAQA;AAAA,MACd,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,IAAI,MAAMxE,EAAEuE,GAAG,KAAKC,CAAE,GAAGa;AAAA,MAC5B,MAAMZ,OAAQA;AAAA,MACd,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,IAAI,MAAMzE,EAAEuE,GAAG,KAAKE,CAAE,GAAGY;AAAA,MAC5B,KAAKrF;AAAA,QACHuE;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAASc;AAAA,MACH,KAAKrF;AAAA,QACHuE;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAASc;AAAA,MACH,MAAMT,QAAQA;AAAA,MACd,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,IAAI,MAAM5E,EAAE2E,GAAG,KAAKC,EAAE,GAAGS;AAAA,MAC5B,MAAMR,QAAQA;AAAA,MACd,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,IAAI,MAAM7E,EAAE2E,GAAG,KAAKE,EAAE,GAAGQ;AAAA,MAC5B,KAAKrF;AAAA,QACH2E;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAASU;AAAA,MACH,KAAKrF;AAAA,QACH2E;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAASU;AAAA,MACH,MAAML,QAAQA;AAAA,MACd,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,IAAI,MAAMhF,EAAE+E,IAAG,KAAKC,EAAE,GAAGK;AAAA,MAC5B,MAAMJ,QAAQA;AAAA,MACd,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,EAAE;AAAA,MACL,EAAE,CAAC,IAAI,MAAMjF,EAAE+E,IAAG,KAAKE,EAAE,GAAGI;AAAA,MAC5B,KAAKrF;AAAA,QACH+E;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAASM;AAAA,MACH,KAAKrF;AAAA,QACH+E;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX;AAAA,IACK;AAAA,IACD,EAAEK,GAAG;AACH,MAAAA,KAAK3F,EAAE7E,CAAC,GAAGwK,KAAK3F,EAAErE,CAAC,GAAGgK,KAAK3F,EAAEpE,CAAC,GAAG+J,KAAK3F,EAAE3D,CAAC,GAAGsJ,KAAK3F,EAAE1D,CAAC,GAAGqJ,KAAK3F,EAAE,CAAC,GAAG2F,KAAK3F,EAAEnC,CAAC,GAAG8H,KAAK3F,EAAEhC,CAAC,GAAG2H,KAAK3F,EAAE5C,CAAC,GAAGuI,KAAK3F,EAAExC,CAAC,GAAGmI,KAAK3F,EAAEvC,CAAC,GAAGkI,KAAK3F,EAAE0E,CAAC,GAAGiB,KAAK3F,EAAE2E,EAAC,GAAGgB,KAAK3F,EAAE6E,CAAC,GAAGc,KAAK3F,EAAE8E,CAAC,GAAGa,KAAK3F,EAAEiF,EAAE,GAAGU,KAAK3F,EAAEkF,CAAC,GAAGS,KAAK3F,EAAEqF,EAAE,GAAGM,KAAK3F,EAAEsF,EAAC,GAAGG,KAAK,IAAIvG,GAAGwG,CAAE;AAAA,IAClO;AAAA,EACL;AACA;AACA,SAASG,GAAG,GAAG;AACb,MAAI1K,GAAGC;AACP,SAAOD,IAAI,IAAIiJ,GAAG;AAAA,IAChB,OAAO;AAAA,MACL;AAAA;AAAA,QAEE,EAAE,CAAC;AAAA;AAAA,MAEL;AAAA;AAAA,QAEE,EAAE,CAAC;AAAA;AAAA,MAEL;AAAA;AAAA,QAEE,EAAE,CAAC;AAAA;AAAA,MAEL,SAAS;AAAA,QACP,SAAS;AAAA,UACPG;AAAA,UACA,CAAC,EAAE,MAAMlJ,EAAC,OAAQ,EAAE,IAAIA,EAAC;AAAA,UACzB,CAAC,EAAE,MAAMA,EAAG,MAAKA,IAAI,OAAO;AAAA,QAC7B;AAAA,MACF;AAAA,MACD,SAAS,EAAE,KAAK,EAAG;AAAA,IACpB;AAAA,EACL,CAAG,GAAGF,EAAE;AAAA,IACJ;AAAA;AAAA,IAEA,EAAE,CAAC;AAAA,EACJ,GAAEA,EAAE;AAAA,IACH;AAAA;AAAA,IAEA,EAAE,CAAC;AAAA,EACJ,GAAEA,EAAE;AAAA,IACH;AAAA;AAAA,IAEA,EAAE,CAAC;AAAA,EACP,GAAK;AAAA,IACD,IAAI;AACF,MAAAmH,GAAGnH,EAAE,GAAG,QAAQ;AAAA,IACjB;AAAA,IACD,EAAEE,GAAGK,GAAG;AACN,MAAA6G,GAAGpH,GAAGE,GAAGK,CAAC,GAAGN,IAAI;AAAA,IAClB;AAAA,IACD,EAAEC,GAAG,CAACK,CAAC,GAAG;AACR,YAAM,IAAI,CAAA;AACV,MAAAA;AAAA,MACA,MAAM,EAAE;AAAA,MACRL,EAAE,CAAC,IAAIK;AAAA,MACP,MAAM,EAAE;AAAA,MACRL,EAAE,CAAC,IAAIK;AAAA,MACP,SAAS,EAAE,UAAU,EAAE,OAAOA,GAAG,KAAKL,EAAG,IAAGF,EAAE,KAAK,CAAC;AAAA,IACrD;AAAA,IACD,EAAEE,GAAG;AACH,MAAAD,MAAMgH,GAAGjH,EAAE,GAAG,UAAUE,CAAC,GAAGD,IAAI;AAAA,IACjC;AAAA,IACD,EAAEC,GAAG;AACH,MAAAgH,GAAGlH,EAAE,GAAG,UAAUE,CAAC,GAAGD,IAAI;AAAA,IAC3B;AAAA,IACD,EAAEC,GAAG;AACH,MAAAmH,GAAGrH,GAAGE,CAAC;AAAA,IACR;AAAA,EACL;AACA;AACA,SAASyK,GAAG,GAAG3K,GAAGC,GAAG;AACnB,MAAIC,GAAGK,GAAG,EAAE,OAAO,EAAG,IAAGP,GAAG,EAAE,eAAeW,IAAI,OAAQ,IAAGX,GAAG,EAAE,WAAWQ,MAAMR,GAAG,EAAE,eAAeS,IAAI,EAAG,IAAGT;AAChH,QAAMU,IAAI,CAACQ,GAAGC,GAAGE,MAAM;AACrB,UAAMmB,IAAItB,EAAE,SAAS;AACrB,QAAI,CAACuB,GAAG,CAAC,IAAI,CAACD,EAAE,MAAMA,EAAE,IAAI,GAAG,CAACE,GAAGC,CAAC,IAAI,CAACH,EAAE,MAAMA,EAAE,IAAI;AACvD,UAAM,CAACI,GAAG,CAAC,IAAIvB;AACf,QAAIF,MAAMyH,EAAE;AACV,MAAAnG,KAAKG,GAAGF,KAAKE,GAAG,KAAK,GAAGD,KAAK;AAAA,SAC1B;AACH,cAAQxB,GAAC;AAAA,QACP,KAAKyH,EAAE;AAAA,QACP,KAAKA,EAAE;AAAA,QACP,KAAKA,EAAE,WAAW;AAChB,eAAK;AACL;AAAA,QACD;AAAA,QACD,KAAKA,EAAE;AAAA,QACP,KAAKA,EAAE;AAAA,QACP,KAAKA,EAAE,cAAc;AACnB,UAAAjG,KAAK;AACL;AAAA,QACD;AAAA,MACF;AACD,cAAQxB,GAAC;AAAA,QACP,KAAKyH,EAAE;AAAA,QACP,KAAKA,EAAE;AAAA,QACP,KAAKA,EAAE,aAAa;AAClB,UAAAnG,KAAKG;AACL;AAAA,QACD;AAAA,QACD,KAAKgG,EAAE;AAAA,QACP,KAAKA,EAAE;AAAA,QACP,KAAKA,EAAE,cAAc;AACnB,UAAAlG,KAAKE;AACL;AAAA,QACD;AAAA,MACF;AAAA,IACF;AACD,UAAMC,IAAI,KAAK,IAAIJ,GAAGC,CAAC,GAAGT,IAAI,KAAK,IAAI,GAAGU,CAAC,GAAGT,IAAI,KAAK,IAAIQ,IAAID,CAAC,GAAGN,IAAI,KAAK,IAAIQ,IAAI,CAAC;AACrF,WAAO;AAAA,MACL,GAAGzB;AAAA,MACH,UAAU;AAAA,QACR,GAAG2B;AAAA,QACH,GAAGZ;AAAA,QACH,GAAGC;AAAA,QACH,GAAGC;AAAA,QACH,QAAQ;AAAA,UACN,MAAMU;AAAA,UACN,MAAMZ;AAAA,UACN,MAAMY,IAAIX;AAAA,UACV,MAAMD,IAAIE;AAAA,QACX;AAAA,MACF;AAAA,IACP;AAAA,EACA;AACE,WAAS,EAAEjB,GAAG;AACZ,IAAA6E,GAAG,KAAK,MAAM,GAAG7E,CAAC;AAAA,EACnB;AACD,WAASF,EAAEE,GAAG;AACZ,IAAA6E,GAAG,KAAK,MAAM,GAAG7E,CAAC;AAAA,EACnB;AACD,WAASD,EAAEC,GAAG;AACZ,IAAA6E,GAAG,KAAK,MAAM,GAAG7E,CAAC;AAAA,EACnB;AACD,SAAO,EAAE,QAAQ,CAACA,MAAM;AACtB,eAAWA,KAAKjB,EAAE,GAAG,IAAIiB,EAAE,KAAK,GAAG,mBAAmBA,KAAKjB,EAAE,GAAGU,IAAIO,EAAE,aAAa,GAAG,eAAeA,KAAKjB,EAAE,GAAGO,IAAIU,EAAE,SAAS,GAAG,mBAAmBA,KAAKjB,EAAE,GAAGQ,IAAIS,EAAE,aAAa;AAAA,EACrL,GAAK,EAAE,GAAG,SAAS,MAAM;AACrB,MAAE,GAAG;AAAA,IACL,KAAKjB,EAAE,GAAGC,IAAI,EAAE,QAAQ,GAAG,EAAE,GAAG;AAAA,IAChC,MAAMD,EAAE,GAAGM,IAAI,KAAKE,CAAC;AAAA,EACzB,GAAK;AAAA,IACD;AAAA,IACAE;AAAA,IACAH;AAAA,IACAD;AAAA,IACAL;AAAA,IACAQ;AAAA,IACAD;AAAA,IACA;AAAA,IACAO;AAAA,IACAC;AAAA,EACJ;AACA;AACA,MAAM2J,WAAWpD,GAAG;AAAA,EAClB,YAAYxH,GAAG;AACb,UAAK,GAAIuH,GAAG,MAAMvH,GAAG2K,IAAID,IAAIzG,IAAI;AAAA,MAC/B,OAAO;AAAA,MACP,eAAe;AAAA,MACf,WAAW;AAAA,MACX,eAAe;AAAA,IACrB,CAAK;AAAA,EACF;AACH;AACA,MAAM4G,KAAqB,oBAAI,IAAI;AAAA,EACjC,CAACpD,GAAG,WAAWmD,EAAE;AAAA,EACjB,CAACnD,GAAG,SAAS0B,EAAE;AACjB,CAAC,GAAG2B,KAAK,CAAC,MAAMD,GAAG,IAAI,EAAE,IAAI,GAAGE,KAAK,CAAC,GAAG/K,MAAM6K,GAAG,IAAI,GAAG7K,CAAC,GAAG4I,IAAI,CAAC,MAAM,UAAU,CAAC;AACnFA,EAAE,QAAQ;AACVA,EAAE,MAAM;AACRA,EAAE,QAAQ;AACVA,EAAE,SAAS;AACXA,EAAE,OAAO;AACTA,EAAE,WAAW;AACbA,EAAE,YAAY;AACdA,EAAE,eAAe;AACjBA,EAAE,cAAc;AAChB,MAAMoC,KAAK,CAAC,OAAO,CAAE,IAAGC,KAAK,CAAC,OAAO,EAAE;AAAA;AAAA,EAErC,EAAE,CAAC;AAAA,EACJ;AACD,SAASC,GAAG,GAAG;AACb,MAAIlL,GAAGC,GAAGC,GAAGK;AACb,QAAM;AAAA;AAAA,IAEJ,EAAE,CAAC,EAAE;AAAA,KACJI,IAAI0D;AAAA,IACL;AAAA,IACA;AAAA;AAAA,IAEA,EAAE,CAAC;AAAA,IACH4G;AAAA,EACJ;AACE,SAAO;AAAA,IACL,IAAI;AACF,MAAAjL,IAAI+E,GAAG,GAAG,GAAGpE,KAAKA,EAAE,EAAG,GAAEyE,EAAEpF,GAAG,SAAS,yBAAyB;AAAA,IACjE;AAAA,IACD,EAAEQ,GAAGC,GAAG;AACN,MAAAmE,EAAEpE,GAAGR,GAAGS,CAAC,GAAGE,KAAKA,EAAE,EAAEX,GAAG,IAAI,GAAGC,IAAI,IAAIC,MAAMK,IAAI;AAAA,QAC/C4E;AAAA,UACEnF;AAAA,UACA;AAAA;AAAA,UAEA,EAAE,CAAC;AAAA,QACJ;AAAA,QACDmF;AAAA,UACEnF;AAAA,UACA;AAAA;AAAA,UAEA,EAAE,CAAC;AAAA,QACJ;AAAA,MACT,GAASE,IAAI;AAAA,IACR;AAAA,IACD,EAAEM,GAAG,CAACC,CAAC,GAAG;AACR,MAAAE,KAAKA,EAAE,MAAM,CAACV,KAAKQ;AAAA,MACnB,OAAO+D;AAAA,QACL7D;AAAA,QACA;AAAA,QACAH;AAAA;AAAA,QAEAA,EAAE,CAAC;AAAA,QACHP,IAAIsE;AAAA,UACF;AAAA;AAAA,UAEA/D,EAAE,CAAC;AAAA,UACHC;AAAA,UACAuK;AAAA,QACV,IAAYvG;AAAA;AAAA,UAEFjE,EAAE,CAAC;AAAA,QACJ;AAAA,QACDyK;AAAA,MACR;AAAA,IACK;AAAA,IACD,EAAEzK,GAAG;AACH,MAAAP,MAAMgH,GAAGtG,GAAGH,CAAC,GAAGP,IAAI;AAAA,IACrB;AAAA,IACD,EAAEO,GAAG;AACH,MAAA0G,GAAGvG,GAAGH,CAAC,GAAGP,IAAI;AAAA,IACf;AAAA,IACD,EAAEO,GAAG;AACH,MAAAA,KAAKqE,EAAE7E,CAAC,GAAGW,KAAKA,EAAE,EAAEH,CAAC,GAAGN,IAAI,IAAI6D,GAAGxD,CAAC;AAAA,IACrC;AAAA,EACL;AACA;AACA,SAAS4K,GAAG,GAAGnL,GAAGC,GAAG;AACnB,MAAI,EAAE,SAASC,IAAI,CAAA,GAAI,SAASK,EAAG,IAAGP;AACtC,QAAM,IAAI8F;AACV,MAAI,EAAE,OAAOnF,EAAG,IAAGX,GAAG,EAAE,QAAQQ,EAAC,IAAKR,GAAG,EAAE,WAAWS,EAAG,IAAGT,GAAGU,IAAI,MAAM,GAAGM,IAAI;AAChF,QAAMC,IAAI,CAACI,MAAM,CAACmB,MAAM;AACtB,IAAA9B,IAAIW,GAAG,IAAIZ,EAAE,eAAe+B,EAAE,SAASA,EAAE,OAAO,GAAGxB,IAAIL,GAAG6B,EAAE,OAAO,kBAAkBA,EAAE,SAAS,GAAG,EAAE,MAAM;AAAA,EAC/G,GAAKtB,IAAI,CAACG,MAAM;AACZ,QAAIX,GAAG;AACL,YAAM,CAAC8B,GAAGC,CAAC,IAAIhC,EAAE,eAAeY,EAAE,SAASA,EAAE,OAAO,GAAG,IAAI,CAACmB,IAAI,EAAE,CAAC,GAAGC,IAAI,EAAE,CAAC,CAAC;AAC9E,MAAAxC,EAAE,GAAGU,IAAIH,EAAEQ,GAAGN,GAAG,CAAC,CAAC,GAAG,EAAE,UAAUC,CAAC;AAAA,IACpC;AAAA,EACL,GAAKQ,IAAI,CAACE,MAAM;AACZ,IAAAA,EAAE,OAAO,sBAAsBA,EAAE,SAAS,GAAGX,IAAI,MAAMM,IAAIL,GAAG,EAAE,SAAS;AAAA,EAC7E;AACE,SAAO,EAAE,QAAQ,CAACU,MAAM;AACtB,eAAWA,KAAKpB,EAAE,GAAGU,IAAIU,EAAE,KAAK,GAAG,YAAYA,KAAKpB,EAAE,GAAGO,IAAIa,EAAE,MAAM,GAAG,eAAeA,KAAKpB,EAAE,GAAGQ,IAAIY,EAAE,SAAS,GAAG,aAAaA,KAAKpB,EAAE,GAAGM,IAAIc,EAAE,OAAO;AAAA,EAC3J,GAAK,CAACJ,GAAGC,GAAGC,GAAGR,GAAGH,GAAGC,GAAGF,GAAGL,CAAC;AAC5B;AACA,MAAM+I,WAAWzB,GAAG;AAAA,EAClB,YAAYxH,GAAG;AACb,UAAK,GAAIuH,GAAG,MAAMvH,GAAGmL,IAAID,IAAIjH,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,WAAW,EAAC,CAAE;AAAA,EACvE;AACH;AACA,MAAMmH,KAAK,CAAC,GAAGpL,MAAM;AACnB,QAAMC,IAAI,OAAOD,KAAK,aAAaA,EAAE,CAAC,IAAIA;AAC1C,MAAIC,GAAG;AACL,UAAM,EAAE,MAAMC,GAAG,aAAaK,EAAC,IAAKN;AACpC,QAAI,IAAI;AACR,WAAOC,MAAM,KAAK,QAAQA,CAAC,WAAWA,CAAC,MAAM,KAAK,gBAAgBK,KAAK,MAAM,KAAK;AAAA,EACnF;AACH;AACA,SAAS8K,GAAG,GAAGrL,GAAGC,GAAG;AACnB,MAAIC;AACJ,QAAMK,IAAIuF;AACV,MAAI,EAAE,YAAY,MAAM9F,GAAG,EAAE,QAAQW,EAAG,IAAGX,GAAG,EAAE,OAAOQ,IAAI,OAAQ,IAAGR,GAAG,EAAE,QAAQS,EAAC,IAAKT,GAAG,EAAE,WAAWU,MAAMV,GAAG,EAAE,eAAe,EAAC,IAAKA,GAAGgB;AAC5I,SAAO4E,GAAG,OAAO3F,EAAE,GAAGe,IAAI,IAAIL,EAAE;AAAA,IAC9B,QAAQF;AAAA,IACR,OAAO;AAAA,MACL,OAAO,EAAE,OAAO;AAAA,MAChB,eAAeP;AAAA,MACf,WAAWQ;AAAA,MACX,eAAe;AAAA,IAChB;AAAA,EACF,CAAA,CAAC,GAAGM,EAAE,IAAI,UAAU,CAACC,MAAM;AAC1B,IAAAD,EAAE,MAAM,EAAE,OAAOC,EAAE,QAAQ,GAAGV,EAAE,UAAUU,EAAE,MAAM;AAAA,EACtD,CAAG,GAAGD,EAAE,IAAI,QAAQ,CAACC,MAAMV,EAAE,QAAQU,EAAE,MAAM,CAAC,GAAGD,EAAE,IAAI,WAAW,CAACC,MAAMV,EAAE,WAAWU,EAAE,MAAM,CAAC,GAAG,MAAM;AACpG,IAAAD,EAAE,SAAQ;AAAA,EACX,EAAC,GAAG,EAAE,QAAQ,CAACC,MAAM;AACpB,oBAAgBA,KAAKhB,EAAE,GAAG,IAAIgB,EAAE,UAAU,GAAG,YAAYA,KAAKhB,EAAE,GAAGU,IAAIM,EAAE,MAAM,GAAG,WAAWA,KAAKhB,EAAE,GAAGO,IAAIS,EAAE,KAAK,GAAG,YAAYA,KAAKhB,EAAE,GAAGQ,IAAIQ,EAAE,MAAM,GAAG,eAAeA,KAAKhB,EAAE,GAAGS,IAAIO,EAAE,SAAS,GAAG,mBAAmBA,KAAKhB,EAAE,GAAG,IAAIgB,EAAE,aAAa;AAAA,EACzP,GAAK,EAAE,GAAG,SAAS,MAAM;AACrB,MAAE,GAAG;AAAA,IACL,MAAMf,IAAIkL,GAAG,GAAG5K,CAAC,IAAI,EAAE,GAAG;AAAA,IAC1B,MAAM,MAAMQ,KAAK,QAAQA,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,SAAU,CAAA,IAAI,EAAE,GAAG;AAAA,IACrE,MAAMA,KAAKA,EAAE,KAAK,EAAE,WAAWN,GAAG,GAAG,EAAE,GAAG;AAAA,IAC1C,MAAMM,KAAKA,EAAE,KAAK,EAAE,eAAe,EAAC,CAAE;AAAA,EAC1C,GAAK,CAAC,GAAGL,GAAGH,GAAGC,GAAGC,GAAG,GAAGM,CAAC;AACzB;AACA,MAAMsK,WAAW9D,GAAG;AAAA,EAClB,YAAYxH,GAAG;AACb,UAAK,GAAIuH,GAAG,MAAMvH,GAAGqL,IAAI,MAAMpH,IAAI;AAAA,MACjC,YAAY;AAAA,MACZ,QAAQ;AAAA,MACR,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,WAAW;AAAA,MACX,eAAe;AAAA,IACrB,CAAK;AAAA,EACF;AACH;AACA,SAASsH,GAAG,GAAG;AACb,MAAIvL,GAAGC;AACP,SAAO;AAAA,IACL,IAAI;AACF,MAAAD,IAAI+E,GAAG,MAAM,GAAG9E,IAAI8E,GAAG,MAAM,GAAGK,EAAEpF,GAAG,SAAS,WAAW,GAAGoF;AAAA,QAC1DpF;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAASoF;AAAA,QACDpF;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAASoF;AAAA,QACDpF;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAASoF;AAAA,QACDpF;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACJ,GAAEoF,EAAEnF,GAAG,SAAS,WAAW,GAAGmF;AAAA,QAC7BnF;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAASmF;AAAA,QACDnF;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAASmF;AAAA,QACDnF;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAASmF;AAAA,QACDnF;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX;AAAA,IACK;AAAA,IACD,EAAEC,GAAGK,GAAG;AACN,MAAAqE,EAAE1E,GAAGF,GAAGO,CAAC,GAAGqE,EAAE1E,GAAGD,GAAGM,CAAC;AAAA,IACtB;AAAA,IACD,EAAEL,GAAGK,GAAG;AACN,MAAAA;AAAA,MACA,KAAK6E;AAAA,QACHpF;AAAA,QACA;AAAA;AAAA,QAEAE,EAAE,CAAC;AAAA,MACX,GAASK;AAAA,MACH,KAAK6E;AAAA,QACHpF;AAAA,QACA;AAAA;AAAA,QAEAE,EAAE,CAAC;AAAA,MACX,GAASK;AAAA,MACH,KAAK6E;AAAA,QACHpF;AAAA,QACA;AAAA;AAAA,QAEAE,EAAE,CAAC;AAAA,MACX,GAASK;AAAA,MACH,MAAM6E;AAAA,QACJpF;AAAA,QACA;AAAA;AAAA,QAEAE,EAAE,CAAC;AAAA,MACX,GAASK;AAAA,MACH,KAAK6E;AAAA,QACHnF;AAAA,QACA;AAAA;AAAA,QAEAC,EAAE,CAAC;AAAA,MACX,GAASK;AAAA,MACH,KAAK6E;AAAA,QACHnF;AAAA,QACA;AAAA;AAAA,QAEAC,EAAE,CAAC;AAAA,MACX,GAASK;AAAA,MACH,KAAK6E;AAAA,QACHnF;AAAA,QACA;AAAA;AAAA,QAEAC,EAAE,CAAC;AAAA,MACX,GAASK;AAAA,MACH,MAAM6E;AAAA,QACJnF;AAAA,QACA;AAAA;AAAA,QAEAC,EAAE,CAAC;AAAA,MACX;AAAA,IACK;AAAA,IACD,EAAEA,GAAG;AACH,MAAAA,KAAK2E,EAAE7E,CAAC,GAAGE,KAAK2E,EAAE5E,CAAC;AAAA,IACpB;AAAA,EACL;AACA;AACA,SAASuL,GAAG,GAAG;AACb,MAAIxL,GAAGC;AAAA;AAAA,IAEL,EAAE,CAAC,KAAKsL,GAAG,CAAC;AAAA;AAEd,SAAO;AAAA,IACL,IAAI;AACF,MAAAvL,IAAI+E,GAAG,GAAG,GAAG9E,KAAKA,EAAE,EAAG,GAAEmF,EAAEpF,GAAG,SAAS,+BAA+B;AAAA,IACvE;AAAA,IACD,EAAEE,GAAGK,GAAG;AACN,MAAAqE,EAAE1E,GAAGF,GAAGO,CAAC,GAAGN,KAAKA,EAAE,EAAED,GAAG,IAAI;AAAA,IAC7B;AAAA,IACD,EAAEE,GAAG,CAACK,CAAC,GAAG;AAER,MAAAL,EAAE,CAAC,IAAID,IAAIA,EAAE,EAAEC,GAAGK,CAAC,KAAKN,IAAIsL,GAAGrL,CAAC,GAAGD,EAAE,EAAG,GAAEA,EAAE,EAAED,GAAG,IAAI,KAAKC,MAAMA,EAAE,EAAE,CAAC,GAAGA,IAAI;AAAA,IAC7E;AAAA,IACD,GAAG0D;AAAA,IACH,GAAGA;AAAA,IACH,EAAEzD,GAAG;AACH,MAAAA,KAAK2E,EAAE7E,CAAC,GAAGC,KAAKA,EAAE;IACnB;AAAA,EACL;AACA;AACA,SAASwL,GAAG,GAAGzL,GAAGC,GAAG;AACnB,QAAMC,IAAI4F;AACV,MAAI,EAAE,kBAAkBvF,MAAMP,GAAG,EAAE,aAAa,MAAMA,GAAG,EAAE,WAAWW,MAAMX,GAAGQ,GAAGC,GAAGC,GAAG,GAAGM,GAAGC,GAAGC;AACjG,QAAMC,IAAI,CAAC,MAAM;AACf,IAAAX,IAAI,YAAY,OAAO,MAAM,WAAWP,EAAE,GAAGQ,IAAIE,EAAE,eAAe,EAAE,SAAS,EAAE,OAAO,CAAC,GAAGD,IAAID,GAAGR,EAAE,GAAG,IAAIQ,EAAE,CAAC,CAAC,GAAGR,EAAE,GAAGe,IAAIP,EAAE,CAAC,CAAC,GAAGR,EAAE,GAAGgB,IAAI,CAAC,GAAGhB,EAAE,GAAGiB,IAAI,CAAC;AAAA,EAC5J,GAAKG,IAAI,CAAC,MAAM;AACZ,IAAAZ,MAAMC,IAAIC,EAAE,eAAe,EAAE,SAAS,EAAE,OAAO,GAAGV,EAAE,GAAG,IAAI,KAAK,IAAIS,EAAE,CAAC,GAAGD,EAAE,CAAC,CAAC,CAAC,GAAGR,EAAE,GAAGe,IAAI,KAAK,IAAIN,EAAE,CAAC,GAAGD,EAAE,CAAC,CAAC,CAAC,GAAGR,EAAE,GAAGgB,IAAI,KAAK,IAAIP,EAAE,CAAC,IAAID,EAAE,CAAC,CAAC,CAAC,GAAGR,EAAE,GAAGiB,IAAI,KAAK,IAAIR,EAAE,CAAC,IAAID,EAAE,CAAC,CAAC,CAAC;AAAA,EACrL,GAAK+B,IAAI,CAAC,MAAM;AACZ,UAAME,IAAI,YAAY,IAAG,IAAKlC;AAC9B,QAAI,MAAM,SAAS;AACjB,UAAIkC,IAAI;AACN;AACF,QAAE,gBAAiB,GAAEjC,IAAIgC,EAAG,KAAIxC,EAAE,GAAGQ,IAAIE,EAAE,eAAe,EAAE,SAAS,EAAE,OAAO,CAAC,GAAGD,IAAID,GAAGR,EAAE,GAAG,IAAIQ,EAAE,CAAC,CAAC,GAAGR,EAAE,GAAGe,IAAIP,EAAE,CAAC,CAAC,GAAGR,EAAE,GAAGgB,IAAI,CAAC,GAAGhB,EAAE,GAAGiB,IAAI,CAAC;AAAA,IACjJ;AACC,MAAAT,MAAMiC,IAAI,OAAOzB,IAAIC,IAAI,OAAO,EAAE,gBAAiB,GAAEuB,EAAC,MAAOxC,EAAE,GAAGQ,IAAI,IAAI,GAAGC,IAAI;AAAA,EACpF,GAAE+B,IAAI,MAAM;AACX,QAAIxB,IAAIC,IAAI,IAAI;AACd,YAAM,IAAI;AAAA,QACR,MAAMuG,GAAG;AAAA,QACT,UAAU;AAAA,UACR,QAAQ;AAAA,YACN,MAAM;AAAA,YACN,MAAMzG;AAAA,YACN,MAAM,IAAIC;AAAA,YACV,MAAMD,IAAIE;AAAA,UACX;AAAA,UACD,GAAG;AAAA,UACH,GAAGF;AAAA,UACH,GAAGC;AAAA,UACH,GAAGC;AAAA,QACJ;AAAA,MACT;AACM,MAAAhB,EAAE,UAAU,CAAC;AAAA,IACd;AACD,IAAAD,EAAE,GAAGQ,IAAI,IAAI,GAAGC,IAAI;AAAA,EACxB;AACE,SAAOkF,GAAG,MAAM;AACd,IAAArF,EAAE,eAAeY,CAAC,GAAGZ,EAAE,eAAec,CAAC,GAAGd,EAAE,aAAaiC,GAAG,EAAE;AAAA,EAC/D,CAAA,GAAG,EAAE,QAAQ,CAAC,MAAM;AACnB,0BAAsB,KAAKvC,EAAE,GAAGM,IAAI,EAAE,gBAAgB,GAAG,iBAAiB,KAAKN,EAAE,GAAG,IAAI,EAAE,WAAW,GAAG,eAAe,KAAKA,EAAE,GAAGU,IAAI,EAAE,SAAS;AAAA,EACpJ,GAAK,CAACF,GAAG,GAAGO,GAAGC,GAAGC,GAAGX,GAAG,GAAGI,CAAC;AAC5B;AACA,MAAM+K,WAAWlE,GAAG;AAAA,EAClB,YAAYxH,GAAG;AACb,UAAK,GAAIuH,GAAG,MAAMvH,GAAGyL,IAAID,IAAIvH,IAAI;AAAA,MAC/B,kBAAkB;AAAA,MAClB,aAAa;AAAA,MACb,WAAW;AAAA,IACjB,CAAK;AAAA,EACF;AACH;AACA,MAAM0H,KAAK,CAAC,GAAG3L,MAAM;AACnB,QAAMC,IAAI,KAAK,IAAID,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,GAAGE,IAAI,KAAK,IAAIF,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;AACzD,SAAO,KAAK,KAAK,KAAK,IAAIC,GAAG,CAAC,IAAI,KAAK,IAAIC,GAAG,CAAC,CAAC;AAClD;AACA,SAAS0L,GAAG,GAAG;AACb,QAAM5L,IAAI,EAAE,MAAK,GAAIC;AAAA;AAAA,KAElBD,EAAE,CAAC;AAAA;AAAA,MAEFA,EAAE,CAAC;AAAA,QACD;AAAA,MACF;AAAA,MACAA,EAAE,CAAC;AAAA;AAAA,MAEHA,EAAE,CAAC;AAAA,IACT,GAAO,IAAI,CAACE,MAAMA,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG;AAAA;AAErC,SAAOF,EAAE,EAAE,IAAIC,GAAGD;AACpB;AACA,SAAS6L,GAAG,GAAG;AACb,MAAI7L,GAAGC,GAAGC,GAAGK,GAAG,GAAGI;AAAA;AAAA,IAEjB,EAAE,CAAC,KAAKmL,GAAG,CAAC;AAAA;AAEd,SAAO;AAAA,IACL,IAAI;AACF,MAAA9L,IAAI+E,GAAG,SAAS,GAAG7E,IAAI6E,GAAG,SAAS,GAAGpE,KAAKA,EAAE,EAAC,GAAI,IAAIuE,GAAE,GAAIE,EAAEpF,GAAG,SAAS,WAAW,GAAGoF,EAAEpF,GAAG,UAAUC;AAAA,MACvG,EAAE,EAAE,CAAC,GAAGmF,EAAElF,GAAG,SAAS,WAAW,GAAGkF,EAAElF,GAAG,UAAUK;AAAA,MACnD,EAAE,EAAE,CAAC;AAAA,IACN;AAAA,IACD,EAAEC,GAAGC,GAAG;AACN,MAAAmE,EAAEpE,GAAGR,GAAGS,CAAC,GAAGmE,EAAEpE,GAAGN,GAAGO,CAAC,GAAGE,KAAKA,EAAE,EAAEH,GAAGC,CAAC,GAAGmE,EAAEpE,GAAG,GAAGC,CAAC;AAAA,IAClD;AAAA,IACD,EAAED,GAAGC,GAAG;AACN,MAAAA;AAAA,MACA,KAAKR,OAAOA;AAAA,MACZO,EAAE,EAAE,MAAM4E,EAAEpF,GAAG,UAAUC,CAAC,GAAGQ;AAAA,MAC7B,KAAKF,OAAOA;AAAA,MACZC,EAAE,EAAE,MAAM4E,EAAElF,GAAG,UAAUK,CAAC;AAAA,MAC1BC,EAAE,CAAC,IAAIG,IAAIA,EAAE,EAAEH,GAAGC,CAAC,KAAKE,IAAImL,GAAGtL,CAAC,GAAGG,EAAE,KAAKA,EAAE,EAAE,EAAE,YAAY,CAAC,KAAKA,MAAMA,EAAE,EAAE,CAAC,GAAGA,IAAI;AAAA,IACrF;AAAA,IACD,EAAEH,GAAG;AACH,MAAAA,KAAKqE,EAAE7E,CAAC,GAAGQ,KAAKqE,EAAE3E,CAAC,GAAGS,KAAKA,EAAE,EAAEH,CAAC,GAAGA,KAAKqE,EAAE,CAAC;AAAA,IAC5C;AAAA,EACL;AACA;AACA,SAASiH,GAAG,GAAG;AACb,MAAI9L,GAAGC,GAAGC;AACV,SAAO;AAAA,IACL,IAAI;AACF,MAAAF,IAAI+E,GAAG,MAAM,GAAGK,EAAEpF,GAAG,SAAS,mBAAmB,GAAGoF,EAAEpF,GAAG,KAAKC;AAAA,MAC9D,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AAAA,MACT,EAAE,CAAC,IAAI,CAAC,GAAGmF,EAAEpF,GAAG,KAAKE;AAAA,MACrB,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AAAA,MACT,EAAE,CAAC,IAAI,CAAC,GAAGkF;AAAA,QACTpF;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX,GAASoF;AAAA,QACDpF;AAAA,QACA;AAAA;AAAA,QAEA,EAAE,CAAC;AAAA,MACX;AAAA,IACK;AAAA,IACD,EAAEO,GAAG,GAAG;AACN,MAAAqE,EAAErE,GAAGP,GAAG,CAAC;AAAA,IACV;AAAA,IACD,EAAEO,GAAG,GAAG;AACN;AAAA,MACA,KAAKN,OAAOA;AAAA,MACZM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AAAA,MACTA,EAAE,CAAC,IAAI,MAAM6E,EAAEpF,GAAG,KAAKC,CAAC,GAAG;AAAA,MAC3B,KAAKC,OAAOA;AAAA,MACZK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AAAA,MACTA,EAAE,CAAC,IAAI,MAAM6E,EAAEpF,GAAG,KAAKE,CAAC,GAAG;AAAA,MAC3B,KAAKkF;AAAA,QACHpF;AAAA,QACA;AAAA;AAAA,QAEAO,EAAE,CAAC;AAAA,MACX,GAAS;AAAA,MACH,KAAK6E;AAAA,QACHpF;AAAA,QACA;AAAA;AAAA,QAEAO,EAAE,CAAC;AAAA,MACX;AAAA,IACK;AAAA,IACD,EAAEA,GAAG;AACH,MAAAA,KAAKsE,EAAE7E,CAAC;AAAA,IACT;AAAA,EACL;AACA;AACA,SAAS+L,GAAG,GAAG;AACb,MAAI/L,GAAGC;AAAA;AAAA,IAEL,EAAE,CAAC,KAAK4L,GAAGD,GAAG,CAAC,CAAC;AAAA;AAElB,SAAO;AAAA,IACL,IAAI;AACF,MAAA5L,IAAI+E,GAAG,GAAG,GAAG9E,KAAKA,EAAE,EAAG,GAAEmF,EAAEpF,GAAG,SAAS,+BAA+B;AAAA,IACvE;AAAA,IACD,EAAEE,GAAGK,GAAG;AACN,MAAAqE,EAAE1E,GAAGF,GAAGO,CAAC,GAAGN,KAAKA,EAAE,EAAED,GAAG,IAAI;AAAA,IAC7B;AAAA,IACD,EAAEE,GAAG,CAACK,CAAC,GAAG;AAER,MAAAL,EAAE,CAAC,IAAID,IAAIA,EAAE,EAAE2L,GAAG1L,CAAC,GAAGK,CAAC,KAAKN,IAAI4L,GAAGD,GAAG1L,CAAC,CAAC,GAAGD,EAAE,EAAC,GAAIA,EAAE,EAAED,GAAG,IAAI,KAAKC,MAAMA,EAAE,EAAE,CAAC,GAAGA,IAAI;AAAA,IACrF;AAAA,IACD,GAAG0D;AAAA,IACH,GAAGA;AAAA,IACH,EAAEzD,GAAG;AACH,MAAAA,KAAK2E,EAAE7E,CAAC,GAAGC,KAAKA,EAAE;IACnB;AAAA,EACL;AACA;AACA,MAAM+L,KAAK;AACX,SAASC,GAAG,GAAGjM,GAAGC,GAAG;AACnB,MAAIC;AACJ,QAAMK,IAAIuF;AACV,MAAI,EAAE,kBAAkB,EAAG,IAAG9F,GAAG,EAAE,aAAaW,EAAC,IAAKX,GAAG,EAAE,WAAWQ,EAAC,IAAKR,GAAG,EAAE,eAAeS,IAAI,EAAG,IAAGT,GAAGU,GAAG,IAAI,CAAA,GAAIM,IAAI,MAAMC,IAAI;AACtI,QAAMC,IAAI,CAAC,MAAM;AACf,UAAM,EAAE,WAAWwB,GAAG,SAASC,GAAG,SAASC,EAAG,IAAG;AACjD,QAAIlC,IAAI,EAAE,WAAWgC,GAAG,SAASC,GAAG,SAASC,EAAC,GAAIjC,MAAM,UAAU,EAAE,WAAW,GAAG;AAChF,YAAM,IAAIH,EAAE,eAAe,EAAE,SAAS,EAAE,OAAO;AAC/C,QAAE,KAAK,CAAC,GAAGP,EAAE,GAAGe,IAAI,CAAC;AAAA,IACtB;AAAA,EACL,GAAKG,IAAI,CAAC,MAAM;AACZ,QAAI,EAAE,SAAS,MAAMlB,EAAE,GAAGe,IAAIR,EAAE,eAAe,EAAE,SAAS,EAAE,OAAO,CAAC,GAAG,EAAE,SAAS,IAAI;AACpF,YAAMkC,IAAIiJ,GAAG3K,GAAG,EAAE,CAAC,CAAC,IAAIP;AACxB,MAAAR,EAAE,GAAGgB,IAAIyB,IAAIsJ,EAAE;AAAA,IAChB;AAAA,EACL,GAAK3K,IAAI,CAAC,MAAM;AACZ,QAAIV,MAAM,SAAS;AACjB,YAAM+B,IAAI,EAAE,YAAYhC,EAAE,WAAWiC,IAAIgJ,GAAG,CAACjL,EAAE,SAASA,EAAE,OAAO,GAAG,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC;AAC1F,UAAIgC,IAAI,OAAOC,IAAI;AACjB;AACF,UAAI1B;AACF,QAAAwB;eACO,EAAE,WAAW,GAAG;AACvB,cAAMG,IAAIpC,EAAE,eAAe,EAAE,SAAS,EAAE,OAAO;AAC/C,UAAE,KAAKoC,CAAC,GAAG3C,EAAE,GAAGe,IAAI4B,CAAC;AAAA,MACtB;AACC,UAAE,KAAK5B,CAAC;AAAA,IAChB,OAAW;AACL,UAAI,EAAE,WAAW,KAAK2K,GAAG,EAAE,CAAC,GAAG3K,CAAC,KAAK,GAAG;AACtC,QAAAf,EAAE,GAAG,IAAI,CAAE,CAAA,GAAGA,EAAE,GAAGe,IAAI,IAAI;AAC3B;AAAA,MACD;AACD,QAAE,yBAA0B,GAAEC,IAAIwB,EAAG,IAAG,EAAE,KAAKzB,CAAC;AAAA,IACjD;AAAA,EACF,GAAEwB,IAAI,MAAM;AACX,UAAM,IAAI,CAAC,GAAG,GAAGxB,CAAC,GAAG0B,IAAI;AAAA,MACvB,MAAM+E,GAAG;AAAA,MACT,UAAU,EAAE,QAAQK,GAAG,CAAC,GAAG,QAAQ,EAAG;AAAA,IAC5C;AACI,IAAAF,GAAGlF,CAAC,IAAI,MAAMzC,EAAE,GAAG,IAAI,EAAE,GAAGA,EAAE,GAAGe,IAAI,IAAI,GAAGT,EAAE,UAAUmC,CAAC;AAAA,EAC1D,GAAED,IAAI,MAAM;AACX,UAAM,IAAI;AAAA,MACR,MAAMgF,GAAG;AAAA,MACT,UAAU;AAAA,QACR,QAAQK,GAAG,CAAC;AAAA,QACZ,QAAQ,CAAC,GAAG,CAAC;AAAA,MACd;AAAA,IACP;AACI,IAAA7H,EAAE,GAAG,IAAI,CAAE,CAAA,GAAGA,EAAE,GAAGe,IAAI,IAAI,GAAGT,EAAE,UAAU,CAAC;AAAA,EAC/C;AACE,SAAOqF,GAAG,MAAM;AACd,MAAE,eAAe1E,GAAG,EAAE,GAAG,EAAE,eAAeC,CAAC,GAAG,EAAE,aAAaE,GAAG,EAAE,GAAG,EAAE,YAAYmB,GAAG,EAAE;AAAA,EACzF,CAAA,GAAG,EAAE,QAAQ,CAAC,MAAM;AACnB,0BAAsB,KAAKvC,EAAE,GAAG,IAAI,EAAE,gBAAgB,GAAG,iBAAiB,KAAKA,EAAE,GAAGU,IAAI,EAAE,WAAW,GAAG,eAAe,KAAKV,EAAE,GAAGO,IAAI,EAAE,SAAS,GAAG,mBAAmB,KAAKP,EAAE,GAAGQ,IAAI,EAAE,aAAa;AAAA,EACvM,GAAK,EAAE,GAAG,SAAS,MAAM;AACrB,MAAE,GAAG;AAAA,IACL,OAAOR,EAAE,GAAGC,IAAI,KAAKO,CAAC;AAAA,EAC1B,GAAK;AAAA,IACD;AAAA,IACAO;AAAA,IACAC;AAAA,IACAf;AAAA,IACA;AAAA,IACAS;AAAA,IACAH;AAAA,IACAC;AAAA,EACJ;AACA;AACA,MAAMyL,WAAW1E,GAAG;AAAA,EAClB,YAAYxH,GAAG;AACb,UAAK,GAAIuH,GAAG,MAAMvH,GAAGiM,IAAIF,IAAI9H,IAAI;AAAA,MAC/B,kBAAkB;AAAA,MAClB,aAAa;AAAA,MACb,WAAW;AAAA,MACX,eAAe;AAAA,IACrB,CAAK;AAAA,EACF;AACH;AACA,MAAMkI,KAAqB,oBAAI,IAAI;AAAA,EACjC,CAAC,aAAa,EAAE,MAAMT,IAAI;AAAA,EAC1B,CAAC,WAAW,EAAE,MAAMQ,IAAI;AAC1B,CAAC,GAAGE,KAAK,MAAM,CAAC,GAAGD,GAAG,KAAI,CAAE,GAAGE,KAAK,CAAC,MAAMF,GAAG,IAAI,CAAC,GAAGG,KAAK,CAAC,GAAGtM,GAAGC,MAAMkM,GAAG,IAAI,GAAG,EAAE,MAAMnM,GAAG,MAAMC,EAAG,CAAA;AACtG,SAASsM,GAAG,GAAGvM,GAAGC,GAAGC,GAAGK,GAAG;AACzB,EAAAiM,GAAG,GAAGxM,GAAGC,KAAK,GAAGC,KAAK,EAAE,SAAS,GAAGK,KAAKkM,EAAE;AAC7C;AACA,SAASD,GAAG,GAAGxM,GAAGC,GAAGC,GAAGK,GAAG;AACzB,SAAOL,IAAID,KAAK;AACd,QAAIC,IAAID,IAAI,KAAK;AACf,UAAI,IAAIC,IAAID,IAAI,GAAGU,IAAIX,IAAIC,IAAI,GAAGO,IAAI,KAAK,IAAI,CAAC,GAAGC,IAAI,MAAM,KAAK,IAAI,IAAID,IAAI,CAAC,GAAGE,IAAI,MAAM,KAAK,KAAKF,IAAIC,KAAK,IAAIA,KAAK,CAAC,KAAKE,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,KAAK,IAAIV,GAAG,KAAK,MAAMD,IAAIW,IAAIF,IAAI,IAAIC,CAAC,CAAC,GAAGM,IAAI,KAAK,IAAId,GAAG,KAAK,MAAMF,KAAK,IAAIW,KAAKF,IAAI,IAAIC,CAAC,CAAC;AAC1P,MAAA8L,GAAG,GAAGxM,GAAG,GAAGgB,GAAGT,CAAC;AAAA,IACjB;AACD,QAAIU,IAAI,EAAEjB,CAAC,GAAGkB,IAAIjB,GAAGkB,IAAIjB;AACzB,SAAKwM,GAAG,GAAGzM,GAAGD,CAAC,GAAGO,EAAE,EAAEL,CAAC,GAAGe,CAAC,IAAI,KAAKyL,GAAG,GAAGzM,GAAGC,CAAC,GAAGgB,IAAIC,KAAK;AACxD,WAAKuL,GAAG,GAAGxL,GAAGC,CAAC,GAAGD,KAAKC,KAAKZ,EAAE,EAAEW,CAAC,GAAGD,CAAC,IAAI;AACvC,QAAAC;AACF,aAAOX,EAAE,EAAEY,CAAC,GAAGF,CAAC,IAAI;AAClB,QAAAE;AAAA,IACH;AACD,IAAAZ,EAAE,EAAEN,CAAC,GAAGgB,CAAC,MAAM,IAAIyL,GAAG,GAAGzM,GAAGkB,CAAC,KAAKA,KAAKuL,GAAG,GAAGvL,GAAGjB,CAAC,IAAIiB,KAAKnB,MAAMC,IAAIkB,IAAI,IAAInB,KAAKmB,MAAMjB,IAAIiB,IAAI;AAAA,EAChG;AACH;AACA,SAASuL,GAAG,GAAG1M,GAAGC,GAAG;AACnB,MAAIC,IAAI,EAAEF,CAAC;AACX,IAAEA,CAAC,IAAI,EAAEC,CAAC,GAAG,EAAEA,CAAC,IAAIC;AACtB;AACA,SAASuM,GAAG,GAAGzM,GAAG;AAChB,SAAO,IAAIA,IAAI,KAAK,IAAIA,IAAI,IAAI;AAClC;AACA,MAAM2M,GAAG;AAAA,EACP,YAAY3M,IAAI,GAAG;AACjB,SAAK,cAAc,KAAK,IAAI,GAAGA,CAAC,GAAG,KAAK,cAAc,KAAK,IAAI,GAAG,KAAK,KAAK,KAAK,cAAc,GAAG,CAAC,GAAG,KAAK;EAC5G;AAAA,EACD,MAAM;AACJ,WAAO,KAAK,KAAK,KAAK,MAAM,CAAE,CAAA;AAAA,EAC/B;AAAA,EACD,OAAOA,GAAG;AACR,QAAIC,IAAI,KAAK;AACb,UAAMC,IAAI,CAAA;AACV,QAAI,CAAC0M,GAAG5M,GAAGC,CAAC;AACV,aAAOC;AACT,UAAMK,IAAI,KAAK,QAAQ,IAAI,CAAA;AAC3B,WAAON,KAAK;AACV,eAASU,IAAI,GAAGA,IAAIV,EAAE,SAAS,QAAQU,KAAK;AAC1C,cAAMH,IAAIP,EAAE,SAASU,CAAC,GAAGF,IAAIR,EAAE,OAAOM,EAAEC,CAAC,IAAIA;AAC7C,QAAAoM,GAAG5M,GAAGS,CAAC,MAAMR,EAAE,OAAOC,EAAE,KAAKM,CAAC,IAAIqM,GAAG7M,GAAGS,CAAC,IAAI,KAAK,KAAKD,GAAGN,CAAC,IAAI,EAAE,KAAKM,CAAC;AAAA,MACxE;AACD,MAAAP,IAAI,EAAE;IACP;AACD,WAAOC;AAAA,EACR;AAAA,EACD,SAASF,GAAG;AACV,QAAIC,IAAI,KAAK;AACb,QAAI,CAAC2M,GAAG5M,GAAGC,CAAC;AACV,aAAO;AACT,UAAMC,IAAI,CAAA;AACV,WAAOD,KAAK;AACV,eAASM,IAAI,GAAGA,IAAIN,EAAE,SAAS,QAAQM,KAAK;AAC1C,cAAM,IAAIN,EAAE,SAASM,CAAC,GAAGI,IAAIV,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI;AACvD,YAAI2M,GAAG5M,GAAGW,CAAC,GAAG;AACZ,cAAIV,EAAE,QAAQ4M,GAAG7M,GAAGW,CAAC;AACnB,mBAAO;AACT,UAAAT,EAAE,KAAK,CAAC;AAAA,QACT;AAAA,MACF;AACD,MAAAD,IAAIC,EAAE;IACP;AACD,WAAO;AAAA,EACR;AAAA,EACD,KAAKF,GAAG;AACN,QAAI,EAAEA,KAAKA,EAAE;AACX,aAAO;AACT,QAAIA,EAAE,SAAS,KAAK,aAAa;AAC/B,eAASE,IAAI,GAAGA,IAAIF,EAAE,QAAQE;AAC5B,aAAK,OAAOF,EAAEE,CAAC,CAAC;AAClB,aAAO;AAAA,IACR;AACD,QAAID,IAAI,KAAK,OAAOD,EAAE,MAAK,GAAI,GAAGA,EAAE,SAAS,GAAG,CAAC;AACjD,QAAI,CAAC,KAAK,KAAK,SAAS;AACtB,WAAK,OAAOC;AAAA,aACL,KAAK,KAAK,WAAWA,EAAE;AAC9B,WAAK,WAAW,KAAK,MAAMA,CAAC;AAAA,SACzB;AACH,UAAI,KAAK,KAAK,SAASA,EAAE,QAAQ;AAC/B,cAAMC,IAAI,KAAK;AACf,aAAK,OAAOD,GAAGA,IAAIC;AAAA,MACpB;AACD,WAAK,QAAQD,GAAG,KAAK,KAAK,SAASA,EAAE,SAAS,GAAG,EAAE;AAAA,IACpD;AACD,WAAO;AAAA,EACR;AAAA,EACD,OAAOD,GAAG;AACR,WAAOA,KAAK,KAAK,QAAQA,GAAG,KAAK,KAAK,SAAS,CAAC,GAAG;AAAA,EACpD;AAAA,EACD,QAAQ;AACN,WAAO,KAAK,OAAO8M,GAAG,CAAE,CAAA,GAAG;AAAA,EAC5B;AAAA,EACD,OAAO9M,GAAGC,GAAG;AACX,QAAI,CAACD;AACH,aAAO;AACT,QAAIE,IAAI,KAAK;AACb,UAAMK,IAAI,KAAK,OAAOP,CAAC,GAAG,IAAI,CAAA,GAAIW,IAAI;AACtC,QAAIH,GAAGC,GAAGC;AACV,WAAOR,KAAK,EAAE,UAAU;AACtB,UAAIA,MAAMA,IAAI,EAAE,IAAK,GAAEO,IAAI,EAAE,EAAE,SAAS,CAAC,GAAGD,IAAIG,EAAE,IAAK,GAAED,IAAI,KAAKR,EAAE,MAAM;AACxE,cAAM,IAAI6M,GAAG/M,GAAGE,EAAE,UAAUD,CAAC;AAC7B,YAAI,MAAM;AACR,iBAAOC,EAAE,SAAS,OAAO,GAAG,CAAC,GAAG,EAAE,KAAKA,CAAC,GAAG,KAAK,UAAU,CAAC,GAAG;AAAA,MACjE;AACD,OAACQ,KAAK,CAACR,EAAE,QAAQ2M,GAAG3M,GAAGK,CAAC,KAAK,EAAE,KAAKL,CAAC,GAAGS,EAAE,KAAKH,CAAC,GAAGA,IAAI,GAAGC,IAAIP,GAAGA,IAAIA,EAAE,SAAS,CAAC,KAAKO,KAAKD,KAAKN,IAAIO,EAAE,SAASD,CAAC,GAAGE,IAAI,MAAMR,IAAI;AAAA,IAClI;AACD,WAAO;AAAA,EACR;AAAA,EACD,OAAOF,GAAG;AACR,WAAOA;AAAA,EACR;AAAA,EACD,YAAYA,GAAGC,GAAG;AAChB,WAAOD,EAAE,OAAOC,EAAE;AAAA,EACnB;AAAA,EACD,YAAYD,GAAGC,GAAG;AAChB,WAAOD,EAAE,OAAOC,EAAE;AAAA,EACnB;AAAA,EACD,SAAS;AACP,WAAO,KAAK;AAAA,EACb;AAAA,EACD,SAASD,GAAG;AACV,WAAO,KAAK,OAAOA,GAAG;AAAA,EACvB;AAAA,EACD,KAAKA,GAAGC,GAAG;AACT,UAAMC,IAAI,CAAA;AACV,WAAOF;AACL,MAAAA,EAAE,OAAOC,EAAE,KAAK,GAAGD,EAAE,QAAQ,IAAIE,EAAE,KAAK,GAAGF,EAAE,QAAQ,GAAGA,IAAIE,EAAE;AAChE,WAAOD;AAAA,EACR;AAAA,EACD,OAAOD,GAAGC,GAAGC,GAAGK,GAAG;AACjB,UAAM,IAAIL,IAAID,IAAI;AAClB,QAAIU,IAAI,KAAK,aAAaH;AAC1B,QAAI,KAAKG;AACP,aAAOH,IAAIsM,GAAG9M,EAAE,MAAMC,GAAGC,IAAI,CAAC,CAAC,GAAG8M,GAAGxM,GAAG,KAAK,MAAM,GAAGA;AACxD,IAAAD,MAAMA,IAAI,KAAK,KAAK,KAAK,IAAI,CAAC,IAAI,KAAK,IAAII,CAAC,CAAC,GAAGA,IAAI,KAAK,KAAK,IAAI,KAAK,IAAIA,GAAGJ,IAAI,CAAC,CAAC,IAAIC,IAAIsM,GAAG,CAAE,CAAA,GAAGtM,EAAE,OAAO,IAAIA,EAAE,SAASD;AAC5H,UAAME,IAAI,KAAK,KAAK,IAAIE,CAAC,GAAGD,IAAID,IAAI,KAAK,KAAK,KAAK,KAAKE,CAAC,CAAC;AAC1D,IAAAsM,GAAGjN,GAAGC,GAAGC,GAAGQ,GAAG,KAAK,WAAW;AAC/B,aAAS,IAAIT,GAAG,KAAKC,GAAG,KAAKQ,GAAG;AAC9B,YAAMM,IAAI,KAAK,IAAI,IAAIN,IAAI,GAAGR,CAAC;AAC/B,MAAA+M,GAAGjN,GAAG,GAAGgB,GAAGP,GAAG,KAAK,WAAW;AAC/B,eAASQ,IAAI,GAAGA,KAAKD,GAAGC,KAAKR,GAAG;AAC9B,cAAMS,IAAI,KAAK,IAAID,IAAIR,IAAI,GAAGO,CAAC;AAC/B,QAAAR,EAAE,SAAS,KAAK,KAAK,OAAOR,GAAGiB,GAAGC,GAAGX,IAAI,CAAC,CAAC;AAAA,MAC5C;AAAA,IACF;AACD,WAAOyM,GAAGxM,GAAG,KAAK,MAAM,GAAGA;AAAA,EAC5B;AAAA,EACD,eAAeR,GAAGC,GAAGC,GAAGK,GAAG;AACzB,WAAOA,EAAE,KAAKN,CAAC,GAAG,EAAEA,EAAE,QAAQM,EAAE,SAAS,MAAML,MAAM;AACnD,UAAI,IAAI,OAAOS,IAAI,IAAI,GAAGH;AAC1B,eAASC,IAAI,GAAGA,IAAIR,EAAE,SAAS,QAAQQ,KAAK;AAC1C,cAAMC,IAAIT,EAAE,SAASQ,CAAC,GAAG,IAAIyM,GAAGxM,CAAC,GAAGM,IAAImM,GAAGnN,GAAGU,CAAC,IAAI;AACnD,QAAAM,IAAIL,KAAKA,IAAIK,GAAG,IAAI,IAAI,IAAI,IAAI,GAAGR,IAAIE,KAAKM,MAAML,KAAK,IAAI,MAAM,IAAI,GAAGH,IAAIE;AAAA,MAC7E;AACD,MAAAT,IAAIO,KAAKP,EAAE,SAAS,CAAC;AAAA,IACtB;AACD,WAAOA;AAAA,EACR;AAAA,EACD,QAAQD,GAAGC,GAAGC,GAAG;AACf,UAAMK,IAAIL,IAAIF,IAAI,KAAK,OAAOA,CAAC,GAAG,IAAI,CAAA,GAAIW,IAAI,KAAK,eAAeJ,GAAG,KAAK,MAAMN,GAAG,CAAC;AACpF,SAAKU,EAAE,SAAS,KAAKX,CAAC,GAAGoN,GAAGzM,GAAGJ,CAAC,GAAGN,KAAK,KAAK,EAAEA,CAAC,EAAE,SAAS,SAAS,KAAK;AACvE,WAAK,OAAO,GAAGA,CAAC,GAAGA;AACrB,SAAK,oBAAoBM,GAAG,GAAGN,CAAC;AAAA,EACjC;AAAA;AAAA,EAED,OAAOD,GAAGC,GAAG;AACX,UAAMC,IAAIF,EAAEC,CAAC,GAAGM,IAAIL,EAAE,SAAS,QAAQ,IAAI,KAAK;AAChD,SAAK,iBAAiBA,GAAG,GAAGK,CAAC;AAC7B,UAAMI,IAAI,KAAK,kBAAkBT,GAAG,GAAGK,CAAC,GAAGC,IAAIsM,GAAG5M,EAAE,SAAS,OAAOS,GAAGT,EAAE,SAAS,SAASS,CAAC,CAAC;AAC7F,IAAAH,EAAE,SAASN,EAAE,QAAQM,EAAE,OAAON,EAAE,MAAM8M,GAAG9M,GAAG,KAAK,MAAM,GAAG8M,GAAGxM,GAAG,KAAK,MAAM,GAAGP,IAAID,EAAEC,IAAI,CAAC,EAAE,SAAS,KAAKO,CAAC,IAAI,KAAK,WAAWN,GAAGM,CAAC;AAAA,EACnI;AAAA,EACD,WAAWR,GAAGC,GAAG;AACf,SAAK,OAAO6M,GAAG,CAAC9M,GAAGC,CAAC,CAAC,GAAG,KAAK,KAAK,SAASD,EAAE,SAAS,GAAG,KAAK,KAAK,OAAO,IAAIgN,GAAG,KAAK,MAAM,KAAK,MAAM;AAAA,EACxG;AAAA,EACD,kBAAkBhN,GAAGC,GAAGC,GAAG;AACzB,QAAIK,GAAG,IAAI,OAAOI,IAAI,IAAI;AAC1B,aAASH,IAAIP,GAAGO,KAAKN,IAAID,GAAGO,KAAK;AAC/B,YAAMC,IAAI4M,GAAGrN,GAAG,GAAGQ,GAAG,KAAK,MAAM,GAAGE,IAAI2M,GAAGrN,GAAGQ,GAAGN,GAAG,KAAK,MAAM,GAAG,IAAIoN,GAAG7M,GAAGC,CAAC,GAAGM,IAAIkM,GAAGzM,CAAC,IAAIyM,GAAGxM,CAAC;AAChG,UAAI,KAAK,IAAI,GAAGH,IAAIC,GAAGG,IAAIK,IAAIL,IAAIK,IAAIL,KAAK,MAAM,KAAKK,IAAIL,MAAMA,IAAIK,GAAGT,IAAIC;AAAA,IAC7E;AACD,WAAOD,KAAKL,IAAID;AAAA,EACjB;AAAA;AAAA,EAED,iBAAiBD,GAAGC,GAAGC,GAAG;AACxB,UAAMK,IAAIP,EAAE,OAAO,KAAK,cAAcuN,IAAI,IAAIvN,EAAE,OAAO,KAAK,cAAcwN,IAAI7M,IAAI,KAAK,eAAeX,GAAGC,GAAGC,GAAGK,CAAC,GAAGC,IAAI,KAAK,eAAeR,GAAGC,GAAGC,GAAG,CAAC;AACrJ,IAAAS,IAAIH,KAAKR,EAAE,SAAS,KAAKO,CAAC;AAAA,EAC3B;AAAA;AAAA,EAED,eAAeP,GAAGC,GAAGC,GAAGK,GAAG;AACzB,IAAAP,EAAE,SAAS,KAAKO,CAAC;AACjB,UAAM,IAAI,KAAK,QAAQI,IAAI0M,GAAGrN,GAAG,GAAGC,GAAG,CAAC,GAAGO,IAAI6M,GAAGrN,GAAGE,IAAID,GAAGC,GAAG,CAAC;AAChE,QAAIO,IAAIgN,GAAG9M,CAAC,IAAI8M,GAAGjN,CAAC;AACpB,aAASE,IAAIT,GAAGS,IAAIR,IAAID,GAAGS,KAAK;AAC9B,YAAM,IAAIV,EAAE,SAASU,CAAC;AACtB,MAAA0M,GAAGzM,GAAGX,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,GAAGS,KAAKgN,GAAG9M,CAAC;AAAA,IACpC;AACD,aAASD,IAAIR,IAAID,IAAI,GAAGS,KAAKT,GAAGS,KAAK;AACnC,YAAM,IAAIV,EAAE,SAASU,CAAC;AACtB,MAAA0M,GAAG5M,GAAGR,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,GAAGS,KAAKgN,GAAGjN,CAAC;AAAA,IACpC;AACD,WAAOC;AAAA,EACR;AAAA,EACD,oBAAoBT,GAAGC,GAAGC,GAAG;AAC3B,aAASK,IAAIL,GAAGK,KAAK,GAAGA;AACtB,MAAA6M,GAAGnN,EAAEM,CAAC,GAAGP,CAAC;AAAA,EACb;AAAA,EACD,UAAUA,GAAG;AACX,aAASC,IAAID,EAAE,SAAS,GAAGE,GAAGD,KAAK,GAAGA;AACpC,MAAAD,EAAEC,CAAC,EAAE,SAAS,WAAW,IAAIA,IAAI,KAAKC,IAAIF,EAAEC,IAAI,CAAC,EAAE,UAAUC,EAAE,OAAOA,EAAE,QAAQF,EAAEC,CAAC,CAAC,GAAG,CAAC,KAAK,KAAK,MAAK,IAAK+M,GAAGhN,EAAEC,CAAC,GAAG,KAAK,MAAM;AAAA,EACnI;AACH;AACA,SAAS8M,GAAG,GAAG/M,GAAGC,GAAG;AACnB,MAAI,CAACA;AACH,WAAOD,EAAE,QAAQ,CAAC;AACpB,WAASE,IAAI,GAAGA,IAAIF,EAAE,QAAQE;AAC5B,QAAID,EAAE,GAAGD,EAAEE,CAAC,CAAC;AACX,aAAOA;AACX,SAAO;AACT;AACA,SAAS8M,GAAG,GAAGhN,GAAG;AAChB,EAAAqN,GAAG,GAAG,GAAG,EAAE,SAAS,QAAQrN,GAAG,CAAC;AAClC;AACA,SAASqN,GAAG,GAAGrN,GAAGC,GAAGC,GAAGK,GAAG;AACzB,EAAAA,MAAMA,IAAIuM,GAAG,IAAI,IAAIvM,EAAE,OAAO,IAAI,GAAGA,EAAE,OAAO,IAAI,GAAGA,EAAE,OAAO,KAAK,GAAGA,EAAE,OAAO,KAAK;AACpF,WAAS,IAAIP,GAAG,IAAIC,GAAG,KAAK;AAC1B,UAAMU,IAAI,EAAE,SAAS,CAAC;AACtB,IAAAyM,GAAG7M,GAAG,EAAE,OAAOL,EAAES,CAAC,IAAIA,CAAC;AAAA,EACxB;AACD,SAAOJ;AACT;AACA,SAAS6M,GAAG,GAAGpN,GAAG;AAChB,SAAO,EAAE,OAAO,KAAK,IAAI,EAAE,MAAMA,EAAE,IAAI,GAAG,EAAE,OAAO,KAAK,IAAI,EAAE,MAAMA,EAAE,IAAI,GAAG,EAAE,OAAO,KAAK,IAAI,EAAE,MAAMA,EAAE,IAAI,GAAG,EAAE,OAAO,KAAK,IAAI,EAAE,MAAMA,EAAE,IAAI,GAAG;AACrJ;AACA,SAASuN,GAAG,GAAGvN,GAAG;AAChB,SAAO,EAAE,OAAOA,EAAE;AACpB;AACA,SAASwN,GAAG,GAAGxN,GAAG;AAChB,SAAO,EAAE,OAAOA,EAAE;AACpB;AACA,SAASkN,GAAG,GAAG;AACb,UAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE;AACzC;AACA,SAASO,GAAG,GAAG;AACb,SAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE;AACvC;AACA,SAASN,GAAG,GAAGnN,GAAG;AAChB,UAAQ,KAAK,IAAIA,EAAE,MAAM,EAAE,IAAI,IAAI,KAAK,IAAIA,EAAE,MAAM,EAAE,IAAI,MAAM,KAAK,IAAIA,EAAE,MAAM,EAAE,IAAI,IAAI,KAAK,IAAIA,EAAE,MAAM,EAAE,IAAI;AACpH;AACA,SAASsN,GAAG,GAAGtN,GAAG;AAChB,QAAMC,IAAI,KAAK,IAAI,EAAE,MAAMD,EAAE,IAAI,GAAGE,IAAI,KAAK,IAAI,EAAE,MAAMF,EAAE,IAAI,GAAGO,IAAI,KAAK,IAAI,EAAE,MAAMP,EAAE,IAAI,GAAG,IAAI,KAAK,IAAI,EAAE,MAAMA,EAAE,IAAI;AAC3H,SAAO,KAAK,IAAI,GAAGO,IAAIN,CAAC,IAAI,KAAK,IAAI,GAAG,IAAIC,CAAC;AAC/C;AACA,SAAS2M,GAAG,GAAG7M,GAAG;AAChB,SAAO,EAAE,QAAQA,EAAE,QAAQ,EAAE,QAAQA,EAAE,QAAQA,EAAE,QAAQ,EAAE,QAAQA,EAAE,QAAQ,EAAE;AACjF;AACA,SAAS4M,GAAG,GAAG5M,GAAG;AAChB,SAAOA,EAAE,QAAQ,EAAE,QAAQA,EAAE,QAAQ,EAAE,QAAQA,EAAE,QAAQ,EAAE,QAAQA,EAAE,QAAQ,EAAE;AACjF;AACA,SAAS8M,GAAG,GAAG;AACb,SAAO;AAAA,IACL,UAAU;AAAA,IACV,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,MAAM,IAAI;AAAA,IACV,MAAM,IAAI;AAAA,IACV,MAAM,KAAK;AAAA,IACX,MAAM,KAAK;AAAA,EACf;AACA;AACA,SAASG,GAAG,GAAGjN,GAAGC,GAAGC,GAAGK,GAAG;AACzB,QAAM,IAAI,CAACP,GAAGC,CAAC;AACf,SAAO,EAAE,UAAU;AACjB,QAAIA,IAAI,EAAE,OAAOD,IAAI,EAAE,IAAK,GAAEC,IAAID,KAAKE;AACrC;AACF,UAAMS,IAAIX,IAAI,KAAK,MAAMC,IAAID,KAAKE,IAAI,CAAC,IAAIA;AAC3C,IAAAqM,GAAG,GAAG5L,GAAGX,GAAGC,GAAGM,CAAC,GAAG,EAAE,KAAKP,GAAGW,GAAGA,GAAGV,CAAC;AAAA,EACrC;AACH;AACA,MAAMyN,KAAK,MAAM;AACf,QAAM,IAAI,IAAIf,GAAI,GAAE3M,IAAoB,oBAAI,IAAK,GAAEC,IAAI,MAAM,CAAC,GAAGD,EAAE,OAAM,CAAE,GAAGE,IAAI,MAAM;AACtF,MAAE,MAAK,GAAIF,EAAE,MAAK;AAAA,EACtB,GAAKO,IAAI,CAACS,MAAM;AACZ,UAAM,EAAE,MAAMC,GAAG,MAAMC,GAAG,MAAMC,GAAG,MAAME,EAAC,IAAKL,EAAE,SAAS,SAAS,QAAQwB,IAAI,EAAE,MAAMvB,GAAG,MAAMC,GAAG,MAAMC,GAAG,MAAME,GAAG,QAAQL,EAAC;AAC9H,MAAE,OAAOwB,CAAC,GAAGxC,EAAE,IAAIgB,EAAE,YAAYwB,CAAC;AAAA,EACtC,GAAK,IAAI,CAACxB,MAAM;AACZ,UAAMC,IAAIjB,EAAE,IAAIgB,EAAE,UAAU;AAC5B,MAAE,OAAOC,CAAC,GAAGjB,EAAE,OAAOgB,EAAE,UAAU;AAAA,EACtC;AACE,SAAO;AAAA,IACL,KAAKf;AAAA,IACL,OAAOC;AAAA,IACP,OAAO,CAACc,GAAGC,MAAM;AACf,YAAME,IAAI,EAAE,OAAO;AAAA,QACjB,MAAMH;AAAA,QACN,MAAMC;AAAA,QACN,MAAMD;AAAA,QACN,MAAMC;AAAA,MACd,CAAO,EAAE,IAAI,CAACI,MAAMA,EAAE,MAAM,EAAE,OAAO,CAACA,MAAMA,EAAE,SAAS,SAASoG,GAAG,aAAaI,GAAGxG,EAAE,UAAUL,GAAGC,CAAC,CAAC;AAC9F,UAAIE,EAAE,SAAS;AACb,eAAOA,EAAE,KAAK,CAACE,GAAGmB,MAAMoF,GAAGvG,EAAE,QAAQ,IAAIuG,GAAGpF,EAAE,QAAQ,CAAC,GAAGrB,EAAE,CAAC;AAAA,IAChE;AAAA,IACD,iBAAiB,CAACH,GAAGC,GAAGC,GAAGC,MAAM,EAAE,OAAO;AAAA,MACxC,MAAMH;AAAA,MACN,MAAMC;AAAA,MACN,MAAMD,IAAIE;AAAA,MACV,MAAMD,IAAIE;AAAA,IACX,CAAA,EAAE,IAAI,CAACE,MAAMA,EAAE,MAAM;AAAA,IACtB,QAAQd;AAAA,IACR,QAAQ;AAAA,IACR,KAAK,CAACS,GAAGC,IAAI,OAAO;AAClB,MAAAA,KAAKf,EAAC;AACN,YAAMgB,IAAIF,EAAE,IAAI,CAACG,MAAM;AACrB,cAAM,EAAE,MAAME,GAAG,MAAMmB,GAAG,MAAMC,GAAG,MAAMkL,EAAC,IAAKxM,EAAE,SAAS,SAAS;AACnE,eAAO,EAAE,MAAME,GAAG,MAAMmB,GAAG,MAAMC,GAAG,MAAMkL,GAAG,QAAQxM,EAAC;AAAA,MAC9D,CAAO;AACD,MAAAD,EAAE,QAAQ,CAACC,MAAMnB,EAAE,IAAImB,EAAE,OAAO,YAAYA,CAAC,CAAC,GAAG,EAAE,KAAKD,CAAC;AAAA,IAC1D;AAAA,IACD,MAAM,MAAM,EAAE,IAAG,EAAG;AAAA,IACpB,QAAQ,CAACF,GAAGC,MAAM;AAChB,QAAED,CAAC,GAAGT,EAAEU,CAAC;AAAA,IACV;AAAA,EACL;AACA,GAAG2M,KAAK,CAAC,MAAM;AACb,QAAM5N,IAAIgC,MAAM/B,IAAIyN,GAAI,GAAExN,IAAIa,GAAGf,GAAG,EAAE,mBAAmB,GAAGO,IAAIK,GAAGZ,CAAC,GAAG,IAAIiD;AAC3E,SAAOjD,EAAE,QAAQ,CAAC,EAAE,SAASS,EAAC,MAAO;AACnC,IAAAR,EAAE,IAAIQ,EAAE,QAAQ,IAAI,CAACC,MAAMA,EAAE,MAAM,GAAG,EAAE,GAAGD,EAAE,QAAQ,QAAQ,CAACC,MAAMT,EAAE,OAAOS,EAAE,MAAM,CAAC,GAAGD,EAAE,QAAQ,QAAQ,CAAC,EAAE,UAAUC,GAAG,UAAUmN,EAAG,MAAK5N,EAAE,OAAOS,EAAE,QAAQmN,EAAE,MAAM,CAAC;AAAA,EAC7K,CAAG,GAAG;AAAA,IACF,OAAO;AAAA,MACL,GAAG7N;AAAA,MACH,OAAO,CAACS,GAAGC,MAAM;AACf,cAAMmN,IAAI5N,EAAE,MAAMQ,GAAGC,CAAC;AACtB,eAAOmN,IAAI7N,EAAE,cAAc6N,EAAE,UAAU,IAAI;AAAA,MAC5C;AAAA,MACD,iBAAiB,CAACpN,GAAGC,GAAGmN,GAAG7M,MAAMf,EAAE,gBAAgBQ,GAAGC,GAAGmN,GAAG7M,CAAC,EAAE,IAAI,CAACC,MAAMjB,EAAE,cAAciB,EAAE,UAAU,CAAC;AAAA,IACxG;AAAA,IACD,WAAWf;AAAA,IACX,OAAOK;AAAA,IACP,UAAU;AAAA,EACd;AACA,GAAGuN,KAAK,CAAC,MAAM;AACb,MAAI9N,GAAGC;AACP,MAAI,EAAE,aAAa;AACjB,IAAAD,IAAI,GAAGC,IAAID,EAAE,WAAW,MAAM,EAAE,oBAAoB,GAAE,CAAE;AAAA,OACrD;AACH,UAAMO,IAAI;AACV,IAAAP,IAAI,SAAS,cAAc,QAAQ,GAAGA,EAAE,QAAQO,EAAE,OAAOP,EAAE,SAASO,EAAE,QAAQN,IAAID,EAAE,WAAW,MAAM,EAAE,oBAAoB,GAAE,CAAE,GAAGC,EAAE,UAAUM,GAAG,GAAG,GAAGA,EAAE,OAAOA,EAAE,MAAM;AAAA,EACzK;AACD,MAAIL,IAAI;AACR,WAASK,IAAI,GAAGA,IAAI,IAAIA;AACtB,aAAS,IAAI,GAAG,IAAI,IAAI,KAAK;AAC3B,YAAMI,IAAI,KAAK,MAAM,IAAIX,EAAE,QAAQ,EAAE,GAAGQ,IAAI,KAAK,MAAMD,IAAIP,EAAE,SAAS,EAAE,GAAGS,IAAIR,EAAE,aAAaU,GAAGH,GAAG,GAAG,CAAC,EAAE,MAAME,KAAK,QAAQD,EAAE,CAAC,IAAI,QAAQA,EAAE,CAAC,IAAI,QAAQA,EAAE,CAAC,KAAK;AACnK,MAAAP,KAAKQ;AAAA,IACN;AACH,SAAOR,IAAI;AACb,GAAG6N,KAAK,CAAC,MAAM;AACb,QAAM/N,IAAI8N,GAAG,CAAC,GAAG7N,IAAID,IAAI,MAAM,SAAS;AACxC,SAAO,QAAQ,IAAI,mCAAmCA,EAAE,QAAQ,CAAC,CAAC,aAAaC,CAAC,SAAS,GAAGA;AAC9F,GAAG+N,KAAK,CAAC,OAAO;AAAA,EACd,GAAG;AAAA,EACH,gBAAgB,EAAE,mBAAmB,SAAS,KAAK,EAAE;AAAA,EACrD,aAAa,EAAE,eAAe;AAAA,EAC9B,qBAAqB,EAAE,uBAAuBnN,GAAG;AAAA,EACjD,OAAO,EAAE,SAAS;AACpB,IAAIoN,KAAK,UAAU,UAAU,QAAQ,UAAU,MAAM,IAAIC,KAAK,CAAC,GAAGlO,MAAM;AACtE,QAAMC,IAAID,KAAK,UAAUE,IAAI,CAACS,MAAM;AAClC,IAAAA,EAAE,QAAQ,OAAOA,EAAE,UAAU,EAAE,KAAI,IAAKA,EAAE,QAAQ,OAAOA,EAAE,WAAW,EAAE;EAC5E,GAAKJ,IAAI,CAACI,MAAM;AACZ,IAAAA,EAAE,QAAQ,OAAOA,EAAE,YAAYA,EAAE,WAAW,EAAE,KAAM,IAAG,EAAE,KAAM;AAAA,EAChE,GAAE,IAAI,MAAM;AACX,IAAAsN,KAAKhO,EAAE,oBAAoB,WAAWM,CAAC,IAAIN,EAAE,oBAAoB,WAAWC,CAAC;AAAA,EACjF;AACE,SAAO+N,KAAKhO,EAAE,iBAAiB,WAAWM,CAAC,IAAIN,EAAE,iBAAiB,WAAWC,CAAC,GAAG;AAAA,IAC/E,SAAS;AAAA,EACb;AACA;AACA,SAASiO,GAAG,GAAG;AACb,MAAInO,IAAI,KAAK;AACb,SAAO,KAAK;AAAA,IACV,SAASC,GAAG;AACV,aAAOD,EAAE,QAAQ,EAAC,CAAE,EAAE,KAAK,WAAW;AACpC,eAAOC;AAAA,MACf,CAAO;AAAA,IACF;AAAA,IACD,SAASA,GAAG;AACV,aAAOD,EAAE,QAAQ,EAAC,CAAE,EAAE,KAAK,WAAW;AACpC,eAAOA,EAAE,OAAOC,CAAC;AAAA,MACzB,CAAO;AAAA,IACF;AAAA,EACL;AACA;AACA,SAASmO,GAAG,GAAG;AACb,MAAIpO,IAAI;AACR,SAAO,IAAIA,EAAE,SAASC,GAAGC,GAAG;AAC1B,QAAI,EAAE,KAAK,OAAO,EAAE,SAAS;AAC3B,aAAOA;AAAA,QACL,IAAI;AAAA,UACF,OAAO,IAAI,MAAM,IAAI;AAAA,QACtB;AAAA,MACT;AACI,QAAIK,IAAI,MAAM,UAAU,MAAM,KAAK,CAAC;AACpC,QAAIA,EAAE,WAAW;AACf,aAAON,EAAE,CAAA,CAAE;AACb,QAAI,IAAIM,EAAE;AACV,aAASI,EAAEF,GAAGC,GAAG;AACf,UAAIA,MAAM,OAAOA,KAAK,YAAY,OAAOA,KAAK,aAAa;AACzD,YAAI,IAAIA,EAAE;AACV,YAAI,OAAO,KAAK,YAAY;AAC1B,YAAE;AAAA,YACAA;AAAA,YACA,SAASM,GAAG;AACV,cAAAL,EAAEF,GAAGO,CAAC;AAAA,YACP;AAAA,YACD,SAASA,GAAG;AACV,cAAAT,EAAEE,CAAC,IAAI,EAAE,QAAQ,YAAY,QAAQO,EAAG,GAAE,EAAE,MAAM,KAAKf,EAAEM,CAAC;AAAA,YAC3D;AAAA,UACb;AACU;AAAA,QACD;AAAA,MACF;AACD,MAAAA,EAAEE,CAAC,IAAI,EAAE,QAAQ,aAAa,OAAOC,EAAG,GAAE,EAAE,MAAM,KAAKT,EAAEM,CAAC;AAAA,IAC3D;AACD,aAASC,IAAI,GAAGA,IAAID,EAAE,QAAQC;AAC5B,MAAAG,EAAEH,GAAGD,EAAEC,CAAC,CAAC;AAAA,EACf,CAAG;AACH;AACA,SAAS6N,GAAG,GAAGrO,GAAG;AAChB,OAAK,OAAO,kBAAkB,KAAK,SAAS,GAAG,KAAK,UAAUA,KAAK;AACrE;AACAqO,GAAG,YAAY,MAAM;AACrB,SAASC,GAAG,GAAG;AACb,MAAItO,IAAI;AACR,SAAO,IAAIA,EAAE,SAASC,GAAGC,GAAG;AAC1B,QAAI,EAAE,KAAK,OAAO,EAAE,SAAS;AAC3B,aAAOA,EAAE,IAAI,UAAU,8BAA8B,CAAC;AACxD,QAAIK,IAAI,MAAM,UAAU,MAAM,KAAK,CAAC;AACpC,QAAIA,EAAE,WAAW;AACf,aAAOL,EAAC;AACV,aAAS,IAAI,CAAA,GAAIS,IAAI,GAAGA,IAAIJ,EAAE,QAAQI;AACpC,UAAI;AACF,QAAAX,EAAE,QAAQO,EAAEI,CAAC,CAAC,EAAE,KAAKV,CAAC,EAAE,MAAM,SAASO,GAAG;AACxC,YAAE,KAAKA,CAAC,GAAG,EAAE,WAAWD,EAAE,UAAUL;AAAA,YAClC,IAAImO;AAAA,cACF;AAAA,cACA;AAAA,YACD;AAAA,UACb;AAAA,QACA,CAAS;AAAA,MACF,SAAQ7N,GAAG;AACV,QAAAN,EAAEM,CAAC;AAAA,MACJ;AAAA,EACP,CAAG;AACH;AACA,IAAI+N,KAAK;AACT,SAASC,GAAG,GAAG;AACb,SAAO,CAAC,EAAE,KAAK,OAAO,EAAE,SAAS;AACnC;AACA,SAASC,KAAK;AACd;AACA,SAASC,GAAG,GAAG1O,GAAG;AAChB,SAAO,WAAW;AAChB,MAAE,MAAMA,GAAG,SAAS;AAAA,EACxB;AACA;AACA,SAAS2O,GAAG,GAAG;AACb,MAAI,EAAE,gBAAgBA;AACpB,UAAM,IAAI,UAAU,sCAAsC;AAC5D,MAAI,OAAO,KAAK;AACd,UAAM,IAAI,UAAU,gBAAgB;AACtC,OAAK,SAAS,GAAG,KAAK,WAAW,IAAI,KAAK,SAAS,QAAQ,KAAK,aAAa,CAAA,GAAIC,GAAG,GAAG,IAAI;AAC7F;AACA,SAASC,GAAG,GAAG7O,GAAG;AAChB,SAAO,EAAE,WAAW;AAClB,QAAI,EAAE;AACR,MAAI,EAAE,WAAW,GAAG;AAClB,MAAE,WAAW,KAAKA,CAAC;AACnB;AAAA,EACD;AACD,IAAE,WAAW,IAAI2O,GAAG,aAAa,WAAW;AAC1C,QAAI1O,IAAI,EAAE,WAAW,IAAID,EAAE,cAAcA,EAAE;AAC3C,QAAIC,MAAM,MAAM;AACd,OAAC,EAAE,WAAW,IAAI6O,KAAKC,IAAI/O,EAAE,SAAS,EAAE,MAAM;AAC9C;AAAA,IACD;AACD,QAAIE;AACJ,QAAI;AACF,MAAAA,IAAID,EAAE,EAAE,MAAM;AAAA,IACf,SAAQM,GAAG;AACV,MAAAwO,GAAG/O,EAAE,SAASO,CAAC;AACf;AAAA,IACD;AACD,IAAAuO,GAAG9O,EAAE,SAASE,CAAC;AAAA,EACnB,CAAG;AACH;AACA,SAAS4O,GAAG,GAAG9O,GAAG;AAChB,MAAI;AACF,QAAIA,MAAM;AACR,YAAM,IAAI,UAAU,2CAA2C;AACjE,QAAIA,MAAM,OAAOA,KAAK,YAAY,OAAOA,KAAK,aAAa;AACzD,UAAIC,IAAID,EAAE;AACV,UAAIA,aAAa2O,IAAI;AACnB,UAAE,SAAS,GAAG,EAAE,SAAS3O,GAAGgP,GAAG,CAAC;AAChC;AAAA,MACR,WAAiB,OAAO/O,KAAK,YAAY;AACjC,QAAA2O,GAAGF,GAAGzO,GAAGD,CAAC,GAAG,CAAC;AACd;AAAA,MACD;AAAA,IACF;AACD,MAAE,SAAS,GAAG,EAAE,SAASA,GAAGgP,GAAG,CAAC;AAAA,EACjC,SAAQ9O,GAAG;AACV,IAAA6O,GAAG,GAAG7O,CAAC;AAAA,EACR;AACH;AACA,SAAS6O,GAAG,GAAG/O,GAAG;AAChB,IAAE,SAAS,GAAG,EAAE,SAASA,GAAGgP,GAAG,CAAC;AAClC;AACA,SAASA,GAAG,GAAG;AACb,IAAE,WAAW,KAAK,EAAE,WAAW,WAAW,KAAKL,GAAG,aAAa,WAAW;AACxE,MAAE,YAAYA,GAAG,sBAAsB,EAAE,MAAM;AAAA,EACnD,CAAG;AACD,WAAS3O,IAAI,GAAGC,IAAI,EAAE,WAAW,QAAQD,IAAIC,GAAGD;AAC9C,IAAA6O,GAAG,GAAG,EAAE,WAAW7O,CAAC,CAAC;AACvB,IAAE,aAAa;AACjB;AACA,SAASiP,GAAG,GAAGjP,GAAGC,GAAG;AACnB,OAAK,cAAc,OAAO,KAAK,aAAa,IAAI,MAAM,KAAK,aAAa,OAAOD,KAAK,aAAaA,IAAI,MAAM,KAAK,UAAUC;AAC5H;AACA,SAAS2O,GAAG,GAAG5O,GAAG;AAChB,MAAIC,IAAI;AACR,MAAI;AACF;AAAA,MACE,SAASC,GAAG;AACV,QAAAD,MAAMA,IAAI,IAAI6O,GAAG9O,GAAGE,CAAC;AAAA,MACtB;AAAA,MACD,SAASA,GAAG;AACV,QAAAD,MAAMA,IAAI,IAAI8O,GAAG/O,GAAGE,CAAC;AAAA,MACtB;AAAA,IACP;AAAA,EACG,SAAQA,GAAG;AACV,QAAID;AACF;AACF,IAAAA,IAAI,IAAI8O,GAAG/O,GAAGE,CAAC;AAAA,EAChB;AACH;AACAyO,GAAG,UAAU,QAAQ,SAAS,GAAG;AAC/B,SAAO,KAAK,KAAK,MAAM,CAAC;AAC1B;AACAA,GAAG,UAAU,OAAO,SAAS,GAAG3O,GAAG;AACjC,MAAIC,IAAI,IAAI,KAAK,YAAYwO,EAAE;AAC/B,SAAOI,GAAG,MAAM,IAAII,GAAG,GAAGjP,GAAGC,CAAC,CAAC,GAAGA;AACpC;AACA0O,GAAG,UAAU,UAAUR;AACvBQ,GAAG,MAAM,SAAS,GAAG;AACnB,SAAO,IAAIA,GAAG,SAAS3O,GAAGC,GAAG;AAC3B,QAAI,CAACuO,GAAG,CAAC;AACP,aAAOvO,EAAE,IAAI,UAAU,8BAA8B,CAAC;AACxD,QAAIC,IAAI,MAAM,UAAU,MAAM,KAAK,CAAC;AACpC,QAAIA,EAAE,WAAW;AACf,aAAOF,EAAE,CAAA,CAAE;AACb,QAAIO,IAAIL,EAAE;AACV,aAAS,EAAEM,GAAGC,GAAG;AACf,UAAI;AACF,YAAIA,MAAM,OAAOA,KAAK,YAAY,OAAOA,KAAK,aAAa;AACzD,cAAIC,IAAID,EAAE;AACV,cAAI,OAAOC,KAAK,YAAY;AAC1B,YAAAA,EAAE;AAAA,cACAD;AAAA,cACA,SAAS,GAAG;AACV,kBAAED,GAAG,CAAC;AAAA,cACP;AAAA,cACDP;AAAA,YACd;AACY;AAAA,UACD;AAAA,QACF;AACD,QAAAC,EAAEM,CAAC,IAAIC,GAAG,EAAEF,MAAM,KAAKP,EAAEE,CAAC;AAAA,MAC3B,SAAQ,GAAG;AACV,QAAAD,EAAE,CAAC;AAAA,MACJ;AAAA,IACF;AACD,aAASU,IAAI,GAAGA,IAAIT,EAAE,QAAQS;AAC5B,QAAEA,GAAGT,EAAES,CAAC,CAAC;AAAA,EACf,CAAG;AACH;AACAgO,GAAG,MAAML;AACTK,GAAG,aAAaP;AAChBO,GAAG,UAAU,SAAS,GAAG;AACvB,SAAO,KAAK,OAAO,KAAK,YAAY,EAAE,gBAAgBA,KAAK,IAAI,IAAIA,GAAG,SAAS3O,GAAG;AAChF,IAAAA,EAAE,CAAC;AAAA,EACP,CAAG;AACH;AACA2O,GAAG,SAAS,SAAS,GAAG;AACtB,SAAO,IAAIA,GAAG,SAAS3O,GAAGC,GAAG;AAC3B,IAAAA,EAAE,CAAC;AAAA,EACP,CAAG;AACH;AACA0O,GAAG,OAAO,SAAS,GAAG;AACpB,SAAO,IAAIA,GAAG,SAAS3O,GAAGC,GAAG;AAC3B,QAAI,CAACuO,GAAG,CAAC;AACP,aAAOvO,EAAE,IAAI,UAAU,+BAA+B,CAAC;AACzD,aAASC,IAAI,GAAGK,IAAI,EAAE,QAAQL,IAAIK,GAAGL;AACnC,MAAAyO,GAAG,QAAQ,EAAEzO,CAAC,CAAC,EAAE,KAAKF,GAAGC,CAAC;AAAA,EAChC,CAAG;AACH;AACA0O,GAAG;AACH,OAAO,gBAAgB,cAAc,SAAS,GAAG;AAC/C,eAAa,CAAC;AAChB,KAAK,SAAS,GAAG;AACf,EAAAJ,GAAG,GAAG,CAAC;AACT;AACAI,GAAG,wBAAwB,SAAS3O,GAAG;AACrC,SAAO,UAAU,OAAO,WAAW,QAAQ,KAAK,yCAAyCA,CAAC;AAC5F;AACA,IAAIkP,KAAK,OAAO,aAAa,MAAM,aAAa,OAAO,SAAS,MAAM,SAAS,OAAO,SAAS,MAAM,SAAS,OAAO,OAAO,MAAM,OAAO;AACzI,SAASC,GAAG,GAAG;AACb,SAAO,KAAK,EAAE,cAAc,OAAO,UAAU,eAAe,KAAK,GAAG,SAAS,IAAI,EAAE,UAAU;AAC/F;AACA,SAASC,GAAG,GAAG;AACb,MAAI,EAAE;AACJ,WAAO;AACT,MAAIpP,IAAI,EAAE;AACV,MAAI,OAAOA,KAAK,YAAY;AAC1B,QAAIC,IAAI,SAASC,IAAI;AACnB,aAAO,gBAAgBA,IAAI,QAAQ,UAAUF,GAAG,WAAW,KAAK,WAAW,IAAIA,EAAE,MAAM,MAAM,SAAS;AAAA,IAC5G;AACI,IAAAC,EAAE,YAAYD,EAAE;AAAA,EACjB;AACC,IAAAC,IAAI,CAAA;AACN,SAAO,OAAO,eAAeA,GAAG,cAAc,EAAE,OAAO,GAAI,CAAA,GAAG,OAAO,KAAK,CAAC,EAAE,QAAQ,SAASC,GAAG;AAC/F,QAAIK,IAAI,OAAO,yBAAyB,GAAGL,CAAC;AAC5C,WAAO,eAAeD,GAAGC,GAAGK,EAAE,MAAMA,IAAI;AAAA,MACtC,YAAY;AAAA,MACZ,KAAK,WAAW;AACd,eAAO,EAAEL,CAAC;AAAA,MACX;AAAA,IACP,CAAK;AAAA,EACF,CAAA,GAAGD;AACN;AACA;AAAA;AAAA;AAAA;AAAA;AAKA,IAAIoP,KAAK,OAAO,uBAAuBC,KAAK,OAAO,UAAU,gBAAgBC,KAAK,OAAO,UAAU;AACnG,SAASC,GAAG,GAAG;AACb,MAAI,KAAK;AACP,UAAM,IAAI,UAAU,uDAAuD;AAC7E,SAAO,OAAO,CAAC;AACjB;AACA,SAASC,KAAK;AACZ,MAAI;AACF,QAAI,CAAC,OAAO;AACV,aAAO;AACT,QAAI,IAAI,IAAI,OAAO,KAAK;AACxB,QAAI,EAAE,CAAC,IAAI,MAAM,OAAO,oBAAoB,CAAC,EAAE,CAAC,MAAM;AACpD,aAAO;AACT,aAASzP,IAAI,IAAIC,IAAI,GAAGA,IAAI,IAAIA;AAC9B,MAAAD,EAAE,MAAM,OAAO,aAAaC,CAAC,CAAC,IAAIA;AACpC,QAAIC,IAAI,OAAO,oBAAoBF,CAAC,EAAE,IAAI,SAAS,GAAG;AACpD,aAAOA,EAAE,CAAC;AAAA,IAChB,CAAK;AACD,QAAIE,EAAE,KAAK,EAAE,MAAM;AACjB,aAAO;AACT,QAAIK,IAAI,CAAA;AACR,WAAO,uBAAuB,MAAM,EAAE,EAAE,QAAQ,SAAS,GAAG;AAC1D,MAAAA,EAAE,CAAC,IAAI;AAAA,IACR,CAAA,GAAG,OAAO,KAAK,OAAO,OAAO,CAAA,GAAIA,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM;AAAA,EACvD,QAAU;AACN,WAAO;AAAA,EACR;AACH;AACA,IAAImP,KAAKD,GAAE,IAAK,OAAO,SAAS,SAAS,GAAGzP,GAAG;AAC7C,WAASC,GAAGC,IAAIsP,GAAG,CAAC,GAAGjP,GAAG,IAAI,GAAG,IAAI,UAAU,QAAQ,KAAK;AAC1D,IAAAN,IAAI,OAAO,UAAU,CAAC,CAAC;AACvB,aAASU,KAAKV;AACZ,MAAAqP,GAAG,KAAKrP,GAAGU,CAAC,MAAMT,EAAES,CAAC,IAAIV,EAAEU,CAAC;AAC9B,QAAI0O,IAAI;AACN,MAAA9O,IAAI8O,GAAGpP,CAAC;AACR,eAASO,IAAI,GAAGA,IAAID,EAAE,QAAQC;AAC5B,QAAA+O,GAAG,KAAKtP,GAAGM,EAAEC,CAAC,CAAC,MAAMN,EAAEK,EAAEC,CAAC,CAAC,IAAIP,EAAEM,EAAEC,CAAC,CAAC;AAAA,IACxC;AAAA,EACF;AACD,SAAON;AACT;AACA,MAAMyP,KAAqB,gBAAAR,GAAGO,EAAE;AAChC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,OAAO,aAAa,QAAQ,OAAO,OAAO,MAAM,KAAK,aAAa,OAAO,OAAO,SAAS,QAAQ,OAAO,aAAa;AACrH,WAAW,YAAY,WAAW,UAAUf;AAC5C,OAAO,WAAW,OAAO,SAASgB;AAClC,IAAIC,KAAK;AACT,KAAK,OAAO,KAAK,UAAU,YAAY,KAAK,MAAM,WAAW;AAC3D,UAAwB,oBAAI,QAAQ;AACtC;AACA,IAAI,EAAE,WAAW,eAAe,WAAW,YAAY,MAAM;AAC3D,MAAIC,KAAK,KAAK;AACd,aAAW,gBAAgB,WAAW,cAAc,CAAE,IAAG,WAAW,YAAY,MAAM,WAAW;AAC/F,WAAO,KAAK,IAAK,IAAGA;AAAA,EACxB;AACA;AACA,IAAIC,KAAK,KAAK,IAAG,GAAIC,KAAK,CAAC,MAAM,OAAO,UAAU,GAAG;AACrD,SAASC,KAAK,GAAGA,KAAKD,GAAG,UAAU,CAAC,WAAW,uBAAuB,EAAEC,IAAI;AAC1E,MAAIC,KAAKF,GAAGC,EAAE;AACd,aAAW,wBAAwB,WAAWC,KAAK,uBAAuB,GAAG,WAAW,uBAAuB,WAAWA,KAAK,sBAAsB,KAAK,WAAWA,KAAK,6BAA6B;AACzM;AACA,WAAW,0BAA0B,WAAW,wBAAwB,SAAS,GAAG;AAClF,MAAI,OAAO,KAAK;AACd,UAAM,IAAI,UAAU,IAAI,mBAAmB;AAC7C,MAAIjQ,IAAI,KAAK,IAAG,GAAIC,IAAI2P,KAAKE,KAAK9P;AAClC,SAAOC,IAAI,MAAMA,IAAI,IAAI6P,KAAK9P,GAAG,WAAW,KAAK,WAAW,WAAW;AACrE,IAAA8P,KAAK,KAAK,IAAK,GAAE,EAAE,YAAY,IAAG,CAAE;AAAA,EACrC,GAAE7P,CAAC;AACN;AACA,WAAW,yBAAyB,WAAW,uBAAuB,SAAS,GAAG;AAChF,SAAO,aAAa,CAAC;AACvB;AACA,KAAK,SAAS,KAAK,OAAO,SAASD,GAAG;AACpC,SAAOA,IAAI,OAAOA,CAAC,GAAGA,MAAM,KAAK,MAAMA,CAAC,IAAIA,IAAIA,IAAI,IAAI,IAAI;AAC9D;AACA,OAAO,cAAc,OAAO,YAAY,SAASA,GAAG;AAClD,SAAO,OAAOA,KAAK,YAAY,SAASA,CAAC,KAAK,KAAK,MAAMA,CAAC,MAAMA;AAClE;AACA,WAAW,gBAAgB,WAAW,cAAc;AACpD,WAAW,iBAAiB,WAAW,eAAe;AACtD,WAAW,gBAAgB,WAAW,cAAc;AACpD,WAAW,gBAAgB,WAAW,cAAc;AACpD,WAAW,eAAe,WAAW,aAAa;AAClD,WAAW,eAAe,WAAW,aAAa;AAClD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,IAAIkQ;AAAA,CACH,SAAS,GAAG;AACX,IAAE,EAAE,eAAe,CAAC,IAAI,gBAAgB,EAAE,EAAE,QAAQ,CAAC,IAAI,SAAS,EAAE,EAAE,SAAS,CAAC,IAAI;AACtF,GAAGA,OAAOA,KAAK,CAAE,EAAC;AAClB,IAAIC;AAAA,CACH,SAAS,GAAG;AACX,IAAE,EAAE,UAAU,CAAC,IAAI,WAAW,EAAE,EAAE,QAAQ,CAAC,IAAI,SAAS,EAAE,EAAE,SAAS,CAAC,IAAI;AAC5E,GAAGA,OAAOA,KAAK,CAAE,EAAC;AAClB,IAAIC;AAAA,CACH,SAAS,GAAG;AACX,IAAE,EAAE,QAAQ,KAAK,IAAI,SAAS,EAAE,EAAE,QAAQ,GAAG,IAAI,SAAS,EAAE,EAAE,UAAU,IAAI,IAAI;AAClF,GAAGA,OAAOA,KAAK,CAAE,EAAC;AAClB,IAAIC;AAAA,CACH,SAAS,GAAG;AACX,IAAE,EAAE,SAAS,CAAC,IAAI,UAAU,EAAE,EAAE,MAAM,CAAC,IAAI,OAAO,EAAE,EAAE,WAAW,CAAC,IAAI,YAAY,EAAE,EAAE,SAAS,CAAC,IAAI,UAAU,EAAE,EAAE,UAAU,CAAC,IAAI,WAAW,EAAE,EAAE,SAAS,CAAC,IAAI,UAAU,EAAE,EAAE,UAAU,CAAC,IAAI,WAAW,EAAE,EAAE,cAAc,CAAC,IAAI,eAAe,EAAE,EAAE,aAAa,CAAC,IAAI,cAAc,EAAE,EAAE,aAAa,CAAC,IAAI,cAAc,EAAE,EAAE,aAAa,EAAE,IAAI,cAAc,EAAE,EAAE,aAAa,EAAE,IAAI,cAAc,EAAE,EAAE,YAAY,EAAE,IAAI,aAAa,EAAE,EAAE,MAAM,EAAE,IAAI,OAAO,EAAE,EAAE,aAAa,EAAE,IAAI,cAAc,EAAE,EAAE,QAAQ,EAAE,IAAI,SAAS,EAAE,EAAE,aAAa,EAAE,IAAI,cAAc,EAAE,EAAE,aAAa,EAAE,IAAI,cAAc,EAAE,EAAE,UAAU,EAAE,IAAI,WAAW,EAAE,EAAE,aAAa,EAAE,IAAI,cAAc,EAAE,EAAE,OAAO,EAAE,IAAI,QAAQ,EAAE,EAAE,WAAW,CAAC,IAAI,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,UAAU,EAAE,EAAE,UAAU,EAAE,IAAI,WAAW,EAAE,EAAE,WAAW,EAAE,IAAI,YAAY,EAAE,EAAE,WAAW,EAAE,IAAI,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,UAAU,EAAE,EAAE,UAAU,EAAE,IAAI,WAAW,EAAE,EAAE,WAAW,EAAE,IAAI,YAAY,EAAE,EAAE,QAAQ,EAAE,IAAI,SAAS,EAAE,EAAE,WAAW,EAAE,IAAI,YAAY,EAAE,EAAE,MAAM,EAAE,IAAI;AACx+B,GAAGA,MAAMA,IAAI,CAAE,EAAC;AAChB,IAAIC;AAAA,CACH,SAAS,GAAG;AACX,IAAE,EAAE,SAAS,CAAC,IAAI,UAAU,EAAE,EAAE,QAAQ,CAAC,IAAI,SAAS,EAAE,EAAE,YAAY,CAAC,IAAI,aAAa,EAAE,EAAE,aAAa,CAAC,IAAI,cAAc,EAAE,EAAE,YAAY,CAAC,IAAI,aAAa,EAAE,EAAE,iBAAiB,CAAC,IAAI,kBAAkB,EAAE,EAAE,eAAe,CAAC,IAAI;AACpO,GAAGA,OAAOA,KAAK,CAAE,EAAC;AAClB,IAAIC;AAAA,CACH,SAAS,GAAG;AACX,IAAE,EAAE,OAAO,IAAI,IAAI,QAAQ,EAAE,EAAE,MAAM,IAAI,IAAI,OAAO,EAAE,EAAE,KAAK,KAAK,IAAI,MAAM,EAAE,EAAE,MAAM,IAAI,IAAI,OAAO,EAAE,EAAE,eAAe,KAAK,IAAI,gBAAgB,EAAE,EAAE,cAAc,KAAK,IAAI,eAAe,EAAE,EAAE,aAAa,KAAK,IAAI,cAAc,EAAE,EAAE,cAAc,KAAK,IAAI,eAAe,EAAE,EAAE,QAAQ,IAAI,IAAI,SAAS,EAAE,EAAE,YAAY,IAAI,IAAI,aAAa,EAAE,EAAE,kBAAkB,IAAI,IAAI,mBAAmB,EAAE,EAAE,kBAAkB,IAAI,IAAI,mBAAmB,EAAE,EAAE,gBAAgB,KAAK,IAAI;AAChd,GAAGA,MAAMA,IAAI,CAAE,EAAC;AAChB,IAAIC;AAAA,CACH,SAAS,GAAG;AACX,IAAE,EAAE,aAAa,IAAI,IAAI,cAAc,EAAE,EAAE,mBAAmB,KAAK,IAAI,oBAAoB,EAAE,EAAE,mBAAmB,KAAK,IAAI,oBAAoB,EAAE,EAAE,8BAA8B,KAAK,IAAI,+BAA+B,EAAE,EAAE,8BAA8B,KAAK,IAAI,+BAA+B,EAAE,EAAE,8BAA8B,KAAK,IAAI,+BAA+B,EAAE,EAAE,8BAA8B,KAAK,IAAI,+BAA+B,EAAE,EAAE,8BAA8B,KAAK,IAAI,+BAA+B,EAAE,EAAE,8BAA8B,KAAK,IAAI;AAC9iB,GAAGA,OAAOA,KAAK,CAAE,EAAC;AAClB,IAAIC;AAAA,CACH,SAAS,GAAG;AACX,IAAE,EAAE,gBAAgB,IAAI,IAAI,iBAAiB,EAAE,EAAE,iBAAiB,IAAI,IAAI,kBAAkB,EAAE,EAAE,uBAAuB,KAAK,IAAI,wBAAwB,EAAE,EAAE,yBAAyB,KAAK,IAAI,0BAA0B,EAAE,EAAE,yBAAyB,KAAK,IAAI,0BAA0B,EAAE,EAAE,eAAe,IAAI,IAAI,gBAAgB,EAAE,EAAE,+BAA+B,KAAK,IAAI,gCAAgC,EAAE,EAAE,8BAA8B,KAAK,IAAI,+BAA+B,EAAE,EAAE,oBAAoB,KAAK,IAAI,qBAAqB,EAAE,EAAE,2BAA2B,KAAK,IAAI,4BAA4B,EAAE,EAAE,OAAO,IAAI,IAAI,QAAQ,EAAE,EAAE,QAAQ,IAAI,IAAI,SAAS,EAAE,EAAE,MAAM,IAAI,IAAI,OAAO,EAAE,EAAE,QAAQ,IAAI,IAAI,SAAS,EAAE,EAAE,iCAAiC,KAAK,IAAI,kCAAkC,EAAE,EAAE,aAAa,KAAK,IAAI;AAC7yB,GAAGA,MAAMA,IAAI,CAAE,EAAC;AAChB,IAAIC;AAAA,CACH,SAAS,GAAG;AACX,IAAE,EAAE,QAAQ,CAAC,IAAI,SAAS,EAAE,EAAE,MAAM,CAAC,IAAI,OAAO,EAAE,EAAE,OAAO,CAAC,IAAI;AAClE,GAAGA,OAAOA,KAAK,CAAE,EAAC;AAClB,IAAIC;AAAA,CACH,SAAS,GAAG;AACX,IAAE,EAAE,UAAU,CAAC,IAAI,WAAW,EAAE,EAAE,SAAS,CAAC,IAAI;AAClD,GAAGA,OAAOA,KAAK,CAAE,EAAC;AAClB,IAAIC;AAAA,CACH,SAAS,GAAG;AACX,IAAE,EAAE,QAAQ,KAAK,IAAI,SAAS,EAAE,EAAE,SAAS,KAAK,IAAI,UAAU,EAAE,EAAE,kBAAkB,KAAK,IAAI;AAC/F,GAAGA,OAAOA,KAAK,CAAE,EAAC;AAClB,IAAIC;AAAA,CACH,SAAS,GAAG;AACX,IAAE,EAAE,MAAM,CAAC,IAAI,OAAO,EAAE,EAAE,OAAO,CAAC,IAAI,QAAQ,EAAE,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,EAAE,YAAY,CAAC,IAAI;AACzF,GAAGA,OAAOA,KAAK,CAAE,EAAC;AAClB,IAAIC;AAAA,CACH,SAAS,GAAG;AACX,IAAE,EAAE,MAAM,CAAC,IAAI,OAAO,EAAE,EAAE,SAAS,CAAC,IAAI,UAAU,EAAE,EAAE,MAAM,CAAC,IAAI,OAAO,EAAE,EAAE,yBAAyB,CAAC,IAAI,0BAA0B,EAAE,EAAE,wBAAwB,CAAC,IAAI,yBAAyB,EAAE,EAAE,oBAAoB,CAAC,IAAI,qBAAqB,EAAE,EAAE,sBAAsB,CAAC,IAAI;AACjR,GAAGA,OAAOA,KAAK,CAAE,EAAC;AAClB,IAAIC;AAAA,CACH,SAAS,GAAG;AACX,IAAE,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,EAAE,MAAM,CAAC,IAAI,OAAO,EAAE,EAAE,OAAO,CAAC,IAAI,QAAQ,EAAE,EAAE,QAAQ,CAAC,IAAI,SAAS,EAAE,EAAE,QAAQ,CAAC,IAAI,SAAS,EAAE,EAAE,OAAO,CAAC,IAAI;AACxI,GAAGA,OAAOA,KAAK,CAAE,EAAC;AAClB,IAAIC;AAAA,CACH,SAAS,GAAG;AACX,IAAE,EAAE,OAAO,CAAC,IAAI,QAAQ,EAAE,EAAE,SAAS,CAAC,IAAI;AAC5C,GAAGA,OAAOA,KAAK,CAAE,EAAC;AAClB,IAAIC;AAAA,CACH,SAAS,GAAG;AACX,IAAE,MAAM,QAAQ,EAAE,SAAS,WAAW,EAAE,OAAO;AACjD,GAAGA,OAAOA,KAAK,CAAE,EAAC;AAClB,IAAIC;AAAA,CACH,SAAS,GAAG;AACX,IAAE,EAAE,OAAO,CAAC,IAAI,QAAQ,EAAE,EAAE,UAAU,CAAC,IAAI,WAAW,EAAE,EAAE,UAAU,CAAC,IAAI,WAAW,EAAE,EAAE,SAAS,CAAC,IAAI,UAAU,EAAE,EAAE,QAAQ,CAAC,IAAI;AACnI,GAAGA,OAAOA,KAAK,CAAE,EAAC;AAClB,IAAIC;AAAA,CACH,SAAS,GAAG;AACX,IAAE,EAAE,MAAM,CAAC,IAAI,OAAO,EAAE,EAAE,QAAQ,CAAC,IAAI,SAAS,EAAE,EAAE,OAAO,CAAC,IAAI,QAAQ,EAAE,EAAE,QAAQ,CAAC,IAAI;AAC3F,GAAGA,OAAOA,KAAK,CAAE,EAAC;AAClB,IAAIC;AAAA,CACH,SAAS,GAAG;AACX,IAAE,EAAE,OAAO,CAAC,IAAI,QAAQ,EAAE,EAAE,MAAM,CAAC,IAAI,OAAO,EAAE,EAAE,SAAS,CAAC,IAAI,UAAU,EAAE,EAAE,OAAO,CAAC,IAAI;AAC5F,GAAGA,OAAOA,KAAK,CAAE,EAAC;AAClB,IAAIC;AAAA,CACH,SAAS,GAAG;AACX,IAAE,EAAE,uBAAuB,KAAK,IAAI,wBAAwB,EAAE,EAAE,eAAe,KAAK,IAAI,gBAAgB,EAAE,EAAE,iBAAiB,KAAK,IAAI;AACxI,GAAGA,OAAOA,KAAK,CAAE,EAAC;AAClB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,IAAIC,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOP,cAAc,SAAS,GAAGtR,GAAG;AAC3B,QAAIC,IAAI,SAAS,cAAc,QAAQ;AACvC,WAAOA,EAAE,QAAQ,GAAGA,EAAE,SAASD,GAAGC;AAAA,EACnC;AAAA,EACD,0BAA0B,WAAW;AACnC,WAAO;AAAA,EACR;AAAA,EACD,cAAc,WAAW;AACvB,WAAO;AAAA,EACR;AAAA,EACD,YAAY,WAAW;AACrB,QAAI;AACJ,YAAQ,IAAI,SAAS,aAAa,QAAQ,MAAM,SAAS,IAAI,OAAO,SAAS;AAAA,EAC9E;AAAA,EACD,OAAO,SAAS,GAAGD,GAAG;AACpB,WAAO,MAAM,GAAGA,CAAC;AAAA,EAClB;AACH,GAAGuR,KAAK,WAAWC,KAAK,SAASC,KAAK,SAASC,KAAK,+BAA+BC,KAAK,4BAA4BC,KAAK,YAAYC,KAAK,sCAAsCC,KAAK,SAASC,KAAK,kBAAkBC,KAAK,yBAAyBC,KAAK,eAAeC,KAAK,SAASC,KAAK,eAAeC,KAAK,iCAAiCC,KAAK,0BAA0BC,KAAK,SAAS,GAAG;AAC7X,SAAO,OAAO,IAAI,OAAO,EAAE,aAAa,cAAc,OAAO,EAAE,kBAAkB,YAAY,EAAE,iBAAiB,KAAK,OAAO,WAAW;AACzI;AACA,SAASC,GAAG,GAAG;AACb,SAAO,SAASvS,GAAG;AACjB,WAAOA,EAAE,KAAK,CAAC;AAAA,EACnB;AACA;AACA,SAASwS,GAAG,GAAG;AACb,MAAIxS,IAAI;AAAA,IACN,WAAW;AAAA,IACX,UAAU;AAAA,IACV,gBAAgB;AAAA,EACpB;AACE,GAAC,KAAK,OAAO,YAAY,MAAMA,IAAI;AAAA,IACjC,WAAW,UAAU;AAAA,IACrB,UAAU,UAAU;AAAA,IACpB,gBAAgB,UAAU,kBAAkB;AAAA,EAChD,IAAM,OAAO,KAAK,WAAWA,EAAE,YAAY,IAAI,KAAK,EAAE,cAAcA,IAAI;AAAA,IACpE,WAAW,EAAE;AAAA,IACb,UAAU,EAAE;AAAA,IACZ,gBAAgB,EAAE,kBAAkB;AAAA,EACxC;AACE,MAAIC,IAAID,EAAE,WAAWE,IAAID,EAAE,MAAM,OAAO;AACxC,SAAOC,EAAE,CAAC,IAAI,QAAQD,IAAIC,EAAE,CAAC,IAAIA,IAAID,EAAE,MAAM,SAAS,GAAG,OAAOC,EAAE,CAAC,IAAI,QAAQD,IAAIC,EAAE,CAAC;AACtF,MAAIK,IAAIgS,GAAGtS,CAAC,GAAG,IAAI;AAAA,IACjB,OAAO;AAAA,MACL,OAAOM,EAAEgR,EAAE,KAAK,CAAChR,EAAEwR,EAAE;AAAA,MACrB,MAAMxR,EAAEiR,EAAE;AAAA,MACV,QAAQ,CAACjR,EAAEgR,EAAE,MAAMhR,EAAEkR,EAAE,KAAKa,GAAGtS,CAAC,MAAM,CAACO,EAAEwR,EAAE;AAAA,MAC3C,WAAWxR,EAAEmR,EAAE;AAAA,MACf,SAASnR,EAAEgR,EAAE,KAAKhR,EAAEiR,EAAE,KAAKjR,EAAEkR,EAAE,KAAKlR,EAAEmR,EAAE,KAAKY,GAAGtS,CAAC,MAAM,CAACO,EAAEwR,EAAE;AAAA,IAC7D;AAAA,IACD,QAAQ;AAAA,MACN,OAAOxR,EAAEsR,EAAE;AAAA,MACX,QAAQ,CAACtR,EAAEsR,EAAE,KAAKtR,EAAEuR,EAAE;AAAA,MACtB,QAAQvR,EAAEsR,EAAE,KAAKtR,EAAEuR,EAAE;AAAA,IACtB;AAAA,IACD,SAAS;AAAA,MACP,OAAO,CAACvR,EAAEwR,EAAE,KAAKxR,EAAEsR,EAAE,KAAK,CAACtR,EAAEwR,EAAE,KAAKxR,EAAEoR,EAAE;AAAA,MACxC,QAAQ,CAACpR,EAAEwR,EAAE,KAAK,CAACxR,EAAEsR,EAAE,KAAK,CAACtR,EAAEoR,EAAE,MAAMpR,EAAEuR,EAAE,KAAKvR,EAAEqR,EAAE;AAAA,MACpD,QAAQ,CAACrR,EAAEwR,EAAE,MAAMxR,EAAEsR,EAAE,KAAKtR,EAAEuR,EAAE,KAAKvR,EAAEoR,EAAE,KAAKpR,EAAEqR,EAAE,MAAMrR,EAAE,aAAa;AAAA,IACxE;AAAA,IACD,SAAS;AAAA,MACP,OAAOA,EAAEwR,EAAE;AAAA,MACX,QAAQxR,EAAEyR,EAAE;AAAA,MACZ,QAAQzR,EAAEwR,EAAE,KAAKxR,EAAEyR,EAAE;AAAA,IACtB;AAAA,IACD,OAAO;AAAA,MACL,YAAYzR,EAAE0R,EAAE;AAAA,MAChB,cAAc1R,EAAE2R,EAAE;AAAA,MAClB,OAAO3R,EAAE4R,EAAE;AAAA,MACX,SAAS5R,EAAE8R,EAAE;AAAA,MACb,QAAQ9R,EAAE6R,EAAE;AAAA,MACZ,QAAQ7R,EAAE0R,EAAE,KAAK1R,EAAE2R,EAAE,KAAK3R,EAAE4R,EAAE,KAAK5R,EAAE8R,EAAE,KAAK9R,EAAE6R,EAAE;AAAA,IACjD;AAAA,IACD,KAAK;AAAA,IACL,OAAO;AAAA,IACP,QAAQ;AAAA,EACZ;AACE,SAAO,EAAE,MAAM,EAAE,MAAM,UAAU,EAAE,QAAQ,UAAU,EAAE,QAAQ,UAAU,EAAE,MAAM,QAAQ,EAAE,QAAQ,EAAE,MAAM,SAAS,EAAE,QAAQ,SAAS,EAAE,QAAQ,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,EAAE,QAAQ,UAAU,EAAE,QAAQ,QAAQ;AAC7N;AACA,IAAIK,KAAKD,GAAG,WAAW,SAAS;AAChC,SAASE,KAAK;AACZ,SAAO,CAACD,GAAG,MAAM;AACnB;AACA,SAASE,GAAG,GAAG;AACb,MAAI3S,IAAI;AACR,MAAIyS,GAAG,UAAUA,GAAG,OAAO;AACzB,QAAIA,GAAG,MAAM,QAAQ;AACnB,UAAIxS,IAAI,UAAU,UAAU,MAAM,iBAAiB;AACnD,UAAIA,GAAG;AACL,YAAIC,IAAI,SAASD,EAAE,CAAC,GAAG,EAAE;AACzB,QAAAC,IAAI,OAAOF,IAAI;AAAA,MAChB;AAAA,IACF;AACD,QAAIyS,GAAG,QAAQ,QAAQ;AACrB,UAAIxS,IAAI,UAAU,UAAU,MAAM,oBAAoB;AACtD,UAAIA,GAAG;AACL,YAAIC,IAAI,SAASD,EAAE,CAAC,GAAG,EAAE;AACzB,QAAAC,IAAI,MAAMF,IAAI;AAAA,MACf;AAAA,IACF;AAAA,EACF;AACD,SAAOA,IAAI,IAAI;AACjB;AACA,IAAI4S,IAAI;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAaN,SAAStB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUT,iBAAiBT,GAAG;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUpB,mBAAmB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASnB,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASZ,mBAAmB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASnB,oBAAoBO,GAAG;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASvB,qBAAqBuB,GAAG,EAAE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAa1B,mBAAmB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAmBnB,gBAAgB;AAAA,IACd,MAAM;AAAA,IACN,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,aAAa;AAAA,IACb,iBAAiB;AAAA,IACjB,iBAAiB;AAAA,IACjB,iBAAiB;AAAA,IACjB,mBAAmB;AAAA,IACnB,WAAW;AAAA,IACX,uBAAuB;AAAA,EACxB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASD,SAAS3B,GAAG;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASZ,aAAa,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASlB,oBAAoB,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASzB,WAAWJ,GAAG;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASd,YAAYD,GAAG;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASf,kBAAkBM,GAAG;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUrB,oBAAoBwB,GAAG,MAAM,SAASxB,GAAG,OAAOA,GAAG;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQnD,wBAAwByB,GAAI;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAS5B,qBAAqB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWrB,cAAc;AAChB,GAAGG,KAAK,EAAE,SAAS,CAAA;CAClB,SAAS,GAAG;AACX,MAAI7S,IAAI,OAAO,UAAU,gBAAgBC,IAAI;AAC7C,WAASC,IAAI;AAAA,EACZ;AACD,SAAO,WAAWA,EAAE,YAA4B,uBAAO,OAAO,IAAI,GAAG,IAAIA,EAAG,EAAC,cAAcD,IAAI;AAC/F,WAASM,EAAEE,GAAGC,GAAG,GAAG;AAClB,SAAK,KAAKD,GAAG,KAAK,UAAUC,GAAG,KAAK,OAAO,KAAK;AAAA,EACjD;AACD,WAAS,EAAED,GAAGC,GAAG,GAAGM,GAAGC,GAAG;AACxB,QAAI,OAAO,KAAK;AACd,YAAM,IAAI,UAAU,iCAAiC;AACvD,QAAIC,IAAI,IAAIX,EAAE,GAAGS,KAAKP,GAAGQ,CAAC,GAAGE,IAAIlB,IAAIA,IAAIS,IAAIA;AAC7C,WAAOD,EAAE,QAAQU,CAAC,IAAIV,EAAE,QAAQU,CAAC,EAAE,KAAKV,EAAE,QAAQU,CAAC,IAAI,CAACV,EAAE,QAAQU,CAAC,GAAGD,CAAC,IAAIT,EAAE,QAAQU,CAAC,EAAE,KAAKD,CAAC,KAAKT,EAAE,QAAQU,CAAC,IAAID,GAAGT,EAAE,iBAAiBA;AAAA,EACzI;AACD,WAASE,EAAEF,GAAGC,GAAG;AACf,MAAED,EAAE,iBAAiB,IAAIA,EAAE,UAAU,IAAIP,EAAC,IAAK,OAAOO,EAAE,QAAQC,CAAC;AAAA,EAClE;AACD,WAASF,IAAI;AACX,SAAK,UAAU,IAAIN,EAAG,GAAE,KAAK,eAAe;AAAA,EAC7C;AACD,EAAAM,EAAE,UAAU,aAAa,WAAW;AAClC,QAAI,IAAI,CAAA,GAAIqN,GAAG7M;AACf,QAAI,KAAK,iBAAiB;AACxB,aAAO;AACT,SAAKA,KAAK6M,IAAI,KAAK;AACjB,MAAA7N,EAAE,KAAK6N,GAAG7M,CAAC,KAAK,EAAE,KAAKf,IAAIe,EAAE,MAAM,CAAC,IAAIA,CAAC;AAC3C,WAAO,OAAO,wBAAwB,EAAE,OAAO,OAAO,sBAAsB6M,CAAC,CAAC,IAAI;AAAA,EACnF,GAAErN,EAAE,UAAU,YAAY,SAAS,GAAG;AACrC,QAAIqN,IAAI5N,IAAIA,IAAI,IAAI,GAAGe,IAAI,KAAK,QAAQ6M,CAAC;AACzC,QAAI,CAAC7M;AACH,aAAO;AACT,QAAIA,EAAE;AACJ,aAAO,CAACA,EAAE,EAAE;AACd,aAAS,IAAI,GAAG,IAAIA,EAAE,QAAQ,IAAI,IAAI,MAAM,CAAC,GAAG,IAAI,GAAG;AACrD,QAAE,CAAC,IAAIA,EAAE,CAAC,EAAE;AACd,WAAO;AAAA,EACR,GAAER,EAAE,UAAU,gBAAgB,SAAS,GAAG;AACzC,QAAIqN,IAAI5N,IAAIA,IAAI,IAAI,GAAGe,IAAI,KAAK,QAAQ6M,CAAC;AACzC,WAAO7M,IAAIA,EAAE,KAAK,IAAIA,EAAE,SAAS;AAAA,EACrC,GAAKR,EAAE,UAAU,OAAO,SAAS,GAAGqN,GAAG7M,GAAG,GAAG,GAAG,GAAG;AAC/C,QAAIK,IAAIpB,IAAIA,IAAI,IAAI;AACpB,QAAI,CAAC,KAAK,QAAQoB,CAAC;AACjB,aAAO;AACT,QAAImB,IAAI,KAAK,QAAQnB,CAAC,GAAGoB,IAAI,UAAU,QAAQkL,GAAGjL;AAClD,QAAIF,EAAE,IAAI;AACR,cAAQA,EAAE,QAAQ,KAAK,eAAe,GAAGA,EAAE,IAAI,QAAQ,EAAE,GAAGC,GAAC;AAAA,QAC3D,KAAK;AACH,iBAAOD,EAAE,GAAG,KAAKA,EAAE,OAAO,GAAG;AAAA,QAC/B,KAAK;AACH,iBAAOA,EAAE,GAAG,KAAKA,EAAE,SAASqL,CAAC,GAAG;AAAA,QAClC,KAAK;AACH,iBAAOrL,EAAE,GAAG,KAAKA,EAAE,SAASqL,GAAG7M,CAAC,GAAG;AAAA,QACrC,KAAK;AACH,iBAAOwB,EAAE,GAAG,KAAKA,EAAE,SAASqL,GAAG7M,GAAG,CAAC,GAAG;AAAA,QACxC,KAAK;AACH,iBAAOwB,EAAE,GAAG,KAAKA,EAAE,SAASqL,GAAG7M,GAAG,GAAG,CAAC,GAAG;AAAA,QAC3C,KAAK;AACH,iBAAOwB,EAAE,GAAG,KAAKA,EAAE,SAASqL,GAAG7M,GAAG,GAAG,GAAG,CAAC,GAAG;AAAA,MAC/C;AACD,WAAK0B,IAAI,GAAGiL,IAAI,IAAI,MAAMlL,IAAI,CAAC,GAAGC,IAAID,GAAGC;AACvC,QAAAiL,EAAEjL,IAAI,CAAC,IAAI,UAAUA,CAAC;AACxB,MAAAF,EAAE,GAAG,MAAMA,EAAE,SAASmL,CAAC;AAAA,IAC7B,OAAW;AACL,UAAIhL,IAAIH,EAAE,QAAQI;AAClB,WAAKF,IAAI,GAAGA,IAAIC,GAAGD;AACjB,gBAAQF,EAAEE,CAAC,EAAE,QAAQ,KAAK,eAAe,GAAGF,EAAEE,CAAC,EAAE,IAAI,QAAQ,EAAE,GAAGD,GAAC;AAAA,UACjE,KAAK;AACH,YAAAD,EAAEE,CAAC,EAAE,GAAG,KAAKF,EAAEE,CAAC,EAAE,OAAO;AACzB;AAAA,UACF,KAAK;AACH,YAAAF,EAAEE,CAAC,EAAE,GAAG,KAAKF,EAAEE,CAAC,EAAE,SAASmL,CAAC;AAC5B;AAAA,UACF,KAAK;AACH,YAAArL,EAAEE,CAAC,EAAE,GAAG,KAAKF,EAAEE,CAAC,EAAE,SAASmL,GAAG7M,CAAC;AAC/B;AAAA,UACF,KAAK;AACH,YAAAwB,EAAEE,CAAC,EAAE,GAAG,KAAKF,EAAEE,CAAC,EAAE,SAASmL,GAAG7M,GAAG,CAAC;AAClC;AAAA,UACF;AACE,gBAAI,CAAC2M;AACH,mBAAK/K,IAAI,GAAG+K,IAAI,IAAI,MAAMlL,IAAI,CAAC,GAAGG,IAAIH,GAAGG;AACvC,gBAAA+K,EAAE/K,IAAI,CAAC,IAAI,UAAUA,CAAC;AAC1B,YAAAJ,EAAEE,CAAC,EAAE,GAAG,MAAMF,EAAEE,CAAC,EAAE,SAASiL,CAAC;AAAA,QAChC;AAAA,IACJ;AACD,WAAO;AAAA,EACX,GAAKnN,EAAE,UAAU,KAAK,SAAS,GAAGqN,GAAG7M,GAAG;AACpC,WAAO,EAAE,MAAM,GAAG6M,GAAG7M,GAAG,EAAE;AAAA,EAC9B,GAAKR,EAAE,UAAU,OAAO,SAAS,GAAGqN,GAAG7M,GAAG;AACtC,WAAO,EAAE,MAAM,GAAG6M,GAAG7M,GAAG,EAAE;AAAA,EAC9B,GAAKR,EAAE,UAAU,iBAAiB,SAAS,GAAGqN,GAAG7M,GAAG,GAAG;AACnD,QAAI,IAAIf,IAAIA,IAAI,IAAI;AACpB,QAAI,CAAC,KAAK,QAAQ,CAAC;AACjB,aAAO;AACT,QAAI,CAAC4N;AACH,aAAOlN,EAAE,MAAM,CAAC,GAAG;AACrB,QAAI,IAAI,KAAK,QAAQ,CAAC;AACtB,QAAI,EAAE;AACJ,QAAE,OAAOkN,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC7M,KAAK,EAAE,YAAYA,MAAML,EAAE,MAAM,CAAC;AAAA,SACjE;AACH,eAASU,IAAI,GAAGmB,IAAI,CAAE,GAAEC,IAAI,EAAE,QAAQpB,IAAIoB,GAAGpB;AAC3C,SAAC,EAAEA,CAAC,EAAE,OAAOwM,KAAK,KAAK,CAAC,EAAExM,CAAC,EAAE,QAAQL,KAAK,EAAEK,CAAC,EAAE,YAAYL,MAAMwB,EAAE,KAAK,EAAEnB,CAAC,CAAC;AAC9E,MAAAmB,EAAE,SAAS,KAAK,QAAQ,CAAC,IAAIA,EAAE,WAAW,IAAIA,EAAE,CAAC,IAAIA,IAAI7B,EAAE,MAAM,CAAC;AAAA,IACnE;AACD,WAAO;AAAA,EACR,GAAEH,EAAE,UAAU,qBAAqB,SAAS,GAAG;AAC9C,QAAIqN;AACJ,WAAO,KAAKA,IAAI5N,IAAIA,IAAI,IAAI,GAAG,KAAK,QAAQ4N,CAAC,KAAKlN,EAAE,MAAMkN,CAAC,MAAM,KAAK,UAAU,IAAI3N,KAAK,KAAK,eAAe,IAAI;AAAA,EACrH,GAAKM,EAAE,UAAU,MAAMA,EAAE,UAAU,gBAAgBA,EAAE,UAAU,cAAcA,EAAE,UAAU,IAAIA,EAAE,WAAWP,GAAGO,EAAE,eAAeA,GAAG,EAAE,UAAUA;AAC7I,GAAGqS,EAAE;AACL,IAAIC,KAAKD,GAAG;AACZ,MAAME,KAAqB,gBAAA5D,GAAG2D,EAAE;AAChC,IAAIE,KAAK,EAAE,SAAS,CAAA;AACpBA,GAAG,UAAUC;AACbD,GAAG,QAAQ,UAAUC;AACrB,SAASA,GAAG,GAAGjT,GAAGC,GAAG;AACnB,EAAAA,IAAIA,KAAK;AACT,MAAIC,IAAIF,KAAKA,EAAE,QAAQO,IAAIL,IAAIF,EAAE,CAAC,IAAIC,IAAI,EAAE,QAAQ,IAAIiT,GAAG,GAAG,GAAG3S,GAAGN,GAAG,EAAE,GAAGU,IAAI;AAChF,MAAI,CAAC,KAAK,EAAE,SAAS,EAAE;AACrB,WAAOA;AACT,MAAIH,GAAGC,GAAGC,GAAG,GAAGM,GAAGC,GAAGC;AACtB,MAAIhB,MAAM,IAAIiT,GAAG,GAAGnT,GAAG,GAAGC,CAAC,IAAI,EAAE,SAAS,KAAKA,GAAG;AAChD,IAAAO,IAAIE,IAAI,EAAE,CAAC,GAAGD,IAAI,IAAI,EAAE,CAAC;AACzB,aAASU,IAAIlB,GAAGkB,IAAIZ,GAAGY,KAAKlB;AAC1B,MAAAe,IAAI,EAAEG,CAAC,GAAGF,IAAI,EAAEE,IAAI,CAAC,GAAGH,IAAIR,MAAMA,IAAIQ,IAAIC,IAAIR,MAAMA,IAAIQ,IAAID,IAAIN,MAAMA,IAAIM,IAAIC,IAAI,MAAM,IAAIA;AAC9F,IAAAC,IAAI,KAAK,IAAIR,IAAIF,GAAG,IAAIC,CAAC,GAAGS,IAAIA,MAAM,IAAI,QAAQA,IAAI;AAAA,EACvD;AACD,SAAOkS,GAAG,GAAGzS,GAAGV,GAAGO,GAAGC,GAAGS,GAAG,CAAC,GAAGP;AAClC;AACA,SAASuS,GAAG,GAAGlT,GAAGC,GAAGC,GAAGK,GAAG;AACzB,MAAI,GAAGI;AACP,MAAIJ,MAAM8S,GAAG,GAAGrT,GAAGC,GAAGC,CAAC,IAAI;AACzB,SAAK,IAAIF,GAAG,IAAIC,GAAG,KAAKC;AACtB,MAAAS,IAAI2S,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG3S,CAAC;AAAA;AAE7B,SAAK,IAAIV,IAAIC,GAAG,KAAKF,GAAG,KAAKE;AAC3B,MAAAS,IAAI2S,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG3S,CAAC;AAC/B,SAAOA,KAAK4S,GAAG5S,GAAGA,EAAE,IAAI,MAAM6S,GAAG7S,CAAC,GAAGA,IAAIA,EAAE,OAAOA;AACpD;AACA,SAAS8S,GAAG,GAAGzT,GAAG;AAChB,MAAI,CAAC;AACH,WAAO;AACT,EAAAA,MAAMA,IAAI;AACV,MAAIC,IAAI,GAAGC;AACX;AACE,QAAIA,IAAI,IAAI,CAACD,EAAE,YAAYsT,GAAGtT,GAAGA,EAAE,IAAI,KAAKyT,GAAGzT,EAAE,MAAMA,GAAGA,EAAE,IAAI,MAAM,IAAI;AACxE,UAAIuT,GAAGvT,CAAC,GAAGA,IAAID,IAAIC,EAAE,MAAMA,MAAMA,EAAE;AACjC;AACF,MAAAC,IAAI;AAAA,IACL;AACC,MAAAD,IAAIA,EAAE;AAAA,SACHC,KAAKD,MAAMD;AAClB,SAAOA;AACT;AACA,SAASoT,GAAG,GAAGpT,GAAGC,GAAGC,GAAGK,GAAG,GAAGI,GAAG;AAC/B,MAAI,GAAG;AACL,KAACA,KAAK,KAAKgT,GAAG,GAAGzT,GAAGK,GAAG,CAAC;AACxB,aAASC,IAAI,GAAGC,GAAGC,GAAG,EAAE,SAAS,EAAE,QAAQ;AACzC,UAAID,IAAI,EAAE,MAAMC,IAAI,EAAE,MAAM,IAAIkT,GAAG,GAAG1T,GAAGK,GAAG,CAAC,IAAIsT,GAAG,CAAC,GAAG;AACtD,QAAA7T,EAAE,KAAKS,EAAE,IAAIR,IAAI,CAAC,GAAGD,EAAE,KAAK,EAAE,IAAIC,IAAI,CAAC,GAAGD,EAAE,KAAKU,EAAE,IAAIT,IAAI,CAAC,GAAGuT,GAAG,CAAC,GAAG,IAAI9S,EAAE,MAAMF,IAAIE,EAAE;AACxF;AAAA,MACD;AACD,UAAI,IAAIA,GAAG,MAAMF,GAAG;AAClB,QAAAG,IAAIA,MAAM,KAAK,IAAImT,GAAGL,GAAG,CAAC,GAAGzT,GAAGC,CAAC,GAAGmT,GAAG,GAAGpT,GAAGC,GAAGC,GAAGK,GAAG,GAAG,CAAC,KAAKI,MAAM,KAAKoT,GAAG,GAAG/T,GAAGC,GAAGC,GAAGK,GAAG,CAAC,IAAI6S,GAAGK,GAAG,CAAC,GAAGzT,GAAGC,GAAGC,GAAGK,GAAG,GAAG,CAAC;AAC3H;AAAA,MACD;AAAA,IACF;AAAA,EACF;AACH;AACA,SAASsT,GAAG,GAAG;AACb,MAAI7T,IAAI,EAAE,MAAMC,IAAI,GAAGC,IAAI,EAAE;AAC7B,MAAIwT,GAAG1T,GAAGC,GAAGC,CAAC,KAAK;AACjB,WAAO;AACT,WAASK,IAAIP,EAAE,GAAG,IAAIC,EAAE,GAAGU,IAAIT,EAAE,GAAGM,IAAIR,EAAE,GAAGS,IAAIR,EAAE,GAAGS,IAAIR,EAAE,GAAG,IAAIK,IAAI,IAAIA,IAAII,IAAIJ,IAAII,IAAI,IAAIA,IAAI,IAAIA,GAAGK,IAAIR,IAAIC,IAAID,IAAIE,IAAIF,IAAIE,IAAID,IAAIC,IAAID,IAAIC,GAAGO,IAAIV,IAAI,IAAIA,IAAII,IAAIJ,IAAII,IAAI,IAAIA,IAAI,IAAIA,GAAGO,IAAIV,IAAIC,IAAID,IAAIE,IAAIF,IAAIE,IAAID,IAAIC,IAAID,IAAIC,GAAGS,IAAIjB,EAAE,MAAMiB,MAAMnB,KAAK;AAChQ,QAAImB,EAAE,KAAK,KAAKA,EAAE,KAAKF,KAAKE,EAAE,KAAKH,KAAKG,EAAE,KAAKD,KAAK8S,GAAGzT,GAAGC,GAAG,GAAGC,GAAGE,GAAGD,GAAGS,EAAE,GAAGA,EAAE,CAAC,KAAKuS,GAAGvS,EAAE,MAAMA,GAAGA,EAAE,IAAI,KAAK;AAC7G,aAAO;AACT,IAAAA,IAAIA,EAAE;AAAA,EACP;AACD,SAAO;AACT;AACA,SAASyS,GAAG,GAAG5T,GAAGC,GAAGC,GAAG;AACtB,MAAIK,IAAI,EAAE,MAAM,IAAI,GAAGI,IAAI,EAAE;AAC7B,MAAI+S,GAAGnT,GAAG,GAAGI,CAAC,KAAK;AACjB,WAAO;AACT,WAASH,IAAID,EAAE,GAAGE,IAAI,EAAE,GAAGC,IAAIC,EAAE,GAAG,IAAIJ,EAAE,GAAGS,IAAI,EAAE,GAAGC,IAAIN,EAAE,GAAGO,IAAIV,IAAIC,IAAID,IAAIE,IAAIF,IAAIE,IAAID,IAAIC,IAAID,IAAIC,GAAGS,IAAI,IAAIH,IAAI,IAAIC,IAAI,IAAIA,IAAID,IAAIC,IAAID,IAAIC,GAAGI,IAAIb,IAAIC,IAAID,IAAIE,IAAIF,IAAIE,IAAID,IAAIC,IAAID,IAAIC,GAAG8B,IAAI,IAAIxB,IAAI,IAAIC,IAAI,IAAIA,IAAID,IAAIC,IAAID,IAAIC,GAAGwB,IAAIwR,GAAG/S,GAAGC,GAAGnB,GAAGC,GAAGC,CAAC,GAAG,IAAI+T,GAAG5S,GAAGmB,GAAGxC,GAAGC,GAAGC,CAAC,GAAGwC,IAAI,EAAE,OAAOC,IAAI,EAAE,OAAOD,KAAKA,EAAE,KAAKD,KAAKE,KAAKA,EAAE,KAAK,KAAK;AACnV,QAAID,EAAE,KAAKxB,KAAKwB,EAAE,KAAKrB,KAAKqB,EAAE,KAAKvB,KAAKuB,EAAE,KAAKF,KAAKE,MAAMnC,KAAKmC,MAAM/B,KAAKqT,GAAGxT,GAAG,GAAGC,GAAGO,GAAGN,GAAGO,GAAGyB,EAAE,GAAGA,EAAE,CAAC,KAAKgR,GAAGhR,EAAE,MAAMA,GAAGA,EAAE,IAAI,KAAK,MAAMA,IAAIA,EAAE,OAAOC,EAAE,KAAKzB,KAAKyB,EAAE,KAAKtB,KAAKsB,EAAE,KAAKxB,KAAKwB,EAAE,KAAKH,KAAKG,MAAMpC,KAAKoC,MAAMhC,KAAKqT,GAAGxT,GAAG,GAAGC,GAAGO,GAAGN,GAAGO,GAAG0B,EAAE,GAAGA,EAAE,CAAC,KAAK+Q,GAAG/Q,EAAE,MAAMA,GAAGA,EAAE,IAAI,KAAK;AACvR,aAAO;AACT,IAAAA,IAAIA,EAAE;AAAA,EACP;AACD,SAAOD,KAAKA,EAAE,KAAKD,KAAK;AACtB,QAAIC,EAAE,KAAKxB,KAAKwB,EAAE,KAAKrB,KAAKqB,EAAE,KAAKvB,KAAKuB,EAAE,KAAKF,KAAKE,MAAMnC,KAAKmC,MAAM/B,KAAKqT,GAAGxT,GAAG,GAAGC,GAAGO,GAAGN,GAAGO,GAAGyB,EAAE,GAAGA,EAAE,CAAC,KAAKgR,GAAGhR,EAAE,MAAMA,GAAGA,EAAE,IAAI,KAAK;AACnI,aAAO;AACT,IAAAA,IAAIA,EAAE;AAAA,EACP;AACD,SAAOC,KAAKA,EAAE,KAAK,KAAK;AACtB,QAAIA,EAAE,KAAKzB,KAAKyB,EAAE,KAAKtB,KAAKsB,EAAE,KAAKxB,KAAKwB,EAAE,KAAKH,KAAKG,MAAMpC,KAAKoC,MAAMhC,KAAKqT,GAAGxT,GAAG,GAAGC,GAAGO,GAAGN,GAAGO,GAAG0B,EAAE,GAAGA,EAAE,CAAC,KAAK+Q,GAAG/Q,EAAE,MAAMA,GAAGA,EAAE,IAAI,KAAK;AACnI,aAAO;AACT,IAAAA,IAAIA,EAAE;AAAA,EACP;AACD,SAAO;AACT;AACA,SAASmR,GAAG,GAAG9T,GAAGC,GAAG;AACnB,MAAIC,IAAI;AACR,KAAG;AACD,QAAIK,IAAIL,EAAE,MAAM,IAAIA,EAAE,KAAK;AAC3B,KAACqT,GAAGhT,GAAG,CAAC,KAAK2T,GAAG3T,GAAGL,GAAGA,EAAE,MAAM,CAAC,KAAKiU,GAAG5T,GAAG,CAAC,KAAK4T,GAAG,GAAG5T,CAAC,MAAMP,EAAE,KAAKO,EAAE,IAAIN,IAAI,CAAC,GAAGD,EAAE,KAAKE,EAAE,IAAID,IAAI,CAAC,GAAGD,EAAE,KAAK,EAAE,IAAIC,IAAI,CAAC,GAAGuT,GAAGtT,CAAC,GAAGsT,GAAGtT,EAAE,IAAI,GAAGA,IAAI,IAAI,IAAIA,IAAIA,EAAE;AAAA,EACrK,SAAWA,MAAM;AACf,SAAOuT,GAAGvT,CAAC;AACb;AACA,SAAS6T,GAAG,GAAG/T,GAAGC,GAAGC,GAAGK,GAAG,GAAG;AAC5B,MAAII,IAAI;AACR,KAAG;AACD,aAASH,IAAIG,EAAE,KAAK,MAAMH,MAAMG,EAAE,QAAQ;AACxC,UAAIA,EAAE,MAAMH,EAAE,KAAK4T,GAAGzT,GAAGH,CAAC,GAAG;AAC3B,YAAIC,IAAI4T,GAAG1T,GAAGH,CAAC;AACf,QAAAG,IAAI8S,GAAG9S,GAAGA,EAAE,IAAI,GAAGF,IAAIgT,GAAGhT,GAAGA,EAAE,IAAI,GAAG2S,GAAGzS,GAAGX,GAAGC,GAAGC,GAAGK,GAAG,GAAG,CAAC,GAAG6S,GAAG3S,GAAGT,GAAGC,GAAGC,GAAGK,GAAG,GAAG,CAAC;AACrF;AAAA,MACD;AACD,MAAAC,IAAIA,EAAE;AAAA,IACP;AACD,IAAAG,IAAIA,EAAE;AAAA,EACV,SAAWA,MAAM;AACjB;AACA,SAASwS,GAAG,GAAGnT,GAAGC,GAAGC,GAAG;AACtB,MAAIK,IAAI,CAAA,GAAI,GAAGI,GAAGH,GAAGC,GAAGC;AACxB,OAAK,IAAI,GAAGC,IAAIX,EAAE,QAAQ,IAAIW,GAAG;AAC/B,IAAAH,IAAIR,EAAE,CAAC,IAAIE,GAAGO,IAAI,IAAIE,IAAI,IAAIX,EAAE,IAAI,CAAC,IAAIE,IAAI,EAAE,QAAQQ,IAAIwS,GAAG,GAAG1S,GAAGC,GAAGP,GAAG,EAAE,GAAGQ,MAAMA,EAAE,SAASA,EAAE,UAAU,KAAKH,EAAE,KAAK+T,GAAG5T,CAAC,CAAC;AAC/H,OAAKH,EAAE,KAAKgU,EAAE,GAAG,IAAI,GAAG,IAAIhU,EAAE,QAAQ;AACpC,IAAAN,IAAIuU,GAAGjU,EAAE,CAAC,GAAGN,CAAC;AAChB,SAAOA;AACT;AACA,SAASsU,GAAG,GAAGvU,GAAG;AAChB,SAAO,EAAE,IAAIA,EAAE;AACjB;AACA,SAASwU,GAAG,GAAGxU,GAAG;AAChB,MAAIC,IAAIwU,GAAG,GAAGzU,CAAC;AACf,MAAI,CAACC;AACH,WAAOD;AACT,MAAIE,IAAImU,GAAGpU,GAAG,CAAC;AACf,SAAOwT,GAAGvT,GAAGA,EAAE,IAAI,GAAGuT,GAAGxT,GAAGA,EAAE,IAAI;AACpC;AACA,SAASwU,GAAG,GAAGzU,GAAG;AAChB,MAAIC,IAAID,GAAGE,IAAI,EAAE,GAAGK,IAAI,EAAE,GAAG,IAAI,KAAK,GAAGI;AACzC,KAAG;AACD,QAAIJ,KAAKN,EAAE,KAAKM,KAAKN,EAAE,KAAK,KAAKA,EAAE,KAAK,MAAMA,EAAE,GAAG;AACjD,UAAIO,IAAIP,EAAE,KAAKM,IAAIN,EAAE,MAAMA,EAAE,KAAK,IAAIA,EAAE,MAAMA,EAAE,KAAK,IAAIA,EAAE;AAC3D,UAAIO,KAAKN,KAAKM,IAAI,MAAM,IAAIA,GAAGG,IAAIV,EAAE,IAAIA,EAAE,KAAK,IAAIA,IAAIA,EAAE,MAAMO,MAAMN;AACpE,eAAOS;AAAA,IACV;AACD,IAAAV,IAAIA,EAAE;AAAA,EACV,SAAWA,MAAMD;AACf,MAAI,CAACW;AACH,WAAO;AACT,MAAIF,IAAIE,GAAGD,IAAIC,EAAE,GAAG,IAAIA,EAAE,GAAGK,IAAI,IAAI,GAAGC;AACxC,EAAAhB,IAAIU;AACJ;AACE,IAAAT,KAAKD,EAAE,KAAKA,EAAE,KAAKS,KAAKR,MAAMD,EAAE,KAAK+T,GAAGzT,IAAI,IAAIL,IAAI,GAAGK,GAAGG,GAAG,GAAGH,IAAI,IAAI,IAAIL,GAAGK,GAAGN,EAAE,GAAGA,EAAE,CAAC,MAAMgB,IAAI,KAAK,IAAIV,IAAIN,EAAE,CAAC,KAAKC,IAAID,EAAE,IAAIkU,GAAGlU,GAAG,CAAC,MAAMgB,IAAID,KAAKC,MAAMD,MAAMf,EAAE,IAAIU,EAAE,KAAKV,EAAE,MAAMU,EAAE,KAAK+T,GAAG/T,GAAGV,CAAC,QAAQU,IAAIV,GAAGe,IAAIC,KAAKhB,IAAIA,EAAE;AAAA,SACjOA,MAAMQ;AACb,SAAOE;AACT;AACA,SAAS+T,GAAG,GAAG1U,GAAG;AAChB,SAAO0T,GAAG,EAAE,MAAM,GAAG1T,EAAE,IAAI,IAAI,KAAK0T,GAAG1T,EAAE,MAAM,GAAG,EAAE,IAAI,IAAI;AAC9D;AACA,SAAS2T,GAAG,GAAG3T,GAAGC,GAAGC,GAAG;AACtB,MAAIK,IAAI;AACR;AACE,IAAAA,EAAE,MAAM,MAAMA,EAAE,IAAI0T,GAAG1T,EAAE,GAAGA,EAAE,GAAGP,GAAGC,GAAGC,CAAC,IAAIK,EAAE,QAAQA,EAAE,MAAMA,EAAE,QAAQA,EAAE,MAAMA,IAAIA,EAAE;AAAA,SACjFA,MAAM;AACb,EAAAA,EAAE,MAAM,QAAQ,MAAMA,EAAE,QAAQ,MAAMoU,GAAGpU,CAAC;AAC5C;AACA,SAASoU,GAAG,GAAG;AACb,MAAI3U,GAAGC,GAAGC,GAAGK,GAAG,GAAGI,GAAGH,GAAGC,GAAGC,IAAI;AAChC,KAAG;AACD,SAAKT,IAAI,GAAG,IAAI,MAAM,IAAI,MAAMU,IAAI,GAAGV,KAAK;AAC1C,WAAKU,KAAKT,IAAID,GAAGO,IAAI,GAAGR,IAAI,GAAGA,IAAIU,MAAMF,KAAKN,IAAIA,EAAE,OAAO,CAAC,CAACA,IAAIF;AAC/D;AACF,WAAKS,IAAIC,GAAGF,IAAI,KAAKC,IAAI,KAAKP;AAC5B,QAAAM,MAAM,MAAMC,MAAM,KAAK,CAACP,KAAKD,EAAE,KAAKC,EAAE,MAAMK,IAAIN,GAAGA,IAAIA,EAAE,OAAOO,QAAQD,IAAIL,GAAGA,IAAIA,EAAE,OAAOO,MAAM,IAAI,EAAE,QAAQF,IAAI,IAAIA,GAAGA,EAAE,QAAQ,GAAG,IAAIA;AAC9I,MAAAN,IAAIC;AAAA,IACL;AACD,MAAE,QAAQ,MAAMQ,KAAK;AAAA,EACzB,SAAWC,IAAI;AACb,SAAO;AACT;AACA,SAASsT,GAAG,GAAGjU,GAAGC,GAAGC,GAAGK,GAAG;AACzB,SAAO,KAAK,IAAIN,KAAKM,IAAI,GAAGP,KAAKA,IAAIE,KAAKK,IAAI,GAAG,KAAK,IAAI,KAAK,KAAK,UAAU,KAAK,IAAI,KAAK,KAAK,WAAW,KAAK,IAAI,KAAK,KAAK,WAAW,KAAK,IAAI,KAAK,KAAK,YAAYP,KAAKA,IAAIA,KAAK,KAAK,UAAUA,KAAKA,IAAIA,KAAK,KAAK,WAAWA,KAAKA,IAAIA,KAAK,KAAK,WAAWA,KAAKA,IAAIA,KAAK,KAAK,YAAY,IAAIA,KAAK;AAC5S;AACA,SAASsU,GAAG,GAAG;AACb,MAAItU,IAAI,GAAGC,IAAI;AACf;AACE,KAACD,EAAE,IAAIC,EAAE,KAAKD,EAAE,MAAMC,EAAE,KAAKD,EAAE,IAAIC,EAAE,OAAOA,IAAID,IAAIA,IAAIA,EAAE;AAAA,SACrDA,MAAM;AACb,SAAOC;AACT;AACA,SAAS+T,GAAG,GAAGhU,GAAGC,GAAGC,GAAGK,GAAG,GAAGI,GAAGH,GAAG;AAClC,UAAQD,IAAII,MAAMX,IAAIQ,OAAO,IAAIG,MAAM,IAAIH,OAAO,IAAIG,MAAMT,IAAIM,OAAOP,IAAIU,MAAMX,IAAIQ,OAAOP,IAAIU,MAAM,IAAIH,OAAOD,IAAII,MAAMT,IAAIM;AACjI;AACA,SAAS4T,GAAG,GAAGpU,GAAG;AAChB,SAAO,EAAE,KAAK,MAAMA,EAAE,KAAK,EAAE,KAAK,MAAMA,EAAE,KAAK,CAAC4U,GAAG,GAAG5U,CAAC;AAAA,GACtDmU,GAAG,GAAGnU,CAAC,KAAKmU,GAAGnU,GAAG,CAAC,KAAK6U,GAAG,GAAG7U,CAAC;AAAA,GAC/B0T,GAAG,EAAE,MAAM,GAAG1T,EAAE,IAAI,KAAK0T,GAAG,GAAG1T,EAAE,MAAMA,CAAC;AAAA,EACzCuT,GAAG,GAAGvT,CAAC,KAAK0T,GAAG,EAAE,MAAM,GAAG,EAAE,IAAI,IAAI,KAAKA,GAAG1T,EAAE,MAAMA,GAAGA,EAAE,IAAI,IAAI;AACnE;AACA,SAAS0T,GAAG,GAAG1T,GAAGC,GAAG;AACnB,UAAQD,EAAE,IAAI,EAAE,MAAMC,EAAE,IAAID,EAAE,MAAMA,EAAE,IAAI,EAAE,MAAMC,EAAE,IAAID,EAAE;AAC5D;AACA,SAASuT,GAAG,GAAGvT,GAAG;AAChB,SAAO,EAAE,MAAMA,EAAE,KAAK,EAAE,MAAMA,EAAE;AAClC;AACA,SAASkU,GAAG,GAAGlU,GAAGC,GAAGC,GAAG;AACtB,MAAIK,IAAIuU,GAAGpB,GAAG,GAAG1T,GAAGC,CAAC,CAAC,GAAG,IAAI6U,GAAGpB,GAAG,GAAG1T,GAAGE,CAAC,CAAC,GAAGS,IAAImU,GAAGpB,GAAGzT,GAAGC,GAAG,CAAC,CAAC,GAAGM,IAAIsU,GAAGpB,GAAGzT,GAAGC,GAAGF,CAAC,CAAC;AACrF,SAAO,CAAC,EAAEO,MAAM,KAAKI,MAAMH,KAAKD,MAAM,KAAKwU,GAAG,GAAG9U,GAAGD,CAAC,KAAK,MAAM,KAAK+U,GAAG,GAAG7U,GAAGF,CAAC,KAAKW,MAAM,KAAKoU,GAAG9U,GAAG,GAAGC,CAAC,KAAKM,MAAM,KAAKuU,GAAG9U,GAAGD,GAAGE,CAAC;AACrI;AACA,SAAS6U,GAAG,GAAG/U,GAAGC,GAAG;AACnB,SAAOD,EAAE,KAAK,KAAK,IAAI,EAAE,GAAGC,EAAE,CAAC,KAAKD,EAAE,KAAK,KAAK,IAAI,EAAE,GAAGC,EAAE,CAAC,KAAKD,EAAE,KAAK,KAAK,IAAI,EAAE,GAAGC,EAAE,CAAC,KAAKD,EAAE,KAAK,KAAK,IAAI,EAAE,GAAGC,EAAE,CAAC;AACxH;AACA,SAAS6U,GAAG,GAAG;AACb,SAAO,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK;AAClC;AACA,SAASF,GAAG,GAAG5U,GAAG;AAChB,MAAIC,IAAI;AACR,KAAG;AACD,QAAIA,EAAE,MAAM,EAAE,KAAKA,EAAE,KAAK,MAAM,EAAE,KAAKA,EAAE,MAAMD,EAAE,KAAKC,EAAE,KAAK,MAAMD,EAAE,KAAKkU,GAAGjU,GAAGA,EAAE,MAAM,GAAGD,CAAC;AAC1F,aAAO;AACT,IAAAC,IAAIA,EAAE;AAAA,EACV,SAAWA,MAAM;AACf,SAAO;AACT;AACA,SAASkU,GAAG,GAAGnU,GAAG;AAChB,SAAO0T,GAAG,EAAE,MAAM,GAAG,EAAE,IAAI,IAAI,IAAIA,GAAG,GAAG1T,GAAG,EAAE,IAAI,KAAK,KAAK0T,GAAG,GAAG,EAAE,MAAM1T,CAAC,KAAK,IAAI0T,GAAG,GAAG1T,GAAG,EAAE,IAAI,IAAI,KAAK0T,GAAG,GAAG,EAAE,MAAM1T,CAAC,IAAI;AACjI;AACA,SAAS6U,GAAG,GAAG7U,GAAG;AAChB,MAAIC,IAAI,GAAGC,IAAI,IAAIK,KAAK,EAAE,IAAIP,EAAE,KAAK,GAAG,KAAK,EAAE,IAAIA,EAAE,KAAK;AAC1D;AACE,IAAAC,EAAE,IAAI,KAAKA,EAAE,KAAK,IAAI,KAAKA,EAAE,KAAK,MAAMA,EAAE,KAAKM,KAAKN,EAAE,KAAK,IAAIA,EAAE,MAAM,IAAIA,EAAE,MAAMA,EAAE,KAAK,IAAIA,EAAE,KAAKA,EAAE,MAAMC,IAAI,CAACA,IAAID,IAAIA,EAAE;AAAA,SACvHA,MAAM;AACb,SAAOC;AACT;AACA,SAASmU,GAAG,GAAGrU,GAAG;AAChB,MAAIC,IAAI,IAAI+U,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG9U,IAAI,IAAI8U,GAAGhV,EAAE,GAAGA,EAAE,GAAGA,EAAE,CAAC,GAAGO,IAAI,EAAE,MAAM,IAAIP,EAAE;AAC5E,SAAO,EAAE,OAAOA,GAAGA,EAAE,OAAO,GAAGC,EAAE,OAAOM,GAAGA,EAAE,OAAON,GAAGC,EAAE,OAAOD,GAAGA,EAAE,OAAOC,GAAG,EAAE,OAAOA,GAAGA,EAAE,OAAO,GAAGA;AACzG;AACA,SAASoT,GAAG,GAAGtT,GAAGC,GAAGC,GAAG;AACtB,MAAIK,IAAI,IAAIyU,GAAG,GAAGhV,GAAGC,CAAC;AACtB,SAAOC,KAAKK,EAAE,OAAOL,EAAE,MAAMK,EAAE,OAAOL,GAAGA,EAAE,KAAK,OAAOK,GAAGL,EAAE,OAAOK,MAAMA,EAAE,OAAOA,GAAGA,EAAE,OAAOA,IAAIA;AACpG;AACA,SAASiT,GAAG,GAAG;AACb,IAAE,KAAK,OAAO,EAAE,MAAM,EAAE,KAAK,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,QAAQ,EAAE;AAClH;AACA,SAASwB,GAAG,GAAGhV,GAAGC,GAAG;AACnB,OAAK,IAAI,GAAG,KAAK,IAAID,GAAG,KAAK,IAAIC,GAAG,KAAK,OAAO,MAAM,KAAK,OAAO,MAAM,KAAK,IAAI,GAAG,KAAK,QAAQ,MAAM,KAAK,QAAQ,MAAM,KAAK,UAAU;AAC3I;AACAgT,GAAG,YAAY,SAAS,GAAGjT,GAAGC,GAAGC,GAAG;AAClC,MAAIK,IAAIP,KAAKA,EAAE,QAAQ,IAAIO,IAAIP,EAAE,CAAC,IAAIC,IAAI,EAAE,QAAQU,IAAI,KAAK,IAAI0S,GAAG,GAAG,GAAG,GAAGpT,CAAC,CAAC;AAC/E,MAAIM;AACF,aAASC,IAAI,GAAGC,IAAIT,EAAE,QAAQQ,IAAIC,GAAGD,KAAK;AACxC,UAAIE,IAAIV,EAAEQ,CAAC,IAAIP,GAAG,IAAIO,IAAIC,IAAI,IAAIT,EAAEQ,IAAI,CAAC,IAAIP,IAAI,EAAE;AACnD,MAAAU,KAAK,KAAK,IAAI0S,GAAG,GAAG3S,GAAG,GAAGT,CAAC,CAAC;AAAA,IAC7B;AACH,MAAIe,IAAI;AACR,OAAKR,IAAI,GAAGA,IAAIN,EAAE,QAAQM,KAAK,GAAG;AAChC,QAAIS,IAAIf,EAAEM,CAAC,IAAIP,GAAGiB,IAAIhB,EAAEM,IAAI,CAAC,IAAIP,GAAGkB,IAAIjB,EAAEM,IAAI,CAAC,IAAIP;AACnD,IAAAe,KAAK,KAAK;AAAA,OACP,EAAEC,CAAC,IAAI,EAAEE,CAAC,MAAM,EAAED,IAAI,CAAC,IAAI,EAAED,IAAI,CAAC,MAAM,EAAEA,CAAC,IAAI,EAAEC,CAAC,MAAM,EAAEC,IAAI,CAAC,IAAI,EAAEF,IAAI,CAAC;AAAA,IACjF;AAAA,EACG;AACD,SAAON,MAAM,KAAKK,MAAM,IAAI,IAAI,KAAK,KAAKA,IAAIL,KAAKA,CAAC;AACtD;AACA,SAAS0S,GAAG,GAAGrT,GAAGC,GAAGC,GAAG;AACtB,WAASK,IAAI,GAAG,IAAIP,GAAGW,IAAIV,IAAIC,GAAG,IAAID,GAAG,KAAKC;AAC5C,IAAAK,MAAM,EAAEI,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,EAAEA,IAAI,CAAC,IAAIA,IAAI;AAClD,SAAOJ;AACT;AACA0S,GAAG,UAAU,SAAS,GAAG;AACvB,WAASjT,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,QAAQC,IAAI,EAAE,UAAU,CAAE,GAAE,OAAO,IAAI,YAAYD,EAAC,GAAIE,IAAI,GAAGK,IAAI,GAAGA,IAAI,EAAE,QAAQA,KAAK;AAC5G,aAAS,IAAI,GAAG,IAAI,EAAEA,CAAC,EAAE,QAAQ;AAC/B,eAASI,IAAI,GAAGA,IAAIX,GAAGW;AACrB,QAAAV,EAAE,SAAS,KAAK,EAAEM,CAAC,EAAE,CAAC,EAAEI,CAAC,CAAC;AAC9B,IAAAJ,IAAI,MAAML,KAAK,EAAEK,IAAI,CAAC,EAAE,QAAQN,EAAE,MAAM,KAAKC,CAAC;AAAA,EAC/C;AACD,SAAOD;AACT;AACA,IAAIgV,KAAKjC,GAAG;AACZ,MAAMkC,KAAqB,gBAAA/F,GAAG8F,EAAE;AAChC,IAAIE,KAAK,EAAE,SAAS,CAAA;AACpB;AACAA,GAAG;AAAA,CACF,SAAS,GAAGnV,GAAG;AACd,GAAC,SAASC,GAAG;AACX,QAAIC,IAAIF,KAAK,CAACA,EAAE,YAAYA,GAAGO,IAAI,KAAK,CAAC,EAAE,YAAY,GAAG,IAAI,OAAO2O,MAAM,YAAYA;AACvF,KAAC,EAAE,WAAW,KAAK,EAAE,WAAW,KAAK,EAAE,SAAS,OAAOjP,IAAI;AAC3D,QAAIU,GAAGH,IAAI,YAAYC,IAAI,IAAIC,IAAI,GAAG,IAAI,IAAIM,IAAI,IAAIC,IAAI,KAAKC,IAAI,IAAIC,IAAI,KAAKE,IAAI,KAAKmB,IAAI,SAASC,IAAI,gBAAgB,IAAI,6BAA6BC,IAAI;AAAA,MAC7J,UAAU;AAAA,MACV,aAAa;AAAA,MACb,iBAAiB;AAAA,IAClB,GAAEC,IAAIlC,IAAIC,GAAGkC,IAAI,KAAK,OAAO,IAAI,OAAO,cAAcC;AACvD,aAASZ,EAAE,GAAG;AACZ,YAAM,IAAI,WAAWS,EAAE,CAAC,CAAC;AAAA,IAC1B;AACD,aAASR,EAAE,GAAGwH,GAAG;AACf,eAASC,IAAI,EAAE,QAAQC,IAAK,CAAE,GAAED;AAC9B,QAAAC,EAAGD,CAAC,IAAID,EAAE,EAAEC,CAAC,CAAC;AAChB,aAAOC;AAAA,IACR;AACD,aAASzH,EAAE,GAAGuH,GAAG;AACf,UAAIC,IAAI,EAAE,MAAM,GAAG,GAAGC,IAAK;AAC3B,MAAAD,EAAE,SAAS,MAAMC,IAAKD,EAAE,CAAC,IAAI,KAAK,IAAIA,EAAE,CAAC,IAAI,IAAI,EAAE,QAAQ,GAAG,GAAG;AACjE,UAAIE,IAAK,EAAE,MAAM,GAAG,GAAGC,KAAK5H,EAAE2H,GAAIH,CAAC,EAAE,KAAK,GAAG;AAC7C,aAAOE,IAAKE;AAAA,IACb;AACD,aAAS1H,EAAE,GAAG;AACZ,eAASsH,IAAI,IAAIC,IAAI,GAAGC,IAAK,EAAE,QAAQC,GAAIC,IAAIH,IAAIC;AACjD,QAAAC,IAAK,EAAE,WAAWF,GAAG,GAAGE,KAAM,SAASA,KAAM,SAASF,IAAIC,KAAME,KAAK,EAAE,WAAWH,GAAG,IAAIG,KAAK,UAAU,QAAQJ,EAAE,OAAOG,IAAK,SAAS,OAAOC,KAAK,QAAQ,KAAK,KAAKJ,EAAE,KAAKG,CAAE,GAAGF,QAAQD,EAAE,KAAKG,CAAE;AACpM,aAAOH;AAAA,IACR;AACD,aAASrH,EAAE,GAAG;AACZ,aAAOH,EAAE,GAAG,SAASwH,GAAG;AACtB,YAAIC,IAAI;AACR,eAAOD,IAAI,UAAUA,KAAK,OAAOC,KAAK,EAAED,MAAM,KAAK,OAAO,KAAK,GAAGA,IAAI,QAAQA,IAAI,OAAOC,KAAK,EAAED,CAAC,GAAGC;AAAA,MAC5G,CAAO,EAAE,KAAK,EAAE;AAAA,IACX;AACD,aAASrH,EAAE,GAAG;AACZ,aAAO,IAAI,KAAK,KAAK,IAAI,KAAK,IAAI,KAAK,KAAK,IAAI,KAAK,IAAI,KAAK,KAAK,IAAI,KAAK7B;AAAA,IAC7E;AACD,aAAS8B,EAAE,GAAGmH,GAAG;AACf,aAAO,IAAI,KAAK,MAAM,IAAI,QAAQA,KAAK,MAAM;AAAA,IAC9C;AACD,aAASL,EAAE,GAAGK,GAAGC,GAAG;AAClB,UAAIC,IAAK;AACT,WAAK,IAAID,IAAI/G,EAAE,IAAI3B,CAAC,IAAI,KAAK,GAAG,KAAK2B,EAAE,IAAI8G,CAAC,GAAG,IAAI/G,IAAI,KAAK,GAAGiH,KAAMnJ;AACnE,YAAImC,EAAE,IAAID,CAAC;AACb,aAAOC,EAAEgH,KAAMjH,IAAI,KAAK,KAAK,IAAI3B,EAAE;AAAA,IACpC;AACD,aAASsI,EAAE,GAAG;AACZ,UAAII,IAAI,IAAIC,IAAI,EAAE,QAAQC,GAAIC,IAAK,GAAGC,KAAK3I,GAAG4I,IAAI7I,GAAG8I,IAAIC,IAAIC,IAAIC,IAAGC,IAAIC,IAAIC,IAAIC,GAAIC;AACpF,WAAKR,KAAK,EAAE,YAAY3I,CAAC,GAAG2I,KAAK,MAAMA,KAAK,IAAIC,KAAK,GAAGA,KAAKD,IAAI,EAAEC;AACjE,UAAE,WAAWA,EAAE,KAAK,OAAOhI,EAAE,WAAW,GAAGyH,EAAE,KAAK,EAAE,WAAWO,EAAE,CAAC;AACpE,WAAKC,KAAKF,KAAK,IAAIA,KAAK,IAAI,GAAGE,KAAKP,KAAK;AACvC,aAAKQ,KAAIN,GAAIO,KAAK,GAAGC,KAAK5J,GAAGyJ,MAAMP,KAAK1H,EAAE,eAAe,GAAGqI,KAAKhI,EAAE,EAAE,WAAW4H,IAAI,CAAC,IAAII,MAAM7J,KAAK6J,KAAK1H,GAAGpC,IAAIqJ,KAAMO,EAAE,MAAMnI,EAAE,UAAU,GAAG4H,KAAMS,KAAKF,IAAIG,IAAKF,MAAMN,IAAIrJ,IAAI2J,MAAMN,IAAI,IAAI,IAAIM,KAAKN,GAAG,EAAEO,KAAKC,IAAKF,MAAM5J;AACzN,UAAA+J,IAAI/J,IAAI8J,GAAIH,KAAKxH,EAAEpC,IAAIgK,CAAC,KAAKvI,EAAE,UAAU,GAAGmI,MAAMI;AACpD,QAAAZ,IAAKF,EAAE,SAAS,GAAGK,IAAIV,EAAEQ,IAAKM,IAAGP,GAAIO,MAAK,CAAC,GAAGvH,EAAEiH,IAAKD,CAAE,IAAIpJ,IAAIsJ,MAAM7H,EAAE,UAAU,GAAG6H,MAAMlH,EAAEiH,IAAKD,CAAE,GAAGC,KAAMD,GAAIF,EAAE,OAAOG,KAAM,GAAGC,EAAE;AAAA,MACrI;AACD,aAAOzH,EAAEqH,CAAC;AAAA,IACX;AACD,aAASH,EAAE,GAAG;AACZ,UAAIG,GAAGC,GAAGC,GAAIC,GAAIC,IAAIC,GAAGC,IAAIC,IAAIC,IAAIC,IAAGC,IAAIC,KAAK,CAAA,GAAIC,IAAIC,GAAIC,GAAGC;AAChE,WAAK,IAAIrI,EAAE,CAAC,GAAGkI,KAAK,EAAE,QAAQZ,IAAIvI,GAAGwI,IAAI,GAAGG,KAAK5I,GAAG6I,IAAI,GAAGA,IAAIO,IAAI,EAAEP;AACnE,QAAAK,KAAK,EAAEL,CAAC,GAAGK,KAAK,OAAOC,GAAG,KAAK,EAAED,EAAE,CAAC;AACtC,WAAKR,IAAKC,IAAKQ,GAAG,QAAQR,KAAMQ,GAAG,KAAKhJ,CAAC,GAAGuI,IAAKU,MAAM;AACrD,aAAKN,KAAKxJ,GAAGuJ,IAAI,GAAGA,IAAIO,IAAI,EAAEP;AAC5B,UAAAK,KAAK,EAAEL,CAAC,GAAGK,MAAMV,KAAKU,KAAKJ,OAAOA,KAAKI;AACzC,aAAKG,IAAKX,IAAK,GAAGI,KAAKN,IAAI9G,GAAGpC,IAAImJ,KAAKY,CAAE,KAAKtI,EAAE,UAAU,GAAG0H,MAAMK,KAAKN,KAAKa,GAAIb,IAAIM,IAAID,IAAI,GAAGA,IAAIO,IAAI,EAAEP;AACxG,cAAIK,KAAK,EAAEL,CAAC,GAAGK,KAAKV,KAAK,EAAEC,IAAInJ,KAAKyB,EAAE,UAAU,GAAGmI,MAAMV,GAAG;AAC1D,iBAAKO,KAAKN,GAAGO,KAAKzJ,GAAG0J,KAAID,MAAMJ,KAAKpJ,IAAIwJ,MAAMJ,KAAK,IAAI,IAAII,KAAKJ,IAAI,EAAEG,KAAKE,KAAID,MAAMzJ;AACnF,cAAAgK,IAAIR,KAAKE,IAAGK,IAAI/J,IAAI0J,IAAGE,GAAG;AAAA,gBACxB,EAAE9H,EAAE4H,KAAIM,IAAID,GAAG,CAAC,CAAC;AAAA,cAClB,GAAEP,KAAKrH,EAAE6H,IAAID,CAAC;AACjB,YAAAH,GAAG,KAAK,EAAE9H,EAAE0H,IAAI,CAAC,CAAC,CAAC,GAAGH,KAAKT,EAAEM,GAAGY,GAAIX,KAAMC,CAAE,GAAGF,IAAI,GAAG,EAAEC;AAAA,UACzD;AACH,UAAED,GAAG,EAAED;AAAA,MACR;AACD,aAAOW,GAAG,KAAK,EAAE;AAAA,IAClB;AACD,aAASb,GAAE,GAAG;AACZ,aAAOrH,EAAE,GAAG,SAASuH,GAAG;AACtB,eAAOlH,EAAE,KAAKkH,CAAC,IAAIJ,EAAEI,EAAE,MAAM,CAAC,EAAE,YAAa,CAAA,IAAIA;AAAA,MACzD,CAAO;AAAA,IACF;AACD,aAASD,EAAE,GAAG;AACZ,aAAOtH,EAAE,GAAG,SAASuH,GAAG;AACtB,eAAOjH,EAAE,KAAKiH,CAAC,IAAI,SAASH,EAAEG,CAAC,IAAIA;AAAA,MAC3C,CAAO;AAAA,IACF;AACD,QAAI/I,IAAI;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAMN,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAQT,MAAM;AAAA,QACJ,QAAQyB;AAAA,QACR,QAAQC;AAAA,MACT;AAAA,MACD,QAAQiH;AAAA,MACR,QAAQC;AAAA,MACR,SAASE;AAAA,MACT,WAAWD;AAAA,IACZ,GAAEtJ,KAAKK;AACN,UAAI,EAAE,WAAWL;AACf,QAAAK,EAAE,UAAUI;AAAA;AAEZ,aAAKkC,KAAKlC;AACR,UAAAA,EAAE,eAAekC,CAAC,MAAM3C,EAAE2C,CAAC,IAAIlC,EAAEkC,CAAC;AAAA;AAEtC,MAAA5C,EAAE,WAAWU;AAAA,EAChB,GAAEuO,EAAE;AACP,GAAGiG,IAAIA,GAAG,OAAO;AACjB,IAAIC,KAAKD,GAAG,SAASE,KAAK,WAAW;AACnC,MAAI,OAAO,UAAU,cAAc,OAAO,OAAO,yBAAyB;AACxE,WAAO;AACT,MAAI,OAAO,OAAO,YAAY;AAC5B,WAAO;AACT,MAAIrV,IAAI,IAAI,IAAI,OAAO,MAAM,GAAGE,IAAI,OAAO,CAAC;AAC5C,MAAI,OAAO,KAAK,YAAY,OAAO,UAAU,SAAS,KAAK,CAAC,MAAM,qBAAqB,OAAO,UAAU,SAAS,KAAKA,CAAC,MAAM;AAC3H,WAAO;AACT,MAAI,IAAI;AACR,EAAAF,EAAE,CAAC,IAAI;AACP,OAAK,KAAKA;AACR,WAAO;AACT,MAAI,OAAO,OAAO,QAAQ,cAAc,OAAO,KAAKA,CAAC,EAAE,WAAW,KAAK,OAAO,OAAO,uBAAuB,cAAc,OAAO,oBAAoBA,CAAC,EAAE,WAAW;AACjK,WAAO;AACT,MAAIsV,IAAI,OAAO,sBAAsBtV,CAAC;AACtC,MAAIsV,EAAE,WAAW,KAAKA,EAAE,CAAC,MAAM,KAAK,CAAC,OAAO,UAAU,qBAAqB,KAAKtV,GAAG,CAAC;AAClF,WAAO;AACT,MAAI,OAAO,OAAO,4BAA4B,YAAY;AACxD,QAAIW,IAAI,OAAO,yBAAyBX,GAAG,CAAC;AAC5C,QAAIW,EAAE,UAAU,KAAKA,EAAE,eAAe;AACpC,aAAO;AAAA,EACV;AACD,SAAO;AACT,GAAG4U,KAAK,OAAO,SAAS,OAAO,QAAQC,KAAKH,IAAII,KAAK,WAAW;AAC9D,SAAO,OAAOF,MAAM,cAAc,OAAO,UAAU,cAAc,OAAOA,GAAG,KAAK,KAAK,YAAY,OAAO,OAAO,KAAK,KAAK,WAAW,KAAKC;AAC3I,GAAGE,KAAK;AAAA,EACN,KAAK,CAAE;AACT,GAAGC,KAAK,QAAQC,KAAK,WAAW;AAC9B,SAAO,EAAE,WAAWF,GAAI,EAAC,QAAQA,GAAG,OAAO,EAAE,EAAE,WAAW,KAAM,aAAYC;AAC9E,GAAGE,KAAK,mDAAmDC,KAAK,OAAO,UAAU,UAAUC,KAAK,KAAK,KAAKC,KAAK,qBAAqBC,KAAK,SAASjW,GAAG,GAAG;AACtJ,WAASE,IAAI,CAAE,GAAE,IAAI,GAAG,IAAIF,EAAE,QAAQ,KAAK;AACzC,IAAAE,EAAE,CAAC,IAAIF,EAAE,CAAC;AACZ,WAASsV,IAAI,GAAGA,IAAI,EAAE,QAAQA,KAAK;AACjC,IAAApV,EAAEoV,IAAItV,EAAE,MAAM,IAAI,EAAEsV,CAAC;AACvB,SAAOpV;AACT,GAAGgW,KAAK,SAASlW,GAAG,GAAG;AACrB,WAASE,IAAI,CAAE,GAAE,IAAI,KAAK,GAAGoV,IAAI,GAAG,IAAItV,EAAE,QAAQ,KAAK,GAAGsV,KAAK;AAC7D,IAAApV,EAAEoV,CAAC,IAAItV,EAAE,CAAC;AACZ,SAAOE;AACT,GAAGiW,KAAK,SAAS,GAAGnW,GAAG;AACrB,WAASC,IAAI,IAAIC,IAAI,GAAGA,IAAI,EAAE,QAAQA,KAAK;AACzC,IAAAD,KAAK,EAAEC,CAAC,GAAGA,IAAI,IAAI,EAAE,WAAWD,KAAKD;AACvC,SAAOC;AACT,GAAGmW,KAAK,SAASpW,GAAG;AAClB,MAAI,IAAI;AACR,MAAI,OAAO,KAAK,cAAc8V,GAAG,MAAM,CAAC,MAAME;AAC5C,UAAM,IAAI,UAAUH,KAAK,CAAC;AAC5B,WAAS3V,IAAIgW,GAAG,WAAW,CAAC,GAAG,GAAGZ,IAAI,WAAW;AAC/C,QAAI,gBAAgB,GAAG;AACrB,UAAIzH,IAAI,EAAE;AAAA,QACR;AAAA,QACAoI,GAAG/V,GAAG,SAAS;AAAA,MACvB;AACM,aAAO,OAAO2N,CAAC,MAAMA,IAAIA,IAAI;AAAA,IAC9B;AACD,WAAO,EAAE;AAAA,MACP7N;AAAA,MACAiW,GAAG/V,GAAG,SAAS;AAAA,IACrB;AAAA,EACA,GAAKS,IAAIoV,GAAG,GAAG,EAAE,SAAS7V,EAAE,MAAM,GAAG,IAAI,CAAE,GAAEO,IAAI,GAAGA,IAAIE,GAAGF;AACvD,MAAEA,CAAC,IAAI,MAAMA;AACf,MAAI,IAAI,SAAS,UAAU,sBAAsB0V,GAAG,GAAG,GAAG,IAAI,2CAA2C,EAAEb,CAAC,GAAG,EAAE,WAAW;AAC1H,QAAI,IAAI,WAAW;AAAA,IACvB;AACI,MAAE,YAAY,EAAE,WAAW,EAAE,YAAY,IAAI,EAAG,GAAE,EAAE,YAAY;AAAA,EACjE;AACD,SAAO;AACT,GAAGe,KAAKD,IAAIE,KAAK,SAAS,UAAU,QAAQD,IAAIE,KAAK,SAAS,UAAU,MAAMC,KAAK,OAAO,UAAU,gBAAgBC,KAAKH,IAAII,KAAKD,GAAG,KAAKF,IAAIC,EAAE,GAAGG,IAAIC,KAAK,aAAaC,KAAK,UAAUC,KAAK,WAAWC,KAAK,SAAS,GAAG;AACvN,MAAI;AACF,WAAOF,GAAG,2BAA2B,IAAI,gBAAgB,EAAC;AAAA,EAC9D,QAAU;AAAA,EACP;AACH,GAAGG,KAAK,OAAO;AACf,IAAIA;AACF,MAAI;AACF,IAAAA,GAAG,CAAA,GAAI,EAAE;AAAA,EACb,QAAU;AACN,IAAAA,KAAK;AAAA,EACN;AACH,IAAIC,KAAK,WAAW;AAClB,QAAM,IAAIH,GAAE;AACd,GAAGI,KAAKF,KAAK,WAAW;AACtB,MAAI;AACF,WAAO,UAAU,QAAQC;AAAA,EAC7B,QAAU;AACN,QAAI;AACF,aAAOD,GAAG,WAAW,QAAQ,EAAE;AAAA,IACrC,QAAY;AACN,aAAOC;AAAA,IACR;AAAA,EACF;AACH,EAAC,IAAKA,IAAIE,KAAK1B,GAAE,GAAI2B,KAAKxB,MAAMyB,KAAK,OAAO,mBAAmBD,KAAK,SAAS,GAAG;AAC9E,SAAO,EAAE;AACX,IAAI,OAAOE,KAAK,CAAA,GAAIC,KAAK,OAAO,aAAa,OAAO,CAACF,KAAKV,KAAKU,GAAG,UAAU,GAAGG,KAAK;AAAA,EAClF,oBAAoB,OAAO,iBAAiB,MAAMb,KAAK;AAAA,EACvD,WAAW;AAAA,EACX,iBAAiB,OAAO,cAAc,MAAMA,KAAK;AAAA,EACjD,4BAA4BQ,MAAME,KAAKA,GAAG,CAAE,EAAC,OAAO,QAAQ,EAAG,CAAA,IAAIV;AAAA,EACnE,oCAAoCA;AAAA,EACpC,mBAAmBW;AAAA,EACnB,oBAAoBA;AAAA,EACpB,4BAA4BA;AAAA,EAC5B,4BAA4BA;AAAA,EAC5B,aAAa,OAAO,UAAU,MAAMX,KAAK;AAAA,EACzC,YAAY,OAAO,SAAS,MAAMA,KAAK;AAAA,EACvC,mBAAmB,OAAO,gBAAgB,MAAMA,KAAK;AAAA,EACrD,oBAAoB,OAAO,iBAAiB,MAAMA,KAAK;AAAA,EACvD,aAAa;AAAA,EACb,cAAc,OAAO,WAAW,MAAMA,KAAK;AAAA,EAC3C,UAAU;AAAA,EACV,eAAe;AAAA,EACf,wBAAwB;AAAA,EACxB,eAAe;AAAA,EACf,wBAAwB;AAAA,EACxB,WAAW;AAAA,EACX,UAAU;AAAA;AAAA,EAEV,eAAe;AAAA,EACf,kBAAkB,OAAO,eAAe,MAAMA,KAAK;AAAA,EACnD,kBAAkB,OAAO,eAAe,MAAMA,KAAK;AAAA,EACnD,0BAA0B,OAAO,uBAAuB,MAAMA,KAAK;AAAA,EACnE,cAAcE;AAAA,EACd,uBAAuBS;AAAA,EACvB,eAAe,OAAO,YAAY,MAAMX,KAAK;AAAA,EAC7C,gBAAgB,OAAO,aAAa,MAAMA,KAAK;AAAA,EAC/C,gBAAgB,OAAO,aAAa,MAAMA,KAAK;AAAA,EAC/C,cAAc;AAAA,EACd,WAAW;AAAA,EACX,uBAAuBQ,MAAME,KAAKA,GAAGA,GAAG,GAAG,OAAO,QAAQ,GAAG,CAAC,IAAIV;AAAA,EAClE,UAAU,OAAO,QAAQ,WAAW,OAAOA;AAAA,EAC3C,SAAS,OAAO,MAAM,MAAMA,KAAK;AAAA,EACjC,0BAA0B,OAAO,MAAM,OAAO,CAACQ,MAAM,CAACE,KAAKV,KAAKU,IAAoB,oBAAI,IAAG,GAAI,OAAO,QAAQ,EAAC,CAAE;AAAA,EACjH,UAAU;AAAA,EACV,YAAY;AAAA,EACZ,YAAY;AAAA,EACZ,gBAAgB;AAAA,EAChB,cAAc;AAAA,EACd,aAAa,OAAO,UAAU,MAAMV,KAAK;AAAA,EACzC,WAAW,OAAO,QAAQ,MAAMA,KAAK;AAAA,EACrC,gBAAgB;AAAA,EAChB,oBAAoB;AAAA,EACpB,aAAa,OAAO,UAAU,MAAMA,KAAK;AAAA,EACzC,YAAY;AAAA,EACZ,SAAS,OAAO,MAAM,MAAMA,KAAK;AAAA,EACjC,0BAA0B,OAAO,MAAM,OAAO,CAACQ,MAAM,CAACE,KAAKV,KAAKU,IAAoB,oBAAI,IAAG,GAAI,OAAO,QAAQ,EAAC,CAAE;AAAA,EACjH,uBAAuB,OAAO,oBAAoB,MAAMV,KAAK;AAAA,EAC7D,YAAY;AAAA,EACZ,6BAA6BQ,MAAME,KAAKA,GAAG,GAAG,OAAO,QAAQ,EAAG,CAAA,IAAIV;AAAA,EACpE,YAAYQ,KAAK,SAASR;AAAA,EAC1B,iBAAiBC;AAAA,EACjB,oBAAoBM;AAAA,EACpB,gBAAgBK;AAAA,EAChB,eAAeT;AAAA,EACf,gBAAgB,OAAO,aAAa,MAAMH,KAAK;AAAA,EAC/C,uBAAuB,OAAO,oBAAoB,MAAMA,KAAK;AAAA,EAC7D,iBAAiB,OAAO,cAAc,MAAMA,KAAK;AAAA,EACjD,iBAAiB,OAAO,cAAc,MAAMA,KAAK;AAAA,EACjD,cAAc;AAAA,EACd,aAAa,OAAO,UAAU,MAAMA,KAAK;AAAA,EACzC,aAAa,OAAO,UAAU,MAAMA,KAAK;AAAA,EACzC,aAAa,OAAO,UAAU,MAAMA,KAAK;AAC3C;AACA,IAAIU;AACF,MAAI;AACF,SAAK;AAAA,EACN,SAAQ,GAAG;AACV,QAAII,KAAKJ,GAAGA,GAAG,CAAC,CAAC;AACjB,IAAAG,GAAG,mBAAmB,IAAIC;AAAA,EAC3B;AACH,IAAIC,KAAK,SAAS,EAAE1X,GAAG;AACrB,MAAIC;AACJ,MAAID,MAAM;AACR,IAAAC,IAAI8W,GAAG,sBAAsB;AAAA,WACtB/W,MAAM;AACb,IAAAC,IAAI8W,GAAG,iBAAiB;AAAA,WACjB/W,MAAM;AACb,IAAAC,IAAI8W,GAAG,uBAAuB;AAAA,WACvB/W,MAAM,oBAAoB;AACjC,QAAIE,IAAI,EAAE,0BAA0B;AACpC,IAAAA,MAAMD,IAAIC,EAAE;AAAA,EAChB,WAAaF,MAAM,4BAA4B;AAC3C,QAAIO,IAAI,EAAE,kBAAkB;AAC5B,IAAAA,KAAK8W,OAAOpX,IAAIoX,GAAG9W,EAAE,SAAS;AAAA,EAC/B;AACD,SAAOiX,GAAGxX,CAAC,IAAIC,GAAGA;AACpB,GAAG0X,KAAK;AAAA,EACN,0BAA0B,CAAC,eAAe,WAAW;AAAA,EACrD,oBAAoB,CAAC,SAAS,WAAW;AAAA,EACzC,wBAAwB,CAAC,SAAS,aAAa,SAAS;AAAA,EACxD,wBAAwB,CAAC,SAAS,aAAa,SAAS;AAAA,EACxD,qBAAqB,CAAC,SAAS,aAAa,MAAM;AAAA,EAClD,uBAAuB,CAAC,SAAS,aAAa,QAAQ;AAAA,EACtD,4BAA4B,CAAC,iBAAiB,WAAW;AAAA,EACzD,oBAAoB,CAAC,0BAA0B,WAAW;AAAA,EAC1D,6BAA6B,CAAC,0BAA0B,aAAa,WAAW;AAAA,EAChF,sBAAsB,CAAC,WAAW,WAAW;AAAA,EAC7C,uBAAuB,CAAC,YAAY,WAAW;AAAA,EAC/C,mBAAmB,CAAC,QAAQ,WAAW;AAAA,EACvC,oBAAoB,CAAC,SAAS,WAAW;AAAA,EACzC,wBAAwB,CAAC,aAAa,WAAW;AAAA,EACjD,2BAA2B,CAAC,gBAAgB,WAAW;AAAA,EACvD,2BAA2B,CAAC,gBAAgB,WAAW;AAAA,EACvD,uBAAuB,CAAC,YAAY,WAAW;AAAA,EAC/C,eAAe,CAAC,qBAAqB,WAAW;AAAA,EAChD,wBAAwB,CAAC,qBAAqB,aAAa,WAAW;AAAA,EACtE,wBAAwB,CAAC,aAAa,WAAW;AAAA,EACjD,yBAAyB,CAAC,cAAc,WAAW;AAAA,EACnD,yBAAyB,CAAC,cAAc,WAAW;AAAA,EACnD,eAAe,CAAC,QAAQ,OAAO;AAAA,EAC/B,mBAAmB,CAAC,QAAQ,WAAW;AAAA,EACvC,kBAAkB,CAAC,OAAO,WAAW;AAAA,EACrC,qBAAqB,CAAC,UAAU,WAAW;AAAA,EAC3C,qBAAqB,CAAC,UAAU,WAAW;AAAA,EAC3C,uBAAuB,CAAC,UAAU,aAAa,UAAU;AAAA,EACzD,sBAAsB,CAAC,UAAU,aAAa,SAAS;AAAA,EACvD,sBAAsB,CAAC,WAAW,WAAW;AAAA,EAC7C,uBAAuB,CAAC,WAAW,aAAa,MAAM;AAAA,EACtD,iBAAiB,CAAC,WAAW,KAAK;AAAA,EAClC,oBAAoB,CAAC,WAAW,QAAQ;AAAA,EACxC,qBAAqB,CAAC,WAAW,SAAS;AAAA,EAC1C,yBAAyB,CAAC,cAAc,WAAW;AAAA,EACnD,6BAA6B,CAAC,kBAAkB,WAAW;AAAA,EAC3D,qBAAqB,CAAC,UAAU,WAAW;AAAA,EAC3C,kBAAkB,CAAC,OAAO,WAAW;AAAA,EACrC,gCAAgC,CAAC,qBAAqB,WAAW;AAAA,EACjE,qBAAqB,CAAC,UAAU,WAAW;AAAA,EAC3C,qBAAqB,CAAC,UAAU,WAAW;AAAA,EAC3C,0BAA0B,CAAC,eAAe,WAAW;AAAA,EACrD,yBAAyB,CAAC,cAAc,WAAW;AAAA,EACnD,wBAAwB,CAAC,aAAa,WAAW;AAAA,EACjD,yBAAyB,CAAC,cAAc,WAAW;AAAA,EACnD,gCAAgC,CAAC,qBAAqB,WAAW;AAAA,EACjE,0BAA0B,CAAC,eAAe,WAAW;AAAA,EACrD,0BAA0B,CAAC,eAAe,WAAW;AAAA,EACrD,uBAAuB,CAAC,YAAY,WAAW;AAAA,EAC/C,sBAAsB,CAAC,WAAW,WAAW;AAAA,EAC7C,sBAAsB,CAAC,WAAW,WAAW;AAC/C,GAAGC,KAAKtB,IAAIuB,KAAKnB,IAAIoB,KAAKF,GAAG,KAAK,SAAS,MAAM,MAAM,UAAU,MAAM,GAAGG,KAAKH,GAAG,KAAK,SAAS,OAAO,MAAM,UAAU,MAAM,GAAGI,KAAKJ,GAAG,KAAK,SAAS,MAAM,OAAO,UAAU,OAAO,GAAGK,KAAKL,GAAG,KAAK,SAAS,MAAM,OAAO,UAAU,KAAK,GAAGM,KAAKN,GAAG,KAAK,SAAS,MAAM,OAAO,UAAU,IAAI,GAAGO,KAAK,sGAAsGC,KAAK,YAAYC,KAAK,SAASrY,GAAG;AAC3a,MAAI,IAAIiY,GAAGjY,GAAG,GAAG,CAAC,GAAGE,IAAI+X,GAAGjY,GAAG,EAAE;AACjC,MAAI,MAAM,OAAOE,MAAM;AACrB,UAAM,IAAI0W,GAAG,gDAAgD;AAC/D,MAAI1W,MAAM,OAAO,MAAM;AACrB,UAAM,IAAI0W,GAAG,gDAAgD;AAC/D,MAAI,IAAI,CAAA;AACR,SAAOoB,GAAGhY,GAAGmY,IAAI,SAAS7C,GAAG3U,GAAG,GAAGF,GAAG;AACpC,MAAE,EAAE,MAAM,IAAI,IAAIuX,GAAGvX,GAAG2X,IAAI,IAAI,IAAIzX,KAAK2U;AAAA,EAC1C,CAAA,GAAG;AACN,GAAGgD,KAAK,SAAStY,GAAG,GAAG;AACrB,MAAIE,IAAIF,GAAG;AACX,MAAI6X,GAAGF,IAAIzX,CAAC,MAAM,IAAIyX,GAAGzX,CAAC,GAAGA,IAAI,MAAM,EAAE,CAAC,IAAI,MAAM2X,GAAGL,IAAItX,CAAC,GAAG;AAC7D,QAAIoV,IAAIkC,GAAGtX,CAAC;AACZ,QAAIoV,MAAMgC,OAAOhC,IAAIoC,GAAGxX,CAAC,IAAI,OAAOoV,IAAI,OAAO,CAAC;AAC9C,YAAM,IAAIwB,GAAG,eAAe9W,IAAI,sDAAsD;AACxF,WAAO;AAAA,MACL,OAAO;AAAA,MACP,MAAME;AAAA,MACN,OAAOoV;AAAA,IACb;AAAA,EACG;AACD,QAAM,IAAIsB,GAAG,eAAe5W,IAAI,kBAAkB;AACpD,GAAGuY,KAAK,SAASvY,GAAG,GAAG;AACrB,MAAI,OAAOA,KAAK,YAAYA,EAAE,WAAW;AACvC,UAAM,IAAI8W,GAAG,2CAA2C;AAC1D,MAAI,UAAU,SAAS,KAAK,OAAO,KAAK;AACtC,UAAM,IAAIA,GAAG,2CAA2C;AAC1D,MAAIoB,GAAG,eAAelY,CAAC,MAAM;AAC3B,UAAM,IAAI4W,GAAG,oFAAoF;AACnG,MAAI1W,IAAImY,GAAGrY,CAAC,GAAG,IAAIE,EAAE,SAAS,IAAIA,EAAE,CAAC,IAAI,IAAIoV,IAAIgD,GAAG,MAAM,IAAI,KAAK,CAAC,GAAG3X,IAAI2U,EAAE,MAAM,IAAIA,EAAE,OAAO7U,IAAI,IAAI,IAAI6U,EAAE;AAC9G,QAAM,IAAI,EAAE,CAAC,GAAGyC,GAAG7X,GAAG4X,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACnC,WAASjK,IAAI,GAAG7M,IAAI,IAAI6M,IAAI3N,EAAE,QAAQ2N,KAAK,GAAG;AAC5C,QAAI,IAAI3N,EAAE2N,CAAC,GAAG,IAAIoK,GAAG,GAAG,GAAG,CAAC,GAAG,IAAIA,GAAG,GAAG,EAAE;AAC3C,SAAK,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,QAAQ,MAAM;AACxF,YAAM,IAAIrB,GAAG,sDAAsD;AACrE,SAAK,MAAM,iBAAiB,CAAC5V,OAAOP,IAAI,KAAK,KAAK,MAAM,GAAGE,IAAI,MAAM,IAAI,KAAKkX,GAAGL,IAAI7W,CAAC;AACpF,UAAI6W,GAAG7W,CAAC;AAAA,aACD,KAAK,MAAM;AAClB,UAAI,EAAE,KAAK,IAAI;AACb,YAAI,CAAC;AACH,gBAAM,IAAImW,GAAG,wBAAwB9W,IAAI,6CAA6C;AACxF;AAAA,MACD;AACD,UAAIgX,MAAMnJ,IAAI,KAAK3N,EAAE,QAAQ;AAC3B,YAAImB,IAAI2V,GAAG,GAAG,CAAC;AACf,QAAAhW,IAAI,CAAC,CAACK,GAAGL,KAAK,SAASK,KAAK,EAAE,mBAAmBA,EAAE,OAAO,IAAIA,EAAE,MAAM,IAAI,EAAE,CAAC;AAAA,MAC9E;AACC,QAAAL,IAAI6W,GAAG,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC;AACvB,MAAA7W,KAAK,CAACP,MAAM+W,GAAG7W,CAAC,IAAI;AAAA,IACrB;AAAA,EACF;AACD,SAAO;AACT,GAAG6X,KAAK,EAAE,SAAS,CAAE,EAAA,GAAIC,KAAKF,IAAIG,KAAKD,GAAG,2BAA2B,EAAE,GAAGE,KAAK,WAAW;AACxF,MAAID;AACF,QAAI;AACF,aAAOA,GAAG,CAAE,GAAE,KAAK,EAAE,OAAO,EAAG,CAAA,GAAG;AAAA,IACxC,QAAY;AACN,aAAO;AAAA,IACR;AACH,SAAO;AACT;AACAC,GAAG,0BAA0B,WAAW;AACtC,MAAI,CAACA,GAAI;AACP,WAAO;AACT,MAAI;AACF,WAAOD,GAAG,CAAE,GAAE,UAAU,EAAE,OAAO,EAAG,CAAA,EAAE,WAAW;AAAA,EACrD,QAAU;AACN,WAAO;AAAA,EACR;AACH;AACA,IAAIE,KAAKD,IAAIE,KAAKN,IAAIO,KAAKD,GAAG,qCAAqC,EAAE;AACrE,IAAIC;AACF,MAAI;AACF,IAAAA,GAAG,CAAA,GAAI,QAAQ;AAAA,EACnB,QAAU;AACN,IAAAA,KAAK;AAAA,EACN;AACH,IAAIC,KAAKD,IAAIE,KAAKJ,GAAE,GAAIK,KAAKV,IAAIW,KAAKF,MAAMC,GAAG,2BAA2B,EAAE;AAC5E,IAAIC;AACF,MAAI;AACF,IAAAA,GAAG,CAAE,GAAE,KAAK,EAAE,OAAO,EAAG,CAAA;AAAA,EAC5B,QAAU;AACN,IAAAA,KAAK;AAAA,EACN;AACH,IAAIC,KAAKF,GAAG,eAAe,GAAGG,KAAKH,GAAG,aAAa,GAAGI,KAAKN,IAAIO,KAAK,SAAStZ,GAAG,GAAGE,GAAG;AACpF,MAAI,CAACF,KAAK,OAAOA,KAAK,YAAY,OAAOA,KAAK;AAC5C,UAAM,IAAIoZ,GAAG,wCAAwC;AACvD,MAAI,OAAO,KAAK,YAAY,OAAO,KAAK;AACtC,UAAM,IAAIA,GAAG,0CAA0C;AACzD,MAAI,UAAU,SAAS,KAAK,OAAO,UAAU,CAAC,KAAK,aAAa,UAAU,CAAC,MAAM;AAC/E,UAAM,IAAIA,GAAG,yDAAyD;AACxE,MAAI,UAAU,SAAS,KAAK,OAAO,UAAU,CAAC,KAAK,aAAa,UAAU,CAAC,MAAM;AAC/E,UAAM,IAAIA,GAAG,uDAAuD;AACtE,MAAI,UAAU,SAAS,KAAK,OAAO,UAAU,CAAC,KAAK,aAAa,UAAU,CAAC,MAAM;AAC/E,UAAM,IAAIA,GAAG,2DAA2D;AAC1E,MAAI,UAAU,SAAS,KAAK,OAAO,UAAU,CAAC,KAAK;AACjD,UAAM,IAAIA,GAAG,yCAAyC;AACxD,MAAI,IAAI,UAAU,SAAS,IAAI,UAAU,CAAC,IAAI,MAAM9D,IAAI,UAAU,SAAS,IAAI,UAAU,CAAC,IAAI,MAAM3U,IAAI,UAAU,SAAS,IAAI,UAAU,CAAC,IAAI,MAAM,IAAI,UAAU,SAAS,IAAI,UAAU,CAAC,IAAI,IAAIF,IAAI,CAAC,CAAC4Y,MAAMA,GAAGrZ,GAAG,CAAC;AACrN,MAAIkZ;AACF,IAAAA,GAAGlZ,GAAG,GAAG;AAAA,MACP,cAAcW,MAAM,QAAQF,IAAIA,EAAE,eAAe,CAACE;AAAA,MAClD,YAAY,MAAM,QAAQF,IAAIA,EAAE,aAAa,CAAC;AAAA,MAC9C,OAAOP;AAAA,MACP,UAAUoV,MAAM,QAAQ7U,IAAIA,EAAE,WAAW,CAAC6U;AAAA,IAChD,CAAK;AAAA,WACM,KAAK,CAAC,KAAK,CAACA,KAAK,CAAC3U;AACzB,IAAAX,EAAE,CAAC,IAAIE;AAAA;AAEP,UAAM,IAAIiZ,GAAG,6GAA6G;AAC9H,GAAGI,KAAKhB,IAAIiB,KAAKF,IAAIG,KAAKb,GAAE,GAAIc,KAAKX,IAAIY,KAAKJ,GAAG,aAAa,GAAGK,KAAKL,GAAG,cAAc,GAAGM,KAAK,SAAS7Z,GAAG,GAAG;AAC5G,MAAI,OAAOA,KAAK;AACd,UAAM,IAAI2Z,GAAG,wBAAwB;AACvC,MAAI,OAAO,KAAK,YAAY,IAAI,KAAK,IAAI,cAAcC,GAAG,CAAC,MAAM;AAC/D,UAAM,IAAID,GAAG,4CAA4C;AAC3D,MAAIzZ,IAAI,UAAU,SAAS,KAAK,CAAC,CAAC,UAAU,CAAC,GAAG,IAAI,IAAIoV,IAAI;AAC5D,MAAI,YAAYtV,KAAK0Z,IAAI;AACvB,QAAI/Y,IAAI+Y,GAAG1Z,GAAG,QAAQ;AACtB,IAAAW,KAAK,CAACA,EAAE,iBAAiB,IAAI,KAAKA,KAAK,CAACA,EAAE,aAAa2U,IAAI;AAAA,EAC5D;AACD,UAAQ,KAAKA,KAAK,CAACpV,OAAOuZ,KAAKD,GAAGxZ,GAAG,UAAU,GAAG,IAAI,EAAE,IAAIwZ,GAAGxZ,GAAG,UAAU,CAAC,IAAIA;AACnF;AAAA,CACC,SAAS,GAAG;AACX,MAAIA,IAAIsW,IAAIrW,IAAIsY,IAAIrY,IAAI2Z,IAAItZ,IAAIN,EAAE,aAAa,GAAG,IAAIA,EAAE,4BAA4B,GAAGU,IAAIV,EAAE,2BAA2B,GAAGO,IAAIP,EAAE,mBAAmB,EAAE,KAAKD,EAAE,KAAKW,GAAG,CAAC,GAAGF,IAAIR,EAAE,2BAA2B,EAAE,GAAGS,IAAIT,EAAE,YAAY;AACjO,MAAIQ;AACF,QAAI;AACF,MAAAA,EAAE,CAAE,GAAE,KAAK,EAAE,OAAO,EAAG,CAAA;AAAA,IAC7B,QAAY;AACN,MAAAA,IAAI;AAAA,IACL;AACH,IAAE,UAAU,SAAS,GAAG;AACtB,QAAI,OAAO,KAAK;AACd,YAAM,IAAIF,EAAE,wBAAwB;AACtC,QAAI,IAAIC,EAAER,GAAGW,GAAG,SAAS;AACzB,WAAOT;AAAA,MACL;AAAA,MACA,IAAIQ,EAAE,GAAG,EAAE,UAAU,UAAU,SAAS,EAAE;AAAA,MAC1C;AAAA,IACN;AAAA,EACA;AACE,MAAI,IAAI,WAAW;AACjB,WAAOF,EAAER,GAAG,GAAG,SAAS;AAAA,EAC5B;AACE,EAAAS,IAAIA,EAAE,EAAE,SAAS,SAAS,EAAE,OAAO,EAAC,CAAE,IAAI,EAAE,QAAQ,QAAQ;AAC9D,GAAG+X,EAAE;AACL,IAAIsB,KAAKtB,GAAG,SAASuB,KAAKxB,IAAIyB,KAAKF,IAAIG,KAAKD,GAAGD,GAAG,0BAA0B,CAAC,GAAGG,KAAK,SAASla,GAAG,GAAG;AAClG,MAAIE,IAAI6Z,GAAG/Z,GAAG,CAAC,CAAC,CAAC;AACjB,SAAO,OAAOE,KAAK,cAAc+Z,GAAGja,GAAG,aAAa,IAAI,KAAKga,GAAG9Z,CAAC,IAAIA;AACvE;AACA,MAAMia,KAAK,CAAE,GAAEC,KAAqB,uBAAO,OAAuB,uBAAO,eAAe;AAAA,EACtF,WAAW;AAAA,EACX,SAASD;AACX,GAAG,OAAO,aAAa,EAAE,OAAO,UAAU,CAAC,GAAGE,KAAqB,gBAAAjL,GAAGgL,EAAE;AACxE,IAAIE,KAAK,OAAO,OAAO,cAAc,IAAI,WAAWC,KAAK,OAAO,4BAA4BD,KAAK,OAAO,yBAAyB,IAAI,WAAW,MAAM,IAAI,MAAME,KAAKF,MAAMC,MAAM,OAAOA,GAAG,OAAO,aAAaA,GAAG,MAAM,MAAME,KAAKH,MAAM,IAAI,UAAU,SAASI,KAAK,OAAO,OAAO,cAAc,IAAI,WAAWC,KAAK,OAAO,4BAA4BD,KAAK,OAAO,yBAAyB,IAAI,WAAW,MAAM,IAAI,MAAME,KAAKF,MAAMC,MAAM,OAAOA,GAAG,OAAO,aAAaA,GAAG,MAAM,MAAME,KAAKH,MAAM,IAAI,UAAU,SAASI,KAAK,OAAO,WAAW,cAAc,QAAQ,WAAWC,KAAKD,KAAK,QAAQ,UAAU,MAAM,MAAME,KAAK,OAAO,WAAW,cAAc,QAAQ,WAAWC,KAAKD,KAAK,QAAQ,UAAU,MAAM,MAAME,KAAK,OAAO,WAAW,cAAc,QAAQ,WAAWC,KAAKD,KAAK,QAAQ,UAAU,QAAQ,MAAME,KAAK,QAAQ,UAAU,SAASC,KAAK,OAAO,UAAU,UAAUC,KAAK,SAAS,UAAU,UAAUC,KAAK,OAAO,UAAU,OAAOC,KAAK,OAAO,UAAU,OAAOC,KAAK,OAAO,UAAU,SAASC,KAAK,OAAO,UAAU,aAAaC,KAAK,OAAO,UAAU,aAAaC,KAAK,OAAO,UAAU,MAAMC,KAAK,MAAM,UAAU,QAAQC,KAAK,MAAM,UAAU,MAAMC,KAAK,MAAM,UAAU,OAAOC,KAAK,KAAK,OAAOC,KAAK,OAAO,UAAU,aAAa,OAAO,UAAU,UAAU,MAAMC,KAAK,OAAO,uBAAuBC,KAAK,OAAO,UAAU,cAAc,OAAO,OAAO,YAAY,WAAW,OAAO,UAAU,WAAW,MAAMC,KAAK,OAAO,UAAU,cAAc,OAAO,OAAO,YAAY,UAAUC,KAAK,OAAO,UAAU,cAAc,OAAO,gBAAgB,OAAO,OAAO,gBAAgBD,MAAM,YAAY,OAAO,cAAc,MAAME,KAAK,OAAO,UAAU,sBAAsBC,MAAM,OAAO,WAAW,aAAa,QAAQ,iBAAiB,OAAO,oBAAoB,CAAE,EAAC,cAAc,MAAM,YAAY,SAAS,GAAG;AAClvD,SAAO,EAAE;AACX,IAAI;AACJ,SAASC,GAAG,GAAGxc,GAAG;AAChB,MAAI,MAAM,IAAI,KAAK,MAAM,KAAK,KAAK,MAAM,KAAK,KAAK,IAAI,QAAQ,IAAI,OAAO4b,GAAG,KAAK,KAAK5b,CAAC;AACtF,WAAOA;AACT,MAAIC,IAAI;AACR,MAAI,OAAO,KAAK,UAAU;AACxB,QAAIC,IAAI,IAAI,IAAI,CAAC8b,GAAG,CAAC,CAAC,IAAIA,GAAG,CAAC;AAC9B,QAAI9b,MAAM,GAAG;AACX,UAAIK,IAAI,OAAOL,CAAC,GAAG,IAAIsb,GAAG,KAAKxb,GAAGO,EAAE,SAAS,CAAC;AAC9C,aAAOkb,GAAG,KAAKlb,GAAGN,GAAG,KAAK,IAAI,MAAMwb,GAAG,KAAKA,GAAG,KAAK,GAAG,eAAe,KAAK,GAAG,MAAM,EAAE;AAAA,IACvF;AAAA,EACF;AACD,SAAOA,GAAG,KAAKzb,GAAGC,GAAG,KAAK;AAC5B;AACA,IAAIwc,KAAKpC,IAAIqC,KAAKD,GAAG,QAAQE,KAAKC,GAAGF,EAAE,IAAIA,KAAK,MAAMG,KAAK,SAAS,EAAE7c,GAAGC,GAAGC,GAAGK,GAAG;AAChF,MAAI,IAAIN,KAAK;AACb,MAAI6c,GAAG,GAAG,YAAY,KAAK,EAAE,eAAe,YAAY,EAAE,eAAe;AACvE,UAAM,IAAI,UAAU,kDAAkD;AACxE,MAAIA,GAAG,GAAG,iBAAiB,MAAM,OAAO,EAAE,mBAAmB,WAAW,EAAE,kBAAkB,KAAK,EAAE,oBAAoB,IAAI,IAAI,EAAE,oBAAoB;AACnJ,UAAM,IAAI,UAAU,wFAAwF;AAC9G,MAAInc,IAAImc,GAAG,GAAG,eAAe,IAAI,EAAE,gBAAgB;AACnD,MAAI,OAAOnc,KAAK,aAAaA,MAAM;AACjC,UAAM,IAAI,UAAU,+EAA+E;AACrG,MAAImc,GAAG,GAAG,QAAQ,KAAK,EAAE,WAAW,QAAQ,EAAE,WAAW,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS;AAClH,UAAM,IAAI,UAAU,0DAA0D;AAChF,MAAIA,GAAG,GAAG,kBAAkB,KAAK,OAAO,EAAE,oBAAoB;AAC5D,UAAM,IAAI,UAAU,mEAAmE;AACzF,MAAItc,IAAI,EAAE;AACV,MAAI,OAAOR,IAAI;AACb,WAAO;AACT,MAAIA,MAAM;AACR,WAAO;AACT,MAAI,OAAOA,KAAK;AACd,WAAOA,IAAI,SAAS;AACtB,MAAI,OAAOA,KAAK;AACd,WAAO+c,GAAG/c,GAAG,CAAC;AAChB,MAAI,OAAOA,KAAK,UAAU;AACxB,QAAIA,MAAM;AACR,aAAO,IAAI,IAAIA,IAAI,IAAI,MAAM;AAC/B,QAAIS,IAAI,OAAOT,CAAC;AAChB,WAAOQ,IAAIgc,GAAGxc,GAAGS,CAAC,IAAIA;AAAA,EACvB;AACD,MAAI,OAAOT,KAAK,UAAU;AACxB,QAAIU,IAAI,OAAOV,CAAC,IAAI;AACpB,WAAOQ,IAAIgc,GAAGxc,GAAGU,CAAC,IAAIA;AAAA,EACvB;AACD,MAAI,IAAI,OAAO,EAAE,QAAQ,MAAM,IAAI,EAAE;AACrC,MAAI,OAAOR,IAAI,QAAQA,IAAI,IAAIA,KAAK,KAAK,IAAI,KAAK,OAAOF,KAAK;AAC5D,WAAOgd,GAAGhd,CAAC,IAAI,YAAY;AAC7B,MAAIgB,IAAIic,GAAG,GAAG/c,CAAC;AACf,MAAI,OAAOK,IAAI;AACb,IAAAA,IAAI,CAAA;AAAA,WACG2c,GAAG3c,GAAGP,CAAC,KAAK;AACnB,WAAO;AACT,WAASiB,EAAEqB,GAAGC,GAAG8G,GAAG;AAClB,QAAI9G,MAAMhC,IAAIwb,GAAG,KAAKxb,CAAC,GAAGA,EAAE,KAAKgC,CAAC,IAAI8G,GAAG;AACvC,UAAIC,IAAI;AAAA,QACN,OAAO,EAAE;AAAA,MACjB;AACM,aAAOwT,GAAG,GAAG,YAAY,MAAMxT,EAAE,aAAa,EAAE,aAAa,EAAEhH,GAAGgH,GAAGpJ,IAAI,GAAGK,CAAC;AAAA,IAC9E;AACD,WAAO,EAAE+B,GAAG,GAAGpC,IAAI,GAAGK,CAAC;AAAA,EACxB;AACD,MAAI,OAAOP,KAAK,cAAc,CAACmd,GAAGnd,CAAC,GAAG;AACpC,QAAIkB,IAAIkc,GAAGpd,CAAC,GAAGmB,IAAIkc,GAAGrd,GAAGiB,CAAC;AAC1B,WAAO,eAAeC,IAAI,OAAOA,IAAI,kBAAkB,OAAOC,EAAE,SAAS,IAAI,QAAQ2a,GAAG,KAAK3a,GAAG,IAAI,IAAI,OAAO;AAAA,EAChH;AACD,MAAIyb,GAAG5c,CAAC,GAAG;AACT,QAAIqB,IAAI+a,KAAKX,GAAG,KAAK,OAAOzb,CAAC,GAAG,0BAA0B,IAAI,IAAImc,GAAG,KAAKnc,CAAC;AAC3E,WAAO,OAAOA,KAAK,YAAY,CAACoc,KAAKkB,GAAGjc,CAAC,IAAIA;AAAA,EAC9C;AACD,MAAIkc,GAAGvd,CAAC,GAAG;AACT,aAASwC,IAAI,MAAMmZ,GAAG,KAAK,OAAO3b,EAAE,QAAQ,CAAC,GAAGyC,IAAIzC,EAAE,cAAc,CAAA,GAAI,IAAI,GAAG,IAAIyC,EAAE,QAAQ;AAC3F,MAAAD,KAAK,MAAMC,EAAE,CAAC,EAAE,OAAO,MAAM+a,GAAGC,GAAGhb,EAAE,CAAC,EAAE,KAAK,GAAG,UAAU,CAAC;AAC7D,WAAOD,KAAK,KAAKxC,EAAE,cAAcA,EAAE,WAAW,WAAWwC,KAAK,QAAQA,KAAK,OAAOmZ,GAAG,KAAK,OAAO3b,EAAE,QAAQ,CAAC,IAAI,KAAKwC;AAAA,EACtH;AACD,MAAIwa,GAAGhd,CAAC,GAAG;AACT,QAAIA,EAAE,WAAW;AACf,aAAO;AACT,QAAI0C,IAAI2a,GAAGrd,GAAGiB,CAAC;AACf,WAAOD,KAAK,CAAC0c,GAAGhb,CAAC,IAAI,MAAMib,GAAGjb,GAAG1B,CAAC,IAAI,MAAM,OAAO8a,GAAG,KAAKpZ,GAAG,IAAI,IAAI;AAAA,EACvE;AACD,MAAIkb,GAAG5d,CAAC,GAAG;AACT,QAAI2C,IAAI0a,GAAGrd,GAAGiB,CAAC;AACf,WAAO,EAAE,WAAW,MAAM,cAAc,WAAWjB,KAAK,CAACsc,GAAG,KAAKtc,GAAG,OAAO,IAAI,QAAQ,OAAOA,CAAC,IAAI,OAAO8b,GAAG,KAAKD,GAAG,KAAK,cAAc5a,EAAEjB,EAAE,KAAK,GAAG2C,CAAC,GAAG,IAAI,IAAI,OAAOA,EAAE,WAAW,IAAI,MAAM,OAAO3C,CAAC,IAAI,MAAM,QAAQ,OAAOA,CAAC,IAAI,OAAO8b,GAAG,KAAKnZ,GAAG,IAAI,IAAI;AAAA,EAC/P;AACD,MAAI,OAAO3C,KAAK,YAAYW,GAAG;AAC7B,QAAIgc,MAAM,OAAO3c,EAAE2c,EAAE,KAAK,cAAcF;AACtC,aAAOA,GAAGzc,GAAG,EAAE,OAAO,IAAIE,EAAC,CAAE;AAC/B,QAAIS,MAAM,YAAY,OAAOX,EAAE,WAAW;AACxC,aAAOA,EAAE;EACZ;AACD,MAAI6d,GAAG7d,CAAC,GAAG;AACT,QAAI4C,IAAI,CAAA;AACR,WAAO6X,MAAMA,GAAG,KAAKza,GAAG,SAASsC,GAAGC,GAAG;AACrC,MAAAK,EAAE,KAAK3B,EAAEsB,GAAGvC,GAAG,EAAE,IAAI,SAASiB,EAAEqB,GAAGtC,CAAC,CAAC;AAAA,IAC3C,CAAK,GAAG8d,GAAG,OAAOtD,GAAG,KAAKxa,CAAC,GAAG4C,GAAG5B,CAAC;AAAA,EAC/B;AACD,MAAI+c,GAAG/d,CAAC,GAAG;AACT,QAAI,IAAI,CAAA;AACR,WAAO6a,MAAMA,GAAG,KAAK7a,GAAG,SAASsC,GAAG;AAClC,QAAE,KAAKrB,EAAEqB,GAAGtC,CAAC,CAAC;AAAA,IACpB,CAAK,GAAG8d,GAAG,OAAOlD,GAAG,KAAK5a,CAAC,GAAG,GAAGgB,CAAC;AAAA,EAC/B;AACD,MAAIgd,GAAGhe,CAAC;AACN,WAAOie,GAAG,SAAS;AACrB,MAAIC,GAAGle,CAAC;AACN,WAAOie,GAAG,SAAS;AACrB,MAAIE,GAAGne,CAAC;AACN,WAAOie,GAAG,SAAS;AACrB,MAAIG,GAAGpe,CAAC;AACN,WAAOsd,GAAGrc,EAAE,OAAOjB,CAAC,CAAC,CAAC;AACxB,MAAIqe,GAAGre,CAAC;AACN,WAAOsd,GAAGrc,EAAEgb,GAAG,KAAKjc,CAAC,CAAC,CAAC;AACzB,MAAIse,GAAGte,CAAC;AACN,WAAOsd,GAAGlC,GAAG,KAAKpb,CAAC,CAAC;AACtB,MAAIue,GAAGve,CAAC;AACN,WAAOsd,GAAGrc,EAAE,OAAOjB,CAAC,CAAC,CAAC;AACxB,MAAI,OAAO,SAAS,OAAOA,MAAM;AAC/B,WAAO;AACT,MAAIA,MAAMkP;AACR,WAAO;AACT,MAAI,CAACsP,GAAGxe,CAAC,KAAK,CAACmd,GAAGnd,CAAC,GAAG;AACpB,QAAI6C,IAAIwa,GAAGrd,GAAGiB,CAAC,GAAGgB,IAAIsa,KAAKA,GAAGvc,CAAC,MAAM,OAAO,YAAYA,aAAa,UAAUA,EAAE,gBAAgB,QAAQkC,IAAIlC,aAAa,SAAS,KAAK,kBAAkBmC,IAAI,CAACF,KAAKoa,MAAM,OAAOrc,CAAC,MAAMA,KAAKqc,MAAMrc,IAAIwb,GAAG,KAAKiD,GAAGze,CAAC,GAAG,GAAG,EAAE,IAAIkC,IAAI,WAAW,IAAIE,IAAIH,KAAK,OAAOjC,EAAE,eAAe,aAAa,KAAKA,EAAE,YAAY,OAAOA,EAAE,YAAY,OAAO,MAAM,IAAIqC,IAAID,KAAKD,KAAKD,IAAI,MAAM4Z,GAAG,KAAKD,GAAG,KAAK,CAAA,GAAI1Z,KAAK,CAAA,GAAID,KAAK,CAAE,CAAA,GAAG,IAAI,IAAI,OAAO;AACva,WAAOW,EAAE,WAAW,IAAIR,IAAI,OAAOrB,IAAIqB,IAAI,MAAMsb,GAAG9a,GAAG7B,CAAC,IAAI,MAAMqB,IAAI,OAAOyZ,GAAG,KAAKjZ,GAAG,IAAI,IAAI;AAAA,EACjG;AACD,SAAO,OAAO7C,CAAC;AACjB;AACA,SAASwd,GAAG,GAAGxd,GAAGC,GAAG;AACnB,MAAIC,KAAKD,EAAE,cAAcD,OAAO,WAAW,MAAM;AACjD,SAAOE,IAAI,IAAIA;AACjB;AACA,SAASud,GAAG,GAAG;AACb,SAAOhC,GAAG,KAAK,OAAO,CAAC,GAAG,MAAM,QAAQ;AAC1C;AACA,SAASuB,GAAG,GAAG;AACb,SAAOyB,GAAG,CAAC,MAAM,qBAAqB,CAACpC,MAAM,EAAE,OAAO,KAAK,YAAYA,MAAM;AAC/E;AACA,SAASmC,GAAG,GAAG;AACb,SAAOC,GAAG,CAAC,MAAM,oBAAoB,CAACpC,MAAM,EAAE,OAAO,KAAK,YAAYA,MAAM;AAC9E;AACA,SAASc,GAAG,GAAG;AACb,SAAOsB,GAAG,CAAC,MAAM,sBAAsB,CAACpC,MAAM,EAAE,OAAO,KAAK,YAAYA,MAAM;AAChF;AACA,SAASuB,GAAG,GAAG;AACb,SAAOa,GAAG,CAAC,MAAM,qBAAqB,CAACpC,MAAM,EAAE,OAAO,KAAK,YAAYA,MAAM;AAC/E;AACA,SAASkC,GAAG,GAAG;AACb,SAAOE,GAAG,CAAC,MAAM,sBAAsB,CAACpC,MAAM,EAAE,OAAO,KAAK,YAAYA,MAAM;AAChF;AACA,SAAS+B,GAAG,GAAG;AACb,SAAOK,GAAG,CAAC,MAAM,sBAAsB,CAACpC,MAAM,EAAE,OAAO,KAAK,YAAYA,MAAM;AAChF;AACA,SAASiC,GAAG,GAAG;AACb,SAAOG,GAAG,CAAC,MAAM,uBAAuB,CAACpC,MAAM,EAAE,OAAO,KAAK,YAAYA,MAAM;AACjF;AACA,SAASO,GAAG,GAAG;AACb,MAAIR;AACF,WAAO,KAAK,OAAO,KAAK,YAAY,aAAa;AACnD,MAAI,OAAO,KAAK;AACd,WAAO;AACT,MAAI,CAAC,KAAK,OAAO,KAAK,YAAY,CAACD;AACjC,WAAO;AACT,MAAI;AACF,WAAOA,GAAG,KAAK,CAAC,GAAG;AAAA,EACvB,QAAU;AAAA,EACP;AACD,SAAO;AACT;AACA,SAASkC,GAAG,GAAG;AACb,MAAI,CAAC,KAAK,OAAO,KAAK,YAAY,CAACpC;AACjC,WAAO;AACT,MAAI;AACF,WAAOA,GAAG,KAAK,CAAC,GAAG;AAAA,EACvB,QAAU;AAAA,EACP;AACD,SAAO;AACT;AACA,IAAIyC,KAAK,OAAO,UAAU,kBAAkB,SAAS,GAAG;AACtD,SAAO,KAAK;AACd;AACA,SAAS5B,GAAG,GAAG9c,GAAG;AAChB,SAAO0e,GAAG,KAAK,GAAG1e,CAAC;AACrB;AACA,SAASye,GAAG,GAAG;AACb,SAAOpD,GAAG,KAAK,CAAC;AAClB;AACA,SAAS+B,GAAG,GAAG;AACb,MAAI,EAAE;AACJ,WAAO,EAAE;AACX,MAAIpd,IAAIub,GAAG,KAAKD,GAAG,KAAK,CAAC,GAAG,sBAAsB;AAClD,SAAOtb,IAAIA,EAAE,CAAC,IAAI;AACpB;AACA,SAASkd,GAAG,GAAGld,GAAG;AAChB,MAAI,EAAE;AACJ,WAAO,EAAE,QAAQA,CAAC;AACpB,WAASC,IAAI,GAAGC,IAAI,EAAE,QAAQD,IAAIC,GAAGD;AACnC,QAAI,EAAEA,CAAC,MAAMD;AACX,aAAOC;AACX,SAAO;AACT;AACA,SAAS4d,GAAG,GAAG;AACb,MAAI,CAACrD,MAAM,CAAC,KAAK,OAAO,KAAK;AAC3B,WAAO;AACT,MAAI;AACF,IAAAA,GAAG,KAAK,CAAC;AACT,QAAI;AACF,MAAAI,GAAG,KAAK,CAAC;AAAA,IACf,QAAY;AACN,aAAO;AAAA,IACR;AACD,WAAO,aAAa;AAAA,EACxB,QAAU;AAAA,EACP;AACD,SAAO;AACT;AACA,SAASoD,GAAG,GAAG;AACb,MAAI,CAACjD,MAAM,CAAC,KAAK,OAAO,KAAK;AAC3B,WAAO;AACT,MAAI;AACF,IAAAA,GAAG,KAAK,GAAGA,EAAE;AACb,QAAI;AACF,MAAAE,GAAG,KAAK,GAAGA,EAAE;AAAA,IACnB,QAAY;AACN,aAAO;AAAA,IACR;AACD,WAAO,aAAa;AAAA,EACxB,QAAU;AAAA,EACP;AACD,SAAO;AACT;AACA,SAASkD,GAAG,GAAG;AACb,MAAI,CAAChD,MAAM,CAAC,KAAK,OAAO,KAAK;AAC3B,WAAO;AACT,MAAI;AACF,WAAOA,GAAG,KAAK,CAAC,GAAG;AAAA,EACvB,QAAU;AAAA,EACP;AACD,SAAO;AACT;AACA,SAAS4C,GAAG,GAAG;AACb,MAAI,CAACnD,MAAM,CAAC,KAAK,OAAO,KAAK;AAC3B,WAAO;AACT,MAAI;AACF,IAAAA,GAAG,KAAK,CAAC;AACT,QAAI;AACF,MAAAJ,GAAG,KAAK,CAAC;AAAA,IACf,QAAY;AACN,aAAO;AAAA,IACR;AACD,WAAO,aAAa;AAAA,EACxB,QAAU;AAAA,EACP;AACD,SAAO;AACT;AACA,SAAS0D,GAAG,GAAG;AACb,MAAI,CAACjD,MAAM,CAAC,KAAK,OAAO,KAAK;AAC3B,WAAO;AACT,MAAI;AACF,IAAAA,GAAG,KAAK,GAAGA,EAAE;AACb,QAAI;AACF,MAAAF,GAAG,KAAK,GAAGA,EAAE;AAAA,IACnB,QAAY;AACN,aAAO;AAAA,IACR;AACD,WAAO,aAAa;AAAA,EACxB,QAAU;AAAA,EACP;AACD,SAAO;AACT;AACA,SAASwC,GAAG,GAAG;AACb,SAAO,CAAC,KAAK,OAAO,KAAK,WAAW,KAAK,OAAO,cAAc,OAAO,aAAa,cAAc,KAAK,OAAO,EAAE,YAAY,YAAY,OAAO,EAAE,gBAAgB;AACjK;AACA,SAASR,GAAG,GAAG/c,GAAG;AAChB,MAAI,EAAE,SAASA,EAAE,iBAAiB;AAChC,QAAIC,IAAI,EAAE,SAASD,EAAE,iBAAiBE,IAAI,SAASD,IAAI,qBAAqBA,IAAI,IAAI,MAAM;AAC1F,WAAO8c,GAAGvB,GAAG,KAAK,GAAG,GAAGxb,EAAE,eAAe,GAAGA,CAAC,IAAIE;AAAA,EAClD;AACD,MAAIK,IAAIkb,GAAG,KAAKA,GAAG,KAAK,GAAG,YAAY,MAAM,GAAG,gBAAgBkD,EAAE;AAClE,SAAOnB,GAAGjd,GAAG,UAAUP,CAAC;AAC1B;AACA,SAAS2e,GAAG,GAAG;AACb,MAAI3e,IAAI,EAAE,WAAW,CAAC,GAAGC,IAAI;AAAA,IAC3B,GAAG;AAAA,IACH,GAAG;AAAA,IACH,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,EACL,EAACD,CAAC;AACH,SAAOC,IAAI,OAAOA,IAAI,SAASD,IAAI,KAAK,MAAM,MAAM0b,GAAG,KAAK1b,EAAE,SAAS,EAAE,CAAC;AAC5E;AACA,SAASsd,GAAG,GAAG;AACb,SAAO,YAAY,IAAI;AACzB;AACA,SAASW,GAAG,GAAG;AACb,SAAO,IAAI;AACb;AACA,SAASH,GAAG,GAAG9d,GAAGC,GAAGC,GAAG;AACtB,MAAIK,IAAIL,IAAIyd,GAAG1d,GAAGC,CAAC,IAAI4b,GAAG,KAAK7b,GAAG,IAAI;AACtC,SAAO,IAAI,OAAOD,IAAI,QAAQO,IAAI;AACpC;AACA,SAASmd,GAAG,GAAG;AACb,WAAS1d,IAAI,GAAGA,IAAI,EAAE,QAAQA;AAC5B,QAAIkd,GAAG,EAAEld,CAAC,GAAG;AAAA,CAChB,KAAK;AACA,aAAO;AACX,SAAO;AACT;AACA,SAASid,GAAG,GAAGjd,GAAG;AAChB,MAAIC;AACJ,MAAI,EAAE,WAAW;AACf,IAAAA,IAAI;AAAA,WACG,OAAO,EAAE,UAAU,YAAY,EAAE,SAAS;AACjD,IAAAA,IAAI6b,GAAG,KAAK,MAAM,EAAE,SAAS,CAAC,GAAG,GAAG;AAAA;AAEpC,WAAO;AACT,SAAO;AAAA,IACL,MAAM7b;AAAA,IACN,MAAM6b,GAAG,KAAK,MAAM9b,IAAI,CAAC,GAAGC,CAAC;AAAA,EACjC;AACA;AACA,SAAS0d,GAAG,GAAG3d,GAAG;AAChB,MAAI,EAAE,WAAW;AACf,WAAO;AACT,MAAIC,IAAI;AAAA,IACND,EAAE,OAAOA,EAAE;AACb,SAAOC,IAAI6b,GAAG,KAAK,GAAG,MAAM7b,CAAC,IAAI;AAAA,IAC/BD,EAAE;AACN;AACA,SAASqd,GAAG,GAAGrd,GAAG;AAChB,MAAIC,IAAI+c,GAAG,CAAC,GAAG9c,IAAI,CAAA;AACnB,MAAID,GAAG;AACL,IAAAC,EAAE,SAAS,EAAE;AACb,aAASK,IAAI,GAAGA,IAAI,EAAE,QAAQA;AAC5B,MAAAL,EAAEK,CAAC,IAAIuc,GAAG,GAAGvc,CAAC,IAAIP,EAAE,EAAEO,CAAC,GAAG,CAAC,IAAI;AAAA,EAClC;AACD,MAAI,IAAI,OAAO2b,MAAM,aAAaA,GAAG,CAAC,IAAI,CAAE,GAAEvb;AAC9C,MAAIyb,IAAI;AACN,IAAAzb,IAAI,CAAA;AACJ,aAASH,IAAI,GAAGA,IAAI,EAAE,QAAQA;AAC5B,MAAAG,EAAE,MAAM,EAAEH,CAAC,CAAC,IAAI,EAAEA,CAAC;AAAA,EACtB;AACD,WAASC,KAAK;AACZ,IAAAqc,GAAG,GAAGrc,CAAC,MAAMR,KAAK,OAAO,OAAOQ,CAAC,CAAC,MAAMA,KAAKA,IAAI,EAAE,UAAU2b,MAAMzb,EAAE,MAAMF,CAAC,aAAa,WAAWmb,GAAG,KAAK,UAAUnb,CAAC,IAAIP,EAAE,KAAKF,EAAES,GAAG,CAAC,IAAI,OAAOT,EAAE,EAAES,CAAC,GAAG,CAAC,CAAC,IAAIP,EAAE,KAAKO,IAAI,OAAOT,EAAE,EAAES,CAAC,GAAG,CAAC,CAAC;AAC/L,MAAI,OAAOyb,MAAM;AACf,aAASxb,IAAI,GAAGA,IAAI,EAAE,QAAQA;AAC5B,MAAA4b,GAAG,KAAK,GAAG,EAAE5b,CAAC,CAAC,KAAKR,EAAE,KAAK,MAAMF,EAAE,EAAEU,CAAC,CAAC,IAAI,QAAQV,EAAE,EAAE,EAAEU,CAAC,CAAC,GAAG,CAAC,CAAC;AACpE,SAAOR;AACT;AACA,IAAI0e,KAAKrG,IAAIsG,KAAK3E,IAAI4E,KAAKjC,IAAIkC,KAAKH,GAAG,aAAa,GAAGI,KAAKJ,GAAG,aAAa,EAAE,GAAGK,KAAKL,GAAG,SAAS,EAAE,GAAGM,KAAKL,GAAG,yBAAyB,EAAE,GAAGM,KAAKN,GAAG,yBAAyB,EAAE,GAAGO,KAAKP,GAAG,yBAAyB,EAAE,GAAGQ,KAAKR,GAAG,qBAAqB,EAAE,GAAGS,KAAKT,GAAG,qBAAqB,EAAE,GAAGU,KAAKV,GAAG,qBAAqB,EAAE,GAAGW,KAAK,SAAS,GAAGxf,GAAG;AACjV,WAASC,IAAI,GAAGC,IAAIA,IAAID,EAAE,UAAU,MAAMA,IAAIC;AAC5C,QAAIA,EAAE,QAAQF;AACZ,aAAOC,EAAE,OAAOC,EAAE,MAAMA,EAAE,OAAO,EAAE,MAAM,EAAE,OAAOA,GAAGA;AAC3D,GAAGuf,KAAK,SAAS,GAAGzf,GAAG;AACrB,MAAIC,IAAIuf,GAAG,GAAGxf,CAAC;AACf,SAAOC,KAAKA,EAAE;AAChB,GAAGyf,KAAK,SAAS,GAAG1f,GAAGC,GAAG;AACxB,MAAIC,IAAIsf,GAAG,GAAGxf,CAAC;AACf,EAAAE,IAAIA,EAAE,QAAQD,IAAI,EAAE,OAAO;AAAA;AAAA,IAEzB,KAAKD;AAAA,IACL,MAAM,EAAE;AAAA,IACR,OAAOC;AAAA,EACX;AACA,GAAG0f,KAAK,SAAS,GAAG3f,GAAG;AACrB,SAAO,CAAC,CAACwf,GAAG,GAAGxf,CAAC;AAClB,GAAG4f,KAAK,WAAW;AACjB,MAAI5f,GAAG,GAAGE,GAAG,IAAI;AAAA,IACf,QAAQ,SAASoV,GAAG;AAClB,UAAI,CAAC,EAAE,IAAIA,CAAC;AACV,cAAM,IAAIyJ,GAAG,mCAAmCD,GAAGxJ,CAAC,CAAC;AAAA,IACxD;AAAA,IACD,KAAK,SAASA,GAAG;AACf,UAAI0J,MAAM1J,MAAM,OAAOA,KAAK,YAAY,OAAOA,KAAK;AAClD,YAAItV;AACF,iBAAOkf,GAAGlf,GAAGsV,CAAC;AAAA,iBACP2J;AACT,YAAI;AACF,iBAAOI,GAAG,GAAG/J,CAAC;AAAA,iBACPpV;AACT,eAAOuf,GAAGvf,GAAGoV,CAAC;AAAA,IACjB;AAAA,IACD,KAAK,SAASA,GAAG;AACf,UAAI0J,MAAM1J,MAAM,OAAOA,KAAK,YAAY,OAAOA,KAAK;AAClD,YAAItV;AACF,iBAAOof,GAAGpf,GAAGsV,CAAC;AAAA,iBACP2J;AACT,YAAI;AACF,iBAAOM,GAAG,GAAGjK,CAAC;AAAA,iBACPpV;AACT,eAAOyf,GAAGzf,GAAGoV,CAAC;AAChB,aAAO;AAAA,IACR;AAAA,IACD,KAAK,SAASA,GAAG3U,GAAG;AAClB,MAAAqe,MAAM1J,MAAM,OAAOA,KAAK,YAAY,OAAOA,KAAK,eAAetV,MAAMA,IAAI,IAAIgf,GAAI,IAAGG,GAAGnf,GAAGsV,GAAG3U,CAAC,KAAKse,MAAM,MAAM,IAAI,IAAIA,GAAI,IAAGK,GAAG,GAAGhK,GAAG3U,CAAC,MAAMT,MAAMA,IAAI,EAAE,KAAK,IAAI,MAAM,SAASwf,GAAGxf,GAAGoV,GAAG3U,CAAC;AAAA,IAC7L;AAAA,EACL;AACE,SAAO;AACT,GAAGkf,KAAK,OAAO,UAAU,SAASC,KAAK,QAAQC,KAAK;AAAA,EAClD,SAAS;AAAA,EACT,SAAS;AACX,GAAGC,KAAK;AAAA,EACN,SAASD,GAAG;AAAA,EACZ,YAAY;AAAA,IACV,SAAS,SAAS,GAAG;AACnB,aAAOF,GAAG,KAAK,GAAGC,IAAI,GAAG;AAAA,IAC1B;AAAA,IACD,SAAS,SAAS,GAAG;AACnB,aAAO,OAAO,CAAC;AAAA,IAChB;AAAA,EACF;AAAA,EACD,SAASC,GAAG;AAAA,EACZ,SAASA,GAAG;AACd,GAAGE,KAAKD,IAAIE,KAAK,OAAO,UAAU,gBAAgBC,KAAK,MAAM,SAASC,KAAK,WAAW;AACpF,WAAS,IAAI,IAAIpgB,IAAI,GAAGA,IAAI,KAAK,EAAEA;AACjC,MAAE,KAAK,QAAQA,IAAI,KAAK,MAAM,MAAMA,EAAE,SAAS,EAAE,GAAG,YAAa,CAAA;AACnE,SAAO;AACT,KAAKqgB,KAAK,SAASrgB,GAAG;AACpB,SAAOA,EAAE,SAAS,KAAK;AACrB,QAAI,IAAIA,EAAE,OAAOE,IAAI,EAAE,IAAI,EAAE,IAAI;AACjC,QAAIigB,GAAGjgB,CAAC,GAAG;AACT,eAAS,IAAI,CAAA,GAAIoV,IAAI,GAAGA,IAAIpV,EAAE,QAAQ,EAAEoV;AACtC,eAAOpV,EAAEoV,CAAC,IAAI,OAAO,EAAE,KAAKpV,EAAEoV,CAAC,CAAC;AAClC,QAAE,IAAI,EAAE,IAAI,IAAI;AAAA,IACjB;AAAA,EACF;AACH,GAAGgL,KAAK,SAAStgB,GAAG,GAAG;AACrB,WAASE,IAAI,KAAK,EAAE,eAA+B,uBAAO,OAAO,IAAI,IAAI,CAAE,GAAE,IAAI,GAAG,IAAIF,EAAE,QAAQ,EAAE;AAClG,WAAOA,EAAE,CAAC,IAAI,QAAQE,EAAE,CAAC,IAAIF,EAAE,CAAC;AAClC,SAAOE;AACT,GAAGqgB,KAAK,SAAS,EAAEvgB,GAAGC,GAAGC,GAAG;AAC1B,MAAI,CAACD;AACH,WAAOD;AACT,MAAI,OAAOC,KAAK,UAAU;AACxB,QAAIkgB,GAAGngB,CAAC;AACN,MAAAA,EAAE,KAAKC,CAAC;AAAA,aACDD,KAAK,OAAOA,KAAK;AACxB,OAACE,MAAMA,EAAE,gBAAgBA,EAAE,oBAAoB,CAACggB,GAAG,KAAK,OAAO,WAAWjgB,CAAC,OAAOD,EAAEC,CAAC,IAAI;AAAA;AAEzF,aAAO,CAACD,GAAGC,CAAC;AACd,WAAOD;AAAA,EACR;AACD,MAAI,CAACA,KAAK,OAAOA,KAAK;AACpB,WAAO,CAACA,CAAC,EAAE,OAAOC,CAAC;AACrB,MAAIM,IAAIP;AACR,SAAOmgB,GAAGngB,CAAC,KAAK,CAACmgB,GAAGlgB,CAAC,MAAMM,IAAI+f,GAAGtgB,GAAGE,CAAC,IAAIigB,GAAGngB,CAAC,KAAKmgB,GAAGlgB,CAAC,KAAKA,EAAE,QAAQ,SAAS,GAAGU,GAAG;AACnF,QAAIuf,GAAG,KAAKlgB,GAAGW,CAAC,GAAG;AACjB,UAAIH,IAAIR,EAAEW,CAAC;AACX,MAAAH,KAAK,OAAOA,KAAK,YAAY,KAAK,OAAO,KAAK,WAAWR,EAAEW,CAAC,IAAI,EAAEH,GAAG,GAAGN,CAAC,IAAIF,EAAE,KAAK,CAAC;AAAA,IACtF;AACC,MAAAA,EAAEW,CAAC,IAAI;AAAA,EACb,CAAG,GAAGX,KAAK,OAAO,KAAKC,CAAC,EAAE,OAAO,SAAS,GAAGU,GAAG;AAC5C,QAAIH,IAAIP,EAAEU,CAAC;AACX,WAAOuf,GAAG,KAAK,GAAGvf,CAAC,IAAI,EAAEA,CAAC,IAAI,EAAE,EAAEA,CAAC,GAAGH,GAAGN,CAAC,IAAI,EAAES,CAAC,IAAIH,GAAG;AAAA,EACzD,GAAED,CAAC;AACN,GAAGigB,KAAK,SAASxgB,GAAG,GAAG;AACrB,SAAO,OAAO,KAAK,CAAC,EAAE,OAAO,SAASE,GAAG,GAAG;AAC1C,WAAOA,EAAE,CAAC,IAAI,EAAE,CAAC,GAAGA;AAAA,EACrB,GAAEF,CAAC;AACN,GAAGygB,KAAK,SAAS,GAAGzgB,GAAGC,GAAG;AACxB,MAAIC,IAAI,EAAE,QAAQ,OAAO,GAAG;AAC5B,MAAID,MAAM;AACR,WAAOC,EAAE,QAAQ,kBAAkB,QAAQ;AAC7C,MAAI;AACF,WAAO,mBAAmBA,CAAC;AAAA,EAC/B,QAAU;AACN,WAAOA;AAAA,EACR;AACH,GAAGwgB,KAAK,SAAS1gB,GAAG,GAAGE,GAAG,GAAGoV,GAAG;AAC9B,MAAItV,EAAE,WAAW;AACf,WAAOA;AACT,MAAIW,IAAIX;AACR,MAAI,OAAOA,KAAK,WAAWW,IAAI,OAAO,UAAU,SAAS,KAAKX,CAAC,IAAI,OAAOA,KAAK,aAAaW,IAAI,OAAOX,CAAC,IAAIE,MAAM;AAChH,WAAO,OAAOS,CAAC,EAAE,QAAQ,mBAAmB,SAASkN,GAAG;AACtD,aAAO,WAAW,SAASA,EAAE,MAAM,CAAC,GAAG,EAAE,IAAI;AAAA,IACnD,CAAK;AACH,WAAS,IAAI,IAAIpN,IAAI,GAAGA,IAAIE,EAAE,QAAQ,EAAEF,GAAG;AACzC,QAAI,IAAIE,EAAE,WAAWF,CAAC;AACtB,QAAI,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,OAAO,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,OAAO6U,MAAM2K,GAAG,YAAY,MAAM,MAAM,MAAM,KAAK;AAClK,WAAKtf,EAAE,OAAOF,CAAC;AACf;AAAA,IACD;AACD,QAAI,IAAI,KAAK;AACX,UAAI,IAAI2f,GAAG,CAAC;AACZ;AAAA,IACD;AACD,QAAI,IAAI,MAAM;AACZ,UAAI,KAAKA,GAAG,MAAM,KAAK,CAAC,IAAIA,GAAG,MAAM,IAAI,EAAE;AAC3C;AAAA,IACD;AACD,QAAI,IAAI,SAAS,KAAK,OAAO;AAC3B,UAAI,KAAKA,GAAG,MAAM,KAAK,EAAE,IAAIA,GAAG,MAAM,KAAK,IAAI,EAAE,IAAIA,GAAG,MAAM,IAAI,EAAE;AACpE;AAAA,IACD;AACD,IAAA3f,KAAK,GAAG,IAAI,UAAU,IAAI,SAAS,KAAKE,EAAE,WAAWF,CAAC,IAAI,OAAO,KAAK2f,GAAG,MAAM,KAAK,EAAE,IAAIA,GAAG,MAAM,KAAK,KAAK,EAAE,IAAIA,GAAG,MAAM,KAAK,IAAI,EAAE,IAAIA,GAAG,MAAM,IAAI,EAAE;AAAA,EAC3J;AACD,SAAO;AACT,GAAGO,KAAK,SAAS3gB,GAAG;AAClB,WAAS,IAAI,CAAC,EAAE,KAAK,EAAE,GAAGA,EAAG,GAAE,MAAM,IAAK,CAAA,GAAGE,IAAI,CAAE,GAAE,IAAI,GAAG,IAAI,EAAE,QAAQ,EAAE;AAC1E,aAASoV,IAAI,EAAE,CAAC,GAAG3U,IAAI2U,EAAE,IAAIA,EAAE,IAAI,GAAG,IAAI,OAAO,KAAK3U,CAAC,GAAGF,IAAI,GAAGA,IAAI,EAAE,QAAQ,EAAEA,GAAG;AAClF,UAAI,IAAI,EAAEA,CAAC,GAAGoN,IAAIlN,EAAE,CAAC;AACrB,aAAOkN,KAAK,YAAYA,MAAM,QAAQ3N,EAAE,QAAQ2N,CAAC,MAAM,OAAO,EAAE,KAAK,EAAE,KAAKlN,GAAG,MAAM,GAAG,GAAGT,EAAE,KAAK2N,CAAC;AAAA,IACpG;AACH,SAAOwS,GAAG,CAAC,GAAGrgB;AAChB,GAAG4gB,KAAK,SAAS5gB,GAAG;AAClB,SAAO,OAAO,UAAU,SAAS,KAAKA,CAAC,MAAM;AAC/C,GAAG6gB,KAAK,SAAS7gB,GAAG;AAClB,SAAO,CAACA,KAAK,OAAOA,KAAK,WAAW,KAAK,CAAC,EAAEA,EAAE,eAAeA,EAAE,YAAY,YAAYA,EAAE,YAAY,SAASA,CAAC;AACjH,GAAG8gB,KAAK,SAAS9gB,GAAG,GAAG;AACrB,SAAO,GAAG,OAAOA,GAAG,CAAC;AACvB,GAAG+gB,KAAK,SAAS/gB,GAAG,GAAG;AACrB,MAAImgB,GAAGngB,CAAC,GAAG;AACT,aAASE,IAAI,CAAE,GAAE,IAAI,GAAG,IAAIF,EAAE,QAAQ,KAAK;AACzC,MAAAE,EAAE,KAAK,EAAEF,EAAE,CAAC,CAAC,CAAC;AAChB,WAAOE;AAAA,EACR;AACD,SAAO,EAAEF,CAAC;AACZ,GAAGghB,KAAK;AAAA,EACN,eAAeV;AAAA,EACf,QAAQE;AAAA,EACR,SAASM;AAAA,EACT,SAASH;AAAA,EACT,QAAQF;AAAA,EACR,QAAQC;AAAA,EACR,UAAUG;AAAA,EACV,UAAUD;AAAA,EACV,UAAUG;AAAA,EACV,OAAOR;AACT,GAAGU,KAAKrB,IAAIsB,KAAKF,IAAIG,KAAKnB,IAAIoB,KAAK,OAAO,UAAU,gBAAgBC,KAAK;AAAA,EACvE,UAAU,SAASrhB,GAAG;AACpB,WAAOA,IAAI;AAAA,EACZ;AAAA,EACD,OAAO;AAAA,EACP,SAAS,SAASA,GAAG,GAAG;AACtB,WAAOA,IAAI,MAAM,IAAI;AAAA,EACtB;AAAA,EACD,QAAQ,SAASA,GAAG;AAClB,WAAOA;AAAA,EACR;AACH,GAAGshB,KAAK,MAAM,SAASC,KAAK,MAAM,UAAU,MAAMC,KAAK,SAAS,GAAGxhB,GAAG;AACpE,EAAAuhB,GAAG,MAAM,GAAGD,GAAGthB,CAAC,IAAIA,IAAI,CAACA,CAAC,CAAC;AAC7B,GAAGyhB,KAAK,KAAK,UAAU,aAAaC,KAAKP,GAAG,SAASQ,KAAK;AAAA,EACxD,gBAAgB;AAAA,EAChB,WAAW;AAAA,EACX,SAAS;AAAA,EACT,iBAAiB;AAAA,EACjB,WAAW;AAAA,EACX,QAAQ;AAAA,EACR,SAAST,GAAG;AAAA,EACZ,kBAAkB;AAAA,EAClB,QAAQQ;AAAA,EACR,WAAWP,GAAG,WAAWO,EAAE;AAAA;AAAA,EAE3B,SAAS;AAAA,EACT,eAAe,SAAS1hB,GAAG;AACzB,WAAOyhB,GAAG,KAAKzhB,CAAC;AAAA,EACjB;AAAA,EACD,WAAW;AAAA,EACX,oBAAoB;AACtB,GAAG4hB,KAAK,SAAS5hB,GAAG;AAClB,SAAO,OAAOA,KAAK,YAAY,OAAOA,KAAK,YAAY,OAAOA,KAAK,aAAa,OAAOA,KAAK,YAAY,OAAOA,KAAK;AACtH,GAAG6hB,KAAK,IAAIC,KAAK,SAAS,EAAE9hB,GAAGC,GAAGC,GAAGK,GAAG,GAAGI,GAAGH,GAAGC,GAAGC,GAAG,GAAGM,GAAGC,GAAGC,GAAGC,GAAGE,GAAGmB,GAAG;AAC1E,WAASC,IAAIzC,GAAG,IAAIwC,GAAGE,IAAI,GAAGC,IAAI,KAAK,IAAI,EAAE,IAAIkf,EAAE,OAAO,UAAU,CAAClf,KAAK;AACxE,QAAIC,IAAI,EAAE,IAAI5C,CAAC;AACf,QAAI0C,KAAK,GAAG,OAAOE,IAAI,KAAK;AAC1B,UAAIA,MAAMF;AACR,cAAM,IAAI,WAAW,qBAAqB;AAC5C,MAAAC,IAAI;AAAA,IACL;AACD,WAAO,EAAE,IAAIkf,EAAE,IAAI,QAAQnf,IAAI;AAAA,EAChC;AACD,MAAI,OAAOjC,KAAK,aAAagC,IAAIhC,EAAER,GAAGwC,CAAC,IAAIA,aAAa,OAAOA,IAAIzB,EAAEyB,CAAC,IAAIvC,MAAM,WAAWohB,GAAG7e,CAAC,MAAMA,IAAIye,GAAG,SAASze,GAAG,SAAS6G,GAAG;AAClI,WAAOA,aAAa,OAAOtI,EAAEsI,CAAC,IAAIA;AAAA,EACtC,CAAG,IAAI7G,MAAM,MAAM;AACf,QAAI;AACF,aAAOjC,KAAK,CAACW,IAAIX,EAAEP,GAAG0hB,GAAG,SAAStgB,GAAG,OAAOJ,CAAC,IAAIhB;AACnD,IAAAwC,IAAI;AAAA,EACL;AACD,MAAImf,GAAGnf,CAAC,KAAKye,GAAG,SAASze,CAAC,GAAG;AAC3B,QAAIjC,GAAG;AACL,UAAI,IAAIW,IAAIlB,IAAIO,EAAEP,GAAG0hB,GAAG,SAAStgB,GAAG,OAAOJ,CAAC;AAC5C,aAAO,CAACC,EAAE,CAAC,IAAI,MAAMA,EAAEV,EAAEiC,GAAGkf,GAAG,SAAStgB,GAAG,SAASJ,CAAC,CAAC,CAAC;AAAA,IACxD;AACD,WAAO,CAACC,EAAEjB,CAAC,IAAI,MAAMiB,EAAE,OAAOuB,CAAC,CAAC,CAAC;AAAA,EAClC;AACD,MAAII,IAAI,CAAA;AACR,MAAI,OAAOJ,IAAI;AACb,WAAOI;AACT,MAAIZ;AACJ,MAAI/B,MAAM,WAAWohB,GAAG7e,CAAC;AACvB,IAAAtB,KAAKX,MAAMiC,IAAIye,GAAG,SAASze,GAAGjC,CAAC,IAAIyB,IAAI,CAAC,EAAE,OAAOQ,EAAE,SAAS,IAAIA,EAAE,KAAK,GAAG,KAAK,OAAO,OAAM,CAAE;AAAA,WACvF6e,GAAG7gB,CAAC;AACX,IAAAwB,IAAIxB;AAAA,OACD;AACH,QAAIyB,IAAI,OAAO,KAAKO,CAAC;AACrB,IAAAR,IAAIvB,IAAIwB,EAAE,KAAKxB,CAAC,IAAIwB;AAAA,EACrB;AACD,WAASC,IAAI5B,KAAK+gB,GAAG7e,CAAC,KAAKA,EAAE,WAAW,IAAIxC,IAAI,OAAOA,GAAGmC,IAAI,GAAGA,IAAIH,EAAE,QAAQ,EAAEG,GAAG;AAClF,QAAIC,IAAIJ,EAAEG,CAAC,GAAGE,IAAI,OAAOD,KAAK,YAAY,OAAOA,EAAE,QAAQ,MAAMA,EAAE,QAAQI,EAAEJ,CAAC;AAC9E,QAAI,EAAE1B,KAAK2B,MAAM,OAAO;AACtB,UAAIC,IAAI+e,GAAG7e,CAAC,IAAI,OAAOvC,KAAK,aAAaA,EAAEiC,GAAGE,CAAC,IAAIF,IAAIA,KAAK,IAAI,MAAME,IAAI,MAAMA,IAAI;AACpF,MAAAG,EAAE,IAAIxC,GAAG0C,CAAC;AACV,UAAI2G,IAAI4X;AACR,MAAA5X,EAAE,IAAIwY,IAAIrf,CAAC,GAAGgf,GAAG3e,GAAG;AAAA,QAClBP;AAAA,QACAC;AAAA,QACArC;AAAA,QACAK;AAAA,QACA;AAAA,QACAI;AAAA,QACAT,MAAM,WAAWiB,KAAKmgB,GAAG7e,CAAC,IAAI,OAAOjC;AAAA,QACrCC;AAAA,QACAC;AAAA,QACA;AAAA,QACAM;AAAA,QACAC;AAAA,QACAC;AAAA,QACAC;AAAA,QACAE;AAAA,QACAgI;AAAA,MACR,CAAO;AAAA,IACF;AAAA,EACF;AACD,SAAOxG;AACT,GAAGkf,KAAK,SAAS/hB,GAAG;AAClB,MAAI,CAACA;AACH,WAAO2hB;AACT,MAAI3hB,EAAE,YAAY,QAAQ,OAAOA,EAAE,UAAU,OAAO,OAAOA,EAAE,WAAW;AACtE,UAAM,IAAI,UAAU,+BAA+B;AACrD,MAAI,IAAIA,EAAE,WAAW2hB,GAAG;AACxB,MAAI,OAAO3hB,EAAE,UAAU,OAAOA,EAAE,YAAY,WAAWA,EAAE,YAAY;AACnE,UAAM,IAAI,UAAU,mEAAmE;AACzF,MAAIE,IAAIihB,GAAG;AACX,MAAI,OAAOnhB,EAAE,SAAS,KAAK;AACzB,QAAI,CAACohB,GAAG,KAAKD,GAAG,YAAYnhB,EAAE,MAAM;AAClC,YAAM,IAAI,UAAU,iCAAiC;AACvD,IAAAE,IAAIF,EAAE;AAAA,EACP;AACD,MAAI,IAAImhB,GAAG,WAAWjhB,CAAC,GAAGoV,IAAIqM,GAAG;AACjC,UAAQ,OAAO3hB,EAAE,UAAU,cAAcshB,GAAGthB,EAAE,MAAM,OAAOsV,IAAItV,EAAE,SAAS;AAAA,IACxE,gBAAgB,OAAOA,EAAE,kBAAkB,YAAYA,EAAE,iBAAiB2hB,GAAG;AAAA,IAC7E,WAAW,OAAO3hB,EAAE,YAAY,MAAM2hB,GAAG,YAAY,CAAC,CAAC3hB,EAAE;AAAA,IACzD,SAAS;AAAA,IACT,iBAAiB,OAAOA,EAAE,mBAAmB,YAAYA,EAAE,kBAAkB2hB,GAAG;AAAA,IAChF,WAAW,OAAO3hB,EAAE,YAAY,MAAM2hB,GAAG,YAAY3hB,EAAE;AAAA,IACvD,QAAQ,OAAOA,EAAE,UAAU,YAAYA,EAAE,SAAS2hB,GAAG;AAAA,IACrD,SAAS,OAAO3hB,EAAE,WAAW,aAAaA,EAAE,UAAU2hB,GAAG;AAAA,IACzD,kBAAkB,OAAO3hB,EAAE,oBAAoB,YAAYA,EAAE,mBAAmB2hB,GAAG;AAAA,IACnF,QAAQrM;AAAA,IACR,QAAQpV;AAAA,IACR,WAAW;AAAA,IACX,eAAe,OAAOF,EAAE,iBAAiB,aAAaA,EAAE,gBAAgB2hB,GAAG;AAAA,IAC3E,WAAW,OAAO3hB,EAAE,aAAa,YAAYA,EAAE,YAAY2hB,GAAG;AAAA,IAC9D,MAAM,OAAO3hB,EAAE,QAAQ,aAAaA,EAAE,OAAO;AAAA,IAC7C,oBAAoB,OAAOA,EAAE,sBAAsB,YAAYA,EAAE,qBAAqB2hB,GAAG;AAAA,EAC7F;AACA,GAAGK,KAAK,SAAS,GAAGhiB,GAAG;AACrB,MAAIC,IAAI,GAAGC,IAAI6hB,GAAG/hB,CAAC,GAAGO,GAAG;AACzB,SAAOL,EAAE,UAAU,cAAc,IAAIA,EAAE,QAAQD,IAAI,EAAE,IAAIA,CAAC,KAAKqhB,GAAGphB,EAAE,MAAM,MAAM,IAAIA,EAAE,QAAQK,IAAI;AAClG,MAAII,IAAI,CAAA;AACR,MAAI,OAAOV,KAAK,YAAYA,MAAM;AAChC,WAAO;AACT,MAAIO;AACJ,EAAAR,KAAKA,EAAE,eAAeqhB,KAAK7gB,IAAIR,EAAE,cAAcA,KAAK,aAAaA,IAAIQ,IAAIR,EAAE,UAAU,YAAY,WAAWQ,IAAI;AAChH,MAAIC,IAAI4gB,GAAG7gB,CAAC;AACZ,MAAIR,KAAK,oBAAoBA,KAAK,OAAOA,EAAE,kBAAkB;AAC3D,UAAM,IAAI,UAAU,+CAA+C;AACrE,MAAIU,IAAID,MAAM,WAAWT,KAAKA,EAAE;AAChC,EAAAO,MAAMA,IAAI,OAAO,KAAKN,CAAC,IAAIC,EAAE,QAAQK,EAAE,KAAKL,EAAE,IAAI;AAClD,WAAS,IAAI+gB,GAAE,GAAIjgB,IAAI,GAAGA,IAAIT,EAAE,QAAQ,EAAES,GAAG;AAC3C,QAAIC,IAAIV,EAAES,CAAC;AACX,IAAAd,EAAE,aAAaD,EAAEgB,CAAC,MAAM,QAAQugB,GAAG7gB,GAAGmhB;AAAA,MACpC7hB,EAAEgB,CAAC;AAAA,MACHA;AAAA,MACAR;AAAA,MACAC;AAAA,MACAR,EAAE;AAAA,MACFA,EAAE;AAAA,MACFA,EAAE,SAASA,EAAE,UAAU;AAAA,MACvBA,EAAE;AAAA,MACFA,EAAE;AAAA,MACFA,EAAE;AAAA,MACFA,EAAE;AAAA,MACFA,EAAE;AAAA,MACFA,EAAE;AAAA,MACFA,EAAE;AAAA,MACFA,EAAE;AAAA,MACF;AAAA,IACN,CAAK;AAAA,EACF;AACD,MAAIgB,IAAIP,EAAE,KAAKT,EAAE,SAAS,GAAGiB,IAAIjB,EAAE,mBAAmB,KAAK,MAAM;AACjE,SAAOA,EAAE,oBAAoBA,EAAE,YAAY,eAAeiB,KAAK,yBAAyBA,KAAK,oBAAoBD,EAAE,SAAS,IAAIC,IAAID,IAAI;AAC1I,GAAG+gB,KAAKjB,IAAIkB,KAAK,OAAO,UAAU,gBAAgBC,KAAK,MAAM,SAASC,KAAK;AAAA,EACzE,WAAW;AAAA,EACX,iBAAiB;AAAA,EACjB,aAAa;AAAA,EACb,YAAY;AAAA,EACZ,SAAS;AAAA,EACT,iBAAiB;AAAA,EACjB,OAAO;AAAA,EACP,SAASH,GAAG;AAAA,EACZ,WAAW;AAAA,EACX,OAAO;AAAA,EACP,mBAAmB;AAAA,EACnB,0BAA0B;AAAA,EAC1B,gBAAgB;AAAA,EAChB,aAAa;AAAA,EACb,cAAc;AAAA,EACd,oBAAoB;AACtB,GAAGI,KAAK,SAAS,GAAG;AAClB,SAAO,EAAE,QAAQ,aAAa,SAASriB,GAAGC,GAAG;AAC3C,WAAO,OAAO,aAAa,SAASA,GAAG,EAAE,CAAC;AAAA,EAC9C,CAAG;AACH,GAAGqiB,KAAK,SAAS,GAAGtiB,GAAG;AACrB,SAAO,KAAK,OAAO,KAAK,YAAYA,EAAE,SAAS,EAAE,QAAQ,GAAG,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI;AACtF,GAAGuiB,KAAK,uBAAuBC,KAAK,kBAAkBC,KAAK,SAASziB,GAAG,GAAG;AACxE,MAAIE,IAAI,EAAE,WAAW,KAAM,GAAE,IAAI,EAAE,oBAAoBF,EAAE,QAAQ,OAAO,EAAE,IAAIA,GAAGsV,IAAI,EAAE,mBAAmB,IAAI,IAAI,SAAS,EAAE,gBAAgB3U,IAAI,EAAE,MAAM,EAAE,WAAW2U,CAAC,GAAG,IAAI,IAAI7U,GAAG,IAAI,EAAE;AAC3L,MAAI,EAAE;AACJ,SAAKA,IAAI,GAAGA,IAAIE,EAAE,QAAQ,EAAEF;AAC1B,MAAAE,EAAEF,CAAC,EAAE,QAAQ,OAAO,MAAM,MAAME,EAAEF,CAAC,MAAM+hB,KAAK,IAAI,UAAU7hB,EAAEF,CAAC,MAAM8hB,OAAO,IAAI,eAAe,IAAI9hB,GAAGA,IAAIE,EAAE;AAChH,OAAKF,IAAI,GAAGA,IAAIE,EAAE,QAAQ,EAAEF;AAC1B,QAAIA,MAAM,GAAG;AACX,UAAIoN,IAAIlN,EAAEF,CAAC,GAAGO,IAAI6M,EAAE,QAAQ,IAAI,GAAG,IAAI7M,MAAM,KAAK6M,EAAE,QAAQ,GAAG,IAAI7M,IAAI,GAAG,GAAG;AAC7E,YAAM,MAAM,IAAI,EAAE,QAAQ6M,GAAGuU,GAAG,SAAS,GAAG,KAAK,GAAG,IAAI,EAAE,qBAAqB,OAAO,OAAO,IAAI,EAAE,QAAQvU,EAAE,MAAM,GAAG,CAAC,GAAGuU,GAAG,SAAS,GAAG,KAAK,GAAG,IAAIH,GAAG;AAAA,QACtJK,GAAGzU,EAAE,MAAM,IAAI,CAAC,GAAG,CAAC;AAAA,QACpB,SAASxM,GAAG;AACV,iBAAO,EAAE,QAAQA,GAAG+gB,GAAG,SAAS,GAAG,OAAO;AAAA,QAC3C;AAAA,MACT,IAAU,KAAK,EAAE,4BAA4B,MAAM,iBAAiB,IAAIC,GAAG,CAAC,IAAIxU,EAAE,QAAQ,KAAK,IAAI,OAAO,IAAIsU,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,IAAID,GAAG,KAAKhiB,GAAG,CAAC,IAAIA,EAAE,CAAC,IAAI+hB,GAAG,QAAQ/hB,EAAE,CAAC,GAAG,CAAC,IAAIA,EAAE,CAAC,IAAI;AAAA,IAC/K;AACH,SAAOA;AACT,GAAGwiB,KAAK,SAAS,GAAG1iB,GAAGC,GAAGC,GAAG;AAC3B,WAASK,IAAIL,IAAIF,IAAIsiB,GAAGtiB,GAAGC,CAAC,GAAG,IAAI,EAAE,SAAS,GAAG,KAAK,GAAG,EAAE,GAAG;AAC5D,QAAIU,GAAGH,IAAI,EAAE,CAAC;AACd,QAAIA,MAAM,QAAQP,EAAE;AAClB,MAAAU,IAAI,CAAE,EAAC,OAAOJ,CAAC;AAAA,SACZ;AACH,MAAAI,IAAIV,EAAE,eAA+B,uBAAO,OAAO,IAAI,IAAI;AAC3D,UAAIQ,IAAID,EAAE,OAAO,CAAC,MAAM,OAAOA,EAAE,OAAOA,EAAE,SAAS,CAAC,MAAM,MAAMA,EAAE,MAAM,GAAG,EAAE,IAAIA,GAAGE,IAAI,SAASD,GAAG,EAAE;AACtG,OAACR,EAAE,eAAeQ,MAAM,KAAKE,IAAI,EAAE,GAAGJ,EAAC,IAAK,CAAC,MAAMG,CAAC,KAAKF,MAAMC,KAAK,OAAOC,CAAC,MAAMD,KAAKC,KAAK,KAAKT,EAAE,eAAeS,KAAKT,EAAE,cAAcU,IAAI,IAAIA,EAAED,CAAC,IAAIH,KAAKE,MAAM,gBAAgBE,EAAEF,CAAC,IAAIF;AAAA,IACzL;AACD,IAAAA,IAAII;AAAA,EACL;AACD,SAAOJ;AACT,GAAGoiB,KAAK,SAAS3iB,GAAG,GAAGE,GAAG,GAAG;AAC3B,MAAIF,GAAG;AACL,QAAIsV,IAAIpV,EAAE,YAAYF,EAAE,QAAQ,eAAe,MAAM,IAAIA,GAAGW,IAAI,gBAAgB,IAAI,iBAAiBF,IAAIP,EAAE,QAAQ,KAAKS,EAAE,KAAK2U,CAAC,GAAG,IAAI7U,IAAI6U,EAAE,MAAM,GAAG7U,EAAE,KAAK,IAAI6U,GAAGzH,IAAI;AACxK,QAAI,GAAG;AACL,UAAI,CAAC3N,EAAE,gBAAgBgiB,GAAG,KAAK,OAAO,WAAW,CAAC,KAAK,CAAChiB,EAAE;AACxD;AACF,MAAA2N,EAAE,KAAK,CAAC;AAAA,IACT;AACD,aAAS7M,IAAI,GAAGd,EAAE,QAAQ,MAAMO,IAAI,EAAE,KAAK6U,CAAC,OAAO,QAAQtU,IAAId,EAAE,SAAS;AACxE,UAAIc,KAAK,GAAG,CAACd,EAAE,gBAAgBgiB,GAAG,KAAK,OAAO,WAAWzhB,EAAE,CAAC,EAAE,MAAM,GAAG,EAAE,CAAC,KAAK,CAACP,EAAE;AAChF;AACF,MAAA2N,EAAE,KAAKpN,EAAE,CAAC,CAAC;AAAA,IACZ;AACD,WAAOA,KAAKoN,EAAE,KAAK,MAAMyH,EAAE,MAAM7U,EAAE,KAAK,IAAI,GAAG,GAAGiiB,GAAG7U,GAAG,GAAG3N,GAAG,CAAC;AAAA,EAChE;AACH,GAAG0iB,KAAK,SAAS5iB,GAAG;AAClB,MAAI,CAACA;AACH,WAAOoiB;AACT,MAAIpiB,EAAE,YAAY,QAAQA,EAAE,YAAY,UAAU,OAAOA,EAAE,WAAW;AACpE,UAAM,IAAI,UAAU,+BAA+B;AACrD,MAAI,OAAOA,EAAE,UAAU,OAAOA,EAAE,YAAY,WAAWA,EAAE,YAAY;AACnE,UAAM,IAAI,UAAU,mEAAmE;AACzF,MAAI,IAAI,OAAOA,EAAE,UAAU,MAAMoiB,GAAG,UAAUpiB,EAAE;AAChD,SAAO;AAAA,IACL,WAAW,OAAOA,EAAE,YAAY,MAAMoiB,GAAG,YAAY,CAAC,CAACpiB,EAAE;AAAA,IACzD,iBAAiB,OAAOA,EAAE,mBAAmB,YAAYA,EAAE,kBAAkBoiB,GAAG;AAAA,IAChF,aAAa,OAAOpiB,EAAE,eAAe,YAAYA,EAAE,cAAcoiB,GAAG;AAAA,IACpE,YAAY,OAAOpiB,EAAE,cAAc,WAAWA,EAAE,aAAaoiB,GAAG;AAAA,IAChE,SAAS;AAAA,IACT,iBAAiB,OAAOpiB,EAAE,mBAAmB,YAAYA,EAAE,kBAAkBoiB,GAAG;AAAA,IAChF,OAAO,OAAOpiB,EAAE,SAAS,YAAYA,EAAE,QAAQoiB,GAAG;AAAA,IAClD,SAAS,OAAOpiB,EAAE,WAAW,aAAaA,EAAE,UAAUoiB,GAAG;AAAA,IACzD,WAAW,OAAOpiB,EAAE,aAAa,YAAYiiB,GAAG,SAASjiB,EAAE,SAAS,IAAIA,EAAE,YAAYoiB,GAAG;AAAA;AAAA,IAEzF,OAAO,OAAOpiB,EAAE,SAAS,YAAYA,EAAE,UAAU,KAAK,CAACA,EAAE,QAAQoiB,GAAG;AAAA,IACpE,mBAAmBpiB,EAAE,sBAAsB;AAAA,IAC3C,0BAA0B,OAAOA,EAAE,4BAA4B,YAAYA,EAAE,2BAA2BoiB,GAAG;AAAA,IAC3G,gBAAgB,OAAOpiB,EAAE,kBAAkB,WAAWA,EAAE,iBAAiBoiB,GAAG;AAAA,IAC5E,aAAapiB,EAAE,gBAAgB;AAAA,IAC/B,cAAc,OAAOA,EAAE,gBAAgB,YAAYA,EAAE,eAAeoiB,GAAG;AAAA,IACvE,oBAAoB,OAAOpiB,EAAE,sBAAsB,YAAYA,EAAE,qBAAqBoiB,GAAG;AAAA,EAC7F;AACA,GAAGS,KAAK,SAAS,GAAG7iB,GAAG;AACrB,MAAIC,IAAI2iB,GAAG5iB,CAAC;AACZ,MAAI,MAAM,MAAM,MAAM,QAAQ,OAAO,IAAI;AACvC,WAAOC,EAAE,eAA+B,uBAAO,OAAO,IAAI,IAAI;AAChE,WAASC,IAAI,OAAO,KAAK,WAAWuiB,GAAG,GAAGxiB,CAAC,IAAI,GAAGM,IAAIN,EAAE,eAA+B,uBAAO,OAAO,IAAI,IAAI,CAAA,GAAI,IAAI,OAAO,KAAKC,CAAC,GAAGS,IAAI,GAAGA,IAAI,EAAE,QAAQ,EAAEA,GAAG;AAC7J,QAAIH,IAAI,EAAEG,CAAC,GAAGF,IAAIkiB,GAAGniB,GAAGN,EAAEM,CAAC,GAAGP,GAAG,OAAO,KAAK,QAAQ;AACrD,IAAAM,IAAI0hB,GAAG,MAAM1hB,GAAGE,GAAGR,CAAC;AAAA,EACrB;AACD,SAAOA,EAAE,gBAAgB,KAAKM,IAAI0hB,GAAG,QAAQ1hB,CAAC;AAChD,GAAGuiB,KAAKd,IAAIe,KAAKF,IAAIG,KAAKhD,IAAIiD,KAAK;AAAA,EACjC,SAASD;AAAA,EACT,OAAOD;AAAA,EACP,WAAWD;AACb,GAAGI,KAAK9N;AACR,SAAS+N,KAAK;AACZ,OAAK,WAAW,MAAM,KAAK,UAAU,MAAM,KAAK,OAAO,MAAM,KAAK,OAAO,MAAM,KAAK,OAAO,MAAM,KAAK,WAAW,MAAM,KAAK,OAAO,MAAM,KAAK,SAAS,MAAM,KAAK,QAAQ,MAAM,KAAK,WAAW,MAAM,KAAK,OAAO,MAAM,KAAK,OAAO;AACtO;AACA,IAAIC,KAAK,qBAAqBC,KAAK,YAAYC,KAAK,qCAAqCC,KAAK;AAAA,EAC5F;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAEA;AACF,GAAGC,KAAK;AAAA,EACN;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,EAAE,OAAOD,EAAE,GAAGE,KAAK,CAAC,GAAG,EAAE,OAAOD,EAAE,GAAGE,KAAK;AAAA,EACxC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,EAAE,OAAOD,EAAE,GAAGE,KAAK;AAAA,EACjB;AAAA,EACA;AAAA,EACA;AACF,GAAGC,KAAK,KAAKC,KAAK,0BAA0BC,KAAK,gCAAgCC,KAAK;AAAA,EACpF,YAAY;AAAA,EACZ,eAAe;AACjB,GAAGC,KAAK;AAAA,EACN,YAAY;AAAA,EACZ,eAAe;AACjB,GAAGC,KAAK;AAAA,EACN,MAAM;AAAA,EACN,OAAO;AAAA,EACP,KAAK;AAAA,EACL,QAAQ;AAAA,EACR,MAAM;AAAA,EACN,SAAS;AAAA,EACT,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,WAAW;AAAA,EACX,SAAS;AACX,GAAGC,KAAKjB;AACR,SAASkB,GAAG,GAAGnkB,GAAGC,GAAG;AACnB,MAAI,KAAK,OAAO,KAAK,YAAY,aAAakjB;AAC5C,WAAO;AACT,MAAIjjB,IAAI,IAAIijB;AACZ,SAAOjjB,EAAE,MAAM,GAAGF,GAAGC,CAAC,GAAGC;AAC3B;AACAijB,GAAG,UAAU,QAAQ,SAAS,GAAGnjB,GAAGC,GAAG;AACrC,MAAI,OAAO,KAAK;AACd,UAAM,IAAI,UAAU,2CAA2C,OAAO,CAAC;AACzE,MAAIC,IAAI,EAAE,QAAQ,GAAG,GAAGK,IAAIL,MAAM,MAAMA,IAAI,EAAE,QAAQ,GAAG,IAAI,MAAM,KAAK,IAAI,EAAE,MAAMK,CAAC,GAAGI,IAAI;AAC5F,IAAE,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQA,GAAG,GAAG,GAAG,IAAI,EAAE,KAAKJ,CAAC;AACzC,MAAIC,IAAI;AACR,MAAIA,IAAIA,EAAE,KAAI,GAAI,CAACP,KAAK,EAAE,MAAM,GAAG,EAAE,WAAW,GAAG;AACjD,QAAIQ,IAAI6iB,GAAG,KAAK9iB,CAAC;AACjB,QAAIC;AACF,aAAO,KAAK,OAAOD,GAAG,KAAK,OAAOA,GAAG,KAAK,WAAWC,EAAE,CAAC,GAAGA,EAAE,CAAC,KAAK,KAAK,SAASA,EAAE,CAAC,GAAGT,IAAI,KAAK,QAAQkkB,GAAG,MAAM,KAAK,OAAO,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,KAAK,OAAO,OAAO,CAAC,KAAKlkB,MAAM,KAAK,SAAS,IAAI,KAAK,QAAQ,KAAK;AAAA,EAC7N;AACD,MAAIU,IAAI0iB,GAAG,KAAK5iB,CAAC;AACjB,MAAIE,GAAG;AACL,IAAAA,IAAIA,EAAE,CAAC;AACP,QAAI,IAAIA,EAAE;AACV,SAAK,WAAW,GAAGF,IAAIA,EAAE,OAAOE,EAAE,MAAM;AAAA,EACzC;AACD,MAAIT,KAAKS,KAAKF,EAAE,MAAM,oBAAoB,GAAG;AAC3C,QAAIQ,IAAIR,EAAE,OAAO,GAAG,CAAC,MAAM;AAC3B,IAAAQ,KAAK,EAAEN,KAAKsjB,GAAGtjB,CAAC,OAAOF,IAAIA,EAAE,OAAO,CAAC,GAAG,KAAK,UAAU;AAAA,EACxD;AACD,MAAI,CAACwjB,GAAGtjB,CAAC,MAAMM,KAAKN,KAAK,CAACujB,GAAGvjB,CAAC,IAAI;AAChC,aAASO,IAAI,IAAIC,IAAI,GAAGA,IAAIyiB,GAAG,QAAQziB,KAAK;AAC1C,UAAIC,IAAIX,EAAE,QAAQmjB,GAAGziB,CAAC,CAAC;AACvB,MAAAC,MAAM,OAAOF,MAAM,MAAME,IAAIF,OAAOA,IAAIE;AAAA,IACzC;AACD,QAAIE,GAAGmB;AACP,IAAAvB,MAAM,KAAKuB,IAAIhC,EAAE,YAAY,GAAG,IAAIgC,IAAIhC,EAAE,YAAY,KAAKS,CAAC,GAAGuB,MAAM,OAAOnB,IAAIb,EAAE,MAAM,GAAGgC,CAAC,GAAGhC,IAAIA,EAAE,MAAMgC,IAAI,CAAC,GAAG,KAAK,OAAO,mBAAmBnB,CAAC,IAAIJ,IAAI;AAC3J,aAASC,IAAI,GAAGA,IAAIwiB,GAAG,QAAQxiB,KAAK;AAClC,UAAIC,IAAIX,EAAE,QAAQkjB,GAAGxiB,CAAC,CAAC;AACvB,MAAAC,MAAM,OAAOF,MAAM,MAAME,IAAIF,OAAOA,IAAIE;AAAA,IACzC;AACD,IAAAF,MAAM,OAAOA,IAAIT,EAAE,SAAS,KAAK,OAAOA,EAAE,MAAM,GAAGS,CAAC,GAAGT,IAAIA,EAAE,MAAMS,CAAC,GAAG,KAAK,aAAa,KAAK,WAAW,KAAK,YAAY;AAC1H,QAAIwB,IAAI,KAAK,SAAS,CAAC,MAAM,OAAO,KAAK,SAAS,KAAK,SAAS,SAAS,CAAC,MAAM;AAChF,QAAI,CAACA;AACH,eAAS,IAAI,KAAK,SAAS,MAAM,IAAI,GAAGvB,IAAI,GAAGwB,IAAI,EAAE,QAAQxB,IAAIwB,GAAGxB,KAAK;AACvE,YAAIyB,IAAI,EAAEzB,CAAC;AACX,YAAIyB,KAAK,CAACA,EAAE,MAAMkhB,EAAE,GAAG;AACrB,mBAASjhB,IAAI,IAAI,IAAI,GAAGC,IAAIF,EAAE,QAAQ,IAAIE,GAAG;AAC3C,YAAAF,EAAE,WAAW,CAAC,IAAI,MAAMC,KAAK,MAAMA,KAAKD,EAAE,CAAC;AAC7C,cAAI,CAACC,EAAE,MAAMihB,EAAE,GAAG;AAChB,gBAAI5hB,IAAI,EAAE,MAAM,GAAGf,CAAC,GAAGgB,IAAI,EAAE,MAAMhB,IAAI,CAAC,GAAGiB,IAAIQ,EAAE,MAAMmhB,EAAE;AACzD,YAAA3hB,MAAMF,EAAE,KAAKE,EAAE,CAAC,CAAC,GAAGD,EAAE,QAAQC,EAAE,CAAC,CAAC,IAAID,EAAE,WAAW1B,IAAI,MAAM0B,EAAE,KAAK,GAAG,IAAI1B,IAAI,KAAK,WAAWyB,EAAE,KAAK,GAAG;AACzG;AAAA,UACD;AAAA,QACF;AAAA,MACF;AACH,SAAK,SAAS,SAAS2hB,KAAK,KAAK,WAAW,KAAK,KAAK,WAAW,KAAK,SAAS,YAAa,GAAEnhB,MAAM,KAAK,WAAWygB,GAAG,QAAQ,KAAK,QAAQ;AAC5I,QAAI9gB,IAAI,KAAK,OAAO,MAAM,KAAK,OAAO,IAAIC,IAAI,KAAK,YAAY;AAC/D,SAAK,OAAOA,IAAID,GAAG,KAAK,QAAQ,KAAK,MAAMK,MAAM,KAAK,WAAW,KAAK,SAAS,OAAO,GAAG,KAAK,SAAS,SAAS,CAAC,GAAGjC,EAAE,CAAC,MAAM,QAAQA,IAAI,MAAMA;AAAA,EAChJ;AACD,MAAI,CAACujB,GAAG,CAAC;AACP,aAAS7iB,IAAI,GAAGwB,IAAI+gB,GAAG,QAAQviB,IAAIwB,GAAGxB,KAAK;AACzC,UAAIoB,IAAImhB,GAAGviB,CAAC;AACZ,UAAIV,EAAE,QAAQ8B,CAAC,MAAM,IAAI;AACvB,YAAIC,IAAI,mBAAmBD,CAAC;AAC5B,QAAAC,MAAMD,MAAMC,IAAI,OAAOD,CAAC,IAAI9B,IAAIA,EAAE,MAAM8B,CAAC,EAAE,KAAKC,CAAC;AAAA,MAClD;AAAA,IACF;AACH,MAAI8G,IAAI7I,EAAE,QAAQ,GAAG;AACrB,EAAA6I,MAAM,OAAO,KAAK,OAAO7I,EAAE,OAAO6I,CAAC,GAAG7I,IAAIA,EAAE,MAAM,GAAG6I,CAAC;AACtD,MAAIC,IAAI9I,EAAE,QAAQ,GAAG;AACrB,MAAI8I,MAAM,MAAM,KAAK,SAAS9I,EAAE,OAAO8I,CAAC,GAAG,KAAK,QAAQ9I,EAAE,OAAO8I,IAAI,CAAC,GAAGtJ,MAAM,KAAK,QAAQkkB,GAAG,MAAM,KAAK,KAAK,IAAI1jB,IAAIA,EAAE,MAAM,GAAG8I,CAAC,KAAKtJ,MAAM,KAAK,SAAS,IAAI,KAAK,QAAQ,CAAE,IAAGQ,MAAM,KAAK,WAAWA,IAAIyjB,GAAG,CAAC,KAAK,KAAK,YAAY,CAAC,KAAK,aAAa,KAAK,WAAW,MAAM,KAAK,YAAY,KAAK,QAAQ;AAC3S,QAAI7hB,IAAI,KAAK,YAAY,IAAImH,IAAI,KAAK,UAAU;AAChD,SAAK,OAAOnH,IAAImH;AAAA,EACjB;AACD,SAAO,KAAK,OAAO,KAAK,OAAM,GAAI;AACpC;AACA,SAAS6a,GAAG,GAAG;AACb,SAAO,OAAO,KAAK,aAAa,IAAID,GAAG,CAAC,IAAI,aAAahB,KAAK,EAAE,OAAM,IAAKA,GAAG,UAAU,OAAO,KAAK,CAAC;AACvG;AACAA,GAAG,UAAU,SAAS,WAAW;AAC/B,MAAI,IAAI,KAAK,QAAQ;AACrB,QAAM,IAAI,mBAAmB,CAAC,GAAG,IAAI,EAAE,QAAQ,QAAQ,GAAG,GAAG,KAAK;AAClE,MAAInjB,IAAI,KAAK,YAAY,IAAIC,IAAI,KAAK,YAAY,IAAIC,IAAI,KAAK,QAAQ,IAAIK,IAAI,IAAI,IAAI;AACvF,OAAK,OAAOA,IAAI,IAAI,KAAK,OAAO,KAAK,aAAaA,IAAI,KAAK,KAAK,SAAS,QAAQ,GAAG,MAAM,KAAK,KAAK,WAAW,MAAM,KAAK,WAAW,MAAM,KAAK,SAASA,KAAK,MAAM,KAAK,QAAQ,KAAK,SAAS,OAAO,KAAK,SAAS,YAAY,OAAO,KAAK,KAAK,KAAK,EAAE,WAAW,IAAI2jB,GAAG,UAAU,KAAK,OAAO;AAAA,IAC9R,aAAa;AAAA,IACb,gBAAgB;AAAA,EACjB,CAAA;AACD,MAAIvjB,IAAI,KAAK,UAAU,KAAK,MAAM,KAAK;AACvC,SAAOX,KAAKA,EAAE,OAAO,EAAE,MAAM,QAAQA,KAAK,MAAM,KAAK,YAAY,CAACA,KAAKikB,GAAGjkB,CAAC,MAAMO,MAAM,MAAMA,IAAI,QAAQA,KAAK,KAAKN,KAAKA,EAAE,OAAO,CAAC,MAAM,QAAQA,IAAI,MAAMA,MAAMM,MAAMA,IAAI,KAAKL,KAAKA,EAAE,OAAO,CAAC,MAAM,QAAQA,IAAI,MAAMA,IAAIS,KAAKA,EAAE,OAAO,CAAC,MAAM,QAAQA,IAAI,MAAMA,IAAIV,IAAIA,EAAE,QAAQ,SAAS,SAASO,GAAG;AACtS,WAAO,mBAAmBA,CAAC;AAAA,EAC5B,CAAA,GAAGG,IAAIA,EAAE,QAAQ,KAAK,KAAK,GAAGX,IAAIO,IAAIN,IAAIU,IAAIT;AACjD;AACA,SAASmkB,GAAG,GAAGrkB,GAAG;AAChB,SAAOmkB,GAAG,GAAG,IAAI,EAAE,EAAE,QAAQnkB,CAAC;AAChC;AACAmjB,GAAG,UAAU,UAAU,SAAS,GAAG;AACjC,SAAO,KAAK,cAAcgB,GAAG,GAAG,IAAI,EAAE,CAAC,EAAE;AAC3C;AACAhB,GAAG,UAAU,gBAAgB,SAAS,GAAG;AACvC,MAAI,OAAO,KAAK,UAAU;AACxB,QAAInjB,IAAI,IAAImjB;AACZ,IAAAnjB,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,IAAIA;AAAA,EACzB;AACD,WAASC,IAAI,IAAIkjB,GAAI,GAAEjjB,IAAI,OAAO,KAAK,IAAI,GAAGK,IAAI,GAAGA,IAAIL,EAAE,QAAQK,KAAK;AACtE,QAAI,IAAIL,EAAEK,CAAC;AACX,IAAAN,EAAE,CAAC,IAAI,KAAK,CAAC;AAAA,EACd;AACD,MAAIA,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS;AAC9B,WAAOA,EAAE,OAAOA,EAAE,OAAM,GAAIA;AAC9B,MAAI,EAAE,WAAW,CAAC,EAAE,UAAU;AAC5B,aAASU,IAAI,OAAO,KAAK,CAAC,GAAGH,IAAI,GAAGA,IAAIG,EAAE,QAAQH,KAAK;AACrD,UAAIC,IAAIE,EAAEH,CAAC;AACX,MAAAC,MAAM,eAAeR,EAAEQ,CAAC,IAAI,EAAEA,CAAC;AAAA,IAChC;AACD,WAAOwjB,GAAGhkB,EAAE,QAAQ,KAAKA,EAAE,YAAY,CAACA,EAAE,aAAaA,EAAE,WAAW,KAAKA,EAAE,OAAOA,EAAE,WAAWA,EAAE,OAAOA,EAAE,OAAQ,GAAEA;AAAA,EACrH;AACD,MAAI,EAAE,YAAY,EAAE,aAAaA,EAAE,UAAU;AAC3C,QAAI,CAACgkB,GAAG,EAAE,QAAQ,GAAG;AACnB,eAASvjB,IAAI,OAAO,KAAK,CAAC,GAAG,IAAI,GAAG,IAAIA,EAAE,QAAQ,KAAK;AACrD,YAAIM,IAAIN,EAAE,CAAC;AACX,QAAAT,EAAEe,CAAC,IAAI,EAAEA,CAAC;AAAA,MACX;AACD,aAAOf,EAAE,OAAOA,EAAE,OAAM,GAAIA;AAAA,IAC7B;AACD,QAAIA,EAAE,WAAW,EAAE,UAAU,CAAC,EAAE,QAAQ,CAAC+jB,GAAG,EAAE,QAAQ,GAAG;AACvD,eAASthB,KAAK,EAAE,YAAY,IAAI,MAAM,GAAG,GAAGA,EAAE,UAAU,EAAE,EAAE,OAAOA,EAAE;AACnE;AACF,QAAE,SAAS,EAAE,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,KAAKA,EAAE,CAAC,MAAM,MAAMA,EAAE,QAAQ,EAAE,GAAGA,EAAE,SAAS,KAAKA,EAAE,QAAQ,EAAE,GAAGzC,EAAE,WAAWyC,EAAE,KAAK,GAAG;AAAA,IAC/I;AACC,MAAAzC,EAAE,WAAW,EAAE;AACjB,QAAIA,EAAE,SAAS,EAAE,QAAQA,EAAE,QAAQ,EAAE,OAAOA,EAAE,OAAO,EAAE,QAAQ,IAAIA,EAAE,OAAO,EAAE,MAAMA,EAAE,WAAW,EAAE,YAAY,EAAE,MAAMA,EAAE,OAAO,EAAE,MAAMA,EAAE,YAAYA,EAAE,QAAQ;AAC9J,UAAIgB,IAAIhB,EAAE,YAAY,IAAIiB,IAAIjB,EAAE,UAAU;AAC1C,MAAAA,EAAE,OAAOgB,IAAIC;AAAA,IACd;AACD,WAAOjB,EAAE,UAAUA,EAAE,WAAW,EAAE,SAASA,EAAE,OAAOA,EAAE,OAAM,GAAIA;AAAA,EACjE;AACD,MAAIkB,IAAIlB,EAAE,YAAYA,EAAE,SAAS,OAAO,CAAC,MAAM,KAAKoB,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,OAAO,CAAC,MAAM,KAAKmB,IAAInB,KAAKF,KAAKlB,EAAE,QAAQ,EAAE,UAAUwC,IAAID,GAAG,IAAIvC,EAAE,YAAYA,EAAE,SAAS,MAAM,GAAG,KAAK,IAAIyC,IAAI,EAAE,YAAY,EAAE,SAAS,MAAM,GAAG,KAAK,CAAA,GAAIC,IAAI1C,EAAE,YAAY,CAACgkB,GAAGhkB,EAAE,QAAQ;AACvR,MAAI0C,MAAM1C,EAAE,WAAW,IAAIA,EAAE,OAAO,MAAMA,EAAE,SAAS,EAAE,CAAC,MAAM,KAAK,EAAE,CAAC,IAAIA,EAAE,OAAO,EAAE,QAAQA,EAAE,IAAI,IAAIA,EAAE,OAAO,IAAI,EAAE,aAAa,EAAE,WAAW,MAAM,EAAE,OAAO,MAAM,EAAE,SAASyC,EAAE,CAAC,MAAM,KAAKA,EAAE,CAAC,IAAI,EAAE,OAAOA,EAAE,QAAQ,EAAE,IAAI,IAAI,EAAE,OAAO,OAAOF,IAAIA,MAAME,EAAE,CAAC,MAAM,MAAM,EAAE,CAAC,MAAM,MAAMrB;AACxR,IAAApB,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,KAAK,EAAE,OAAOA,EAAE,MAAMA,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,KAAK,EAAE,WAAWA,EAAE,UAAUA,EAAE,SAAS,EAAE,QAAQA,EAAE,QAAQ,EAAE,OAAO,IAAIyC;AAAA,WACjKA,EAAE;AACT,UAAM,IAAI,CAAA,IAAK,EAAE,OAAO,IAAI,EAAE,OAAOA,CAAC,GAAGzC,EAAE,SAAS,EAAE,QAAQA,EAAE,QAAQ,EAAE;AAAA,WACnE,EAAE,UAAU,MAAM;AACzB,QAAI0C,GAAG;AACL,MAAA1C,EAAE,OAAO,EAAE,MAAK,GAAIA,EAAE,WAAWA,EAAE;AACnC,UAAI2C,IAAI3C,EAAE,QAAQA,EAAE,KAAK,QAAQ,GAAG,IAAI,IAAIA,EAAE,KAAK,MAAM,GAAG,IAAI;AAChE,MAAA2C,MAAM3C,EAAE,OAAO2C,EAAE,MAAK,GAAI3C,EAAE,WAAW2C,EAAE,MAAO,GAAE3C,EAAE,OAAOA,EAAE;AAAA,IAC9D;AACD,WAAOA,EAAE,SAAS,EAAE,QAAQA,EAAE,QAAQ,EAAE,QAAQA,EAAE,aAAa,QAAQA,EAAE,WAAW,UAAUA,EAAE,QAAQA,EAAE,WAAWA,EAAE,WAAW,OAAOA,EAAE,SAASA,EAAE,SAAS,MAAMA,EAAE,OAAOA,EAAE,OAAQ,GAAEA;AAAA,EAC3L;AACD,MAAI,CAAC,EAAE;AACL,WAAOA,EAAE,WAAW,MAAMA,EAAE,SAASA,EAAE,OAAO,MAAMA,EAAE,SAASA,EAAE,OAAO,MAAMA,EAAE,OAAOA,EAAE,OAAQ,GAAEA;AACrG,WAAS,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG4C,KAAK5C,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,OAAO,MAAM,OAAO,MAAM,SAAS,MAAM,IAAIgC,IAAI,GAAGC,IAAI,EAAE,QAAQA,KAAK,GAAGA;AACzI,QAAI,EAAEA,CAAC,GAAG,MAAM,MAAM,EAAE,OAAOA,GAAG,CAAC,IAAI,MAAM,QAAQ,EAAE,OAAOA,GAAG,CAAC,GAAGD,OAAOA,MAAM,EAAE,OAAOC,GAAG,CAAC,GAAGD;AACpG,MAAI,CAACO,KAAK,CAACC;AACT,WAAOR,KAAKA;AACV,QAAE,QAAQ,IAAI;AAClB,EAAAO,KAAK,EAAE,CAAC,MAAM,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,OAAO,CAAC,MAAM,QAAQ,EAAE,QAAQ,EAAE,GAAGK,KAAK,EAAE,KAAK,GAAG,EAAE,OAAO,EAAE,MAAM,OAAO,EAAE,KAAK,EAAE;AACxH,MAAIV,IAAI,EAAE,CAAC,MAAM,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,OAAO,CAAC,MAAM;AAClD,MAAIQ,GAAG;AACL,IAAA1C,EAAE,WAAWkC,IAAI,KAAK,EAAE,SAAS,EAAE,MAAK,IAAK,IAAIlC,EAAE,OAAOA,EAAE;AAC5D,QAAI2C,IAAI3C,EAAE,QAAQA,EAAE,KAAK,QAAQ,GAAG,IAAI,IAAIA,EAAE,KAAK,MAAM,GAAG,IAAI;AAChE,IAAA2C,MAAM3C,EAAE,OAAO2C,EAAE,MAAK,GAAI3C,EAAE,WAAW2C,EAAE,MAAO,GAAE3C,EAAE,OAAOA,EAAE;AAAA,EAC9D;AACD,SAAOuC,IAAIA,KAAKvC,EAAE,QAAQ,EAAE,QAAQuC,KAAK,CAACL,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,IAAIlC,EAAE,WAAW,EAAE,KAAK,GAAG,KAAKA,EAAE,WAAW,MAAMA,EAAE,OAAO,QAAQA,EAAE,aAAa,QAAQA,EAAE,WAAW,UAAUA,EAAE,QAAQA,EAAE,WAAWA,EAAE,WAAW,OAAOA,EAAE,SAASA,EAAE,SAAS,MAAMA,EAAE,OAAO,EAAE,QAAQA,EAAE,MAAMA,EAAE,UAAUA,EAAE,WAAW,EAAE,SAASA,EAAE,OAAOA,EAAE,OAAQ,GAAEA;AACxV;AACAkjB,GAAG,UAAU,YAAY,WAAW;AAClC,MAAI,IAAI,KAAK,MAAMnjB,IAAIqjB,GAAG,KAAK,CAAC;AAChC,EAAArjB,MAAMA,IAAIA,EAAE,CAAC,GAAGA,MAAM,QAAQ,KAAK,OAAOA,EAAE,OAAO,CAAC,IAAI,IAAI,EAAE,OAAO,GAAG,EAAE,SAASA,EAAE,MAAM,IAAI,MAAM,KAAK,WAAW;AACvH;AACA,IAAIskB,KAAKH,IAAII,KAAKF,IAAIG,KAAKJ;AAC3B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,IAAIK,KAAK;AAAA,EACP,OAAOH;AAAA,EACP,QAAQE;AAAA,EACR,SAASD;AACX;AACA3R,EAAE,gBAAgB;AAClBA,EAAE,mCAAmC;AACrC,IAAI8R,KAAK,IAAIC,KAAK;AAClB,SAASC,GAAG,GAAG;AACb,MAAI5kB;AACJ,MAAI,CAAC0kB,IAAI;AACP,QAAI9R,EAAE,QAAQ,aAAY,EAAG,UAAU,YAAa,EAAC,QAAQ,QAAQ,IAAI,IAAI;AAC3E,UAAI3S,IAAI;AAAA,QACN;AAAA,qBACa0kB,KAAK,UAAU,IAAI;AAAA;AAAA;AAAA,QAGhC;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACR;AACM,OAAC3kB,IAAI,WAAW,SAAS,IAAI,MAAMA,GAAGC,CAAC;AAAA,IACxC;AACC,iBAAW,WAAW,WAAW,QAAQ,IAAI,YAAY0kB,KAAK,QAAQ,IAAI,2BAA2B;AACvG,IAAAD,KAAK;AAAA,EACN;AACH;AACA,IAAIG;AACJ,SAASC,KAAK;AACZ,SAAO,OAAOD,KAAK,QAAQA,KAAK,WAAW;AACzC,QAAI7kB,IAAI;AAAA,MACN,SAAS;AAAA,MACT,8BAA8B4S,EAAE;AAAA,IACtC;AACI,QAAI;AACF,UAAI,CAACA,EAAE,QAAQ,yBAA0B;AACvC,eAAO;AACT,UAAI,IAAIA,EAAE,QAAQ,aAAY,GAAI1S,IAAI,EAAE,WAAW,SAASF,CAAC,KAAK,EAAE,WAAW,sBAAsBA,CAAC,GAAG,IAAI,CAAC,EAAEE,KAAKA,EAAE,uBAAuB;AAC9I,UAAIA,GAAG;AACL,YAAIoV,IAAIpV,EAAE,aAAa,oBAAoB;AAC3C,QAAAoV,KAAKA,EAAE;MACR;AACD,aAAOpV,IAAI,MAAM;AAAA,IACvB,QAAY;AACN,aAAO;AAAA,IACR;AAAA,EACL,EAAK,IAAG2kB;AACR;AACA,IAAIE,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAAK,WAAWC,KAA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AE,CAAC,IAAIL,EAAE,CAAC,IAAIK,EAAE,CAAC,IAAIL,EAAE,CAAC,IAAIK,EAAE,EAAE,IAAIL,EAAE,CAAC,IAAIK,EAAE,EAAE,GAAGN,EAAE,CAAC,IAAIC,EAAE,CAAC,IAAIK,EAAE,CAAC,IAAIL,EAAE,CAAC,IAAIK,EAAE,CAAC,IAAIL,EAAE,CAAC,IAAIK,EAAE,EAAE,IAAIL,EAAE,CAAC,IAAIK,EAAE,EAAE,GAAGN,EAAE,CAAC,IAAIC,EAAE,CAAC,IAAIK,EAAE,CAAC,IAAIL,EAAE,CAAC,IAAIK,EAAE,CAAC,IAAIL,EAAE,CAAC,IAAIK,EAAE,EAAE,IAAIL,EAAE,CAAC,IAAIK,EAAE,EAAE,GAAGN,EAAE,CAAC,IAAIC,EAAE,CAAC,IAAIK,EAAE,CAAC,IAAIL,EAAE,CAAC,IAAIK,EAAE,CAAC,IAAIL,EAAE,CAAC,IAAIK,EAAE,EAAE,IAAIL,EAAE,CAAC,IAAIK,EAAE,EAAE,IAAIL,EAAE,CAAC,GAAGD,EAAE,EAAE,IAAIC,EAAE,EAAE,IAAIK,EAAE,CAAC,IAAIL,EAAE,EAAE,IAAIK,EAAE,CAAC,IAAIL,EAAE,EAAE,IAAIK,EAAE,EAAE,IAAIL,EAAE,EAAE,IAAIK,EAAE,EAAE,GAAGN,EAAE,EAAE,IAAIC,EAAE,EAAE,IAAIK,EAAE,CAAC,IAAIL,EAAE,EAAE,IAAIK,EAAE,CAAC,IAAIL,EAAE,EAAE,IAAIK,EAAE,EAAE,IAAIL,EAAE,EAAE,IAAIK,EAAE,EAAE,GAAGN,EAAE,EAAE,IAAIC,EAAE,EAAE,IAAIK,EAAE,CAAC,IAAIL,EAAE,EAAE,IAAIK,EAAE,CAAC,IAAIL,EAAE,EAAE,IAAIK,EAAE,EAAE,IAAIL,EAAE,EAAE,IAAIK,EAAE,EAAE,GAAGN,EAAE,EAAE,IAAIC,EAAE,EAAE,IAAIK,EAAE,CAAC,IAAIL,EAAE,EAAE,IAAIK,EAAE,CAAC,IAAIL,EAAE,EAAE,IAAIK,EAAE,EAAE,IAAIL,EAAE,EAAE,IAAIK,EAAE,EAAE,GAAGN,EAAE,EAAE,IAAIC,EAAE,EAAE,IAAIK,EAAE,CAAC,IAAIL,EAAE,EAAE,IAAIK,EA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"}
1
+ {"version":3,"file":"annotorious-react.es17.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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"}