@pixodesk/svg-animator-core 1.0.21 → 1.0.24
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/README.md +155 -0
- package/dist/index.cjs +511 -333
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +22014 -3314
- package/dist/index.d.ts +22014 -3314
- package/dist/index.js +507 -332
- package/dist/index.js.map +1 -1
- package/dist/index.min.cjs +1 -1
- package/dist/index.min.js +1 -1
- package/package.json +2 -1
package/dist/index.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var t=Object.defineProperty,e=Object.defineProperties,n=Object.getOwnPropertyDescriptors,r=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable,i=Math.pow,s=(e,n,r)=>n in e?t(e,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[n]=r,l=(t,e)=>{for(var n in e||(e={}))o.call(e,n)&&s(t,n,e[n]);if(r)for(var n of r(e))a.call(e,n)&&s(t,n,e[n]);return t},u=(t,r)=>e(t,n(r));function c(t){if(!t.length)return".";let e="";for(const n of t)n.startsWith("[")?e+=n:e+=(e?".":"")+n;return e}var f=class{_canSanitize(t){return this.isValid(t)}optional(){return new h(this)}},h=class extends f{constructor(t){super(),this.inner=t,this._default=void 0}sanitize(t){if(null!=t)return this.inner._canSanitize(t)?this.inner.sanitize(t):void 0}isValid(t,e,n){return null==t||this.inner.isValid(t,e,n)}_canSanitize(t){return null==t||this.inner._canSanitize(t)}},d=class extends f{constructor(t=""){super(),this._default=t}sanitize(t){return"string"==typeof t?t:this._default}isValid(t,e,n){return"string"==typeof t||(null==e||e.errors.push(c(null!=n?n:[])+": expected string, got "+typeof t),!1)}},p=class extends f{constructor(t=0){super(),this._default=t}sanitize(t){return"number"==typeof t&&isFinite(t)?t:this._default}isValid(t,e,n){return!("number"!=typeof t||!isFinite(t))||(null==e||e.errors.push(c(null!=n?n:[])+": expected finite number, got "+JSON.stringify(t)),!1)}},m=class extends f{constructor(t=!1){super(),this._default=t}sanitize(t){return"boolean"==typeof t?t:this._default}isValid(t,e,n){return"boolean"==typeof t||(null==e||e.errors.push(c(null!=n?n:[])+": expected boolean, got "+typeof t),!1)}},y=class extends f{constructor(t){super(),this.value=t,this._default=t}sanitize(t){return t===this.value?this.value:this._default}isValid(t,e,n){return t===this.value||(null==e||e.errors.push(c(null!=n?n:[])+": expected "+JSON.stringify(this.value)+", got "+JSON.stringify(t)),!1)}},g=class extends f{constructor(t,e){super(),this.values=t,this._default=null!=e?e:t[0]}sanitize(t){return this.values.includes(t)?t:this._default}isValid(t,e,n){return!!this.values.includes(t)||(null==e||e.errors.push(c(null!=n?n:[])+": expected one of "+this.values.map(t=>JSON.stringify(t)).join(" | ")+", got "+JSON.stringify(t)),!1)}},v=class extends f{constructor(t,e){super(),this.schemas=t,this._default=null!=e?e:t[0]._default}sanitize(t){for(const e of this.schemas)if(e.isValid(t))return e.sanitize(t);return this._default}isValid(t,e,n){var r;return!!this.schemas.some(e=>e.isValid(t))||(null==e||e.errors.push(c(null!=n?n:[])+": no union member matched for value "+(null!=(r=JSON.stringify(t))?r:"").slice(0,60)),!1)}_canSanitize(t){return this.schemas.some(e=>e._canSanitize(t))}},b=class extends f{constructor(t,e,n){super(),this._key=t,this._schemas=e,this._default=null!=n?n:e[0]._default,this._map=new Map;for(const n of e){const e=n._shape[t];e&&this._map.set(e._default,n)}}_findSchema(t){if(null===t||"object"!=typeof t||Array.isArray(t))return;const e=t[this._key];return null!=e?this._map.get(e):void 0}sanitize(t){var e;return(null!=(e=this._findSchema(t))?e:this._schemas[0]).sanitize(t)}isValid(t,e,n){const r=this._findSchema(t);if(!r){const r=null===t||"object"!=typeof t||Array.isArray(t)?void 0:t[this._key];return null==e||e.errors.push(c(null!=n?n:[])+": no discriminated union member matched "+this._key+"="+JSON.stringify(r)),!1}return r.isValid(t,e,n)}_canSanitize(t){if(null===t||"object"!=typeof t||Array.isArray(t))return!1;const e=this._findSchema(t);return e?e._canSanitize(t):this._schemas[0]._canSanitize(t)}},k=class extends f{constructor(t){super(),this._shape=t;const e={};for(const n of Object.keys(t))e[n]=t[n]._default;this._default=e}sanitize(t){const e=t&&"object"==typeof t&&!Array.isArray(t)?t:{},n={};for(const t of Object.keys(this._shape))n[t]=this._shape[t].sanitize(e[t]);return n}isValid(t,e,n){if(!t||"object"!=typeof t||Array.isArray(t))return null==e||e.errors.push(c(null!=n?n:[])+": expected object, got "+(Array.isArray(t)?"array":typeof t)),!1;const r=t,o=null!=n?n:[];let a=!0;for(const t of Object.keys(this._shape))o.push(t),this._shape[t].isValid(r[t],e,o)||(a=!1),o.pop();if(null==e?void 0:e.strict)for(const t of Object.keys(r))t in this._shape||(o.push(t),e.errors.push(c(o)+": unexpected extra key"),o.pop(),a=!1);return a}_canSanitize(t){return!!t&&"object"==typeof t&&!Array.isArray(t)}},A=class extends f{constructor(t,e){super(),this._shape=t,this._openSchema=e;const n={};for(const e of Object.keys(t))n[e]=t[e]._default;this._default=n}sanitize(t){const e=t&&"object"==typeof t&&!Array.isArray(t)?t:{},n=l({},e);for(const t of Object.keys(this._shape))n[t]=this._shape[t].sanitize(e[t]);if(this._openSchema)for(const t of Object.keys(e))t in this._shape||(n[t]=this._openSchema.sanitize(e[t]));return n}isValid(t,e,n){if(!t||"object"!=typeof t||Array.isArray(t))return null==e||e.errors.push(c(null!=n?n:[])+": expected object, got "+(Array.isArray(t)?"array":typeof t)),!1;const r=t,o=null!=n?n:[];let a=!0;for(const t of Object.keys(this._shape))o.push(t),this._shape[t].isValid(r[t],e,o)||(a=!1),o.pop();if(this._openSchema)for(const t of Object.keys(r))t in this._shape||(o.push(t),this._openSchema.isValid(r[t],e,o)||(a=!1),o.pop());return a}_canSanitize(t){return!!t&&"object"==typeof t&&!Array.isArray(t)}},w=class extends f{constructor(t){super(),this.item=t,this._default=[]}sanitize(t){if(!Array.isArray(t))return[];const e=[];for(const n of t)this.item._canSanitize(n)&&e.push(this.item.sanitize(n));return e}isValid(t,e,n){if(!Array.isArray(t))return null==e||e.errors.push(c(null!=n?n:[])+": expected array, got "+typeof t),!1;const r=null!=n?n:[];let o=!0;for(let n=0;n<t.length;n++)r.push("["+n+"]"),this.item.isValid(t[n],e,r)||(o=!1),r.pop();return o}_canSanitize(t){return Array.isArray(t)}},x=class extends f{constructor(t){super(),this.value=t,this._default={}}sanitize(t){if(!t||"object"!=typeof t||Array.isArray(t))return{};const e={};for(const[n,r]of Object.entries(t))this.value._canSanitize(r)&&(e[n]=this.value.sanitize(r));return e}isValid(t,e,n){if(!t||"object"!=typeof t||Array.isArray(t))return null==e||e.errors.push(c(null!=n?n:[])+": expected object/record, got "+(Array.isArray(t)?"array":typeof t)),!1;const r=null!=n?n:[];let o=!0;for(const[n,a]of Object.entries(t))r.push(n),this.value.isValid(a,e,r)||(o=!1),r.pop();return o}_canSanitize(t){return!!t&&"object"==typeof t&&!Array.isArray(t)}},j=class extends f{constructor(){super(...arguments),this._default=void 0}sanitize(t){return t}isValid(t,e,n){return!0}_canSanitize(t){return!0}},O=class extends f{constructor(t,e){super(),this.fn=t,this._default=e,this.resolved=null}get schema(){var t;return null!=(t=this.resolved)?t:this.resolved=this.fn()}sanitize(t){return this.schema.sanitize(t)}isValid(t,e,n){return this.schema.isValid(t,e,n)}_canSanitize(t){return this.schema._canSanitize(t)}},M=class extends f{constructor(t){super(),this.schemas=t,this._default=t.map(t=>t._default)}sanitize(t){return Array.isArray(t)&&t.length===this.schemas.length?this.schemas.map((e,n)=>e.sanitize(t[n])):this._default}isValid(t,e,n){if(!Array.isArray(t)||t.length!==this.schemas.length)return null==e||e.errors.push(c(null!=n?n:[])+": expected tuple of length "+this.schemas.length+", got "+(Array.isArray(t)?"array["+t.length+"]":typeof t)),!1;const r=null!=n?n:[];let o=!0;for(let n=0;n<this.schemas.length;n++)r.push("["+n+"]"),this.schemas[n].isValid(t[n],e,r)||(o=!1),r.pop();return o}_canSanitize(t){return Array.isArray(t)&&t.length===this.schemas.length}};function S(t){return Object.fromEntries(Object.keys(t._shape).map(t=>[t,t]))}function P(t){var e;const n=t;return"_shape"in n?{kind:"shape",shape:n._shape}:"item"in n?{kind:"array",item:n.item}:"inner"in n?{kind:"optional",inner:n.inner}:"fn"in n?{kind:"lazy",resolved:null!=(e=n.resolved)?e:n.fn()}:{kind:"leaf"}}var _={string:(t="")=>new d(t),number:(t=0)=>new p(t),boolean:(t=!1)=>new m(t),literal:t=>new y(t),enum:(t,e)=>new g(t,e),union:(t,e)=>new v(t,e),discriminatedUnion:(t,e)=>new b(t,e),object:t=>new k(t),openObject:(t,e)=>new A(t,e),extendedObject:(t,e)=>new k(l(l({},t._shape),e)),array:t=>new w(t),record:t=>new x(t),any:()=>new j,tuple:t=>new M(t),lazy:(t,e)=>new O(t,e)},z="data-px-animation-src",I="_px_animator",N={auto:"auto",webapi:"webapi",frames:"frames"},C={webapi:N.webapi,frames:N.frames},F="text",D="textContent",L=new Set(["type","children","animator","meta","animate",F,D]),T=_.union([_.string(),_.tuple([_.number(),_.number(),_.number(),_.number()])]),E=(_.union([_.string(),_.number(),_.array(_.number()),_.lazy(()=>B,{}),_.object({path:_.string()}),_.lazy(()=>_.object({paths:_.array(xt)}),{paths:[]})]),_.object({time:_.number().optional(),t:_.number().optional(),value:_.any().optional(),v:_.any().optional(),easing:T.optional(),e:T.optional(),tangentOut:_.tuple([_.number(),_.number()]).optional(),to:_.tuple([_.number(),_.number()]).optional(),tangentIn:_.tuple([_.number(),_.number()]).optional(),ti:_.tuple([_.number(),_.number()]).optional(),selected:_.boolean().optional()})),U=_.object({segmentCount:_.number().optional(),before:_.boolean().optional(),alternate:_.boolean().optional()}),V=_.object({keyframes:_.array(E).optional(),kfs:_.array(E).optional(),loop:_.union([U,_.boolean()]).optional(),autoOrient:_.boolean().optional()}),W=["translate","rotate","scale","origin"],B=_.object({translate:_.tuple([_.number(),_.number()]).optional(),rotate:_.number().optional(),skew:_.number().optional(),scale:_.tuple([_.number(),_.number()]).optional(),origin:_.tuple([_.number(),_.number()]).optional()}),R=_.union([_.string(),_.object({value:B}),V]),G=_.record(V),Z=_.union([_.string(),_.array(_.union([_.string(),G])),G]),K=_.object({startOn:_.enum(["load","mouseOver","click","scrollIntoView","programmatic"]).optional(),outAction:_.enum(["continue","pause","reset","reverse"]).optional(),scrollIntoViewThreshold:_.number().optional()}),X=_.object({width:_.number(),d:_.string()}),q=_.object({fFamily:_.string(),style:_.string(),ascent:_.number(),unitsPerEm:_.number(),glyphs:_.record(X)}),Y=_.object({easings:_.record(_.tuple([_.number(),_.number(),_.number(),_.number()])).optional(),animations:_.record(G).optional(),styles:_.record(_.any()).optional(),glyphs:_.record(q).optional()}),Q=_.object({mode:_.enum([N.auto,N.webapi,N.frames]).optional(),duration:_.number().optional(),delay:_.number().optional(),iterations:_.union([_.number(),_.literal("infinite")]).optional(),fill:_.enum(["forwards","backwards","both","none"]).optional(),direction:_.enum(["normal","reverse","alternate","alternate-reverse"]).optional(),frameRate:_.number().optional(),trigger:K.optional(),resetOnFinish:_.boolean().optional(),definitions:Y.optional(),animate:_.record(Z).optional(),debug:_.boolean().optional(),debugInstName:_.string().optional()}),J=_.object({id:_.string(),animate:Z}),H=_.union([_.string(),_.number(),_.object({value:_.any()}),V]),$=_.union([_.number(),_.object({value:_.number()}),_.object({keyframes:_.array(E),autoOrient:_.boolean().optional()})]),tt=_.union([_.tuple([_.number(),_.number()]),_.object({value:_.tuple([_.number(),_.number()])}),_.object({keyframes:_.array(E),autoOrient:_.boolean().optional()})]),et=_.object({translate:tt.optional(),rotate:$.optional(),scale:tt.optional(),skew:$.optional(),origin:tt.optional()}),nt=_.object({copies:_.number().optional(),translate:tt.optional(),rotate:$.optional(),scale:tt.optional(),origin:tt.optional()}),rt=_.object({href:_.string().optional(),maskType:_.string().optional(),maskUnits:_.string().optional(),maskContentUnits:_.string().optional()}),ot=_.object({d:_.string().optional(),animate:V.optional()}),at=_.object({offset:$.optional(),range:tt.optional(),trimAllAsOne:_.boolean().optional()}),it=_.object({baseId:_.string().optional(),start:_.number().optional(),stretch:_.number().optional(),timeCrop:_.tuple([_.number(),_.number()]).optional()}),st=_.object({type:_.string().optional(),baseId:_.string().optional(),retime:it.optional()}),lt={userSpaceOnUse:"userSpaceOnUse",objectBoundingBox:"objectBoundingBox"},ut={pad:"pad",reflect:"reflect",repeat:"repeat"},ct={linear:"linear",radial:"radial"},ft=_.object({offset:_.number(),color:_.string()}),ht=_.union([_.array(ft),_.object({value:_.array(ft)}),_.object({keyframes:_.array(E)})]),dt=_.object({type:_.enum([ct.linear,ct.radial]),p1:_.tuple([_.number(),_.number()]).optional(),p2:_.tuple([_.number(),_.number()]).optional(),c:_.tuple([_.number(),_.number()]).optional(),r:_.number().optional(),fp:_.tuple([_.number(),_.number()]).optional(),stops:ht.optional(),gradientUnits:_.string().optional(),spreadMethod:_.string().optional(),gradientTransform:_.string().optional()}),pt=dt,mt=_.object({path:_.string(),pathOverflow:_.string().optional(),lengthAdjust:_.string().optional(),method:_.string().optional(),spacing:_.string().optional(),startOffset:$.optional(),textLength:$.optional()}),yt=_.object({useGlyphs:_.boolean().optional()}),gt=_.object({transformation:et.optional(),repeater:nt.optional(),maskedBy:rt.optional(),clipPath:ot.optional(),trimPath:at.optional(),clone:st.optional(),isCombinedShape:_.boolean().optional(),fillGradient:dt.optional(),strokeGradient:pt.optional(),textPath:mt.optional(),text:yt.optional()});function vt(t,e){const n=[],r=(t,o)=>{if(t&&t.effects){const r={errors:[],warnings:[],strict:!!(null==e?void 0:e.strict)};if(!gt.isValid(t.effects,r,[o+".effects"]))for(const t of r.errors)n.push(t)}t&&Array.isArray(t.children)&&t.children.forEach((t,e)=>r(t,o+".children["+e+"]"))};return r(t,"root"),n}var bt=_.openObject({type:_.string(),id:_.string().optional(),meta:_.any().optional(),effects:gt.optional(),animate:Z.optional(),style:_.union([_.string(),_.record(_.union([_.string(),_.number()]))]).optional()},H),kt=_.openObject(u(l({},bt._shape),{children:_.lazy(()=>_.array(kt),[]).optional()}),H),At=_.object({width:_.number().optional(),height:_.number().optional(),viewBox:_.string().optional(),animator:Q.optional()}),wt=_.openObject(u(l(l({},bt._shape),At._shape),{type:_.literal("svg"),children:_.array(kt).optional()}),H),xt=_.object({v:_.array(_.array(_.number())),i:_.array(_.array(_.number())).optional(),o:_.array(_.array(_.number())).optional(),c:_.boolean().optional()});function jt(t){return!(!t||"object"!=typeof t||Array.isArray(t))&&("svg"===t.type||"svg"===t.tagName)}function Ot(t){const e=wt.isValid(t);return{valid:e,errors:e?[]:["Document failed schema validation"]}}function Mt(t){var e,n;return(null==t?void 0:t.animator)||(null==(e=null==t?void 0:t.meta)?void 0:e.animator)||(null==t?void 0:t.animation)||(null==(n=null==t?void 0:t.meta)?void 0:n.animation)}function St(t){var e;if(t)return null==(e=Mt(t))?void 0:e.definitions}function Pt(t){var e;if(!t)return;const n=null==(e=Mt(t))?void 0:e.animate;return n?Object.entries(n).map(([t,e])=>({id:t,animate:e})):void 0}function _t(t){return null==t?void 0:t.children}function zt(t,e=!1){var n,r,o,a;const i=t.v,s=t.i,l=t.o,u=t.c;if(!i.length)return"";const c=[],f=i.length;c.push("M"+i[0][0]+","+i[0][1]);for(let t=1;t<f;t++){const o=i[t-1],a=null!=(n=null==l?void 0:l[t-1])?n:o,u=null!=(r=null==s?void 0:s[t])?r:i[t],f=i[t];!e&&a[0]===o[0]&&a[1]===o[1]&&u[0]===f[0]&&u[1]===f[1]?c.push("L"+f[0]+","+f[1]):c.push("C"+a[0]+","+a[1]+","+u[0]+","+u[1]+","+f[0]+","+f[1])}if(u&&f>0){const t=i[f-1],n=null!=(o=null==l?void 0:l[f-1])?o:t,r=null!=(a=null==s?void 0:s[0])?a:i[0],u=i[0];!e&&n[0]===t[0]&&n[1]===t[1]&&r[0]===u[0]&&r[1]===u[1]||c.push("C"+n[0]+","+n[1]+","+r[0]+","+r[1]+","+u[0]+","+u[1]),c.push("z")}return c.join("")}function It(t,e,n){return t+(e-t)*n}function Nt(t,e,n){const r=[],o=Math.max(t.length,e.length);for(let a=0;a<o;a++)r[a]=It(t[a]||0,e[a]||0,n);return r}function Ct(t,e,n){return[It(t[0]||0,e[0]||0,n),It(t[1]||0,e[1]||0,n),It(t[2]||0,e[2]||0,n),It(void 0===t[3]?1:t[3],void 0===e[3]?1:e[3],n)]}function Ft(t,e,n){const r=Math.max(t.length,e.length),o=[];for(let a=0;a<r;a++)o.push(Dt(t[a],e[a],n));return o}function Dt(t,e,n){var r,o,a,i,s,l,u,c,f;if(!t||!e)return t||e||{v:[]};const h=Math.min(Math.max(n,0),1),d=Math.min(t.v.length,e.v.length),p=[],m=[],y=[];for(let n=0;n<d;n++){const f=t.v[n],d=e.v[n];p.push(Nt(f,d,h));const g=null!=(o=null==(r=t.i)?void 0:r[n])?o:f,v=null!=(i=null==(a=e.i)?void 0:a[n])?i:d;m.push(Nt(g,v,h));const b=null!=(l=null==(s=t.o)?void 0:s[n])?l:f,k=null!=(c=null==(u=e.o)?void 0:u[n])?c:d;y.push(Nt(b,k,h))}return{v:p,i:m.length?m:void 0,o:y.length?y:void 0,c:null!=(f=t.c)?f:e.c}}function Lt(t,e,n){if(n<=0)return 0;if(n>=1)return 1;const r=3*t,o=3*(e-t)-r,a=1-r-o;function i(t){return((a*t+o)*t+r)*t}function s(t){return(3*a*t+2*o)*t+r}let l=n,u=0,c=1;for(let t=0;t<8;t++){const t=i(l)-n;if(Math.abs(t)<1e-6)return l;const e=s(l);if(Math.abs(e)<1e-6)break;l-=t/e}for(l=n;u<c;){const t=i(l);if(Math.abs(t-n)<1e-6)return l;n>t?u=l:c=l,l=(c+u)/2}return l}function Tt(t){const[e,n,r,o]=t,a=3*n,i=3*(o-n)-a,s=1-a-i;return function(t){return n=Lt(e,r,t),((s*n+i)*n+a)*n;var n}}function Et(t,e,n){return[t[0]+(e[0]-t[0])*n,t[1]+(e[1]-t[1])*n]}function Ut(t,e,n,r,o){const a=Et(t,e,o),i=Et(e,n,o),s=Et(n,r,o),l=Et(a,i,o),u=Et(i,s,o),c=Et(l,u,o);return{left:[t,a,l,c],right:[c,u,s,r]}}function Vt(t,e){if(!t)return{left:void 0,right:void 0};if(e<=0)return{left:void 0,right:t};if(e>=1)return{left:t,right:void 0};const[n,r,o,a]=t,i=Lt(n,o,e),s=[n,r],l=[o,a],{left:u,right:c}=Ut([0,0],s,l,[1,1],i),f=u[3][0],h=u[3][1];let d,p;f>1e-9&&Math.abs(h)>1e-9&&(d=[u[1][0]/f,u[1][1]/h,u[2][0]/f,u[2][1]/h]);const m=1-f,y=1-h;return m>1e-9&&Math.abs(y)>1e-9&&(p=[(c[1][0]-f)/m,(c[1][1]-h)/y,(c[2][0]-f)/m,(c[2][1]-h)/y]),{left:d,right:p}}function Wt(t){if(t)return[1-t[2],1-t[3],1-t[0],1-t[1]]}function Bt(t){const e=Math.round(255*t[0]),n=Math.round(255*t[1]),r=Math.round(255*t[2]);return 4===t.length?"rgba("+e+","+n+","+r+","+t[3]+")":"rgb("+e+","+n+","+r+")"}function Rt(t){if(t){if(Array.isArray(t))return t;if("string"==typeof t)return t.startsWith("#")?function(t){const e=t.slice(1),n=e.length<=4,r=n?e[0]+e[0]:e.slice(0,2),o=n?e[1]+e[1]:e.slice(2,4),a=n?e[2]+e[2]:e.slice(4,6),i=4===e.length?e[3]+e[3]:8===e.length?e.slice(6,8):null,s=[parseInt(r,16)/255,parseInt(o,16)/255,parseInt(a,16)/255];return null!==i&&s.push(parseInt(i,16)/255),s}(t):t.startsWith("rgb")?function(t){var e;const n=null==(e=t.match(/rgba?\((.*)\)/))?void 0:e[1];if(!n)throw new Error("Invalid rgb/rgba format");const r=n.split(",").map(t=>+t.trim());return[r[0]/255,r[1]/255,r[2]/255,...void 0!==r[3]?[r[3]]:[]]}(t):void console.warn("Unsupported color format: "+t)}}var Gt=new Set(["color","fill","flood-color","lighting-color","stop-color","stroke"]),Zt=new Set(["translate","rotate","scale","skew"]),Kt=new Set(["offset-distance","offsetDistance"]);function Xt(t,e){var n;if(!t)return"";const r=null==(n=null==e?void 0:e.withUnits)||n,o=[],a=t.translate,i=t.origin,s=t.rotate,l=t.skew,u=t.scale,c=r?"px":"",f=r?"deg":"";return a&&o.push("translate("+a[0]+c+","+a[1]+c+")"),i&&o.push("translate("+i[0]+c+","+i[1]+c+")"),null!=s&&o.push("rotate("+s+f+")"),null!=l&&o.push("skewX("+l+f+")"),u&&o.push("scale("+u[0]+","+u[1]+")"),i&&o.push("translate("+-i[0]+c+","+-i[1]+c+")"),o.join("")}var qt=new Set(["offset-distance","offsetDistance"]),Yt=1e3;function Qt(t){return t.includes("-")?t.replace(/-([a-z])/g,(t,e)=>e.toUpperCase()):t}function Jt(t){return!t.includes("-")&&/[a-z][A-Z]/.test(t)}var Ht=new Set(["viewBox","preserveAspectRatio","gradientUnits","gradientTransform","spreadMethod","patternUnits","patternContentUnits","patternTransform","clipPathUnits","maskUnits","maskContentUnits","markerUnits","markerWidth","markerHeight","refX","refY","textLength","lengthAdjust","startOffset","filterUnits","primitiveUnits","tableValues","stdDeviation","baseFrequency","numOctaves","surfaceScale","diffuseConstant","specularConstant","specularExponent","kernelMatrix","kernelUnitLength","edgeMode","preserveAlpha","targetX","targetY"]);function $t(t){return Ht.has(t)?t:t.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}function te(t,e,n){return Math.max(e,Math.min(t,n))}function ee(t,e,n,r,o){if(o<=0)return[t[0],t[1]];if(o>=1)return[r[0],r[1]];const a=1-o,i=a*a,s=o*o,l=i*a,u=3*o*i,c=3*s*a,f=s*o;return[l*t[0]+u*e[0]+c*n[0]+f*r[0],l*t[1]+u*e[1]+c*n[1]+f*r[1]]}var ne=1e-4;function re(t,e,n,r,o){const a=oe(t,e,n,r,o);if(0===a[0]&&0===a[1]){return oe(t,e,n,r,o<.5?o+ne:o-ne)}return a}function oe(t,e,n,r,o){const a=1-o,i=3*a*a,s=6*o*a,l=3*o*o;return[i*(e[0]-t[0])+s*(n[0]-e[0])+l*(r[0]-n[0]),i*(e[1]-t[1])+s*(n[1]-e[1])+l*(r[1]-n[1])]}function ae(t,e,n,r,o=100){const a=o+1,i=new Float64Array(a),s=new Float64Array(a);let l=ee(t,e,n,r,0);i[0]=0,s[0]=0;let u=0;for(let c=1;c<a;c++){const a=c/o,f=ee(t,e,n,r,a),h=f[0]-l[0],d=f[1]-l[1];u+=Math.sqrt(h*h+d*d),i[c]=a,s[c]=u,l=f}return{ts:i,ds:s}}function ie(t,e){const{ts:n,ds:r}=t,o=n.length-1;if(e<=n[0])return r[0];if(e>=n[o])return r[o];let a=1,i=o;for(;a<i;){const t=a+i>>>1;n[t]<e?a=t+1:i=t}const s=n[i-1],l=n[i]-s,u=l>0?(e-s)/l:0;return r[i-1]+u*(r[i]-r[i-1])}var se=0;function le(){return"_px_"+Date.now().toString(36)+(++se).toString(36)+Math.random().toString(36).substring(2,6)}function ue(t){if(null===t||"object"!=typeof t)return t;if(Array.isArray(t))return t.map(t=>ue(t));const e=t,n={};for(const t of Object.keys(e))n[t]=ue(e[t]);return n}function ce(t){var e,n;const r=ue(t),o=new Map,a=new Set(["href","xlink:href"]),i=new Set(["fill","stroke","clip-path","clipPath","mask","marker","marker-start","marker-mid","marker-end","filter","flood-color","lighting-color"]),s=new Set(["baseId","targetId","boundElementId"]);!function t(e){if(e&&"object"==typeof e){if(e.id&&"string"==typeof e.id){const t=e.id,n=le();o.set(t,n),e.id=n}else e.animate&&(e.id=le());if(Array.isArray(e.children))for(const n of e.children)t(n)}}(r),function t(e){if(e&&"object"==typeof e)for(const[n,r]of Object.entries(e))if("children"!==n)if("string"==typeof r)if(a.has(n)&&r.startsWith("#")){const t=r.slice(1),a=o.get(t);a&&(e[n]="#"+a)}else if(i.has(n))e[n]=fe(r,o);else if(s.has(n)){const t=o.get(r);t&&(e[n]=t)}else r.includes("url(#")&&(e[n]=fe(r,o));else if("style"===n&&"object"==typeof r&&null!==r)for(const[t,e]of Object.entries(r))"string"==typeof e&&(r[t]=fe(e,o));else"object"==typeof r&&null!==r&&t(r);else if(Array.isArray(r))for(const e of r)t(e)}(r);const c=null==(e=r.animator)?void 0:e.animate;if(c&&"object"==typeof c){const t={};for(const[e,r]of Object.entries(c)){t[null!=(n=o.get(e))?n:e]=r}r.animator=u(l({},r.animator),{animate:t})}return r}function fe(t,e){return t.replace(/url\(#([^)]+)\)/g,(t,n)=>{const r=e.get(n);return r?"url(#"+r+")":t})}var he=new Set(["script","foreignobject"]),de=new Set(["href","xlink:href","src","filter","clippath","mask","markerstart","markermid","markerend"]),pe=new Set(["href","xlink:href","src"]),me=new Set(["mixBlendMode","isolation"]),ye=/^data:image\/(?:png|jpe?g|gif|webp|bmp);base64,/i,ge=/^data:image\/svg\+xml(?:;[^,]*)?,/i,ve=/^data:image\/[^;,]*;base64,([A-Za-z0-9+/]{8})/i,be=["iVBORw0K","/9j/","R0lGOD","UklGR","Qk"];function ke(t,e){const n=t.toLowerCase();if(!function(t){return!!t.startsWith("on")}(n)){if("fill"===n||"stroke"===n||"stopcolor"===n){const t=String(e);return t.includes("url(")&&!/^url\(#[^)]+\)$/.test(t)?void console.warn('Attribute "'+n+'" blocked: url() must be internal url(#id), got:',e):e}if(de.has(n)){const t=String(e);return t.startsWith("#")||(/^url\(#[^)]+\)$/.test(t)||pe.has(n)&&(ye.test(t)||ge.test(t)||function(t){const e=ve.exec(t);return!!e&&be.some(t=>e[1].startsWith(t))}(t)))?e:void console.warn('Attribute "'+n+'" blocked: must be #id, url(#id), or data:image/… URI, got:',e)}return e}console.warn("Attribute blocked (event handler / dangerous): ",n)}function Ae(t,e){var n;if(t)return"string"==typeof t?null==(n=null==e?void 0:e.styles)?void 0:n[t]:t}function we(t){const e={};for(const n of Object.keys(t)){const r=Qt(n);if(L.has(r))continue;if("style"===r)continue;let o=t[n];Gt.has(r)&&Array.isArray(o)?e[r]=Bt(o):"transform"===r&&null!==o&&"object"==typeof o&&!Array.isArray(o)&&o.value&&"object"==typeof o.value?e.transform=Xt(o.value,{withUnits:!1}):Zt.has(r)?(Array.isArray(o)&&("translate"===r&&(o=o.map(t=>t+"px")),o=o.join(",")),"rotate"===r&&(o+="deg"),e.transform=r+"("+o+")"):null!=o&&(e[r]=String(o))}return e}function xe(t){var e;const n=null!=(e=t.value)?e:t.v;if(!n)return;if(Array.isArray(n)&&n.length>=2&&"number"==typeof n[0]&&"number"==typeof n[1])return[n[0],n[1]];const r=n.translate;return Array.isArray(r)&&r.length>=2?[r[0],r[1]]:void 0}function je(t){var e,n;return null!=(n=null!=(e=t.time)?e:t.t)?n:0}function Oe(t){var e;return null!=(e=t.easing)?e:t.e}function Me(t){var e,n,r;const o=null!=(e=t.keyframes)?e:t.kfs;if(!Array.isArray(o))return!1;if(t.autoOrient)return!0;for(const t of o)if((null!=(n=t.tangentIn)?n:t.ti)||(null!=(r=t.tangentOut)?r:t.to))return!0;return!1}var Se=new WeakMap;function Pe(t,e,n,r){var o,a;let i=Se.get(t);const s=null==i?void 0:i.get(e);if(s)return s;const l=null!=(o=t.tangentOut)?o:t.to,u=null!=(a=e.tangentIn)?a:e.ti,c=[n[0]+(l?l[0]:0),n[1]+(l?l[1]:0)],f=[r[0]+(u?u[0]:0),r[1]+(u?u[1]:0)],h=ae(n,c,f,r),d={P0:n,P1:c,P2:f,P3:r,lut:h,totalArc:h.ds[h.ds.length-1]};return i||(i=new WeakMap,Se.set(t,i)),i.set(e,d),d}function _e(t,e,n,r,o,a){const i=Pe(t,e,n,r),s=0===i.totalArc?o:function(t,e){const n=t.ds[t.ds.length-1],r=e*n,{ts:o,ds:a}=t,i=a.length-1;if(r<=0)return o[0];if(r>=a[i])return o[i];let s=1,l=i;for(;s<l;){const t=s+l>>>1;a[t]<r?s=t+1:l=t}const u=a[l-1],c=a[l]-u,f=c>0?(r-u)/c:0;return o[l-1]+f*(o[l]-o[l-1])}(i.lut,o),l=ee(i.P0,i.P1,i.P2,i.P3,s);if(!a)return{translate:l};const u=re(i.P0,i.P1,i.P2,i.P3,s);return{translate:l,rotateDeg:180*Math.atan2(u[1],u[0])/Math.PI}}function ze(t,e){var n,r,o,a;if(!Me(t))return t;const i=null!=(n=t.keyframes)?n:t.kfs;if(!Array.isArray(i)||i.length<2)return t;const s=!!t.autoOrient,l=null!=(r=null==e?void 0:e.flatnessTolerance)?r:.5,u=null!=(o=null==e?void 0:e.rotationTolerance)?o:5,c=null!=(a=null==e?void 0:e.maxSamplesPerSegment)?a:32,f=[],h=xe(i[0]);if(!h)return t;const d=s?function(t,e){const n=xe(t),r=xe(e);if(!n||!r)return 0;const o=Pe(t,e,n,r),a=re(o.P0,o.P1,o.P2,o.P3,0);return 180*Math.atan2(a[1],a[0])/Math.PI}(i[0],i[1]):void 0;f.push(Ne(je(i[0]),De(Ce(i[0]),Ce(i[0]),0,h,d,s)));for(let t=0;t<i.length-1;t++){const e=i[t],n=i[t+1],r=xe(e),o=xe(n);r&&o?(s&&t>0&&Te(f,e,n,r,o,u),Ue(f,e,n,r,o,s,l,u,c)):f.push(Ne(je(n),De(Ce(n),Ce(n),1,null!=o?o:[0,0],void 0,s)))}const p=Oe(i[i.length-1]);p&&(f[f.length-1].e=p),s&&Ie(f);const m={kfs:f};return void 0!==t.loop&&(m.loop=t.loop),m}function Ie(t){var e;let n;for(const r of t){const t=null!=(e=r.v)?e:r.value;if(!t||"number"!=typeof t.rotate)continue;if(void 0===n){n=t.rotate;continue}let o=t.rotate;for(;o-n>180;)o-=360;for(;o-n<-180;)o+=360;t.rotate=o,n=o}}function Ne(t,e){return{t:t,v:e}}function Ce(t){var e;const n=null!=(e=t.value)?e:t.v;if(n&&"object"==typeof n&&!Array.isArray(n))return n}function Fe(t,e,n){if(void 0===t)return e;if(void 0===e)return t;if("number"==typeof t&&"number"==typeof e)return t+(e-t)*n;if(Array.isArray(t)&&Array.isArray(e)&&t.length===e.length){const r=new Array(t.length);for(let o=0;o<t.length;o++){const a="number"==typeof t[o]?t[o]:0,i="number"==typeof e[o]?e[o]:0;r[o]=a+(i-a)*n}return r}return n<.5?t:e}function De(t,e,n,r,o,a){const i={translate:r},s=new Set;if(t)for(const e of Object.keys(t))s.add(e);if(e)for(const t of Object.keys(e))s.add(t);for(const r of s){if("translate"===r)continue;if("rotate"===r&&a)continue;const o=null==t?void 0:t[r],s=null==e?void 0:e[r];void 0===o&&void 0===s||(i[r]=Fe(o,s,n))}return void 0!==o&&(i.rotate=o+Le(t,e,n)),i}function Le(t,e,n){const r="number"==typeof(null==t?void 0:t.rotate)?t.rotate:void 0,o="number"==typeof(null==e?void 0:e.rotate)?e.rotate:void 0;if(void 0===r&&void 0===o)return 0;const a=Fe(r,o,n);return"number"==typeof a?a:0}function Te(t,e,n,r,o,a){var i;const s=t[t.length-1],l=null!=(i=s.v)?i:s.value,u=null==l?void 0:l.rotate;if("number"!=typeof u)return;const c=Ce(e),f=u-Le(c,c,0),h=Pe(e,n,r,o),d=re(h.P0,h.P1,h.P2,h.P3,0),p=180*Math.atan2(d[1],d[0])/Math.PI,m=function(t,e){let n=t-e;for(;n>180;)n-=360;for(;n<-180;)n+=360;return n}(p,f);if(Math.abs(m)<=a)return;const y=je(e),g=Math.min(y+Ee,(y+je(n))/2),v=De(Ce(e),Ce(e),0,r,p,!0);t.push(Ne(g,v))}var Ee=.05;function Ue(t,e,n,r,o,a,i,s,l){const u=Pe(e,n,r,o),c=je(e),f=je(n),h=Oe(e),d=(p=h)?Tt([p[1],p[0],p[3],p[2]]):t=>t;var p;const m=Ce(e),y=Ce(n),g=function(t,e,n,r,o){const a=[];Ve(t.P0[0],t.P1[0],t.P2[0],t.P3[0],a),Ve(t.P0[1],t.P1[1],t.P2[1],t.P3[1],a),a.sort((t,e)=>t-e);const i=[0];for(const t of a)t>i[i.length-1]+1e-6&&t<.999999&&i.push(t);i.push(1);const s=[],l={remaining:o-i.length};for(let o=0;o<i.length-1;o++)We(i[o],i[o+1],s,t,e,n,r,l);return s}(u,a,i,s,l),v=[];for(const t of g){const e=ie(u.lut,t),n=te(u.totalArc>0?e/u.totalArc:t,0,1),r={u:te(d(n),0,1),p:n,pos:ee(u.P0,u.P1,u.P2,u.P3,t)};if(a){const e=re(u.P0,u.P1,u.P2,u.P3,t);r.rotateDeg=180*Math.atan2(e[1],e[0])/Math.PI}v.push(r)}let b=h,k=0;const A=t.length-1;for(let e=0;e<v.length;e++){const n=v[e],r=k<1?te((n.u-k)/(1-k),0,1):1,{left:o,right:i}=Vt(b,r),s=0===e?A:t.length-1;o?t[s].e=o:delete t[s].e;const l=c+n.u*(f-c),u=De(m,y,n.p,n.pos,n.rotateDeg,a);t.push(Ne(l,u)),b=i,k=n.u}}function Ve(t,e,n,r,o){const a=e-t,i=n-e,s=a-2*i+(r-n),l=2*(i-a),u=a;if(Math.abs(s)<1e-10){if(Math.abs(l)>1e-10){const t=-u/l;t>1e-6&&t<.999999&&o.push(t)}return}const c=l*l-4*s*u;if(c<0)return;const f=Math.sqrt(c),h=(-l-f)/(2*s),d=(-l+f)/(2*s);h>1e-6&&h<.999999&&o.push(h),d>1e-6&&d<.999999&&o.push(d)}function We(t,e,n,r,o,a,i,s){const l=(t+e)/2,u=ee(r.P0,r.P1,r.P2,r.P3,t),c=ee(r.P0,r.P1,r.P2,r.P3,e),f=e-t,h=ee(r.P0,r.P1,r.P2,r.P3,t+.25*f),d=ee(r.P0,r.P1,r.P2,r.P3,l),p=ee(r.P0,r.P1,r.P2,r.P3,t+.75*f),m=Math.max(Be(h,u,c),Be(d,u,c),Be(p,u,c));let y=!0;if(o){const n=re(r.P0,r.P1,r.P2,r.P3,t),o=re(r.P0,r.P1,r.P2,r.P3,e),a=180*Math.atan2(n[1],n[0])/Math.PI,s=180*Math.atan2(o[1],o[0])/Math.PI;let l=Math.abs(a-s);l>180&&(l=360-l),l>i&&(y=!1)}m<=a&&y||s.remaining<=0||f<1e-6?n.push(e):(s.remaining-=1,We(t,l,n,r,o,a,i,s),We(l,e,n,r,o,a,i,s))}function Be(t,e,n){const r=n[0]-e[0],o=n[1]-e[1],a=r*r+o*o;if(a<1e-20){const n=t[0]-e[0],r=t[1]-e[1];return Math.sqrt(n*n+r*r)}const i=(t[0]-e[0])*o-(t[1]-e[1])*r;return Math.abs(i)/Math.sqrt(a)}function Re(t,e){const n=Ge(t,e);return null!=n?n:t}function Ge(t,e){let n,r;if(t.children)for(let r=0;r<t.children.length;r++){const o=Ge(t.children[r],e);null!==o&&(n||(n=t.children.slice()),n[r]=o)}const o=t.animate;if(o&&"object"==typeof o&&!Array.isArray(o)){const t=o,n=t.transform;if(n&&"object"==typeof n&&Me(n)){const o=ze(n,e);o!==n&&(r=u(l({},t),{transform:o}))}}if(!n&&!r)return null;const a=l({},t);return n&&(a.children=n),r&&(a.animate=r),a}function Ze(t){const e=[];let n;const r=function(t){const e=t.split(/([MLCZmlcz]|[\s,]+)/).map(t=>t.trim()).filter(t=>t&&","!==t),n=[];let r=null;for(const t of e)if(/[MLCZmlcz]/.test(t))r={type:t,values:[]},n.push(r);else if(r){const e=+t;r.values.push(Number.isNaN(e)?0:e)}return n}(t);for(const t of r){const r=t.type,o=t.values;if("M"===r||"m"===r){const t=o[0]||0,r=o[1]||0;n={v:[[t,r]],i:[[t,r]],o:[[t,r]],c:!1},e.push(n);continue}if(n||(n={v:[[0,0]],i:[[0,0]],o:[[0,0]],c:!1},e.push(n)),"L"===r){const t=o[0]||0,e=o[1]||0;n.v.push([t,e]),n.i.push([t,e]),n.o.push([t,e])}else if("C"===r){const t=o[0]||0,e=o[1]||0,r=o[2]||0,a=o[3]||0,i=o[4]||0,s=o[5]||0;n.o[n.o.length-1]=[t,e],n.v.push([i,s]),n.i.push([r,a]),n.o.push([i,s])}else"Z"===r||"z"===r?n.c=!0:console.warn('Unsupported path command "'+r+'"')}return e}function Ke(t){return t.startsWith("path(")&&t.endsWith(")")?t.slice(5,-1):/^[MmZzLlHhVvCcSsQqTtAa]/.test(t)?t:void 0}function Xe(t){return"string"==typeof t&&void 0!==Ke(t)}function qe(t){if(t&&"object"==typeof t&&"string"==typeof t.path){const e=Ke(t.path);return e?{paths:Ze(e)}:t}if(t&&"object"==typeof t&&"paths"in t){const e=t.paths;if(Array.isArray(e)&&e.length>0&&Xe(e[0])){const t=[];for(const n of e){const e=Ke(n);e&&t.push(...Ze(e))}return{paths:t}}return t}if(Array.isArray(t)){if(t.length>0&&Xe(t[0])){const e=[];for(const n of t){const t=Ke(n);t&&e.push(...Ze(t))}return{paths:e}}return{paths:t}}if(Xe(t)){return{paths:Ze(Ke(t))}}return t}function Ye(t,e){var n;if(t)return Array.isArray(t)?t:(null==(n=null==e?void 0:e.easings)?void 0:n[t])?e.easings[t]:void console.warn("Unknown easing name: "+t)}function Qe(t,e){var n;if("string"==typeof t){const r=null==(n=null==e?void 0:e.animations)?void 0:n[t];return r||console.warn("Unknown animation name: "+t),r}return t}function Je(t,e,n,r){var o,a;if("d"===t){return{paths:Ft(null!=(o=null==e?void 0:e.paths)?o:Array.isArray(e)?e:[],null!=(a=null==n?void 0:n.paths)?a:Array.isArray(n)?n:[],r)}}return Gt.has(t)?Ct(e||[0,0,0,1],n||[0,0,0,1],r):"transform"!==t||"object"!=typeof e||null===e||Array.isArray(e)||"object"!=typeof n||null===n||Array.isArray(n)?"rotate"===t&&"number"==typeof e&&"number"==typeof n?It(e,n,r):Zt.has(t)||"stroke-dasharray"===t||"strokeDasharray"===t?Nt(e||[],n||[],r):It(+(e||0),+(n||0),r):function(t,e,n){const r=new Set([...Object.keys(null!=t?t:{}),...Object.keys(null!=e?e:{})]),o={};for(const a of r){const r=null==t?void 0:t[a],i=null==e?void 0:e[a];if("rotate"===a||"skew"===a)o[a]=It(+(null!=r?r:0),+(null!=i?i:0),n);else if("translate"===a||"scale"===a||"origin"===a){const t="scale"===a?[1,1]:[0,0];o[a]=Nt(r||t,i||t,n)}else o[a]=null!=i?i:r}return o}(e,n,r)}function He(t,e,n,r){var o,a,i,s,l;const u=e.length-1,c=te(null!=(o=n.segmentCount)?o:u,1,u);let f;f=n.before?e.slice(0,c+1):e.slice(u-c);const h=null!=(a=e[0].t)?a:0,d=null!=(i=e[e.length-1].t)?i:0;let p,m;n.before?(p=0,m=h):(p=d,m=r);const y=m-p;if(y<=0)return e;const g=null!=(s=f[0].t)?s:0,v=(null!=(l=f[f.length-1].t)?l:0)-g;if(v<=0)return e;const b=f.map(t=>{var e,n;return{relT:(t.t-g)/v,v:t.v,e:t.e,tangentIn:null!=(e=t.tangentIn)?e:t.ti,tangentOut:null!=(n=t.tangentOut)?n:t.to}}),k=Math.floor(y/v),A=y-k*v,w=A/v,x=[];function j(e,n,r){let o;if(n){o=[];for(let t=b.length-1;t>=0;t--)o.push({relT:1-b[t].relT,v:b[t].v,e:t>0?Wt(b[t-1].e):void 0,tangentIn:b[t].tangentOut,tangentOut:b[t].tangentIn})}else o=b;const a=void 0!==r?r:1;for(let n=0;n<o.length;n++){const r=o[n];if(r.relT>a+1e-9){const i=o[n-1],s=r.relT-i.relT,l=(a-i.relT)/s,u=i.e?Tt(i.e)(l):l,c=Je(t,i.v,r.v,u),{left:f}=Vt(i.e,l);return x.length>0&&i.relT<=a&&(x[x.length-1].e=f),void x.push({t:e+a*v,v:c,e:void 0})}const i={t:e+r.relT*v,v:r.v,e:n<o.length-1?r.e:void 0};r.tangentIn&&(i.tangentIn=r.tangentIn),r.tangentOut&&(i.tangentOut=r.tangentOut),x.push(i)}}if(n.before){if(w>1e-9){!function(e,n,r){let o;if(n){o=[];for(let t=b.length-1;t>=0;t--)o.push({relT:1-b[t].relT,v:b[t].v,e:t>0?Wt(b[t-1].e):void 0,tangentIn:b[t].tangentOut,tangentOut:b[t].tangentIn})}else o=b;const a=1-r;for(let n=0;n<o.length;n++){const r=o[n];if(r.relT<a-1e-9)continue;const i=o[n-1];if(i&&i.relT<a-1e-9&&r.relT>a+1e-9){const n=r.relT-i.relT,o=(a-i.relT)/n,s=i.e?Tt(i.e)(o):o,l=Je(t,i.v,r.v,s),{right:u}=Vt(i.e,o);x.push({t:e,v:l,e:u})}const s={t:e+(r.relT-a)*v,v:r.v,e:n<o.length-1?r.e:void 0};r.tangentIn&&(s.tangentIn=r.tangentIn),r.tangentOut&&(s.tangentOut=r.tangentOut),x.push(s)}}(p,!!n.alternate&&k%2==0,w)}for(let t=0;t<k;t++){const e=k-1-t,r=!!n.alternate&&e%2==0;j(p+A+t*v,r)}}else{for(let t=0;t<k;t++){const e=!!n.alternate&&t%2==0;j(p+t*v,e)}if(w>1e-9){const t=!!n.alternate&&k%2==0;j(p+k*v,t,w)}}return n.before?[...x,...e]:[...e,...x]}function $e(t,e,n,r){var o,a,i,s,l,u,c;const f=e.keyframes||e.kfs||[],h=[];for(const e of f){const n=null!=(a=null!=(o=e.time)?o:e.t)?a:0;let f=null!=(i=e.value)?i:e.v;const d=null!=(s=e.easing)?s:e.e;"d"===t&&(f=qe(f));const p=Jt(t)?$t(t):t;Gt.has(p)&&(f=null!=(l=Rt(f))?l:f);const m={t:n,v:f,e:Ye(d,r)},y=null!=(u=e.tangentIn)?u:e.ti,g=null!=(c=e.tangentOut)?c:e.to;y&&(m.tangentIn=y),g&&(m.tangentOut=g),h.push(m)}h.sort((t,e)=>{var n,r;return(null!=(n=t.t)?n:0)-(null!=(r=e.t)?r:0)});const d=e.loop,p=!0===d?{}:d||void 0;return p&&h.length>=2?He(t,h,p,n):h}function tn(t,e,n){var r;const o=e.loop;if(null==o||!1===o)return e;const a=!0===o?{}:o,i=null!=(r=e.keyframes)?r:e.kfs;if(!Array.isArray(i)||i.length<2)return e;const s=Jt(t)?$t(t):t,l=Gt.has(s),u=i.map(e=>{var n,r,o,a,i,s,u,c;const f=null!=(n=e.t)?n:e.time;let h=null!=(r=e.v)?r:e.value;"d"===t&&(h=qe(h)),l&&(h=null!=(o=Rt(h))?o:h);const d={t:f,v:h,e:null!=(a=e.e)?a:e.easing};return(null!=(i=e.tangentIn)?i:e.ti)&&(d.tangentIn=null!=(s=e.tangentIn)?s:e.ti),(null!=(u=e.tangentOut)?u:e.to)&&(d.tangentOut=null!=(c=e.tangentOut)?c:e.to),d}),c={kfs:He(t,u,a,n)};return void 0!==e.autoOrient&&(c.autoOrient=e.autoOrient),c}function en(t,e){const n=nn(t,e);return null!=n?n:t}function nn(t,e){let n,r;if(t.children)for(let r=0;r<t.children.length;r++){const o=nn(t.children[r],e);null!==o&&(n||(n=t.children.slice()),n[r]=o)}const o=t.animate;if(o&&"object"==typeof o&&!Array.isArray(o)){const t=o;for(const n of Object.keys(t)){const o=t[n],a=tn(n,o,e);a!==o&&(r||(r=l({},t)),r[n]=a)}}if(!n&&!r)return null;const a=l({},t);return n&&(a.children=n),r&&(a.animate=r),a}var rn=0;function on(t,e=C.webapi){const n=Mt(t)||{},r=St(t),o=n.duration||1e3,a=[],i=(t,n)=>{if(!n)return null;const a=function(t,e){if(!t)return[];const n=[];if("string"==typeof t){const r=Qe(t,e);r&&n.push(r)}else if(Array.isArray(t))for(const r of t){const t=Qe(r,e);t&&n.push(t)}else n.push(t);return n}(n,r);if(0===a.length)return null;const i=function(t,e,n,r=C.webapi){const o={};for(const[a,i]of Object.entries(t)){const t=$e(a,i,e,n);if(t.length>0){const e={kfs:t};void 0!==i.autoOrient&&(e.autoOrient=i.autoOrient),void 0!==i.loop&&(e.loop=i.loop),o[a]=r===C.webapi&&"transform"===a?ze(e):e}}return o}(function(t){const e={};for(const n of t)for(const[t,r]of Object.entries(n))e[t]=r;return e}(a),o,r,e);return 0===Object.keys(i).length?null:{id:t,animate:i}},s=Pt(t);if(s)for(const t of s){const e=i(t.id,t.animate);e&&a.push(e)}const l=t=>{const e=t.animate;if(e&&Object.keys(e).length>0){const n=t.id||"_px_el_"+ ++rn;t.id=n;const r=i(n,e);r&&a.push(r)}if(t.children)for(let e=0;e<t.children.length;e++)l(t.children[e])};if(t.children)for(let e=0;e<t.children.length;e++)l(t.children[e]);return a}function an(t,e,n){var r,o,a,i,s,l,u;const c=e.kfs||e.keyframes||[];if(0===c.length)return null;const{prevKf:f,nextKf:h}=function(t,e){var n,r;const o=t.length-1;let a=t[0],i=t[o>0?1:0];for(let s=0;s<o;s++){const l=null!=(n=t[s].t)?n:0,u=null!=(r=t[s+1].t)?r:0;if(l<=e&&e<=u){a=t[s],i=t[s+1];break}e>u&&s===o-1&&(a=t[o>0?o-1:0],i=t[o])}return{prevKf:a,nextKf:i}}(c,n);let d=f===h?0:(p=n,m=null!=(r=f.t)?r:0,y=null!=(o=h.t)?o:0,g=0,v=1,y===m?g:g+(p-m)/(y-m)*(v-g));var p,m,y,g,v;d=te(d,0,1);const b=null!=(a=f.e)?a:f.easing;if(b&&Array.isArray(b))try{d=Tt(b)(d)}catch(t){}let k=Jt(t)?$t(t):t,A=null;const w=null!=(i=null==f?void 0:f.v)?i:null==f?void 0:f.value,x=null!=(s=null==h?void 0:h.v)?s:null==h?void 0:h.value;if("d"===k){A=Ft(null!=(l=null==w?void 0:w.paths)?l:Array.isArray(w)?w:[],null!=(u=null==x?void 0:x.paths)?u:Array.isArray(x)?x:[],d).map(t=>zt(t)).join("")}else if(Gt.has(k))A=Bt(Ct(w||[0,0,0,1],x||[0,0,0,1],d)),k=t;else if("stroke-dasharray"===k)A=Nt(w||[],x||[],d).join(" "),k=t;else if("transform"!==k||null===w||"object"!=typeof w||Array.isArray(w))if("translate"===k){A="translate("+Nt(w||[0,0],x||[0,0],d).join(",")+")",k="transform"}else if("rotate"===k){A="rotate("+It(+(w||0),+(x||0),d)+")",k="transform"}else if("scale"===k){A="scale("+Nt(w||[1,1],x||[1,1],d).join(",")+")",k="transform"}else{A=It(+(w||0),+(x||0),d)}else{const t=new Set([...w?Object.keys(w):[],...x?Object.keys(x):[]]),n={};for(const e of t){const t=null==w?void 0:w[e],r=null==x?void 0:x[e];if("rotate"===e||"skew"===e)n[e]=It(+(null!=t?t:0),+(null!=r?r:0),d);else if("translate"===e||"scale"===e||"origin"===e){const o="scale"===e?[1,1]:[0,0],a=Nt(t||o,r||o,d);n[e]=a}}if(Me(e)){const t=w.translate,r=x.translate;if(Array.isArray(t)&&Array.isArray(r)){const o=_e(f,h,[+t[0],+t[1]],[+r[0],+r[1]],d,!!e.autoOrient);n.translate=[o.translate[0],o.translate[1]],void 0!==o.rotateDeg&&(n.rotate=o.rotateDeg)}}A=Xt(n,{withUnits:!1}),k="transform"}return Kt.has(k)&&"number"==typeof A&&(A=100*A+"%"),{k:k,v:null===A?"":""+A}}function sn(t,e){const n={};for(const[r,o]of Object.entries(t)){const t=an(r,o,e);t&&(n[t.k]=t.v)}return n}function ln(t){if(null===t||"object"!=typeof t)return t;if(Array.isArray(t))return t.map(ln);const e={};for(const n of Object.keys(t))e[n]=ln(t[n]);return e}function un(t,e){const n=new Map,r=t=>{var o;if("string"==typeof t.id){const r=e();n.set(t.id,r),t.id=r}null==(o=t.children)||o.forEach(r)};r(t);const o=t=>t.replace(/url\(#([^)]+)\)/g,(t,e)=>{const r=n.get(e);return r?"url(#"+r+")":t}),a=t=>{var e;if("string"==typeof t.href&&t.href.startsWith("#")){const e=n.get(t.href.slice(1));e&&(t.href="#"+e)}for(const e of Object.keys(t)){if("children"===e||"effects"===e||"meta"===e||"animate"===e||"href"===e||"id"===e)continue;const n=t[e];"string"==typeof n&&-1!==n.indexOf("url(#")&&(t[e]=o(n))}null==(e=t.children)||e.forEach(a)};return a(t),n}function cn(t){const e="number"==typeof t?t:"string"==typeof t?parseFloat(t):NaN;return Number.isFinite(e)?e:0}function fn(t){var e;const n=cn(t.x),r=cn(t.y);if(delete t.x,delete t.y,!n&&!r)return t;const o="translate("+n+","+r+")";if(void 0!==t.transform||void 0!==t.animate){const n={type:"g",transform:o,children:null!=(e=t.children)?e:[]};t.children=[n]}else t.transform=o;return t}function hn(t){var e;const n=function(t){const e=new Map,n=t=>{var r;"string"==typeof t.id&&e.set(t.id,t),null==(r=t.children)||r.forEach(n)};return n(t),e}(t),r=function(t,e){const n=new WeakMap,r=new Set,o=(t,r)=>{const a=n.get(t);if(void 0!==a)return a;if(r.has(t))return!1;r.add(t);let i=!1;if(t.animate&&"object"==typeof t.animate&&!Array.isArray(t.animate))for(const e in t.animate){i=!0;break}if(!i&&t.children)for(const e of t.children)if(o(e,r)){i=!0;break}if(!i&&"use"===t.type&&"string"==typeof t.href){const n=pn(t.href),a=n?e.get(n):void 0;a&&(i=o(a,r))}return r.delete(t),n.set(t,i),i};for(const[t,n]of e)o(n,new Set)&&r.add(t);return r}(0,n);if(0===r.size)return t;let o=0;const a=function(t){const e=yn(t.viewBox);if(e)return[e[2],e[3]];const n=dn(t.width),r=dn(t.height);return void 0!==n&&void 0!==r?[n,r]:[1,1]}(t),i=[],s=gn(t,n,r,()=>"_lw_use_mat_"+ ++o,i,a);if(0===i.length)return s;const c={type:"defs",children:i},f=[...null!=(e=s.children)?e:[],c];return u(l({},s),{children:f})}function dn(t){if("number"==typeof t)return t;if("string"==typeof t){const e=parseFloat(t);return Number.isFinite(e)?e:void 0}}function pn(t){if("string"==typeof t)return t.startsWith("#")?t.slice(1):t}function mn(t,e,n,r,o,a,i){var s,c,f,h;const d=ln(e);un(d,o);const p="symbol"===d.type?yn(d.viewBox):void 0,m=null!=(c=null!=(s=dn(t.width))?s:null==p?void 0:p[2])?c:i[0],y=null!=(h=null!=(f=dn(t.height))?f:null==p?void 0:p[3])?h:i[1],g="symbol"===d.type?function(t,e,n,r,o){const a=yn(t.viewBox),i=u(l({},t),{type:"g"});if(delete i.viewBox,delete i.preserveAspectRatio,delete i.width,delete i.height,!a)return i;const[s,c,f,h]=a,d=f>0&&h>0?Math.min(r/f,o/h):1,p=(r-f*d)/2,m=(o-h*d)/2,y=[];0===p&&0===m||y.push("translate("+p+","+m+")");1!==d&&y.push("scale("+d+")");0===s&&0===c||y.push("translate("+-s+","+-c+")");y.length&&(i.transform=y.join(""));const g=e();return n.push({type:"clipPath",id:g,children:[{type:"rect",x:s,y:c,width:f,height:h}]}),i.clipPath="url(#"+g+")",i}(d,o,a,m,y):d,v=gn(g,n,r,o,a,i),b=u(l({},t),{type:"g",children:[v]});return delete b.href,delete b.width,delete b.height,fn(b)}function yn(t){if("string"!=typeof t)return;const e=t.trim().split(/[\s,]+/).map(Number);return e.length<4||e.some(t=>!Number.isFinite(t))?void 0:[e[0],e[1],e[2],e[3]]}function gn(t,e,n,r,o,a){if("use"===t.type&&"string"==typeof t.href){const i=pn(t.href);if(i&&n.has(i)){const s=e.get(i);if(s)return mn(t,s,e,n,r,o,a)}}if(!t.children)return t;let i=!1;const s=t.children.map(t=>{const s=gn(t,e,n,r,o,a);return s!==t&&(i=!0),s});return i?u(l({},t),{children:s}):t}function vn(t,e,n){const r={};return"translate"===t?r.translate=e:"rotate"===t?r.rotate=e:"skew"===t?r.skew=e:r.scale=e,n&&"translate"!==t&&(r.origin=n),r}function bn(t){if(void 0===t)return{kind:"absent"};if(Array.isArray(t))return{kind:"static",value:t};if("object"==typeof t){const e=t;if(e.keyframes)return{kind:"animated",keyframes:e.keyframes,autoOrient:e.autoOrient,loop:e.loop};if(void 0!==e.value)return{kind:"static",value:e.value}}return{kind:"static",value:t}}function kn(t,e){const n={value:e};return void 0!==t.time&&(n.time=t.time),void 0!==t.easing&&(n.easing=t.easing),void 0!==t.tangentOut&&(n.tangentOut=t.tangentOut),void 0!==t.tangentIn&&(n.tangentIn=t.tangentIn),n}function An(t,e,n){if(!e)return t;delete t.transform;let r=t;var o;return r=xn(r,e.origin,!0),r=wn(r,"scale",void 0===(o=e.scale)?void 0:Array.isArray(o)?[o[0]/100,o[1]/100]:o,n),r=wn(r,"skew",e.skew,n),r=wn(r,"rotate",e.rotate,n),r=xn(r,e.origin,!1),!function(t){if(!t||"object"!=typeof t)return!1;const e=t;return!!e.autoOrient||Array.isArray(e.keyframes)&&e.keyframes.some(t=>t.tangentOut||t.tangentIn)}(e.translate)?r=wn(r,"translate",e.translate,n):(r=xn(r,e.origin,!0),r=wn(r,"translate",e.translate,n),r=xn(r,e.origin,!1)),r}function wn(t,e,n,r){if(void 0===n)return t;const o=bn(n);if("static"===o.kind)return{type:"g",transform:{value:vn(e,o.value,void 0)},children:[t]};if("animated"===o.kind){const n={keyframes:o.keyframes.map(t=>kn(t,vn(e,t.value,void 0)))};return o.autoOrient&&(n.autoOrient=!0),void 0!==o.loop&&(n.loop=o.loop),{type:"g",animate:{transform:n},children:[t]}}return t}function xn(t,e,n){if(void 0===e)return t;const r=bn(e),o=t=>n?[-t[0],-t[1]]:t;if("absent"===r.kind)return t;if("static"===r.kind)return 0===r.value[0]&&0===r.value[1]?t:{type:"g",transform:{value:{translate:o(r.value)}},children:[t]};if("animated"===r.kind){const e={keyframes:r.keyframes.map(t=>kn(t,{translate:o(t.value)}))};return void 0!==r.loop&&(e.loop=r.loop),{type:"g",animate:{transform:e},children:[t]}}return t}function jn(t,e,n){var r,o,a;if("use"===t.type&&"content"===(null==(o=null==(r=t.effects)?void 0:r.clone)?void 0:o.type)){const r=t.effects.clone.baseId;"string"==typeof r&&r&&!e.contentRefInnerIds.has(r)&&e.contentRefInnerIds.set(r,n(r))}null==(a=t.children)||a.forEach(t=>jn(t,e,n))}function On(t,e,n,r,o){const a=function(t,e){var n,r,o;const a={};let i=!1;const s=null==(n=t.animate)?void 0:n.transform;if(s&&"object"==typeof s&&Array.isArray(s.keyframes)){const e=s.keyframes;if(e.some(t=>t.value&&t.value.translate)){const n=Sn(s),r={keyframes:e.map(t=>{const e=t.value||{},r={};void 0!==e.translate&&(r.translate=e.translate),n&&void 0!==e.origin&&(r.origin=e.origin);const o={value:r};return void 0!==t.time&&(o.time=t.time),void 0!==t.easing&&(o.easing=t.easing),void 0!==t.tangentOut&&(o.tangentOut=t.tangentOut),void 0!==t.tangentIn&&(o.tangentIn=t.tangentIn),o})};s.autoOrient&&(r.autoOrient=!0);const o=s.loop;void 0!==o&&(r.loop=o),a.animate={transform:r};const l=e.some(t=>{const e=t.value||{};return void 0!==e.rotate||void 0!==e.scale}),u=e.map(t=>{const e=t.value||{},r={};void 0!==e.rotate&&(r.rotate=e.rotate),void 0!==e.scale&&(r.scale=e.scale),void 0===e.origin||n&&!l||(r.origin=e.origin);const o={value:r};return void 0!==t.time&&(o.time=t.time),void 0!==t.easing&&(o.easing=t.easing),o});if(u.every(t=>0===Object.keys(t.value).length))delete t.animate.transform,t.animate&&0===Object.keys(t.animate).length&&delete t.animate;else{const e={keyframes:u};void 0!==o&&(e.loop=o),t.animate.transform=e}i=!0}}const l=void 0!==(null==e?void 0:e.translate),u=i||l,c=i&&Sn((null==(r=t.animate)?void 0:r.transform)||void 0)||i&&Sn((null==(o=a.animate)?void 0:o.transform)||void 0);if("string"==typeof t.transform){const e=function(t){const e=[],n=/(translate|rotate|scale|matrix|skewX|skewY)\(([^)]*)\)/g;let r;for(;r=n.exec(t);)e.push({name:r[1],full:r[0]});if(!e.length)return{rest:t||void 0};if(e.every(t=>"translate"===t.name))return{translate:e.map(t=>t.full).join("")};const o=e[0],a=e[e.length-1];if("translate"===a.name&&"translate"===o.name){const n=Mn(a.full),r=Mn(o.full),i=-n[0],s=-n[1],l=r[0]-i,u=r[1]-s;if(0===l&&0===u)return{rest:t};return{translate:"translate("+l+","+u+")",rest:"translate("+i+","+s+")"+e.slice(1).map(t=>t.full).join("")}}if("translate"===a.name)return{rest:t};const i=[];let s=0;for(;s<e.length&&"translate"===e[s].name;)i.push(e[s].full),s++;if(!i.length)return{rest:t};const l=e.slice(s).map(t=>t.full).join("");return{translate:i.join(""),rest:l||void 0}}(t.transform);u?void 0!==e.translate?e.rest?t.transform=e.rest:delete t.transform:!function(t){const e=/(translate|rotate|scale|matrix|skewX|skewY)\(([^)]*)\)/g,n=[];let r;for(;r=e.exec(t);)n.push({name:r[1],full:r[0]});if(1!==n.length)return!1;if("translate"===n[0].name)return!0;if("matrix"!==n[0].name)return!1;const o=/matrix\(([^)]*)\)/.exec(n[0].full);if(!o)return!1;const a=o[1].split(/[\s,]+/).filter(Boolean).map(Number);return a.length>=4&&1===a[0]&&0===a[1]&&0===a[2]&&1===a[3]}(t.transform)?c&&function(t){const e=/(translate|rotate|scale|matrix|skewX|skewY)\(([^)]*)\)/g;let n,r=0,o=!1;for(;n=e.exec(t);)r++,"matrix"===n[1]&&(o=!0);return 1===r&&o}(t.transform)&&delete t.transform:delete t.transform:e.translate&&(a.transform=e.translate,e.rest?t.transform=e.rest:delete t.transform)}return a}(t,e);"string"==typeof t.id&&delete t.id;const{outer:i,inner:s}=function(t){if(!t)return{};const e=Sn(t.translate),n=void 0!==t.rotate||void 0!==t.scale,r={},o={};void 0!==t.translate&&(r.translate=t.translate);e&&void 0!==t.origin&&(r.origin=t.origin);void 0!==t.rotate&&(o.rotate=t.rotate);void 0!==t.scale&&(o.scale=t.scale);void 0!==t.skew&&(o.skew=t.skew);void 0===t.origin||e&&!n||(o.origin=t.origin);return{outer:Object.keys(r).length?r:void 0,inner:Object.keys(o).length?o:void 0}}(e);let l=t;l=An(l,s,o);let u={type:"g",id:n,children:[{type:"g",id:r,children:[l]}]};return void 0!==a.transform&&(u.transform=a.transform),void 0!==a.animate&&(u.animate=a.animate),i&&(delete u.id,u=An(u,i,o),u.id=n),u}function Mn(t){const e=/translate\(([^)]*)\)/.exec(t);if(!e)return[0,0];const n=e[1].split(/[\s,]+/).filter(Boolean).map(Number);return[n[0]||0,n[1]||0]}function Sn(t){if(!t||"object"!=typeof t)return!1;const e=t;return!!e.autoOrient||!!Array.isArray(e.keyframes)&&e.keyframes.some(t=>t.tangentOut||t.tangentIn)}function Pn(t,e){return"_lw_"+e+"_"+t.nextId++}function _n(t){return"string"==typeof t?t.replace(/^#/,""):void 0}function zn(t,e){var n;"string"==typeof t.id&&e.set(t.id,t),null==(n=t.children)||n.forEach(t=>zn(t,e))}var In=ln;function Nn(t,e,n,r){if(!e)return t;const o=Pn(n,"grad"),a=function(t,e){const n={type:t.type===ct.radial?"radialGradient":"linearGradient",id:e};t.type===ct.linear?(t.p1&&(n.x1=String(t.p1[0]),n.y1=String(t.p1[1])),t.p2&&(n.x2=String(t.p2[0]),n.y2=String(t.p2[1]))):(t.c&&(n.cx=String(t.c[0]),n.cy=String(t.c[1])),void 0!==t.r&&(n.r=String(t.r)),t.fp&&(n.fx=String(t.fp[0]),n.fy=String(t.fp[1])));t.gradientUnits&&(n.gradientUnits=t.gradientUnits);t.spreadMethod&&(n.spreadMethod=t.spreadMethod);t.gradientTransform&&(n.gradientTransform=t.gradientTransform);const r=t.animate;if(r){const t={};for(const e of Object.keys(r)){const n=Cn[e];n&&(t[n]=r[e])}Object.keys(t).length&&(n.animate=t)}return n.children=function(t){var e,n,r,o;if(!t)return[];if(Array.isArray(t))return t.map(Fn);if("object"==typeof t&&Array.isArray(t.value))return t.value.map(Fn);const a=t,i=a.keyframes;if(!Array.isArray(i)||!i.length)return[];const s=a.loop;let l=0;for(const t of i){const n=null!=(e=t.value)?e:t.v;Array.isArray(n)&&n.length>l&&(l=n.length)}if(!l)return[];const u=null!=(n=i[0].value)?n:i[0].v,c=[];for(let t=0;t<l;t++){const e=null!=(o=null!=(r=null==u?void 0:u[t])?r:Dn(i,0,t))?o:{offset:t/Math.max(1,l-1),color:"#000000"};c.push({offset:e.offset,color:e.color})}return c.map((t,e)=>function(t,e,n,r,o){var a,i,s,l,u;const c=[],f=[];let h=!1;for(const r of e){const o=null!=(i=null!=(a=r.time)?a:r.t)?i:0,d=null!=(s=r.value)?s:r.v,p=null!=(l=null==d?void 0:d[n])?l:Dn(e,e.indexOf(r),n);if(!p)continue;const m=null!=(u=r.easing)?u:r.e,y={time:o,value:p.color};void 0!==m&&(y.easing=m),c.push(y);const g={time:o,value:p.offset};void 0!==m&&(g.easing=m),f.push(g),p.offset!==t.offset&&(h=!0)}const d={type:"stop",offset:Ln(t.offset),stopColor:t.color},p={};c.length&&(p.stopColor={keyframes:c},void 0!==o&&(p.stopColor.loop=o));h&&f.length&&(p.offset={keyframes:f},void 0!==o&&(p.offset.loop=o));Object.keys(p).length&&(d.animate=p);return d}(t,i,e,0,s))}(t.stops),n}(e,o);return n.defs.push(a),t[r]="url(#"+o+")",t}var Cn={gradientX1:"x1",gradientY1:"y1",gradientX2:"x2",gradientY2:"y2",gradientCx:"cx",gradientCy:"cy",gradientFx:"fx",gradientFy:"fy",gradientR:"r"};function Fn(t){return{type:"stop",offset:Ln(t.offset),stopColor:t.color}}function Dn(t,e,n){var r,o;for(let o=e;o>=0;o--){const e=null!=(r=t[o].value)?r:t[o].v;if(null==e?void 0:e[n])return e[n]}for(let r=e+1;r<t.length;r++){const e=null!=(o=t[r].value)?o:t[r].v;if(null==e?void 0:e[n])return e[n]}}function Ln(t){return Math.round(1e3*t)/10+"%"}function Tn(t,e,n,r){if(!e)return t;if(!e.href)return r.errors.push("maskedBy.href missing — cannot build mask"),t;const o=Pn(r,"mask");let a={type:"use",href:"#"+e.href};if(n)a=En(a,n,r);else if(Bn(t))a=function(t,e){var n;const r=e.animate&&"object"==typeof e.animate&&!Array.isArray(e.animate)?e.animate:void 0,o=null==r?void 0:r.transform,a=o&&"object"==typeof o&&Array.isArray(o.keyframes)?o.keyframes:void 0;if(!a||!a.length)return t;const i=[],s=[],c=[];for(const t of a){const e=(null!=(n=t.value)?n:t.v)||{},r=kn(t,void 0);if(Array.isArray(e.translate)&&i.push(u(l(l({},r),Wn(t)),{value:{translate:[-e.translate[0],-e.translate[1]]}})),"number"==typeof e.rotate){const t={rotate:-e.rotate};Array.isArray(e.origin)&&(t.origin=[e.origin[0],e.origin[1]]),s.push(u(l({},r),{value:t}))}if(Array.isArray(e.scale)){const t={scale:[1/e.scale[0],1/e.scale[1]]};Array.isArray(e.origin)&&(t.origin=[e.origin[0],e.origin[1]]),c.push(u(l({},r),{value:t}))}}const f=null==o?void 0:o.loop,h=t=>{const e={keyframes:t};return void 0!==f&&(e.loop=f),e};let d=t;i.length&&(d={type:"g",animate:{transform:h(i)},children:[d]});s.length&&(d={type:"g",animate:{transform:h(s)},children:[d]});c.length&&(d={type:"g",animate:{transform:h(c)},children:[d]});return d}(a,t);else{const e=function(t){if("string"==typeof t.transform){const e=function(t){var e,n,r,o,a,i,s,l,u,c,f,h,d;const p=/([a-zA-Z]+)\s*\(([^)]*)\)/g;let m;const y=[];for(;null!==(m=p.exec(t));){const t=m[2].split(/[\s,]+/).filter(t=>t.length>0).map(Number);y.push({name:m[1],args:t})}if(!y.length)return;const g=y[y.length-1];if("translate"===g.name)for(let t=y.length-2;t>=0;t--){const c=y[t];if("translate"!==c.name)continue;const f=null!=(e=c.args[0])?e:0,h=null!=(n=c.args[1])?n:0,d=null!=(r=g.args[0])?r:0,p=null!=(o=g.args[1])?o:0;if(d!==-f||p!==-h)continue;const m={};m.origin=[f,h];for(let e=0;e<t;e++)if("translate"===y[e].name){const t=null!=(a=y[e].args[0])?a:0,n=null!=(i=y[e].args[1])?i:0;m.translate=m.translate?[m.translate[0]+t,m.translate[1]+n]:[t,n]}for(let e=t+1;e<y.length-1;e++){const t=y[e];if("rotate"===t.name)m.rotate=(null!=(s=m.rotate)?s:0)+(null!=(l=t.args[0])?l:0);else if("scale"===t.name){const e=null!=(u=t.args[0])?u:1,n=t.args.length>1?t.args[1]:e;m.scale=m.scale?[m.scale[0]*e,m.scale[1]*n]:[e,n]}}return m}let v,b,k;for(const t of y)if("translate"===t.name){const e=null!=(c=t.args[0])?c:0,n=null!=(f=t.args[1])?f:0;v=v?[v[0]+e,v[1]+n]:[e,n]}else if("rotate"===t.name)b=(null!=b?b:0)+(null!=(h=t.args[0])?h:0);else if("scale"===t.name){const e=null!=(d=t.args[0])?d:1,n=t.args.length>1?t.args[1]:e;k=k?[k[0]*e,k[1]*n]:[e,n]}const A={};v&&(A.translate=v);void 0!==b&&(A.rotate=b);k&&(A.scale=k);return Object.keys(A).length?A:void 0}(t.transform);if(!e)return;const n={};return e.translate&&(n.translate=e.translate),void 0!==e.rotate&&(n.rotate=e.rotate),e.scale&&(n.scale={value:e.scale}),e.origin&&(n.origin=e.origin),Object.keys(n).length?n:void 0}return}(t);e&&(a=En(a,e,r))}const i=void 0===n&&!function(t){return"string"==typeof t.transform||(!(!t.transform||"object"!=typeof t.transform)||Bn(t))}(t);a=function(t,e,n,r,o){const a=r.idMap.get(n),i=r.maskAncestorChains.get(e)||[],s=o?Kn(e,r):void 0,l=s?[...i,s]:i,u=a&&r.maskAncestorChains.get(a)||[];if(!l.length&&!u.length)return t;const c=new Set;for(const t of l)if(t.translateKeyframes)for(const e of t.translateKeyframes)c.add(e.time);for(const t of u)if(t.translateKeyframes)for(const e of t.translateKeyframes)c.add(e.time);if(!(c.size>0)){const e=Rn(l),n=Rn(u),r=n[0]-e[0],o=n[1]-e[1];return 0===r&&0===o?t:{type:"g",transform:"translate("+r+","+o+")",children:[t]}}const f=Array.from(c).sort((t,e)=>t-e);return{type:"g",animate:{transform:{keyframes:f.map(t=>{const e=Gn(l,t),n=Gn(u,t);return{time:t,value:{translate:[n[0]-e[0],n[1]-e[1]]}}})}},children:[t]}}(a,t,e.href,r,i);const s={type:"mask",id:o,children:[a]};return e.maskType&&(s.maskType=e.maskType),e.maskUnits&&(s.maskUnits=e.maskUnits),e.maskContentUnits&&(s.maskContentUnits=e.maskContentUnits),r.defs.push(s),t.mask="url(#"+o+")",t}function En(t,e,n){if(!e)return t;const r=function(t,e){var n;const r=bn(t);if("absent"!==r.kind)return"static"===r.kind?r.value:(e.warnings.push("transformation.origin: animated origin approximated by its first keyframe"),null==(n=r.keyframes[0])?void 0:n.value)}(e.origin,n);let o=t;return o=Un(o,"translate",e.translate,void 0,n),o=Un(o,"rotate",e.rotate,r,n),o=Un(o,"scale",e.scale,r,n),o}function Un(t,e,n,r,o){if(void 0===n)return t;const a=bn("scale"===e&&Array.isArray(n)?[n[0]/100,n[1]/100]:n);if("static"===a.kind)return{type:"g",transform:{value:vn(e,Vn(e,a.value),r)},children:[t]};if("animated"===a.kind){const n={keyframes:a.keyframes.map(t=>{const n=kn(t,vn(e,Vn(e,t.value),r));return"translate"===e?l(l({},n),Wn(t)):n})};return void 0!==a.loop&&(n.loop=a.loop),{type:"g",animate:{transform:n},children:[t]}}return t}function Vn(t,e){return"translate"===t?[-e[0],-e[1]]:"rotate"===t?-e:[1/e[0],1/e[1]]}function Wn(t){var e,n;const r={},o=null!=(e=t.tangentOut)?e:t.to,a=null!=(n=t.tangentIn)?n:t.ti;return Array.isArray(o)&&(r.tangentOut=[-o[0],-o[1]]),Array.isArray(a)&&(r.tangentIn=[-a[0],-a[1]]),r}function Bn(t){const e=t.animate&&"object"==typeof t.animate&&!Array.isArray(t.animate)?t.animate:void 0;return!(!e||!e.transform)}function Rn(t){let e=0,n=0;for(const r of t)r.translate&&(e+=r.translate[0],n+=r.translate[1]);return[e,n]}function Gn(t,e){let n=0,r=0;for(const o of t)if(o.translateKeyframes&&o.translateKeyframes.length){const t=Zn(o.translateKeyframes,e);n+=t[0],r+=t[1]}else o.translate&&(n+=o.translate[0],r+=o.translate[1]);return[n,r]}function Zn(t,e){if(e<=t[0].time)return t[0].value;if(e>=t[t.length-1].time)return t[t.length-1].value;for(let n=1;n<t.length;n++)if(e<=t[n].time){const r=t[n-1],o=t[n],a=(e-r.time)/(o.time-r.time);return[r.value[0]+(o.value[0]-r.value[0])*a,r.value[1]+(o.value[1]-r.value[1])*a]}return t[t.length-1].value}function Kn(t,e){var n,r,o;const a=t.transform,i=t.animate&&"object"==typeof t.animate&&!Array.isArray(t.animate)?t.animate.transform:void 0;if(void 0===a&&!i)return;const s={};if("string"==typeof a){const t=function(t,e){const n=/([a-zA-Z]+)\s*\(([^)]*)\)/g;let r,o=0,a=0,i=!1,s=!1;for(;null!==(r=n.exec(t));){const t=r[1],e=r[2].split(/[\s,]+/).filter(t=>t.length>0).map(Number);"translate"===t?(o+=e[0]||0,a+=e[1]||0,i=!0):s=!0}s&&e.warnings.push("maskedBy ancestor: non-translate transform in string ignored: "+t);return i?[o,a]:void 0}(a,e);t&&(s.translate=t)}else if(a&&"object"==typeof a){const t=a.value;t&&"object"==typeof t&&Array.isArray(t.translate)&&(s.translate=[t.translate[0]||0,t.translate[1]||0]),!t||void 0===t.rotate&&void 0===t.scale&&void 0===t.skew||e.warnings.push("maskedBy ancestor: non-translate transform parts ignored (rotate/scale not yet supported)")}if(i&&Array.isArray(i.keyframes)){const t=i.keyframes,a=[];for(const i of t){const t=null!=(n=i.value)?n:i.v,s=null!=(o=null!=(r=i.time)?r:i.t)?o:0;t&&"object"==typeof t&&Array.isArray(t.translate)&&(a.push({time:s,value:[t.translate[0]||0,t.translate[1]||0]}),void 0===t.rotate&&void 0===t.scale&&void 0===t.skew||e.warnings.push("maskedBy ancestor: animated non-translate parts ignored"))}a.length&&(s.translateKeyframes=a)}return s.translate||s.translateKeyframes?s:void 0}var Xn="content";function qn(t,e,n){if(!e)return;const r=e.baseId;if(!r)return void(e.type===Xn&&n.errors.push("clone: content ref missing baseId"));const o=e.type===Xn&&n.contentRefInnerIds.get(r)||r;t.href="#"+o}function Yn(t,e){const n={};return void 0!==t.translate&&(n.translate=function(t,e){if(Array.isArray(t))return e(t);if(t&&"object"==typeof t){const n=t;if(Array.isArray(n.keyframes))return u(l({},n),{keyframes:n.keyframes.map(t=>t&&void 0!==t.value?u(l({},t),{value:e(t.value)}):t)});if(void 0!==n.value)return u(l({},n),{value:e(n.value)})}return t}(t.translate,t=>[t[0]*e,t[1]*e])),void 0!==t.rotate&&(n.rotate=function(t,e){if("number"==typeof t)return e(t);if(t&&"object"==typeof t){const n=t;if(Array.isArray(n.keyframes))return u(l({},n),{keyframes:n.keyframes.map(t=>t&&void 0!==t.value?u(l({},t),{value:e(t.value)}):t)});if(void 0!==n.value)return u(l({},n),{value:e(n.value)})}return t}(t.rotate,t=>t*e)),void 0!==t.scale&&(n.scale=function(t,e){const n=t=>[Math.pow(t[0]/100,e),Math.pow(t[1]/100,e)],r=t=>[Math.pow(t[0],e),Math.pow(t[1],e)];if(Array.isArray(t))return{value:n(t)};if(t&&"object"==typeof t){const e=t;if(Array.isArray(e.keyframes))return u(l({},e),{keyframes:e.keyframes.map(t=>t&&void 0!==t.value?u(l({},t),{value:r(t.value)}):t)});if(void 0!==e.value)return u(l({},e),{value:n(e.value)})}return t}(t.scale,e)),void 0!==t.origin&&(n.origin=t.origin),Object.keys(n).length?n:void 0}function Qn(t){var e,n;return t.timeCrop&&console.warn("retime: `timeCrop` is not supported yet and will be ignored"),{start:null!=(e=t.start)?e:0,stretch:null!=(n=t.stretch)?n:1}}function Jn(t,e){return{start:e.start+e.stretch*t.start,stretch:e.stretch*t.stretch}}function Hn(t){var e,n;return null==(n=null==(e=t.effects)?void 0:e.clone)?void 0:n.retime}function $n(t){var e;const n=null==(e=t.effects)?void 0:e.clone;n&&(delete n.retime,0===Object.keys(n).length&&delete t.effects.clone,t.effects&&0===Object.keys(t.effects).length&&delete t.effects)}function tr(t,e,n){const r=_n(t.href);if(!r)return void n.errors.push("retime: <use> has no href to follow");const o=er(r,e,n,new Set);o&&(t.href="#"+o)}function er(t,e,n,r){if(r.has(t))return void n.errors.push('retime: loop via "'+t+'"');const o=n.idMap.get(t);if(!o)return void n.warnings.push('retime: target "'+t+'" not found');const a=In(o);if(function(t,e){un(t,()=>Pn(e,"retimed"))}(a,n),"use"===o.type?rr(a,e.start,e.stretch):nr(a,e.start,e.stretch),$n(a),"use"===o.type&&o.href){const i=_n(o.href);if(i){const s=Hn(o),l=s?Jn(Qn(s),e):e,u=new Set(r);u.add(t);const c=er(i,l,n,u);c&&(a.href="#"+c)}}else!function(t,e,n,r,o){const a=t=>{var i;const s=Hn(t);if("use"===t.type&&s&&t.href){const a=_n(t.href);if(a){const i=Jn(Qn(s),e),l=new Set(r);l.add(o);const u=er(a,i,n,l);u&&(t.href="#"+u)}$n(t)}null==(i=t.children)||i.forEach(a)};a(t)}(a,e,n,r,t);return n.defs.push(a),"string"==typeof a.id&&n.idMap.set(a.id,a),"string"==typeof a.id?a.id:void 0}function nr(t,e,n){var r;rr(t,e,n),null==(r=t.children)||r.forEach(t=>nr(t,e,n))}function rr(t,e,n){const r=t=>{for(const r of t)"number"==typeof r.time&&(r.time=e+r.time*n)};if(t.transform&&"object"==typeof t.transform&&Array.isArray(t.transform.keyframes)&&r(t.transform.keyframes),t.animate&&"object"==typeof t.animate)for(const e of Object.keys(t.animate)){const n=t.animate[e];n&&Array.isArray(n.keyframes)&&r(n.keyframes)}}var or=/[MmLlHhVvCcSsQqTtAaZz]/;function ar(t,e,n){return{P1:[t[0]+2/3*(e[0]-t[0]),t[1]+2/3*(e[1]-t[1])],P2:[n[0]+2/3*(e[0]-n[0]),n[1]+2/3*(e[1]-n[1])]}}function ir(t){const e=function(t){const e=function(t){const e=[],n=/([MmLlHhVvCcSsQqTtAaZz])|(-?\d*\.?\d+(?:[eE][-+]?\d+)?)/g;let r;for(;null!==(r=n.exec(t));)e.push(r[0]);return e}(t),n=[];let r=0,o=0,a=0,i=0,s=0,l=0,u=0,c=0,f=0,h="";const d=()=>parseFloat(e[r++]),p=(t,e,r)=>{const i=[o,a],s=ae(i,t,e,r,48);n.push({P0:i,P1:t,P2:e,P3:r,lut:s,len:s.ds[s.ds.length-1]}),o=r[0],a=r[1]},m=(t,e)=>{p([o+(t-o)/3,a+(e-a)/3],[o+2*(t-o)/3,a+2*(e-a)/3],[t,e])};for(;r<e.length;){let t=e[r];or.test(t)?r++:t="M"===h?"L":"m"===h?"l":h;const n=t>="a",y=t.toUpperCase();if("Z"!==y){if("M"===y){const e=d()+(n?o:0),r=d()+(n?a:0);o=e,a=r,i=e,s=r,h=t;continue}if("L"===y)m(d()+(n?o:0),d()+(n?a:0));else if("H"===y)m(d()+(n?o:0),a);else if("V"===y)m(o,d()+(n?a:0));else if("C"===y){const t=[d()+(n?o:0),d()+(n?a:0)],e=[d()+(n?o:0),d()+(n?a:0)],r=[d()+(n?o:0),d()+(n?a:0)];l=e[0],u=e[1],p(t,e,r)}else if("S"===y){const t="C"===h.toUpperCase()||"S"===h.toUpperCase()?[2*o-l,2*a-u]:[o,a],e=[d()+(n?o:0),d()+(n?a:0)],r=[d()+(n?o:0),d()+(n?a:0)];l=e[0],u=e[1],p(t,e,r)}else if("Q"===y){const t=[d()+(n?o:0),d()+(n?a:0)],e=[d()+(n?o:0),d()+(n?a:0)];c=t[0],f=t[1];const{P1:r,P2:i}=ar([o,a],t,e);p(r,i,e)}else if("T"===y){const t="Q"===h.toUpperCase()||"T"===h.toUpperCase()?[2*o-c,2*a-f]:[o,a],e=[d()+(n?o:0),d()+(n?a:0)];c=t[0],f=t[1];const{P1:r,P2:i}=ar([o,a],t,e);p(r,i,e)}else{if("A"!==y){r++;continue}r+=5,m(d()+(n?o:0),d()+(n?a:0))}h=t}else m(i,s),o=i,a=s,h=t}return n.length?n:null}(t);if(!e)return null;const n=new Float64Array(e.length+1);for(let t=0;t<e.length;t++)n[t+1]=n[t]+e[t].len;const r=n[e.length],o=e[0].P0,a=e[e.length-1].P3,i=Math.hypot(a[0]-o[0],a[1]-o[1])<.001,s=t=>{let r=0;for(;r<e.length-1&&t>n[r+1];)r++;const o=e[r],a=t-n[r],i=o.len>0?function(t,e){const{ts:n,ds:r}=t,o=r.length-1;if(e<=0)return n[0];if(e>=r[o])return n[o];let a=1,i=o;for(;a<i;){const t=a+i>>>1;r[t]<e?a=t+1:i=t}const s=r[i-1],l=r[i]-s,u=l>0?(e-s)/l:0;return n[i-1]+u*(n[i]-n[i-1])}(o.lut,a):0,[s,l]=ee(o.P0,o.P1,o.P2,o.P3,i),[u,c]=re(o.P0,o.P1,o.P2,o.P3,i);return{x:s,y:l,angle:Math.atan2(c,u)}};return{totalLength:r,closed:i,sampleAtDistance(t){if(i&&r>0&&(t<0||t>r))return s((t%r+r)%r);if(!i&&(t<0||t>r)){const e=t<0?0:r,n=s(e),o=t-e;return{x:n.x+Math.cos(n.angle)*o,y:n.y+Math.sin(n.angle)*o,angle:n.angle}}return s((o=r,(e=t)<(n=0)?n:e>o?o:e));var e,n,o}}}function sr(t){if("number"==typeof t)return{min:t,max:t};if(t&&"object"==typeof t){const e=t;if("number"==typeof e.value)return{min:e.value,max:e.value};if(Array.isArray(e.keyframes)&&e.keyframes.length){const t=e.keyframes.map(t=>Number(t.value)||0);return{min:Math.min(...t),max:Math.max(...t)}}}return{min:0,max:0}}function lr(t){let e=0,n=16;const r=t=>{var o,a;const i=parseFloat(String(null!=(o=t.fontSize)?o:""))||0;i&&(n=Math.max(n,i));const s=null!=(a=t.text)?a:t.textContent;if("string"==typeof s&&(e+=s.length),t.children)for(const e of t.children)r(e)};return r(t),e*n}var ur=t=>Math.round(1e3*t)/1e3;function cr(t,e){if(!e||null==t)return t;if("number"==typeof t)return t+e;const n=t;return"number"==typeof n.value?u(l({},n),{value:n.value+e}):Array.isArray(n.keyframes)?u(l({},n),{keyframes:n.keyframes.map(t=>u(l({},t),{value:(Number(t.value)||0)+e}))}):t}function fr(t,e){var n;if("clip"===e.pathOverflow)return{d:t,startShift:0};const r=ir(t);if(!r||r.closed||r.totalLength<=0)return{d:t,startShift:0};const o=r.totalLength,a=.15*o,i=sr(e.startOffset),s=sr(e.textLength).max||(null!=(n=e.advance)?n:0),l=Math.max(0,-i.min),u=Math.max(0,i.max+s-o),c=l>0?l+a:0,f=u>0?u+a:0;if(f<=0&&c<=0)return{d:t,startShift:0};const h=r.sampleAtDistance(0),d=r.sampleAtDistance(o);let p=t;if(c>0){const e=h.x-Math.cos(h.angle)*c,n=h.y-Math.sin(h.angle)*c,r=t.replace(/^\s*[Mm]\s*-?[\d.]+[\s,]+-?[\d.]+/,"");p="M"+ur(e)+","+ur(n)+"L"+ur(h.x)+","+ur(h.y)+r}if(f>0){const t=d.x+Math.cos(d.angle)*f,e=d.y+Math.sin(d.angle)*f;p+="L"+ur(t)+","+ur(e)}return{d:p,startShift:c}}function hr(t,e,n){if(null!=n)if("number"!=typeof n){if("object"==typeof n&&null!==n){const r=n;if(Array.isArray(r.keyframes)){const n=t.animate&&"object"==typeof t.animate&&!Array.isArray(t.animate)?t.animate:void 0,o=l({},n||{}),a={keyframes:r.keyframes};return void 0!==r.loop&&(a.loop=r.loop),o[e]=a,void(t.animate=o)}if("number"==typeof r.value)return void(t[e]=String(r.value))}}else t[e]=String(n)}var dr=(t,e,n)=>{const r={type:t};for(const t in e)void 0!==e[t]&&(r[t]=e[t]);const o=Array.isArray(n)?n.filter(t=>null!=t):null!=n?[n]:[];return o.length&&(r.children=o),r};function pr(t,e){return Math.round(t)===t?""+Math.round(t):t.toFixed(e)}function mr(t,e){let n="";for(let r=0;r<t.length;r++){const o=pr(t[r],e);r>0&&45!==o.charCodeAt(0)&&(n+=" "),n+=o}return n}function yr(t,e,n){return[t[0]*e+t[2]*n+t[4],t[1]*e+t[3]*n+t[5]]}var gr=/([MLCQZ])|(-?\d*\.?\d+(?:e[-+]?\d+)?)/gi;function vr(t,e,n=2){const r=[];let o;for(gr.lastIndex=0;null!==(o=gr.exec(t));)r.push(o[0]);let a="",i=0;const s=()=>parseFloat(r[i++]);for(;i<r.length;){const t=r[i++];if("M"===t||"L"===t){const[r,o]=yr(e,s(),s());a+=t+mr([r,o],n)}else if("C"===t){const[t,r]=yr(e,s(),s()),[o,i]=yr(e,s(),s()),[l,u]=yr(e,s(),s());a+="C"+mr([t,r,o,i,l,u],n)}else if("Q"===t){const[t,r]=yr(e,s(),s()),[o,i]=yr(e,s(),s());a+="Q"+mr([t,r,o,i],n)}else"Z"!==t&&"z"!==t||(a+="Z")}return a}var br=["fontFamily","fontSize","fontWeight","fontStyle","textAnchor","letterSpacing","wordSpacing","textDecoration","textTransform","whiteSpace","x","y","dx","dy","lengthAdjust","fill","stroke","strokeWidth","effects",F,D,"xml:space"];function kr(t){if("number"==typeof t)return t;if("string"==typeof t){const e=parseFloat(t);return isNaN(e)?void 0:e}}function Ar(t){return"string"==typeof t?t:void 0}function wr(t,e){var n,r,o,a,i,s,l;return{fontFamily:null!=(n=Ar(t.fontFamily))?n:e.fontFamily,fontSize:null!=(r=kr(t.fontSize))?r:e.fontSize,fill:null!=(o=t.fill)?o:e.fill,stroke:null!=(a=t.stroke)?a:e.stroke,strokeWidth:null!=(i=t.strokeWidth)?i:e.strokeWidth,letterSpacing:null!=(s=kr(t.letterSpacing))?s:e.letterSpacing,wordSpacing:null!=(l=kr(t.wordSpacing))?l:e.wordSpacing}}function xr(t){var e,n,r;return{fontFamily:Ar(t.fontFamily),fontSize:null!=(e=kr(t.fontSize))?e:16,fill:t.fill,stroke:t.stroke,strokeWidth:t.strokeWidth,letterSpacing:null!=(n=kr(t.letterSpacing))?n:0,wordSpacing:null!=(r=kr(t.wordSpacing))?r:0}}function jr(t){const e={};return void 0!==t.fill&&(e.fill=t.fill),void 0!==t.stroke&&(e.stroke=t.stroke),void 0!==t.strokeWidth&&(e.strokeWidth=t.strokeWidth),e}function Or(t,e,n,r){var o;const a=t.fontFamily?e[t.fontFamily]:n;return a||null==r||r.push('textGlyphs: no glyphs for font "'+(null!=(o=t.fontFamily)?o:"")+'"'),a}function Mr(t){const e=Object.keys(t);return 1===e.length?t[e[0]]:void 0}function Sr(t,e){if(t<=0||e<=0)return"";const n=.08,r=t*n,o=.92*t,a=.92*-e,i=o-r,s=-a,l=Math.max(1,.12*Math.min(i,s)),u="M"+r+" 0L"+o+" 0L"+o+" "+a+"L"+r+" "+a+"Z";if(i<=2*l||s<=2*l)return u;const c=r+l,f=o-l,h=-l,d=a+l;return u+"M"+c+" "+h+"L"+c+" "+d+"L"+f+" "+d+"L"+f+" "+h+"Z"}function Pr(t,e){var n,r,o,a;const{glyphs:i,create:s=dr,warnings:l}=e,u=Mr(i),c={x:null!=(n=kr(t.x))?n:0,y:null!=(r=kr(t.y))?r:0},f=[],h=[{start:c.x,end:c.x}];let d=0;const p=(t,e)=>{var n;const r=Or(e,i,u,l),o=(null==r?void 0:r.unitsPerEm)||1e3,a=e.fontSize/o,s=null!=(n=null==r?void 0:r.ascent)?n:.9*o,p=jr(e);for(let n=0;n<t.length;n++){const i=t.charAt(n),l=null==r?void 0:r.glyphs[i];if(l&&l.d)f.push({glyphD:l.d,m:[a,0,0,a,c.x,c.y],paint:p,line:d,x:c.x,y:c.y,scale:a}),c.x+=l.width*a;else if(/\S/.test(i)){const t=l&&l.width>0?l.width:.6*o;f.push({glyphD:Sr(t,s),m:[a,0,0,a,c.x,c.y],paint:p,line:d,x:c.x,y:c.y,scale:a}),c.x+=t*a}else c.x+=(l?l.width:0)*a;c.x+=e.letterSpacing+(" "===i?e.wordSpacing:0),h[d].end=c.x}},m=(t,e)=>{var n,r,o,a;const i=wr(t,e),s=kr(t.x),l=kr(t.y);void 0!==s&&(c.x=s,d=h.length,h.push({start:c.x,end:c.x})),void 0!==l&&(c.y=l),c.x+=null!=(n=kr(t.dx))?n:0,c.y+=null!=(r=kr(t.dy))?r:0;const u=null!=(o=Ar(t[F]))?o:Ar(t[D]);if(u&&!(null==(a=t.children)?void 0:a.length)&&p(u,i),t.children)for(const e of t.children)m(e,i)},y=xr(t);if(t.children)for(const e of t.children)m(e,y);const g=null!=(o=Ar(t[F]))?o:Ar(t[D]);g&&!(null==(a=t.children)?void 0:a.length)&&p(g,y);const v=Ar(t.textAnchor);if("middle"===v||"end"===v)for(const t of f){const e=h[t.line].end-h[t.line].start,n="middle"===v?-e/2:-e;t.m=[t.scale,0,0,t.scale,t.x+n,t.y]}return Ur(t,Er(f,s,l),s)}function _r(t,e){var n,i,s,l,u,c;if(null==(n=e.alongPath)?void 0:n.pathD)return function(t,e,n){var r,o;const{glyphs:a,warnings:i,alongPath:s}=n,l=ir(e);if(!l)return null==i||i.push("textGlyphs: unparsable along-path geometry (caret)"),[];const u=Mr(a),c=[];let f=0;const h=(t,e)=>{var n,r,o;const s=wr(t,e),l=null!=(n=Ar(t[F]))?n:Ar(t[D]);if(l&&!(null==(r=t.children)?void 0:r.length)){const t=Or(s,a,u,i),e=(null==t?void 0:t.unitsPerEm)||1e3,n=s.fontSize/e,r=(null!=(o=null==t?void 0:t.ascent)?o:.9*e)*n;for(let e=0;e<l.length;e++){const o=l.charAt(e),a=null==t?void 0:t.glyphs[o],i=(a?a.width:0)*n,u=i+s.letterSpacing+(" "===o?s.wordSpacing:0);c.push({advStart:f,advEnd:f+u,glyphW:i,ascent:r,fontSize:s.fontSize}),f+=u}}if(t.children)for(const e of t.children)h(e,s)};h(t,xr(t));const d=f,p=bn(null==s?void 0:s.textLength),m="animated"===p.kind?Number(null==(r=p.keyframes[0])?void 0:r.value)||0:"static"===p.kind&&Number(p.value)||0,y=m>0&&d>0?m/d:1,g=bn(null==s?void 0:s.startOffset),{along:v,perp:b}=Ir(t),k=v+("animated"===g.kind?Number(null==(o=g.keyframes[0])?void 0:o.value)||0:"static"===g.kind&&Number(g.value)||0),A=t=>({x:t.x-b*Math.sin(t.angle),y:t.y+b*Math.cos(t.angle),angle:t.angle});return c.map(t=>{const e=k+t.advStart*y,n=k+t.advEnd*y,r=A(l.sampleAtDistance(e)),o=A(l.sampleAtDistance(n)),a=l.sampleAtDistance(k+(t.advStart+t.glyphW/2)*y);return{x:r.x,y:r.y,width:t.advEnd-t.advStart,ascent:t.ascent,fontSize:t.fontSize,endX:o.x,endY:o.y,rotation:180*a.angle/Math.PI}})}(t,e.alongPath.pathD,e);const{glyphs:f,warnings:h}=e,d=Mr(f),p={x:null!=(i=kr(t.x))?i:0,y:null!=(s=kr(t.y))?s:0},m=[],y=[{start:p.x,end:p.x}];let g=0;const v=(t,e)=>{var n;const r=Or(e,f,d,h),o=(null==r?void 0:r.unitsPerEm)||1e3,a=e.fontSize/o,i=(null!=(n=null==r?void 0:r.ascent)?n:.9*o)*a;for(let n=0;n<t.length;n++){const o=t.charAt(n),s=null==r?void 0:r.glyphs[o],l=(s?s.width:0)*a+e.letterSpacing+(" "===o?e.wordSpacing:0);m.push({x:p.x,y:p.y,width:l,ascent:i,fontSize:e.fontSize,line:g}),p.x+=l,y[g].end=p.x}},b=(t,e)=>{var n,r,o,a;const i=wr(t,e),s=kr(t.x),l=kr(t.y);void 0!==s&&(p.x=s,g=y.length,y.push({start:p.x,end:p.x})),void 0!==l&&(p.y=l),p.x+=null!=(n=kr(t.dx))?n:0,p.y+=null!=(r=kr(t.dy))?r:0;const u=null!=(o=Ar(t[F]))?o:Ar(t[D]);if(u&&!(null==(a=t.children)?void 0:a.length)&&v(u,i),t.children)for(const e of t.children)b(e,i)},k=xr(t);if(t.children)for(const e of t.children){const t=m.length;if(b(e,k),m.length===t){const t=wr(e,k),n=Or(t,f,d),r=(null==n?void 0:n.unitsPerEm)||1e3;m.push({x:p.x,y:p.y,width:0,ascent:(null!=(l=null==n?void 0:n.ascent)?l:.9*r)*(t.fontSize/r),fontSize:t.fontSize,line:g})}}const A=null!=(u=Ar(t[F]))?u:Ar(t[D]);A&&!(null==(c=t.children)?void 0:c.length)&&v(A,k);const w=Ar(t.textAnchor);if("middle"===w||"end"===w)for(const t of m){const e=y[t.line].end-y[t.line].start;t.x+="middle"===w?-e/2:-e}return m.map(t=>{var e=t,{line:n}=e;return((t,e)=>{var n={};for(var i in t)o.call(t,i)&&e.indexOf(i)<0&&(n[i]=t[i]);if(null!=t&&r)for(var i of r(t))e.indexOf(i)<0&&a.call(t,i)&&(n[i]=t[i]);return n})(e,["line"])})}function zr(t,e,n,r,o=0){const{x:a,y:i,angle:s}=t.sampleAtDistance(e),l=Math.cos(s),u=Math.sin(s),c=r/2;return[n*l,n*u,-n*u,n*l,a-n*l*c-o*u,i-n*u*c+o*l]}function Ir(t){var e,n,r;return{along:(null!=(e=kr(t.x))?e:0)+(null!=(n=kr(t.dx))?n:0),perp:null!=(r=kr(t.dy))?r:0}}function Nr(t,e,n,r,o,a){const{glyphs:i,create:s=dr,warnings:c}=r,f=e?ir(e):null;if(!f)return null==c||c.push("textGlyphs: unparsable along-path geometry"),null;const h=Mr(i),{cells:d,width:p}=function(t,e,n,r){const o=[];let a=0;const i=(t,s)=>{var l,u,c;const f=wr(t,s),h=null!=(l=Ar(t[F]))?l:Ar(t[D]);if(h&&!(null==(u=t.children)?void 0:u.length)){const t=Or(f,e,n,r);if(t){const e=f.fontSize/t.unitsPerEm,n=null!=(c=t.ascent)?c:.9*t.unitsPerEm,r=jr(f);for(let i=0;i<h.length;i++){const s=h.charAt(i),l=t.glyphs[s];if(l&&l.d){const t=l.width*e;o.push({glyphD:l.d,widthEm:l.width,scale:e,paint:r,midBase:a+t/2}),a+=t}else if(/\S/.test(s)){const i=l&&l.width>0?l.width:.6*t.unitsPerEm,s=i*e;o.push({glyphD:Sr(i,n),widthEm:i,scale:e,paint:r,midBase:a+s/2}),a+=s}else a+=(l?l.width:0)*e;a+=f.letterSpacing+(" "===s?f.wordSpacing:0)}}}if(t.children)for(const e of t.children)i(e,f)};return i(t,xr(t)),{cells:o,width:a}}(t,i,h,c);if(!d.length)return Ur(t,[],s);const{along:m,perp:y}=Ir(t),g=Cr(n),v=Cr(o),b=t=>t>0&&p>0?t/p:1,k="clip"===a&&!f.closed;if(g.animated||v.animated){const e=function(t,e){const n=[...t,...e].sort((t,e)=>t-e),r=[];for(const t of n)r.length&&t===r[r.length-1]||r.push(t);return r}(g.times,v.times),n=(t,e)=>m+g.at(e)+b(v.at(e))*t.midBase,r=g.animated?g.loop:v.loop;return Ur(t,function(t,e,n,r,o,a,i,s=0){const c=Math.max(e.totalLength/Fr,.5),f=t=>t>=0&&t<=e.totalLength,h=[];for(const d of t){const t=[d.scale,0,0,d.scale,-d.scale*(d.widthEm/2),0],p=vr(d.glyphD,t),m=(t,n)=>{const{x:r,y:o,angle:a}=e.sampleAtDistance(t),i=Math.cos(a),l=Math.sin(a);return{time:n,value:{translate:[Lr(r-s*l,3),Lr(o+s*i,3)],rotate:Lr(180*a/Math.PI,3)}}},y=[],g=[],v=(t,e)=>{y.push(m(t,e)),i&&g.push({time:e,value:f(t)?1:0})};v(n(d,r[0]),r[0]);for(let t=1;t<r.length;t++){const e=r[t-1],o=r[t],a=n(d,e),i=n(d,o),s=Math.min(Dr,Math.max(1,Math.ceil(Math.abs(i-a)/c)));for(let t=1;t<=s;t++){const r=e+t/s*(o-e);v(n(d,r),r)}}Ie(y);const b={keyframes:y};void 0!==o&&(b.loop=o);const k={transform:b};if(i&&g.some(t=>0===t.value)){const t={keyframes:g};void 0!==o&&(t.loop=o),k.opacity=t}h.push(a("path",u(l({d:p},Tr(d.paint)),{animate:k}),[]))}return h}(d,f,n,e,r,s,k,y),s)}const A=b(v.at(0)),w=m+g.at(0);return Ur(t,Er((k?d.filter(t=>{const e=w+t.midBase*A;return e>=0&&e<=f.totalLength}):d).map(t=>({glyphD:t.glyphD,paint:t.paint,m:zr(f,w+t.midBase*A,t.scale,t.widthEm,y)})),s,c),s)}function Cr(t){var e;const n=bn(t);if("animated"===n.kind&&n.keyframes.length>=2){const t=[...n.keyframes].sort((t,e)=>(Number(t.time)||0)-(Number(e.time)||0)),e=t.map(t=>Number(t.time)||0),r=t.map(t=>Number(t.value)||0);return{animated:!0,times:e,loop:n.loop,at(t){if(t<=e[0])return r[0];for(let n=1;n<e.length;n++)if(t<=e[n]){const o=e[n]-e[n-1],a=o>0?(t-e[n-1])/o:1;return r[n-1]+a*(r[n]-r[n-1])}return r[r.length-1]}}}const r="animated"===n.kind?Number(null==(e=n.keyframes[0])?void 0:e.value)||0:"static"===n.kind&&Number(n.value)||0;return{animated:!1,times:[],at:()=>r}}var Fr=48,Dr=64;function Lr(t,e){const n=i(10,e);return Math.round(t*n)/n}function Tr(t){const e={};return void 0!==t.fill&&(e.fill=t.fill),void 0!==t.stroke&&(e.stroke=t.stroke),void 0!==t.strokeWidth&&(e.strokeWidth=t.strokeWidth),e}function Er(t,e,n){var r,o,a;if(!t.length)return null==n||n.push("textGlyphs: nothing to render"),[];const i=new Map;for(const e of t){const t=JSON.stringify([null!=(r=e.paint.fill)?r:null,null!=(o=e.paint.stroke)?o:null,null!=(a=e.paint.strokeWidth)?a:null]),n=vr(e.glyphD,e.m),s=i.get(t);s?s.d+=n:i.set(t,{paint:e.paint,d:n})}const s=[];for(const{paint:t,d:n}of i.values())s.push(e("path",l({d:n},Tr(t)),[]));return s}function Ur(t,e,n){const r={};for(const e of Object.keys(t))"type"!==e&&"children"!==e&&-1===br.indexOf(e)&&(r[e]=t[e]);if(r.style&&"object"==typeof r.style){const t=l({},r.style);delete t["white-space"],Object.keys(t).length?r.style=t:delete r.style}return n("g",r,e)}function Vr(t,e){return e.alongPath?Nr(t,e.alongPath.pathD,e.alongPath.startOffset,e,e.alongPath.textLength,e.alongPath.pathOverflow):Pr(t,e)}function Wr(t,e,n,r){if(!e)return t;const o=!!e.trimAllAsOne,a=[],i=t=>{if(Array.isArray(t.children)&&t.children.length>0){for(const e of t.children)i(e);return}const e="string"==typeof t.d?t.d:function(t){var e,n,r,o,a,i,s,l,u,c;if("rect"===t.type){const a=Number(null!=(e=t.x)?e:0),i=Number(null!=(n=t.y)?n:0),s=Number(null!=(r=t.width)?r:0),l=Number(null!=(o=t.height)?o:0);return"M"+(a+s)+","+i+"L"+(a+s)+","+(i+l)+"L"+a+","+(i+l)+"L"+a+","+i+"L"+(a+s)+","+i+"z"}if("ellipse"===t.type||"circle"===t.type){const e=Number(null!=(a=t.cx)?a:0),n=Number(null!=(i=t.cy)?i:0),r="circle"===t.type?Number(null!=(s=t.r)?s:0):Number(null!=(l=t.rx)?l:0),o="circle"===t.type?Number(null!=(u=t.r)?u:0):Number(null!=(c=t.ry)?c:0);if(!(r>0&&o>0))return;const f=r*no,h=o*no,d=(t,e,n,r,o,a)=>"C"+t+","+e+" "+n+","+r+" "+o+","+a;return"M"+(e+r)+","+n+d(e+r,n+h,e+f,n+o,e,n+o)+d(e-f,n+o,e-r,n+h,e-r,n)+d(e-r,n-h,e-f,n-o,e,n-o)+d(e+f,n-o,e+r,n-h,e+r,n)+"z"}return}(t);if(void 0===e)return;const n=Ze(e);if(!n.length)return;const r={leaf:t,subpaths:[]};for(const t of n){const e=to(t);r.subpaths.push({subpath:t,lengthPx:e,startOffsetPx:0})}a.push(r)};if(i(t),!a.length)return t;let s=0;const c=o?[...a].reverse():a;for(const t of c)for(const e of t.subpaths)o||(s=0),e.startOffsetPx=s,s+=e.lengthPx;const f=s;if(o&&f<.001)return t;const h=bn(e.offset),d="absent"===h.kind?{kind:"static",value:0}:h,p=function(t){const e=bn(t);if("animated"!==e.kind)return e;const n=e.keyframes.map(t=>{var e,n,r,o;return{time:null!=(n=null!=(e=t.time)?e:t.t)?n:0,value:null!=(r=t.value)?r:t.v,easing:null!=(o=t.easing)?o:t.e}});if(!n.some(t=>t.value[0]>t.value[1]))return{kind:"animated",keyframes:n.map(t=>({time:t.time,value:t.value,easing:t.easing}))};const r=[];for(let t=1;t<n.length;t++){const e=n[t-1],o=n[t];if((e.value[1]-e.value[0])*(o.value[1]-o.value[0])<0){const t=Hr(e,o);null!==t&&t>e.time&&t<o.time&&r.push(Math.round(t))}}const o=Array.from(new Set(r)).sort((t,e)=>t-e),a=[];let i=0;for(const t of n){for(;i<o.length&&o[i]<t.time;){const t=o[i++],e=$r(n,t),r=(e[0]+e[1])/2;a.push({time:t,value:[r,r]})}const e=t.value[0]>t.value[1]?[t.value[1],t.value[0]]:t.value;a.push({time:t.time,value:e,easing:t.easing})}for(;i<o.length;){const t=o[i++],e=$r(n,t),r=(e[0]+e[1])/2;a.push({time:t,value:[r,r]})}return{kind:"animated",keyframes:a}}(e.range),m="absent"===p.kind?{kind:"static",value:[0,1]}:p,y=function(t){var e;if("absent"===t.kind)return[];if("static"===t.kind)return[t.value];const n=[];for(const r of t.keyframes){const t=null!=(e=r.value)?e:r.v;"number"==typeof t&&n.push(t)}return n}(d),g=[y.length?Math.min(...y):0,y.length?Math.max(...y):0];if(1===a.length&&a[0].leaf===t&&1===a[0].subpaths.length){const e=a[0],n=e.subpaths[0],r=o?f:n.lengthPx;if(r<.001)return t;const i=o?n.startOffsetPx/r:0;return function(t,e,n,r,o,a){const i=Zr(n,e,r),s=Kr(e,r),u=l({},t);return delete u.effects,Yr(u,"strokeDasharray",qr(a,s)),Yr(u,"strokeDashoffset",qr(o,i)),Yr(u,"strokeOpacity",Jr(a)),u}(e.leaf,r,i,g,d,m)}const v=new Map;for(const t of a){const e=[];for(const n of t.subpaths){const a=o?f:n.lengthPx;if(a<.001)continue;const i=o?n.startOffsetPx/a:0;e.push(...Rr(t.leaf,n.subpath,a,i,g,d,m,r))}v.set(t.leaf,Br(t.leaf,e))}const b=t=>{const e=v.get(t);return e||(Array.isArray(t.children)&&t.children.length>0?u(l({},t),{children:t.children.map(b)}):t)};return b(t)}function Br(t,e){const n=u(l({},t),{type:"g",children:e});return delete n.d,delete n.strokeDasharray,delete n.strokeDashoffset,delete n.effects,n}function Rr(t,e,n,r,o,a,i,s){const l=Zr(r,n,o),u=Kr(n,o),c=qr(a,l),f=qr(i,u),h=Jr(i),d=function(t){return{type:"path",d:t}}(zt(e));return Yr(d,"strokeDasharray",f),Yr(d,"strokeDashoffset",c),Yr(d,"strokeOpacity",h),[d]}var Gr=1;function Zr(t,e,n){const[r]=Xr(n);return n=>e*(-n-r+t)+Gr}function Kr(t,e){const[n,r]=Xr(e),o=r-n+1;return e=>{const n=te(e[0],0,1),r=te(e[1],0,1),a=Math.min(n,r),i=Math.max(n,r),s=[0];let l=Gr;for(let e=0;e<o;e++)s.push(l+a*t),s.push((i-a)*t),l=(1-i)*t;return s.push(l+Gr),s}}function Xr(t){return[Math.floor(Math.min(-t[0],-t[1])),Math.ceil(Math.max(-t[0],-t[1]))]}function qr(t,e){if("absent"!==t.kind)return"static"===t.kind?{kind:"static",value:e(t.value)}:{kind:"animated",keyframes:t.keyframes.map(t=>{var n,r,o,a;return{time:null!=(r=null!=(n=t.time)?n:t.t)?r:0,value:e(null!=(o=t.value)?o:t.v),easing:null!=(a=t.easing)?a:t.e}}),loop:t.loop}}function Yr(t,e,n){var r,o;if(!n)return;if("static"===n.kind)return void(t[e]=n.value);const a=t.animate&&"object"==typeof t.animate&&!Array.isArray(t.animate)?t.animate:void 0,i=l({},a||{}),s={keyframes:n.keyframes};void 0!==n.loop&&(s.loop=n.loop),i[e]=s,t.animate=i;const u=n.keyframes[0];u&&void 0!==(null!=(r=u.value)?r:u.v)&&(t[e]=null!=(o=u.value)?o:u.v)}var Qr=10;function Jr(t){var e,n,r,o,a,i;const s=t=>t[0]===t[1];if("absent"===t.kind)return;if("static"===t.kind)return s(t.value)?{kind:"static",value:0}:void 0;const l=t.keyframes;let u=!1,c=!0;for(const t of l)s(null!=(e=t.value)?e:t.v)?u=!0:c=!1;if(!u)return;if(c)return{kind:"static",value:0};const f=[];for(let t=0;t<l.length;t++){const e=l[t],u=t>0?l[t-1]:void 0,c=t<l.length-1?l[t+1]:void 0,h=null!=(r=null!=(n=e.time)?n:e.t)?r:0,d=s(null!=(o=e.value)?o:e.v),p=u?d&&s(null!=(a=u.value)?a:u.v):d,m=c?d&&s(null!=(i=c.value)?i:c.v):d;p&&!m?(f.push({time:h,value:0}),f.push({time:h+Qr,value:1})):!p&&m&&(f.push({time:h-Qr,value:1}),f.push({time:h,value:0}))}return f.length<=1?void 0:{kind:"animated",keyframes:f}}function Hr(t,e){const n=n=>{const r=(n-t.time)/(e.time-t.time),o=t.value[0]+(e.value[0]-t.value[0])*r;return t.value[1]+(e.value[1]-t.value[1])*r-o};let r=t.time,o=e.time,a=n(r);if(0===a)return r;const i=n(o);if(0===i)return o;if(a*i>0)return null;for(let t=0;t<100;t++){const t=(r+o)/2,e=n(t);if(0===e||Math.abs(o-r)<1e-4)return t;a*e<0?o=t:(r=t,a=e)}return(r+o)/2}function $r(t,e){if(e<=t[0].time)return t[0].value;if(e>=t[t.length-1].time)return t[t.length-1].value;for(let n=1;n<t.length;n++)if(e<=t[n].time){const r=t[n-1],o=t[n],a=(e-r.time)/(o.time-r.time);return[r.value[0]+(o.value[0]-r.value[0])*a,r.value[1]+(o.value[1]-r.value[1])*a]}return t[t.length-1].value}function to(t){const e=t.v;if(!e||e.length<2)return 0;let n=0;for(let r=0;r<e.length-1;r++)n+=eo(t,r,r+1);return t.c&&e.length>1&&(n+=eo(t,e.length-1,0)),n}function eo(t,e,n){var r,o,a,i;const s=t.v,l=s[e],u=s[n],c=ae(l,null!=(o=null==(r=t.o)?void 0:r[e])?o:l,null!=(i=null==(a=t.i)?void 0:a[n])?i:u,u);return c.ds[c.ds.length-1]}var no=.5522847498307936;function ro(t){var e,n;const r={defs:[],warnings:[],errors:[],idMap:new Map,nextId:0,contentRefInnerIds:new Map,maskAncestorChains:new Map,engine:(null==(e=Mt(t))?void 0:e.mode)===N.frames?C.frames:C.webapi,glyphs:null==(n=St(t))?void 0:n.glyphs},o=In(t);zn(o,r.idMap),jn(o,r,()=>Pn(r,"inner")),function(t,e){const n=new Set,r=t=>{var o,a;const i=null==(a=null==(o=t.effects)?void 0:o.maskedBy)?void 0:a.href;if("string"==typeof i){n.add(t);const r=e.idMap.get(i);r&&n.add(r)}if(Array.isArray(t.children))for(const e of t.children)r(e)};if(r(t),0===n.size)return;const o=(t,r)=>{if(n.has(t)&&e.maskAncestorChains.set(t,r),Array.isArray(t.children)){const n=Kn(t,e),a=n?[...r,n]:r;for(const e of t.children)o(e,a)}};o(t,[])}(o,r);const a=function(t,e){return function(t,e){e.idMap.clear(),zn(t,e.idMap);const n=[],r=t=>{var e;Hn(t)&&n.push(t),null==(e=t.children)||e.forEach(r)};r(t);const o=new Map;for(const t of n){let n=0;const r=new Set,a=o=>{var i;if(o){if(o!==t&&Hn(o)&&n++,"use"===o.type&&o.href){const t=_n(o.href);t&&!r.has(t)&&(r.add(t),a(e.idMap.get(t)))}null==(i=o.children)||i.forEach(a)}},i=_n(t.href);i&&(r.add(i),a(e.idMap.get(i))),o.set(t,n)}n.sort((t,e)=>{var n,r;return(null!=(n=o.get(e))?n:0)-(null!=(r=o.get(t))?r:0)});for(const t of n){const n=Hn(t);n&&($n(t),tr(t,Qn(n),e))}}(t,e),t}(oo(o,r),r);return function(t,e){if(!e.length)return;(t.children||(t.children=[])).unshift({type:"defs",children:e})}(a,r.defs),{root:a,defs:r.defs,warnings:r.warnings,errors:r.errors}}function oo(t,e){t.children&&(t.children=t.children.map(t=>oo(t,e)));const n=t.effects,r="string"==typeof t.id?t.id:void 0,o=r?e.contentRefInnerIds.get(r):void 0;if(!n&&!o)return t;const{transformation:a,repeater:i,maskedBy:s,clipPath:l,trimPath:u,clone:c,fillGradient:f,strokeGradient:h,textPath:d,text:p}=null!=n?n:{};null==n||n.isCombinedShape;n&&delete t.effects;let m=t,y=!1;if(null==p?void 0:p.useGlyphs)if(d){const t="string"==typeof d.path?d.path:void 0,n=function(t,e,n,r,o,a){return e.glyphs?Nr(t,n,r,{glyphs:e.glyphs,warnings:e.warnings},o,a):(e.warnings.push("textGlyphs: no definitions.glyphs"),null)}(m,e,t,d.startOffset,d.textLength,d.pathOverflow);n&&(m=n,y=!0)}else m=function(t,e,n){return(null==e?void 0:e.useGlyphs)?n.glyphs?Pr(t,{glyphs:n.glyphs,warnings:n.warnings}):(n.warnings.push("textGlyphs: no definitions.glyphs — left as native <text>"),t):t}(m,p,e),y=!0;return y||(m=function(t,e,n){var r;if(!e||"string"!=typeof e.path||!e.path)return t;const o=Pn(n,"tpath"),{d:a,startShift:i}=fr(e.path,{pathOverflow:e.pathOverflow,startOffset:e.startOffset,textLength:e.textLength,advance:lr(t)});n.defs.push({type:"path",id:o,d:a});const s={type:"textPath",href:"#"+o,children:null!=(r=t.children)?r:[]};return void 0!==e.lengthAdjust&&(s.lengthAdjust=e.lengthAdjust),void 0!==e.method&&(s.method=e.method),void 0!==e.spacing&&(s.spacing=e.spacing),hr(s,"startOffset",cr(e.startOffset,i)),hr(s,"textLength",e.textLength),t.children=[s],t}(m,d,e)),m=function(t,e,n){return Nn(t,e,n,"fill")}(m,f,e),m=function(t,e,n){return Nn(t,e,n,"stroke")}(m,h,e),m=Wr(m,u,0,e),m=function(t,e,n){var r,o;if(!e)return t;const a=null!=(r=e.copies)?r:1;if(a<1)return n.errors.push("repeater.copies invalid: "+e.copies),t;const i=t.transform,s=null==(o=t.animate)?void 0:o.transform,l=In(t);delete l.transform,l.animate&&(delete l.animate.transform,0===Object.keys(l.animate).length&&delete l.animate),delete l.id;const u=[l];for(let t=1;t<a;t++){const r=In(l),o=Yn(e,t),a=o?An(r,o,n):r;u.push(a)}const c={type:"g",children:u};return t.id&&(c.id=t.id),void 0!==i&&(c.transform=i),void 0!==s&&(c.animate={transform:s}),c}(m,i,e),m=Tn(m,s,a,e),m=function(t,e,n){if(!e||!e.d&&!e.animate)return t;const r=Pn(n,"clip"),o={type:"path",d:e.d};return e.animate&&(o.animate={d:e.animate}),n.defs.push({type:"clipPath",id:r,children:[o]}),t.clipPath="url(#"+r+")",t}(m,l,e),o?(qn(m,c,e),m=On(m,a,r,o,e)):m=function(t,e,n,r){return qn(t,e,r),An(t,n,r)}(m,c,a,e),(null==c?void 0:c.retime)&&(t.effects={clone:{retime:c.retime}}),r&&e.idMap.set(r,m),m}function ao(t,e,n){var r,o;let a=ro(t).root;return a=en(a,null!=(o=null==(r=Mt(a))?void 0:r.duration)?o:Yt),e===C.webapi&&(a=Re(a,null==n?void 0:n.motionPath),a=hn(a),a=function(t){const e=t=>t.startsWith("#")?t.slice(1):t,n=(t,e)=>{var r;e(t),null==(r=t.children)||r.forEach(t=>n(t,e))};let r=!0;for(;r;){r=!1;const o=new Set;n(t,t=>{"use"===t.type&&"string"==typeof t.href&&o.add(e(t.href))}),n(t,t=>{if(!t.children)return;let e=t.children;"defs"===t.type&&(e=e.filter(t=>!(("g"===t.type||"symbol"===t.type)&&"string"==typeof t.id&&!o.has(t.id)))),e=e.filter(t=>!("defs"===t.type&&(!t.children||0===t.children.length))),e.length!==t.children.length&&(t.children=e,r=!0)})}return t}(a)),a}function io(t){const e=globalThis;"function"!=typeof e.cancelAnimationFrame?e.clearTimeout(t):e.cancelAnimationFrame(t)}function so(t,e,n){var r;const o=Mt(t)||{},a=on(t,C.frames),i=o.iterations;let s=1;"number"==typeof i&&(s=i||1),"infinite"===i&&(s=1/0),s<1&&(s=1);const l=+(o.duration||Yt),u=l&&s?l*(s===1/0?1/0:s):l?(null!=s?s:1)*l:0,c=o.direction||"normal",f=null!=(r=o.fill)?r:"forwards",h="forwards"===f||"both"===f,d="backwards"===f||"both"===f;let p=null,m=!1,y=-(o.delay||0),g=0,v=1,b=!1;const k=o.frameRate,A=k&&k>0?1e3/k:0;let w=0;const x=()=>{const t=g?(Date.now()-g)*v:0;return y+t},j=()=>{let t=x();return Number.isFinite(u)&&t>u&&(t=u),t<0&&(t=0),t};function O(t){let n=function(){const e=l>0?l:1;let n=0,r=0;if(l>0){t=te(t,0,s*e),r=Math.max(0,Math.ceil(t/e)-1),r=Math.min(r,s-1);n=te((t-r*e)/e,0,1)}else n=t;const o=c||"normal";let a=n;return"reverse"===o?a=1-n:"alternate"===o?r%2==1&&(a=1-n):"alternate-reverse"===o&&r%2==0&&(a=1-n),a}();for(const t of a||[]){const r=t.animate;if(!r||"object"!=typeof r||Array.isArray(r)){console.warn("Empty or unresolved binding",t);continue}const o=sn(r,n*l);for(const[n,r]of Object.entries(o))e.setAttribute(t.id,n,r)}}o.delay&&(o.delay<0?O(j()):d&&O(0));const M=()=>!!m&&(!!e.isConnected()&&(v<0?x()>0:!(Number.isFinite(u)&&j()>=u))),S=t=>{null!==p&&(io(p),p=null),(t||M())&&(p=function(t){const e=globalThis;return"function"==typeof e.requestAnimationFrame?e.requestAnimationFrame(t):e.setTimeout(t,16)}(()=>{p=null,(()=>{var t,r;if(!e.isConnected())return void P();const o=j(),a=x();if(a<0&&v>0)d&&O(0);else{if(v<0&&a<=0)return P(),O(0),void(b||(b=!0,null==(t=null==n?void 0:n.onFinish)||t.call(n)));if(v>0&&u&&Number.isFinite(u)&&o>=u)return P(),O(h?u:0),void(b||(b=!0,null==(r=null==n?void 0:n.onFinish)||r.call(n)));if(A>0){const t=Date.now();if(w&&t-w<A)return;w=t}O(o)}})(),S()}))},P=()=>{if(!m)return;let t=x();Number.isFinite(u)&&t>u&&(t=u),y=t,g=0,m=!1,null!==p&&(io(p),p=null),t>=0?O(t):d&&O(0)},_={isReady:()=>!0,getRootElement:()=>null,isPlaying:()=>M(),play:()=>{var t;(()=>{if(!m){if(v>=0)Number.isFinite(u)&&y>=u&&(y=0);else if(y<=0){if(!Number.isFinite(u))return void console.warn("play: cannot start reverse playback of an infinite animation from time 0");y=u}b=!1,m=!0,g=Date.now(),S(!0)}})(),null==(t=null==n?void 0:n.onPlay)||t.call(n)},pause:()=>{var t;P(),null==(t=null==n?void 0:n.onPause)||t.call(n)},cancel:()=>{var t;P(),y=0,g=0,m=!1,b=!1,O(y),null==(t=null==n?void 0:n.onCancel)||t.call(n)},finish:()=>{((t=!0)=>{var e;y=Number.isFinite(u)?u:j(),g=0,m=!1,null!==p&&(io(p),p=null),O(h?y:0),t&&!b&&(b=!0,null==(e=null==n?void 0:n.onFinish)||e.call(n))})(!0)},setPlaybackRate:t=>{if(!isFinite(t)||0===t)return void console.warn("setPlaybackRate: rate must be finite and non-zero");let e=x();Number.isFinite(u)&&e>u&&(e=u),t<0!=v<0&&(b=!1),v=t,y=e,m&&(g=Date.now())},getCurrentTime:()=>j(),setCurrentTime:t=>{t<0&&(t=0),Number.isFinite(u)&&t>u&&(t=u),y=t,m&&(g=Date.now()),(!Number.isFinite(u)||t<u)&&(b=!1),O(j())},destroy:()=>{var t;_.cancel(),null==(t=null==n?void 0:n.onRemove)||t.call(n)}};return _}var lo=[1,0,0,1,0,0];function uo(t,e){return[t[0]*e[0]+t[2]*e[1],t[1]*e[0]+t[3]*e[1],t[0]*e[2]+t[2]*e[3],t[1]*e[2]+t[3]*e[3],t[0]*e[4]+t[2]*e[5]+t[4],t[1]*e[4]+t[3]*e[5]+t[5]]}var co=(t,e)=>[1,0,0,1,t,e],fo=(t,e)=>[t,0,0,e,0,0];function ho(t){const e=t*Math.PI/180;return[Math.cos(e),Math.sin(e),-Math.sin(e),Math.cos(e),0,0]}var po=t=>[1,0,Math.tan(t*Math.PI/180),1,0,0],mo=t=>[1,Math.tan(t*Math.PI/180),0,1,0,0];function yo(t){let e=lo;t.translate&&(e=uo(e,co(t.translate[0],t.translate[1])));const n=t.origin&&(void 0!==t.rotate||t.scale);return n&&(e=uo(e,co(t.origin[0],t.origin[1]))),void 0!==t.rotate&&(e=uo(e,ho(t.rotate))),t.scale&&(e=uo(e,fo(t.scale[0],t.scale[1]))),n&&(e=uo(e,co(-t.origin[0],-t.origin[1]))),e}function go(t,e,n){return t+(e-t)*n}function vo(t,e){return null==t?lo:"string"==typeof t?function(t){let e=lo;const n=/(translate|rotate|scale|matrix|skewX|skewY)\(([^)]*)\)/g;let r;for(;r=n.exec(t);){const t=r[1],n=r[2].split(/[\s,]+/).filter(Boolean).map(Number);"translate"===t?e=uo(e,co(n[0]||0,n[1]||0)):"scale"===t?e=uo(e,fo(n[0],n.length>1?n[1]:n[0])):"rotate"===t?e=uo(e,ho(n[0])):"skewX"===t?e=uo(e,po(n[0])):"skewY"===t?e=uo(e,mo(n[0])):"matrix"===t&&(e=uo(e,[n[0],n[1],n[2],n[3],n[4],n[5]]))}return e}(t):t.keyframes?yo(function(t,e){var n,r,o,a,i,s,l;if(!t.length)return{};if(e<=(null!=(n=t[0].time)?n:0))return t[0].value||{};if(e>=(null!=(r=t[t.length-1].time)?r:0))return t[t.length-1].value||{};let u=0;for(;u<t.length-1&&(null!=(o=t[u+1].time)?o:0)<e;)u++;const c=t[u],f=t[u+1],h=(e-(null!=(a=c.time)?a:0))/((null!=(i=f.time)?i:0)-(null!=(s=c.time)?s:0)||1),d=c.value||{},p=f.value||{},m={};return d.translate&&p.translate?m.translate=[go(d.translate[0],p.translate[0],h),go(d.translate[1],p.translate[1],h)]:m.translate=d.translate||p.translate,void 0!==d.rotate&&void 0!==p.rotate?m.rotate=go(d.rotate,p.rotate,h):m.rotate=null!=(l=d.rotate)?l:p.rotate,d.scale&&p.scale?m.scale=[go(d.scale[0],p.scale[0],h),go(d.scale[1],p.scale[1],h)]:m.scale=d.scale||p.scale,m.origin=d.origin||p.origin,m}(t.keyframes,e)):t.value?yo(t.value):lo}var bo=new Set(["svg","g","symbol"]),ko=new Set(["defs","mask","clipPath","title"]);function Ao(t,e){var n;"string"==typeof t.id&&e.set(t.id,t),null==(n=t.children)||n.forEach(t=>Ao(t,e))}function wo(t){return null==t?0:Number(t)}function xo(t){return Math.round(100*t)/100+0}function jo(t,e,n){var r,o,a,i,s;const l=null!=(r=t.fill)?r:"",u=null!=(o=t.stroke)?o:"",c=null!=(i=null!=(a=t["stroke-width"])?a:t.strokeWidth)?i:"",f=xo(function(t,e,n,r){var o,a,i,s,l,u;if(t&&t.keyframes&&t.keyframes.length){const e=t.keyframes;if(r<=(null!=(o=e[0].time)?o:0))return e[0].value;if(r>=(null!=(a=e[e.length-1].time)?a:0))return e[e.length-1].value;let n=0;for(;n<e.length-1&&(null!=(i=e[n+1].time)?i:0)<r;)n++;const c=e[n],f=e[n+1],h=(r-(null!=(s=c.time)?s:0))/((null!=(l=f.time)?l:0)-(null!=(u=c.time)?u:0)||1);return go(c.value,f.value,h)}return void 0!==e?Number(e):n}(null==(s=t.animate)?void 0:s.opacity,t.opacity,1,n)),h=t.mask?1:0,d=e.map(xo).join(",");return t.type+"|"+function(t){var e;switch(t.type){case"rect":return wo(t.width)+","+wo(t.height)+","+wo(t.x)+","+wo(t.y);case"ellipse":return wo(t.rx)+","+wo(t.ry)+","+wo(t.cx)+","+wo(t.cy);case"circle":return wo(t.r)+","+wo(t.cx)+","+wo(t.cy);case"path":return String(null!=(e=t.d)?e:"");default:return""}}(t)+"|["+d+"]|f:"+l+"|s:"+u+"|sw:"+(wo(c)||"")+"|o:"+f+"|m:"+h}function Oo(t,e,n,r,o){var a;const i=t.type||"";if(ko.has(i))return;const s=uo(e,function(t,e){return t.animate&&t.animate.transform?vo(t.animate.transform,e):void 0!==t.transform?vo(t.transform,e):lo}(t,n));if("use"===i){const e="string"==typeof t.href?t.href.replace(/^#/,""):"",a=r.get(e),i=uo(s,co(wo(t.x),wo(t.y)));return void(a?Oo(a,i,n,r,o):o.push("UNRESOLVED_USE:#"+e))}bo.has(i)?null==(a=t.children)||a.forEach(t=>Oo(t,s,n,r,o)):o.push(jo(t,s,n))}function Mo(t,e){var n;e.add(0);(t=>{var n;if(t&&"object"==typeof t)for(const r of Object.keys(t)){const o=null==(n=t[r])?void 0:n.keyframes;Array.isArray(o)&&o.forEach(t=>{var n;return e.add(null!=(n=t.time)?n:0)})}})(t.animate),t.transform&&"object"==typeof t.transform&&t.transform.keyframes&&t.transform.keyframes.forEach(t=>{var n;return e.add(null!=(n=t.time)?n:0)}),null==(n=t.children)||n.forEach(t=>Mo(t,e))}function So(t,e){const n=new Map;Ao(t,n);const r=[];return Oo(t,lo,e,n,r),r.sort()}function Po(t,e){const n=new Set;Mo(t,n),Mo(e,n);const r=[];for(const o of Array.from(n).sort((t,e)=>t-e)){const n=So(t,o),a=So(e,o),i=_o(n,a),s=_o(a,n);(i.length||s.length)&&r.push({time:o,onlyInA:i,onlyInB:s})}return r}function _o(t,e){const n=new Map;for(const t of e)n.set(t,(n.get(t)||0)+1);const r=[];for(const e of t){const t=n.get(e)||0;t>0?n.set(e,t-1):r.push(e)}return r}export{Gt as COLOUR_ATTR_NAMES,me as CSS_ONLY_STYLE_PROPS,Yt as DEFAULT_DURATION_MS,he as DISALLOWED_SVG_TAGS_LOWER,L as INTERNAL_ATTRS,I as PX_ANIM_ATTR_NAME,z as PX_ANIM_SRC_ATTR_NAME,W as PX_TRANSFORM_PART_KEYS,wt as PxAnimatedSvgDocumentSchema,G as PxAnimationDefinitionSchema,Q as PxAnimatorConfigSchema,C as PxAnimatorEngine,N as PxAnimatorMode,H as PxAttrValueSchema,xt as PxBezierPathSchema,J as PxBindingSchema,st as PxCloneEffectSchema,Y as PxDefsSchema,T as PxEasingOrRefSchema,gt as PxEffectsSchema,Z as PxElementAnimationSchema,dt as PxFillGradientEffectSchema,ut as PxGradientSpreadMethod,ft as PxGradientStopSchema,ct as PxGradientType,lt as PxGradientUnits,E as PxKeyframeSchema,U as PxLoopSchema,rt as PxMaskedByEffectSchema,bt as PxNodeBase,kt as PxNodeSchema,V as PxPropertyAnimationSchema,nt as PxRepeaterEffectSchema,it as PxRetimeEffectSchema,pt as PxStrokeGradientEffectSchema,At as PxSvgNodeExtra,yt as PxTextEffectSchema,mt as PxTextPathEffectSchema,B as PxTransformPartsSchema,R as PxTransformValueSchema,et as PxTransformationEffectSchema,K as PxTriggerSchema,at as PxTrimPathEffectSchema,qt as STYLE_ATTR_NAMES,F as TEXT_ATTR,D as TEXT_CONTENT_ATTR,Zt as TRANSFORM_FN_NAMES,ro as applyPlayerEffects,zt as bezierToSvgPath,sn as calcAnimationValues,$t as camelCaseToKebabWordIfNeeded,te as clamp,Mo as collectSampleTimes,Xt as composeTransformParts,so as createBasicFrameLoopAnimator,ir as createPathSampler,Tt as cubicBezier,ue as deepClone,P as describeSchema,Po as diffInEffect,_e as evaluateMotionPathSegment,fr as extendedPathForBrowser,ce as generateNewIds,le as generateUniqueId,Mt as getAnimatorConfig,Pt as getBindings,_t as getChildren,St as getDefs,on as getNormalisedBindings,we as getNormalizedProps,Ft as interpolateBeziers,Je as interpolateValue,jt as isPxElementFileFormat,Ot as isPxElementFileFormatDeep,dr as jsonElementFactory,Qt as kebabToCamelCaseWord,_r as layoutGlyphTextChars,ao as materialiseAllInTree,hn as materialiseAnimatedUseInstances,Vr as materialiseGlyphText,Nr as materialiseGlyphTextAlongPath,Pr as materialiseGlyphTextHorizontal,tn as materialiseInternalLoopsInPropAnim,en as materialiseInternalLoopsInTree,ze as materialiseMotionPathInPropAnim,Re as materialiseMotionPathsInTree,Me as propAnimIsMotionPath,_ as px,Ae as resolveStyle,Wt as reverseEasing,ke as sanitiseAttributeValue,S as schemaKeys,cr as shiftAnimatable,Vt as splitEasing,Ut as subdivideCubicBezier,Bt as toRGBA,vt as validateNodeEffects,So as visualModelAt};
|
|
1
|
+
var t=Object.defineProperty,e=Object.defineProperties,n=Object.getOwnPropertyDescriptors,r=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,i=Object.prototype.propertyIsEnumerable,a=Math.pow,s=(e,n,r)=>n in e?t(e,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[n]=r,l=(t,e)=>{for(var n in e||(e={}))o.call(e,n)&&s(t,n,e[n]);if(r)for(var n of r(e))i.call(e,n)&&s(t,n,e[n]);return t},u=(t,r)=>e(t,n(r));function c(t){if(!t.length)return".";let e="";for(const n of t)n.startsWith("[")?e+=n:e+=(e?".":"")+n;return e}var f=class{_canSanitize(t){return this.isValid(t)}optional(){return new d(this)}},d=class extends f{constructor(t){super(),this.inner=t,this._default=void 0}sanitize(t){if(null!=t)return this.inner._canSanitize(t)?this.inner.sanitize(t):void 0}isValid(t,e,n){return null==t||this.inner.isValid(t,e,n)}_canSanitize(t){return null==t||this.inner._canSanitize(t)}},h=class extends f{constructor(t=""){super(),this._default=t}sanitize(t){return"string"==typeof t?t:this._default}isValid(t,e,n){return"string"==typeof t||(null==e||e.errors.push(c(null!=n?n:[])+": expected string, got "+typeof t),!1)}},p=class extends f{constructor(t=0){super(),this._default=t}sanitize(t){return"number"==typeof t&&isFinite(t)?t:this._default}isValid(t,e,n){return!("number"!=typeof t||!isFinite(t))||(null==e||e.errors.push(c(null!=n?n:[])+": expected finite number, got "+JSON.stringify(t)),!1)}},m=class extends f{constructor(t=!1){super(),this._default=t}sanitize(t){return"boolean"==typeof t?t:this._default}isValid(t,e,n){return"boolean"==typeof t||(null==e||e.errors.push(c(null!=n?n:[])+": expected boolean, got "+typeof t),!1)}},v=class extends f{constructor(t){super(),this.value=t,this._default=t}sanitize(t){return t===this.value?this.value:this._default}isValid(t,e,n){return t===this.value||(null==e||e.errors.push(c(null!=n?n:[])+": expected "+JSON.stringify(this.value)+", got "+JSON.stringify(t)),!1)}},g=class extends f{constructor(t,e){super(),this.values=t,this._default=null!=e?e:t[0]}sanitize(t){return this.values.includes(t)?t:this._default}isValid(t,e,n){return!!this.values.includes(t)||(null==e||e.errors.push(c(null!=n?n:[])+": expected one of "+this.values.map(t=>JSON.stringify(t)).join(" | ")+", got "+JSON.stringify(t)),!1)}},y=class extends f{constructor(t,e){super(),this.schemas=t,this._default=null!=e?e:t[0]._default}sanitize(t){for(const e of this.schemas)if(e.isValid(t))return e.sanitize(t);return this._default}isValid(t,e,n){var r;const o=e&&{errors:[],warnings:[],strict:e.strict};return!!this.schemas.some(e=>e.isValid(t,o,n?[...n]:void 0))||(null==e||e.errors.push(c(null!=n?n:[])+": no union member matched for value "+(null!=(r=JSON.stringify(t))?r:"").slice(0,240)),!1)}_canSanitize(t){return this.schemas.some(e=>e._canSanitize(t))}},b=class extends f{constructor(t,e,n){super(),this._key=t,this._schemas=e,this._default=null!=n?n:e[0]._default,this._map=new Map;for(const n of e){const e=n._shape[t];e&&this._map.set(e._default,n)}}_findSchema(t){if(null===t||"object"!=typeof t||Array.isArray(t))return;const e=t[this._key];return null!=e?this._map.get(e):void 0}sanitize(t){var e;return(null!=(e=this._findSchema(t))?e:this._schemas[0]).sanitize(t)}isValid(t,e,n){const r=this._findSchema(t);if(!r){const r=null===t||"object"!=typeof t||Array.isArray(t)?void 0:t[this._key];return null==e||e.errors.push(c(null!=n?n:[])+": no discriminated union member matched "+this._key+"="+JSON.stringify(r)),!1}return r.isValid(t,e,n)}_canSanitize(t){if(null===t||"object"!=typeof t||Array.isArray(t))return!1;const e=this._findSchema(t);return e?e._canSanitize(t):this._schemas[0]._canSanitize(t)}},k=class extends f{constructor(t){super(),this._shape=t;const e={};for(const n of Object.keys(t))e[n]=t[n]._default;this._default=e}sanitize(t){const e=t&&"object"==typeof t&&!Array.isArray(t)?t:{},n={};for(const t of Object.keys(this._shape))n[t]=this._shape[t].sanitize(e[t]);return n}isValid(t,e,n){if(!t||"object"!=typeof t||Array.isArray(t))return null==e||e.errors.push(c(null!=n?n:[])+": expected object, got "+(Array.isArray(t)?"array":typeof t)),!1;const r=t,o=null!=n?n:[];let i=!0;for(const t of Object.keys(this._shape))o.push(t),this._shape[t].isValid(r[t],e,o)||(i=!1),o.pop();if(null==e?void 0:e.strict)for(const t of Object.keys(r))t in this._shape||void 0!==r[t]&&(o.push(t),e.errors.push(c(o)+": unexpected extra key"),o.pop(),i=!1);return i}_canSanitize(t){return!!t&&"object"==typeof t&&!Array.isArray(t)}},A=class extends f{constructor(t,e){super(),this._shape=t,this._openSchema=e;const n={};for(const e of Object.keys(t))n[e]=t[e]._default;this._default=n}sanitize(t){const e=t&&"object"==typeof t&&!Array.isArray(t)?t:{},n=l({},e);for(const t of Object.keys(this._shape))n[t]=this._shape[t].sanitize(e[t]);if(this._openSchema)for(const t of Object.keys(e))t in this._shape||(n[t]=this._openSchema.sanitize(e[t]));return n}isValid(t,e,n){if(!t||"object"!=typeof t||Array.isArray(t))return null==e||e.errors.push(c(null!=n?n:[])+": expected object, got "+(Array.isArray(t)?"array":typeof t)),!1;const r=t,o=null!=n?n:[];let i=!0;for(const t of Object.keys(this._shape))o.push(t),this._shape[t].isValid(r[t],e,o)||(i=!1),o.pop();if(this._openSchema)for(const t of Object.keys(r))t in this._shape||(o.push(t),this._openSchema.isValid(r[t],e,o)||(i=!1),o.pop());return i}_canSanitize(t){return!!t&&"object"==typeof t&&!Array.isArray(t)}},w=class extends f{constructor(t){super(),this.item=t,this._default=[]}sanitize(t){if(!Array.isArray(t))return[];const e=[];for(const n of t)this.item._canSanitize(n)&&e.push(this.item.sanitize(n));return e}isValid(t,e,n){if(!Array.isArray(t))return null==e||e.errors.push(c(null!=n?n:[])+": expected array, got "+typeof t),!1;const r=null!=n?n:[];let o=!0;for(let n=0;n<t.length;n++)r.push("["+n+"]"),this.item.isValid(t[n],e,r)||(o=!1),r.pop();return o}_canSanitize(t){return Array.isArray(t)}},x=class extends f{constructor(t){super(),this.value=t,this._default={}}sanitize(t){if(!t||"object"!=typeof t||Array.isArray(t))return{};const e={};for(const[n,r]of Object.entries(t))this.value._canSanitize(r)&&(e[n]=this.value.sanitize(r));return e}isValid(t,e,n){if(!t||"object"!=typeof t||Array.isArray(t))return null==e||e.errors.push(c(null!=n?n:[])+": expected object/record, got "+(Array.isArray(t)?"array":typeof t)),!1;const r=null!=n?n:[];let o=!0;for(const[n,i]of Object.entries(t))r.push(n),this.value.isValid(i,e,r)||(o=!1),r.pop();return o}_canSanitize(t){return!!t&&"object"==typeof t&&!Array.isArray(t)}},j=class extends f{constructor(){super(...arguments),this._default=void 0}sanitize(t){return t}isValid(t,e,n){return!0}_canSanitize(t){return!0}},O=class extends f{constructor(){super(...arguments),this._default=void 0}sanitize(t){return t}isValid(t,e,n){return void 0!==t||(null==e||e.errors.push(c(null!=n?n:[])+": required value is missing"),!1)}_canSanitize(t){return void 0!==t}},M=class extends f{constructor(t,e){super(),this.fn=t,this._default=e,this.resolved=null}get schema(){var t;return null!=(t=this.resolved)?t:this.resolved=this.fn()}sanitize(t){return this.schema.sanitize(t)}isValid(t,e,n){return this.schema.isValid(t,e,n)}_canSanitize(t){return this.schema._canSanitize(t)}},S=class extends f{constructor(t){super(),this.schemas=t,this._default=t.map(t=>t._default)}sanitize(t){return Array.isArray(t)&&t.length===this.schemas.length?this.schemas.map((e,n)=>e.sanitize(t[n])):this._default}isValid(t,e,n){if(!Array.isArray(t)||t.length!==this.schemas.length)return null==e||e.errors.push(c(null!=n?n:[])+": expected tuple of length "+this.schemas.length+", got "+(Array.isArray(t)?"array["+t.length+"]":typeof t)),!1;const r=null!=n?n:[];let o=!0;for(let n=0;n<this.schemas.length;n++)r.push("["+n+"]"),this.schemas[n].isValid(t[n],e,r)||(o=!1),r.pop();return o}_canSanitize(t){return Array.isArray(t)&&t.length===this.schemas.length}};function P(t){return Object.fromEntries(Object.keys(t._shape).map(t=>[t,t]))}function _(t){var e;const n=t;return"_shape"in n?{kind:"shape",shape:n._shape}:"item"in n?{kind:"array",item:n.item}:"inner"in n?{kind:"optional",inner:n.inner}:"fn"in n?{kind:"lazy",resolved:null!=(e=n.resolved)?e:n.fn()}:{kind:"leaf"}}var z={string:(t="")=>new h(t),number:(t=0)=>new p(t),boolean:(t=!1)=>new m(t),literal:t=>new v(t),enum:(t,e)=>new g(t,e),union:(t,e)=>new y(t,e),discriminatedUnion:(t,e)=>new b(t,e),object:t=>new k(t),openObject:(t,e)=>new A(t,e),extendedObject:(t,e)=>new k(l(l({},t._shape),e)),array:t=>new w(t),record:t=>new x(t),any:()=>new j,defined:()=>new O,tuple:t=>new S(t),lazy:(t,e)=>new M(t,e)},I="data-px-animation-src",N="_px_animator",C={auto:"auto",waapi:"waapi",frames:"frames"},F={waapi:C.waapi,frames:C.frames},D={before:"before",after:"after"},T="luminance",U="alpha",L="userSpaceOnUse",E="objectBoundingBox",B="clip",V="extend",W="spacing",R="spacingAndGlyphs",G="align",Z="stretch",K="auto",q="exact",Q={separate:"separate",combined:"combined"},X="text",J="textContent",Y=new Set(["type","children","animator","meta","animate","effects",X,J]),H=["translate","rotate","scale","origin"],$={userSpaceOnUse:"userSpaceOnUse",objectBoundingBox:"objectBoundingBox"},tt={pad:"pad",reflect:"reflect",repeat:"repeat"},et={linear:"linear",radial:"radial"};function nt(t){return!(!t||"object"!=typeof t||Array.isArray(t))&&"svg"===t.type}function rt(t){var e;return(null==t?void 0:t.animator)||(null==(e=null==t?void 0:t.meta)?void 0:e.animator)}function ot(t){var e;if(t)return null==(e=rt(t))?void 0:e.definitions}function it(t){var e;if(!t)return;const n=null==(e=rt(t))?void 0:e.animateById;return n?Object.entries(n).map(([t,e])=>({id:t,animate:e})):void 0}function at(t){return null==t?void 0:t.children}var st=z.union([z.string(),z.tuple([z.number(),z.number(),z.number(),z.number()])]),lt=z.union([z.string(),z.number(),z.array(z.number()),z.lazy(()=>dt,{}),z.object({path:z.string()}),z.lazy(()=>z.object({paths:z.array(Zt)}),{paths:[]}),z.lazy(()=>z.array(Ct),[])]),ut=z.object({time:z.number().optional(),t:z.number().optional(),value:lt.optional(),v:lt.optional(),easing:st.optional(),e:st.optional(),tangentOut:z.tuple([z.number(),z.number()]).optional(),to:z.tuple([z.number(),z.number()]).optional(),tangentIn:z.tuple([z.number(),z.number()]).optional(),ti:z.tuple([z.number(),z.number()]).optional(),selected:z.boolean().optional()}),ct=z.object({segmentCount:z.number().optional(),extend:z.enum([D.before,D.after]).optional(),alternate:z.boolean().optional()}),ft=z.object({value:lt.optional(),keyframes:z.array(ut).optional(),kfs:z.array(ut).optional(),loop:z.union([ct,z.boolean()]).optional(),autoOrient:z.boolean().optional()}),dt=z.object({translate:z.tuple([z.number(),z.number()]).optional(),rotate:z.number().optional(),skew:z.number().optional(),scale:z.tuple([z.number(),z.number()]).optional(),origin:z.tuple([z.number(),z.number()]).optional()}),ht=z.union([z.string(),dt,z.object({value:dt}),ft]),pt=z.record(ft),mt=z.union([z.string(),z.array(z.union([z.string(),pt])),pt]),vt=z.object({startOn:z.enum(["load","mouseOver","click","scrollIntoView","programmatic"]).optional(),outAction:z.enum(["continue","pause","reset","reverse"]).optional(),scrollIntoViewThreshold:z.number().optional()}),gt=z.object({width:z.number(),d:z.string()}),yt=z.object({fFamily:z.string(),style:z.string(),ascent:z.number(),unitsPerEm:z.number(),glyphs:z.record(gt)}),bt=z.object({easings:z.record(z.tuple([z.number(),z.number(),z.number(),z.number()])).optional(),animations:z.record(pt).optional(),styles:z.record(z.any()).optional(),glyphs:z.record(yt).optional()}),kt=z.object({mode:z.enum([C.auto,C.waapi,C.frames]).optional(),duration:z.number().optional(),delay:z.number().optional(),iterations:z.union([z.number(),z.literal("infinite")]).optional(),fill:z.enum(["forwards","backwards","both","none"]).optional(),direction:z.enum(["normal","reverse","alternate","alternate-reverse"]).optional(),frameRate:z.number().optional(),trigger:vt.optional(),resetOnFinish:z.boolean().optional(),definitions:bt.optional(),animateById:z.record(mt).optional(),timelineSource:z.string().optional(),debugInstName:z.string().optional()}),At=z.object({id:z.string(),animate:mt}),wt=z.union([z.string(),z.number(),z.array(z.number()),z.object({value:z.defined()}),dt]),xt=z.union([z.number(),z.object({value:z.number()}),ft]),jt=z.union([z.tuple([z.number(),z.number()]),z.object({value:z.tuple([z.number(),z.number()])}),ft]),Ot=z.union([z.string(),z.object({value:z.string()}),ft]),Mt=z.object({translate:jt.optional(),rotate:xt.optional(),scale:jt.optional(),skew:xt.optional(),origin:jt.optional()}),St=z.object({copies:z.number().optional(),translate:jt.optional(),rotate:xt.optional(),skew:xt.optional(),scale:jt.optional(),origin:jt.optional()}),Pt=z.object({sourceId:z.string().optional(),maskType:z.enum([T,U]).optional(),maskUnits:z.enum([L,E]).optional(),maskContentUnits:z.enum([L,E]).optional(),x:z.number().optional(),y:z.number().optional(),width:z.number().optional(),height:z.number().optional()}),_t=z.object({d:Ot.optional(),animate:ft.optional()}),zt=z.object({offset:xt.optional(),range:jt.optional(),subPaths:z.enum([Q.separate,Q.combined]).optional()}),It=z.object({sourceId:z.string().optional(),start:z.number().optional(),stretch:z.number().optional(),timeCrop:z.tuple([z.number(),z.number()]).optional()}),Nt=z.object({type:z.enum(["content"]).optional(),sourceId:z.string().optional(),retime:It.optional()}),Ct=z.object({offset:z.number(),color:z.string()}),Ft=z.union([z.array(Ct),z.object({value:z.array(Ct)}),ft]),Dt=z.object({type:z.enum([et.linear,et.radial]),p1:jt.optional(),p2:jt.optional(),c:jt.optional(),r:xt.optional(),fp:jt.optional(),stops:Ft.optional(),gradientUnits:z.enum([$.userSpaceOnUse,$.objectBoundingBox]).optional(),spreadMethod:z.enum([tt.pad,tt.reflect,tt.repeat]).optional(),gradientTransform:z.string().optional()}),Tt=Dt,Ut=z.object({path:z.string(),pathOverflow:z.enum([B,V]).optional(),lengthAdjust:z.enum([W,R]).optional(),method:z.enum([G,Z]).optional(),spacing:z.enum([K,q]).optional(),startOffset:xt.optional(),textLength:xt.optional()}),Lt=z.object({useGlyphs:z.boolean().optional()}),Et=z.object({transformBy:Mt.optional(),repeater:St.optional(),maskedBy:Pt.optional(),clipPath:_t.optional(),trimPath:zt.optional(),clone:Nt.optional(),fillGradient:Dt.optional(),strokeGradient:Tt.optional(),textPath:Ut.optional(),text:Lt.optional()});function Bt(t,e){const n=[],r=(t,o)=>{if(t&&t.effects){const r={errors:[],warnings:[],strict:!!(null==e?void 0:e.strict)};if(!Et.isValid(t.effects,r,[o+".effects"]))for(const t of r.errors)n.push(t)}t&&Array.isArray(t.children)&&t.children.forEach((t,e)=>r(t,o+".children["+e+"]"))};return r(t,"root"),n}var Vt=z.openObject({type:z.string(),id:z.string().optional(),meta:z.any().optional(),effects:Et.optional(),animate:mt.optional(),style:z.union([z.string(),z.record(z.union([z.string(),z.number()]))]).optional()},wt),Wt=z.openObject(u(l({},Vt._shape),{children:z.lazy(()=>z.array(Wt),[]).optional()}),wt),Rt=z.object({width:z.number().optional(),height:z.number().optional(),viewBox:z.string().optional(),animator:kt.optional()}),Gt=z.openObject(u(l(l({},Vt._shape),Rt._shape),{type:z.literal("svg"),children:z.array(Wt).optional()}),wt),Zt=z.object({v:z.array(z.array(z.number())),i:z.array(z.array(z.number())).optional(),o:z.array(z.array(z.number())).optional(),c:z.boolean().optional()});function Kt(t){const e=Gt.isValid(t);return{valid:e,errors:e?[]:["Document failed schema validation"]}}function qt(t,e=!1){var n,r,o,i;const a=t.v,s=t.i,l=t.o,u=t.c;if(!a.length)return"";const c=[],f=a.length;c.push("M"+a[0][0]+","+a[0][1]);for(let t=1;t<f;t++){const o=a[t-1],i=null!=(n=null==l?void 0:l[t-1])?n:o,u=null!=(r=null==s?void 0:s[t])?r:a[t],f=a[t];!e&&i[0]===o[0]&&i[1]===o[1]&&u[0]===f[0]&&u[1]===f[1]?c.push("L"+f[0]+","+f[1]):c.push("C"+i[0]+","+i[1]+","+u[0]+","+u[1]+","+f[0]+","+f[1])}if(u&&f>0){const t=a[f-1],n=null!=(o=null==l?void 0:l[f-1])?o:t,r=null!=(i=null==s?void 0:s[0])?i:a[0],u=a[0];!e&&n[0]===t[0]&&n[1]===t[1]&&r[0]===u[0]&&r[1]===u[1]||c.push("C"+n[0]+","+n[1]+","+r[0]+","+r[1]+","+u[0]+","+u[1]),c.push("z")}return c.join("")}function Qt(t,e,n){return t+(e-t)*n}function Xt(t,e,n){const r=[],o=Math.max(t.length,e.length);for(let i=0;i<o;i++)r[i]=Qt(t[i]||0,e[i]||0,n);return r}function Jt(t,e,n){return[Qt(t[0]||0,e[0]||0,n),Qt(t[1]||0,e[1]||0,n),Qt(t[2]||0,e[2]||0,n),Qt(void 0===t[3]?1:t[3],void 0===e[3]?1:e[3],n)]}function Yt(t,e,n){const r=Math.max(t.length,e.length),o=[];for(let i=0;i<r;i++)o.push(Ht(t[i],e[i],n));return o}function Ht(t,e,n){var r,o,i,a,s,l,u,c,f;if(!t||!e)return t||e||{v:[]};const d=Math.min(Math.max(n,0),1),h=Math.min(t.v.length,e.v.length),p=[],m=[],v=[];for(let n=0;n<h;n++){const f=t.v[n],h=e.v[n];p.push(Xt(f,h,d));const g=null!=(o=null==(r=t.i)?void 0:r[n])?o:f,y=null!=(a=null==(i=e.i)?void 0:i[n])?a:h;m.push(Xt(g,y,d));const b=null!=(l=null==(s=t.o)?void 0:s[n])?l:f,k=null!=(c=null==(u=e.o)?void 0:u[n])?c:h;v.push(Xt(b,k,d))}return{v:p,i:m.length?m:void 0,o:v.length?v:void 0,c:null!=(f=t.c)?f:e.c}}function $t(t,e,n){if(n<=0)return 0;if(n>=1)return 1;const r=3*t,o=3*(e-t)-r,i=1-r-o;function a(t){return((i*t+o)*t+r)*t}function s(t){return(3*i*t+2*o)*t+r}let l=n,u=0,c=1;for(let t=0;t<8;t++){const t=a(l)-n;if(Math.abs(t)<1e-6)return l;const e=s(l);if(Math.abs(e)<1e-6)break;l-=t/e}for(l=n;u<c;){const t=a(l);if(Math.abs(t-n)<1e-6)return l;n>t?u=l:c=l,l=(c+u)/2}return l}function te(t){const[e,n,r,o]=t,i=3*n,a=3*(o-n)-i,s=1-i-a;return function(t){return n=$t(e,r,t),((s*n+a)*n+i)*n;var n}}function ee(t,e,n){return[t[0]+(e[0]-t[0])*n,t[1]+(e[1]-t[1])*n]}function ne(t,e,n,r,o){const i=ee(t,e,o),a=ee(e,n,o),s=ee(n,r,o),l=ee(i,a,o),u=ee(a,s,o),c=ee(l,u,o);return{left:[t,i,l,c],right:[c,u,s,r]}}function re(t,e){if(!t)return{left:void 0,right:void 0};if(e<=0)return{left:void 0,right:t};if(e>=1)return{left:t,right:void 0};const[n,r,o,i]=t,a=$t(n,o,e),s=[n,r],l=[o,i],{left:u,right:c}=ne([0,0],s,l,[1,1],a),f=u[3][0],d=u[3][1];let h,p;f>1e-9&&Math.abs(d)>1e-9&&(h=[u[1][0]/f,u[1][1]/d,u[2][0]/f,u[2][1]/d]);const m=1-f,v=1-d;return m>1e-9&&Math.abs(v)>1e-9&&(p=[(c[1][0]-f)/m,(c[1][1]-d)/v,(c[2][0]-f)/m,(c[2][1]-d)/v]),{left:h,right:p}}function oe(t){if(t)return[1-t[2],1-t[3],1-t[0],1-t[1]]}function ie(t){const e=Math.round(255*t[0]),n=Math.round(255*t[1]),r=Math.round(255*t[2]);return 4===t.length?"rgba("+e+","+n+","+r+","+t[3]+")":"rgb("+e+","+n+","+r+")"}function ae(t){if(t){if(Array.isArray(t))return t;if("string"==typeof t)return t.startsWith("#")?function(t){const e=t.slice(1),n=e.length<=4,r=n?e[0]+e[0]:e.slice(0,2),o=n?e[1]+e[1]:e.slice(2,4),i=n?e[2]+e[2]:e.slice(4,6),a=4===e.length?e[3]+e[3]:8===e.length?e.slice(6,8):null,s=[parseInt(r,16)/255,parseInt(o,16)/255,parseInt(i,16)/255];return null!==a&&s.push(parseInt(a,16)/255),s}(t):t.startsWith("rgb")?function(t){var e;const n=null==(e=t.match(/rgba?\((.*)\)/))?void 0:e[1];if(!n)throw new Error("Invalid rgb/rgba format");const r=n.split(",").map(t=>+t.trim());return[r[0]/255,r[1]/255,r[2]/255,...void 0!==r[3]?[r[3]]:[]]}(t):void console.warn("Unsupported color format: "+t)}}var se=new Set(["color","fill","flood-color","lighting-color","stop-color","stroke"]),le=new Set(["translate","rotate","scale","skew"]),ue=new Set(["offset-distance","offsetDistance"]);function ce(t,e){var n;if(!t)return"";const r=null==(n=null==e?void 0:e.withUnits)||n,o=[],i=t.translate,a=t.origin,s=t.rotate,l=t.skew,u=t.scale,c=r?"px":"",f=r?"deg":"";return i&&o.push("translate("+i[0]+c+","+i[1]+c+")"),a&&o.push("translate("+a[0]+c+","+a[1]+c+")"),null!=s&&o.push("rotate("+s+f+")"),null!=l&&o.push("skewX("+l+f+")"),u&&o.push("scale("+u[0]+","+u[1]+")"),a&&o.push("translate("+-a[0]+c+","+-a[1]+c+")"),o.join("")}var fe=new Set(["offset-distance","offsetDistance"]),de=1e3;function he(t){return t.includes("-")?t.replace(/-([a-z])/g,(t,e)=>e.toUpperCase()):t}function pe(t){return!t.includes("-")&&/[a-z][A-Z]/.test(t)}var me=new Set(["viewBox","preserveAspectRatio","gradientUnits","gradientTransform","spreadMethod","patternUnits","patternContentUnits","patternTransform","clipPathUnits","maskUnits","maskContentUnits","markerUnits","markerWidth","markerHeight","refX","refY","textLength","lengthAdjust","startOffset","filterUnits","primitiveUnits","tableValues","stdDeviation","baseFrequency","numOctaves","surfaceScale","diffuseConstant","specularConstant","specularExponent","kernelMatrix","kernelUnitLength","edgeMode","preserveAlpha","targetX","targetY"]);function ve(t){return me.has(t)?t:t.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}function ge(t,e,n){return Math.max(e,Math.min(t,n))}function ye(t,e,n,r,o){if(o<=0)return[t[0],t[1]];if(o>=1)return[r[0],r[1]];const i=1-o,a=i*i,s=o*o,l=a*i,u=3*o*a,c=3*s*i,f=s*o;return[l*t[0]+u*e[0]+c*n[0]+f*r[0],l*t[1]+u*e[1]+c*n[1]+f*r[1]]}var be=1e-4;function ke(t,e,n,r,o){const i=Ae(t,e,n,r,o);if(0===i[0]&&0===i[1]){return Ae(t,e,n,r,o<.5?o+be:o-be)}return i}function Ae(t,e,n,r,o){const i=1-o,a=3*i*i,s=6*o*i,l=3*o*o;return[a*(e[0]-t[0])+s*(n[0]-e[0])+l*(r[0]-n[0]),a*(e[1]-t[1])+s*(n[1]-e[1])+l*(r[1]-n[1])]}function we(t,e,n,r,o=100){const i=o+1,a=new Float64Array(i),s=new Float64Array(i);let l=ye(t,e,n,r,0);a[0]=0,s[0]=0;let u=0;for(let c=1;c<i;c++){const i=c/o,f=ye(t,e,n,r,i),d=f[0]-l[0],h=f[1]-l[1];u+=Math.sqrt(d*d+h*h),a[c]=i,s[c]=u,l=f}return{ts:a,ds:s}}function xe(t,e){const{ts:n,ds:r}=t,o=n.length-1;if(e<=n[0])return r[0];if(e>=n[o])return r[o];let i=1,a=o;for(;i<a;){const t=i+a>>>1;n[t]<e?i=t+1:a=t}const s=n[a-1],l=n[a]-s,u=l>0?(e-s)/l:0;return r[a-1]+u*(r[a]-r[a-1])}var je=0;function Oe(){return"_px_"+Date.now().toString(36)+(++je).toString(36)+Math.random().toString(36).substring(2,6)}function Me(t){if(null===t||"object"!=typeof t)return t;if(Array.isArray(t))return t.map(t=>Me(t));const e=t,n={};for(const t of Object.keys(e))n[t]=Me(e[t]);return n}function Se(t){var e,n;const r=Me(t),o=new Map,i=new Set(["href","xlink:href"]),a=new Set(["fill","stroke","clip-path","clipPath","mask","marker","marker-start","marker-mid","marker-end","filter","flood-color","lighting-color"]),s=new Set(["sourceId","targetId","boundElementId"]);!function t(e){if(e&&"object"==typeof e){if(e.id&&"string"==typeof e.id){const t=e.id,n=Oe();o.set(t,n),e.id=n}else e.animate&&(e.id=Oe());if(Array.isArray(e.children))for(const n of e.children)t(n)}}(r),function t(e){if(e&&"object"==typeof e)for(const[n,r]of Object.entries(e))if("children"!==n)if("string"==typeof r)if(i.has(n)&&r.startsWith("#")){const t=r.slice(1),i=o.get(t);i&&(e[n]="#"+i)}else if(a.has(n))e[n]=Pe(r,o);else if(s.has(n)){const t=r.startsWith("#"),i=o.get(t?r.slice(1):r);i&&(e[n]=t?"#"+i:i)}else r.includes("url(#")&&(e[n]=Pe(r,o));else if("style"===n&&"object"==typeof r&&null!==r)for(const[t,e]of Object.entries(r))"string"==typeof e&&(r[t]=Pe(e,o));else"object"==typeof r&&null!==r&&t(r);else if(Array.isArray(r))for(const e of r)t(e)}(r);const c=null==(e=r.animator)?void 0:e.animateById;if(c&&"object"==typeof c){const t={};for(const[e,r]of Object.entries(c)){t[null!=(n=o.get(e))?n:e]=r}r.animator=u(l({},r.animator),{animateById:t})}return r}function Pe(t,e){return t.replace(/url\(#([^)]+)\)/g,(t,n)=>{const r=e.get(n);return r?"url(#"+r+")":t})}var _e=new Set(["script","foreignobject"]),ze=new Set(["href","xlink:href","src","filter","clippath","mask","markerstart","markermid","markerend"]),Ie=new Set(["href","xlink:href","src"]),Ne=new Set(["mixBlendMode","isolation"]),Ce=/^data:image\/(?:png|jpe?g|gif|webp|bmp);base64,/i,Fe=/^data:image\/svg\+xml(?:;[^,]*)?,/i,De=/^data:image\/[^;,]*;base64,([A-Za-z0-9+/]{8})/i,Te=["iVBORw0K","/9j/","R0lGOD","UklGR","Qk"];function Ue(t,e){const n=t.toLowerCase();if(!function(t){return!!t.startsWith("on")}(n)){if("fill"===n||"stroke"===n||"stopcolor"===n){const t=String(e);return t.includes("url(")&&!/^url\(#[^)]+\)$/.test(t)?void console.warn('Attribute "'+n+'" blocked: url() must be internal url(#id), got:',e):e}if(ze.has(n)){const t=String(e);return t.startsWith("#")||(/^url\(#[^)]+\)$/.test(t)||Ie.has(n)&&(Ce.test(t)||Fe.test(t)||function(t){const e=De.exec(t);return!!e&&Te.some(t=>e[1].startsWith(t))}(t)))?e:void console.warn('Attribute "'+n+'" blocked: must be #id, url(#id), or data:image/… URI, got:',e)}return e}console.warn("Attribute blocked (event handler / dangerous): ",n)}function Le(t,e){var n;if(t)return"string"==typeof t?null==(n=null==e?void 0:e.styles)?void 0:n[t]:t}function Ee(t){const e={};for(const n of Object.keys(t)){const r=he(n);if(Y.has(r))continue;if("style"===r)continue;let o=t[n];if(se.has(r)&&Array.isArray(o))e[r]=ie(o);else if("transform"!==r||null===o||"object"!=typeof o||Array.isArray(o)||o.keyframes||o.kfs)le.has(r)?(Array.isArray(o)&&("translate"===r&&(o=o.map(t=>t+"px")),o=o.join(",")),"rotate"===r&&(o+="deg"),e.transform=r+"("+o+")"):Array.isArray(o)?e[r]=o.join(","):null!=o&&(e[r]=String(o));else{const t=o.value&&"object"==typeof o.value?o.value:o;e.transform=ce(t,{withUnits:!1})}}return e}function Be(t){var e;const n=null!=(e=t.value)?e:t.v;if(!n)return;if(Array.isArray(n)&&n.length>=2&&"number"==typeof n[0]&&"number"==typeof n[1])return[n[0],n[1]];const r=n.translate;return Array.isArray(r)&&r.length>=2?[r[0],r[1]]:void 0}function Ve(t){var e,n;return null!=(n=null!=(e=t.time)?e:t.t)?n:0}function We(t){var e;return null!=(e=t.easing)?e:t.e}function Re(t){var e,n,r;const o=null!=(e=t.keyframes)?e:t.kfs;if(!Array.isArray(o))return!1;if(t.autoOrient)return!0;for(const t of o)if((null!=(n=t.tangentIn)?n:t.ti)||(null!=(r=t.tangentOut)?r:t.to))return!0;return!1}var Ge=new WeakMap;function Ze(t,e,n,r){var o,i;let a=Ge.get(t);const s=null==a?void 0:a.get(e);if(s)return s;const l=null!=(o=t.tangentOut)?o:t.to,u=null!=(i=e.tangentIn)?i:e.ti,c=[n[0]+(l?l[0]:0),n[1]+(l?l[1]:0)],f=[r[0]+(u?u[0]:0),r[1]+(u?u[1]:0)],d=we(n,c,f,r),h={P0:n,P1:c,P2:f,P3:r,lut:d,totalArc:d.ds[d.ds.length-1]};return a||(a=new WeakMap,Ge.set(t,a)),a.set(e,h),h}function Ke(t,e,n,r,o,i){const a=Ze(t,e,n,r),s=0===a.totalArc?o:function(t,e){const n=t.ds[t.ds.length-1],r=e*n,{ts:o,ds:i}=t,a=i.length-1;if(r<=0)return o[0];if(r>=i[a])return o[a];let s=1,l=a;for(;s<l;){const t=s+l>>>1;i[t]<r?s=t+1:l=t}const u=i[l-1],c=i[l]-u,f=c>0?(r-u)/c:0;return o[l-1]+f*(o[l]-o[l-1])}(a.lut,o),l=ye(a.P0,a.P1,a.P2,a.P3,s);if(!i)return{translate:l};const u=ke(a.P0,a.P1,a.P2,a.P3,s);return{translate:l,rotateDeg:180*Math.atan2(u[1],u[0])/Math.PI}}function qe(t,e){var n,r,o,i;if(!Re(t))return t;const a=null!=(n=t.keyframes)?n:t.kfs;if(!Array.isArray(a)||a.length<2)return t;const s=!!t.autoOrient,l=null!=(r=null==e?void 0:e.flatnessTolerance)?r:.5,u=null!=(o=null==e?void 0:e.rotationTolerance)?o:5,c=null!=(i=null==e?void 0:e.maxSamplesPerSegment)?i:32,f=[],d=Be(a[0]);if(!d)return t;const h=s?function(t,e){const n=Be(t),r=Be(e);if(!n||!r)return 0;const o=Ze(t,e,n,r),i=ke(o.P0,o.P1,o.P2,o.P3,0);return 180*Math.atan2(i[1],i[0])/Math.PI}(a[0],a[1]):void 0;f.push(Xe(Ve(a[0]),He(Je(a[0]),Je(a[0]),0,d,h,s)));for(let t=0;t<a.length-1;t++){const e=a[t],n=a[t+1],r=Be(e),o=Be(n);r&&o?(s&&t>0&&tn(f,e,n,r,o,u),nn(f,e,n,r,o,s,l,u,c)):f.push(Xe(Ve(n),He(Je(n),Je(n),1,null!=o?o:[0,0],void 0,s)))}const p=We(a[a.length-1]);p&&(f[f.length-1].e=p),s&&Qe(f);const m={kfs:f};return void 0!==t.loop&&(m.loop=t.loop),m}function Qe(t){var e;let n;for(const r of t){const t=null!=(e=r.v)?e:r.value;if(!t||"number"!=typeof t.rotate)continue;if(void 0===n){n=t.rotate;continue}let o=t.rotate;for(;o-n>180;)o-=360;for(;o-n<-180;)o+=360;t.rotate=o,n=o}}function Xe(t,e){return{t:t,v:e}}function Je(t){var e;const n=null!=(e=t.value)?e:t.v;if(n&&"object"==typeof n&&!Array.isArray(n))return n}function Ye(t,e,n){if(void 0===t)return e;if(void 0===e)return t;if("number"==typeof t&&"number"==typeof e)return t+(e-t)*n;if(Array.isArray(t)&&Array.isArray(e)&&t.length===e.length){const r=new Array(t.length);for(let o=0;o<t.length;o++){const i="number"==typeof t[o]?t[o]:0,a="number"==typeof e[o]?e[o]:0;r[o]=i+(a-i)*n}return r}return n<.5?t:e}function He(t,e,n,r,o,i){const a={translate:r},s=new Set;if(t)for(const e of Object.keys(t))s.add(e);if(e)for(const t of Object.keys(e))s.add(t);for(const r of s){if("translate"===r)continue;if("rotate"===r&&i)continue;const o=null==t?void 0:t[r],s=null==e?void 0:e[r];void 0===o&&void 0===s||(a[r]=Ye(o,s,n))}return void 0!==o&&(a.rotate=o+$e(t,e,n)),a}function $e(t,e,n){const r="number"==typeof(null==t?void 0:t.rotate)?t.rotate:void 0,o="number"==typeof(null==e?void 0:e.rotate)?e.rotate:void 0;if(void 0===r&&void 0===o)return 0;const i=Ye(r,o,n);return"number"==typeof i?i:0}function tn(t,e,n,r,o,i){var a;const s=t[t.length-1],l=null!=(a=s.v)?a:s.value,u=null==l?void 0:l.rotate;if("number"!=typeof u)return;const c=Je(e),f=u-$e(c,c,0),d=Ze(e,n,r,o),h=ke(d.P0,d.P1,d.P2,d.P3,0),p=180*Math.atan2(h[1],h[0])/Math.PI,m=function(t,e){let n=t-e;for(;n>180;)n-=360;for(;n<-180;)n+=360;return n}(p,f);if(Math.abs(m)<=i)return;const v=Ve(e),g=Math.min(v+en,(v+Ve(n))/2),y=He(Je(e),Je(e),0,r,p,!0);t.push(Xe(g,y))}var en=.05;function nn(t,e,n,r,o,i,a,s,l){const u=Ze(e,n,r,o),c=Ve(e),f=Ve(n),d=We(e),h=(p=d)?te([p[1],p[0],p[3],p[2]]):t=>t;var p;const m=Je(e),v=Je(n),g=function(t,e,n,r,o){const i=[];rn(t.P0[0],t.P1[0],t.P2[0],t.P3[0],i),rn(t.P0[1],t.P1[1],t.P2[1],t.P3[1],i),i.sort((t,e)=>t-e);const a=[0];for(const t of i)t>a[a.length-1]+1e-6&&t<.999999&&a.push(t);a.push(1);const s=[],l={remaining:o-a.length};for(let o=0;o<a.length-1;o++)on(a[o],a[o+1],s,t,e,n,r,l);return s}(u,i,a,s,l),y=[];for(const t of g){const e=xe(u.lut,t),n=ge(u.totalArc>0?e/u.totalArc:t,0,1),r={u:ge(h(n),0,1),p:n,pos:ye(u.P0,u.P1,u.P2,u.P3,t)};if(i){const e=ke(u.P0,u.P1,u.P2,u.P3,t);r.rotateDeg=180*Math.atan2(e[1],e[0])/Math.PI}y.push(r)}let b=d,k=0;const A=t.length-1;for(let e=0;e<y.length;e++){const n=y[e],r=k<1?ge((n.u-k)/(1-k),0,1):1,{left:o,right:a}=re(b,r),s=0===e?A:t.length-1;o?t[s].e=o:delete t[s].e;const l=c+n.u*(f-c),u=He(m,v,n.p,n.pos,n.rotateDeg,i);t.push(Xe(l,u)),b=a,k=n.u}}function rn(t,e,n,r,o){const i=e-t,a=n-e,s=i-2*a+(r-n),l=2*(a-i),u=i;if(Math.abs(s)<1e-10){if(Math.abs(l)>1e-10){const t=-u/l;t>1e-6&&t<.999999&&o.push(t)}return}const c=l*l-4*s*u;if(c<0)return;const f=Math.sqrt(c),d=(-l-f)/(2*s),h=(-l+f)/(2*s);d>1e-6&&d<.999999&&o.push(d),h>1e-6&&h<.999999&&o.push(h)}function on(t,e,n,r,o,i,a,s){const l=(t+e)/2,u=ye(r.P0,r.P1,r.P2,r.P3,t),c=ye(r.P0,r.P1,r.P2,r.P3,e),f=e-t,d=ye(r.P0,r.P1,r.P2,r.P3,t+.25*f),h=ye(r.P0,r.P1,r.P2,r.P3,l),p=ye(r.P0,r.P1,r.P2,r.P3,t+.75*f),m=Math.max(an(d,u,c),an(h,u,c),an(p,u,c));let v=!0;if(o){const n=ke(r.P0,r.P1,r.P2,r.P3,t),o=ke(r.P0,r.P1,r.P2,r.P3,e),i=180*Math.atan2(n[1],n[0])/Math.PI,s=180*Math.atan2(o[1],o[0])/Math.PI;let l=Math.abs(i-s);l>180&&(l=360-l),l>a&&(v=!1)}m<=i&&v||s.remaining<=0||f<1e-6?n.push(e):(s.remaining-=1,on(t,l,n,r,o,i,a,s),on(l,e,n,r,o,i,a,s))}function an(t,e,n){const r=n[0]-e[0],o=n[1]-e[1],i=r*r+o*o;if(i<1e-20){const n=t[0]-e[0],r=t[1]-e[1];return Math.sqrt(n*n+r*r)}const a=(t[0]-e[0])*o-(t[1]-e[1])*r;return Math.abs(a)/Math.sqrt(i)}function sn(t,e){const n=ln(t,e);return null!=n?n:t}function ln(t,e){let n,r;if(t.children)for(let r=0;r<t.children.length;r++){const o=ln(t.children[r],e);null!==o&&(n||(n=t.children.slice()),n[r]=o)}const o=t.animate;if(o&&"object"==typeof o&&!Array.isArray(o)){const t=o,n=t.transform;if(n&&"object"==typeof n&&Re(n)){const o=qe(n,e);o!==n&&(r=u(l({},t),{transform:o}))}}if(!n&&!r)return null;const i=l({},t);return n&&(i.children=n),r&&(i.animate=r),i}function un(t,e){if(t===e)return!0;if(typeof t!=typeof e||null===t||null===e||"object"!=typeof t)return!1;if(Array.isArray(t)!==Array.isArray(e))return!1;const n=Object.keys(t),r=Object.keys(e);return n.length===r.length&&n.every(n=>un(t[n],e[n]))}function cn(t){const e=[];let n;const r=function(t){const e=t.split(/([MLCZmlcz]|[\s,]+)/).map(t=>t.trim()).filter(t=>t&&","!==t),n=[];let r=null;for(const t of e)if(/[MLCZmlcz]/.test(t))r={type:t,values:[]},n.push(r);else if(r){const e=+t;r.values.push(Number.isNaN(e)?0:e)}return n}(t);for(const t of r){const r=t.type,o=t.values;if("M"===r||"m"===r){const t=o[0]||0,r=o[1]||0;n={v:[[t,r]],i:[[t,r]],o:[[t,r]],c:!1},e.push(n);continue}if(n||(n={v:[[0,0]],i:[[0,0]],o:[[0,0]],c:!1},e.push(n)),"L"===r){const t=o[0]||0,e=o[1]||0;n.v.push([t,e]),n.i.push([t,e]),n.o.push([t,e])}else if("C"===r){const t=o[0]||0,e=o[1]||0,r=o[2]||0,i=o[3]||0,a=o[4]||0,s=o[5]||0;n.o[n.o.length-1]=[t,e],n.v.push([a,s]),n.i.push([r,i]),n.o.push([a,s])}else"Z"===r||"z"===r?n.c=!0:console.warn('Unsupported path command "'+r+'"')}return e}function fn(t){return t.startsWith("path(")&&t.endsWith(")")?t.slice(5,-1):/^[MmZzLlHhVvCcSsQqTtAa]/.test(t)?t:void 0}function dn(t){return"string"==typeof t&&void 0!==fn(t)}function hn(t){if(t&&"object"==typeof t&&"string"==typeof t.path){const e=fn(t.path);return e?{paths:cn(e)}:t}if(t&&"object"==typeof t&&"paths"in t){const e=t.paths;if(Array.isArray(e)&&e.length>0&&dn(e[0])){const t=[];for(const n of e){const e=fn(n);e&&t.push(...cn(e))}return{paths:t}}return t}if(Array.isArray(t)){if(t.length>0&&dn(t[0])){const e=[];for(const n of t){const t=fn(n);t&&e.push(...cn(t))}return{paths:e}}return{paths:t}}if(dn(t)){return{paths:cn(fn(t))}}return t}function pn(t,e){var n;if(t)return Array.isArray(t)?t:(null==(n=null==e?void 0:e.easings)?void 0:n[t])?e.easings[t]:void console.warn("Unknown easing name: "+t)}function mn(t,e){var n;if("string"==typeof t){const r=null==(n=null==e?void 0:e.animations)?void 0:n[t];return r||console.warn("Unknown animation name: "+t),r}return t}function vn(t,e,n,r){var o,i;if("d"===t){return{paths:Yt(null!=(o=null==e?void 0:e.paths)?o:Array.isArray(e)?e:[],null!=(i=null==n?void 0:n.paths)?i:Array.isArray(n)?n:[],r)}}return se.has(t)?Jt(e||[0,0,0,1],n||[0,0,0,1],r):"transform"!==t||"object"!=typeof e||null===e||Array.isArray(e)||"object"!=typeof n||null===n||Array.isArray(n)?"rotate"===t&&"number"==typeof e&&"number"==typeof n?Qt(e,n,r):le.has(t)||"stroke-dasharray"===t||"strokeDasharray"===t?Xt(e||[],n||[],r):Qt(+(e||0),+(n||0),r):function(t,e,n){const r=new Set([...Object.keys(null!=t?t:{}),...Object.keys(null!=e?e:{})]),o={};for(const i of r){const r=null==t?void 0:t[i],a=null==e?void 0:e[i];if("rotate"===i||"skew"===i)o[i]=Qt(+(null!=r?r:0),+(null!=a?a:0),n);else if("translate"===i||"scale"===i||"origin"===i){const t="scale"===i?[1,1]:[0,0];o[i]=Xt(r||t,a||t,n)}else o[i]=null!=a?a:r}return o}(e,n,r)}function gn(t,e,n,r){var o,i,a,s,l;const u=e.length-1,c=ge(null!=(o=n.segmentCount)?o:u,1,u);let f;f=n.extend===D.before?e.slice(0,c+1):e.slice(u-c);const d=null!=(i=e[0].t)?i:0,h=null!=(a=e[e.length-1].t)?a:0;let p,m;n.extend===D.before?(p=0,m=d):(p=h,m=r);const v=m-p;if(v<=0)return e;const g=null!=(s=f[0].t)?s:0,y=(null!=(l=f[f.length-1].t)?l:0)-g;if(y<=0)return e;const b=f.map(t=>{var e,n;return{relT:(t.t-g)/y,v:t.v,e:t.e,tangentIn:null!=(e=t.tangentIn)?e:t.ti,tangentOut:null!=(n=t.tangentOut)?n:t.to}}),k=Math.floor(v/y),A=v-k*y,w=A/y,x=[],j=n.extend!==D.before,O=e[e.length-1];function M(e,n,r){var o;let i;if(n){i=[];for(let t=b.length-1;t>=0;t--)i.push({relT:1-b[t].relT,v:b[t].v,e:t>0?oe(b[t-1].e):void 0,tangentIn:b[t].tangentOut,tangentOut:b[t].tangentIn})}else i=b;const a=void 0!==r?r:1;for(let n=0;n<i.length;n++){const r=i[n];if(r.relT>a+1e-9){const o=i[n-1],s=r.relT-o.relT,l=(a-o.relT)/s,u=o.e?te(o.e)(l):l,c=vn(t,o.v,r.v,u),{left:f}=re(o.e,l);return x.length>0&&o.relT<=a&&(x[x.length-1].e=f),void x.push({t:e+a*y,v:c,e:void 0})}const s=x.length>0?x[x.length-1]:O,l=j&&0===n&&void 0!==s&&Math.abs((null!=(o=s.t)?o:0)-(e+r.relT*y))<1e-9;if(l){if(un(s.v,r.v))continue;x.length>0&&(delete s.tangentIn,delete s.tangentOut)}const u={t:e+r.relT*y+(l?10:0),v:r.v,e:n<i.length-1?r.e:void 0};r.tangentIn&&(u.tangentIn=r.tangentIn),r.tangentOut&&(u.tangentOut=r.tangentOut),x.push(u)}}if(n.extend===D.before){if(w>1e-9){!function(e,n,r){let o;if(n){o=[];for(let t=b.length-1;t>=0;t--)o.push({relT:1-b[t].relT,v:b[t].v,e:t>0?oe(b[t-1].e):void 0,tangentIn:b[t].tangentOut,tangentOut:b[t].tangentIn})}else o=b;const i=1-r;for(let n=0;n<o.length;n++){const r=o[n];if(r.relT<i-1e-9)continue;const a=o[n-1];if(a&&a.relT<i-1e-9&&r.relT>i+1e-9){const n=r.relT-a.relT,o=(i-a.relT)/n,s=a.e?te(a.e)(o):o,l=vn(t,a.v,r.v,s),{right:u}=re(a.e,o);x.push({t:e,v:l,e:u})}const s={t:e+(r.relT-i)*y,v:r.v,e:n<o.length-1?r.e:void 0};r.tangentIn&&(s.tangentIn=r.tangentIn),r.tangentOut&&(s.tangentOut=r.tangentOut),x.push(s)}}(p,!!n.alternate&&k%2==0,w)}for(let t=0;t<k;t++){const e=k-1-t,r=!!n.alternate&&e%2==0;M(p+A+t*y,r)}}else{for(let t=0;t<k;t++){const e=!!n.alternate&&t%2==0;M(p+t*y,e)}if(w>1e-9){const t=!!n.alternate&&k%2==0;M(p+k*y,t,w)}}return n.extend===D.before?[...x,...e]:[...e,...x]}function yn(t,e,n,r){var o,i,a,s,l,u,c;const f=e.keyframes||e.kfs||[],d=[];for(const e of f){const n=null!=(i=null!=(o=e.time)?o:e.t)?i:0;let f=null!=(a=e.value)?a:e.v;const h=null!=(s=e.easing)?s:e.e;"d"===t&&(f=hn(f));const p=pe(t)?ve(t):t;se.has(p)&&(f=null!=(l=ae(f))?l:f);const m={t:n,v:f,e:pn(h,r)},v=null!=(u=e.tangentIn)?u:e.ti,g=null!=(c=e.tangentOut)?c:e.to;v&&(m.tangentIn=v),g&&(m.tangentOut=g),d.push(m)}d.sort((t,e)=>{var n,r;return(null!=(n=t.t)?n:0)-(null!=(r=e.t)?r:0)});const h=e.loop,p=!0===h?{}:h||void 0;return p&&d.length>=2?gn(t,d,p,n):d}function bn(t,e,n){var r;const o=e.loop;if(null==o||!1===o)return e;const i=!0===o?{}:o,a=null!=(r=e.keyframes)?r:e.kfs;if(!Array.isArray(a)||a.length<2)return e;const s=pe(t)?ve(t):t,l=se.has(s),u=a.map(e=>{var n,r,o,i,a,s,u,c;const f=null!=(n=e.t)?n:e.time;let d=null!=(r=e.v)?r:e.value;"d"===t&&(d=hn(d)),l&&(d=null!=(o=ae(d))?o:d);const h={t:f,v:d,e:null!=(i=e.e)?i:e.easing};return(null!=(a=e.tangentIn)?a:e.ti)&&(h.tangentIn=null!=(s=e.tangentIn)?s:e.ti),(null!=(u=e.tangentOut)?u:e.to)&&(h.tangentOut=null!=(c=e.tangentOut)?c:e.to),h}),c={kfs:gn(t,u,i,n)};return void 0!==e.autoOrient&&(c.autoOrient=e.autoOrient),c}function kn(t,e){const n=An(t,e);return null!=n?n:t}function An(t,e){let n,r;if(t.children)for(let r=0;r<t.children.length;r++){const o=An(t.children[r],e);null!==o&&(n||(n=t.children.slice()),n[r]=o)}const o=t.animate;if(o&&"object"==typeof o&&!Array.isArray(o)){const t=o;for(const n of Object.keys(t)){const o=t[n],i=bn(n,o,e);i!==o&&(r||(r=l({},t)),r[n]=i)}}if(!n&&!r)return null;const i=l({},t);return n&&(i.children=n),r&&(i.animate=r),i}var wn=0;function xn(t,e=F.waapi){const n=rt(t)||{},r=ot(t),o=n.duration||1e3,i=[],a=(t,n)=>{if(!n)return null;const i=function(t,e){if(!t)return[];const n=[];if("string"==typeof t){const r=mn(t,e);r&&n.push(r)}else if(Array.isArray(t))for(const r of t){const t=mn(r,e);t&&n.push(t)}else n.push(t);return n}(n,r);if(0===i.length)return null;const a=function(t,e,n,r=F.waapi){const o={};for(const[i,a]of Object.entries(t)){const t=yn(i,a,e,n);if(t.length>0){const e={kfs:t};void 0!==a.autoOrient&&(e.autoOrient=a.autoOrient),void 0!==a.loop&&(e.loop=a.loop),o[i]=r===F.waapi&&"transform"===i?qe(e):e}}return o}(function(t){const e={};for(const n of t)for(const[t,r]of Object.entries(n))e[t]=r;return e}(i),o,r,e);return 0===Object.keys(a).length?null:{id:t,animate:a}},s=it(t);if(s)for(const t of s){const e=a(t.id,t.animate);e&&i.push(e)}const l=t=>{const e=t.animate;if(e&&Object.keys(e).length>0){const n=t.id||"_px_el_"+ ++wn;t.id=n;const r=a(n,e);r&&i.push(r)}if(t.children)for(let e=0;e<t.children.length;e++)l(t.children[e])};if(t.children)for(let e=0;e<t.children.length;e++)l(t.children[e]);return i}function jn(t,e,n){var r,o,i,a,s,l,u;const c=e.kfs||e.keyframes||[];if(0===c.length)return null;const{prevKf:f,nextKf:d}=function(t,e){var n,r;const o=t.length-1;let i=t[0],a=t[o>0?1:0];for(let s=0;s<o;s++){const l=null!=(n=t[s].t)?n:0,u=null!=(r=t[s+1].t)?r:0;if(l<=e&&e<=u){i=t[s],a=t[s+1];break}e>u&&s===o-1&&(i=t[o>0?o-1:0],a=t[o])}return{prevKf:i,nextKf:a}}(c,n);let h=f===d?0:(p=n,m=null!=(r=f.t)?r:0,v=null!=(o=d.t)?o:0,g=0,y=1,v===m?g:g+(p-m)/(v-m)*(y-g));var p,m,v,g,y;h=ge(h,0,1);const b=null!=(i=f.e)?i:f.easing;if(b&&Array.isArray(b))try{h=te(b)(h)}catch(t){}let k=pe(t)?ve(t):t,A=null;const w=null!=(a=null==f?void 0:f.v)?a:null==f?void 0:f.value,x=null!=(s=null==d?void 0:d.v)?s:null==d?void 0:d.value;if("d"===k){A=Yt(null!=(l=null==w?void 0:w.paths)?l:Array.isArray(w)?w:[],null!=(u=null==x?void 0:x.paths)?u:Array.isArray(x)?x:[],h).map(t=>qt(t)).join("")}else if(se.has(k))A=ie(Jt(w||[0,0,0,1],x||[0,0,0,1],h)),k=t;else if("stroke-dasharray"===k)A=Xt(w||[],x||[],h).join(" "),k=t;else if("transform"!==k||null===w||"object"!=typeof w||Array.isArray(w))if("translate"===k){A="translate("+Xt(w||[0,0],x||[0,0],h).join(",")+")",k="transform"}else if("rotate"===k){A="rotate("+Qt(+(w||0),+(x||0),h)+")",k="transform"}else if("scale"===k){A="scale("+Xt(w||[1,1],x||[1,1],h).join(",")+")",k="transform"}else{A=Qt(+(w||0),+(x||0),h)}else{const t=new Set([...w?Object.keys(w):[],...x?Object.keys(x):[]]),n={};for(const e of t){const t=null==w?void 0:w[e],r=null==x?void 0:x[e];if("rotate"===e||"skew"===e)n[e]=Qt(+(null!=t?t:0),+(null!=r?r:0),h);else if("translate"===e||"scale"===e||"origin"===e){const o="scale"===e?[1,1]:[0,0],i=Xt(t||o,r||o,h);n[e]=i}}if(Re(e)){const t=w.translate,r=x.translate;if(Array.isArray(t)&&Array.isArray(r)){const o=Ke(f,d,[+t[0],+t[1]],[+r[0],+r[1]],h,!!e.autoOrient);n.translate=[o.translate[0],o.translate[1]],void 0!==o.rotateDeg&&(n.rotate=o.rotateDeg)}}A=ce(n,{withUnits:!1}),k="transform"}return ue.has(k)&&"number"==typeof A&&(A=100*A+"%"),{k:k,v:null===A?"":""+A}}function On(t,e){const n={};for(const[r,o]of Object.entries(t)){const t=jn(r,o,e);t&&(n[t.k]=t.v)}return n}function Mn(t){if(null===t||"object"!=typeof t)return t;if(Array.isArray(t))return t.map(Mn);const e={};for(const n of Object.keys(t))e[n]=Mn(t[n]);return e}function Sn(t,e){const n=new Map,r=t=>{var o;if("string"==typeof t.id){const r=e();n.set(t.id,r),t.id=r}null==(o=t.children)||o.forEach(r)};r(t);const o=t=>t.replace(/url\(#([^)]+)\)/g,(t,e)=>{const r=n.get(e);return r?"url(#"+r+")":t}),i=t=>{var e;if("string"==typeof t.href&&t.href.startsWith("#")){const e=n.get(t.href.slice(1));e&&(t.href="#"+e)}for(const e of Object.keys(t)){if("children"===e||"effects"===e||"meta"===e||"animate"===e||"href"===e||"id"===e)continue;const n=t[e];"string"==typeof n&&-1!==n.indexOf("url(#")&&(t[e]=o(n))}null==(e=t.children)||e.forEach(i)};return i(t),n}function Pn(t){const e="number"==typeof t?t:"string"==typeof t?parseFloat(t):NaN;return Number.isFinite(e)?e:0}function _n(t){var e;const n=Pn(t.x),r=Pn(t.y);if(delete t.x,delete t.y,!n&&!r)return t;const o="translate("+n+","+r+")";if(void 0!==t.transform||void 0!==t.animate){const n={type:"g",transform:o,children:null!=(e=t.children)?e:[]};t.children=[n]}else t.transform=o;return t}function zn(t){var e;const n=function(t){const e=new Map,n=t=>{var r;"string"==typeof t.id&&e.set(t.id,t),null==(r=t.children)||r.forEach(n)};return n(t),e}(t),r=function(t,e){const n=new WeakMap,r=new Set,o=(t,r)=>{const i=n.get(t);if(void 0!==i)return i;if(r.has(t))return!1;r.add(t);let a=!1;if(t.animate&&"object"==typeof t.animate&&!Array.isArray(t.animate))for(const e in t.animate){a=!0;break}if(!a&&t.children)for(const e of t.children)if(o(e,r)){a=!0;break}if(!a&&"use"===t.type&&"string"==typeof t.href){const n=Nn(t.href),i=n?e.get(n):void 0;i&&(a=o(i,r))}return r.delete(t),n.set(t,a),a};for(const[t,n]of e)o(n,new Set)&&r.add(t);return r}(0,n);if(0===r.size)return t;let o=0;const i=function(t){const e=Fn(t.viewBox);if(e)return[e[2],e[3]];const n=In(t.width),r=In(t.height);return void 0!==n&&void 0!==r?[n,r]:[1,1]}(t),a=[],s=Dn(t,n,r,()=>"_lw_use_mat_"+ ++o,a,i);if(0===a.length)return s;const c={type:"defs",children:a},f=[...null!=(e=s.children)?e:[],c];return u(l({},s),{children:f})}function In(t){if("number"==typeof t)return t;if("string"==typeof t){const e=parseFloat(t);return Number.isFinite(e)?e:void 0}}function Nn(t){if("string"==typeof t)return t.startsWith("#")?t.slice(1):t}function Cn(t,e,n,r,o,i,a){var s,c,f,d;const h=Mn(e);Sn(h,o);const p="symbol"===h.type?Fn(h.viewBox):void 0,m=null!=(c=null!=(s=In(t.width))?s:null==p?void 0:p[2])?c:a[0],v=null!=(d=null!=(f=In(t.height))?f:null==p?void 0:p[3])?d:a[1],g="symbol"===h.type?function(t,e,n,r,o){const i=Fn(t.viewBox),a=u(l({},t),{type:"g"});if(delete a.viewBox,delete a.preserveAspectRatio,delete a.width,delete a.height,!i)return a;const[s,c,f,d]=i,h=f>0&&d>0?Math.min(r/f,o/d):1,p=(r-f*h)/2,m=(o-d*h)/2,v=[];0===p&&0===m||v.push("translate("+p+","+m+")");1!==h&&v.push("scale("+h+")");0===s&&0===c||v.push("translate("+-s+","+-c+")");v.length&&(a.transform=v.join(""));const g=e();return n.push({type:"clipPath",id:g,children:[{type:"rect",x:s,y:c,width:f,height:d}]}),a.clipPath="url(#"+g+")",a}(h,o,i,m,v):h,y=Dn(g,n,r,o,i,a),b=u(l({},t),{type:"g",children:[y]});return delete b.href,delete b.width,delete b.height,_n(b)}function Fn(t){if("string"!=typeof t)return;const e=t.trim().split(/[\s,]+/).map(Number);return e.length<4||e.some(t=>!Number.isFinite(t))?void 0:[e[0],e[1],e[2],e[3]]}function Dn(t,e,n,r,o,i){if("use"===t.type&&"string"==typeof t.href){const a=Nn(t.href);if(a&&n.has(a)){const s=e.get(a);if(s)return Cn(t,s,e,n,r,o,i)}}if(!t.children)return t;let a=!1;const s=t.children.map(t=>{const s=Dn(t,e,n,r,o,i);return s!==t&&(a=!0),s});return a?u(l({},t),{children:s}):t}function Tn(t,e,n){const r={};return"translate"===t?r.translate=e:"rotate"===t?r.rotate=e:"skew"===t?r.skew=e:r.scale=e,n&&"translate"!==t&&(r.origin=n),r}function Un(t){var e,n,r;if(void 0===t)return{kind:"absent"};if(Array.isArray(t))return{kind:"static",value:t};if("object"==typeof t){const o=t,i=null!=(e=o.keyframes)?e:o.kfs;if(i){const t={kind:"animated",keyframes:i.map(En),autoOrient:o.autoOrient,loop:o.loop},e=null!=(n=o.value)?n:o.v;return void 0!==e&&"animated"===t.kind&&(t.base=e),t}const a=null!=(r=o.value)?r:o.v;if(void 0!==a)return{kind:"static",value:a}}return{kind:"static",value:t}}function Ln(t,e,n,r){var o,i,a,s;const u=t=>(null==r?void 0:r.asString)&&null!=t?String(t):t;if("absent"===n.kind)return;if("static"===n.kind)return void(t[e]=u(n.value));const c=t.animate&&"object"==typeof t.animate&&!Array.isArray(t.animate)?t.animate:void 0,f=l({},c||{}),d={keyframes:n.keyframes};void 0!==n.loop&&(d.loop=n.loop),void 0!==n.autoOrient&&(d.autoOrient=n.autoOrient),f[e]=d,t.animate=f;const h=null!=(s=null!=(i=n.base)?i:null==(o=n.keyframes[0])?void 0:o.value)?s:null==(a=n.keyframes[0])?void 0:a.v;void 0!==h&&(t[e]=u(h))}function En(t){if(!t||"object"!=typeof t)return t;const e=t;if(void 0===e.t&&void 0===e.v&&void 0===e.e&&void 0===e.to&&void 0===e.ti)return t;const n=l({},e);return void 0===n.time&&void 0!==e.t&&(n.time=e.t),void 0===n.value&&void 0!==e.v&&(n.value=e.v),void 0===n.easing&&void 0!==e.e&&(n.easing=e.e),void 0===n.tangentOut&&void 0!==e.to&&(n.tangentOut=e.to),void 0===n.tangentIn&&void 0!==e.ti&&(n.tangentIn=e.ti),n}function Bn(t,e){const n={value:e};return void 0!==t.time&&(n.time=t.time),void 0!==t.easing&&(n.easing=t.easing),void 0!==t.tangentOut&&(n.tangentOut=t.tangentOut),void 0!==t.tangentIn&&(n.tangentIn=t.tangentIn),n}function Vn(t,e,n){if(!e)return t;delete t.transform;let r=t;return r=Rn(r,e.origin,!0),r=Wn(r,"scale",e.scale,n),r=Wn(r,"skew",e.skew,n),r=Wn(r,"rotate",e.rotate,n),r=Rn(r,e.origin,!1),!function(t){if(!t||"object"!=typeof t)return!1;const e=t;return!!e.autoOrient||Array.isArray(e.keyframes)&&e.keyframes.some(t=>t.tangentOut||t.tangentIn)}(e.translate)?r=Wn(r,"translate",e.translate,n):(r=Rn(r,e.origin,!0),r=Wn(r,"translate",e.translate,n),r=Rn(r,e.origin,!1)),r!==t&&t.id&&(r.id=t.id,delete t.id),r}function Wn(t,e,n,r){if(void 0===n)return t;const o=Un(n);if("static"===o.kind)return{type:"g",transform:{value:Tn(e,o.value,void 0)},children:[t]};if("animated"===o.kind){const n={keyframes:o.keyframes.map(t=>Bn(t,Tn(e,t.value,void 0)))};return o.autoOrient&&(n.autoOrient=!0),void 0!==o.loop&&(n.loop=o.loop),{type:"g",animate:{transform:n},children:[t]}}return t}function Rn(t,e,n){if(void 0===e)return t;const r=Un(e),o=t=>n?[-t[0],-t[1]]:t;if("absent"===r.kind)return t;if("static"===r.kind)return 0===r.value[0]&&0===r.value[1]?t:{type:"g",transform:{value:{translate:o(r.value)}},children:[t]};if("animated"===r.kind){const e={keyframes:r.keyframes.map(t=>Bn(t,{translate:o(t.value)}))};return void 0!==r.loop&&(e.loop=r.loop),{type:"g",animate:{transform:e},children:[t]}}return t}function Gn(t,e){return"_lw_"+e+"_"+t.nextId++}function Zn(t){return"string"==typeof t?t.replace(/^#/,""):void 0}function Kn(t,e){var n;"string"==typeof t.id&&e.set(t.id,t),null==(n=t.children)||n.forEach(t=>Kn(t,e))}var qn=Mn;function Qn(t,e,n){var r,o,i;if("use"===t.type&&"content"===(null==(o=null==(r=t.effects)?void 0:r.clone)?void 0:o.type)){const r=Zn(t.effects.clone.sourceId);"string"==typeof r&&r&&!e.contentRefInnerIds.has(r)&&e.contentRefInnerIds.set(r,n(r))}null==(i=t.children)||i.forEach(t=>Qn(t,e,n))}function Xn(t,e,n,r,o){const i=function(t,e){var n,r,o;const i={};let a=!1;const s=null==(n=t.animate)?void 0:n.transform;if(s&&"object"==typeof s&&Array.isArray(s.keyframes)){const e=s.keyframes;if(e.some(t=>t.value&&t.value.translate)){const n=Yn(s),r={keyframes:e.map(t=>{const e=t.value||{},r={};void 0!==e.translate&&(r.translate=e.translate),n&&void 0!==e.origin&&(r.origin=e.origin);const o={value:r};return void 0!==t.time&&(o.time=t.time),void 0!==t.easing&&(o.easing=t.easing),void 0!==t.tangentOut&&(o.tangentOut=t.tangentOut),void 0!==t.tangentIn&&(o.tangentIn=t.tangentIn),o})};s.autoOrient&&(r.autoOrient=!0);const o=s.loop;void 0!==o&&(r.loop=o),i.animate={transform:r};const l=e.some(t=>{const e=t.value||{};return void 0!==e.rotate||void 0!==e.scale}),u=e.map(t=>{const e=t.value||{},r={};void 0!==e.rotate&&(r.rotate=e.rotate),void 0!==e.scale&&(r.scale=e.scale),void 0===e.origin||n&&!l||(r.origin=e.origin);const o={value:r};return void 0!==t.time&&(o.time=t.time),void 0!==t.easing&&(o.easing=t.easing),o});if(u.every(t=>0===Object.keys(t.value).length))delete t.animate.transform,t.animate&&0===Object.keys(t.animate).length&&delete t.animate;else{const e={keyframes:u};void 0!==o&&(e.loop=o),t.animate.transform=e}a=!0}}const u=void 0!==(null==e?void 0:e.translate),c=a||u,f=a&&Yn((null==(r=t.animate)?void 0:r.transform)||void 0)||a&&Yn((null==(o=i.animate)?void 0:o.transform)||void 0);if("string"==typeof t.transform){const e=function(t){const e=[],n=/(translate|rotate|scale|matrix|skewX|skewY)\(([^)]*)\)/g;let r;for(;r=n.exec(t);)e.push({name:r[1],full:r[0]});if(!e.length)return{rest:t||void 0};if(e.every(t=>"translate"===t.name))return{translate:e.map(t=>t.full).join("")};const o=e[0],i=e[e.length-1];if("translate"===i.name&&"translate"===o.name){const n=Jn(i.full),r=Jn(o.full),a=-n[0],s=-n[1],l=r[0]-a,u=r[1]-s;if(0===l&&0===u)return{rest:t};return{translate:"translate("+l+","+u+")",rest:"translate("+a+","+s+")"+e.slice(1).map(t=>t.full).join("")}}if("translate"===i.name)return{rest:t};const a=[];let s=0;for(;s<e.length&&"translate"===e[s].name;)a.push(e[s].full),s++;if(!a.length)return{rest:t};const l=e.slice(s).map(t=>t.full).join("");return{translate:a.join(""),rest:l||void 0}}(t.transform);c?void 0!==e.translate?e.rest?t.transform=e.rest:delete t.transform:!function(t){const e=/(translate|rotate|scale|matrix|skewX|skewY)\(([^)]*)\)/g,n=[];let r;for(;r=e.exec(t);)n.push({name:r[1],full:r[0]});if(1!==n.length)return!1;if("translate"===n[0].name)return!0;if("matrix"!==n[0].name)return!1;const o=/matrix\(([^)]*)\)/.exec(n[0].full);if(!o)return!1;const i=o[1].split(/[\s,]+/).filter(Boolean).map(Number);return i.length>=4&&1===i[0]&&0===i[1]&&0===i[2]&&1===i[3]}(t.transform)?f&&function(t){const e=/(translate|rotate|scale|matrix|skewX|skewY)\(([^)]*)\)/g;let n,r=0,o=!1;for(;n=e.exec(t);)r++,"matrix"===n[1]&&(o=!0);return 1===r&&o}(t.transform)&&delete t.transform:delete t.transform:e.translate&&(i.transform=e.translate,e.rest?t.transform=e.rest:delete t.transform)}else if(t.transform&&"object"==typeof t.transform&&!Array.isArray(t.transform)&&!t.transform.keyframes&&!t.transform.kfs){const e=t.transform.value,n=!(!e||"object"!=typeof e),r=n?e:t.transform,o=t=>n?{value:t}:t;if(Array.isArray(r.translate)){const e=l({},r);delete e.translate;const n=Object.keys(e).length>0;c||(i.transform=o({translate:r.translate})),n?t.transform=o(e):delete t.transform}}return i}(t,e);"string"==typeof t.id&&delete t.id;const{outer:a,inner:s}=function(t){if(!t)return{};const e=Yn(t.translate),n=void 0!==t.rotate||void 0!==t.scale,r={},o={};void 0!==t.translate&&(r.translate=t.translate);e&&void 0!==t.origin&&(r.origin=t.origin);void 0!==t.rotate&&(o.rotate=t.rotate);void 0!==t.scale&&(o.scale=t.scale);void 0!==t.skew&&(o.skew=t.skew);void 0===t.origin||e&&!n||(o.origin=t.origin);return{outer:Object.keys(r).length?r:void 0,inner:Object.keys(o).length?o:void 0}}(e);let u=t;u=Vn(u,s,o);let c={type:"g",id:n,children:[{type:"g",id:r,children:[u]}]};return void 0!==i.transform&&(c.transform=i.transform),void 0!==i.animate&&(c.animate=i.animate),a&&(delete c.id,c=Vn(c,a,o),c.id=n),c}function Jn(t){const e=/translate\(([^)]*)\)/.exec(t);if(!e)return[0,0];const n=e[1].split(/[\s,]+/).filter(Boolean).map(Number);return[n[0]||0,n[1]||0]}function Yn(t){if(!t||"object"!=typeof t)return!1;const e=t;return!!e.autoOrient||!!Array.isArray(e.keyframes)&&e.keyframes.some(t=>t.tangentOut||t.tangentIn)}function Hn(t,e,n,r){if(!e)return t;const o=Gn(n,"grad"),i=function(t,e){const n={type:t.type===et.radial?"radialGradient":"linearGradient",id:e};t.type===et.linear?($n(n,"x1","y1",t.p1),$n(n,"x2","y2",t.p2)):($n(n,"cx","cy",t.c),function(t,e,n){const r=Un(n);if("absent"===r.kind)return;Ln(t,e,r,{asString:!0})}(n,"r",t.r),$n(n,"fx","fy",t.fp));t.gradientUnits&&(n.gradientUnits=t.gradientUnits);t.spreadMethod&&(n.spreadMethod=t.spreadMethod);t.gradientTransform&&(n.gradientTransform=t.gradientTransform);return n.children=function(t){var e,n,r,o;if(!t)return[];const i=Un(t);if("absent"===i.kind)return[];if("static"===i.kind)return Array.isArray(i.value)?i.value.map(tr):[];const a=i.keyframes;if(!a.length)return[];const s=i.loop;let l=0;for(const t of a){const n=null!=(e=t.value)?e:t.v;Array.isArray(n)&&n.length>l&&(l=n.length)}if(!l)return[];const u=null!=(n=a[0].value)?n:a[0].v,c=[];for(let t=0;t<l;t++){const e=null!=(o=null!=(r=null==u?void 0:u[t])?r:er(a,0,t))?o:{offset:t/Math.max(1,l-1),color:"#000000"};c.push({offset:e.offset,color:e.color})}return c.map((t,e)=>function(t,e,n,r,o){var i,a,s,l,u;const c=[],f=[];let d=!1;for(const r of e){const o=null!=(a=null!=(i=r.time)?i:r.t)?a:0,h=null!=(s=r.value)?s:r.v,p=null!=(l=null==h?void 0:h[n])?l:er(e,e.indexOf(r),n);if(!p)continue;const m=null!=(u=r.easing)?u:r.e,v={time:o,value:p.color};void 0!==m&&(v.easing=m),c.push(v);const g={time:o,value:p.offset};void 0!==m&&(g.easing=m),f.push(g),p.offset!==t.offset&&(d=!0)}const h={type:"stop",offset:nr(t.offset),stopColor:t.color},p={};c.length&&(p.stopColor={keyframes:c},void 0!==o&&(p.stopColor.loop=o));d&&f.length&&(p.offset={keyframes:f},void 0!==o&&(p.offset.loop=o));Object.keys(p).length&&(h.animate=p);return h}(t,a,e,0,s))}(t.stops),n}(e,o);return n.defs.push(i),t[r]="url(#"+o+")",t}function $n(t,e,n,r){var o,i,a;const s=Un(r);if("absent"===s.kind)return;if("static"===s.kind)return t[e]=String(s.value[0]),void(t[n]=String(s.value[1]));const l=t=>{const e={keyframes:s.keyframes.map(e=>{const n={time:e.time,value:Array.isArray(e.value)?e.value[t]:void 0};return void 0!==e.easing&&(n.easing=e.easing),n})};return void 0!==s.loop&&(e.loop=s.loop),e},u=null!=(o=t.animate)?o:{};u[e]=l(0),u[n]=l(1),t.animate=u;const c=null!=(a=s.base)?a:null==(i=s.keyframes[0])?void 0:i.value;Array.isArray(c)&&(t[e]=String(c[0]),t[n]=String(c[1]))}function tr(t){return{type:"stop",offset:nr(t.offset),stopColor:t.color}}function er(t,e,n){var r,o;for(let o=e;o>=0;o--){const e=null!=(r=t[o].value)?r:t[o].v;if(null==e?void 0:e[n])return e[n]}for(let r=e+1;r<t.length;r++){const e=null!=(o=t[r].value)?o:t[r].v;if(null==e?void 0:e[n])return e[n]}}function nr(t){return Math.round(1e3*t)/10+"%"}function rr(t){return"string"==typeof t?t:t&&"object"==typeof t&&"string"==typeof t.path?t.path:void 0}function or(t,e,n,r){if(!e)return t;const o=Zn(e.sourceId);if(!o)return r.errors.push("maskedBy.sourceId missing — cannot build mask"),t;const i=Gn(r,"mask");let a={type:"use",href:"#"+o};if(n)a=ir(a,n,r);else if(ur(t))a=function(t,e){var n;const r=e.animate&&"object"==typeof e.animate&&!Array.isArray(e.animate)?e.animate:void 0,o=null==r?void 0:r.transform,i=o&&"object"==typeof o&&Array.isArray(o.keyframes)?o.keyframes:void 0;if(!i||!i.length)return t;const a=[],s=[],c=[];for(const t of i){const e=(null!=(n=t.value)?n:t.v)||{},r=Bn(t,void 0);if(Array.isArray(e.translate)&&a.push(u(l(l({},r),lr(t)),{value:{translate:[-e.translate[0],-e.translate[1]]}})),"number"==typeof e.rotate){const t={rotate:-e.rotate};Array.isArray(e.origin)&&(t.origin=[e.origin[0],e.origin[1]]),s.push(u(l({},r),{value:t}))}if(Array.isArray(e.scale)){const t={scale:[1/e.scale[0],1/e.scale[1]]};Array.isArray(e.origin)&&(t.origin=[e.origin[0],e.origin[1]]),c.push(u(l({},r),{value:t}))}}const f=null==o?void 0:o.loop,d=t=>{const e={keyframes:t};return void 0!==f&&(e.loop=f),e};let h=t;a.length&&(h={type:"g",animate:{transform:d(a)},children:[h]});s.length&&(h={type:"g",animate:{transform:d(s)},children:[h]});c.length&&(h={type:"g",animate:{transform:d(c)},children:[h]});return h}(a,t);else{const e=function(t){if("string"==typeof t.transform){const e=function(t){var e,n,r,o,i,a,s,l,u,c,f,d,h;const p=/([a-zA-Z]+)\s*\(([^)]*)\)/g;let m;const v=[];for(;null!==(m=p.exec(t));){const t=m[2].split(/[\s,]+/).filter(t=>t.length>0).map(Number);v.push({name:m[1],args:t})}if(!v.length)return;const g=v[v.length-1];if("translate"===g.name)for(let t=v.length-2;t>=0;t--){const c=v[t];if("translate"!==c.name)continue;const f=null!=(e=c.args[0])?e:0,d=null!=(n=c.args[1])?n:0,h=null!=(r=g.args[0])?r:0,p=null!=(o=g.args[1])?o:0;if(h!==-f||p!==-d)continue;const m={};m.origin=[f,d];for(let e=0;e<t;e++)if("translate"===v[e].name){const t=null!=(i=v[e].args[0])?i:0,n=null!=(a=v[e].args[1])?a:0;m.translate=m.translate?[m.translate[0]+t,m.translate[1]+n]:[t,n]}for(let e=t+1;e<v.length-1;e++){const t=v[e];if("rotate"===t.name)m.rotate=(null!=(s=m.rotate)?s:0)+(null!=(l=t.args[0])?l:0);else if("scale"===t.name){const e=null!=(u=t.args[0])?u:1,n=t.args.length>1?t.args[1]:e;m.scale=m.scale?[m.scale[0]*e,m.scale[1]*n]:[e,n]}}return m}let y,b,k;for(const t of v)if("translate"===t.name){const e=null!=(c=t.args[0])?c:0,n=null!=(f=t.args[1])?f:0;y=y?[y[0]+e,y[1]+n]:[e,n]}else if("rotate"===t.name)b=(null!=b?b:0)+(null!=(d=t.args[0])?d:0);else if("scale"===t.name){const e=null!=(h=t.args[0])?h:1,n=t.args.length>1?t.args[1]:e;k=k?[k[0]*e,k[1]*n]:[e,n]}const A={};y&&(A.translate=y);void 0!==b&&(A.rotate=b);k&&(A.scale=k);return Object.keys(A).length?A:void 0}(t.transform);if(!e)return;const n={};return e.translate&&(n.translate=e.translate),void 0!==e.rotate&&(n.rotate=e.rotate),e.scale&&(n.scale={value:e.scale}),e.origin&&(n.origin=e.origin),Object.keys(n).length?n:void 0}if(t.transform&&"object"==typeof t.transform&&!t.transform.keyframes&&!t.transform.kfs){const e=t.transform.value,n=e&&"object"==typeof e?e:t.transform;if(n&&"object"==typeof n){const t={};return Array.isArray(n.translate)&&(t.translate=n.translate),"number"==typeof n.rotate&&(t.rotate=n.rotate),"number"==typeof n.skew&&(t.skew=n.skew),Array.isArray(n.scale)&&(t.scale={value:n.scale}),Array.isArray(n.origin)&&(t.origin=n.origin),Object.keys(t).length?t:void 0}}return}(t);e&&(a=ir(a,e,r))}const s=void 0===n&&!function(t){return"string"==typeof t.transform||(!(!t.transform||"object"!=typeof t.transform)||ur(t))}(t);a=function(t,e,n,r,o){const i=r.idMap.get(n),a=r.maskAncestorChains.get(e)||[],s=o?hr(e,r):void 0,l=s?[...a,s]:a,u=i&&r.maskAncestorChains.get(i)||[];if(!l.length&&!u.length)return t;const c=new Set;for(const t of l)if(t.translateKeyframes)for(const e of t.translateKeyframes)c.add(e.time);for(const t of u)if(t.translateKeyframes)for(const e of t.translateKeyframes)c.add(e.time);if(!(c.size>0)){const e=cr(l),n=cr(u),r=n[0]-e[0],o=n[1]-e[1];return 0===r&&0===o?t:{type:"g",transform:"translate("+r+","+o+")",children:[t]}}const f=Array.from(c).sort((t,e)=>t-e);return{type:"g",animate:{transform:{keyframes:f.map(t=>{const e=fr(l,t),n=fr(u,t);return{time:t,value:{translate:[n[0]-e[0],n[1]-e[1]]}}})}},children:[t]}}(a,t,o,r,s);const c={type:"mask",id:i,children:[a]};return e.maskType&&(c.maskType=e.maskType),e.maskUnits&&(c.maskUnits=e.maskUnits),e.maskContentUnits&&(c.maskContentUnits=e.maskContentUnits),void 0!==e.x&&(c.x=String(e.x)),void 0!==e.y&&(c.y=String(e.y)),void 0!==e.width&&(c.width=String(e.width)),void 0!==e.height&&(c.height=String(e.height)),r.defs.push(c),t.mask="url(#"+i+")",t}function ir(t,e,n){if(!e)return t;const r=function(t,e){var n;const r=Un(t);if("absent"!==r.kind)return"static"===r.kind?r.value:(e.warnings.push("transformBy.origin: animated origin approximated by its first keyframe"),null==(n=r.keyframes[0])?void 0:n.value)}(e.origin,n);let o=t;return o=ar(o,"translate",e.translate,void 0,n),o=ar(o,"rotate",e.rotate,r,n),o=ar(o,"scale",e.scale,r,n),o}function ar(t,e,n,r,o){if(void 0===n)return t;const i=Un("scale"===e&&Array.isArray(n)?[n[0]/100,n[1]/100]:n);if("static"===i.kind)return{type:"g",transform:{value:Tn(e,sr(e,i.value),r)},children:[t]};if("animated"===i.kind){const n={keyframes:i.keyframes.map(t=>{const n=Bn(t,Tn(e,sr(e,t.value),r));return"translate"===e?l(l({},n),lr(t)):n})};return void 0!==i.loop&&(n.loop=i.loop),{type:"g",animate:{transform:n},children:[t]}}return t}function sr(t,e){return"translate"===t?[-e[0],-e[1]]:"rotate"===t?-e:[1/e[0],1/e[1]]}function lr(t){var e,n;const r={},o=null!=(e=t.tangentOut)?e:t.to,i=null!=(n=t.tangentIn)?n:t.ti;return Array.isArray(o)&&(r.tangentOut=[-o[0],-o[1]]),Array.isArray(i)&&(r.tangentIn=[-i[0],-i[1]]),r}function ur(t){const e=t.animate&&"object"==typeof t.animate&&!Array.isArray(t.animate)?t.animate:void 0;return!(!e||!e.transform)}function cr(t){let e=0,n=0;for(const r of t)r.translate&&(e+=r.translate[0],n+=r.translate[1]);return[e,n]}function fr(t,e){let n=0,r=0;for(const o of t)if(o.translateKeyframes&&o.translateKeyframes.length){const t=dr(o.translateKeyframes,e);n+=t[0],r+=t[1]}else o.translate&&(n+=o.translate[0],r+=o.translate[1]);return[n,r]}function dr(t,e){if(e<=t[0].time)return t[0].value;if(e>=t[t.length-1].time)return t[t.length-1].value;for(let n=1;n<t.length;n++)if(e<=t[n].time){const r=t[n-1],o=t[n],i=(e-r.time)/(o.time-r.time);return[r.value[0]+(o.value[0]-r.value[0])*i,r.value[1]+(o.value[1]-r.value[1])*i]}return t[t.length-1].value}function hr(t,e){var n,r,o;const i=t.transform,a=t.animate&&"object"==typeof t.animate&&!Array.isArray(t.animate)?t.animate.transform:void 0;if(void 0===i&&!a)return;const s={};if("string"==typeof i){const t=function(t,e){const n=/([a-zA-Z]+)\s*\(([^)]*)\)/g;let r,o=0,i=0,a=!1,s=!1;for(;null!==(r=n.exec(t));){const t=r[1],e=r[2].split(/[\s,]+/).filter(t=>t.length>0).map(Number);"translate"===t?(o+=e[0]||0,i+=e[1]||0,a=!0):s=!0}s&&e.warnings.push("maskedBy ancestor: non-translate transform in string ignored: "+t);return a?[o,i]:void 0}(i,e);t&&(s.translate=t)}else if(i&&"object"==typeof i&&!i.keyframes&&!i.kfs){const t=i.value,n=t&&"object"==typeof t?t:i;n&&"object"==typeof n&&Array.isArray(n.translate)&&(s.translate=[n.translate[0]||0,n.translate[1]||0]),!n||void 0===n.rotate&&void 0===n.scale&&void 0===n.skew||e.warnings.push("maskedBy ancestor: non-translate transform parts ignored (rotate/scale not yet supported)")}if(a&&Array.isArray(a.keyframes)){const t=a.keyframes,i=[];for(const a of t){const t=null!=(n=a.value)?n:a.v,s=null!=(o=null!=(r=a.time)?r:a.t)?o:0;t&&"object"==typeof t&&Array.isArray(t.translate)&&(i.push({time:s,value:[t.translate[0]||0,t.translate[1]||0]}),void 0===t.rotate&&void 0===t.scale&&void 0===t.skew||e.warnings.push("maskedBy ancestor: animated non-translate parts ignored"))}i.length&&(s.translateKeyframes=i)}return s.translate||s.translateKeyframes?s:void 0}var pr="content";function mr(t,e,n){if(!e)return;const r=Zn(e.sourceId);if(!r)return void(e.type===pr&&n.errors.push("clone: content ref missing sourceId"));const o=e.type===pr&&n.contentRefInnerIds.get(r)||r;t.href="#"+o}function vr(t,e){const n={};return void 0!==t.translate&&(n.translate=gr(t.translate,t=>[t[0]*e,t[1]*e])),void 0!==t.rotate&&(n.rotate=gr(t.rotate,t=>t*e)),void 0!==t.skew&&(n.skew=gr(t.skew,t=>t*e)),void 0!==t.scale&&(n.scale=function(t,e){const n=t=>[Math.pow(t[0],e),Math.pow(t[1],e)];return gr(t,n,!0)}(t.scale,e)),void 0!==t.origin&&(n.origin=t.origin),Object.keys(n).length?n:void 0}function gr(t,e,n=!1){const r=Un(t);if("absent"===r.kind)return t;if("static"===r.kind){const o=e(r.value);return("number"==typeof t||Array.isArray(t))&&!n?o:{value:o}}const o={keyframes:r.keyframes.map(t=>t&&void 0!==t.value?u(l({},t),{value:e(t.value)}):t)};return void 0!==r.loop&&(o.loop=r.loop),void 0!==r.autoOrient&&(o.autoOrient=r.autoOrient),void 0!==r.base&&(o.value=e(r.base)),o}function yr(t){var e,n;return{start:null!=(e=t.start)?e:0,stretch:null!=(n=t.stretch)?n:1}}function br(t,e,n){const[r,o]=e;if(!Number.isFinite(r)||!Number.isFinite(o))return void n.warnings.push("retime: timeCrop is not a pair of finite numbers — ignored");const i=o<=r?[{time:0,value:0}]:[...r>0?[{time:Math.max(0,r-1),value:0}]:[],{time:Math.max(0,r),value:1},{time:o,value:1},{time:o+1,value:0}],a=l({},t);for(const e of Object.keys(t))delete t[e];t.type="g",t.children=[a],t.animate={opacity:{keyframes:i}}}function kr(t,e){return{start:e.start+e.stretch*t.start,stretch:e.stretch*t.stretch}}function Ar(t){var e,n;return null==(n=null==(e=t.effects)?void 0:e.clone)?void 0:n.retime}function wr(t){var e;const n=null==(e=t.effects)?void 0:e.clone;n&&(delete n.retime,0===Object.keys(n).length&&delete t.effects.clone,t.effects&&0===Object.keys(t.effects).length&&delete t.effects)}function xr(t,e,n){const r=Zn(t.href);if(!r)return void n.errors.push("retime: <use> has no href to follow");const o=jr(r,e,n,new Set);o&&(t.href="#"+o)}function jr(t,e,n,r){if(r.has(t))return void n.errors.push('retime: loop via "'+t+'"');const o=n.idMap.get(t);if(!o)return void n.warnings.push('retime: target "'+t+'" not found');const i=qn(o);if(function(t,e){Sn(t,()=>Gn(e,"retimed"))}(i,n),"use"===o.type?Mr(i,e.start,e.stretch):Or(i,e.start,e.stretch),wr(i),"use"===o.type&&o.href){const a=Zn(o.href);if(a){const s=Ar(o),l=s?kr(yr(s),e):e,u=new Set(r);u.add(t);const c=jr(a,l,n,u);c&&(i.href="#"+c)}}else!function(t,e,n,r,o){const i=t=>{var a;const s=Ar(t);if("use"===t.type&&s&&t.href){const i=Zn(t.href);if(i){const a=kr(yr(s),e),l=new Set(r);l.add(o);const u=jr(i,a,n,l);u&&(t.href="#"+u)}wr(t)}null==(a=t.children)||a.forEach(i)};i(t)}(i,e,n,r,t);return n.defs.push(i),"string"==typeof i.id&&n.idMap.set(i.id,i),"string"==typeof i.id?i.id:void 0}function Or(t,e,n){var r;Mr(t,e,n),null==(r=t.children)||r.forEach(t=>Or(t,e,n))}function Mr(t,e,n){const r=t=>{for(const r of t)"number"==typeof r.time&&(r.time=e+r.time*n)};if(t.transform&&"object"==typeof t.transform&&Array.isArray(t.transform.keyframes)&&r(t.transform.keyframes),t.animate&&"object"==typeof t.animate)for(const e of Object.keys(t.animate)){const n=t.animate[e];n&&Array.isArray(n.keyframes)&&r(n.keyframes)}}var Sr=/[MmLlHhVvCcSsQqTtAaZz]/;function Pr(t,e,n){return{P1:[t[0]+2/3*(e[0]-t[0]),t[1]+2/3*(e[1]-t[1])],P2:[n[0]+2/3*(e[0]-n[0]),n[1]+2/3*(e[1]-n[1])]}}function _r(t){const e=function(t){const e=function(t){const e=[],n=/([MmLlHhVvCcSsQqTtAaZz])|(-?\d*\.?\d+(?:[eE][-+]?\d+)?)/g;let r;for(;null!==(r=n.exec(t));)e.push(r[0]);return e}(t),n=[];let r=0,o=0,i=0,a=0,s=0,l=0,u=0,c=0,f=0,d="";const h=()=>parseFloat(e[r++]),p=(t,e,r)=>{const a=[o,i],s=we(a,t,e,r,48);n.push({P0:a,P1:t,P2:e,P3:r,lut:s,len:s.ds[s.ds.length-1]}),o=r[0],i=r[1]},m=(t,e)=>{p([o+(t-o)/3,i+(e-i)/3],[o+2*(t-o)/3,i+2*(e-i)/3],[t,e])};for(;r<e.length;){let t=e[r];Sr.test(t)?r++:t="M"===d?"L":"m"===d?"l":d;const n=t>="a",v=t.toUpperCase();if("Z"!==v){if("M"===v){const e=h()+(n?o:0),r=h()+(n?i:0);o=e,i=r,a=e,s=r,d=t;continue}if("L"===v)m(h()+(n?o:0),h()+(n?i:0));else if("H"===v)m(h()+(n?o:0),i);else if("V"===v)m(o,h()+(n?i:0));else if("C"===v){const t=[h()+(n?o:0),h()+(n?i:0)],e=[h()+(n?o:0),h()+(n?i:0)],r=[h()+(n?o:0),h()+(n?i:0)];l=e[0],u=e[1],p(t,e,r)}else if("S"===v){const t="C"===d.toUpperCase()||"S"===d.toUpperCase()?[2*o-l,2*i-u]:[o,i],e=[h()+(n?o:0),h()+(n?i:0)],r=[h()+(n?o:0),h()+(n?i:0)];l=e[0],u=e[1],p(t,e,r)}else if("Q"===v){const t=[h()+(n?o:0),h()+(n?i:0)],e=[h()+(n?o:0),h()+(n?i:0)];c=t[0],f=t[1];const{P1:r,P2:a}=Pr([o,i],t,e);p(r,a,e)}else if("T"===v){const t="Q"===d.toUpperCase()||"T"===d.toUpperCase()?[2*o-c,2*i-f]:[o,i],e=[h()+(n?o:0),h()+(n?i:0)];c=t[0],f=t[1];const{P1:r,P2:a}=Pr([o,i],t,e);p(r,a,e)}else{if("A"!==v){r++;continue}r+=5,m(h()+(n?o:0),h()+(n?i:0))}d=t}else m(a,s),o=a,i=s,d=t}return n.length?n:null}(t);if(!e)return null;const n=new Float64Array(e.length+1);for(let t=0;t<e.length;t++)n[t+1]=n[t]+e[t].len;const r=n[e.length],o=e[0].P0,i=e[e.length-1].P3,a=Math.hypot(i[0]-o[0],i[1]-o[1])<.001,s=t=>{let r=0;for(;r<e.length-1&&t>n[r+1];)r++;const o=e[r],i=t-n[r],a=o.len>0?function(t,e){const{ts:n,ds:r}=t,o=r.length-1;if(e<=0)return n[0];if(e>=r[o])return n[o];let i=1,a=o;for(;i<a;){const t=i+a>>>1;r[t]<e?i=t+1:a=t}const s=r[a-1],l=r[a]-s,u=l>0?(e-s)/l:0;return n[a-1]+u*(n[a]-n[a-1])}(o.lut,i):0,[s,l]=ye(o.P0,o.P1,o.P2,o.P3,a),[u,c]=ke(o.P0,o.P1,o.P2,o.P3,a);return{x:s,y:l,angle:Math.atan2(c,u)}};return{totalLength:r,closed:a,sampleAtDistance(t){if(a&&r>0&&(t<0||t>r))return s((t%r+r)%r);if(!a&&(t<0||t>r)){const e=t<0?0:r,n=s(e),o=t-e;return{x:n.x+Math.cos(n.angle)*o,y:n.y+Math.sin(n.angle)*o,angle:n.angle}}return s((o=r,(e=t)<(n=0)?n:e>o?o:e));var e,n,o}}}function zr(t){const e=Un(t);if("static"===e.kind&&"number"==typeof e.value)return{min:e.value,max:e.value};if("animated"===e.kind&&e.keyframes.length){const t=e.keyframes.map(t=>Number(t.value)||0);return{min:Math.min(...t),max:Math.max(...t)}}return{min:0,max:0}}function Ir(t){let e=0,n=16;const r=t=>{var o,i;const a=parseFloat(String(null!=(o=t.fontSize)?o:""))||0;a&&(n=Math.max(n,a));const s=null!=(i=t.text)?i:t.textContent;if("string"==typeof s&&(e+=s.length),t.children)for(const e of t.children)r(e)};return r(t),e*n}var Nr=t=>Math.round(1e3*t)/1e3;function Cr(t,e){if(!e||null==t)return t;const n=Un(t);if("absent"===n.kind)return t;if("static"===n.kind)return"number"==typeof t?n.value+e:{value:n.value+e};const r={keyframes:n.keyframes.map(t=>u(l({},t),{value:(Number(t.value)||0)+e}))};return void 0!==n.loop&&(r.loop=n.loop),void 0!==n.autoOrient&&(r.autoOrient=n.autoOrient),void 0!==n.base&&(r.value=n.base+e),r}function Fr(t,e){var n;if("clip"===e.pathOverflow)return{d:t,startShift:0};const r=_r(t);if(!r||r.closed||r.totalLength<=0)return{d:t,startShift:0};const o=r.totalLength,i=.15*o,a=zr(e.startOffset),s=zr(e.textLength).max||(null!=(n=e.advance)?n:0),l=Math.max(0,-a.min),u=Math.max(0,a.max+s-o),c=l>0?l+i:0,f=u>0?u+i:0;if(f<=0&&c<=0)return{d:t,startShift:0};const d=r.sampleAtDistance(0),h=r.sampleAtDistance(o);let p=t;if(c>0){const e=d.x-Math.cos(d.angle)*c,n=d.y-Math.sin(d.angle)*c,r=t.replace(/^\s*[Mm]\s*-?[\d.]+[\s,]+-?[\d.]+/,"");p="M"+Nr(e)+","+Nr(n)+"L"+Nr(d.x)+","+Nr(d.y)+r}if(f>0){const t=h.x+Math.cos(h.angle)*f,e=h.y+Math.sin(h.angle)*f;p+="L"+Nr(t)+","+Nr(e)}return{d:p,startShift:c}}function Dr(t,e,n){null!=n&&Ln(t,e,Un(n),{asString:!0})}var Tr=(t,e,n)=>{const r={type:t};for(const t in e)void 0!==e[t]&&(r[t]=e[t]);const o=Array.isArray(n)?n.filter(t=>null!=t):null!=n?[n]:[];return o.length&&(r.children=o),r};function Ur(t,e){return Math.round(t)===t?""+Math.round(t):t.toFixed(e)}function Lr(t,e){let n="";for(let r=0;r<t.length;r++){const o=Ur(t[r],e);r>0&&45!==o.charCodeAt(0)&&(n+=" "),n+=o}return n}function Er(t,e,n){return[t[0]*e+t[2]*n+t[4],t[1]*e+t[3]*n+t[5]]}var Br=/([MLCQZ])|(-?\d*\.?\d+(?:e[-+]?\d+)?)/gi;function Vr(t,e,n=2){const r=[];let o;for(Br.lastIndex=0;null!==(o=Br.exec(t));)r.push(o[0]);let i="",a=0;const s=()=>parseFloat(r[a++]);for(;a<r.length;){const t=r[a++];if("M"===t||"L"===t){const[r,o]=Er(e,s(),s());i+=t+Lr([r,o],n)}else if("C"===t){const[t,r]=Er(e,s(),s()),[o,a]=Er(e,s(),s()),[l,u]=Er(e,s(),s());i+="C"+Lr([t,r,o,a,l,u],n)}else if("Q"===t){const[t,r]=Er(e,s(),s()),[o,a]=Er(e,s(),s());i+="Q"+Lr([t,r,o,a],n)}else"Z"!==t&&"z"!==t||(i+="Z")}return i}var Wr=["fontFamily","fontSize","fontWeight","fontStyle","textAnchor","letterSpacing","wordSpacing","textDecoration","textTransform","whiteSpace","x","y","dx","dy","lengthAdjust","fill","stroke","strokeWidth","effects",X,J,"xml:space"];function Rr(t){if("number"==typeof t)return t;if("string"==typeof t){const e=parseFloat(t);return isNaN(e)?void 0:e}}function Gr(t){return"string"==typeof t?t:void 0}function Zr(t,e){var n,r,o,i,a,s,l;return{fontFamily:null!=(n=Gr(t.fontFamily))?n:e.fontFamily,fontSize:null!=(r=Rr(t.fontSize))?r:e.fontSize,fill:null!=(o=t.fill)?o:e.fill,stroke:null!=(i=t.stroke)?i:e.stroke,strokeWidth:null!=(a=t.strokeWidth)?a:e.strokeWidth,letterSpacing:null!=(s=Rr(t.letterSpacing))?s:e.letterSpacing,wordSpacing:null!=(l=Rr(t.wordSpacing))?l:e.wordSpacing}}function Kr(t){var e,n,r;return{fontFamily:Gr(t.fontFamily),fontSize:null!=(e=Rr(t.fontSize))?e:16,fill:t.fill,stroke:t.stroke,strokeWidth:t.strokeWidth,letterSpacing:null!=(n=Rr(t.letterSpacing))?n:0,wordSpacing:null!=(r=Rr(t.wordSpacing))?r:0}}function qr(t){const e={};return void 0!==t.fill&&(e.fill=t.fill),void 0!==t.stroke&&(e.stroke=t.stroke),void 0!==t.strokeWidth&&(e.strokeWidth=t.strokeWidth),e}function Qr(t,e,n,r){var o;const i=t.fontFamily?e[t.fontFamily]:n;return i||null==r||r.push('textGlyphs: no glyphs for font "'+(null!=(o=t.fontFamily)?o:"")+'"'),i}function Xr(t){const e=Object.keys(t);return 1===e.length?t[e[0]]:void 0}function Jr(t,e){if(t<=0||e<=0)return"";const n=.08,r=t*n,o=.92*t,i=.92*-e,a=o-r,s=-i,l=Math.max(1,.12*Math.min(a,s)),u="M"+r+" 0L"+o+" 0L"+o+" "+i+"L"+r+" "+i+"Z";if(a<=2*l||s<=2*l)return u;const c=r+l,f=o-l,d=-l,h=i+l;return u+"M"+c+" "+d+"L"+c+" "+h+"L"+f+" "+h+"L"+f+" "+d+"Z"}function Yr(t,e){var n,r,o,i;const{glyphs:a,create:s=Tr,warnings:l}=e,u=Xr(a),c={x:null!=(n=Rr(t.x))?n:0,y:null!=(r=Rr(t.y))?r:0},f=[],d=[{start:c.x,end:c.x}];let h=0;const p=(t,e)=>{var n;const r=Qr(e,a,u,l),o=(null==r?void 0:r.unitsPerEm)||1e3,i=e.fontSize/o,s=null!=(n=null==r?void 0:r.ascent)?n:.9*o,p=qr(e);for(let n=0;n<t.length;n++){const a=t.charAt(n),l=null==r?void 0:r.glyphs[a];if(l&&l.d)f.push({glyphD:l.d,m:[i,0,0,i,c.x,c.y],paint:p,line:h,x:c.x,y:c.y,scale:i}),c.x+=l.width*i;else if(/\S/.test(a)){const t=l&&l.width>0?l.width:.6*o;f.push({glyphD:Jr(t,s),m:[i,0,0,i,c.x,c.y],paint:p,line:h,x:c.x,y:c.y,scale:i}),c.x+=t*i}else c.x+=(l?l.width:0)*i;c.x+=e.letterSpacing+(" "===a?e.wordSpacing:0),d[h].end=c.x}},m=(t,e)=>{var n,r,o,i;const a=Zr(t,e),s=Rr(t.x),l=Rr(t.y);void 0!==s&&(c.x=s,h=d.length,d.push({start:c.x,end:c.x})),void 0!==l&&(c.y=l),c.x+=null!=(n=Rr(t.dx))?n:0,c.y+=null!=(r=Rr(t.dy))?r:0;const u=null!=(o=Gr(t[J]))?o:Gr(t[X]);if(u&&!(null==(i=t.children)?void 0:i.length)&&p(u,a),t.children)for(const e of t.children)m(e,a)},v=Kr(t);if(t.children)for(const e of t.children)m(e,v);const g=null!=(o=Gr(t[J]))?o:Gr(t[X]);g&&!(null==(i=t.children)?void 0:i.length)&&p(g,v);const y=Gr(t.textAnchor);if("middle"===y||"end"===y)for(const t of f){const e=d[t.line].end-d[t.line].start,n="middle"===y?-e/2:-e;t.m=[t.scale,0,0,t.scale,t.x+n,t.y]}return lo(t,so(f,s,l),s)}function Hr(t,e){var n,a,s,l,u,c;if(null==(n=e.alongPath)?void 0:n.pathD)return function(t,e,n){var r,o;const{glyphs:i,warnings:a,alongPath:s}=n,l=_r(e);if(!l)return null==a||a.push("textGlyphs: unparsable along-path geometry (caret)"),[];const u=Xr(i),c=[];let f=0;const d=(t,e)=>{var n,r,o;const s=Zr(t,e),l=null!=(n=Gr(t[J]))?n:Gr(t[X]);if(l&&!(null==(r=t.children)?void 0:r.length)){const t=Qr(s,i,u,a),e=(null==t?void 0:t.unitsPerEm)||1e3,n=s.fontSize/e,r=(null!=(o=null==t?void 0:t.ascent)?o:.9*e)*n;for(let e=0;e<l.length;e++){const o=l.charAt(e),i=null==t?void 0:t.glyphs[o],a=(i?i.width:0)*n,u=a+s.letterSpacing+(" "===o?s.wordSpacing:0);c.push({advStart:f,advEnd:f+u,glyphW:a,ascent:r,fontSize:s.fontSize}),f+=u}}if(t.children)for(const e of t.children)d(e,s)};d(t,Kr(t));const h=f,p=Un(null==s?void 0:s.textLength),m="animated"===p.kind?Number(null==(r=p.keyframes[0])?void 0:r.value)||0:"static"===p.kind&&Number(p.value)||0,v=m>0&&h>0?m/h:1,g=Un(null==s?void 0:s.startOffset),{along:y,perp:b}=to(t),k=y+("animated"===g.kind?Number(null==(o=g.keyframes[0])?void 0:o.value)||0:"static"===g.kind&&Number(g.value)||0),A=t=>({x:t.x-b*Math.sin(t.angle),y:t.y+b*Math.cos(t.angle),angle:t.angle});return c.map(t=>{const e=k+t.advStart*v,n=k+t.advEnd*v,r=A(l.sampleAtDistance(e)),o=A(l.sampleAtDistance(n)),i=l.sampleAtDistance(k+(t.advStart+t.glyphW/2)*v);return{x:r.x,y:r.y,width:t.advEnd-t.advStart,ascent:t.ascent,fontSize:t.fontSize,endX:o.x,endY:o.y,rotation:180*i.angle/Math.PI}})}(t,e.alongPath.pathD,e);const{glyphs:f,warnings:d}=e,h=Xr(f),p={x:null!=(a=Rr(t.x))?a:0,y:null!=(s=Rr(t.y))?s:0},m=[],v=[{start:p.x,end:p.x}];let g=0;const y=(t,e)=>{var n;const r=Qr(e,f,h,d),o=(null==r?void 0:r.unitsPerEm)||1e3,i=e.fontSize/o,a=(null!=(n=null==r?void 0:r.ascent)?n:.9*o)*i;for(let n=0;n<t.length;n++){const o=t.charAt(n),s=null==r?void 0:r.glyphs[o],l=(s?s.width:0)*i+e.letterSpacing+(" "===o?e.wordSpacing:0);m.push({x:p.x,y:p.y,width:l,ascent:a,fontSize:e.fontSize,line:g}),p.x+=l,v[g].end=p.x}},b=(t,e)=>{var n,r,o,i;const a=Zr(t,e),s=Rr(t.x),l=Rr(t.y);void 0!==s&&(p.x=s,g=v.length,v.push({start:p.x,end:p.x})),void 0!==l&&(p.y=l),p.x+=null!=(n=Rr(t.dx))?n:0,p.y+=null!=(r=Rr(t.dy))?r:0;const u=null!=(o=Gr(t[J]))?o:Gr(t[X]);if(u&&!(null==(i=t.children)?void 0:i.length)&&y(u,a),t.children)for(const e of t.children)b(e,a)},k=Kr(t);if(t.children)for(const e of t.children){const t=m.length;if(b(e,k),m.length===t){const t=Zr(e,k),n=Qr(t,f,h),r=(null==n?void 0:n.unitsPerEm)||1e3;m.push({x:p.x,y:p.y,width:0,ascent:(null!=(l=null==n?void 0:n.ascent)?l:.9*r)*(t.fontSize/r),fontSize:t.fontSize,line:g})}}const A=null!=(u=Gr(t[J]))?u:Gr(t[X]);A&&!(null==(c=t.children)?void 0:c.length)&&y(A,k);const w=Gr(t.textAnchor);if("middle"===w||"end"===w)for(const t of m){const e=v[t.line].end-v[t.line].start;t.x+="middle"===w?-e/2:-e}return m.map(t=>{var e=t,{line:n}=e;return((t,e)=>{var n={};for(var a in t)o.call(t,a)&&e.indexOf(a)<0&&(n[a]=t[a]);if(null!=t&&r)for(var a of r(t))e.indexOf(a)<0&&i.call(t,a)&&(n[a]=t[a]);return n})(e,["line"])})}function $r(t,e,n,r,o=0){const{x:i,y:a,angle:s}=t.sampleAtDistance(e),l=Math.cos(s),u=Math.sin(s),c=r/2;return[n*l,n*u,-n*u,n*l,i-n*l*c-o*u,a-n*u*c+o*l]}function to(t){var e,n,r;return{along:(null!=(e=Rr(t.x))?e:0)+(null!=(n=Rr(t.dx))?n:0),perp:null!=(r=Rr(t.dy))?r:0}}function eo(t,e,n,r,o,i){const{glyphs:a,create:s=Tr,warnings:c}=r,f=e?_r(e):null;if(!f)return null==c||c.push("textGlyphs: unparsable along-path geometry"),null;const d=Xr(a),{cells:h,width:p}=function(t,e,n,r){const o=[];let i=0;const a=(t,s)=>{var l,u,c;const f=Zr(t,s),d=null!=(l=Gr(t[J]))?l:Gr(t[X]);if(d&&!(null==(u=t.children)?void 0:u.length)){const t=Qr(f,e,n,r);if(t){const e=f.fontSize/t.unitsPerEm,n=null!=(c=t.ascent)?c:.9*t.unitsPerEm,r=qr(f);for(let a=0;a<d.length;a++){const s=d.charAt(a),l=t.glyphs[s];if(l&&l.d){const t=l.width*e;o.push({glyphD:l.d,widthEm:l.width,scale:e,paint:r,midBase:i+t/2}),i+=t}else if(/\S/.test(s)){const a=l&&l.width>0?l.width:.6*t.unitsPerEm,s=a*e;o.push({glyphD:Jr(a,n),widthEm:a,scale:e,paint:r,midBase:i+s/2}),i+=s}else i+=(l?l.width:0)*e;i+=f.letterSpacing+(" "===s?f.wordSpacing:0)}}}if(t.children)for(const e of t.children)a(e,f)};return a(t,Kr(t)),{cells:o,width:i}}(t,a,d,c);if(!h.length)return lo(t,[],s);const{along:m,perp:v}=to(t),g=no(n),y=no(o),b=t=>t>0&&p>0?t/p:1,k="clip"===i&&!f.closed;if(g.animated||y.animated){const e=function(t,e){const n=[...t,...e].sort((t,e)=>t-e),r=[];for(const t of n)r.length&&t===r[r.length-1]||r.push(t);return r}(g.times,y.times),n=(t,e)=>m+g.at(e)+b(y.at(e))*t.midBase,r=g.animated?g.loop:y.loop;return lo(t,function(t,e,n,r,o,i,a,s=0){const c=Math.max(e.totalLength/ro,.5),f=t=>t>=0&&t<=e.totalLength,d=[];for(const h of t){const t=[h.scale,0,0,h.scale,-h.scale*(h.widthEm/2),0],p=Vr(h.glyphD,t),m=(t,n)=>{const{x:r,y:o,angle:i}=e.sampleAtDistance(t),a=Math.cos(i),l=Math.sin(i);return{time:n,value:{translate:[io(r-s*l,3),io(o+s*a,3)],rotate:io(180*i/Math.PI,3)}}},v=[],g=[],y=(t,e)=>{v.push(m(t,e)),a&&g.push({time:e,value:f(t)?1:0})};y(n(h,r[0]),r[0]);for(let t=1;t<r.length;t++){const e=r[t-1],o=r[t],i=n(h,e),a=n(h,o),s=Math.min(oo,Math.max(1,Math.ceil(Math.abs(a-i)/c)));for(let t=1;t<=s;t++){const r=e+t/s*(o-e);y(n(h,r),r)}}Qe(v);const b={keyframes:v};void 0!==o&&(b.loop=o);const k={transform:b};if(a&&g.some(t=>0===t.value)){const t={keyframes:g};void 0!==o&&(t.loop=o),k.opacity=t}d.push(i("path",u(l({d:p},ao(h.paint)),{animate:k}),[]))}return d}(h,f,n,e,r,s,k,v),s)}const A=b(y.at(0)),w=m+g.at(0);return lo(t,so((k?h.filter(t=>{const e=w+t.midBase*A;return e>=0&&e<=f.totalLength}):h).map(t=>({glyphD:t.glyphD,paint:t.paint,m:$r(f,w+t.midBase*A,t.scale,t.widthEm,v)})),s,c),s)}function no(t){var e;const n=Un(t);if("animated"===n.kind&&n.keyframes.length>=2){const t=[...n.keyframes].sort((t,e)=>(Number(t.time)||0)-(Number(e.time)||0)),e=t.map(t=>Number(t.time)||0),r=t.map(t=>Number(t.value)||0);return{animated:!0,times:e,loop:n.loop,at(t){if(t<=e[0])return r[0];for(let n=1;n<e.length;n++)if(t<=e[n]){const o=e[n]-e[n-1],i=o>0?(t-e[n-1])/o:1;return r[n-1]+i*(r[n]-r[n-1])}return r[r.length-1]}}}const r="animated"===n.kind?Number(null==(e=n.keyframes[0])?void 0:e.value)||0:"static"===n.kind&&Number(n.value)||0;return{animated:!1,times:[],at:()=>r}}var ro=48,oo=64;function io(t,e){const n=a(10,e);return Math.round(t*n)/n}function ao(t){const e={};return void 0!==t.fill&&(e.fill=t.fill),void 0!==t.stroke&&(e.stroke=t.stroke),void 0!==t.strokeWidth&&(e.strokeWidth=t.strokeWidth),e}function so(t,e,n){var r,o,i;if(!t.length)return null==n||n.push("textGlyphs: nothing to render"),[];const a=new Map;for(const e of t){const t=JSON.stringify([null!=(r=e.paint.fill)?r:null,null!=(o=e.paint.stroke)?o:null,null!=(i=e.paint.strokeWidth)?i:null]),n=Vr(e.glyphD,e.m),s=a.get(t);s?s.d+=n:a.set(t,{paint:e.paint,d:n})}const s=[];for(const{paint:t,d:n}of a.values())s.push(e("path",l({d:n},ao(t)),[]));return s}function lo(t,e,n){const r={};for(const e of Object.keys(t))"type"!==e&&"children"!==e&&-1===Wr.indexOf(e)&&(r[e]=t[e]);if(r.style&&"object"==typeof r.style){const t=l({},r.style);delete t["white-space"],Object.keys(t).length?r.style=t:delete r.style}return n("g",r,e)}function uo(t,e){return e.alongPath?eo(t,e.alongPath.pathD,e.alongPath.startOffset,e,e.alongPath.textLength,e.alongPath.pathOverflow):Yr(t,e)}function co(t,e,n){if(!e)return t;const r=e.subPaths===Q.combined,o=[],i=t=>{if(Array.isArray(t.children)&&t.children.length>0){for(const e of t.children)i(e);return}const e="string"==typeof t.d?t.d:function(t){var e,n,r,o,i,a,s,l,u,c;if("rect"===t.type){const i=Number(null!=(e=t.x)?e:0),a=Number(null!=(n=t.y)?n:0),s=Number(null!=(r=t.width)?r:0),l=Number(null!=(o=t.height)?o:0);return"M"+(i+s)+","+a+"L"+(i+s)+","+(a+l)+"L"+i+","+(a+l)+"L"+i+","+a+"L"+(i+s)+","+a+"z"}if("ellipse"===t.type||"circle"===t.type){const e=Number(null!=(i=t.cx)?i:0),n=Number(null!=(a=t.cy)?a:0),r="circle"===t.type?Number(null!=(s=t.r)?s:0):Number(null!=(l=t.rx)?l:0),o="circle"===t.type?Number(null!=(u=t.r)?u:0):Number(null!=(c=t.ry)?c:0);if(!(r>0&&o>0))return;const f=r*Mo,d=o*Mo,h=(t,e,n,r,o,i)=>"C"+t+","+e+" "+n+","+r+" "+o+","+i;return"M"+(e+r)+","+n+h(e+r,n+d,e+f,n+o,e,n+o)+h(e-f,n+o,e-r,n+d,e-r,n)+h(e-r,n-d,e-f,n-o,e,n-o)+h(e+f,n-o,e+r,n-d,e+r,n)+"z"}return}(t);if(void 0===e)return;const n=cn(e);if(!n.length)return;const r={leaf:t,subpaths:[]};for(const t of n){const e=jo(t);r.subpaths.push({subpath:t,lengthPx:e,startOffsetPx:0})}o.push(r)};if(i(t),!o.length)return t;let a=0;const s=r?[...o].reverse():o;for(const t of s)for(const e of t.subpaths)r||(a=0),e.startOffsetPx=a,a+=e.lengthPx;const c=a;if(r&&c<.001)return t;const f=Un(e.offset),d="absent"===f.kind?{kind:"static",value:0}:f,h=function(t){const e=Un(t);if("animated"!==e.kind)return e;const n=e.keyframes.map(t=>{var e,n,r,o;return{time:null!=(n=null!=(e=t.time)?e:t.t)?n:0,value:null!=(r=t.value)?r:t.v,easing:null!=(o=t.easing)?o:t.e}});if(!n.some(t=>t.value[0]>t.value[1]))return{kind:"animated",keyframes:n.map(t=>({time:t.time,value:t.value,easing:t.easing}))};const r=[];for(let t=1;t<n.length;t++){const e=n[t-1],o=n[t];if((e.value[1]-e.value[0])*(o.value[1]-o.value[0])<0){const t=wo(e,o);null!==t&&t>e.time&&t<o.time&&r.push(Math.round(t))}}const o=Array.from(new Set(r)).sort((t,e)=>t-e),i=[];let a=0;for(const t of n){for(;a<o.length&&o[a]<t.time;){const t=o[a++],e=xo(n,t),r=(e[0]+e[1])/2;i.push({time:t,value:[r,r]})}const e=t.value[0]>t.value[1]?[t.value[1],t.value[0]]:t.value;i.push({time:t.time,value:e,easing:t.easing})}for(;a<o.length;){const t=o[a++],e=xo(n,t),r=(e[0]+e[1])/2;i.push({time:t,value:[r,r]})}return{kind:"animated",keyframes:i}}(e.range),p="absent"===h.kind?{kind:"static",value:[0,1]}:h,m=function(t){var e;if("absent"===t.kind)return[];if("static"===t.kind)return[t.value];const n=[];for(const r of t.keyframes){const t=null!=(e=r.value)?e:r.v;"number"==typeof t&&n.push(t)}return n}(d),v=[m.length?Math.min(...m):0,m.length?Math.max(...m):0];if(1===o.length&&o[0].leaf===t&&1===o[0].subpaths.length){const e=o[0],n=e.subpaths[0],i=r?c:n.lengthPx;if(i<.001)return t;const a=r?n.startOffsetPx/i:0;return function(t,e,n,r,o,i){const a=mo(n,e,r),s=vo(e,r),u=l({},t);return delete u.effects,bo(u,"strokeDasharray",yo(i,s)),bo(u,"strokeDashoffset",yo(o,a)),bo(u,"strokeOpacity",Ao(i)),u}(e.leaf,i,a,v,d,p)}const g=new Map;for(const t of o){const e=[];for(const o of t.subpaths){const i=r?c:o.lengthPx;if(i<.001)continue;const a=r?o.startOffsetPx/i:0;e.push(...ho(t.leaf,o.subpath,i,a,v,d,p,n))}g.set(t.leaf,fo(t.leaf,e))}const y=t=>{const e=g.get(t);return e||(Array.isArray(t.children)&&t.children.length>0?u(l({},t),{children:t.children.map(y)}):t)};return y(t)}function fo(t,e){const n=u(l({},t),{type:"g",children:e});return delete n.d,delete n.strokeDasharray,delete n.strokeDashoffset,delete n.effects,n}function ho(t,e,n,r,o,i,a,s){const l=mo(r,n,o),u=vo(n,o),c=yo(i,l),f=yo(a,u),d=Ao(a),h=function(t){return{type:"path",d:t}}(qt(e));return bo(h,"strokeDasharray",f),bo(h,"strokeDashoffset",c),bo(h,"strokeOpacity",d),[h]}var po=1;function mo(t,e,n){const[r]=go(n);return n=>e*(-n-r+t)+po}function vo(t,e){const[n,r]=go(e),o=r-n+1;return e=>{const n=ge(e[0],0,1),r=ge(e[1],0,1),i=Math.min(n,r),a=Math.max(n,r),s=[0];let l=po;for(let e=0;e<o;e++)s.push(l+i*t),s.push((a-i)*t),l=(1-a)*t;return s.push(l+po),s}}function go(t){return[Math.floor(Math.min(-t[0],-t[1])),Math.ceil(Math.max(-t[0],-t[1]))]}function yo(t,e){if("absent"!==t.kind)return"static"===t.kind?{kind:"static",value:e(t.value)}:{kind:"animated",keyframes:t.keyframes.map(t=>{var n,r,o,i;return{time:null!=(r=null!=(n=t.time)?n:t.t)?r:0,value:e(null!=(o=t.value)?o:t.v),easing:null!=(i=t.easing)?i:t.e}}),loop:t.loop}}function bo(t,e,n){n&&Ln(t,e,n)}var ko=10;function Ao(t){var e,n,r,o,i,a;const s=t=>t[0]===t[1];if("absent"===t.kind)return;if("static"===t.kind)return s(t.value)?{kind:"static",value:0}:void 0;const l=t.keyframes;let u=!1,c=!0;for(const t of l)s(null!=(e=t.value)?e:t.v)?u=!0:c=!1;if(!u)return;if(c)return{kind:"static",value:0};const f=[];for(let t=0;t<l.length;t++){const e=l[t],u=t>0?l[t-1]:void 0,c=t<l.length-1?l[t+1]:void 0,d=null!=(r=null!=(n=e.time)?n:e.t)?r:0,h=s(null!=(o=e.value)?o:e.v),p=u?h&&s(null!=(i=u.value)?i:u.v):h,m=c?h&&s(null!=(a=c.value)?a:c.v):h;p&&!m?(f.push({time:d,value:0}),f.push({time:d+ko,value:1})):!p&&m&&(f.push({time:d-ko,value:1}),f.push({time:d,value:0}))}return f.length<=1?void 0:{kind:"animated",keyframes:f}}function wo(t,e){const n=n=>{const r=(n-t.time)/(e.time-t.time),o=t.value[0]+(e.value[0]-t.value[0])*r;return t.value[1]+(e.value[1]-t.value[1])*r-o};let r=t.time,o=e.time,i=n(r);if(0===i)return r;const a=n(o);if(0===a)return o;if(i*a>0)return null;for(let t=0;t<100;t++){const t=(r+o)/2,e=n(t);if(0===e||Math.abs(o-r)<1e-4)return t;i*e<0?o=t:(r=t,i=e)}return(r+o)/2}function xo(t,e){if(e<=t[0].time)return t[0].value;if(e>=t[t.length-1].time)return t[t.length-1].value;for(let n=1;n<t.length;n++)if(e<=t[n].time){const r=t[n-1],o=t[n],i=(e-r.time)/(o.time-r.time);return[r.value[0]+(o.value[0]-r.value[0])*i,r.value[1]+(o.value[1]-r.value[1])*i]}return t[t.length-1].value}function jo(t){const e=t.v;if(!e||e.length<2)return 0;let n=0;for(let r=0;r<e.length-1;r++)n+=Oo(t,r,r+1);return t.c&&e.length>1&&(n+=Oo(t,e.length-1,0)),n}function Oo(t,e,n){var r,o,i,a;const s=t.v,l=s[e],u=s[n],c=we(l,null!=(o=null==(r=t.o)?void 0:r[e])?o:l,null!=(a=null==(i=t.i)?void 0:i[n])?a:u,u);return c.ds[c.ds.length-1]}var Mo=.5522847498307936;function So(t){var e,n;const r={defs:[],warnings:[],errors:[],idMap:new Map,nextId:0,contentRefInnerIds:new Map,maskAncestorChains:new Map,engine:(null==(e=rt(t))?void 0:e.mode)===C.frames?F.frames:F.waapi,glyphs:null==(n=ot(t))?void 0:n.glyphs},o=qn(t);Kn(o,r.idMap),Qn(o,r,()=>Gn(r,"inner")),function(t,e){const n=new Set,r=t=>{var o,i;const a=Zn(null==(i=null==(o=t.effects)?void 0:o.maskedBy)?void 0:i.sourceId);if("string"==typeof a){n.add(t);const r=e.idMap.get(a);r&&n.add(r)}if(Array.isArray(t.children))for(const e of t.children)r(e)};if(r(t),0===n.size)return;const o=(t,r)=>{if(n.has(t)&&e.maskAncestorChains.set(t,r),Array.isArray(t.children)){const n=hr(t,e),i=n?[...r,n]:r;for(const e of t.children)o(e,i)}};o(t,[])}(o,r);const i=function(t,e){return function(t,e){e.idMap.clear(),Kn(t,e.idMap);const n=[],r=t=>{var e;Ar(t)&&n.push(t),null==(e=t.children)||e.forEach(r)};r(t);const o=new Map;for(const t of n){let n=0;const r=new Set,i=o=>{var a;if(o){if(o!==t&&Ar(o)&&n++,"use"===o.type&&o.href){const t=Zn(o.href);t&&!r.has(t)&&(r.add(t),i(e.idMap.get(t)))}null==(a=o.children)||a.forEach(i)}},a=Zn(t.href);a&&(r.add(a),i(e.idMap.get(a))),o.set(t,n)}n.sort((t,e)=>{var n,r;return(null!=(n=o.get(e))?n:0)-(null!=(r=o.get(t))?r:0)});for(const t of n){const n=Ar(t);if(!n)continue;const r=n.timeCrop;wr(t),xr(t,yr(n),e),r&&br(t,r,e)}}(t,e),t}(Po(o,r),r);return function(t,e){if(!e.length)return;(t.children||(t.children=[])).unshift({type:"defs",children:e})}(i,r.defs),{root:i,defs:r.defs,warnings:r.warnings,errors:r.errors}}function Po(t,e){t.children&&(t.children=t.children.map(t=>Po(t,e)));const n=t.effects,r="string"==typeof t.id?t.id:void 0,o=r?e.contentRefInnerIds.get(r):void 0;if(!n&&!o)return t;const{transformBy:i,repeater:a,maskedBy:s,clipPath:l,trimPath:u,clone:c,fillGradient:f,strokeGradient:d,textPath:h,text:p}=null!=n?n:{};n&&delete t.effects;let m=t,v=!1;if(null==p?void 0:p.useGlyphs)if(h){const t="string"==typeof h.path?h.path:void 0,n=function(t,e,n,r,o,i){return e.glyphs?eo(t,n,r,{glyphs:e.glyphs,warnings:e.warnings},o,i):(e.warnings.push("textGlyphs: no definitions.glyphs"),null)}(m,e,t,h.startOffset,h.textLength,h.pathOverflow);n&&(m=n,v=!0)}else m=function(t,e,n){return(null==e?void 0:e.useGlyphs)?n.glyphs?Yr(t,{glyphs:n.glyphs,warnings:n.warnings}):(n.warnings.push("textGlyphs: no definitions.glyphs — left as native <text>"),t):t}(m,p,e),v=!0;return v||(m=function(t,e,n){var r;if(!e||"string"!=typeof e.path||!e.path)return t;const o=Gn(n,"tpath"),{d:i,startShift:a}=Fr(e.path,{pathOverflow:e.pathOverflow,startOffset:e.startOffset,textLength:e.textLength,advance:Ir(t)});n.defs.push({type:"path",id:o,d:i});const s={type:"textPath",href:"#"+o,children:null!=(r=t.children)?r:[]};return void 0!==e.lengthAdjust&&(s.lengthAdjust=e.lengthAdjust),void 0!==e.method&&(s.method=e.method),void 0!==e.spacing&&(s.spacing=e.spacing),Dr(s,"startOffset",Cr(e.startOffset,a)),Dr(s,"textLength",e.textLength),t.children=[s],t}(m,h,e)),m=function(t,e,n){return Hn(t,e,n,"fill")}(m,f,e),m=function(t,e,n){return Hn(t,e,n,"stroke")}(m,d,e),m=co(m,u,e),m=function(t,e,n){var r,o;if(!e)return t;const i=null!=(r=e.copies)?r:1;if(i<1)return n.errors.push("repeater.copies invalid: "+e.copies),t;const a=t.transform,s=null==(o=t.animate)?void 0:o.transform,l=qn(t);delete l.transform,l.animate&&(delete l.animate.transform,0===Object.keys(l.animate).length&&delete l.animate),delete l.id;const u=[l];for(let t=1;t<i;t++){const r=qn(l),o=vr(e,t),i=o?Vn(r,o,n):r;u.push(i)}const c={type:"g",children:u};return t.id&&(c.id=t.id),void 0!==a&&(c.transform=a),void 0!==s&&(c.animate={transform:s}),c}(m,a,e),m=or(m,s,i,e),m=function(t,e,n){var r,o;if(!e||!e.d&&!e.animate)return t;const i=Gn(n,"clip"),a={type:"path"},s=Un(e.d);if("absent"!==s.kind&&("static"===s.kind?a.d=rr(s.value):(Ln(a,"d",s),void 0!==a.d&&(a.d=rr(a.d)))),e.animate&&!(null==(r=a.animate)?void 0:r.d)){const t=null!=(o=a.animate)?o:{};t.d=e.animate,a.animate=t}return n.defs.push({type:"clipPath",id:i,children:[a]}),t.clipPath="url(#"+i+")",t}(m,l,e),o?(mr(m,c,e),m=Xn(m,i,r,o,e)):m=function(t,e,n,r){return mr(t,e,r),Vn(t,n,r)}(m,c,i,e),(null==c?void 0:c.retime)&&(t.effects={clone:{retime:c.retime}}),r&&e.idMap.set(r,m),m}function _o(t,e,n){var r,o;let i=So(t).root;return i=kn(i,null!=(o=null==(r=rt(i))?void 0:r.duration)?o:de),e===F.waapi&&(i=sn(i,null==n?void 0:n.motionPath),i=zn(i),i=function(t){const e=t=>t.startsWith("#")?t.slice(1):t,n=(t,e)=>{var r;e(t),null==(r=t.children)||r.forEach(t=>n(t,e))};let r=!0;for(;r;){r=!1;const o=new Set;n(t,t=>{"use"===t.type&&"string"==typeof t.href&&o.add(e(t.href))}),n(t,t=>{if(!t.children)return;let e=t.children;"defs"===t.type&&(e=e.filter(t=>!(("g"===t.type||"symbol"===t.type)&&"string"==typeof t.id&&!o.has(t.id)))),e=e.filter(t=>!("defs"===t.type&&(!t.children||0===t.children.length))),e.length!==t.children.length&&(t.children=e,r=!0)})}return t}(i)),i}function zo(t){const e=globalThis;"function"!=typeof e.cancelAnimationFrame?e.clearTimeout(t):e.cancelAnimationFrame(t)}function Io(t,e,n){var r;const o=rt(t)||{},i=xn(t,F.frames),a=o.iterations;let s=1;"number"==typeof a&&(s=a||1),"infinite"===a&&(s=1/0),s<1&&(s=1);const l=+(o.duration||de),u=l&&s?l*(s===1/0?1/0:s):l?(null!=s?s:1)*l:0,c=o.direction||"normal",f=null!=(r=o.fill)?r:"forwards",d="forwards"===f||"both"===f,h="backwards"===f||"both"===f;let p=null,m=!1,v=-(o.delay||0),g=0,y=1,b=!1;const k=o.frameRate,A=k&&k>0?1e3/k:0;let w=0;const x=()=>{const t=g?(Date.now()-g)*y:0;return v+t},j=()=>{let t=x();return Number.isFinite(u)&&t>u&&(t=u),t<0&&(t=0),t};function O(t){let n=function(){const e=l>0?l:1;let n=0,r=0;if(l>0){t=ge(t,0,s*e),r=Math.max(0,Math.ceil(t/e)-1),r=Math.min(r,s-1);n=ge((t-r*e)/e,0,1)}else n=t;const o=c||"normal";let i=n;return"reverse"===o?i=1-n:"alternate"===o?r%2==1&&(i=1-n):"alternate-reverse"===o&&r%2==0&&(i=1-n),i}();for(const t of i||[]){const r=t.animate;if(!r||"object"!=typeof r||Array.isArray(r)){console.warn("Empty or unresolved binding",t);continue}const o=On(r,n*l);for(const[n,r]of Object.entries(o))e.setAttribute(t.id,n,r)}}o.delay&&(o.delay<0?O(j()):h&&O(0));const M=()=>!!m&&(!!e.isConnected()&&(y<0?x()>0:!(Number.isFinite(u)&&j()>=u))),S=t=>{null!==p&&(zo(p),p=null),(t||M())&&(p=function(t){const e=globalThis;return"function"==typeof e.requestAnimationFrame?e.requestAnimationFrame(t):e.setTimeout(t,16)}(()=>{p=null,(()=>{var t,r;if(!e.isConnected())return void P();const o=j(),i=x();if(i<0&&y>0)h&&O(0);else{if(y<0&&i<=0)return P(),O(0),void(b||(b=!0,null==(t=null==n?void 0:n.onFinish)||t.call(n)));if(y>0&&u&&Number.isFinite(u)&&o>=u)return P(),O(d?u:0),void(b||(b=!0,null==(r=null==n?void 0:n.onFinish)||r.call(n)));if(A>0){const t=Date.now();if(w&&t-w<A)return;w=t}O(o)}})(),S()}))},P=()=>{if(!m)return;let t=x();Number.isFinite(u)&&t>u&&(t=u),v=t,g=0,m=!1,null!==p&&(zo(p),p=null),t>=0?O(t):h&&O(0)},_={isReady:()=>!0,getRootElement:()=>null,isPlaying:()=>M(),play:()=>{var t;(()=>{if(!m){if(y>=0)Number.isFinite(u)&&v>=u&&(v=0);else if(v<=0){if(!Number.isFinite(u))return void console.warn("play: cannot start reverse playback of an infinite animation from time 0");v=u}b=!1,m=!0,g=Date.now(),S(!0)}})(),null==(t=null==n?void 0:n.onPlay)||t.call(n)},pause:()=>{var t;P(),null==(t=null==n?void 0:n.onPause)||t.call(n)},cancel:()=>{var t;P(),v=0,g=0,m=!1,b=!1,O(v),null==(t=null==n?void 0:n.onCancel)||t.call(n)},finish:()=>{((t=!0)=>{var e;v=Number.isFinite(u)?u:j(),g=0,m=!1,null!==p&&(zo(p),p=null),O(d?v:0),t&&!b&&(b=!0,null==(e=null==n?void 0:n.onFinish)||e.call(n))})(!0)},setPlaybackRate:t=>{if(!isFinite(t)||0===t)return void console.warn("setPlaybackRate: rate must be finite and non-zero");let e=x();Number.isFinite(u)&&e>u&&(e=u),t<0!=y<0&&(b=!1),y=t,v=e,m&&(g=Date.now())},getCurrentTime:()=>j(),setCurrentTime:t=>{t<0&&(t=0),Number.isFinite(u)&&t>u&&(t=u),v=t,m&&(g=Date.now()),(!Number.isFinite(u)||t<u)&&(b=!1),O(j())},destroy:()=>{var t;_.cancel(),null==(t=null==n?void 0:n.onRemove)||t.call(n)}};return _}var No=[1,0,0,1,0,0];function Co(t,e){return[t[0]*e[0]+t[2]*e[1],t[1]*e[0]+t[3]*e[1],t[0]*e[2]+t[2]*e[3],t[1]*e[2]+t[3]*e[3],t[0]*e[4]+t[2]*e[5]+t[4],t[1]*e[4]+t[3]*e[5]+t[5]]}var Fo=(t,e)=>[1,0,0,1,t,e],Do=(t,e)=>[t,0,0,e,0,0];function To(t){const e=t*Math.PI/180;return[Math.cos(e),Math.sin(e),-Math.sin(e),Math.cos(e),0,0]}var Uo=t=>[1,0,Math.tan(t*Math.PI/180),1,0,0],Lo=t=>[1,Math.tan(t*Math.PI/180),0,1,0,0];function Eo(t){let e=No;t.translate&&(e=Co(e,Fo(t.translate[0],t.translate[1])));const n=t.origin&&(void 0!==t.rotate||t.scale);return n&&(e=Co(e,Fo(t.origin[0],t.origin[1]))),void 0!==t.rotate&&(e=Co(e,To(t.rotate))),t.scale&&(e=Co(e,Do(t.scale[0],t.scale[1]))),n&&(e=Co(e,Fo(-t.origin[0],-t.origin[1]))),e}function Bo(t,e,n){return t+(e-t)*n}function Vo(t,e){return null==t?No:"string"==typeof t?function(t){let e=No;const n=/(translate|rotate|scale|matrix|skewX|skewY)\(([^)]*)\)/g;let r;for(;r=n.exec(t);){const t=r[1],n=r[2].split(/[\s,]+/).filter(Boolean).map(Number);"translate"===t?e=Co(e,Fo(n[0]||0,n[1]||0)):"scale"===t?e=Co(e,Do(n[0],n.length>1?n[1]:n[0])):"rotate"===t?e=Co(e,To(n[0])):"skewX"===t?e=Co(e,Uo(n[0])):"skewY"===t?e=Co(e,Lo(n[0])):"matrix"===t&&(e=Co(e,[n[0],n[1],n[2],n[3],n[4],n[5]]))}return e}(t):t.keyframes?Eo(function(t,e){var n,r,o,i,a,s,l;if(!t.length)return{};if(e<=(null!=(n=t[0].time)?n:0))return t[0].value||{};if(e>=(null!=(r=t[t.length-1].time)?r:0))return t[t.length-1].value||{};let u=0;for(;u<t.length-1&&(null!=(o=t[u+1].time)?o:0)<e;)u++;const c=t[u],f=t[u+1],d=(e-(null!=(i=c.time)?i:0))/((null!=(a=f.time)?a:0)-(null!=(s=c.time)?s:0)||1),h=c.value||{},p=f.value||{},m={};return h.translate&&p.translate?m.translate=[Bo(h.translate[0],p.translate[0],d),Bo(h.translate[1],p.translate[1],d)]:m.translate=h.translate||p.translate,void 0!==h.rotate&&void 0!==p.rotate?m.rotate=Bo(h.rotate,p.rotate,d):m.rotate=null!=(l=h.rotate)?l:p.rotate,h.scale&&p.scale?m.scale=[Bo(h.scale[0],p.scale[0],d),Bo(h.scale[1],p.scale[1],d)]:m.scale=h.scale||p.scale,m.origin=h.origin||p.origin,m}(t.keyframes,e)):t.value?Eo(t.value):"object"!=typeof t||Array.isArray(t)?No:Eo(t)}var Wo=new Set(["svg","g","symbol"]),Ro=new Set(["defs","mask","clipPath","title"]);function Go(t,e){var n;"string"==typeof t.id&&e.set(t.id,t),null==(n=t.children)||n.forEach(t=>Go(t,e))}function Zo(t){return null==t?0:Number(t)}function Ko(t){return Math.round(100*t)/100+0}function qo(t,e,n){var r,o,i,a,s;const l=null!=(r=t.fill)?r:"",u=null!=(o=t.stroke)?o:"",c=null!=(a=null!=(i=t["stroke-width"])?i:t.strokeWidth)?a:"",f=Ko(function(t,e,n,r){var o,i,a,s,l,u;if(t&&t.keyframes&&t.keyframes.length){const e=t.keyframes;if(r<=(null!=(o=e[0].time)?o:0))return e[0].value;if(r>=(null!=(i=e[e.length-1].time)?i:0))return e[e.length-1].value;let n=0;for(;n<e.length-1&&(null!=(a=e[n+1].time)?a:0)<r;)n++;const c=e[n],f=e[n+1],d=(r-(null!=(s=c.time)?s:0))/((null!=(l=f.time)?l:0)-(null!=(u=c.time)?u:0)||1);return Bo(c.value,f.value,d)}return void 0!==e?Number(e):n}(null==(s=t.animate)?void 0:s.opacity,t.opacity,1,n)),d=t.mask?1:0,h=e.map(Ko).join(",");return t.type+"|"+function(t){var e;switch(t.type){case"rect":return Zo(t.width)+","+Zo(t.height)+","+Zo(t.x)+","+Zo(t.y);case"ellipse":return Zo(t.rx)+","+Zo(t.ry)+","+Zo(t.cx)+","+Zo(t.cy);case"circle":return Zo(t.r)+","+Zo(t.cx)+","+Zo(t.cy);case"path":return String(null!=(e=t.d)?e:"");default:return""}}(t)+"|["+h+"]|f:"+l+"|s:"+u+"|sw:"+(Zo(c)||"")+"|o:"+f+"|m:"+d}function Qo(t,e,n,r,o){var i;const a=t.type||"";if(Ro.has(a))return;const s=Co(e,function(t,e){return t.animate&&t.animate.transform?Vo(t.animate.transform,e):void 0!==t.transform?Vo(t.transform,e):No}(t,n));if("use"===a){const e="string"==typeof t.href?t.href.replace(/^#/,""):"",i=r.get(e),a=Co(s,Fo(Zo(t.x),Zo(t.y)));return void(i?Qo(i,a,n,r,o):o.push("UNRESOLVED_USE:#"+e))}Wo.has(a)?null==(i=t.children)||i.forEach(t=>Qo(t,s,n,r,o)):o.push(qo(t,s,n))}function Xo(t,e){var n;e.add(0);(t=>{var n;if(t&&"object"==typeof t)for(const r of Object.keys(t)){const o=null==(n=t[r])?void 0:n.keyframes;Array.isArray(o)&&o.forEach(t=>{var n;return e.add(null!=(n=t.time)?n:0)})}})(t.animate),t.transform&&"object"==typeof t.transform&&t.transform.keyframes&&t.transform.keyframes.forEach(t=>{var n;return e.add(null!=(n=t.time)?n:0)}),null==(n=t.children)||n.forEach(t=>Xo(t,e))}function Jo(t,e){const n=new Map;Go(t,n);const r=[];return Qo(t,No,e,n,r),r.sort()}function Yo(t,e){const n=new Set;Xo(t,n),Xo(e,n);const r=[];for(const o of Array.from(n).sort((t,e)=>t-e)){const n=Jo(t,o),i=Jo(e,o),a=Ho(n,i),s=Ho(i,n);(a.length||s.length)&&r.push({time:o,onlyInA:a,onlyInB:s})}return r}function Ho(t,e){const n=new Map;for(const t of e)n.set(t,(n.get(t)||0)+1);const r=[];for(const e of t){const t=n.get(e)||0;t>0?n.set(e,t-1):r.push(e)}return r}export{se as COLOUR_ATTR_NAMES,Ne as CSS_ONLY_STYLE_PROPS,de as DEFAULT_DURATION_MS,_e as DISALLOWED_SVG_TAGS_LOWER,Y as INTERNAL_ATTRS,N as PX_ANIM_ATTR_NAME,I as PX_ANIM_SRC_ATTR_NAME,H as PX_TRANSFORM_PART_KEYS,Gt as PxAnimatedSvgDocumentSchema,pt as PxAnimationDefinitionSchema,kt as PxAnimatorConfigSchema,F as PxAnimatorEngine,C as PxAnimatorMode,wt as PxAttrValueSchema,Zt as PxBezierPathSchema,At as PxBindingSchema,Nt as PxCloneEffectSchema,bt as PxDefsSchema,st as PxEasingOrRefSchema,Et as PxEffectsSchema,mt as PxElementAnimationSchema,Dt as PxFillGradientEffectSchema,tt as PxGradientSpreadMethod,Ct as PxGradientStopSchema,et as PxGradientType,$ as PxGradientUnits,ut as PxKeyframeSchema,lt as PxKeyframeValueSchema,D as PxLoopExtend,ct as PxLoopSchema,Pt as PxMaskedByEffectSchema,Vt as PxNodeBase,Wt as PxNodeSchema,ft as PxPropertyAnimationSchema,St as PxRepeaterEffectSchema,It as PxRetimeEffectSchema,Tt as PxStrokeGradientEffectSchema,Rt as PxSvgNodeExtra,Lt as PxTextEffectSchema,Ut as PxTextPathEffectSchema,Mt as PxTransformByEffectSchema,dt as PxTransformPartsSchema,ht as PxTransformValueSchema,vt as PxTriggerSchema,zt as PxTrimPathEffectSchema,Q as PxTrimSubPaths,fe as STYLE_ATTR_NAMES,X as TEXT_ATTR,J as TEXT_CONTENT_ATTR,le as TRANSFORM_FN_NAMES,So as applyPlayerEffects,qt as bezierToSvgPath,On as calcAnimationValues,ve as camelCaseToKebabWordIfNeeded,ge as clamp,Xo as collectSampleTimes,ce as composeTransformParts,Io as createBasicFrameLoopAnimator,_r as createPathSampler,te as cubicBezier,Me as deepClone,_ as describeSchema,Yo as diffInEffect,Ke as evaluateMotionPathSegment,Fr as extendedPathForBrowser,Se as generateNewIds,Oe as generateUniqueId,rt as getAnimatorConfig,it as getBindings,at as getChildren,ot as getDefs,xn as getNormalisedBindings,Ee as getNormalizedProps,Yt as interpolateBeziers,vn as interpolateValue,nt as isPxElementFileFormat,Kt as isPxElementFileFormatDeep,Tr as jsonElementFactory,he as kebabToCamelCaseWord,Hr as layoutGlyphTextChars,_o as materialiseAllInTree,zn as materialiseAnimatedUseInstances,uo as materialiseGlyphText,eo as materialiseGlyphTextAlongPath,Yr as materialiseGlyphTextHorizontal,bn as materialiseInternalLoopsInPropAnim,kn as materialiseInternalLoopsInTree,qe as materialiseMotionPathInPropAnim,sn as materialiseMotionPathsInTree,Re as propAnimIsMotionPath,z as px,Le as resolveStyle,oe as reverseEasing,Ue as sanitiseAttributeValue,P as schemaKeys,Cr as shiftAnimatable,re as splitEasing,ne as subdivideCubicBezier,ie as toRGBA,Bt as validateNodeEffects,Jo as visualModelAt};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pixodesk/svg-animator-core",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.24",
|
|
4
4
|
"description": "Pixodesk SVG animator core — schema, document types, materialisers and sampling shared by all platform players",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
"main": "dist/index.cjs",
|
|
14
14
|
"module": "dist/index.js",
|
|
15
15
|
"types": "dist/index.d.ts",
|
|
16
|
+
"sideEffects": false,
|
|
16
17
|
"exports": {
|
|
17
18
|
".": {
|
|
18
19
|
"types": "./dist/index.d.ts",
|