@eva/plugin-renderer-lottie 1.2.7-editor.9 → 1.2.7-fix.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/EVA.plugin.renderer.lottie.js +2 -125
- package/dist/EVA.plugin.renderer.lottie.js.map +1 -0
- package/dist/EVA.plugin.renderer.lottie.min.js +1 -1
- package/dist/miniprogram.js +5231 -0
- package/dist/plugin-renderer-lottie.cjs.js +1 -10
- package/dist/plugin-renderer-lottie.cjs.js.map +1 -0
- package/dist/plugin-renderer-lottie.cjs.prod.js +3 -3
- package/dist/plugin-renderer-lottie.d.ts +0 -1
- package/dist/plugin-renderer-lottie.esm.js +0 -9
- package/dist/plugin-renderer-lottie.esm.js.map +1 -0
- package/package.json +3 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-renderer-lottie.esm.js","sources":["../lib/lottie-core.js","../lib/lottie-pixi.js","../lib/utils.js","../lib/LottieSystem.ts","../lib/Lottie.ts"],"sourcesContent":["function t(t) {\n return Object.prototype.toString.call(t);\n}\nconst s = {\n copyJSON: function (t) {\n return JSON.parse(JSON.stringify(t));\n },\n isArray: (function () {\n let s = t([]);\n return function (e) {\n return t(e) === s;\n };\n })(),\n isString: (function () {\n let s = t('s');\n return function (e) {\n return t(e) === s;\n };\n })(),\n isNumber: (function () {\n let s = t(1);\n return function (e) {\n return t(e) === s;\n };\n })(),\n isFunction: (function () {\n let s = t(function () {});\n return function (e) {\n return t(e) === s;\n };\n })(),\n isUndefined: function (t) {\n return void 0 === t;\n },\n isBoolean: (function () {\n let s = t(!0);\n return function (e) {\n return t(e) === s;\n };\n })(),\n isObject: (function () {\n let s = t({});\n return function (e) {\n return t(e) === s;\n };\n })(),\n random: function (t, s) {\n return this.isArray(t)\n ? t[~~(Math.random() * t.length)]\n : (this.isNumber(s) || ((s = t || 1), (t = 0)), t + Math.random() * (s - t));\n },\n euclideanModulo: function (t, s) {\n return ((t % s) + s) % s;\n },\n codomainBounce: function (t, s, e) {\n return t < s ? 2 * s - t : t > e ? 2 * e - t : t;\n },\n clamp: function (t, s, e) {\n return t < s ? s : t > e ? e : t;\n },\n inRange: (t, s, e) => t >= s && t <= e,\n getAssets(t, s) {\n for (let e = 0; e < s.length; e++) if (t === s[e].id) return s[e];\n return console.error('have not assets name as', t), {};\n },\n rgb2hex: t => (t[0] << 16) + (t[1] << 8) + (0 | t[2]),\n};\nclass e {\n constructor() {\n (this.listeners = {}), (this.addEventListener = this.on), (this.removeEventListener = this.off);\n }\n on(t, e) {\n return s.isFunction(e)\n ? (s.isUndefined(this.listeners[t]) && (this.listeners[t] = []), this.listeners[t].push(e), this)\n : this;\n }\n off(t, e) {\n if (s.isUndefined(this.listeners[t])) return this;\n const i = this.listeners[t];\n let h = i.length;\n if (h > 0)\n if (e) for (; h--; ) i[h] === e && i.splice(h, 1);\n else i.length = 0;\n return this;\n }\n once(t, e) {\n if (!s.isFunction(e)) return this;\n const i = s => {\n e(s), this.off(t, i);\n };\n return this.on(t, i), this;\n }\n emit(t, ...e) {\n if (s.isUndefined(this.listeners[t])) return this;\n const i = (this.listeners[t] || []).slice(0);\n for (let t = 0; t < i.length; t++) i[t].apply(this, e);\n return this;\n }\n}\nconst i = {},\n h = { Ajax: 'Ajax', Texture: 'Texture' };\nvar r = {\n Type: h,\n registerLoaderByType: function (t, s) {\n i[t] = s;\n },\n};\nfunction a(t, s, e) {\n let i,\n h,\n r,\n p,\n c,\n d,\n u = t.length;\n for (h = 0; h < u; h += 1)\n if (((i = t[h]), 'ks' in i && !i.completed)) {\n if (((i.completed = !0), i.tt && (t[h - 1].td = i.tt), i.hasMask)) {\n let t = i.masksProperties;\n for (p = t.length, r = 0; r < p; r += 1)\n if (t[r].pt.k.i) l(t[r].pt.k);\n else\n for (d = t[r].pt.k.length, c = 0; c < d; c += 1)\n t[r].pt.k[c].s && l(t[r].pt.k[c].s[0]), t[r].pt.k[c].e && l(t[r].pt.k[c].e[0]);\n }\n 0 === i.ty ? ((i.layers = n(i.refId, s)), a(i.layers, s)) : 4 === i.ty ? o(i.shapes) : 5 == i.ty && m(i);\n }\n}\nfunction n(t, s) {\n let e = 0,\n i = s.length;\n for (; e < i; ) {\n if (s[e].id === t)\n return s[e].layers.__used ? JSON.parse(JSON.stringify(s[e].layers)) : ((s[e].layers.__used = !0), s[e].layers);\n e += 1;\n }\n}\nfunction o(t) {\n let s, e, i;\n for (s = t.length - 1; s >= 0; s -= 1)\n if ('sh' == t[s].ty)\n if (t[s].ks.k.i) l(t[s].ks.k);\n else\n for (i = t[s].ks.k.length, e = 0; e < i; e += 1)\n t[s].ks.k[e].s && l(t[s].ks.k[e].s[0]), t[s].ks.k[e].e && l(t[s].ks.k[e].e[0]);\n else 'gr' == t[s].ty && o(t[s].it);\n}\nfunction l(t) {\n let s,\n e = t.i.length;\n for (s = 0; s < e; s += 1)\n (t.i[s][0] += t.v[s][0]), (t.i[s][1] += t.v[s][1]), (t.o[s][0] += t.v[s][0]), (t.o[s][1] += t.v[s][1]);\n}\nfunction p(t, s) {\n let e = s ? s.split('.') : [100, 100, 100];\n return (\n t[0] > e[0] || (!(e[0] > t[0]) && (t[1] > e[1] || (!(e[1] > t[1]) && (t[2] > e[2] || (!(e[2] > t[2]) && void 0)))))\n );\n}\nlet c = (function () {\n let t = [4, 4, 14];\n function s(t) {\n let s = t.t.d;\n t.t.d = { k: [{ s: s, t: 0 }] };\n }\n function e(t) {\n let e,\n i = t.length;\n for (e = 0; e < i; e += 1) 5 === t[e].ty && s(t[e]);\n }\n return function (s) {\n if (p(t, s.v) && (e(s.layers), s.assets)) {\n let t,\n i = s.assets.length;\n for (t = 0; t < i; t += 1) s.assets[t].layers && e(s.assets[t].layers);\n }\n };\n })(),\n d = (function () {\n let t = [4, 7, 99];\n return function (s) {\n if (s.chars && !p(t, s.v)) {\n let t,\n e,\n i,\n h,\n r,\n a = s.chars.length;\n for (t = 0; t < a; t += 1)\n if (s.chars[t].data && s.chars[t].data.shapes)\n for (r = s.chars[t].data.shapes[0].it, i = r.length, e = 0; e < i; e += 1)\n (h = r[e].ks.k), h.__converted || (l(r[e].ks.k), (h.__converted = !0));\n }\n };\n })(),\n u = (function () {\n let t = [4, 1, 9];\n function s(t) {\n let e,\n i,\n h,\n r = t.length;\n for (e = 0; e < r; e += 1)\n if ('gr' === t[e].ty) s(t[e].it);\n else if ('fl' === t[e].ty || 'st' === t[e].ty)\n if (t[e].c.k && t[e].c.k[0].i)\n for (h = t[e].c.k.length, i = 0; i < h; i += 1)\n t[e].c.k[i].s &&\n ((t[e].c.k[i].s[0] /= 255),\n (t[e].c.k[i].s[1] /= 255),\n (t[e].c.k[i].s[2] /= 255),\n (t[e].c.k[i].s[3] /= 255)),\n t[e].c.k[i].e &&\n ((t[e].c.k[i].e[0] /= 255),\n (t[e].c.k[i].e[1] /= 255),\n (t[e].c.k[i].e[2] /= 255),\n (t[e].c.k[i].e[3] /= 255));\n else (t[e].c.k[0] /= 255), (t[e].c.k[1] /= 255), (t[e].c.k[2] /= 255), (t[e].c.k[3] /= 255);\n }\n function e(t) {\n let e,\n i = t.length;\n for (e = 0; e < i; e += 1) 4 === t[e].ty && s(t[e].shapes);\n }\n return function (s) {\n if (p(t, s.v) && (e(s.layers), s.assets)) {\n let t,\n i = s.assets.length;\n for (t = 0; t < i; t += 1) s.assets[t].layers && e(s.assets[t].layers);\n }\n };\n })(),\n f = (function () {\n let t = [4, 4, 18];\n function s(t) {\n let e, i, h;\n for (e = t.length - 1; e >= 0; e -= 1)\n if ('sh' == t[e].ty)\n if (t[e].ks.k.i) t[e].ks.k.c = t[e].closed;\n else\n for (h = t[e].ks.k.length, i = 0; i < h; i += 1)\n t[e].ks.k[i].s && (t[e].ks.k[i].s[0].c = t[e].closed),\n t[e].ks.k[i].e && (t[e].ks.k[i].e[0].c = t[e].closed);\n else 'gr' == t[e].ty && s(t[e].it);\n }\n function e(t) {\n let e,\n i,\n h,\n r,\n a,\n n,\n o = t.length;\n for (i = 0; i < o; i += 1) {\n if (((e = t[i]), e.hasMask)) {\n let t = e.masksProperties;\n for (r = t.length, h = 0; h < r; h += 1)\n if (t[h].pt.k.i) t[h].pt.k.c = t[h].cl;\n else\n for (n = t[h].pt.k.length, a = 0; a < n; a += 1)\n t[h].pt.k[a].s && (t[h].pt.k[a].s[0].c = t[h].cl), t[h].pt.k[a].e && (t[h].pt.k[a].e[0].c = t[h].cl);\n }\n 4 === e.ty && s(e.shapes);\n }\n }\n return function (s) {\n if (p(t, s.v) && (e(s.layers), s.assets)) {\n let t,\n i = s.assets.length;\n for (t = 0; t < i; t += 1) s.assets[t].layers && e(s.assets[t].layers);\n }\n };\n })();\nfunction m(t, s) {\n 0 !== t.t.a.length || 'm' in t.t.p || (t.singleShape = !0);\n}\nvar g = {\n completeData: function (t, s) {\n t.__complete || (u(t), c(t), d(t), f(t), a(t.layers, t.assets), (t.__complete = !0));\n },\n checkColors: u,\n checkChars: d,\n checkShapes: f,\n completeLayers: a,\n};\nlet y = 'function' == typeof Float32Array;\nfunction v(t, s) {\n return 1 - 3 * s + 3 * t;\n}\nfunction _(t, s) {\n return 3 * s - 6 * t;\n}\nfunction k(t) {\n return 3 * t;\n}\nfunction S(t, s, e) {\n return ((v(s, e) * t + _(s, e)) * t + k(s)) * t;\n}\nfunction x(t, s, e) {\n return 3 * v(s, e) * t * t + 2 * _(s, e) * t + k(s);\n}\nfunction M(t, s, e, i) {\n if (!(0 <= t && t <= 1 && 0 <= e && e <= 1)) throw new Error('bezier x values must be in [0, 1] range');\n (this.mX1 = t),\n (this.mY1 = s),\n (this.mX2 = e),\n (this.mY2 = i),\n (this.sampleValues = y ? new Float32Array(11) : new Array(11)),\n this._preCompute(),\n (this.get = this.get.bind(this));\n}\n(M.prototype._preCompute = function () {\n if (this.mX1 !== this.mY1 || this.mX2 !== this.mY2)\n for (let t = 0; t < 11; ++t) this.sampleValues[t] = S(0.1 * t, this.mX1, this.mX2);\n}),\n (M.prototype._getTForX = function (t) {\n let s = 0,\n e = 1;\n for (; 10 !== e && this.sampleValues[e] <= t; ++e) s += 0.1;\n --e;\n let i = s + ((t - this.sampleValues[e]) / (this.sampleValues[e + 1] - this.sampleValues[e])) * 0.1,\n h = x(i, this.mX1, this.mX2);\n return h >= 0.001\n ? (function (t, s, e, i) {\n for (let h = 0; h < 4; ++h) {\n let h = x(s, e, i);\n if (0 === h) return s;\n s -= (S(s, e, i) - t) / h;\n }\n return s;\n })(t, i, this.mX1, this.mX2)\n : 0 === h\n ? i\n : (function (t, s, e, i, h) {\n let r,\n a,\n n = 0;\n do {\n (a = s + (e - s) / 2), (r = S(a, i, h) - t), r > 0 ? (e = a) : (s = a);\n } while (Math.abs(r) > 1e-7 && ++n < 10);\n return a;\n })(t, s, s + 0.1, this.mX1, this.mX2);\n }),\n (M.prototype.get = function (t) {\n return this.mX1 === this.mY1 && this.mX2 === this.mY2\n ? t\n : 0 === t\n ? 0\n : 1 === t\n ? 1\n : S(this._getTForX(t), this.mY1, this.mY2);\n });\nconst P = {};\nvar T = {\n getBezierEasing: function (t, s, e, i, h) {\n const r = h || ('bez_' + t + '_' + s + '_' + e + '_' + i).replace(/\\./g, 'p');\n if (P[r]) return P[r];\n const a = new M(t, s, e, i);\n return (P[r] = a), a;\n },\n};\nlet w;\nfunction D(t) {\n return new Array(t);\n}\nw =\n 'function' == typeof Uint8ClampedArray && 'function' == typeof Float32Array\n ? function (t, s) {\n return 'float32' === t\n ? new Float32Array(s)\n : 'int16' === t\n ? new Int16Array(s)\n : 'uint8c' === t\n ? new Uint8ClampedArray(s)\n : void 0;\n }\n : function (t, s) {\n let e = 0;\n const i = [];\n let h;\n switch (t) {\n case 'int16':\n case 'uint8c':\n h = 1;\n break;\n default:\n h = 1.1;\n }\n for (e = 0; e < s; e += 1) i.push(h);\n return i;\n };\nvar L = {\n double: function (t) {\n return t.concat(D(t.length));\n },\n};\nconst F = function (t, s, e) {\n let i = 0,\n h = t,\n r = D(h);\n return {\n newElement: function () {\n let t;\n return i ? ((i -= 1), (t = r[i])) : (t = s()), t;\n },\n release: function (t) {\n i === h && ((r = L.double(r)), (h *= 2)), e && e(t), (r[i] = t), (i += 1);\n },\n };\n};\nconst A = F(8, function () {\n return w('float32', 2);\n});\nclass C {\n constructor() {\n (this.c = !1),\n (this._length = 0),\n (this._maxLength = 8),\n (this.v = D(this._maxLength)),\n (this.o = D(this._maxLength)),\n (this.i = D(this._maxLength));\n }\n setPathData(t, s) {\n (this.c = t), this.setLength(s);\n let e = 0;\n for (; e < s; ) (this.v[e] = A.newElement()), (this.o[e] = A.newElement()), (this.i[e] = A.newElement()), (e += 1);\n }\n setLength(t) {\n for (; this._maxLength < t; ) this.doubleArrayLength();\n this._length = t;\n }\n doubleArrayLength() {\n (this.v = this.v.concat(D(this._maxLength))),\n (this.i = this.i.concat(D(this._maxLength))),\n (this.o = this.o.concat(D(this._maxLength))),\n (this._maxLength *= 2);\n }\n setXYAt(t, s, e, i, h) {\n let r;\n switch (\n ((this._length = Math.max(this._length, i + 1)), this._length >= this._maxLength && this.doubleArrayLength(), e)\n ) {\n case 'v':\n r = this.v;\n break;\n case 'i':\n r = this.i;\n break;\n case 'o':\n r = this.o;\n }\n (!r[i] || (r[i] && !h)) && (r[i] = A.newElement()), (r[i][0] = t), (r[i][1] = s);\n }\n setTripleAt(t, s, e, i, h, r, a, n) {\n this.setXYAt(t, s, 'v', a, n), this.setXYAt(e, i, 'o', a, n), this.setXYAt(h, r, 'i', a, n);\n }\n reverse() {\n const t = new C();\n t.setPathData(this.c, this._length);\n const s = this.v,\n e = this.o,\n i = this.i;\n let h = 0;\n this.c && (t.setTripleAt(s[0][0], s[0][1], i[0][0], i[0][1], e[0][0], e[0][1], 0, !1), (h = 1));\n let r = this._length - 1;\n const a = this._length;\n for (let n = h; n < a; n += 1) t.setTripleAt(s[r][0], s[r][1], i[r][0], i[r][1], e[r][0], e[r][1], n, !1), (r -= 1);\n return t;\n }\n}\nconst b = F(\n 4,\n function () {\n return new C();\n },\n function (t) {\n const s = t._length;\n for (let e = 0; e < s; e += 1)\n A.release(t.v[e]), A.release(t.i[e]), A.release(t.o[e]), (t.v[e] = null), (t.i[e] = null), (t.o[e] = null);\n (t._length = 0), (t.c = !1);\n },\n);\nb.clone = function (t) {\n const s = b.newElement(),\n e = void 0 === t._length ? t.v.length : t._length;\n s.setLength(e), (s.c = t.c);\n for (let i = 0; i < e; i += 1) s.setTripleAt(t.v[i][0], t.v[i][1], t.o[i][0], t.o[i][1], t.i[i][0], t.i[i][1], i);\n return s;\n};\nclass I {\n constructor() {\n (this._length = 0), (this._maxLength = 4), (this.shapes = D(this._maxLength));\n }\n addShape(t) {\n this._length === this._maxLength &&\n ((this.shapes = this.shapes.concat(D(this._maxLength))), (this._maxLength *= 2)),\n (this.shapes[this._length] = t),\n (this._length += 1);\n }\n releaseShapes() {\n for (let t = 0; t < this._length; t += 1) b.release(this.shapes[t]);\n this._length = 0;\n }\n}\nlet E = 0,\n V = 4,\n N = D(V);\nvar q = {\n newShapeCollection: function () {\n let t;\n return E ? ((E -= 1), (t = N[E])) : (t = new I()), t;\n },\n release: function (t) {\n const s = t._length;\n for (let e = 0; e < s; e += 1) b.release(t.shapes[e]);\n (t._length = 0), E === V && ((N = L.double(N)), (V *= 2)), (N[E] = t), (E += 1);\n },\n};\nclass O {\n outTypeExpressionMode() {\n (this._hasOutTypeExpression = !0), this.container && this.container.outTypeExpressionMode();\n }\n addDynamicProperty(t) {\n -1 === this.dynamicProperties.indexOf(t) &&\n (this.dynamicProperties.push(t),\n this.container.addDynamicProperty(this),\n (this._isAnimated = !0),\n t._hasOutTypeExpression && this.outTypeExpressionMode());\n }\n iterateDynamicProperties(t) {\n this._mdf = !1;\n const s = this.dynamicProperties.length;\n for (let e = 0; e < s; e += 1)\n this.dynamicProperties[e].getValue(t), this.dynamicProperties[e]._mdf && (this._mdf = !0);\n }\n initDynamicPropertyContainer(t) {\n (this.container = t),\n (this.dynamicProperties = []),\n (this._mdf = !1),\n (this._isAnimated = !1),\n (this._hasOutTypeExpression = !1);\n }\n}\nconst X = F(8, function () {\n return { addedLength: 0, percents: w('float32', 200), lengths: w('float32', 200) };\n});\nconst Y = F(\n 8,\n function () {\n return { lengths: [], totalLength: 0 };\n },\n function (t) {\n const s = t.lengths.length;\n for (let e = 0; e < s; e += 1) X.release(t.lengths[e]);\n t.lengths.length = 0;\n },\n);\nfunction j(t, s, e, i, h, r) {\n const a = t * i + s * h + e * r - h * i - r * t - e * s;\n return a > -0.001 && a < 0.001;\n}\nfunction z(t, s, e, i) {\n let h,\n r = 0;\n const a = [],\n n = [],\n o = X.newElement(),\n l = e.length;\n for (let p = 0; p < 200; p += 1) {\n const c = p / 199;\n h = 0;\n for (let r = 0; r < l; r += 1) {\n const o =\n Math.pow(1 - c, 3) * t[r] +\n 3 * Math.pow(1 - c, 2) * c * e[r] +\n 3 * (1 - c) * Math.pow(c, 2) * i[r] +\n Math.pow(c, 3) * s[r];\n (a[r] = o), null !== n[r] && (h += Math.pow(a[r] - n[r], 2)), (n[r] = a[r]);\n }\n h && ((h = Math.sqrt(h)), (r += h)), (o.percents[p] = c), (o.lengths[p] = r);\n }\n return (o.addedLength = r), o;\n}\nfunction B(t) {\n (this.segmentLength = 0), (this.points = new Array(t));\n}\nfunction R(t, s) {\n (this.partialLength = t), (this.point = s);\n}\nconst K = {};\nfunction G(t, s) {\n const e = s.percents,\n i = s.lengths,\n h = e.length;\n let r = Math.floor((h - 1) * t);\n const a = t * s.addedLength;\n let n = 0;\n if (r === h - 1 || 0 === r || a === i[r]) return e[r];\n {\n const t = i[r] > a ? -1 : 1;\n let s = !0;\n for (; s; )\n if (\n (i[r] <= a && i[r + 1] > a ? ((n = (a - i[r]) / (i[r + 1] - i[r])), (s = !1)) : (r += t), r < 0 || r >= h - 1)\n ) {\n if (r === h - 1) return e[r];\n s = !1;\n }\n return e[r] + (e[r + 1] - e[r]) * n;\n }\n}\nconst J = w('float32', 8);\nvar H = {\n getSegmentsLength: function (t) {\n const s = Y.newElement(),\n e = t.c,\n i = t.v,\n h = t.o,\n r = t.i,\n a = t._length,\n n = s.lengths;\n let o = 0,\n l = 0;\n for (; l < a - 1; l += 1) (n[l] = z(i[l], i[l + 1], h[l], r[l + 1])), (o += n[l].addedLength);\n return e && a && ((n[l] = z(i[l], i[0], h[l], r[0])), (o += n[l].addedLength)), (s.totalLength = o), s;\n },\n getNewSegment: function (t, s, e, i, h, r, a) {\n const n = G((h = h < 0 ? 0 : h > 1 ? 1 : h), a),\n o = G((r = r > 1 ? 1 : r), a),\n l = t.length,\n p = 1 - n,\n c = 1 - o,\n d = p * p * p,\n u = n * p * p * 3,\n f = n * n * p * 3,\n m = n * n * n,\n g = p * p * c,\n y = n * p * c + p * n * c + p * p * o,\n v = n * n * c + p * n * o + n * p * o,\n _ = n * n * o,\n k = p * c * c,\n S = n * c * c + p * o * c + p * c * o,\n x = n * o * c + p * o * o + n * c * o,\n M = n * o * o,\n P = c * c * c,\n T = o * c * c + c * o * c + c * c * o,\n w = o * o * c + c * o * o + o * c * o,\n D = o * o * o;\n for (let h = 0; h < l; h += 1)\n (J[4 * h] = Math.round(1e3 * (d * t[h] + u * e[h] + f * i[h] + m * s[h])) / 1e3),\n (J[4 * h + 1] = Math.round(1e3 * (g * t[h] + y * e[h] + v * i[h] + _ * s[h])) / 1e3),\n (J[4 * h + 2] = Math.round(1e3 * (k * t[h] + S * e[h] + x * i[h] + M * s[h])) / 1e3),\n (J[4 * h + 3] = Math.round(1e3 * (P * t[h] + T * e[h] + w * i[h] + D * s[h])) / 1e3);\n return J;\n },\n getPointInSegment: function (t, s, e, i, h, r) {\n const a = G(h, r),\n n = 1 - a;\n return [\n Math.round(\n 1e3 *\n (n * n * n * t[0] +\n (a * n * n + n * a * n + n * n * a) * e[0] +\n (a * a * n + n * a * a + a * n * a) * i[0] +\n a * a * a * s[0]),\n ) / 1e3,\n Math.round(\n 1e3 *\n (n * n * n * t[1] +\n (a * n * n + n * a * n + n * n * a) * e[1] +\n (a * a * n + n * a * a + a * n * a) * i[1] +\n a * a * a * s[1]),\n ) / 1e3,\n ];\n },\n buildBezierData: function (t, s, e, i) {\n const h = (t[0] + '_' + t[1] + '_' + s[0] + '_' + s[1] + '_' + e[0] + '_' + e[1] + '_' + i[0] + '_' + i[1]).replace(\n /\\./g,\n 'p',\n );\n if (!K[h]) {\n let r,\n a,\n n = 200,\n o = 0,\n l = null;\n 2 === t.length &&\n (t[0] != s[0] || t[1] != s[1]) &&\n j(t[0], t[1], s[0], s[1], t[0] + e[0], t[1] + e[1]) &&\n j(t[0], t[1], s[0], s[1], s[0] + i[0], s[1] + i[1]) &&\n (n = 2);\n const p = new B(n),\n c = e.length;\n for (let h = 0; h < n; h += 1) {\n a = D(c);\n const d = h / (n - 1);\n r = 0;\n for (let h = 0; h < c; h += 1) {\n const n =\n Math.pow(1 - d, 3) * t[h] +\n 3 * Math.pow(1 - d, 2) * d * (t[h] + e[h]) +\n 3 * (1 - d) * Math.pow(d, 2) * (s[h] + i[h]) +\n Math.pow(d, 3) * s[h];\n (a[h] = n), null !== l && (r += Math.pow(a[h] - l[h], 2));\n }\n (r = Math.sqrt(r)), (o += r), (p.points[h] = new R(r, a)), (l = a);\n }\n (p.segmentLength = o), (K[h] = p);\n }\n return K[h];\n },\n pointOnLine2D: j,\n pointOnLine3D: function (t, s, e, i, h, r, a, n, o) {\n if (0 === e && 0 === r && 0 === o) return j(t, s, i, h, a, n);\n const l = Math.sqrt(Math.pow(i - t, 2) + Math.pow(h - s, 2) + Math.pow(r - e, 2)),\n p = Math.sqrt(Math.pow(a - t, 2) + Math.pow(n - s, 2) + Math.pow(o - e, 2)),\n c = Math.sqrt(Math.pow(a - i, 2) + Math.pow(n - h, 2) + Math.pow(o - r, 2));\n let d;\n return (d = l > p ? (l > c ? l - p - c : c - p - l) : c > p ? c - p - l : p - l - c), d > -1e-4 && d < 1e-4;\n },\n};\nconst U = Math.PI / 180,\n Z = [0, 0],\n Q = /(loopIn|loopOut)\\(([^)]+)/,\n W = /[\"']\\w+[\"']/;\nclass $ {\n constructor(t, s, e) {\n (this.begin = s), (this.end = e), (this.total = this.end - this.begin), (this.type = t);\n }\n update(t) {\n return 'in' === this.type\n ? t >= this.begin\n ? t\n : this.end - s.euclideanModulo(this.begin - t, this.total)\n : 'out' === this.type\n ? t <= this.end\n ? t\n : this.begin + s.euclideanModulo(t - this.end, this.total)\n : void 0;\n }\n}\nclass tt {\n constructor(t, s, e) {\n (this.begin = s), (this.end = e), (this.total = this.end - this.begin), (this.type = t);\n }\n update(t) {\n if (('in' === this.type && t < this.begin) || ('out' === this.type && t > this.end)) {\n const s = t - this.end;\n return this.pingpong(s);\n }\n return t;\n }\n pingpong(t) {\n return Math.floor(t / this.total) % 2\n ? this.begin + s.euclideanModulo(t, this.total)\n : this.end - s.euclideanModulo(t, this.total);\n }\n}\nconst st = {\n loopIn(t, s, e) {\n const i = t[0].t,\n h = t.length - 1,\n r = t[Math.min(h, e)].t;\n switch (s) {\n case 'cycle':\n return new $('in', i, r);\n case 'pingpong':\n return new tt('in', i, r);\n }\n return null;\n },\n loopOut(t, s, e) {\n const i = t.length - 1,\n h = t[Math.max(0, i - e)].t,\n r = t[i].t;\n switch (s) {\n case 'cycle':\n return new $('out', h, r);\n case 'pingpong':\n return new tt('out', h, r);\n }\n return null;\n },\n};\nfunction et(t) {\n const s = t.match(Q),\n e = s[2].split(/\\s*,\\s*/).map(t => (W.test(t) ? t.replace(/\"|'/g, '') : parseInt(t)));\n return { name: s[1], mode: e[0], offset: e[1] };\n}\nvar it = {\n hasSupportExpression: function (t) {\n return t.x && Q.test(t.x);\n },\n getExpression: function (t) {\n const { name: s, mode: e, offset: i = 0 } = et(t.x),\n h = 0 === i ? t.k.length - 1 : i;\n return st[s] && st[s](t.k, e, h);\n },\n};\nfunction ht(t) {\n const s = t[0] * U,\n e = t[1] * U,\n i = t[2] * U,\n h = Math.cos(s / 2),\n r = Math.cos(e / 2),\n a = Math.cos(i / 2),\n n = Math.sin(s / 2),\n o = Math.sin(e / 2),\n l = Math.sin(i / 2);\n return [n * o * a + h * r * l, n * r * a + h * o * l, h * o * a - n * r * l, h * r * a - n * o * l];\n}\nclass rt {\n interpolateValue(t, s) {\n let e;\n 'multidimensional' === this.propType && (e = w('float32', this.pv.length));\n let i,\n h,\n r,\n a,\n n,\n o,\n l,\n p,\n c = s.lastIndex,\n d = c,\n u = this.keyframes.length - 1,\n f = !0;\n for (; f; ) {\n if (((i = this.keyframes[d]), (h = this.keyframes[d + 1]), d === u - 1 && t >= h.t)) {\n i.h && (i = h), (c = 0);\n break;\n }\n if (h.t > t) {\n c = d;\n break;\n }\n d < u - 1 ? (d += 1) : ((c = 0), (f = !1));\n }\n let m,\n g = h.t,\n y = i.t;\n if (i.to) {\n i.bezierData || (i.bezierData = H.buildBezierData(i.s, h.s || i.e, i.to, i.ti));\n let c = i.bezierData;\n if (t >= g || t < y) {\n let s = t >= g ? c.points.length - 1 : 0;\n for (a = c.points[s].point.length, r = 0; r < a; r += 1) e[r] = c.points[s].point[r];\n } else {\n i.__fnct ? (p = i.__fnct) : ((p = T.getBezierEasing(i.o.x, i.o.y, i.i.x, i.i.y, i.n).get), (i.__fnct = p)),\n (n = p((t - y) / (g - y)));\n let h,\n u = c.segmentLength * n,\n m = s.lastFrame < t && s._lastKeyframeIndex === d ? s._lastAddedLength : 0;\n for (l = s.lastFrame < t && s._lastKeyframeIndex === d ? s._lastPoint : 0, f = !0, o = c.points.length; f; ) {\n if (((m += c.points[l].partialLength), 0 === u || 0 === n || l === c.points.length - 1)) {\n for (a = c.points[l].point.length, r = 0; r < a; r += 1) e[r] = c.points[l].point[r];\n break;\n }\n if (u >= m && u < m + c.points[l + 1].partialLength) {\n for (h = (u - m) / c.points[l + 1].partialLength, a = c.points[l].point.length, r = 0; r < a; r += 1)\n e[r] = c.points[l].point[r] + (c.points[l + 1].point[r] - c.points[l].point[r]) * h;\n break;\n }\n l < o - 1 ? (l += 1) : (f = !1);\n }\n (s._lastPoint = l), (s._lastAddedLength = m - c.points[l].partialLength), (s._lastKeyframeIndex = d);\n }\n } else {\n let s, r, a, o, l;\n if (((u = i.s.length), (m = h.s || i.e), this.sh && 1 !== i.h))\n if (t >= g) (e[0] = m[0]), (e[1] = m[1]), (e[2] = m[2]);\n else if (t <= y) (e[0] = i.s[0]), (e[1] = i.s[1]), (e[2] = i.s[2]);\n else {\n !(function (t, s) {\n const e = s[0],\n i = s[1],\n h = s[2],\n r = s[3],\n a = Math.atan2(2 * i * r - 2 * e * h, 1 - 2 * i * i - 2 * h * h),\n n = Math.asin(2 * e * i + 2 * h * r),\n o = Math.atan2(2 * e * r - 2 * i * h, 1 - 2 * e * e - 2 * h * h);\n (t[0] = a / U), (t[1] = n / U), (t[2] = o / U);\n })(\n e,\n (function (t, s, e) {\n const i = [],\n h = t[0],\n r = t[1],\n a = t[2],\n n = t[3];\n let o,\n l,\n p,\n c,\n d,\n u = s[0],\n f = s[1],\n m = s[2],\n g = s[3];\n return (\n (l = h * u + r * f + a * m + n * g),\n l < 0 && ((l = -l), (u = -u), (f = -f), (m = -m), (g = -g)),\n 1 - l > 1e-6\n ? ((o = Math.acos(l)), (p = Math.sin(o)), (c = Math.sin((1 - e) * o) / p), (d = Math.sin(e * o) / p))\n : ((c = 1 - e), (d = e)),\n (i[0] = c * h + d * u),\n (i[1] = c * r + d * f),\n (i[2] = c * a + d * m),\n (i[3] = c * n + d * g),\n i\n );\n })(ht(i.s), ht(m), (t - y) / (g - y)),\n );\n }\n else\n for (d = 0; d < u; d += 1)\n 1 !== i.h &&\n (t >= g\n ? (n = 1)\n : t < y\n ? (n = 0)\n : (i.o.x.constructor === Array\n ? (i.__fnct || (i.__fnct = []),\n i.__fnct[d]\n ? (p = i.__fnct[d])\n : ((s = void 0 === i.o.x[d] ? i.o.x[0] : i.o.x[d]),\n (r = void 0 === i.o.y[d] ? i.o.y[0] : i.o.y[d]),\n (a = void 0 === i.i.x[d] ? i.i.x[0] : i.i.x[d]),\n (o = void 0 === i.i.y[d] ? i.i.y[0] : i.i.y[d]),\n (p = T.getBezierEasing(s, r, a, o).get),\n (i.__fnct[d] = p)))\n : i.__fnct\n ? (p = i.__fnct)\n : ((s = i.o.x),\n (r = i.o.y),\n (a = i.i.x),\n (o = i.i.y),\n (p = T.getBezierEasing(s, r, a, o).get),\n (i.__fnct = p)),\n (n = p((t - y) / (g - y))))),\n (m = h.s || i.e),\n (l = 1 === i.h ? i.s[d] : i.s[d] + (m[d] - i.s[d]) * n),\n 'multidimensional' === this.propType ? (e[d] = l) : (e = l);\n }\n return (s.lastIndex = c), e;\n }\n getValueAtCurrentTime(t) {\n let s = this.keyframes[0].t,\n e = this.keyframes[this.keyframes.length - 1].t;\n if (\n !(\n t === this._caching.lastFrame ||\n (-999999 !== this._caching.lastFrame &&\n ((this._caching.lastFrame >= e && t >= e) || (this._caching.lastFrame < s && t < s)))\n )\n ) {\n this._caching.lastFrame >= t && ((this._caching._lastKeyframeIndex = -1), (this._caching.lastIndex = 0));\n let s = this.interpolateValue(t, this._caching);\n this.pv = s;\n }\n return (this._caching.lastFrame = t), this.pv;\n }\n setVValue(t) {\n let s;\n if ('unidimensional' === this.propType)\n (s = t * this.mult), Math.abs(this.v - s) > 1e-5 && ((this.v = s), (this._mdf = !0));\n else {\n let e = 0;\n const i = this.v.length;\n for (; e < i; )\n (s = t[e] * this.mult), Math.abs(this.v[e] - s) > 1e-5 && ((this.v[e] = s), (this._mdf = !0)), (e += 1);\n }\n }\n processEffectsSequence(t) {\n if ((this.expression && (t = this.expression.update(t)), t === this.frameId || !this.effectsSequence.length))\n return;\n if (this.lock) return void this.setVValue(this.pv);\n let s;\n (this.lock = !0), (this._mdf = this._isFirstFrame);\n let e = this.effectsSequence.length,\n i = this.kf ? this.pv : this.data.k;\n for (s = 0; s < e; s += 1) i = this.effectsSequence[s](t);\n this.setVValue(i), (this._isFirstFrame = !1), (this.lock = !1), (this.frameId = t);\n }\n addEffect(t) {\n this.effectsSequence.push(t), this.container.addDynamicProperty(this);\n }\n}\nclass at extends rt {\n constructor(t, s, e, i) {\n super(),\n (this.propType = 'unidimensional'),\n (this.mult = e || 1),\n (this.data = s),\n (this.v = e ? s.k * e : s.k),\n (this.pv = s.k),\n (this._mdf = !1),\n (this.elem = t),\n (this.container = i),\n (this.k = !1),\n (this.kf = !1),\n (this.vel = 0),\n (this.effectsSequence = []),\n (this._isFirstFrame = !0),\n (this.getValue = this.processEffectsSequence);\n }\n}\nclass nt extends rt {\n constructor(t, s, e, i) {\n super(),\n (this.propType = 'multidimensional'),\n (this.mult = e || 1),\n (this.data = s),\n (this._mdf = !1),\n (this.elem = t),\n (this.container = i),\n (this.comp = t.comp),\n (this.k = !1),\n (this.kf = !1),\n (this.frameId = -1);\n const h = s.k.length;\n (this.v = w('float32', h)), (this.pv = w('float32', h)), (this.vel = w('float32', h));\n for (let t = 0; t < h; t += 1) (this.v[t] = s.k[t] * this.mult), (this.pv[t] = s.k[t]);\n (this._isFirstFrame = !0), (this.effectsSequence = []), (this.getValue = this.processEffectsSequence);\n }\n}\nclass ot extends rt {\n constructor(t, s, e, i) {\n super(),\n (this.propType = 'unidimensional'),\n (this.keyframes = s.k),\n (this.frameId = -1),\n (this._caching = { lastFrame: -999999, lastIndex: 0, value: 0, _lastKeyframeIndex: -1 }),\n (this.k = !0),\n (this.kf = !0),\n (this.data = s),\n (this.mult = e || 1),\n (this.elem = t),\n (this.container = i),\n (this.comp = t.comp),\n (this.v = -999999),\n (this.pv = -999999),\n (this._isFirstFrame = !0),\n (this.getValue = this.processEffectsSequence),\n (this.effectsSequence = [this.getValueAtCurrentTime.bind(this)]),\n (this._hasOutTypeExpression = !1),\n it.hasSupportExpression(s) &&\n ((this.expression = it.getExpression(s)), (this._hasOutTypeExpression = 'out' === this.expression.type));\n }\n}\nclass lt extends rt {\n constructor(t, s, e, i) {\n let h;\n super(), (this.propType = 'multidimensional');\n let r,\n a,\n n,\n o,\n l = s.k.length;\n for (h = 0; h < l - 1; h += 1)\n s.k[h].to &&\n s.k[h].s &&\n s.k[h + 1] &&\n s.k[h + 1].s &&\n ((r = s.k[h].s),\n (a = s.k[h + 1].s),\n (n = s.k[h].to),\n (o = s.k[h].ti),\n ((2 === r.length &&\n (r[0] !== a[0] || r[1] !== a[1]) &&\n H.pointOnLine2D(r[0], r[1], a[0], a[1], r[0] + n[0], r[1] + n[1]) &&\n H.pointOnLine2D(r[0], r[1], a[0], a[1], a[0] + o[0], a[1] + o[1])) ||\n (3 === r.length &&\n (r[0] !== a[0] || r[1] !== a[1] || r[2] !== a[2]) &&\n H.pointOnLine3D(r[0], r[1], r[2], a[0], a[1], a[2], r[0] + n[0], r[1] + n[1], r[2] + n[2]) &&\n H.pointOnLine3D(r[0], r[1], r[2], a[0], a[1], a[2], a[0] + o[0], a[1] + o[1], a[2] + o[2]))) &&\n ((s.k[h].to = null), (s.k[h].ti = null)),\n r[0] === a[0] &&\n r[1] === a[1] &&\n 0 === n[0] &&\n 0 === n[1] &&\n 0 === o[0] &&\n 0 === o[1] &&\n (2 === r.length || (r[2] === a[2] && 0 === n[2] && 0 === o[2])) &&\n ((s.k[h].to = null), (s.k[h].ti = null)));\n (this.effectsSequence = [this.getValueAtCurrentTime.bind(this)]),\n (this.keyframes = s.k),\n (this.k = !0),\n (this.kf = !0),\n (this._isFirstFrame = !0),\n (this.mult = e || 1),\n (this.elem = t),\n (this.container = i),\n (this.comp = t.comp),\n (this.getValue = this.processEffectsSequence),\n (this.frameId = -1);\n let p = s.k[0].s.length;\n for (this.v = w('float32', p), this.pv = w('float32', p), h = 0; h < p; h += 1)\n (this.v[h] = -999999), (this.pv[h] = -999999);\n (this._caching = { lastFrame: -999999, lastIndex: 0, value: w('float32', p) }),\n (this._hasOutTypeExpression = !1),\n it.hasSupportExpression(s) &&\n ((this.expression = it.getExpression(s)), (this._hasOutTypeExpression = 'out' === this.expression.type));\n }\n}\nvar pt = {\n getProp: function (t, s, e, i, h) {\n let r;\n if (s.k.length)\n if ('number' == typeof s.k[0]) r = new nt(t, s, i, h);\n else\n switch (e) {\n case 0:\n r = new ot(t, s, i, h);\n break;\n case 1:\n r = new lt(t, s, i, h);\n }\n else r = new at(t, s, i, h);\n return r.effectsSequence.length && h.addDynamicProperty(r), r;\n },\n};\nclass ct {\n interpolateShape(t, s, e) {\n let i,\n h,\n r,\n a,\n n,\n o,\n l,\n p,\n c,\n d = e.lastIndex,\n u = this.keyframes;\n if (t < u[0].t) (i = u[0].s[0]), (r = !0), (d = 0);\n else if (t >= u[u.length - 1].t) (i = u[u.length - 1].s ? u[u.length - 1].s[0] : u[u.length - 2].e[0]), (r = !0);\n else {\n let s,\n e,\n a = d,\n n = u.length - 1,\n o = !0;\n for (; o && ((s = u[a]), (e = u[a + 1]), !(e.t > t)); ) a < n - 1 ? (a += 1) : (o = !1);\n if (((r = 1 === s.h), (d = a), !r)) {\n if (t >= e.t) p = 1;\n else if (t < s.t) p = 0;\n else {\n let i;\n s.__fnct ? (i = s.__fnct) : ((i = T.getBezierEasing(s.o.x, s.o.y, s.i.x, s.i.y).get), (s.__fnct = i)),\n (p = i((t - s.t) / (e.t - s.t)));\n }\n h = e.s ? e.s[0] : s.e[0];\n }\n i = s.s[0];\n }\n for (o = s._length, l = i.i[0].length, e.lastIndex = d, a = 0; a < o; a += 1)\n for (n = 0; n < l; n += 1)\n (c = r ? i.i[a][n] : i.i[a][n] + (h.i[a][n] - i.i[a][n]) * p),\n (s.i[a][n] = c),\n (c = r ? i.o[a][n] : i.o[a][n] + (h.o[a][n] - i.o[a][n]) * p),\n (s.o[a][n] = c),\n (c = r ? i.v[a][n] : i.v[a][n] + (h.v[a][n] - i.v[a][n]) * p),\n (s.v[a][n] = c);\n }\n interpolateShapeCurrentTime(t) {\n let s = this.keyframes[0].t,\n e = this.keyframes[this.keyframes.length - 1].t,\n i = this._caching.lastFrame;\n return (\n (-999999 !== i && ((i < s && t < s) || (i > e && t > e))) ||\n ((this._caching.lastIndex = i < t ? this._caching.lastIndex : 0),\n this.interpolateShape(t, this.pv, this._caching)),\n (this._caching.lastFrame = t),\n this.pv\n );\n }\n resetShape() {\n this.paths = this.localShapeCollection;\n }\n shapesEqual(t, s) {\n if (t._length !== s._length || t.c !== s.c) return !1;\n let e,\n i = t._length;\n for (e = 0; e < i; e += 1)\n if (\n t.v[e][0] !== s.v[e][0] ||\n t.v[e][1] !== s.v[e][1] ||\n t.o[e][0] !== s.o[e][0] ||\n t.o[e][1] !== s.o[e][1] ||\n t.i[e][0] !== s.i[e][0] ||\n t.i[e][1] !== s.i[e][1]\n )\n return !1;\n return !0;\n }\n setVValue(t) {\n this.shapesEqual(this.v, t) ||\n ((this.v = b.clone(t)),\n this.localShapeCollection.releaseShapes(),\n this.localShapeCollection.addShape(this.v),\n (this._mdf = !0),\n (this.paths = this.localShapeCollection));\n }\n processEffectsSequence(t) {\n if (t === this.frameId) return;\n if (!this.effectsSequence.length) return void (this._mdf = !1);\n if (this.lock) return void this.setVValue(this.pv);\n (this.lock = !0), (this._mdf = !1);\n let s,\n e = this.kf ? this.pv : this.data.ks ? this.data.ks.k : this.data.pt.k,\n i = this.effectsSequence.length;\n for (s = 0; s < i; s += 1) e = this.effectsSequence[s](t);\n this.setVValue(e), (this.lock = !1), (this.frameId = t);\n }\n addEffect(t) {\n this.effectsSequence.push(t), this.container.addDynamicProperty(this);\n }\n}\nclass dt extends ct {\n constructor(t, s, e) {\n super(),\n (this.propType = 'shape'),\n (this.comp = t.comp),\n (this.container = t),\n (this.elem = t),\n (this.data = s),\n (this.k = !1),\n (this.kf = !1),\n (this._mdf = !1);\n let i = 3 === e ? s.pt.k : s.ks.k;\n (this.v = b.clone(i)),\n (this.pv = b.clone(this.v)),\n (this.localShapeCollection = q.newShapeCollection()),\n (this.paths = this.localShapeCollection),\n this.paths.addShape(this.v),\n (this.reset = this.resetShape),\n (this.effectsSequence = []),\n (this.getValue = this.processEffectsSequence);\n }\n}\nclass ut extends ct {\n constructor(t, s, e) {\n super(),\n (this.propType = 'shape'),\n (this.comp = t.comp),\n (this.elem = t),\n (this.container = t),\n (this.keyframes = 3 === e ? s.pt.k : s.ks.k),\n (this.k = !0),\n (this.kf = !0);\n let i = this.keyframes[0].s[0].i.length;\n (this.v = b.newElement()),\n this.v.setPathData(this.keyframes[0].s[0].c, i),\n (this.pv = b.clone(this.v)),\n (this.localShapeCollection = q.newShapeCollection()),\n (this.paths = this.localShapeCollection),\n this.paths.addShape(this.v),\n (this.lastFrame = -999999),\n (this.reset = this.resetShape),\n (this._caching = { lastFrame: -999999, lastIndex: 0 }),\n (this.effectsSequence = [this.interpolateShapeCurrentTime.bind(this)]),\n (this.getValue = this.processEffectsSequence),\n (this._hasOutTypeExpression = !1),\n it.hasSupportExpression(s) &&\n ((this.expression = it.getExpression(s)), (this._hasOutTypeExpression = 'out' === this.expression.type));\n }\n}\nclass ft extends O {\n constructor(t, s) {\n super(),\n (this.v = b.newElement()),\n this.v.setPathData(!0, 4),\n (this.localShapeCollection = q.newShapeCollection()),\n (this.paths = this.localShapeCollection),\n this.localShapeCollection.addShape(this.v),\n (this.d = s.d),\n (this.elem = t),\n (this.comp = t.comp),\n (this.frameId = -1),\n this.initDynamicPropertyContainer(t),\n (this.p = pt.getProp(t, s.p, 1, 0, this)),\n (this.s = pt.getProp(t, s.s, 1, 0, this)),\n this.dynamicProperties.length ? (this.k = !0) : ((this.k = !1), this.convertEllToPath());\n }\n reset() {\n this.paths = this.localShapeCollection;\n }\n getValue(t) {\n t !== this.frameId && (this.iterateDynamicProperties(t), (this.frameId = t), this._mdf && this.convertEllToPath());\n }\n convertEllToPath() {\n const t = this.p.v[0],\n s = this.p.v[1],\n e = this.s.v[0] / 2,\n i = this.s.v[1] / 2,\n h = 3 !== this.d,\n r = this.v;\n (r.v[0][0] = t),\n (r.v[0][1] = s - i),\n (r.v[1][0] = h ? t + e : t - e),\n (r.v[1][1] = s),\n (r.v[2][0] = t),\n (r.v[2][1] = s + i),\n (r.v[3][0] = h ? t - e : t + e),\n (r.v[3][1] = s),\n (r.i[0][0] = h ? t - e * gt : t + e * gt),\n (r.i[0][1] = s - i),\n (r.i[1][0] = h ? t + e : t - e),\n (r.i[1][1] = s - i * gt),\n (r.i[2][0] = h ? t + e * gt : t - e * gt),\n (r.i[2][1] = s + i),\n (r.i[3][0] = h ? t - e : t + e),\n (r.i[3][1] = s + i * gt),\n (r.o[0][0] = h ? t + e * gt : t - e * gt),\n (r.o[0][1] = s - i),\n (r.o[1][0] = h ? t + e : t - e),\n (r.o[1][1] = s + i * gt),\n (r.o[2][0] = h ? t - e * gt : t + e * gt),\n (r.o[2][1] = s + i),\n (r.o[3][0] = h ? t - e : t + e),\n (r.o[3][1] = s - i * gt);\n }\n}\nclass mt extends O {\n constructor(t, s) {\n super(),\n (this.v = b.newElement()),\n this.v.setPathData(!0, 0),\n (this.elem = t),\n (this.comp = t.comp),\n (this.data = s),\n (this.frameId = -1),\n (this.d = s.d),\n this.initDynamicPropertyContainer(t),\n 1 === s.sy\n ? ((this.ir = pt.getProp(t, s.ir, 0, 0, this)),\n (this.is = pt.getProp(t, s.is, 0, 0.01, this)),\n (this.convertToPath = this.convertStarToPath))\n : (this.convertToPath = this.convertPolygonToPath),\n (this.pt = pt.getProp(t, s.pt, 0, 0, this)),\n (this.p = pt.getProp(t, s.p, 1, 0, this)),\n (this.r = pt.getProp(t, s.r, 0, U, this)),\n (this.or = pt.getProp(t, s.or, 0, 0, this)),\n (this.os = pt.getProp(t, s.os, 0, 0.01, this)),\n (this.localShapeCollection = q.newShapeCollection()),\n this.localShapeCollection.addShape(this.v),\n (this.paths = this.localShapeCollection),\n this.dynamicProperties.length ? (this.k = !0) : ((this.k = !1), this.convertToPath());\n }\n reset() {\n this.paths = this.localShapeCollection;\n }\n getValue(t) {\n t !== this.frameId && ((this.frameId = t), this.iterateDynamicProperties(t), this._mdf && this.convertToPath());\n }\n convertStarToPath() {\n let t,\n s,\n e,\n i,\n h = 2 * Math.floor(this.pt.v),\n r = (2 * Math.PI) / h,\n a = !0,\n n = this.or.v,\n o = this.ir.v,\n l = this.os.v,\n p = this.is.v,\n c = (2 * Math.PI * n) / (2 * h),\n d = (2 * Math.PI * o) / (2 * h),\n u = -Math.PI / 2;\n u += this.r.v;\n let f = 3 === this.data.d ? -1 : 1;\n for (this.v._length = 0, t = 0; t < h; t += 1) {\n (s = a ? n : o), (e = a ? l : p), (i = a ? c : d);\n let h = s * Math.cos(u),\n m = s * Math.sin(u),\n g = 0 === h && 0 === m ? 0 : m / Math.sqrt(h * h + m * m),\n y = 0 === h && 0 === m ? 0 : -h / Math.sqrt(h * h + m * m);\n (h += +this.p.v[0]),\n (m += +this.p.v[1]),\n this.v.setTripleAt(h, m, h - g * i * e * f, m - y * i * e * f, h + g * i * e * f, m + y * i * e * f, t, !0),\n (a = !a),\n (u += r * f);\n }\n }\n convertPolygonToPath() {\n let t,\n s = Math.floor(this.pt.v),\n e = (2 * Math.PI) / s,\n i = this.or.v,\n h = this.os.v,\n r = (2 * Math.PI * i) / (4 * s),\n a = -Math.PI / 2,\n n = 3 === this.data.d ? -1 : 1;\n for (a += this.r.v, this.v._length = 0, t = 0; t < s; t += 1) {\n let s = i * Math.cos(a),\n o = i * Math.sin(a),\n l = 0 === s && 0 === o ? 0 : o / Math.sqrt(s * s + o * o),\n p = 0 === s && 0 === o ? 0 : -s / Math.sqrt(s * s + o * o);\n (s += +this.p.v[0]),\n (o += +this.p.v[1]),\n this.v.setTripleAt(s, o, s - l * r * h * n, o - p * r * h * n, s + l * r * h * n, o + p * r * h * n, t, !0),\n (a += e * n);\n }\n (this.paths.length = 0), (this.paths[0] = this.v);\n }\n}\nconst gt = 0.5519;\nclass yt extends O {\n constructor(t, s) {\n super(),\n (this.v = b.newElement()),\n (this.v.c = !0),\n (this.localShapeCollection = q.newShapeCollection()),\n this.localShapeCollection.addShape(this.v),\n (this.paths = this.localShapeCollection),\n (this.elem = t),\n (this.comp = t.comp),\n (this.frameId = -1),\n (this.d = s.d),\n this.initDynamicPropertyContainer(t),\n (this.p = pt.getProp(t, s.p, 1, 0, this)),\n (this.s = pt.getProp(t, s.s, 1, 0, this)),\n (this.r = pt.getProp(t, s.r, 0, 0, this)),\n this.dynamicProperties.length ? (this.k = !0) : ((this.k = !1), this.convertRectToPath());\n }\n reset() {\n this.paths = this.localShapeCollection;\n }\n getValue(t) {\n t !== this.frameId && ((this.frameId = t), this.iterateDynamicProperties(t), this._mdf && this.convertRectToPath());\n }\n convertRectToPath() {\n let t = this.p.v[0],\n s = this.p.v[1],\n e = this.s.v[0] / 2,\n i = this.s.v[1] / 2,\n h = Math.min(e, i, this.r.v),\n r = h * (1 - 0.5519);\n (this.v._length = 0),\n 2 === this.d || 1 === this.d\n ? (this.v.setTripleAt(t + e, s - i + h, t + e, s - i + h, t + e, s - i + r, 0, !0),\n this.v.setTripleAt(t + e, s + i - h, t + e, s + i - r, t + e, s + i - h, 1, !0),\n 0 !== h\n ? (this.v.setTripleAt(t + e - h, s + i, t + e - h, s + i, t + e - r, s + i, 2, !0),\n this.v.setTripleAt(t - e + h, s + i, t - e + r, s + i, t - e + h, s + i, 3, !0),\n this.v.setTripleAt(t - e, s + i - h, t - e, s + i - h, t - e, s + i - r, 4, !0),\n this.v.setTripleAt(t - e, s - i + h, t - e, s - i + r, t - e, s - i + h, 5, !0),\n this.v.setTripleAt(t - e + h, s - i, t - e + h, s - i, t - e + r, s - i, 6, !0),\n this.v.setTripleAt(t + e - h, s - i, t + e - r, s - i, t + e - h, s - i, 7, !0))\n : (this.v.setTripleAt(t - e, s + i, t - e + r, s + i, t - e, s + i, 2),\n this.v.setTripleAt(t - e, s - i, t - e, s - i + r, t - e, s - i, 3)))\n : (this.v.setTripleAt(t + e, s - i + h, t + e, s - i + r, t + e, s - i + h, 0, !0),\n 0 !== h\n ? (this.v.setTripleAt(t + e - h, s - i, t + e - h, s - i, t + e - r, s - i, 1, !0),\n this.v.setTripleAt(t - e + h, s - i, t - e + r, s - i, t - e + h, s - i, 2, !0),\n this.v.setTripleAt(t - e, s - i + h, t - e, s - i + h, t - e, s - i + r, 3, !0),\n this.v.setTripleAt(t - e, s + i - h, t - e, s + i - r, t - e, s + i - h, 4, !0),\n this.v.setTripleAt(t - e + h, s + i, t - e + h, s + i, t - e + r, s + i, 5, !0),\n this.v.setTripleAt(t + e - h, s + i, t + e - r, s + i, t + e - h, s + i, 6, !0),\n this.v.setTripleAt(t + e, s + i - h, t + e, s + i - h, t + e, s + i - r, 7, !0))\n : (this.v.setTripleAt(t - e, s - i, t - e + r, s - i, t - e, s - i, 1, !0),\n this.v.setTripleAt(t - e, s + i, t - e, s + i - r, t - e, s + i, 2, !0),\n this.v.setTripleAt(t + e, s + i, t + e - r, s + i, t + e, s + i, 3, !0)));\n }\n}\nvar vt = {\n getShapeProp: function (t, s, e) {\n let i;\n if (3 === e || 4 === e) {\n i = (3 === e ? s.pt : s.ks).k.length ? new ut(t, s, e) : new dt(t, s, e);\n } else 5 === e ? (i = new yt(t, s)) : 6 === e ? (i = new ft(t, s)) : 7 === e && (i = new mt(t, s));\n return i.k && t.addDynamicProperty(i), i;\n },\n getConstructorFunction: function () {\n return dt;\n },\n getKeyframedConstructorFunction: function () {\n return ut;\n },\n};\nclass _t extends O {\n constructor(t, s, e) {\n super(),\n (this.frameId = -1),\n (this.elem = t),\n (this.session = e),\n (this.masksProperties = s || []),\n this.initDynamicPropertyContainer(t),\n (this.viewData = D(this.masksProperties.length));\n const i = this.masksProperties.length;\n let h = !1;\n for (let t = 0; t < i; t++)\n 'n' !== this.masksProperties[t].mode && (h = !0),\n (this.viewData[t] = vt.getShapeProp(this, this.masksProperties[t], 3)),\n (this.viewData[t].inv = this.masksProperties[t].inv);\n this.hasMasks = h;\n }\n getValue(t) {\n t !== this.frameId && (this.iterateDynamicProperties(t), (this.frameId = t));\n }\n}\n/*!\n Transformation Matrix v2.0\n (c) Epistemex 2014-2015\n www.epistemex.com\n By Ken Fyrstenberg\n Contributions by leeoniya.\n License: MIT, header required.\n */ var kt = (function () {\n var t = Math.cos,\n s = Math.sin,\n e = Math.tan,\n i = Math.round;\n function h() {\n return (\n (this.props[0] = 1),\n (this.props[1] = 0),\n (this.props[2] = 0),\n (this.props[3] = 0),\n (this.props[4] = 0),\n (this.props[5] = 1),\n (this.props[6] = 0),\n (this.props[7] = 0),\n (this.props[8] = 0),\n (this.props[9] = 0),\n (this.props[10] = 1),\n (this.props[11] = 0),\n (this.props[12] = 0),\n (this.props[13] = 0),\n (this.props[14] = 0),\n (this.props[15] = 1),\n this\n );\n }\n function r(e) {\n if (0 === e) return this;\n var i = t(e),\n h = s(e);\n return this._t(i, -h, 0, 0, h, i, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);\n }\n function a(e) {\n if (0 === e) return this;\n var i = t(e),\n h = s(e);\n return this._t(1, 0, 0, 0, 0, i, -h, 0, 0, h, i, 0, 0, 0, 0, 1);\n }\n function n(e) {\n if (0 === e) return this;\n var i = t(e),\n h = s(e);\n return this._t(i, 0, h, 0, 0, 1, 0, 0, -h, 0, i, 0, 0, 0, 0, 1);\n }\n function o(e) {\n if (0 === e) return this;\n var i = t(e),\n h = s(e);\n return this._t(i, -h, 0, 0, h, i, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);\n }\n function l(t, s) {\n return this._t(1, s, t, 1, 0, 0);\n }\n function p(t, s) {\n return this.shear(e(t), e(s));\n }\n function c(i, h) {\n var r = t(h),\n a = s(h);\n return this._t(r, a, 0, 0, -a, r, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)\n ._t(1, 0, 0, 0, e(i), 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)\n ._t(r, -a, 0, 0, a, r, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);\n }\n function d(t, s, e) {\n return (\n e || 0 === e || (e = 1),\n 1 === t && 1 === s && 1 === e ? this : this._t(t, 0, 0, 0, 0, s, 0, 0, 0, 0, e, 0, 0, 0, 0, 1)\n );\n }\n function u(t, s, e, i, h, r, a, n, o, l, p, c, d, u, f, m) {\n return (\n (this.props[0] = t),\n (this.props[1] = s),\n (this.props[2] = e),\n (this.props[3] = i),\n (this.props[4] = h),\n (this.props[5] = r),\n (this.props[6] = a),\n (this.props[7] = n),\n (this.props[8] = o),\n (this.props[9] = l),\n (this.props[10] = p),\n (this.props[11] = c),\n (this.props[12] = d),\n (this.props[13] = u),\n (this.props[14] = f),\n (this.props[15] = m),\n this\n );\n }\n function f(t, s, e) {\n return (e = e || 0), 0 !== t || 0 !== s || 0 !== e ? this._t(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, t, s, e, 1) : this;\n }\n function m(t, s, e, i, h, r, a, n, o, l, p, c, d, u, f, m) {\n var g = this.props;\n if (\n 1 === t &&\n 0 === s &&\n 0 === e &&\n 0 === i &&\n 0 === h &&\n 1 === r &&\n 0 === a &&\n 0 === n &&\n 0 === o &&\n 0 === l &&\n 1 === p &&\n 0 === c\n )\n return (\n (g[12] = g[12] * t + g[15] * d),\n (g[13] = g[13] * r + g[15] * u),\n (g[14] = g[14] * p + g[15] * f),\n (g[15] = g[15] * m),\n (this._identityCalculated = !1),\n this\n );\n var y = g[0],\n v = g[1],\n _ = g[2],\n k = g[3],\n S = g[4],\n x = g[5],\n M = g[6],\n P = g[7],\n T = g[8],\n w = g[9],\n D = g[10],\n L = g[11],\n F = g[12],\n A = g[13],\n C = g[14],\n b = g[15];\n return (\n (g[0] = y * t + v * h + _ * o + k * d),\n (g[1] = y * s + v * r + _ * l + k * u),\n (g[2] = y * e + v * a + _ * p + k * f),\n (g[3] = y * i + v * n + _ * c + k * m),\n (g[4] = S * t + x * h + M * o + P * d),\n (g[5] = S * s + x * r + M * l + P * u),\n (g[6] = S * e + x * a + M * p + P * f),\n (g[7] = S * i + x * n + M * c + P * m),\n (g[8] = T * t + w * h + D * o + L * d),\n (g[9] = T * s + w * r + D * l + L * u),\n (g[10] = T * e + w * a + D * p + L * f),\n (g[11] = T * i + w * n + D * c + L * m),\n (g[12] = F * t + A * h + C * o + b * d),\n (g[13] = F * s + A * r + C * l + b * u),\n (g[14] = F * e + A * a + C * p + b * f),\n (g[15] = F * i + A * n + C * c + b * m),\n (this._identityCalculated = !1),\n this\n );\n }\n function g() {\n return (\n this._identityCalculated ||\n ((this._identity = !(\n 1 !== this.props[0] ||\n 0 !== this.props[1] ||\n 0 !== this.props[2] ||\n 0 !== this.props[3] ||\n 0 !== this.props[4] ||\n 1 !== this.props[5] ||\n 0 !== this.props[6] ||\n 0 !== this.props[7] ||\n 0 !== this.props[8] ||\n 0 !== this.props[9] ||\n 1 !== this.props[10] ||\n 0 !== this.props[11] ||\n 0 !== this.props[12] ||\n 0 !== this.props[13] ||\n 0 !== this.props[14] ||\n 1 !== this.props[15]\n )),\n (this._identityCalculated = !0)),\n this._identity\n );\n }\n function y(t) {\n for (var s = 0; s < 16; ) {\n if (t.props[s] !== this.props[s]) return !1;\n s += 1;\n }\n return !0;\n }\n function v(t) {\n var s;\n for (s = 0; s < 16; s += 1) t.props[s] = this.props[s];\n }\n function _(t) {\n var s;\n for (s = 0; s < 16; s += 1) this.props[s] = t[s];\n }\n function k(t, s, e) {\n return {\n x: t * this.props[0] + s * this.props[4] + e * this.props[8] + this.props[12],\n y: t * this.props[1] + s * this.props[5] + e * this.props[9] + this.props[13],\n z: t * this.props[2] + s * this.props[6] + e * this.props[10] + this.props[14],\n };\n }\n function S(t, s, e) {\n return t * this.props[0] + s * this.props[4] + e * this.props[8] + this.props[12];\n }\n function x(t, s, e) {\n return t * this.props[1] + s * this.props[5] + e * this.props[9] + this.props[13];\n }\n function M(t, s, e) {\n return t * this.props[2] + s * this.props[6] + e * this.props[10] + this.props[14];\n }\n function P(t) {\n var s = this.props[0] * this.props[5] - this.props[1] * this.props[4],\n e = this.props[5] / s,\n i = -this.props[1] / s,\n h = -this.props[4] / s,\n r = this.props[0] / s,\n a = (this.props[4] * this.props[13] - this.props[5] * this.props[12]) / s,\n n = -(this.props[0] * this.props[13] - this.props[1] * this.props[12]) / s;\n return [t[0] * e + t[1] * h + a, t[0] * i + t[1] * r + n, 0];\n }\n function T(t) {\n var s,\n e = t.length,\n i = [];\n for (s = 0; s < e; s += 1) i[s] = P(t[s]);\n return i;\n }\n function D(t, s, e) {\n var i = w('float32', 6);\n if (this.isIdentity()) (i[0] = t[0]), (i[1] = t[1]), (i[2] = s[0]), (i[3] = s[1]), (i[4] = e[0]), (i[5] = e[1]);\n else {\n var h = this.props[0],\n r = this.props[1],\n a = this.props[4],\n n = this.props[5],\n o = this.props[12],\n l = this.props[13];\n (i[0] = t[0] * h + t[1] * a + o),\n (i[1] = t[0] * r + t[1] * n + l),\n (i[2] = s[0] * h + s[1] * a + o),\n (i[3] = s[0] * r + s[1] * n + l),\n (i[4] = e[0] * h + e[1] * a + o),\n (i[5] = e[0] * r + e[1] * n + l);\n }\n return i;\n }\n function L(t, s, e) {\n return this.isIdentity()\n ? [t, s, e]\n : [\n t * this.props[0] + s * this.props[4] + e * this.props[8] + this.props[12],\n t * this.props[1] + s * this.props[5] + e * this.props[9] + this.props[13],\n t * this.props[2] + s * this.props[6] + e * this.props[10] + this.props[14],\n ];\n }\n function F(t, s) {\n if (this.isIdentity()) return t + ',' + s;\n var e = this.props;\n return (\n Math.round(100 * (t * e[0] + s * e[4] + e[12])) / 100 +\n ',' +\n Math.round(100 * (t * e[1] + s * e[5] + e[13])) / 100\n );\n }\n function A() {\n for (var t = 0, s = this.props, e = 'matrix3d('; t < 16; )\n (e += i(1e4 * s[t]) / 1e4), (e += 15 === t ? ')' : ','), (t += 1);\n return e;\n }\n function C(t) {\n return (t < 1e-6 && t > 0) || (t > -1e-6 && t < 0) ? i(1e4 * t) / 1e4 : t;\n }\n function b() {\n var t = this.props;\n return 'matrix(' + C(t[0]) + ',' + C(t[1]) + ',' + C(t[4]) + ',' + C(t[5]) + ',' + C(t[12]) + ',' + C(t[13]) + ')';\n }\n return function () {\n (this.reset = h),\n (this.rotate = r),\n (this.rotateX = a),\n (this.rotateY = n),\n (this.rotateZ = o),\n (this.skew = p),\n (this.skewFromAxis = c),\n (this.shear = l),\n (this.scale = d),\n (this.setTransform = u),\n (this.translate = f),\n (this.transform = m),\n (this.applyToPoint = k),\n (this.applyToX = S),\n (this.applyToY = x),\n (this.applyToZ = M),\n (this.applyToPointArray = L),\n (this.applyToTriplePoints = D),\n (this.applyToPointStringified = F),\n (this.toCSS = A),\n (this.to2dCSS = b),\n (this.clone = v),\n (this.cloneFromProps = _),\n (this.equals = y),\n (this.inversePoints = T),\n (this.inversePoint = P),\n (this._t = this.transform),\n (this.isIdentity = g),\n (this._identity = !0),\n (this._identityCalculated = !1),\n (this.props = w('float32', 16)),\n this.reset();\n };\n})();\nclass St {\n constructor() {\n (this.sequences = {}), (this.sequenceList = []), (this.transform_key_count = 0);\n }\n addTransformSequence(t) {\n const s = t.length;\n let e = '_';\n for (let i = 0; i < s; i += 1) e += t[i].transform.key + '_';\n let i = this.sequences[e];\n return (\n i ||\n ((i = { transforms: [].concat(t), finalTransform: new kt(), _mdf: !1 }),\n (this.sequences[e] = i),\n this.sequenceList.push(i)),\n i\n );\n }\n processSequence(t, s) {\n let e = 0,\n i = s;\n const h = t.transforms.length;\n for (; e < h && !s; ) {\n if (t.transforms[e].transform.mProps._mdf) {\n i = !0;\n break;\n }\n e += 1;\n }\n if (i) {\n let s;\n for (t.finalTransform.reset(), e = h - 1; e >= 0; e -= 1)\n (s = t.transforms[e].transform.mProps.v.props),\n t.finalTransform.transform(\n s[0],\n s[1],\n s[2],\n s[3],\n s[4],\n s[5],\n s[6],\n s[7],\n s[8],\n s[9],\n s[10],\n s[11],\n s[12],\n s[13],\n s[14],\n s[15],\n );\n }\n t._mdf = i;\n }\n processSequences(t) {\n const s = this.sequenceList.length;\n for (let e = 0; e < s; e += 1) this.processSequence(this.sequenceList[e], t);\n }\n getNewKey() {\n return '_' + this.transform_key_count++;\n }\n}\nclass xt {\n constructor(t, s) {\n (this.elem = t), (this.pos = s);\n }\n}\nclass Mt {\n constructor(t, s, e, i) {\n (this.styledShapes = []), (this.tr = [0, 0, 0, 0, 0, 0]);\n let h = 4;\n 'rc' == s.ty ? (h = 5) : 'el' == s.ty ? (h = 6) : 'sr' == s.ty && (h = 7), (this.sh = vt.getShapeProp(t, s, h));\n const r = e.length;\n for (let t = 0; t < r; t += 1)\n if (!e[t].closed) {\n const s = { transforms: i.addTransformSequence(e[t].transforms), trNodes: [] };\n this.styledShapes.push(s), e[t].elements.push(s);\n }\n }\n setAsAnimated() {\n this._isAnimated = !0;\n }\n}\nconst Pt = {};\nfunction Tt(t) {\n return Pt[t];\n}\nvar wt = {\n Type: {\n Null: 'Null',\n Path: 'Path',\n Shape: 'Shape',\n Solid: 'Solid',\n Sprite: 'Sprite',\n Component: 'Component',\n Container: 'Container',\n },\n registerDisplayByType: function (t, s) {\n Pt[t] = s;\n },\n};\nclass Dt {\n constructor(t, s, e) {\n (this.elem = t),\n (this.data = s),\n (this.type = s.ty),\n (this.preTransforms = e),\n (this.transforms = []),\n (this.elements = []),\n (this.closed = !0 === s.hd),\n (this.displayType = wt.Type.Path);\n const i = Tt(this.displayType);\n (this.display = new i(this, s)),\n this.elem.innerDisplay ? this.elem.innerDisplay.addChild(this.display) : this.elem.display.addChild(this.display);\n }\n updateGrahpics() {\n this.display.updateLottieGrahpics(this);\n }\n}\nclass Lt extends O {\n constructor(t, s, e) {\n if (\n (super(),\n (this.elem = t),\n (this.frameId = -1),\n (this.propType = 'transform'),\n (this.data = s),\n (this.v = new kt()),\n (this.pre = new kt()),\n (this.appliedTransformations = 0),\n this.initDynamicPropertyContainer(e || t),\n s.p && s.p.s\n ? ((this.px = pt.getProp(t, s.p.x, 0, 0, this)),\n (this.py = pt.getProp(t, s.p.y, 0, 0, this)),\n s.p.z && (this.pz = pt.getProp(t, s.p.z, 0, 0, this)))\n : (this.p = pt.getProp(t, s.p || { k: [0, 0, 0] }, 1, 0, this)),\n s.rx)\n ) {\n if (\n ((this.rx = pt.getProp(t, s.rx, 0, U, this)),\n (this.ry = pt.getProp(t, s.ry, 0, U, this)),\n (this.rz = pt.getProp(t, s.rz, 0, U, this)),\n s.or.k[0].ti)\n ) {\n let t,\n e = s.or.k.length;\n for (t = 0; t < e; t += 1) s.or.k[t].to = s.or.k[t].ti = null;\n }\n (this.or = pt.getProp(t, s.or, 1, U, this)), (this.or.sh = !0);\n } else this.r = pt.getProp(t, s.r || { k: 0 }, 0, U, this);\n s.sk && ((this.sk = pt.getProp(t, s.sk, 0, U, this)), (this.sa = pt.getProp(t, s.sa, 0, U, this))),\n (this.a = pt.getProp(t, s.a || { k: [0, 0, 0] }, 1, 0, this)),\n (this.s = pt.getProp(t, s.s || { k: [100, 100, 100] }, 1, 0.01, this)),\n s.o ? (this.o = pt.getProp(t, s.o, 0, 0.01, t)) : (this.o = { _mdf: !1, v: 1 }),\n (this._isDirty = !0),\n this.dynamicProperties.length || this.getValue(-999999, !0);\n }\n getValue(t, s) {\n if (t !== this.frameId) {\n if (\n (this._isDirty && (this.precalculateMatrix(), (this._isDirty = !1)),\n this.iterateDynamicProperties(),\n this._mdf || s)\n ) {\n if (\n (this.v.cloneFromProps(this.pre.props),\n this.appliedTransformations < 1 && this.v.translate(-this.a.v[0], -this.a.v[1], this.a.v[2]),\n this.appliedTransformations < 2 && this.v.scale(this.s.v[0], this.s.v[1], this.s.v[2]),\n this.sk && this.appliedTransformations < 3 && this.v.skewFromAxis(-this.sk.v, this.sa.v),\n this.r && this.appliedTransformations < 4\n ? this.v.rotate(-this.r.v)\n : !this.r &&\n this.appliedTransformations < 4 &&\n this.v\n .rotateZ(-this.rz.v)\n .rotateY(this.ry.v)\n .rotateX(this.rx.v)\n .rotateZ(-this.or.v[2])\n .rotateY(this.or.v[1])\n .rotateX(this.or.v[0]),\n this.autoOriented)\n ) {\n let t, s;\n const e = this.elem.globalData.frameRate;\n if (this.p && this.p.keyframes && this.p.getValueAtTime)\n this.p._caching.lastFrame + this.p.offsetTime <= this.p.keyframes[0].t\n ? ((t = this.p.getValueAtTime((this.p.keyframes[0].t + 0.01) / e, 0)),\n (s = this.p.getValueAtTime(this.p.keyframes[0].t / e, 0)))\n : this.p._caching.lastFrame + this.p.offsetTime >= this.p.keyframes[this.p.keyframes.length - 1].t\n ? ((t = this.p.getValueAtTime(this.p.keyframes[this.p.keyframes.length - 1].t / e, 0)),\n (s = this.p.getValueAtTime((this.p.keyframes[this.p.keyframes.length - 1].t - 0.05) / e, 0)))\n : ((t = this.p.pv),\n (s = this.p.getValueAtTime(\n (this.p._caching.lastFrame + this.p.offsetTime - 0.01) / e,\n this.p.offsetTime,\n )));\n else if (\n this.px &&\n this.px.keyframes &&\n this.py.keyframes &&\n this.px.getValueAtTime &&\n this.py.getValueAtTime\n ) {\n (t = []), (s = []);\n let i = this.px,\n h = this.py;\n i._caching.lastFrame + i.offsetTime <= i.keyframes[0].t\n ? ((t[0] = i.getValueAtTime((i.keyframes[0].t + 0.01) / e, 0)),\n (t[1] = h.getValueAtTime((h.keyframes[0].t + 0.01) / e, 0)),\n (s[0] = i.getValueAtTime(i.keyframes[0].t / e, 0)),\n (s[1] = h.getValueAtTime(h.keyframes[0].t / e, 0)))\n : i._caching.lastFrame + i.offsetTime >= i.keyframes[i.keyframes.length - 1].t\n ? ((t[0] = i.getValueAtTime(i.keyframes[i.keyframes.length - 1].t / e, 0)),\n (t[1] = h.getValueAtTime(h.keyframes[h.keyframes.length - 1].t / e, 0)),\n (s[0] = i.getValueAtTime((i.keyframes[i.keyframes.length - 1].t - 0.01) / e, 0)),\n (s[1] = h.getValueAtTime((h.keyframes[h.keyframes.length - 1].t - 0.01) / e, 0)))\n : ((t = [i.pv, h.pv]),\n (s[0] = i.getValueAtTime((i._caching.lastFrame + i.offsetTime - 0.01) / e, i.offsetTime)),\n (s[1] = h.getValueAtTime((h._caching.lastFrame + h.offsetTime - 0.01) / e, h.offsetTime)));\n } else t = s = Z;\n this.v.rotate(-Math.atan2(t[1] - s[1], t[0] - s[0]));\n }\n this.data.p && this.data.p.s\n ? this.data.p.z\n ? this.v.translate(this.px.v, this.py.v, -this.pz.v)\n : this.v.translate(this.px.v, this.py.v, 0)\n : this.v.translate(this.p.v[0], this.p.v[1], -this.p.v[2]);\n }\n this.frameId = t;\n }\n }\n precalculateMatrix() {\n if (\n !this.a.k &&\n (this.pre.translate(-this.a.v[0], -this.a.v[1], this.a.v[2]),\n (this.appliedTransformations = 1),\n !this.s.effectsSequence.length)\n ) {\n if ((this.pre.scale(this.s.v[0], this.s.v[1], this.s.v[2]), (this.appliedTransformations = 2), this.sk)) {\n if (this.sk.effectsSequence.length || this.sa.effectsSequence.length) return;\n this.pre.skewFromAxis(-this.sk.v, this.sa.v), (this.appliedTransformations = 3);\n }\n if (this.r) {\n if (this.r.effectsSequence.length) return;\n this.pre.rotate(-this.r.v), (this.appliedTransformations = 4);\n } else\n this.rz.effectsSequence.length ||\n this.ry.effectsSequence.length ||\n this.rx.effectsSequence.length ||\n this.or.effectsSequence.length ||\n (this.pre\n .rotateZ(-this.rz.v)\n .rotateY(this.ry.v)\n .rotateX(this.rx.v)\n .rotateZ(-this.or.v[2])\n .rotateY(this.or.v[1])\n .rotateX(this.or.v[0]),\n (this.appliedTransformations = 4));\n }\n }\n applyToMatrix(t) {\n let s = this._mdf;\n this.iterateDynamicProperties(),\n (this._mdf = this._mdf || s),\n this.a && t.translate(-this.a.v[0], -this.a.v[1], this.a.v[2]),\n this.s && t.scale(this.s.v[0], this.s.v[1], this.s.v[2]),\n this.sk && t.skewFromAxis(-this.sk.v, this.sa.v),\n this.r\n ? t.rotate(-this.r.v)\n : t\n .rotateZ(-this.rz.v)\n .rotateY(this.ry.v)\n .rotateX(this.rx.v)\n .rotateZ(-this.or.v[2])\n .rotateY(this.or.v[1])\n .rotateX(this.or.v[0]),\n this.data.p.s\n ? this.data.p.z\n ? t.translate(this.px.v, this.py.v, -this.pz.v)\n : t.translate(this.px.v, this.py.v, 0)\n : t.translate(this.p.v[0], this.p.v[1], -this.p.v[2]);\n }\n}\nfunction Ft(t, s, e) {\n return new Lt(t, s, e);\n}\nclass At extends O {\n initModifierProperties() {}\n addShapeToModifier() {}\n addShape(t) {\n if (!this.closed) {\n t.sh.container.addDynamicProperty(t.sh);\n const s = { shape: t.sh, data: t, localShapeCollection: q.newShapeCollection() };\n this.shapes.push(s), this.addShapeToModifier(s), this._isAnimated && t.setAsAnimated();\n }\n }\n init(t, s) {\n (this.shapes = []),\n (this.elem = t),\n this.initDynamicPropertyContainer(t),\n this.initModifierProperties(t, s),\n (this.frameId = -999999),\n (this.closed = !1),\n (this.k = !1),\n this.dynamicProperties.length ? (this.k = !0) : this.getValue(!0);\n }\n processKeys(t) {\n t !== this.frameId && ((this.frameId = t), this.iterateDynamicProperties(t));\n }\n}\nconst Ct = {};\nfunction bt(t, s) {\n Ct[t] || (Ct[t] = s);\n}\nbt(\n 'tm',\n class extends At {\n initModifierProperties(t, s) {\n (this.s = pt.getProp(t, s.s, 0, 0.01, this)),\n (this.e = pt.getProp(t, s.e, 0, 0.01, this)),\n (this.o = pt.getProp(t, s.o, 0, 0, this)),\n (this.sValue = 0),\n (this.eValue = 0),\n (this.getValue = this.processKeys),\n (this.m = s.m),\n (this._isAnimated =\n !!this.s.effectsSequence.length || !!this.e.effectsSequence.length || !!this.o.effectsSequence.length);\n }\n addShapeToModifier(t) {\n t.pathsData = [];\n }\n calculateShapeEdges(t, s, e, i, h) {\n let r = [];\n s <= 1\n ? r.push({ s: t, e: s })\n : t >= 1\n ? r.push({ s: t - 1, e: s - 1 })\n : (r.push({ s: t, e: 1 }), r.push({ s: 0, e: s - 1 }));\n let a,\n n,\n o = [],\n l = r.length;\n for (a = 0; a < l; a += 1)\n if (((n = r[a]), n.e * h < i || n.s * h > i + e));\n else {\n let t, s;\n (t = n.s * h <= i ? 0 : (n.s * h - i) / e), (s = n.e * h >= i + e ? 1 : (n.e * h - i) / e), o.push([t, s]);\n }\n return o.length || o.push([0, 0]), o;\n }\n releasePathsData(t) {\n const s = t.length;\n for (let e = 0; e < s; e += 1) Y.release(t[e]);\n return (t.length = 0), t;\n }\n processShapes(t) {\n let s, e, i, h;\n if (this._mdf || t) {\n let t = (this.o.v % 360) / 360;\n if (\n (t < 0 && (t += 1),\n (s = (this.s.v > 1 ? 1 : this.s.v < 0 ? 0 : this.s.v) + t),\n (e = (this.e.v > 1 ? 1 : this.e.v < 0 ? 0 : this.e.v) + t),\n s > e)\n ) {\n let t = s;\n (s = e), (e = t);\n }\n (s = 1e-4 * Math.round(1e4 * s)), (e = 1e-4 * Math.round(1e4 * e)), (this.sValue = s), (this.eValue = e);\n } else (s = this.sValue), (e = this.eValue);\n let r,\n a,\n n,\n o,\n l,\n p = this.shapes.length,\n c = 0;\n if (e === s)\n for (h = 0; h < p; h += 1)\n this.shapes[h].localShapeCollection.releaseShapes(),\n (this.shapes[h].shape._mdf = !0),\n (this.shapes[h].shape.paths = this.shapes[h].localShapeCollection),\n this._mdf && (this.shapes[h].pathsData.length = 0);\n else if ((1 === e && 0 === s) || (0 === e && 1 === s)) {\n if (this._mdf)\n for (h = 0; h < p; h += 1) (this.shapes[h].pathsData.length = 0), (this.shapes[h].shape._mdf = !0);\n } else {\n let d,\n u,\n f = [];\n for (h = 0; h < p; h += 1)\n if (((d = this.shapes[h]), d.shape._mdf || this._mdf || t || 2 === this.m)) {\n if (((i = d.shape.paths), (a = i._length), (l = 0), !d.shape._mdf && d.pathsData.length))\n l = d.totalShapeLength;\n else {\n for (n = this.releasePathsData(d.pathsData), r = 0; r < a; r += 1)\n (o = H.getSegmentsLength(i.shapes[r])), n.push(o), (l += o.totalLength);\n (d.totalShapeLength = l), (d.pathsData = n);\n }\n (c += l), (d.shape._mdf = !0);\n } else d.shape.paths = d.localShapeCollection;\n let m,\n g = s,\n y = e,\n v = 0;\n for (h = p - 1; h >= 0; h -= 1)\n if (((d = this.shapes[h]), d.shape._mdf)) {\n for (\n u = d.localShapeCollection,\n u.releaseShapes(),\n 2 === this.m && p > 1\n ? ((m = this.calculateShapeEdges(s, e, d.totalShapeLength, v, c)), (v += d.totalShapeLength))\n : (m = [[g, y]]),\n a = m.length,\n r = 0;\n r < a;\n r += 1\n ) {\n (g = m[r][0]),\n (y = m[r][1]),\n (f.length = 0),\n y <= 1\n ? f.push({ s: d.totalShapeLength * g, e: d.totalShapeLength * y })\n : g >= 1\n ? f.push({ s: d.totalShapeLength * (g - 1), e: d.totalShapeLength * (y - 1) })\n : (f.push({ s: d.totalShapeLength * g, e: d.totalShapeLength }),\n f.push({ s: 0, e: d.totalShapeLength * (y - 1) }));\n let t = this.addShapes(d, f[0]);\n if (f[0].s !== f[0].e) {\n if (f.length > 1) {\n if (d.shape.paths.shapes[d.shape.paths._length - 1].c) {\n let s = t.pop();\n this.addPaths(t, u), (t = this.addShapes(d, f[1], s));\n } else this.addPaths(t, u), (t = this.addShapes(d, f[1]));\n }\n this.addPaths(t, u);\n }\n }\n d.shape.paths = u;\n }\n }\n }\n addPaths(t, s) {\n const e = t.length;\n for (let i = 0; i < e; i += 1) s.addShape(t[i]);\n }\n addSegment(t, s, e, i, h, r, a) {\n h.setXYAt(s[0], s[1], 'o', r),\n h.setXYAt(e[0], e[1], 'i', r + 1),\n a && h.setXYAt(t[0], t[1], 'v', r),\n h.setXYAt(i[0], i[1], 'v', r + 1);\n }\n addSegmentFromArray(t, s, e, i) {\n s.setXYAt(t[1], t[5], 'o', e),\n s.setXYAt(t[2], t[6], 'i', e + 1),\n i && s.setXYAt(t[0], t[4], 'v', e),\n s.setXYAt(t[3], t[7], 'v', e + 1);\n }\n addShapes(t, s, e) {\n let i,\n h,\n r,\n a,\n n,\n o,\n l,\n p,\n c = t.pathsData,\n d = t.shape.paths.shapes,\n u = t.shape.paths._length,\n f = 0,\n m = [],\n g = !0;\n for (\n e ? ((n = e._length), (p = e._length)) : ((e = b.newElement()), (n = 0), (p = 0)), m.push(e), i = 0;\n i < u;\n i += 1\n ) {\n for (o = c[i].lengths, e.c = d[i].c, r = d[i].c ? o.length : o.length + 1, h = 1; h < r; h += 1)\n if (((a = o[h - 1]), f + a.addedLength < s.s)) (f += a.addedLength), (e.c = !1);\n else {\n if (f > s.e) {\n e.c = !1;\n break;\n }\n s.s <= f && s.e >= f + a.addedLength\n ? (this.addSegment(d[i].v[h - 1], d[i].o[h - 1], d[i].i[h], d[i].v[h], e, n, g), (g = !1))\n : ((l = H.getNewSegment(\n d[i].v[h - 1],\n d[i].v[h],\n d[i].o[h - 1],\n d[i].i[h],\n (s.s - f) / a.addedLength,\n (s.e - f) / a.addedLength,\n o[h - 1],\n )),\n this.addSegmentFromArray(l, e, n, g),\n (g = !1),\n (e.c = !1)),\n (f += a.addedLength),\n (n += 1);\n }\n if (d[i].c && o.length) {\n if (((a = o[h - 1]), f <= s.e)) {\n let t = o[h - 1].addedLength;\n s.s <= f && s.e >= f + t\n ? (this.addSegment(d[i].v[h - 1], d[i].o[h - 1], d[i].i[0], d[i].v[0], e, n, g), (g = !1))\n : ((l = H.getNewSegment(\n d[i].v[h - 1],\n d[i].v[0],\n d[i].o[h - 1],\n d[i].i[0],\n (s.s - f) / t,\n (s.e - f) / t,\n o[h - 1],\n )),\n this.addSegmentFromArray(l, e, n, g),\n (g = !1),\n (e.c = !1));\n } else e.c = !1;\n (f += a.addedLength), (n += 1);\n }\n if (\n (e._length &&\n (e.setXYAt(e.v[p][0], e.v[p][1], 'i', p),\n e.setXYAt(e.v[e._length - 1][0], e.v[e._length - 1][1], 'o', e._length - 1)),\n f > s.e)\n )\n break;\n i < u - 1 && ((e = b.newElement()), (g = !0), m.push(e), (n = 0));\n }\n return m;\n }\n },\n),\n bt(\n 'rd',\n class extends At {\n initModifierProperties(t, s) {\n (this.getValue = this.processKeys),\n (this.rd = pt.getProp(t, s.r, 0, null, this)),\n (this._isAnimated = !!this.rd.effectsSequence.length);\n }\n processPath(t, s) {\n const e = b.newElement();\n let i;\n e.c = t.c;\n let h,\n r,\n a,\n n,\n o,\n l,\n p,\n c,\n d,\n u,\n f,\n m,\n g = t._length,\n y = 0;\n for (i = 0; i < g; i += 1)\n (h = t.v[i]),\n (a = t.o[i]),\n (r = t.i[i]),\n h[0] === a[0] && h[1] === a[1] && h[0] === r[0] && h[1] === r[1]\n ? (0 !== i && i !== g - 1) || t.c\n ? ((n = 0 === i ? t.v[g - 1] : t.v[i - 1]),\n (o = Math.sqrt(Math.pow(h[0] - n[0], 2) + Math.pow(h[1] - n[1], 2))),\n (l = o ? Math.min(o / 2, s) / o : 0),\n (p = f = h[0] + (n[0] - h[0]) * l),\n (c = m = h[1] - (h[1] - n[1]) * l),\n (d = p - 0.5519 * (p - h[0])),\n (u = c - 0.5519 * (c - h[1])),\n e.setTripleAt(p, c, d, u, f, m, y),\n (y += 1),\n (n = i === g - 1 ? t.v[0] : t.v[i + 1]),\n (o = Math.sqrt(Math.pow(h[0] - n[0], 2) + Math.pow(h[1] - n[1], 2))),\n (l = o ? Math.min(o / 2, s) / o : 0),\n (p = d = h[0] + (n[0] - h[0]) * l),\n (c = u = h[1] + (n[1] - h[1]) * l),\n (f = p - 0.5519 * (p - h[0])),\n (m = c - 0.5519 * (c - h[1])),\n e.setTripleAt(p, c, d, u, f, m, y),\n (y += 1))\n : (e.setTripleAt(h[0], h[1], a[0], a[1], r[0], r[1], y), (y += 1))\n : (e.setTripleAt(t.v[i][0], t.v[i][1], t.o[i][0], t.o[i][1], t.i[i][0], t.i[i][1], y), (y += 1));\n return e;\n }\n processShapes(t) {\n let s,\n e,\n i,\n h,\n r = this.shapes.length,\n a = this.rd.v;\n if (0 !== a) {\n let n, o;\n for (e = 0; e < r; e += 1) {\n if (((n = this.shapes[e]), (o = n.localShapeCollection), n.shape._mdf || this._mdf || t))\n for (\n o.releaseShapes(), n.shape._mdf = !0, s = n.shape.paths.shapes, h = n.shape.paths._length, i = 0;\n i < h;\n i += 1\n )\n o.addShape(this.processPath(s[i], a));\n n.shape.paths = n.localShapeCollection;\n }\n }\n this.dynamicProperties.length || (this._mdf = !1);\n }\n },\n ),\n bt(\n 'rp',\n class extends At {\n initModifierProperties(t, s) {\n (this.getValue = this.processKeys),\n (this.c = pt.getProp(t, s.c, 0, null, this)),\n (this.o = pt.getProp(t, s.o, 0, null, this)),\n (this.tr = Ft(t, s.tr, this)),\n (this.so = pt.getProp(t, s.tr.so, 0, 0.01, this)),\n (this.eo = pt.getProp(t, s.tr.eo, 0, 0.01, this)),\n (this.data = s),\n this.dynamicProperties.length || this.getValue(!0),\n (this._isAnimated = !!this.dynamicProperties.length),\n (this.pMatrix = new kt()),\n (this.rMatrix = new kt()),\n (this.sMatrix = new kt()),\n (this.tMatrix = new kt()),\n (this.matrix = new kt());\n }\n applyTransforms(t, s, e, i, h, r) {\n let a = r ? -1 : 1,\n n = i.s.v[0] + (1 - i.s.v[0]) * (1 - h),\n o = i.s.v[1] + (1 - i.s.v[1]) * (1 - h);\n t.translate(i.p.v[0] * a * h, i.p.v[1] * a * h, i.p.v[2]),\n s.translate(-i.a.v[0], -i.a.v[1], i.a.v[2]),\n s.rotate(-i.r.v * a * h),\n s.translate(i.a.v[0], i.a.v[1], i.a.v[2]),\n e.translate(-i.a.v[0], -i.a.v[1], i.a.v[2]),\n e.scale(r ? 1 / n : n, r ? 1 / o : o),\n e.translate(i.a.v[0], i.a.v[1], i.a.v[2]);\n }\n init(t, s, e, i) {\n for (\n this.elem = t,\n this.arr = s,\n this.pos = e,\n this.elemsData = i,\n this._currentCopies = 0,\n this._elements = [],\n this._groups = [],\n this.frameId = -1,\n this.initDynamicPropertyContainer(t),\n this.initModifierProperties(t, s[e]);\n e > 0;\n\n )\n (e -= 1), this._elements.unshift(s[e]);\n this.dynamicProperties.length ? (this.k = !0) : this.getValue(!0);\n }\n resetElements(t) {\n const s = t.length;\n for (let e = 0; e < s; e += 1) (t[e]._processed = !1), 'gr' === t[e].ty && this.resetElements(t[e].it);\n }\n cloneElements(t) {\n let s = JSON.parse(JSON.stringify(t));\n return this.resetElements(s), s;\n }\n changeGroupRender(t, s) {\n const e = t.length;\n for (let i = 0; i < e; i += 1) (t[i]._render = s), 'gr' === t[i].ty && this.changeGroupRender(t[i].it, s);\n }\n processShapes(t) {\n if (this._mdf || t) {\n let t = Math.ceil(this.c.v);\n if (this._groups.length < t) {\n for (; this._groups.length < t; ) {\n let t = { it: this.cloneElements(this._elements), ty: 'gr' };\n t.it.push({\n a: { a: 0, ix: 1, k: [0, 0] },\n nm: 'Transform',\n o: { a: 0, ix: 7, k: 100 },\n p: { a: 0, ix: 2, k: [0, 0] },\n r: {\n a: 1,\n ix: 6,\n k: [\n { s: 0, e: 0, t: 0 },\n { s: 0, e: 0, t: 1 },\n ],\n },\n s: { a: 0, ix: 3, k: [100, 100] },\n sa: { a: 0, ix: 5, k: 0 },\n sk: { a: 0, ix: 4, k: 0 },\n ty: 'tr',\n }),\n this.arr.splice(0, 0, t),\n this._groups.splice(0, 0, t),\n (this._currentCopies += 1);\n }\n this.elem.reloadShapes();\n }\n let s,\n e,\n i = 0;\n for (s = 0; s <= this._groups.length - 1; s += 1)\n (e = i < t), (this._groups[s]._render = e), this.changeGroupRender(this._groups[s].it, e), (i += 1);\n this._currentCopies = t;\n let h = this.o.v,\n r = h % 1,\n a = h > 0 ? Math.floor(h) : Math.ceil(h),\n n = this.pMatrix.props,\n o = this.rMatrix.props,\n l = this.sMatrix.props;\n this.pMatrix.reset(), this.rMatrix.reset(), this.sMatrix.reset(), this.tMatrix.reset(), this.matrix.reset();\n let p = 0;\n if (h > 0) {\n for (; p < a; ) this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, 1, !1), (p += 1);\n r && (this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, r, !1), (p += r));\n } else if (h < 0) {\n for (; p > a; ) this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, 1, !0), (p -= 1);\n r && (this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, -r, !0), (p -= r));\n }\n s = 1 === this.data.m ? 0 : this._currentCopies - 1;\n const c = 1 === this.data.m ? 1 : -1;\n for (i = this._currentCopies; i; ) {\n const t = this.elemsData[s].it,\n e = t[t.length - 1].transform.mProps.v.props,\n h = e.length;\n if (\n ((t[t.length - 1].transform.mProps._mdf = !0),\n (t[t.length - 1].transform.op._mdf = !0),\n (t[t.length - 1].transform.op.v = this.so.v + (this.eo.v - this.so.v) * (s / (this._currentCopies - 1))),\n 0 !== p)\n ) {\n ((0 !== s && 1 === c) || (s !== this._currentCopies - 1 && -1 === c)) &&\n this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, 1, !1),\n this.matrix.transform(\n o[0],\n o[1],\n o[2],\n o[3],\n o[4],\n o[5],\n o[6],\n o[7],\n o[8],\n o[9],\n o[10],\n o[11],\n o[12],\n o[13],\n o[14],\n o[15],\n ),\n this.matrix.transform(\n l[0],\n l[1],\n l[2],\n l[3],\n l[4],\n l[5],\n l[6],\n l[7],\n l[8],\n l[9],\n l[10],\n l[11],\n l[12],\n l[13],\n l[14],\n l[15],\n ),\n this.matrix.transform(\n n[0],\n n[1],\n n[2],\n n[3],\n n[4],\n n[5],\n n[6],\n n[7],\n n[8],\n n[9],\n n[10],\n n[11],\n n[12],\n n[13],\n n[14],\n n[15],\n );\n for (let t = 0; t < h; t += 1) e[t] = this.matrix.props[t];\n this.matrix.reset();\n } else {\n this.matrix.reset();\n for (let t = 0; t < h; t += 1) e[t] = this.matrix.props[t];\n }\n (p += 1), (i -= 1), (s += c);\n }\n } else {\n let t = this._currentCopies,\n s = 0;\n const e = 1;\n for (; t; ) {\n const i = this.elemsData[s].it;\n (i[i.length - 1].transform.mProps._mdf = !1), (i[i.length - 1].transform.op._mdf = !1), (t -= 1), (s += e);\n }\n }\n }\n addShape() {}\n },\n ),\n bt(\n 'ms',\n class extends At {\n initModifierProperties(t, s) {\n (this.getValue = this.processKeys), (this.data = s), (this.positions = []);\n }\n processKeys(t, s) {\n (t !== this.frameId || s) && (this._mdf = !0);\n }\n addShapeToModifier() {\n this.positions.push([]);\n }\n processPath(t, s, e) {\n let i,\n h,\n r,\n a,\n n = t.v.length,\n o = [],\n l = [],\n p = [];\n for (i = 0; i < n; i += 1) {\n e.v[i] ||\n ((e.v[i] = [t.v[i][0], t.v[i][1]]),\n (e.o[i] = [t.o[i][0], t.o[i][1]]),\n (e.i[i] = [t.i[i][0], t.i[i][1]]),\n (e.distV[i] = 0),\n (e.distO[i] = 0),\n (e.distI[i] = 0)),\n (h = Math.atan2(t.v[i][1] - s[1], t.v[i][0] - s[0])),\n (r = s[0] - e.v[i][0]),\n (a = s[1] - e.v[i][1]);\n let n = Math.sqrt(r * r + a * a);\n (e.distV[i] += (n - e.distV[i]) * this.data.dc),\n (e.v[i][0] = (Math.cos(h) * Math.max(0, this.data.maxDist - e.distV[i])) / 2 + t.v[i][0]),\n (e.v[i][1] = (Math.sin(h) * Math.max(0, this.data.maxDist - e.distV[i])) / 2 + t.v[i][1]),\n (h = Math.atan2(t.o[i][1] - s[1], t.o[i][0] - s[0])),\n (r = s[0] - e.o[i][0]),\n (a = s[1] - e.o[i][1]),\n (n = Math.sqrt(r * r + a * a)),\n (e.distO[i] += (n - e.distO[i]) * this.data.dc),\n (e.o[i][0] = (Math.cos(h) * Math.max(0, this.data.maxDist - e.distO[i])) / 2 + t.o[i][0]),\n (e.o[i][1] = (Math.sin(h) * Math.max(0, this.data.maxDist - e.distO[i])) / 2 + t.o[i][1]),\n (h = Math.atan2(t.i[i][1] - s[1], t.i[i][0] - s[0])),\n (r = s[0] - e.i[i][0]),\n (a = s[1] - e.i[i][1]),\n (n = Math.sqrt(r * r + a * a)),\n (e.distI[i] += (n - e.distI[i]) * this.data.dc),\n (e.i[i][0] = (Math.cos(h) * Math.max(0, this.data.maxDist - e.distI[i])) / 2 + t.i[i][0]),\n (e.i[i][1] = (Math.sin(h) * Math.max(0, this.data.maxDist - e.distI[i])) / 2 + t.i[i][1]),\n o.push(e.v[i]),\n l.push(e.o[i]),\n p.push(e.i[i]);\n }\n return { v: o, o: l, i: p, c: t.c };\n }\n processShapes() {\n let t,\n s,\n e,\n i,\n h = this.elem.globalData.mouseX,\n r = this.elem.globalData.mouseY,\n a = this.shapes.length;\n if (h) {\n let n,\n o = this.elem.globalToLocal([h, r, 0]),\n l = [];\n for (s = 0; s < a; s += 1)\n if (((n = this.shapes[s]), n.shape._mdf || this._mdf)) {\n for (n.shape._mdf = !0, t = n.shape.paths, i = t.length, e = 0; e < i; e += 1)\n this.positions[s][e] ||\n (this.positions[s][e] = { v: [], o: [], i: [], distV: [], distO: [], distI: [] }),\n l.push(this.processPath(t[e], o, this.positions[s][e]));\n (n.shape.paths = l), (n.last = l);\n } else n.shape.paths = n.last;\n }\n }\n },\n );\nvar It = {\n getModifier: function (t, s, e) {\n return new Ct[t](s, e);\n },\n};\nclass Et extends O {\n constructor(t, s, e) {\n let i;\n super(),\n (this.elem = t),\n (this.frameId = -1),\n (this.dataProps = D(s.length)),\n (this.k = !1),\n (this.dashArray = w('float32', s.length ? s.length - 1 : 0)),\n (this.dashoffset = w('float32', 1)),\n this.initDynamicPropertyContainer(e);\n let h,\n r = s.length || 0;\n for (i = 0; i < r; i += 1)\n (h = pt.getProp(t, s[i].v, 0, 0, this)), (this.k = h.k || this.k), (this.dataProps[i] = { n: s[i].n, p: h });\n this.k || this.getValue(!0), (this._isAnimated = this.k);\n }\n getValue(t, s) {\n if (\n (t !== this.frameId || s) &&\n ((this.frameId = t), this.iterateDynamicProperties(), (this._mdf = this._mdf || s), this._mdf)\n ) {\n let t = 0,\n s = this.dataProps.length;\n for (t = 0; t < s; t += 1)\n 'o' != this.dataProps[t].n\n ? (this.dashArray[t] = this.dataProps[t].p.v)\n : (this.dashoffset[0] = this.dataProps[t].p.v);\n }\n }\n}\nclass Vt extends O {\n constructor(t, s, e) {\n super(), (this.data = s), (this.c = w('uint8c', 4 * s.p));\n let i = s.k.k[0].s ? s.k.k[0].s.length - 4 * s.p : s.k.k.length - 4 * s.p;\n (this.o = w('float32', i)),\n (this._cmdf = !1),\n (this._omdf = !1),\n (this._collapsable = this.checkCollapsable()),\n (this._hasOpacity = i),\n this.initDynamicPropertyContainer(e),\n (this.prop = pt.getProp(t, s.k, 1, null, this)),\n (this.k = this.prop.k),\n this.getValue(!0);\n }\n comparePoints(t, s) {\n let e,\n i = 0,\n h = this.o.length / 2;\n for (; i < h; ) {\n if (((e = Math.abs(t[4 * i] - t[4 * s + 2 * i])), e > 0.01)) return !1;\n i += 1;\n }\n return !0;\n }\n checkCollapsable() {\n if (this.o.length / 2 != this.c.length / 4) return !1;\n if (this.data.k.k[0].s) {\n let t = 0,\n s = this.data.k.k.length;\n for (; t < s; ) {\n if (!this.comparePoints(this.data.k.k[t].s, this.data.p)) return !1;\n t += 1;\n }\n } else if (!this.comparePoints(this.data.k.k, this.data.p)) return !1;\n return !0;\n }\n getValue(t) {\n if ((this.prop.getValue(), (this._mdf = !1), (this._cmdf = !1), (this._omdf = !1), this.prop._mdf || t)) {\n let s,\n e,\n i,\n h = 4 * this.data.p;\n for (s = 0; s < h; s += 1)\n (e = s % 4 == 0 ? 100 : 255),\n (i = Math.round(this.prop.v[s] * e)),\n this.c[s] !== i && ((this.c[s] = i), (this._cmdf = !t));\n if (this.o.length)\n for (h = this.prop.v.length, s = 4 * this.data.p; s < h; s += 1)\n (e = s % 2 == 0 ? 100 : 1),\n (i = s % 2 == 0 ? Math.round(100 * this.prop.v[s]) : this.prop.v[s]),\n this.o[s - 4 * this.data.p] !== i && ((this.o[s - 4 * this.data.p] = i), (this._omdf = !t));\n this._mdf = !t;\n }\n }\n}\nclass Nt extends O {\n constructor(t, s, e) {\n super(),\n (this.frameId = -1),\n (this.keyframesManager = t),\n (this.elem = t.elem),\n (this.session = e),\n (this.shapes = []),\n (this.shapesData = s),\n (this.stylesList = []),\n (this.itemsData = []),\n (this.prevViewData = []),\n (this.shapeModifiers = []),\n (this.processedElements = []),\n (this.transformsManager = new St()),\n this.initDynamicPropertyContainer(t),\n (this.lcEnum = { 1: 'butt', 2: 'round', 3: 'square' }),\n (this.ljEnum = { 1: 'miter', 2: 'round', 3: 'bevel' }),\n (this._isFirstFrame = !0),\n (this.transformHelper = { opacity: 1, _opMdf: !1 }),\n this.searchShapes(this.shapesData, this.itemsData, this.prevViewData, !0, []),\n this._isAnimated ||\n ((this.transformHelper.opacity = 1),\n (this.transformHelper._opMdf = !1),\n this.updateModifiers(this.frameId),\n this.transformsManager.processSequences(this._isFirstFrame),\n this.updateShape(this.transformHelper, this.shapesData, this.itemsData),\n this.updateGrahpics());\n }\n createStyleElement(t, s) {\n const e = new Dt(this.elem, t, this.transformsManager.addTransformSequence(s)),\n i = {};\n if (\n ('fl' == t.ty || 'st' == t.ty\n ? ((i.c = pt.getProp(this, t.c, 1, 255, this)), i.c.k || (e.co = i.c.v))\n : ('gf' !== t.ty && 'gs' !== t.ty) ||\n ((i.s = pt.getProp(this, t.s, 1, null, this)),\n (i.e = pt.getProp(this, t.e, 1, null, this)),\n (i.h = pt.getProp(this, t.h || { k: 0 }, 0, 0.01, this)),\n (i.a = pt.getProp(this, t.a || { k: 0 }, 0, U, this)),\n (i.g = new Vt(this, t.g, this))),\n (i.o = pt.getProp(this, t.o, 0, 0.01, this)),\n 'st' == t.ty || 'gs' == t.ty)\n ) {\n if (\n ((e.lc = this.lcEnum[t.lc] || 'round'),\n (e.lj = this.ljEnum[t.lj] || 'round'),\n 1 == t.lj && (e.ml = t.ml),\n (i.w = pt.getProp(this, t.w, 0, null, this)),\n i.w.k || (e.wi = i.w.v),\n t.d)\n ) {\n let s = new Et(this, t.d, 'canvas', this);\n (i.d = s), i.d.k || ((e.da = i.d.dashArray), (e.do = i.d.dashoffset[0]));\n }\n } else e.r = 2 === t.r ? 'evenodd' : 'nonzero';\n return this.stylesList.push(e), (i.style = e), i;\n }\n addShapeToModifiers(t) {\n let s,\n e = this.shapeModifiers.length;\n for (s = 0; s < e; s += 1) this.shapeModifiers[s].addShape(t);\n }\n isShapeInAnimatedModifiers(t) {\n let s = this.shapeModifiers.length;\n for (; 0 < s; ) if (this.shapeModifiers[0].isAnimatedWithShape(t)) return !0;\n return !1;\n }\n updateModifiers(t) {\n if (!this.shapeModifiers.length) return;\n let s,\n e = this.shapes.length;\n for (s = 0; s < e; s += 1) this.shapes[s].sh.reset();\n for (e = this.shapeModifiers.length, s = e - 1; s >= 0; s -= 1)\n this.shapeModifiers[s].processShapes(t, this._isFirstFrame);\n }\n searchProcessedElement(t) {\n let s = this.processedElements,\n e = 0,\n i = s.length;\n for (; e < i; ) {\n if (s[e].elem === t) return s[e].pos;\n e += 1;\n }\n return 0;\n }\n addProcessedElement(t, s) {\n let e = this.processedElements,\n i = e.length;\n for (; i; ) if (((i -= 1), e[i].elem === t)) return void (e[i].pos = s);\n e.push(new xt(t, s));\n }\n createGroupElement() {\n return { it: [], prevViewData: [] };\n }\n createTransformElement(t) {\n return {\n transform: {\n opacity: 1,\n _opMdf: !1,\n key: this.transformsManager.getNewKey(),\n op: pt.getProp(this, t.o, 0, 0.01, this),\n mProps: Ft(this, t, this),\n },\n };\n }\n createShapeElement(t) {\n const s = new Mt(this, t, this.stylesList, this.transformsManager);\n return this.shapes.push(s), this.addShapeToModifiers(s), s;\n }\n reloadShapes() {\n let t;\n this._isFirstFrame = !0;\n let s = this.itemsData.length;\n for (t = 0; t < s; t += 1) this.prevViewData[t] = this.itemsData[t];\n for (\n this.searchShapes(this.shapesData, this.itemsData, this.prevViewData, !0, []),\n s = this.dynamicProperties.length,\n t = 0;\n t < s;\n t += 1\n )\n this.dynamicProperties[t].getValue();\n this.updateModifiers(), this.transformsManager.processSequences(this._isFirstFrame);\n }\n addTransformToStyleList(t) {\n const s = this.stylesList.length;\n for (let e = 0; e < s; e += 1) this.stylesList[e].closed || this.stylesList[e].transforms.push(t);\n }\n removeTransformFromStyleList() {\n const t = this.stylesList.length;\n for (let s = 0; s < t; s += 1) this.stylesList[s].closed || this.stylesList[s].transforms.pop();\n }\n closeStyles(t) {\n const s = t.length;\n for (let e = 0; e < s; e += 1) t[e].closed = !0;\n }\n searchShapes(t, s, e, i, h) {\n let r,\n a,\n n,\n o,\n l,\n p,\n c = t.length - 1,\n d = [],\n u = [],\n f = [].concat(h);\n for (r = c; r >= 0; r -= 1) {\n if (\n ((o = this.searchProcessedElement(t[r])),\n o ? (s[r] = e[o - 1]) : (t[r]._shouldRender = i),\n 'fl' == t[r].ty || 'st' == t[r].ty || 'gf' == t[r].ty || 'gs' == t[r].ty)\n )\n o ? (s[r].style.closed = !1) : (s[r] = this.createStyleElement(t[r], f)), d.push(s[r].style);\n else if ('gr' == t[r].ty) {\n if (o) for (n = s[r].it.length, a = 0; a < n; a += 1) s[r].prevViewData[a] = s[r].it[a];\n else s[r] = this.createGroupElement(t[r]);\n this.searchShapes(t[r].it, s[r].it, s[r].prevViewData, i, f);\n } else\n 'tr' == t[r].ty\n ? (o || ((p = this.createTransformElement(t[r])), (s[r] = p)),\n f.push(s[r]),\n this.addTransformToStyleList(s[r]))\n : 'sh' == t[r].ty || 'rc' == t[r].ty || 'el' == t[r].ty || 'sr' == t[r].ty\n ? o || (s[r] = this.createShapeElement(t[r]))\n : 'tm' == t[r].ty || 'rd' == t[r].ty\n ? (o\n ? ((l = s[r]), (l.closed = !1))\n : ((l = It.getModifier(t[r].ty)), l.init(this, t[r]), (s[r] = l), this.shapeModifiers.push(l)),\n u.push(l))\n : 'rp' == t[r].ty &&\n (o\n ? ((l = s[r]), (l.closed = !0))\n : ((l = It.getModifier(t[r].ty)),\n (s[r] = l),\n l.init(this, t, r, s),\n this.shapeModifiers.push(l),\n (i = !1)),\n u.push(l));\n this.addProcessedElement(t[r], r + 1);\n }\n for (this.removeTransformFromStyleList(), this.closeStyles(d), c = u.length, r = 0; r < c; r += 1) u[r].closed = !0;\n }\n updateShapeTransform(t, s) {\n (t._opMdf || s.op._mdf || this._isFirstFrame) && ((s.opacity = t.opacity), (s.opacity *= s.op.v), (s._opMdf = !0));\n }\n updateStyledShape(t, s) {\n if (this._isFirstFrame || s._mdf || t.transforms._mdf) {\n let e,\n i,\n h,\n r = t.trNodes,\n a = s.paths,\n n = a._length;\n r.length = 0;\n let o = t.transforms.finalTransform;\n for (h = 0; h < n; h += 1) {\n let t = a.shapes[h];\n if (t && t.v) {\n for (i = t._length, e = 1; e < i; e += 1)\n 1 === e && r.push({ t: 'm', p: o.applyToPointArray(t.v[0][0], t.v[0][1], 0) }),\n r.push({ t: 'c', pts: o.applyToTriplePoints(t.o[e - 1], t.i[e], t.v[e]) });\n 1 === i && r.push({ t: 'm', p: o.applyToPointArray(t.v[0][0], t.v[0][1], 0) }),\n t.c &&\n i &&\n (r.push({ t: 'c', pts: o.applyToTriplePoints(t.o[e - 1], t.i[0], t.v[0]) }), r.push({ t: 'z' }));\n }\n }\n t.trNodes = r;\n }\n }\n updatePath(t, s) {\n if (!0 !== t.hd && t._shouldRender) {\n let t,\n e = s.styledShapes.length;\n for (t = 0; t < e; t += 1) this.updateStyledShape(s.styledShapes[t], s.sh);\n }\n }\n updateFill(t, s, e) {\n const i = s.style;\n (s.c._mdf || this._isFirstFrame) && (i.co = s.c.v),\n (s.o._mdf || e._opMdf || this._isFirstFrame) && (i.coOp = s.o.v * e.opacity);\n }\n updateStroke(t, s, e) {\n let i = s.style,\n h = s.d;\n h && (h._mdf || this._isFirstFrame) && ((i.da = h.dashArray), (i.do = h.dashoffset[0])),\n (s.c._mdf || this._isFirstFrame) && (i.co = s.c.v),\n (s.o._mdf || e._opMdf || this._isFirstFrame) && (i.coOp = s.o.v * e.opacity),\n (s.w._mdf || this._isFirstFrame) && (i.wi = s.w.v);\n }\n updateGradientFill(t, s, e) {\n let i = s.style;\n (i.grd = s.g.c), (i.coOp = s.o.v * e.opacity);\n }\n updateShape(t, s, e) {\n let i = t;\n for (let h = s.length - 1; h >= 0; h -= 1)\n 'tr' == s[h].ty\n ? ((i = e[h].transform), this.updateShapeTransform(t, i))\n : 'sh' == s[h].ty || 'el' == s[h].ty || 'rc' == s[h].ty || 'sr' == s[h].ty\n ? this.updatePath(s[h], e[h])\n : 'fl' == s[h].ty\n ? this.updateFill(s[h], e[h], i)\n : 'st' == s[h].ty\n ? this.updateStroke(s[h], e[h], i)\n : 'gf' == s[h].ty || 'gs' == s[h].ty\n ? this.updateGradientFill(s[h], e[h], i)\n : 'gr' == s[h].ty && this.updateShape(i, s[h].it, e[h].it);\n }\n updateGrahpics() {\n const t = this.stylesList.length;\n for (let s = 0; s < t; s += 1) {\n this.stylesList[s].updateGrahpics();\n }\n }\n getValue(t) {\n t !== this.frameId &&\n (this.iterateDynamicProperties(t),\n (this.transformHelper.opacity = 1),\n (this.transformHelper._opMdf = !1),\n this.updateModifiers(t),\n this.transformsManager.processSequences(this._isFirstFrame),\n this.updateShape(this.transformHelper, this.shapesData, this.itemsData),\n this.updateGrahpics(),\n (this.frameId = t));\n }\n}\nclass qt extends Lt {\n constructor(t, s, e) {\n super(t, s), (this.frameId = -1), (this.hs = s), (this.session = e);\n }\n getValue(t) {\n t !== this.frameId && (this.iterateDynamicProperties(t), (this.frameId = t));\n }\n get x() {\n return this.p ? this.p.v[0] : this.px.v;\n }\n get y() {\n return this.p ? this.p.v[1] : this.py.v;\n }\n get anchorX() {\n return this.a.v[0];\n }\n get anchorY() {\n return this.a.v[1];\n }\n get scaleX() {\n return this.s.v[0];\n }\n get scaleY() {\n return this.s.v[1];\n }\n get rotation() {\n return (this.r && this.r.v) || 0;\n }\n get alpha() {\n return this.o.v;\n }\n}\nclass Ot {\n constructor(t) {\n (this.elem = t),\n (this._isFirstFrame = !1),\n (this.dynamicProperties = []),\n (this._mdf = !1),\n (this.transform = null),\n (this.masks = null),\n (this.shapes = null),\n (this._hasOutTypeExpression = !1),\n (this.needUpdateOverlap = !1),\n (this.isOverlapMode = !1),\n (this.visible = !0),\n (this._isFirstFrame = !0);\n }\n initFrame(t, s) {\n this.layer = t;\n const { local: e, global: i } = s;\n (this.session = s),\n (this.isOverlapLayer = this.layer.op >= e.op - e.st),\n (this.isOverlapMode = i.overlapMode),\n this.parseLayer(t, s);\n }\n outTypeExpressionMode() {\n (this._hasOutTypeExpression = !0), this.isOverlapLayer && (this.needUpdateOverlap = !0);\n }\n prepareProperties(t, s) {\n let e,\n i = this.dynamicProperties.length;\n for (e = 0; e < i; e += 1)\n (s || this.needUpdateOverlap || (this.elem._isParent && 'transform' === this.dynamicProperties[e].propType)) &&\n (this.dynamicProperties[e].getValue(t), this.dynamicProperties[e]._mdf && (this._mdf = !0));\n }\n addDynamicProperty(t) {\n -1 === this.dynamicProperties.indexOf(t) && this.dynamicProperties.push(t);\n }\n parseLayer({ ks: t, hasMask: s, masksProperties: e, shapes: i, tm: h }, r) {\n if (\n (t && (this.transform = new qt(this, t, r)),\n s && (this.masks = new _t(this, e, r)),\n i && (this.shapes = new Nt(this, i, r)),\n h)\n ) {\n const { frameRate: t } = r.global;\n this.tm = pt.getProp(this, h, 0, t, this);\n }\n }\n updateFrame(t) {\n this._mdf = !1;\n const e = s.inRange(t, this.layer.ip, this.layer.op);\n this.isOverlapMode && this.isOverlapLayer ? (this.visible = t >= this.layer.ip) : (this.visible = e),\n this.prepareProperties(t, e);\n }\n updateDisplay() {\n const t = this.elem.display;\n this.elem._isRoot ||\n (this.visible ? t.show() : t.hide(),\n (this._mdf || this.transform._mdf || this._isFirstFrame) && t.updateLottieTransform(this.transform),\n this.masks && (this.masks._mdf || this._isFirstFrame) && t.updateLottieMasks(this.masks)),\n (this._isFirstFrame = !1);\n }\n}\nclass Xt {\n constructor(t) {\n (this.data = t),\n void 0 === this.data.sr && (this.data.sr = 1),\n (this.offsetTime = t.st || 0),\n (this.fullname = t.nm || ''),\n (this.idname = t.ln || ''),\n (this.classnames = t.cl ? t.cl.split(' ') : []),\n (this.bodymovin = new Ot(this)),\n (this.displayType = ''),\n (this.display = null),\n (this.hierarchy = null),\n (this.lottieTreeParent = null);\n }\n initBodymovin(t, s) {\n this.bodymovin.initFrame(t, s), this.display && this.display.onSetupLottie && this.display.onSetupLottie();\n }\n hasValidMasks() {\n return !(!this.bodymovin.masks || !this.bodymovin.masks.hasMasks);\n }\n setHierarchy(t) {\n (this.hierarchy = t), this.display.setHierarchy(t.display);\n }\n initDisplayInstance(t, s) {\n return new (Tt(t))(this, s);\n }\n updateFrame(t) {\n this.bodymovin.updateFrame(t), this.bodymovin.updateDisplay();\n }\n}\nclass Yt extends Xt {\n constructor(t, s) {\n super(t);\n const { global: e } = s;\n this.session = s;\n const i = { layer: t, session: s };\n if (e.maskComp) {\n i.maskComp = e.maskComp;\n const { w: s, h: h } = t;\n i.viewport = { w: s, h: h };\n }\n (this.config = i),\n (this.childNodes = []),\n (this.displayType = wt.Type.Component),\n (this.innerDisplay = null),\n (this.display = this.initDisplayInstance(this.displayType, i)),\n this.initBodymovin(t, s);\n }\n updateFrame(t) {\n if ((this.bodymovin.updateFrame(t), this.bodymovin.updateDisplay(), (t -= this.offsetTime), this.bodymovin.tm)) {\n let s = this.bodymovin.tm.v;\n s === this.data.op && (s = this.data.op - 1), (t = s);\n } else t /= this.data.sr;\n for (let s = 0; s < this.childNodes.length; s++) this.childNodes[s].updateFrame(t);\n }\n addChild(t) {\n (t.lottieTreeParent = this),\n this.childNodes.push(t),\n this.innerDisplay ? this.innerDisplay.addChild(t.display) : this.display.addChild(t.display);\n }\n}\nclass jt extends Xt {\n constructor(t, s) {\n super(t);\n const e = { layer: t, session: s, rect: { x: 0, y: 0, width: t.sw, height: t.sh }, color: t.sc };\n (this.config = e),\n (this.session = s),\n (this.displayType = wt.Type.Solid),\n (this.display = this.initDisplayInstance(this.displayType, e)),\n this.initBodymovin(t, s);\n }\n}\nclass zt extends Xt {\n constructor(t, e) {\n super(t);\n const {\n global: { textureLoader: i, assets: h },\n } = e,\n r = s.getAssets(t.refId, h),\n a = { layer: t, session: e, texture: i.getTextureById(r.id), asset: r };\n (this.config = a),\n (this.session = e),\n (this.displayType = wt.Type.Sprite),\n (this.display = this.initDisplayInstance(this.displayType, a)),\n this.initBodymovin(t, e);\n }\n}\nclass Bt extends Xt {\n constructor(t, s) {\n super(t);\n const e = { layer: t, session: s };\n (this.config = e),\n (this.session = s),\n (this.displayType = wt.Type.Shape),\n (this.display = this.initDisplayInstance(this.displayType, e)),\n this.initBodymovin(t, s);\n }\n}\nclass Rt extends Xt {\n constructor(t, s) {\n super(t);\n const e = { layer: t, session: s };\n (this.config = e),\n (this.session = s),\n (this.displayType = wt.Type.Null),\n (this.display = this.initDisplayInstance(this.displayType, e)),\n this.initBodymovin(t, s);\n }\n}\nclass Kt extends e {\n constructor(t) {\n super(),\n (this.living = !0),\n (this.infinite = t.infinite || !1),\n (this.repeats = t.repeats || 0),\n (this.alternate = t.alternate || !1),\n (this.wait = t.wait || 0),\n (this.delay = t.delay || 0),\n (this.overlapMode = t.overlapMode || !1),\n (this.timeScale = s.isNumber(t.timeScale) ? t.timeScale : 1),\n (this.frameNum = 0),\n (this.isPaused = !0),\n (this.direction = 1),\n (this._lastFrame = -1 / 0),\n (this._repeatsCut = this.repeats),\n (this._delayCut = this.delay),\n (this._waitCut = this.wait),\n (this.segments = t.segments || {}),\n (this._segmentName = t.initSegment || ''),\n (this._prefix = t.prefix || ''),\n (this._autoLoad = !s.isBoolean(t.autoLoad) || t.autoLoad),\n (this._autoStart = !s.isBoolean(t.autoStart) || t.autoStart),\n (this._justDisplayOnImagesLoaded = !s.isBoolean(t.justDisplayOnImagesLoaded) || t.justDisplayOnImagesLoaded),\n (this._maskComp = t.maskComp || !1),\n (this.textureLoader = null),\n (this.jsonLoader = null),\n (this.root = null),\n (this.parent = null);\n const e = Tt(wt.Type.Container);\n if (\n ((this.group = new e()),\n (this.display = null),\n (this.isDisplayLoaded = !1),\n (this.isImagesLoaded = !1),\n (this._copyJSON = t.copyJSON || !1),\n t.keyframes)\n )\n !this._prefix && t.keyframes.prefix && (this._prefix = t.keyframes.prefix), this._setupDate(t.keyframes);\n else if (t.path) {\n let s = '';\n (s =\n -1 !== t.path.lastIndexOf('\\\\')\n ? t.path.substr(0, t.path.lastIndexOf('\\\\') + 1)\n : t.path.substr(0, t.path.lastIndexOf('/') + 1)),\n !this._prefix && s && (this._prefix = s),\n (this.jsonLoader = (function (t) {\n const s = i[h.Ajax];\n return s || console.warn('must register an ajax loader, before you parse an animation from path'), s(t);\n })(t.path)),\n this.jsonLoader.once('success', t => {\n this._setupDate(t);\n }),\n this.jsonLoader.once('error', t => {\n this.emit('error', t);\n });\n }\n }\n _setupDate(t) {\n (this._sourceData = t), this._copyJSON && (t = s.copyJSON(t)), g.completeData(t), (this.keyframes = t);\n const { w: e, h: r, st: a = 0, fr: n, ip: o, op: l, assets: p } = t;\n (this.frameRate = n), (this.frameMult = n / 1e3), (this._defaultSegment = [o, l]);\n const c = (this._segmentName && this.segments[this._segmentName]) || this._defaultSegment;\n (this.beginFrame = c[0]),\n (this.endFrame = c[1]),\n (this._timePerFrame = 1e3 / n),\n (this.duration = Math.floor(this.endFrame - this.beginFrame));\n let d = null;\n const u = p.filter(t => t.u || t.p);\n u.length > 0\n ? ((this.textureLoader = d =\n (function (t, s) {\n const e = i[h.Texture];\n return (\n e || console.warn('must register an image loader, before you parse an animation some has image assets'),\n e(t, s)\n );\n })(u, { prefix: this._prefix, autoLoad: this._autoLoad })),\n d.loaded\n ? ((this.isImagesLoaded = !0), (this.isPaused = !this._autoStart), this.emit('ImageReady'))\n : (d.once('complete', () => {\n (this.isImagesLoaded = !0), this.emit('ImageReady');\n }),\n null !== this._pausedNeedSet &&\n ((this._pausedNeedSet = !0),\n d.once('complete', () => {\n this._pausedNeedSet && ((this._pausedNeedSet = !1), (this.isPaused = !this._autoStart));\n }))))\n : ((this.isImagesLoaded = !0), (this.isPaused = !this._autoStart));\n const f = {\n global: { assets: p, textureLoader: d, frameRate: n, maskComp: this._maskComp, overlapMode: this.overlapMode },\n local: { w: e, h: r, ip: o, op: l, st: a },\n };\n this._buildElements(f),\n null !== this.textureLoader &&\n this._justDisplayOnImagesLoaded &&\n !this.textureLoader.loaded &&\n null !== this._justDisplayNeedSet &&\n ((this.group.visible = !1),\n (this._justDisplayNeedSet = !0),\n this.textureLoader.once('complete', () => {\n this._justDisplayNeedSet && ((this._justDisplayNeedSet = !1), (this.group.visible = !0));\n })),\n (this.isDisplayLoaded = !0),\n this.update(0, !0);\n }\n _buildElements(t) {\n (this.root = this._extraCompositions(this.keyframes, t, !0)),\n (this.display = this.root.display),\n this.group.addChild(this.display),\n this.emit('DOMLoaded').emit('DisplayReady'),\n null === this.textureLoader\n ? this.emit('success')\n : this.textureLoader.loaded\n ? this.emit('success')\n : this.textureLoader.once('complete', () => this.emit('success'));\n }\n _extraCompositions(t, { global: e, local: i }, h = !1) {\n const { w: r, h: a, ip: n, op: o, st: l = 0 } = t,\n p = new Yt(t, { global: e, local: i });\n p._isRoot = h;\n const c = t.layers || s.getAssets(t.refId, e.assets).layers,\n d = { global: e, local: { w: r, h: a, ip: n, op: o, st: l } },\n u = this._createElements(c, d);\n for (let t = c.length - 1; t >= 0; t--) {\n const e = c[t],\n i = u[e.ind];\n if (i) {\n if (!s.isUndefined(e.parent)) {\n const t = u[e.parent];\n (t._isParent = !0), i.setHierarchy(t);\n }\n p.addChild(i);\n }\n }\n return p;\n }\n _createElements(t, s) {\n const e = {};\n for (let i = t.length - 1; i >= 0; i--) {\n const h = t[i];\n let r = null;\n if (void 0 === h.td) {\n switch (h.ty) {\n case 0:\n r = this._extraCompositions(h, s);\n break;\n case 1:\n r = new jt(h, s);\n break;\n case 2:\n r = new zt(h, s);\n break;\n case 3:\n r = new Rt(h, s);\n break;\n case 4:\n r = new Bt(h, s);\n break;\n default:\n continue;\n }\n r && (void 0 === h.ind && (h.ind = i), (e[h.ind] = r), (r.name = h.nm || null));\n }\n }\n return e;\n }\n getDisplayByQuerySelector(t) {\n const s = this.querySelector(t);\n return s && s.display ? s.display : (console.warn('can not find display which query with ', t), null);\n }\n _queryMatch(t, s, e) {\n const i = t.substr(0, 1),\n h = t.substr(1, t.length);\n let r = !1;\n return (\n (r = '#' === i ? s.idname === h : '.' === i ? -1 !== s.classnames.indexOf(h) : s.fullname === t),\n r && e.push(s),\n r\n );\n }\n _searchNodes(t, s, e, i = !1) {\n if (s.childNodes && s.childNodes.length > 0) {\n const h = [];\n for (let r = 0; r < s.childNodes.length; r++) {\n const a = s.childNodes[r];\n if (this._queryMatch(t, a, e) && i) return !0;\n a.childNodes && a.childNodes.length > 0 && h.push(a);\n }\n for (let s = 0; s < h.length; s++) if (this._searchNodes(t, h[s], e, i)) return !0;\n }\n return !1;\n }\n querySelector(t) {\n const s = [];\n return this._queryMatch(t, this.root, s) ? s[0] : (this._searchNodes(t, this.root, s, !0), s[0] || null);\n }\n querySelectorAll(t) {\n const s = [],\n e = '#' === t.substr(0, 1);\n return this._queryMatch(t, this.root, s) && e ? s : (this._searchNodes(t, this.root, s, e), s);\n }\n bindSlot(t, s) {\n return this.getDisplayByQuerySelector(t).addChild(s), this;\n }\n unbindSlot(t, s) {\n return this.getDisplayByQuerySelector(t).removeChild(s), this;\n }\n _emitFrame(t) {\n this.emit(`@${t}`);\n }\n update(t, s = !1) {\n if (!this.living || !this.isDisplayLoaded || (this.isPaused && !s)) return;\n const e = this._updateTime(t),\n i = this.beginFrame + this.frameNum;\n this.root.updateFrame(i);\n const h = i >> 0;\n this._lastFrame !== h && (this._emitFrame(this.direction > 0 ? h : this._lastFrame), (this._lastFrame = h)),\n !1 === e\n ? (this.emit('enterFrame', i), this.emit('update', this.frameNum / this.duration))\n : this.hadEnded !== e && !0 === e && this.emit('complete'),\n (this.hadEnded = e);\n }\n _updateTime(t) {\n const e = this.direction * this.timeScale * t;\n if (this._waitCut > 0) return (this._waitCut -= Math.abs(e)), null;\n if (this.isPaused || this._delayCut > 0) return this._delayCut > 0 && (this._delayCut -= Math.abs(e)), null;\n this.frameNum += e / this._timePerFrame;\n let i = !1;\n return (\n this._spill() &&\n (this._repeatsCut > 0 || this.infinite\n ? (this._repeatsCut > 0 && --this._repeatsCut,\n (this._delayCut = this.delay),\n this.alternate\n ? ((this.direction *= -1), (this.frameNum = s.codomainBounce(this.frameNum, 0, this.duration)))\n : ((this.direction = 1), (this.frameNum = s.euclideanModulo(this.frameNum, this.duration))),\n this.emit('loopComplete'))\n : (this.overlapMode || ((this.frameNum = s.clamp(this.frameNum, 0, this.duration)), (this.living = !1)),\n (i = !0))),\n i\n );\n }\n _spill() {\n const t = this.frameNum <= 0 && -1 === this.direction,\n s = this.frameNum >= this.duration && 1 === this.direction;\n return t || s;\n }\n frameToTime(t) {\n return t * this._timePerFrame;\n }\n setSpeed(t) {\n this.timeScale = t;\n }\n playSegment(t, e = {}) {\n if (!t) return;\n let i = null;\n s.isArray(t) ? (i = t) : s.isString(t) && ((i = this.segments[t]), s.isArray(i) && (this._segmentName = t)),\n s.isArray(i) &&\n ((this.beginFrame = s.isNumber(i[0]) ? i[0] : this._defaultSegment[0]),\n (this.endFrame = s.isNumber(i[1]) ? i[1] : this._defaultSegment[1]),\n s.isNumber(e.repeats) && (this.repeats = e.repeats),\n s.isBoolean(e.infinite) && (this.infinite = e.infinite),\n s.isBoolean(e.alternate) && (this.alternate = e.alternate),\n s.isNumber(e.wait) && (this.wait = e.wait),\n s.isNumber(e.delay) && (this.delay = e.delay),\n this.replay());\n }\n goToAndStop(t, s = !1) {\n (this.frameNum = s ? t : t * this.frameMult), this.update(0, !0), this.pause();\n }\n goToAndPlay(t, s = !1) {\n (this.frameNum = s ? t : t * this.frameMult), this.update(0, !0), this.resume();\n }\n getDuration(t) {\n const s = this.endFrame - this.beginFrame;\n return t ? s : s / this.frameRate;\n }\n setDirection(t) {\n return (this.direction = t < 0 ? -1 : 1), this;\n }\n pause() {\n return this._pausedNeedSet ? (this._pausedNeedSet = !1) : (this._pausedNeedSet = null), (this.isPaused = !0), this;\n }\n resume() {\n return this._pausedNeedSet ? (this._pausedNeedSet = !1) : (this._pausedNeedSet = null), (this.isPaused = !1), this;\n }\n play() {\n return this.resume();\n }\n replay() {\n return (\n this._pausedNeedSet ? (this._pausedNeedSet = !1) : (this._pausedNeedSet = null),\n (this.isPaused = !1),\n (this._repeatsCut = this.repeats),\n (this._delayCut = this.delay),\n (this.living = !0),\n (this.frameNum = 0),\n (this.duration = Math.floor(this.endFrame - this.beginFrame)),\n (this.direction = 1),\n this\n );\n }\n show() {\n this._justDisplayNeedSet ? (this._justDisplayNeedSet = !1) : (this._justDisplayNeedSet = null),\n (this.group.visible = !0);\n }\n hide() {\n this._justDisplayNeedSet ? (this._justDisplayNeedSet = !1) : (this._justDisplayNeedSet = null),\n (this.group.visible = !1);\n }\n destroy() {\n this.parent && this.parent.remove(this),\n this.group.parent && this.group.parent.removeChild(this.group),\n this.pause(),\n (this.root = null),\n (this.group = null),\n (this.display = null),\n this.textureLoader && (this.textureLoader.off('complete'), (this.textureLoader = null)),\n this.jsonLoader && (this.jsonLoader.off('success'), (this.jsonLoader = null)),\n (this.keyframes = null),\n (this.living = !1);\n }\n}\nclass Gt extends e {\n constructor(t) {\n super(),\n (this._lastTime = 0),\n (this._snippet = 0),\n (this.timeScale = 1),\n (this.isPaused = !1),\n (this.ticker = t.ticker ? t.ticker : t),\n (this.groups = []),\n (this.update = this.update.bind(this)),\n this.ticker && this.start();\n }\n add(t) {\n const s = arguments.length;\n if (s > 1) for (let t = 0; t < s; t++) this.add(arguments[t]);\n else null !== t.parent && t.parent.remove(t), (t.parent = this), this.groups.push(t);\n return t;\n }\n remove(t) {\n if (arguments.length > 1) for (let t = 0; t < arguments.length; t++) this.remove(arguments[t]);\n const s = this.groups.indexOf(t);\n -1 !== s && ((t.parent = null), this.groups.splice(s, 1));\n }\n parseAnimation(t) {\n const s = new Kt(t);\n return this.add(s);\n }\n setSpeed(t) {\n this.timeScale = t;\n }\n start() {\n return (this._lastTime = Date.now()), this.ticker.add(this.update), this;\n }\n stop() {\n return this.ticker.remove(this.update), this;\n }\n pause() {\n return (this.isPaused = !0), this;\n }\n resume() {\n return (this.isPaused = !1), this;\n }\n update() {\n if ((this.timeline(), this.isPaused)) return;\n const t = this.timeScale * this._snippet,\n s = this.groups.length;\n for (let e = 0; e < s; e++) {\n this.groups[e].update(t);\n }\n this.emit('update', this._snippet);\n }\n timeline() {\n let t = Date.now() - this._lastTime;\n (!this._lastTime || t > 200) && ((this._lastTime = Date.now()), (t = Date.now() - this._lastTime)),\n (this._lastTime += t),\n (this._snippet = t);\n }\n destroy() {\n for (let t = this.groups.length - 1; t >= 0; t--) this.groups[t].destroy();\n }\n}\nexport {\n Kt as AnimationGroup,\n Gt as AnimationManager,\n M as BezierEasing,\n wt as DisplayRegister,\n e as Eventer,\n r as LoaderRegister,\n pt as PropertyFactory,\n s as Tools,\n qt as TransformFrames,\n Lt as TransformProperty,\n};\n","import {\n Tools as t,\n Eventer as e,\n BezierEasing as s,\n TransformFrames as i,\n AnimationManager as n,\n} from './lottie-core';\nimport {\n Graphics as r,\n Container as h,\n Shader as o,\n glCore as a,\n WebGLRenderer as l,\n ObjectRenderer as p,\n utils as c,\n CanvasRenderer as u,\n BLEND_MODES as d,\n Matrix as f,\n Sprite as m,\n Rectangle as g,\n Texture as y,\n settings as w,\n UPDATE_PRIORITY as v,\n ticker as x,\n DisplayObject as b,\n Application as P,\n} from 'pixi.js';\nclass T extends r {\n constructor(t) {\n super(), (this.parentCompBox = t), this.lineStyle(0);\n }\n updateLayerMask(t) {\n for (let e = 0; e < t.viewData.length; e++) {\n if (t.viewData[e].inv) {\n const t = this.parentCompBox;\n this.moveTo(0, 0), this.lineTo(t.w, 0), this.lineTo(t.w, t.h), this.lineTo(0, t.h), this.lineTo(0, 0);\n }\n const s = t.viewData[e].v,\n i = s.v[0];\n this.moveTo(i[0], i[1]);\n const n = s._length;\n let r = 1;\n for (; r < n; r++) {\n const t = s.o[r - 1],\n e = s.i[r],\n i = s.v[r];\n this.bezierCurveTo(t[0], t[1], e[0], e[1], i[0], i[1]);\n }\n const h = s.o[r - 1],\n o = s.i[0],\n a = s.v[0];\n this.bezierCurveTo(h[0], h[1], o[0], o[1], a[0], a[1]), t.viewData[e].inv && this.addHole();\n }\n }\n updateMasks(t) {\n this.clear(), this.beginFill(0), this.updateLayerMask(t), this.endFill();\n }\n}\nclass M extends r {\n constructor(t) {\n super(), (this.viewport = t), this.lineStyle(0), this.initCompMask();\n }\n initCompMask() {\n this.clear(), this.beginFill(0);\n const t = this.viewport;\n this.moveTo(0, 0),\n this.lineTo(t.w, 0),\n this.lineTo(t.w, t.h),\n this.lineTo(0, t.h),\n this.lineTo(0, 0),\n this.endFill();\n }\n}\nclass k extends h {\n constructor(t, e) {\n super(), (this.lottieElement = t), (this.config = e);\n }\n onSetupLottie() {\n if (this.config.maskComp) {\n const t = this.config.viewport;\n (this.preCompMask = new M(t)), (this.mask = this.preCompMask), this.addChild(this.mask);\n }\n if (this.lottieElement.hasValidMasks()) {\n const t = this.config.session.local;\n if (((this.graphicsMasks = new T(t)), this.mask)) {\n const t = new h();\n (t.mask = this.graphicsMasks), t.addChild(this.mask), (this.lottieElement.innerDisplay = t), this.addChild(t);\n } else (this.mask = this.graphicsMasks), this.addChild(this.mask);\n }\n }\n setHierarchy(t) {\n this.hierarchy = t;\n }\n show() {\n this.visible = !0;\n }\n hide() {\n this.visible = !1;\n }\n updateLottieTransform(t) {\n (this.x = t.x),\n (this.y = t.y),\n (this.pivot.x = t.anchorX),\n (this.pivot.y = t.anchorY),\n (this.scale.x = t.scaleX),\n (this.scale.y = t.scaleY),\n (this.rotation = t.rotation),\n (this.alpha = t.alpha);\n }\n updateLottieMasks(t) {\n this.graphicsMasks && this.graphicsMasks.updateMasks(t);\n }\n}\nclass C extends o {\n constructor(t) {\n super(\n t,\n [\n 'attribute vec2 aVertexPosition;',\n 'uniform mat3 translationMatrix;',\n 'uniform mat3 projectionMatrix;',\n 'void main(void){',\n ' gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);',\n '}',\n ].join('\\n'),\n [\n 'uniform float alpha;',\n 'uniform vec3 color;',\n 'void main(void){',\n ' gl_FragColor = vec4(color * alpha, alpha);',\n '}',\n ].join('\\n'),\n );\n }\n}\nfunction S(t, e) {\n (this.buffer = new t(10)), (this.length = 0);\n}\nS.prototype = {\n reset() {\n this.length = 0;\n },\n destroy() {\n (this.buffer = null), (this.length = 0);\n },\n push(...t) {\n if (this.length + t.length > this.buffer.length) {\n const e = new this.buffer.constructor(Math.max(this.length + t.length, Math.round(2 * this.buffer.length)));\n e.set(this.buffer, 0), (this.buffer = e);\n }\n for (let e = 0; e < t.length; e++) this.buffer[this.length++] = t[e];\n return this.length;\n },\n setBuffer(t) {\n (this.buffer = t), (this.length = this.buffer.length);\n },\n};\nclass D {\n constructor(t, e, s) {\n (this.gl = t),\n (this.vertices = new S(Float32Array)),\n (this.indices = new S(Uint16Array)),\n (this.buffer = a.GLBuffer.createVertexBuffer(t)),\n (this.indexBuffer = a.GLBuffer.createIndexBuffer(t)),\n (this.dirty = !0),\n (this.shader = e),\n (this.vao = new a.VertexArrayObject(t, s)\n .addIndex(this.indexBuffer)\n .addAttribute(this.buffer, e.attributes.aVertexPosition, t.FLOAT, !1, 8, 0));\n }\n reset() {\n this.vertices.reset(), this.indices.reset();\n }\n upload() {\n this.buffer.upload(this.vertices.buffer), this.indexBuffer.upload(this.indices.buffer), (this.dirty = !1);\n }\n destroy() {\n this.vertices.destroy(),\n this.indices.destroy(),\n this.vao.destroy(),\n this.buffer.destroy(),\n this.indexBuffer.destroy(),\n (this.gl = null),\n (this.buffer = null),\n (this.indexBuffer = null);\n }\n}\nfunction _(t, e, s) {\n return t.push(e, s), t;\n}\nfunction O(t, e) {\n return Math.sqrt(t * t + e * e);\n}\nfunction L(t, e, s, i, n) {\n return (\n (function (t, e) {\n const s = 1 - t;\n return s * s * s * e;\n })(t, e) +\n (function (t, e) {\n const s = 1 - t;\n return 3 * s * s * t * e;\n })(t, s) +\n (function (t, e) {\n return 3 * (1 - t) * t * t * e;\n })(t, i) +\n (function (t, e) {\n return t * t * t * e;\n })(t, n)\n );\n}\nfunction A(t, e, s, i, n, r, h) {\n if (!(isFinite(e) && isFinite(s) && isFinite(i) && isFinite(n) && isFinite(r) && isFinite(h))) return t;\n const o = t[t.length - 2],\n a = t[t.length - 1],\n l = (function (t, e, s, i, n, r, h, o) {\n const a = n - s,\n l = r - i,\n p = s - t,\n c = i - e;\n return O(h - n, o - r) + O(a, l) + O(p, c);\n })(o, a, e, s, i, n, r, h),\n p = Math.min(10 / l, 0.5);\n for (let l = p; l < 1; l += p) {\n const p = L(l, o, e, i, r),\n c = L(l, a, s, n, h);\n t.push(p, c);\n }\n return t.push(r, h), t;\n}\nfunction I(t, e) {\n for (let s = 0; s < t.length; s++) {\n const { cmd: i, args: n } = t[s];\n switch (i) {\n case 'M':\n case 'L':\n _(e, n[0], n[1]);\n break;\n case 'C':\n A(e, n[0], n[1], n[2], n[3], n[4], n[5]);\n }\n }\n return e;\n}\nfunction E(t, e, s, i, n, r, h) {\n (n %= 2 * Math.PI),\n (r %= 2 * Math.PI),\n n < 0 && (n += 2 * Math.PI),\n r < 0 && (r += 2 * Math.PI),\n n >= r && (r += 2 * Math.PI);\n let o = r - n,\n a = 1;\n h && ((a = -1), (o = 2 * Math.PI - o), 0 == o && (o = 2 * Math.PI));\n const l = o * i;\n let p = Math.sqrt(l / 1) >> 0;\n p = p % 2 == 0 ? p + 1 : p;\n const c = o / p;\n let u = n;\n for (let n = 0; n < p + 1; n++) t.push(e, s, e + i * Math.cos(u), s + i * Math.sin(u)), (u += a * c);\n}\nfunction B(t, e, s) {\n const i = I(t.cmds, []),\n n = t.isClosed,\n r = e.lineDash.length >= 2,\n h = e.lineWidth / 2;\n let o,\n a = [i[0], i[1]];\n for (let t = 2; t < i.length; t += 2)\n (i[t] == a[a.length - 2] && i[t + 1] == a[a.length - 1]) || a.push(i[t], i[t + 1]);\n if ((!n || (a[a.length - 2] == a[0] && a[a.length - 1] == a[1]) || a.push(a[0], a[1]), r)) {\n const t = (function (t, e, s, i) {\n e && t.push(t[0], t[1]);\n let n = i,\n r = 0,\n h = 1;\n for (; n > s[r]; ) (n -= s[r]), r++, (h = h ? 0 : 1), r == s.length && (r = 0);\n let o = [t[0], t[1]],\n a = [h];\n for (let e = 2; e < t.length; e += 2) {\n let i = [t[e] - t[e - 2], t[e + 1] - t[e - 1]],\n l = O(i[0], i[1]);\n (i[0] /= l), (i[1] /= l);\n let p = 0;\n for (; l - p + n >= s[r]; )\n (p += s[r] - n),\n (n = 0),\n (h = h ? 0 : 1),\n r++,\n r == s.length && (r = 0),\n a.push(h),\n o.push(t[e - 2] + p * i[0], t[e - 1] + p * i[1]);\n l - p != 0 && (o.push(t[e], t[e + 1]), a.push(h)), (n += l - p);\n }\n return e && (t.pop(), t.pop(), o.pop(), o.pop(), a.pop()), { newPoints: o, toDrawOrNotToDraw: a };\n })(a, n, e.lineDash, e.lineDashOffset);\n (o = t.toDrawOrNotToDraw), (a = t.newPoints);\n }\n const l = s.length;\n let p = s.length;\n const c = [];\n if (n) a.push(a[2], a[3]);\n else {\n const t = [a[2] - a[0], a[3] - a[1]],\n i = O(t[0], t[1]);\n (t[0] /= i), (t[1] /= i);\n const n = [-t[1], t[0]],\n l = [a[0] + h * n[0], a[1] + h * n[1]],\n u = [a[0] - h * n[0], a[1] - h * n[1]];\n if ('butt' == e.lineCap) s.push(l[0], l[1], u[0], u[1]);\n else if ('square' == e.lineCap) s.push(l[0] - h * t[0], l[1] - h * t[1], u[0] - h * t[0], u[1] - h * t[1]);\n else {\n s.push(a[0], a[1], l[0], l[1]);\n const t = Math.atan2(l[1] - a[1], l[0] - a[0]),\n e = Math.atan2(u[1] - a[1], u[0] - a[0]);\n E(s, a[0], a[1], h, t, e), s.push(a[0], a[1], u[0], u[1]), s.push(l[0], l[1], u[0], u[1]);\n }\n if (r) {\n const t = o[0];\n for (let e = p; e < s.length; e += 2) c.push(t);\n p = s.length;\n }\n }\n for (let t = 2; t < a.length - 2; t += 2) {\n const i = [a[t] - a[t - 2], a[t + 1] - a[t - 1]],\n n = [-i[1], i[0]];\n let l = O(n[0], n[1]);\n (n[0] /= l), (n[1] /= l);\n let u = [a[t + 2] - a[t], a[t + 3] - a[t + 1]];\n (l = O(u[0], u[1])), (u[0] /= l), (u[1] /= l);\n let d = [a[t] - a[t - 2], a[t + 1] - a[t - 1]];\n (l = O(d[0], d[1])), (d[0] /= l), (d[1] /= l);\n let f = [d[0] + u[0], d[1] + u[1]];\n l = O(f[0], f[1]);\n let m,\n g,\n y = 0;\n l > 0\n ? ((f[0] /= l), (f[1] /= l), (g = [-f[1], f[0]]), (m = g[0] * n[0] + g[1] * n[1]), (y = h / m))\n : ((y = 0), (g = [-f[1], f[0]]));\n const w = [a[t] + y * g[0], a[t + 1] + y * g[1]],\n v = [a[t] - y * g[0], a[t + 1] - y * g[1]];\n if ('miter' == e.lineJoin && 1 / m <= e.miterLimit) s.push(w[0], w[1], v[0], v[1]);\n else {\n const i = d[1] * u[0] - d[0] * u[1];\n if ('round' == e.lineJoin)\n if (i < 0) {\n const e = [a[t] + d[1] * h, a[t + 1] - d[0] * h],\n i = [a[t] + u[1] * h, a[t + 1] - u[0] * h];\n s.push(w[0], w[1], e[0], e[1]);\n const n = Math.atan2(e[1] - a[t + 1], e[0] - a[t]),\n r = Math.atan2(i[1] - a[t + 1], i[0] - a[t]);\n E(s, a[t], a[t + 1], h, n, r), s.push(w[0], w[1], i[0], i[1]);\n } else {\n const e = [a[t] - d[1] * h, a[t + 1] + d[0] * h],\n i = [a[t] - u[1] * h, a[t + 1] + u[0] * h];\n s.push(e[0], e[1], v[0], v[1]);\n const n = Math.atan2(i[1] - a[t + 1], i[0] - a[t]),\n r = Math.atan2(e[1] - a[t + 1], e[0] - a[t]);\n E(s, a[t], a[t + 1], h, n, r), s.push(i[0], i[1], v[0], v[1]);\n }\n else if (i < 0) {\n const e = [a[t] + d[1] * h, a[t + 1] - d[0] * h],\n i = [a[t] + u[1] * h, a[t + 1] - u[0] * h];\n s.push(w[0], w[1], e[0], e[1], w[0], w[1], i[0], i[1]);\n } else {\n const e = [a[t] - d[1] * h, a[t + 1] + d[0] * h],\n i = [a[t] - u[1] * h, a[t + 1] + u[0] * h];\n s.push(e[0], e[1], v[0], v[1], i[0], i[1], v[0], v[1]);\n }\n }\n if (r) {\n const e = o[t / 2];\n for (let t = p; t < s.length; t += 2) c.push(e);\n p = s.length;\n }\n }\n if (n) s.push(s.buffer[l], s.buffer[l + 1], s.buffer[l + 2], s.buffer[l + 3]);\n else {\n const t = [a[a.length - 2] - a[a.length - 4], a[a.length - 1] - a[a.length - 3]],\n i = Math.sqrt(Math.pow(t[0], 2) + Math.pow(t[1], 2));\n (t[0] /= i), (t[1] /= i);\n const n = [-t[1], t[0]],\n r = [a[a.length - 2] + h * n[0], a[a.length - 1] + h * n[1]],\n o = [a[a.length - 2] - h * n[0], a[a.length - 1] - h * n[1]];\n if ('butt' == e.lineCap) s.push(r[0], r[1], o[0], o[1]);\n else if ('square' == e.lineCap) s.push(r[0] + h * t[0], r[1] + h * t[1], o[0] + h * t[0], o[1] + h * t[1]);\n else {\n s.push(r[0], r[1], o[0], o[1]), s.push(a[a.length - 2], a[a.length - 1], o[0], o[1]);\n const t = Math.atan2(o[1] - a[a.length - 1], o[0] - a[a.length - 2]),\n e = Math.atan2(r[1] - a[a.length - 1], r[0] - a[a.length - 2]);\n E(s, a[a.length - 2], a[a.length - 1], h, t, e), s.push(a[a.length - 2], a[a.length - 1], r[0], r[1]);\n }\n }\n if (r) {\n const t = o[o.length - 1];\n for (let e = p; e < s.length; e += 2) c.push(t);\n p = s.length;\n }\n return c;\n}\nfunction F(t, e) {\n const s = t.isClosed;\n let i = !0;\n const n = I(t.cmds, []);\n let r = [n[0], n[1]];\n for (let t = 2; t < n.length; t += 2)\n (n[t] == r[r.length - 2] && n[t + 1] == r[r.length - 1]) || r.push(n[t], n[t + 1]);\n if ((!s || (r[r.length - 2] == r[0] && r[r.length - 1] == r[1]) || r.push(r[0], r[1]), r.length >= 6)) {\n for (let t = 0; t < r.length; t++) e.push(r[t]);\n i = !1;\n }\n return i;\n}\nl.registerPlugin(\n 'lottiegraphics',\n class extends p {\n constructor(t) {\n super(t),\n (this.graphicsDataPool = []),\n (this.primitiveShader = null),\n (this.webGLData = null),\n (this.gl = t.gl),\n (this.CONTEXT_UID = 0);\n }\n onContextChange() {\n (this.gl = this.renderer.gl),\n (this.CONTEXT_UID = this.renderer.CONTEXT_UID),\n (this.primitiveShader = new C(this.gl));\n }\n destroy() {\n p.prototype.destroy.call(this);\n for (let t = 0; t < this.graphicsDataPool.length; ++t) this.graphicsDataPool[t].destroy();\n this.graphicsDataPool = null;\n }\n render(t) {\n const e = this.renderer,\n s = e.gl,\n i = this.getWebGLData(t);\n if ((t.isDirty && this.updateGraphics(t, i), 0 === i.indices.length)) return;\n const n = this.primitiveShader;\n e.bindShader(n),\n e.state.setBlendMode(t.blendMode),\n (n.uniforms.translationMatrix = t.transform.worldTransform.toArray(!0)),\n (n.uniforms.color = c.hex2rgb(t.color)),\n (n.uniforms.alpha = t.worldAlpha),\n e.bindVao(i.vao),\n i.vao.draw(s.TRIANGLES, i.indices.length);\n }\n updateGraphics(t, e) {\n e.reset(), 'stroke' === t.drawType ? this.buildStroke(t, e) : this.buildFill(t, e), (t.isDirty = !1);\n }\n buildStroke(t, e) {\n const { vertices: s, indices: i } = e,\n { paths: n, lineStyle: r } = t,\n h = r.lineDash.length >= 2;\n for (let t = 0; t < n.length; t++) {\n const e = n[t],\n o = s.length / 2,\n a = B(e, r, s);\n if (h) for (let t = o + 2; t < s.length / 2; t += 2) a[t - o - 1] && i.push(t - 2, t, t - 1, t, t + 1, t - 1);\n else for (let t = o + 2; t < s.length / 2; t += 2) i.push(t - 2, t, t - 1, t, t + 1, t - 1);\n }\n e.upload();\n }\n buildFill(t, e) {\n const { vertices: s, indices: i } = e,\n { paths: n } = t;\n let r = [];\n const h = [];\n for (let t = 0; t < n.length; t++) {\n const e = n[t],\n s = [];\n if (F(e, s)) break;\n const i = e.holes,\n o = [];\n for (let t = 0; t < i.length; t++) {\n const e = i[t],\n n = s.length;\n if (F(e, s)) break;\n o.push(n / 2);\n }\n const a = c.earcut(s, o, 2),\n l = r.length / 2;\n for (let t = 0; t < s.length; t += 2) r.push(s[t], s[t + 1]);\n for (let t = 0; t < a.length; t += 3) h.push(l + a[t], l + a[t + 1], l + a[t + 2]);\n }\n r.length < 6 || h < 3 || (s.setBuffer(new Float32Array(r)), i.setBuffer(new Uint16Array(h)), e.upload());\n }\n getWebGLData(t) {\n return (\n (t.webGLData && this.CONTEXT_UID === t.webGLData.CONTEXT_UID) ||\n ((t.webGLData = new D(this.renderer.gl, this.primitiveShader, this.renderer.state.attribState)),\n (t.webGLData.CONTEXT_UID = this.CONTEXT_UID)),\n t.webGLData\n );\n }\n },\n);\nu.registerPlugin(\n 'lottiegraphics',\n class {\n constructor(t) {\n this.renderer = t;\n }\n destroy() {\n this.renderer = null;\n }\n render(t) {\n const e = this.renderer,\n s = e.context,\n i = t.lineStyle,\n n = t.worldAlpha,\n r = t.transform.worldTransform,\n h = e.resolution;\n s.setTransform(r.a * h, r.b * h, r.c * h, r.d * h, r.tx * h, r.ty * h),\n e.setBlendMode(t.blendMode),\n (s.globalAlpha = n),\n 'stroke' === t.drawType\n ? ((s.lineWidth = i.lineWidth),\n (s.lineJoin = i.lineJoin),\n (s.miterLimit = i.miterLimit),\n (s.lineCap = i.lineCap),\n (s.lineDashOffset = i.lineDashOffset),\n s.setLineDash(i.lineDash || []),\n this.buildStroke(t))\n : this.buildFill(t);\n }\n buildStroke(t) {\n const e = this.renderer.context,\n s = `#${`00000${(0 | t.color).toString(16)}`.substr(-6)}`,\n { paths: i, lineStyle: n } = t;\n (e.lineWidth = n.lineWidth),\n (e.lineJoin = n.lineJoin),\n (e.miterLimit = n.miterLimit),\n (e.lineCap = n.lineCap),\n (e.lineDashOffset = n.lineDashOffset),\n e.setLineDash(n.lineDash || []),\n e.beginPath();\n for (let t = 0; t < i.length; t++) this.drawPath(e, i[t]);\n (e.strokeStyle = s), e.stroke();\n }\n buildFill(t) {\n const e = this.renderer.context,\n s = `#${`00000${(0 | t.color).toString(16)}`.substr(-6)}`,\n { paths: i } = t;\n e.beginPath();\n for (let t = 0; t < i.length; t++) {\n const s = i[t];\n this.drawPath(e, s);\n for (let t = 0; t < s.holes.length; t++) this.drawPath(e, s.holes[t]);\n }\n (e.fillStyle = s), e.fill();\n }\n drawPath(t, e) {\n for (let s = 0; s < e.cmds.length; s++) {\n const { cmd: i, args: n } = e.cmds[s];\n switch (i) {\n case 'M':\n t.moveTo(n[0], n[1]);\n break;\n case 'L':\n t.lineTo(n[0], n[1]);\n break;\n case 'C':\n t.bezierCurveTo(n[0], n[1], n[2], n[3], n[4], n[5]);\n }\n }\n }\n },\n);\nclass W {\n constructor() {\n (this.cmds = []), (this.holes = []), (this.isClosed = !1), (this.isClockWise = !1);\n }\n getLength() {\n return this.cmds.length;\n }\n add(t, e) {\n this.cmds.push({ cmd: t, args: e });\n }\n moveTo(t = 0, e = 0) {\n this.add('M', [t, e]);\n }\n lineTo(t, e) {\n this.add('L', [t, e]);\n }\n bezierCurveTo(t, e, s, i, n, r) {\n this.add('C', [t, e, s, i, n, r]);\n }\n closePath() {\n this.isClosed = !0;\n }\n}\nclass X extends h {\n constructor() {\n super(),\n (this.paths = []),\n (this._samplerPoints = []),\n (this.currentPath = null),\n (this.color = 0),\n (this.lineStyle = {\n lineWidth: 1,\n lineJoin: 'miter',\n miterLimit: 10,\n lineCap: 'butt',\n lineDash: [],\n lineDashOffset: 0,\n }),\n (this.isDirty = !0),\n (this.drawType = ''),\n (this.blendMode = d.NORMAL),\n (this.webGLData = null),\n (this.firstIsClockWise = !0),\n (this.preClockWiseStatus = null);\n }\n clear() {\n (this.paths.length = 0),\n (this.currentPath = null),\n (this.firstIsClockWise = !0),\n (this.preClockWiseStatus = null),\n (this.isDirty = !0);\n }\n moveTo(t = 0, e = 0) {\n this.endPath(), (this.currentPath = new W()), this.currentPath.moveTo(t, e), this._samplerPoints.push([t, e]);\n }\n lineTo(t, e) {\n this.currentPath.lineTo(t, e), this._samplerPoints.push([t, e]);\n }\n bezierCurveTo(t, e, s, i, n, r) {\n this.currentPath.bezierCurveTo(t, e, s, i, n, r), this._samplerPoints.push([n, r]);\n }\n endPath() {\n if (this.currentPath && this.currentPath.getLength() > 1) {\n const t = this.paths.length,\n e =\n (function (t) {\n const e = t.length;\n let s = 0;\n for (let i = e - 1, n = 0; n < e; i = n++) s += t[i][0] * t[n][1] - t[n][0] * t[i][1];\n return 0.5 * s;\n })(this._samplerPoints) > 0;\n if (\n ((this.currentPath.isClockWise = e),\n 0 === t && (this.firstIsClockWise = e),\n t > 0 && this.preClockWiseStatus === this.firstIsClockWise && this.preClockWiseStatus !== e)\n ) {\n (t > 0 ? this.paths[t - 1] : null).holes.push(this.currentPath);\n } else this.paths.push(this.currentPath), (this.preClockWiseStatus = e);\n (this.currentPath = null), (this.isDirty = !0);\n }\n this._samplerPoints.length = 0;\n }\n closePath() {\n this.currentPath.closePath();\n }\n stroke() {\n this.endPath(), (this.drawType = 'stroke');\n }\n fill() {\n null !== this.currentPath && (this.closePath(), this.endPath(), (this.drawType = 'fill'));\n }\n _renderWebGL(t) {\n t.setObjectRenderer(t.plugins.lottiegraphics), t.plugins.lottiegraphics.render(this);\n }\n _renderCanvas(t) {\n t.plugins.lottiegraphics.render(this);\n }\n}\nclass z extends X {\n constructor(t, e) {\n super(), (this.lottieElement = t), (this.config = e), (this.passMatrix = new f());\n }\n setShapeTransform() {\n const t = this.lottieElement.preTransforms.finalTransform.props;\n this.passMatrix.set(t[0], t[1], t[4], t[5], t[12], t[13]), this.transform.setFromMatrix(this.passMatrix);\n }\n updateTransform() {\n this.setShapeTransform(),\n this.transform.updateTransform(this.parent.transform),\n (this.worldAlpha = this.alpha * this.parent.worldAlpha),\n this._bounds.updateID++;\n }\n updateLottieGrahpics(e) {\n const s = e.type;\n if ((this.clear(), (('st' === s || 'gs' === s) && 0 === e.wi) || !e.data._shouldRender || 0 === e.coOp)) return;\n const i = e.elements,\n n = i.length;\n for (let t = 0; t < n; t += 1) {\n const e = i[t].trNodes,\n s = e.length;\n for (let t = 0; t < s; t++)\n 'm' == e[t].t\n ? this.moveTo(e[t].p[0], e[t].p[1])\n : 'c' == e[t].t\n ? this.bezierCurveTo(e[t].pts[0], e[t].pts[1], e[t].pts[2], e[t].pts[3], e[t].pts[4], e[t].pts[5])\n : this.closePath();\n }\n ('st' !== s && 'gs' !== s) ||\n (e.da\n ? ((this.lineStyle.lineDash = e.da), (this.lineStyle.lineDashOffset = e.do))\n : (this.lineStyle.lineDash = [])),\n 'st' === s || 'gs' === s\n ? ((this.lineStyle.lineWidth = e.wi),\n (this.lineStyle.lineCap = e.lc),\n (this.lineStyle.lineJoin = e.lj),\n (this.lineStyle.miterLimit = e.ml || 0),\n (this.color = t.rgb2hex(e.co || e.grd)),\n (this.alpha = e.coOp),\n this.stroke())\n : ((this.color = t.rgb2hex(e.co || e.grd)), (this.alpha = e.coOp), this.fill());\n }\n}\nclass G extends r {\n constructor(t, e) {\n super(), (this.lottieElement = t), (this.config = e);\n const s = parseInt(e.color.replace('#', ''), 16);\n this.beginFill(s), this.drawRect(0, 0, e.rect.width, e.rect.height), this.endFill();\n }\n onSetupLottie() {\n if (this.lottieElement.hasValidMasks()) {\n const t = this.config.session.local;\n (this.graphicsMasks = new T(t)), (this.mask = this.graphicsMasks), this.addChild(this.mask);\n }\n }\n setHierarchy(t) {\n this.hierarchy = t;\n }\n show() {\n this.visible = !0;\n }\n hide() {\n this.visible = !1;\n }\n updateLottieTransform(t) {\n (this.x = t.x),\n (this.y = t.y),\n (this.pivot.x = t.anchorX),\n (this.pivot.y = t.anchorY),\n (this.scale.x = t.scaleX),\n (this.scale.y = t.scaleY),\n (this.rotation = t.rotation),\n (this.alpha = t.alpha);\n }\n updateLottieMasks(t) {\n this.graphicsMasks && this.graphicsMasks.updateMasks(t);\n }\n}\nclass R extends m {\n constructor(t, e) {\n const { texture: s, asset: i } = e;\n super(s),\n s.baseTexture.hasLoaded\n ? ((s.orig = new g(0, 0, i.w, i.h)), s._updateUvs())\n : s.baseTexture.on('loaded', () => {\n (s.orig = new g(0, 0, i.w, i.h)), s._updateUvs();\n }),\n (this.lottieElement = t),\n (this.config = e);\n }\n onSetupLottie() {\n if (this.lottieElement.hasValidMasks()) {\n const t = this.config.session.local;\n (this.graphicsMasks = new T(t)), (this.mask = this.graphicsMasks), this.addChild(this.mask);\n }\n }\n setHierarchy(t) {\n this.hierarchy = t;\n }\n show() {\n this.visible = !0;\n }\n hide() {\n this.visible = !1;\n }\n updateLottieTransform(t) {\n (this.x = t.x),\n (this.y = t.y),\n (this.pivot.x = t.anchorX),\n (this.pivot.y = t.anchorY),\n (this.scale.x = t.scaleX),\n (this.scale.y = t.scaleY),\n (this.rotation = t.rotation),\n (this.alpha = t.alpha);\n }\n updateLottieMasks(t) {\n this.graphicsMasks && this.graphicsMasks.updateMasks(t);\n }\n}\nconst U = /^(https?:)?\\/\\//;\nclass N extends e {\n constructor(t, { prefix: e, autoLoad: s = !0 }) {\n super(),\n (this.assets = t),\n (this.prefix = e || ''),\n (this.textures = {}),\n (this._total = 0),\n (this._failed = 0),\n (this._received = 0),\n (this.loaded = !1),\n s && this.load();\n }\n load() {\n this.assets.forEach(t => {\n const e = t.id,\n s = (function (t, e) {\n if (1 === t.e) return t.p;\n e && (e = e.replace(/\\/?$/, '/'));\n const s = t.u + t.p;\n let i = '';\n return (i = t.up ? t.up : U.test(s) ? s : e + s), i;\n })(t, this.prefix),\n i = y.fromImage(s, '*');\n (this.textures[e] = i),\n this._total++,\n i.baseTexture.hasLoaded\n ? (this._received++, this.emit('update'), this._received + this._failed >= this._total && this._onComplete())\n : (i.baseTexture.once('loaded', () => {\n this._received++, this.emit('update'), this._received + this._failed >= this._total && this._onComplete();\n }),\n i.baseTexture.once('error', () => {\n this._failed++, this.emit('update'), this._received + this._failed >= this._total && this._onComplete();\n }));\n });\n }\n _onComplete() {\n (this.loaded = !0),\n this.emit('complete'),\n this._failed > 0 && (this._failed >= this._total ? this.emit('fail') : this.emit('partlyfail', this._failed));\n }\n getTextureById(t) {\n return this.textures[t];\n }\n}\nfunction j(t) {\n return t.response && 'object' == typeof t.response\n ? t.response\n : t.response && 'string' == typeof t.response\n ? JSON.parse(t.response)\n : t.responseText\n ? JSON.parse(t.responseText)\n : void 0;\n}\nclass q extends e {\n constructor(t) {\n super(),\n (this.path = t),\n (this.onSuccess = this.onSuccess.bind(this)),\n (this.onFail = this.onFail.bind(this)),\n (function (t, e, s) {\n let i,\n n = new XMLHttpRequest();\n n.open('GET', t, !0);\n try {\n n.responseType = 'json';\n } catch (t) {\n console.error('lottie-pixi loadAjax:', t);\n }\n n.send(),\n (n.onreadystatechange = function () {\n if (4 == n.readyState)\n if (200 == n.status) (i = j(n)), e(i);\n else\n try {\n (i = j(n)), e(i);\n } catch (t) {\n s && s(t);\n }\n });\n })(t, this.onSuccess, this.onFail);\n }\n onSuccess(t) {\n this.emit('success', t), this.emit('complete', t);\n }\n onFail(t) {\n this.emit('fail', t), this.emit('error', t);\n }\n}\nconst Y = {\n Linear: { None: t => t },\n Ease: {\n In: (function () {\n const t = new s(0.42, 0, 1, 1);\n return function (e) {\n return t.get(e);\n };\n })(),\n Out: (function () {\n const t = new s(0, 0, 0.58, 1);\n return function (e) {\n return t.get(e);\n };\n })(),\n InOut: (function () {\n const t = new s(0.42, 0, 0.58, 1);\n return function (e) {\n return t.get(e);\n };\n })(),\n Bezier(t, e, i, n) {\n const r = new s(t, e, i, n);\n return function (t) {\n return r.get(t);\n };\n },\n },\n Elastic: {\n In: t => (0 === t ? 0 : 1 === t ? 1 : -Math.pow(2, 10 * (t - 1)) * Math.sin(5 * (t - 1.1) * Math.PI)),\n Out: t => (0 === t ? 0 : 1 === t ? 1 : Math.pow(2, -10 * t) * Math.sin(5 * (t - 0.1) * Math.PI) + 1),\n InOut: t =>\n 0 === t\n ? 0\n : 1 === t\n ? 1\n : (t *= 2) < 1\n ? -0.5 * Math.pow(2, 10 * (t - 1)) * Math.sin(5 * (t - 1.1) * Math.PI)\n : 0.5 * Math.pow(2, -10 * (t - 1)) * Math.sin(5 * (t - 1.1) * Math.PI) + 1,\n },\n Back: {\n In(t) {\n const e = 1.70158;\n return t * t * ((e + 1) * t - e);\n },\n Out(t) {\n const e = 1.70158;\n return --t * t * ((e + 1) * t + e) + 1;\n },\n InOut(t) {\n const e = 2.5949095;\n return (t *= 2) < 1 ? t * t * ((e + 1) * t - e) * 0.5 : 0.5 * ((t -= 2) * t * ((e + 1) * t + e) + 2);\n },\n },\n Bounce: {\n In: t => 1 - Y.Bounce.Out(1 - t),\n Out: t =>\n t < 1 / 2.75\n ? 7.5625 * t * t\n : t < 2 / 2.75\n ? 7.5625 * (t -= 1.5 / 2.75) * t + 0.75\n : t < 2.5 / 2.75\n ? 7.5625 * (t -= 2.25 / 2.75) * t + 0.9375\n : 7.5625 * (t -= 2.625 / 2.75) * t + 0.984375,\n InOut: t => (t < 0.5 ? 0.5 * Y.Bounce.In(2 * t) : 0.5 * Y.Bounce.Out(2 * t - 1) + 0.5),\n },\n};\nfunction J(s) {\n e.call(this),\n (this.element = s.element || {}),\n (this.duration = s.duration || 300),\n (this.living = !0),\n (this.resident = s.resident || !1),\n (this.infinite = s.infinite || !1),\n (this.alternate = s.alternate || !1),\n (this.repeats = s.repeats || 0),\n (this.delay = s.delay || 0),\n (this.wait = s.wait || 0),\n (this.timeScale = t.isNumber(s.timeScale) ? s.timeScale : 1),\n s.onComplete && this.on('complete', s.onComplete.bind(this)),\n s.onUpdate && this.on('update', s.onUpdate.bind(this)),\n this.init(),\n (this.paused = !1);\n}\nfunction V(e) {\n J.call(this, e), (e.from = e.from || {});\n for (const s in e.to) t.isUndefined(e.from[s]) && (e.from[s] = this.element[s]);\n (this.ease = e.ease || Y.Ease.InOut), (this.from = e.from), (this.to = e.to);\n}\nfunction H(e) {\n J.call(this, e),\n (this.dynamicProperties = []),\n (this._mdf = !1),\n (this.keyframes = t.copyJSON(e.keyframes)),\n (this.frameRate = e.frameRate || 30),\n (this.tpf = 1e3 / this.frameRate),\n (this.ip = t.isUndefined(e.ip) ? this.keyframes.ip : e.ip),\n (this.op = t.isUndefined(e.ip) ? this.keyframes.op : e.op),\n (this.tfs = this.op - this.ip),\n (this.duration = this.tfs * this.tpf),\n (this.ignoreProps = t.isArray(e.ignoreProps) ? e.ignoreProps : []),\n (this.transform = new i(this, this.keyframes.ks));\n}\nfunction $(t, e) {\n J.call(this, e),\n (this.runners = []),\n (this.queues = []),\n (this.cursor = 0),\n (this.total = 0),\n (this.alternate = !1),\n t && this.then(t);\n}\n(J.prototype = Object.create(e.prototype)),\n (J.prototype.update = function (e) {\n const s = this.direction * this.timeScale * e;\n if (this.waitCut > 0) return void (this.waitCut -= Math.abs(s));\n if (this.paused || !this.living || this.delayCut > 0)\n return void (this.delayCut > 0 && (this.delayCut -= Math.abs(s)));\n this.progress += s;\n let i = !1;\n const n = this.progress;\n let r;\n return (\n this.spill() &&\n (this.repeatsCut > 0 || this.infinite\n ? (this.repeatsCut > 0 && --this.repeatsCut,\n (this.delayCut = this.delay),\n this.alternate\n ? ((this.direction *= -1), (this.progress = t.codomainBounce(this.progress, 0, this.duration)))\n : ((this.direction = 1), (this.progress = t.euclideanModulo(this.progress, this.duration))))\n : (i = !0)),\n i\n ? (this.resident || (this.living = !1),\n (this.progress = t.clamp(n, 0, this.duration)),\n (r = this.nextPose()),\n this.emit('complete', r, n - this.progress))\n : ((r = this.nextPose()), this.emit('update', r, this.progress / this.duration)),\n r\n );\n }),\n (J.prototype.spill = function () {\n const t = this.progress <= 0 && -1 === this.direction,\n e = this.progress >= this.duration && 1 === this.direction;\n return t || e;\n }),\n (J.prototype.init = function () {\n (this.direction = 1),\n (this.progress = 0),\n (this.repeatsCut = this.repeats),\n (this.delayCut = this.delay),\n (this.waitCut = this.wait);\n }),\n (J.prototype.nextPose = function () {\n console.warn('should be overwrite');\n }),\n (J.prototype.linear = function (t, e, s) {\n return (e - t) * s + t;\n }),\n (J.prototype.setSpeed = function (t) {\n return (this.timeScale = t), this;\n }),\n (J.prototype.pause = function () {\n return (this.paused = !0), this;\n }),\n (J.prototype.resume = function () {\n return (this.paused = !1), this;\n }),\n (J.prototype.restart = J.prototype.resume),\n (J.prototype.stop = function () {\n return (this.repeats = 0), (this.infinite = !1), (this.progress = this.duration), this;\n }),\n (J.prototype.cancel = function () {\n return (this.living = !1), this;\n }),\n (V.prototype = Object.create(J.prototype)),\n (V.prototype.nextPose = function () {\n const t = {},\n e = this.ease(this.progress / this.duration);\n for (const s in this.to)\n void 0 !== this.element[s] && (this.element[s] = t[s] = this.linear(this.from[s], this.to[s], e));\n return t;\n }),\n (H.prototype = Object.create(J.prototype)),\n (H.prototype.prepareProperties = function (t) {\n const e = this.dynamicProperties.length;\n let s;\n for (s = 0; s < e; s += 1)\n this.dynamicProperties[s].getValue(t), this.dynamicProperties[s]._mdf && (this._mdf = !0);\n }),\n (H.prototype.addDynamicProperty = function (t) {\n -1 === this.dynamicProperties.indexOf(t) && this.dynamicProperties.push(t);\n }),\n (H.prototype.nextPose = function () {\n const t = {},\n e = this.ip + this.progress / this.tpf;\n return (\n this.prepareProperties(e),\n -1 === this.ignoreProps.indexOf('position') &&\n (-1 === this.ignoreProps.indexOf('x') && (t.x = this.element.x = this.transform.x),\n -1 === this.ignoreProps.indexOf('y') && (t.y = this.element.y = this.transform.y)),\n -1 === this.ignoreProps.indexOf('pivot') &&\n ((t.pivot = {}),\n -1 === this.ignoreProps.indexOf('pivotX') && (t.pivot.x = this.element.pivot.x = this.transform.anchorX),\n -1 === this.ignoreProps.indexOf('pivotY') && (t.pivot.y = this.element.pivot.y = this.transform.anchorY)),\n -1 === this.ignoreProps.indexOf('scale') &&\n ((t.scale = {}),\n -1 === this.ignoreProps.indexOf('scaleX') && (t.scale.x = this.element.scale.x = this.transform.scaleX),\n -1 === this.ignoreProps.indexOf('scaleY') && (t.scale.y = this.element.scale.y = this.transform.scaleY)),\n -1 === this.ignoreProps.indexOf('rotation') && (t.rotation = this.element.rotation = this.transform.rotation),\n -1 === this.ignoreProps.indexOf('alpha') && (t.alpha = this.element.alpha = this.transform.alpha),\n t\n );\n }),\n ($.prototype = Object.create(J.prototype)),\n ($.prototype.then = function (t) {\n return this.queues.push(t), (this.total = this.queues.length), this;\n }),\n ($.prototype.nextOne = function (t, e) {\n this.runners[this.cursor].init(), this.cursor++, (this._residueTime = Math.abs(e));\n }),\n ($.prototype.initOne = function () {\n const t = this.queues[this.cursor];\n (t.infinite = !1), (t.resident = !0), (t.element = this.element);\n let e = null;\n t.keyframes ? (e = new H(t)) : t.to && (e = new V(t)),\n null !== e && (e.on('complete', this.nextOne.bind(this)), this.runners.push(e));\n }),\n ($.prototype.nextPose = function (t) {\n return (\n !this.runners[this.cursor] && this.queues[this.cursor] && this.initOne(),\n this._residueTime > 0 && ((t += this._residueTime), (this._residueTime = 0)),\n this.runners[this.cursor].update(t)\n );\n }),\n ($.prototype.update = function (t) {\n if (this.wait > 0) return void (this.wait -= Math.abs(t));\n if (this.paused || !this.living || this.delayCut > 0)\n return void (this.delayCut > 0 && (this.delayCut -= Math.abs(t)));\n const e = this.cursor,\n s = this.nextPose(this.timeScale * t);\n return (\n this.emit('update', { index: e, pose: s }, this.progress / this.duration),\n this.spill() &&\n (this.repeats > 0 || this.infinite\n ? (this.repeats > 0 && --this.repeats, (this.delayCut = this.delay), (this.cursor = 0))\n : (this.resident || (this.living = !1), this.emit('complete', s))),\n s\n );\n }),\n ($.prototype.spill = function () {\n return this.cursor >= this.total;\n });\nconst K = { settings: w, UPDATE_PRIORITY: v, animationTicker: x.shared };\nfunction Q(t) {\n K.animationTicker = t;\n}\nfunction Z(t) {\n (this.element = t),\n (this.animates = []),\n (this.timeScale = 1),\n (this.paused = !1),\n (this.updateDeltaTime = this.updateDeltaTime.bind(this)),\n K.animationTicker.add(this.updateDeltaTime, K.UPDATE_PRIORITY.HIGH);\n}\n(Z.prototype.clearAnimators = function (t) {\n if (this.paused) return;\n const e = this.animates;\n for (let s = 0; s < t.length; s++) {\n const i = t[s];\n e[i].living || e[i].resident || this.animates.splice(i, 1);\n }\n}),\n (Z.prototype.updateDeltaTime = function (t) {\n if (this.animates.length <= 0) return;\n const e = t / K.settings.TARGET_FPMS;\n this.update(e);\n }),\n (Z.prototype.update = function (t) {\n if (this.paused) return;\n if (this.animates.length <= 0) return;\n t = this.timeScale * t;\n const e = [];\n for (let s = 0; s < this.animates.length; s++)\n this.animates[s].living || this.animates[s].resident ? this.animates[s].update(t) : e.push(s);\n e.length > 0 && this.clearAnimators(e);\n }),\n (Z.prototype.animate = function (t, e) {\n return (t.element = this.element), this._addMove(new V(t), e);\n }),\n (Z.prototype.queues = function (t, e, s) {\n return (e.element = this.element), this._addMove(new $(t, e), s);\n }),\n (Z.prototype.bodymovin = function (t, e) {\n return (t.element = this.element), this._addMove(new H(t), e);\n }),\n (Z.prototype._addMove = function (t, e) {\n return e && this.clearAll(), this.animates.push(t), t;\n }),\n (Z.prototype.pause = function () {\n this.paused = !0;\n }),\n (Z.prototype.resume = function () {\n this.paused = !1;\n }),\n (Z.prototype.restart = Z.prototype.resume),\n (Z.prototype.setSpeed = function (t) {\n this.timeScale = t;\n }),\n (Z.prototype.clearAll = function () {\n this.animates.length = 0;\n }),\n (b.prototype.setupAnimations = function () {\n this.animations || (this.animations = new Z(this));\n }),\n (b.prototype.animate = function (t, e) {\n return this.animations || this.setupAnimations(), this.animations.animate(t, e);\n }),\n (b.prototype.queues = function (t, e = {}, s) {\n return this.animations || this.setupAnimations(), this.animations.queues(t, e, s);\n }),\n (b.prototype.bodymovin = function (t, e) {\n return this.animations || this.setupAnimations(), this.animations.bodymovin(t, e);\n }),\n Object.defineProperties(b.prototype, {\n scaleXY: {\n get() {\n return this.scale.x;\n },\n set(t) {\n this.scale.set(t);\n },\n },\n scaleX: {\n get() {\n return this.scale.x;\n },\n set(t) {\n this.scale.x = t;\n },\n },\n scaleY: {\n get() {\n return this.scale.y;\n },\n set(t) {\n this.scale.y = t;\n },\n },\n pivotX: {\n get() {\n return this.pivot.x;\n },\n set(t) {\n this.pivot.x = t;\n },\n },\n pivotY: {\n get() {\n return this.pivot.y;\n },\n set(t) {\n this.pivot.y = t;\n },\n },\n }),\n (h.prototype.updateTransform = function () {\n this.emit('pretransform'),\n this._boundsID++,\n this.hierarchy && this.hierarchy.transform\n ? (this.hierarchy.updateTransform(), this.transform.updateTransform(this.hierarchy.transform))\n : this.transform.updateTransform(this.parent.transform),\n (this.worldAlpha = this.alpha * this.parent.worldAlpha);\n for (let t = 0, e = this.children.length; t < e; ++t) {\n const e = this.children[t];\n e.visible && e.updateTransform();\n }\n this.emit('posttransform');\n }),\n (h.prototype.containerUpdateTransform = h.prototype.updateTransform);\nclass tt extends e {\n constructor(t) {\n super(),\n (this.animate = null),\n t.keyframes &&\n t.useAESize &&\n (t.width !== t.keyframes.w || t.height !== t.keyframes.h) &&\n ((t.width = t.keyframes.w), (t.height = t.keyframes.h));\n const {\n view: e,\n width: s,\n height: i,\n transparent: r,\n antialias: h,\n preserveDrawingBuffer: o,\n resolution: a,\n forceCanvas: l,\n backgroundColor: p,\n clearBeforeRender: c,\n roundPixels: u,\n forceFXAA: d,\n legacy: f,\n powerPreference: m,\n sharedTicker: g,\n sharedLoader: y,\n } = t;\n (this.app = new P({\n view: e,\n width: s,\n height: i,\n transparent: r,\n antialias: h,\n preserveDrawingBuffer: o,\n resolution: a,\n forceCanvas: l,\n backgroundColor: p,\n clearBeforeRender: c,\n roundPixels: u,\n forceFXAA: d,\n legacy: f,\n powerPreference: m,\n sharedTicker: g,\n sharedLoader: y,\n })),\n (this.manager = new n(this.app)),\n (this.loaded = !1),\n this.parseData(t);\n }\n resizeWithAESize() {\n const { width: t, height: e } = this.app.renderer;\n (t === this.animate.keyframes.w && e === this.animate.keyframes.h) ||\n this.app.renderer.resize(this.animate.keyframes.w, this.animate.keyframes.h);\n }\n parseData(t) {\n (this.animate = this.manager.parseAnimation(t)),\n this.animate.isDisplayLoaded\n ? (t.useAESize && this.resizeWithAESize(), this.app.stage.addChild(this.animate.group))\n : this.animate.once('DisplayReady', () => {\n t.useAESize && this.resizeWithAESize(),\n this.app.stage.addChild(this.animate.group),\n this.emit('DisplayReady', this);\n }),\n this.animate.isImagesLoaded\n ? (this.loaded = !0)\n : (this.animate.once('success', () => {\n (this.loaded = !0), this.emit('success', this);\n }),\n this.animate.once('error', t => {\n this.emit('error', t);\n }));\n }\n}\nfunction et(e) {\n return (\n e.container && !e.view && (e.view = e.container),\n e.animationData && !e.keyframes && (e.keyframes = e.animationData),\n e.assetsPath && !e.prefix && (e.prefix = e.assetsPath.replace(/images\\/?$/, '')),\n e.initialSegment && !e.initSegment && (e.initSegment = e.initialSegment),\n t.isBoolean(e.autoplay) && !t.isBoolean(e.autoStart) && (e.autoStart = e.autoplay),\n t.isBoolean(e.loop) && !t.isBoolean(e.infinite) && (e.infinite = e.loop),\n (e.view = t.isString(e.view) ? document.querySelector(e.view) : e.view),\n (e.useAESize = !t.isBoolean(e.useAESize) || e.useAESize),\n new tt(e)\n );\n}\nexport {\n Y as Tween,\n et as loadAnimation,\n Q as useTicker,\n k as CompElement,\n z as PathLottie,\n G as SolidElement,\n R as SpriteElement,\n h as Container,\n q as LoadJson,\n N as LoadTexture,\n};\nexport {\n AnimationGroup,\n AnimationManager,\n BezierEasing,\n DisplayRegister,\n Eventer,\n LoaderRegister,\n PropertyFactory,\n Tools,\n TransformFrames,\n TransformProperty,\n} from './lottie-core';\n","import iOSVersion from 'ios-version';\n\nconst { major } = iOSVersion(window.navigator.userAgent) || {};\n\n/**\n * dataURL 转成 blob\n * @param dataURL\n * @return blob\n */\nfunction dataURL2blob(dataURL) {\n let binaryString = atob(dataURL.split(',')[1]);\n let arrayBuffer = new ArrayBuffer(binaryString.length);\n let intArray = new Uint8Array(arrayBuffer);\n let mime = dataURL.split(',')[0].match(/:(.*?);/)[1];\n for (let i = 0, j = binaryString.length; i < j; i++) {\n intArray[i] = binaryString.charCodeAt(i);\n }\n let data = [intArray];\n let result;\n try {\n result = new Blob(data, { type: mime });\n } catch (error) {\n console.log(error);\n }\n return result;\n}\n\n/**\n * 创建新的URL 对象表示指定的 File 对象或 Blob 对象。\n * @param {string} dataURL base64\n */\nfunction dataURL2ObjUrl(dataURL) {\n window.URL = window.URL || window.webkitURL;\n if (window.URL && URL.createObjectURL) {\n // dataURL2blob 此方法需额外定义\n const blob = dataURL2blob(dataURL);\n return URL.createObjectURL(blob);\n }\n return dataURL;\n}\n\nexport function imageHandle(source) {\n const isBase64Reg = /^data:image\\/png;base64/;\n if (major <= 8 && isBase64Reg.test(source)) {\n return dataURL2ObjUrl(source);\n }\n\n return source;\n}\n","import { OBSERVER_TYPE, decorators, ComponentChanged, resource } from '@eva/eva.js';\nimport { Renderer, RendererManager, ContainerManager } from '@eva/plugin-renderer';\nimport {\n AnimationManager,\n DisplayRegister,\n LoaderRegister,\n CompElement,\n PathLottie,\n SolidElement,\n SpriteElement,\n Container,\n LoadTexture,\n LoadJson,\n} from './lottie-pixi';\nimport { imageHandle } from './utils';\nimport Lottie from './Lottie';\n\nfunction loadTexture(assets, options) {\n return new LoadTexture(assets, options);\n}\n\nfunction loadJson(path) {\n return new LoadJson(path);\n}\n\nLoaderRegister.registerLoaderByType(LoaderRegister.Type.Texture, loadTexture);\nLoaderRegister.registerLoaderByType(LoaderRegister.Type.Ajax, loadJson);\nDisplayRegister.registerDisplayByType(DisplayRegister.Type.Null, CompElement);\nDisplayRegister.registerDisplayByType(DisplayRegister.Type.Path, PathLottie);\nDisplayRegister.registerDisplayByType(DisplayRegister.Type.Shape, CompElement);\nDisplayRegister.registerDisplayByType(DisplayRegister.Type.Solid, SolidElement);\nDisplayRegister.registerDisplayByType(DisplayRegister.Type.Sprite, SpriteElement);\nDisplayRegister.registerDisplayByType(DisplayRegister.Type.Component, CompElement);\nDisplayRegister.registerDisplayByType(DisplayRegister.Type.Container, Container);\n\n@decorators.componentObserver({\n Lottie: [],\n})\nexport default class LottieSystem extends Renderer {\n static systemName = 'LottieSystem';\n public manager: any;\n public app: any;\n public renderSystem;\n public rendererManager: RendererManager;\n public containerManager: ContainerManager;\n public managerLife = [\n 'DisplayReady',\n 'ImageReady',\n 'success',\n 'error',\n 'complete',\n 'loopComplete',\n 'enterFrame',\n 'update',\n ];\n\n /**\n * System 初始化用,可以配置参数,游戏未开始\n *\n * System init, set params, game is not begain\n * @param param init params\n */\n init() {\n this.renderSystem = this.game.systems.find((s: any) => s.application);\n this.app = this.renderSystem.application;\n }\n\n async componentChanged(changed: ComponentChanged) {\n if (changed.componentName === 'Lottie') {\n if (changed.type === OBSERVER_TYPE.ADD) {\n this.add(changed);\n } else if (changed.type === OBSERVER_TYPE.REMOVE) {\n this.remove(changed);\n }\n }\n }\n\n async add(changed: ComponentChanged) {\n this.manager = new AnimationManager(this.app);\n const component = changed.component as Lottie;\n const container = this.renderSystem.containerManager.getContainer(changed.gameObject.id);\n if (!container) return;\n const { resource: rn, ...otherOpts } = component.options;\n const { data } = await resource.getResource(rn);\n const json = { ...(data.json || {}) };\n const assets = json.assets || [];\n assets.forEach(item => {\n if (item.p) item.p = imageHandle(item.p);\n });\n const anim = this.manager.parseAnimation({\n keyframes: json,\n ...otherOpts,\n });\n component.anim = anim;\n container.addChildAt(anim.group, 0);\n this.managerLife.forEach(eventName => {\n anim.on(eventName, e => component.emit(eventName, e));\n });\n if (anim.isImagesLoaded) component.emit('success', {});\n }\n\n remove(changed: ComponentChanged) {\n const component = changed.component as Lottie;\n const container = this.renderSystem.containerManager.getContainer(changed.gameObject.id);\n if (container) {\n container.removeChild(component.anim.group);\n component.anim.group.destory(true);\n }\n component.anim = null;\n }\n}\n","import { Component, decorators } from '@eva/eva.js';\nimport { IExpandOpts, IOptions } from './types';\nimport { Sprite, Text, TextStyle, Graphics } from 'pixi.js';\n\ninterface ExtendOptions extends IOptions {\n autoStart: boolean;\n}\n\nexport default class Lottie extends Component<IOptions> {\n @decorators.IDEProp\n slot: { [key: string]: string };\n\n static componentName: string = 'Lottie';\n public static application: any;\n public anim: any;\n public options: ExtendOptions;\n public loadStatus: boolean = false;\n public firstPlay: () => void | null = null;\n public slotCache: { [key: string]: any };\n public prevSlot: { [name: string]: any } = {};\n public currentSlot: { [name: string]: any } = {};\n\n constructor(options: IOptions) {\n super();\n this.options = {\n autoStart: false,\n ...options,\n };\n this.on('success', () => {\n this.loadStatus = true;\n const { ip, op } = this.anim.keyframes;\n for (let i = ip; i <= op; i++) {\n const event = `@${i}`;\n this.anim.on(event, e => this.emit(event, e));\n }\n this.firstPlay && this.firstPlay();\n });\n }\n\n play(\n params: number[] = [],\n expandOpts: IExpandOpts = {\n repeats: 0,\n },\n ) {\n if (!this.loadStatus) {\n this.firstPlay = () => {\n this.play(params, expandOpts);\n };\n return;\n }\n\n const { slot = [] } = expandOpts;\n slot.forEach(({ name, type, value, style = {} }) => {\n const { x, y, anchor = { x: 0, y: 0 }, pivot = { x: 0, y: 0 }, width, height } = style;\n if (type === 'IMAGE') {\n this.currentSlot[name] = Sprite.from(value);\n } else if (type === 'TEXT') {\n this.currentSlot[name] = new Text(value, new TextStyle(style));\n }\n if (x) this.currentSlot[name].x = x;\n if (y) this.currentSlot[name].y = y;\n if (width) this.currentSlot[name].width = width;\n if (height) this.currentSlot[name].height = height;\n this.currentSlot[name].anchor.set(anchor.x || 0, anchor.y || 0);\n this.currentSlot[name].pivot.set(\n this.currentSlot[name].width * (pivot.x || 0),\n this.currentSlot[name].height * (pivot.y || 0),\n );\n if (this.prevSlot[name]) this.anim.unbindSlot(name, this.prevSlot[name]);\n this.anim.bindSlot(name, this.currentSlot[name]);\n this.prevSlot[name] = this.currentSlot[name];\n });\n\n this.anim.playSegment(this.playParamsHandle(params), expandOpts);\n }\n\n playParamsHandle(params) {\n let p = [].concat(params);\n const { keyframes } = this.anim;\n if (!p.length || p.length > 2) {\n p = [keyframes.ip, keyframes.op];\n } else if (p.length === 1) {\n p = [p[0] % keyframes.op, keyframes.op];\n }\n return p;\n }\n\n onTap(name, callback) {\n const g = new Graphics();\n this.on('success', () => {\n const ele = this.anim.querySelector(name);\n const display = ele.display;\n g.beginFill(0xffffff);\n g.drawRect(0, 0, 100, 100);\n g.endFill();\n g.alpha = 0;\n display.addChild(g);\n ele.display.interactive = true;\n ele.display.on('pointertap', () => {\n callback();\n });\n });\n }\n}\n"],"names":["_","k","S","M","T","D","L","F","A","C","I","E","V","N","q","O","X","Y","j","z","B","R","K","G","J","H","U","Z","W","$","r","h","o","a","l","p","c","u","d","f","s","t","m","g","y","i","w","v","x","b","LoadTexture","LoadJson","LoaderRegister","DisplayRegister","CompElement","PathLottie","SolidElement","SpriteElement","AnimationManager"],"mappings":"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C,GAAG,CAAC,GAAG,CAAC;AACxB,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;AACpC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;AACpB,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE;AAC9C,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;AACxB,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;AACpC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE;AAC7B,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE;AAC9C,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;AACxB,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;AACpC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE;AAC7B,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE;AAC9C,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;AACxB,OAAO,CAAC,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AAC;AAC9F,cAAc,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC7F,cAAc,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC7F,cAAc,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC7F,cAAc,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC7F,cAAc,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC7F,cAAc,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,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"}
|