@coppsary/motionly 1.1.0 → 1.1.2

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.
@@ -0,0 +1,2752 @@
1
+ (function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const n of document.querySelectorAll('link[rel="modulepreload"]'))s(n);new MutationObserver(n=>{for(const a of n)if(a.type==="childList")for(const o of a.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&s(o)}).observe(document,{childList:!0,subtree:!0});function i(n){const a={};return n.integrity&&(a.integrity=n.integrity),n.referrerPolicy&&(a.referrerPolicy=n.referrerPolicy),n.crossOrigin==="use-credentials"?a.credentials="include":n.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function s(n){if(n.ep)return;n.ep=!0;const a=i(n);fetch(n.href,a)}})();var j0=()=>{window.va||(window.va=function(...e){window.vaq||(window.vaq=[]),window.vaq.push(e)})},G0="@vercel/analytics",q0="2.0.1";function lm(){return typeof window<"u"}function cm(){try{const t="production"}catch{}return"production"}function W0(t="auto"){if(t==="auto"){window.vam=cm();return}window.vam=t}function Y0(){return(lm()?window.vam:cm())||"production"}function Zd(){return Y0()==="development"}function K0(t){return t.scriptSrc?pa(t.scriptSrc):Zd()?"https://va.vercel-scripts.com/v1/script.debug.js":t.basePath?pa(`${t.basePath}/insights/script.js`):"/_vercel/insights/script.js"}function X0(t,e){var i;let s=t;if(e)try{s={...(i=JSON.parse(e))==null?void 0:i.analytics,...t}}catch{}W0(s.mode);const n={sdkn:G0+(s.framework?`/${s.framework}`:""),sdkv:q0};return s.disableAutoTrack&&(n.disableAutoTrack="1"),s.viewEndpoint&&(n.viewEndpoint=pa(s.viewEndpoint)),s.eventEndpoint&&(n.eventEndpoint=pa(s.eventEndpoint)),s.sessionEndpoint&&(n.sessionEndpoint=pa(s.sessionEndpoint)),Zd()&&s.debug===!1&&(n.debug="false"),s.dsn&&(n.dsn=s.dsn),s.endpoint?n.endpoint=s.endpoint:s.basePath&&(n.endpoint=pa(`${s.basePath}/insights`)),{beforeSend:s.beforeSend,src:K0(s),dataset:n}}function pa(t){return t.startsWith("http://")||t.startsWith("https://")||t.startsWith("/")?t:`/${t}`}function J0(t={debug:!0},e){var i;if(!lm())return;const{beforeSend:s,src:n,dataset:a}=X0(t,e);if(j0(),s&&((i=window.va)==null||i.call(window,"beforeSend",s)),document.head.querySelector(`script[src*="${n}"]`))return;const o=document.createElement("script");o.src=n;for(const[l,c]of Object.entries(a))o.dataset[l]=c;o.defer=!0,o.onerror=()=>{const l=Zd()?"Please check if any ad blockers are enabled and try again.":"Be sure to enable Web Analytics for your project and deploy again. See https://vercel.com/docs/analytics/quickstart for more information.";console.log(`[Vercel Web Analytics] Failed to load script from ${n}. ${l}`)},document.head.appendChild(o)}const um=!1;var $c=Array.isArray,Z0=Array.prototype.indexOf,fc=Array.prototype.includes,Oc=Array.from,Q0=Object.defineProperty,qn=Object.getOwnPropertyDescriptor,dm=Object.getOwnPropertyDescriptors,tb=Object.prototype,eb=Array.prototype,Qd=Object.getPrototypeOf,gp=Object.isExtensible;function ao(t){return typeof t=="function"}const ib=()=>{};function sb(t){return t()}function pd(t){for(var e=0;e<t.length;e++)t[e]()}function fm(){var t,e,i=new Promise((s,n)=>{t=s,e=n});return{promise:i,resolve:t,reject:e}}function nb(t,e){if(Array.isArray(t))return t;if(!(Symbol.iterator in t))return Array.from(t);const i=[];for(const s of t)if(i.push(s),i.length===e)break;return i}const Ri=2,ka=4,Ko=8,tf=1<<24,nn=16,cn=32,_r=64,vd=128,Qs=512,ki=1024,Ni=2048,un=4096,ts=8192,Ls=16384,Oa=32768,md=1<<25,Yr=65536,hc=1<<17,rb=1<<18,Na=1<<19,hm=1<<20,En=1<<25,Kr=65536,pc=1<<21,ya=1<<22,pr=1<<23,Un=Symbol("$state"),pm=Symbol("legacy props"),ab=Symbol(""),vm=Symbol("attributes"),_d=Symbol("class"),gd=Symbol("style"),yd=Symbol("text"),Jl=Symbol("form reset"),Nc=new class extends Error{name="StaleReactionError";message="The reaction that called `getAbortSignal()` was re-run or destroyed"},Fc=!!globalThis.document?.contentType&&globalThis.document.contentType.includes("xml");function ob(t){throw new Error("https://svelte.dev/e/lifecycle_outside_component")}function lb(){throw new Error("https://svelte.dev/e/async_derived_orphan")}function cb(t,e,i){throw new Error("https://svelte.dev/e/each_key_duplicate")}function ub(t){throw new Error("https://svelte.dev/e/effect_in_teardown")}function db(){throw new Error("https://svelte.dev/e/effect_in_unowned_derived")}function fb(t){throw new Error("https://svelte.dev/e/effect_orphan")}function hb(){throw new Error("https://svelte.dev/e/effect_update_depth_exceeded")}function pb(t){throw new Error("https://svelte.dev/e/props_invalid_value")}function vb(){throw new Error("https://svelte.dev/e/state_descriptors_fixed")}function mb(){throw new Error("https://svelte.dev/e/state_prototype_fixed")}function _b(){throw new Error("https://svelte.dev/e/state_unsafe_mutation")}function gb(){throw new Error("https://svelte.dev/e/svelte_boundary_reset_onerror")}const yb=1,bb=2,mm=4,xb=8,wb=16,Sb=1,kb=2,_m=4,Eb=8,Bb=16,Ub=1,Tb=2,wi=Symbol("uninitialized"),gm="http://www.w3.org/1999/xhtml",Pb="http://www.w3.org/2000/svg",Ab="@attach";function zb(){console.warn("https://svelte.dev/e/derived_inert")}function Mb(){console.warn("https://svelte.dev/e/select_multiple_invalid_value")}function Ib(){console.warn("https://svelte.dev/e/svelte_boundary_reset_noop")}function ym(t){return t===this.v}function Cb(t,e){return t!=t?e==e:t!==e||t!==null&&typeof t=="object"||typeof t=="function"}function bm(t){return!Cb(t,this.v)}let Fa=!1,$b=!1;function Ob(){Fa=!0}let je=null;function Ea(t){je=t}function An(t,e=!1,i){je={p:je,i:!1,c:null,e:null,s:t,x:null,r:ne,l:Fa&&!e?{s:null,u:null,$:[]}:null}}function zn(t){var e=je,i=e.e;if(i!==null){e.e=null;for(var s of i)Rm(s)}return t!==void 0&&(e.x=t),e.i=!0,je=e.p,t??{}}function Da(){return!Fa||je!==null&&je.l===null}let Nr=[];function xm(){var t=Nr;Nr=[],pd(t)}function Wn(t){if(Nr.length===0&&!Bo){var e=Nr;queueMicrotask(()=>{e===Nr&&xm()})}Nr.push(t)}function Nb(){for(;Nr.length>0;)xm()}function wm(t){var e=ne;if(e===null)return ge.f|=pr,t;if((e.f&Oa)===0&&(e.f&ka)===0)throw t;cr(t,e)}function cr(t,e){if(!(e!==null&&(e.f&Ls)!==0)){for(;e!==null;){if((e.f&vd)!==0){if((e.f&Oa)===0)throw t;try{e.b.error(t);return}catch(i){t=i}}e=e.parent}throw t}}const Fb=-7169;function li(t,e){t.f=t.f&Fb|e}function ef(t){(t.f&Qs)!==0||t.deps===null?li(t,ki):li(t,un)}function Sm(t){if(t!==null)for(const e of t)(e.f&Ri)===0||(e.f&Kr)===0||(e.f^=Kr,Sm(e.deps))}function km(t,e,i){(t.f&Ni)!==0?e.add(t):(t.f&un)!==0&&i.add(t),Sm(t.deps),li(t,ki)}let Ml=!1;function Db(t){var e=Ml;try{return Ml=!1,[t(),Ml]}finally{Ml=e}}function Lb(t){let e=0,i=yr(0),s;return()=>{af()&&(r(i),Ra(()=>(e===0&&(s=k(()=>t(()=>Uo(i)))),e+=1,()=>{Wn(()=>{e-=1,e===0&&(s?.(),s=void 0,Uo(i))})})))}}var Rb=Yr|Na;function Vb(t,e,i,s){new Hb(t,e,i,s)}class Hb{parent;is_pending=!1;transform_error;#t;#a=null;#e;#l;#s;#r=null;#i=null;#o=null;#n=null;#p=0;#c=0;#u=!1;#f=new Set;#m=new Set;#d=null;#g=Lb(()=>(this.#d=yr(this.#p),()=>{this.#d=null}));constructor(e,i,s,n){this.#t=e,this.#e=i,this.#l=a=>{var o=ne;o.b=this,o.f|=vd,s(a)},this.parent=ne.b,this.transform_error=n??this.parent?.transform_error??(a=>a),this.#s=Jo(()=>{this.#y()},Rb)}#_(){try{this.#r=fs(()=>this.#l(this.#t))}catch(e){this.error(e)}}#x(e){const i=this.#e.failed;i&&(this.#o=fs(()=>{i(this.#t,()=>e,()=>()=>{})}))}#w(){const e=this.#e.pending;e&&(this.is_pending=!0,this.#i=fs(()=>e(this.#t)),Wn(()=>{var i=this.#n=document.createDocumentFragment(),s=Yn();i.append(s),this.#r=this.#b(()=>fs(()=>this.#l(s))),this.#c===0&&(this.#t.before(i),this.#n=null,Rr(this.#i,()=>{this.#i=null}),this.#h(se))}))}#y(){try{if(this.is_pending=this.has_pending_snippet(),this.#c=0,this.#p=0,this.#r=fs(()=>{this.#l(this.#t)}),this.#c>0){var e=this.#n=document.createDocumentFragment();lf(this.#r,e);const i=this.#e.pending;this.#i=fs(()=>i(this.#t))}else this.#h(se)}catch(i){this.error(i)}}#h(e){this.is_pending=!1,e.transfer_effects(this.#f,this.#m)}defer_effect(e){km(e,this.#f,this.#m)}is_rendered(){return!this.is_pending&&(!this.parent||this.parent.is_rendered())}has_pending_snippet(){return!!this.#e.pending}#b(e){var i=ne,s=ge,n=je;xs(this.#s),tn(this.#s),Ea(this.#s.ctx);try{return gr.ensure(),e()}catch(a){return wm(a),null}finally{xs(i),tn(s),Ea(n)}}#v(e,i){if(!this.has_pending_snippet()){this.parent&&this.parent.#v(e,i);return}this.#c+=e,this.#c===0&&(this.#h(i),this.#i&&Rr(this.#i,()=>{this.#i=null}),this.#n&&(this.#t.before(this.#n),this.#n=null))}update_pending_count(e,i){this.#v(e,i),this.#p+=e,!(!this.#d||this.#u)&&(this.#u=!0,Wn(()=>{this.#u=!1,this.#d&&Xr(this.#d,this.#p)}))}get_effect_pending(){return this.#g(),r(this.#d)}error(e){if(!this.#e.onerror&&!this.#e.failed)throw e;se?.is_fork?(this.#r&&se.skip_effect(this.#r),this.#i&&se.skip_effect(this.#i),this.#o&&se.skip_effect(this.#o),se.oncommit(()=>{this.#S(e)})):this.#S(e)}#S(e){this.#r&&(Di(this.#r),this.#r=null),this.#i&&(Di(this.#i),this.#i=null),this.#o&&(Di(this.#o),this.#o=null);var i=this.#e.onerror;let s=this.#e.failed;var n=!1,a=!1;const o=()=>{if(n){Ib();return}n=!0,a&&gb(),this.#o!==null&&Rr(this.#o,()=>{this.#o=null}),this.#b(()=>{this.#y()})},l=c=>{try{a=!0,i?.(c,o),a=!1}catch(u){cr(u,this.#s&&this.#s.parent)}s&&(this.#o=this.#b(()=>{try{return fs(()=>{var u=ne;u.b=this,u.f|=vd,s(this.#t,()=>c,()=>o)})}catch(u){return cr(u,this.#s.parent),null}}))};Wn(()=>{var c;try{c=this.transform_error(e)}catch(u){cr(u,this.#s&&this.#s.parent);return}c!==null&&typeof c=="object"&&typeof c.then=="function"?c.then(l,u=>cr(u,this.#s&&this.#s.parent)):l(c)})}}function Em(t,e,i,s){const n=Da()?Ba:cs;var a=t.filter(m=>!m.settled),o=e.map(n);if(i.length===0&&a.length===0){s(o);return}var l=ne,c=jb(),u=a.length===1?a[0].promise:a.length>1?Promise.all(a.map(m=>m.promise)):null;function d(m){if((l.f&Ls)===0){c();try{s([...o,...m])}catch(y){cr(y,l)}vc()}}var h=Bm();if(i.length===0){u.then(()=>d([])).finally(h);return}function v(){Promise.all(i.map(m=>Gb(m))).then(d).catch(m=>cr(m,l)).finally(h)}u?u.then(()=>{c(),v(),vc()}):v()}function jb(){var t=ne,e=ge,i=je,s=se;return function(a=!0){xs(t),tn(e),Ea(i),a&&(t.f&Ls)===0&&(s?.activate(),s?.apply())}}function vc(t=!0){xs(null),tn(null),Ea(null),t&&se?.deactivate()}function Bm(){var t=ne,e=t.b,i=se,s=!!e?.is_rendered();return e?.update_pending_count(1,i),i.increment(s,t),()=>{e?.update_pending_count(-1,i),i.decrement(s,t)}}function Ba(t){var e=Ri|Ni;return ne!==null&&(ne.f|=Na),{ctx:je,deps:null,effects:null,equals:ym,f:e,fn:t,reactions:null,rv:0,v:wi,wv:0,parent:ne,ac:null}}const yo=Symbol("obsolete");function Gb(t,e,i){let s=ne;s===null&&lb();var n=void 0,a=yr(wi),o=!ge,l=new Set;return ax(()=>{var c=ne,u=fm();n=u.promise;try{Promise.resolve(t()).then(u.resolve,m=>{m!==Nc&&u.reject(m)}).finally(vc)}catch(m){u.reject(m),vc()}var d=se;if(o){if((c.f&Oa)!==0)var h=Bm();if(s.b?.is_rendered())d.async_deriveds.get(c)?.reject(yo);else for(const m of l.values())m.reject(yo);l.add(u),d.async_deriveds.set(c,u)}const v=(m,y=void 0)=>{h?.(),l.delete(u),y!==yo&&(d.activate(),y?(a.f|=pr,Xr(a,y)):((a.f&pr)!==0&&(a.f^=pr),Xr(a,m)),d.deactivate())};u.promise.then(v,m=>v(null,m||"unknown"))}),La(()=>{for(const c of l)c.reject(yo)}),new Promise(c=>{function u(d){function h(){d===n?c(a):u(n)}d.then(h,h)}u(n)})}function us(t){const e=Ba(t);return Wm(e),e}function cs(t){const e=Ba(t);return e.equals=bm,e}function qb(t){var e=t.effects;if(e!==null){t.effects=null;for(var i=0;i<e.length;i+=1)Di(e[i])}}function sf(t){var e,i=ne,s=t.parent;if(!Xn&&s!==null&&t.v!==wi&&(s.f&(Ls|ts))!==0)return zb(),t.v;xs(s);try{t.f&=~Kr,qb(t),e=Jm(t)}finally{xs(i)}return e}function Um(t){var e=sf(t);if(!t.equals(e)&&(t.wv=Km(),(!se?.is_fork||t.deps===null)&&(se!==null?(se.capture(t,e,!0),bd?.capture(t,e,!0)):t.v=e,t.deps===null))){li(t,ki);return}Xn||(rn!==null?(af()||se?.is_fork)&&rn.set(t,e):ef(t))}function Wb(t){if(t.effects!==null)for(const e of t.effects)(e.teardown||e.ac)&&(e.teardown?.(),e.ac?.abort(Nc),e.fn!==null&&(e.teardown=ib),e.ac=null,Co(e,0),of(e))}function Tm(t){if(t.effects!==null)for(const e of t.effects)e.teardown&&e.fn!==null&&Jr(e)}let Ou=null,ua=null,se=null,bd=null,rn=null,xd=null,Bo=!1,Nu=!1,va=null,Zl=null;var yp=0;let Yb=1;class gr{id=Yb++;#t=!1;linked=!0;#a=null;#e=null;async_deriveds=new Map;current=new Map;previous=new Map;#l=new Set;#s=new Set;#r=0;#i=new Map;#o=null;#n=[];#p=[];#c=new Set;#u=new Set;#f=new Map;#m=new Set;is_fork=!1;#d=!1;constructor(){ua===null?Ou=ua=this:(ua.#e=this,this.#a=ua),ua=this}#g(){if(this.is_fork)return!0;for(const s of this.#i.keys()){for(var e=s,i=!1;e.parent!==null;){if(this.#f.has(e)){i=!0;break}e=e.parent}if(!i)return!0}return!1}skip_effect(e){this.#f.has(e)||this.#f.set(e,{d:[],m:[]}),this.#m.delete(e)}unskip_effect(e,i=s=>this.schedule(s)){var s=this.#f.get(e);if(s){this.#f.delete(e);for(var n of s.d)li(n,Ni),i(n);for(n of s.m)li(n,un),i(n)}this.#m.add(e)}#_(){this.#t=!0,yp++>1e3&&(this.#v(),Xb());for(const c of this.#c)this.#u.delete(c),li(c,Ni),this.schedule(c);for(const c of this.#u)li(c,un),this.schedule(c);const e=this.#n;this.#n=[],this.apply();var i=va=[],s=[],n=Zl=[];for(const c of e)try{this.#x(c,i,s)}catch(u){throw zm(c),this.#g()||this.discard(),u}if(se=null,n.length>0){var a=gr.ensure();for(const c of n)a.schedule(c)}if(va=null,Zl=null,this.#g()){this.#h(s),this.#h(i);for(const[c,u]of this.#f)Am(c,u);n.length>0&&se.#_();return}const o=this.#w();if(o){this.#h(s),this.#h(i),o.#y(this);return}this.#c.clear(),this.#u.clear();for(const c of this.#l)c(this);this.#l.clear(),bd=this,bp(s),bp(i),bd=null,this.#o?.resolve();var l=se;if(this.#r===0&&(this.#n.length===0||l!==null)&&this.#v(),this.#n.length>0)if(l!==null){const c=l;c.#n.push(...this.#n.filter(u=>!c.#n.includes(u)))}else l=this;l!==null&&l.#_()}#x(e,i,s){e.f^=ki;for(var n=e.first;n!==null;){var a=n.f,o=(a&(cn|_r))!==0,l=o&&(a&ki)!==0,c=l||(a&ts)!==0||this.#f.has(n);if(!c&&n.fn!==null){o?n.f^=ki:(a&ka)!==0?i.push(n):Va(n)&&((a&nn)!==0&&this.#u.add(n),Jr(n));var u=n.first;if(u!==null){n=u;continue}}for(;n!==null;){var d=n.next;if(d!==null){n=d;break}n=n.parent}}}#w(){for(var e=this.#a;e!==null;){if(!e.is_fork){for(const[i,[,s]]of this.current)if(e.current.has(i)&&!s)return e}e=e.#a}return null}#y(e){for(const[s,n]of e.current)!this.previous.has(s)&&e.previous.has(s)&&this.previous.set(s,e.previous.get(s)),this.current.set(s,n);for(const[s,n]of e.async_deriveds){const a=this.async_deriveds.get(s);a&&n.promise.then(a.resolve).catch(a.reject)}e.async_deriveds.clear(),this.transfer_effects(e.#c,e.#u);const i=s=>{var n=s.reactions;if(n!==null)for(const l of n){var a=l.f;if((a&Ri)!==0)i(l);else{var o=l;a&(ya|nn)&&!this.async_deriveds.has(o)&&(this.#u.delete(o),li(o,Ni),this.schedule(o))}}};for(const s of this.current.keys())i(s);this.oncommit(()=>e.discard()),e.#v(),se=this,this.#_()}#h(e){for(var i=0;i<e.length;i+=1)km(e[i],this.#c,this.#u)}capture(e,i,s=!1){e.v!==wi&&!this.previous.has(e)&&this.previous.set(e,e.v),(e.f&pr)===0&&(this.current.set(e,[i,s]),rn?.set(e,i)),this.is_fork||(e.v=i)}activate(){se=this}deactivate(){se=null,rn=null}flush(){try{Nu=!0,se=this,this.#_()}finally{yp=0,xd=null,va=null,Zl=null,Nu=!1,se=null,rn=null,Lr.clear()}}discard(){for(const e of this.#s)e(this);this.#s.clear();for(const e of this.async_deriveds.values())e.reject(yo);this.#v(),this.#o?.resolve()}register_created_effect(e){this.#p.push(e)}#b(){for(let h=Ou;h!==null;h=h.#e){var e=h.id<this.id,i=[];for(const[v,[m,y]]of this.current){if(h.current.has(v)){var s=h.current.get(v)[0];if(e&&m!==s)h.current.set(v,[m,y]);else continue}i.push(v)}if(e)for(const[v,m]of this.async_deriveds){const y=h.async_deriveds.get(v);y&&m.promise.then(y.resolve).catch(y.reject)}var n=[...h.current.keys()].filter(v=>!h.current.get(v)[1]);if(!(!h.#t||n.length===0)){var a=n.filter(v=>!this.current.has(v));if(a.length===0)e&&h.discard();else if(i.length>0){if(e)for(const v of this.#m)h.unskip_effect(v,m=>{(m.f&(nn|ya))!==0?h.schedule(m):h.#h([m])});h.activate();var o=new Set,l=new Map;for(var c of i)Pm(c,a,o,l);l=new Map;var u=[...h.current].filter(([v,m])=>{const y=this.current.get(v);return y?y[0]!==m[0]||y[1]!==m[1]:!0}).map(([v])=>v);if(u.length>0)for(const v of this.#p)(v.f&(Ls|ts|hc))===0&&nf(v,u,l)&&((v.f&(ya|nn))!==0?(li(v,Ni),h.schedule(v)):h.#c.add(v));if(h.#n.length>0&&!h.#d){h.apply();for(var d of h.#n)h.#x(d,[],[]);h.#n=[]}h.deactivate()}}}}increment(e,i){if(this.#r+=1,e){let s=this.#i.get(i)??0;this.#i.set(i,s+1)}}decrement(e,i){if(this.#r-=1,e){let s=this.#i.get(i)??0;s===1?this.#i.delete(i):this.#i.set(i,s-1)}this.#d||(this.#d=!0,Wn(()=>{this.#d=!1,this.linked&&this.flush()}))}transfer_effects(e,i){for(const s of e)this.#c.add(s);for(const s of i)this.#u.add(s);e.clear(),i.clear()}oncommit(e){this.#l.add(e)}ondiscard(e){this.#s.add(e)}settled(){return(this.#o??=fm()).promise}static ensure(){if(se===null){const e=se=new gr;!Nu&&!Bo&&Wn(()=>{e.#t||e.flush()})}return se}apply(){{rn=null;return}}schedule(e){if(xd=e,e.b?.is_pending&&(e.f&(ka|Ko|tf))!==0&&(e.f&Oa)===0){e.b.defer_effect(e);return}for(var i=e;i.parent!==null;){i=i.parent;var s=i.f;if(va!==null&&i===ne&&(ge===null||(ge.f&Ri)===0))return;if((s&(_r|cn))!==0){if((s&ki)===0)return;i.f^=ki}}this.#n.push(i)}#v(){if(this.linked){var e=this.#a,i=this.#e;e===null?Ou=i:e.#e=i,i===null?ua=e:i.#a=e,this.linked=!1}}}function Kb(t){var e=Bo;Bo=!0;try{for(var i;;){if(Nb(),se===null)return i;se.flush()}}finally{Bo=e}}function Xb(){try{hb()}catch(t){cr(t,xd)}}let Vn=null;function bp(t){var e=t.length;if(e!==0){for(var i=0;i<e;){var s=t[i++];if((s.f&(Ls|ts))===0&&Va(s)&&(Vn=new Set,Jr(s),s.deps===null&&s.first===null&&s.nodes===null&&s.teardown===null&&s.ac===null&&jm(s),Vn?.size>0)){Lr.clear();for(const n of Vn){if((n.f&(Ls|ts))!==0)continue;const a=[n];let o=n.parent;for(;o!==null;)Vn.has(o)&&(Vn.delete(o),a.push(o)),o=o.parent;for(let l=a.length-1;l>=0;l--){const c=a[l];(c.f&(Ls|ts))===0&&Jr(c)}}Vn.clear()}}Vn=null}}function Pm(t,e,i,s){if(!i.has(t)&&(i.add(t),t.reactions!==null))for(const n of t.reactions){const a=n.f;(a&Ri)!==0?Pm(n,e,i,s):(a&(ya|nn))!==0&&(a&Ni)===0&&nf(n,e,s)&&(li(n,Ni),rf(n))}}function nf(t,e,i){const s=i.get(t);if(s!==void 0)return s;if(t.deps!==null)for(const n of t.deps){if(fc.call(e,n))return!0;if((n.f&Ri)!==0&&nf(n,e,i))return i.set(n,!0),!0}return i.set(t,!1),!1}function rf(t){se.schedule(t)}function Am(t,e){if(!((t.f&cn)!==0&&(t.f&ki)!==0)){(t.f&Ni)!==0?e.d.push(t):(t.f&un)!==0&&e.m.push(t),li(t,ki);for(var i=t.first;i!==null;)Am(i,e),i=i.next}}function zm(t){li(t,ki);for(var e=t.first;e!==null;)zm(e),e=e.next}let mc=new Set;const Lr=new Map;let Mm=!1;function yr(t,e){var i={f:0,v:t,reactions:null,equals:ym,rv:0,wv:0};return i}function nr(t,e){const i=yr(t);return Wm(i),i}function R(t,e=!1,i=!0){const s=yr(t);return e||(s.equals=bm),Fa&&i&&je!==null&&je.l!==null&&(je.l.s??=[]).push(s),s}function De(t,e){return x(t,k(()=>r(t))),e}function x(t,e,i=!1){ge!==null&&(!an||(ge.f&hc)!==0)&&Da()&&(ge.f&(Ri|nn|ya|hc))!==0&&(Tn===null||!Tn.has(t))&&_b();let s=i?ma(e):e;return Xr(t,s,Zl)}function Xr(t,e,i=null){if(!t.equals(e)){Lr.set(t,Xn?e:t.v);var s=gr.ensure();if(s.capture(t,e),(t.f&Ri)!==0){const n=t;(t.f&Ni)!==0&&sf(n),rn===null&&ef(n)}t.wv=Km(),Im(t,Ni,i),Da()&&ne!==null&&(ne.f&ki)!==0&&(ne.f&(cn|_r))===0&&(Ks===null?ux([t]):Ks.push(t)),!s.is_fork&&mc.size>0&&!Mm&&Jb()}return e}function Jb(){Mm=!1;for(const t of mc){(t.f&ki)!==0&&li(t,un);let e;try{e=Va(t)}catch{e=!0}e&&Jr(t)}mc.clear()}function xp(t,e=1){var i=r(t),s=e===1?i++:i--;return x(t,i),s}function Uo(t){x(t,t.v+1)}function Im(t,e,i){var s=t.reactions;if(s!==null)for(var n=Da(),a=s.length,o=0;o<a;o++){var l=s[o],c=l.f;if(!(!n&&l===ne)){var u=(c&Ni)===0;if(u&&li(l,e),(c&hc)!==0)mc.add(l);else if((c&Ri)!==0){var d=l;rn?.delete(d),(c&Kr)===0&&(c&Qs&&(ne===null||(ne.f&pc)===0)&&(l.f|=Kr),Im(d,un,i))}else if(u){var h=l;(c&nn)!==0&&Vn!==null&&Vn.add(h),i!==null?i.push(h):rf(h)}}}}function ma(t){if(typeof t!="object"||t===null||Un in t)return t;const e=Qd(t);if(e!==tb&&e!==eb)return t;var i=new Map,s=$c(t),n=nr(0),a=Vr,o=l=>{if(Vr===a)return l();var c=ge,u=Vr;tn(null),Ep(a);var d=l();return tn(c),Ep(u),d};return s&&i.set("length",nr(t.length)),new Proxy(t,{defineProperty(l,c,u){(!("value"in u)||u.configurable===!1||u.enumerable===!1||u.writable===!1)&&vb();var d=i.get(c);return d===void 0?o(()=>{var h=nr(u.value);return i.set(c,h),h}):x(d,u.value,!0),!0},deleteProperty(l,c){var u=i.get(c);if(u===void 0){if(c in l){const d=o(()=>nr(wi));i.set(c,d),Uo(n)}}else x(u,wi),Uo(n);return!0},get(l,c,u){if(c===Un)return t;var d=i.get(c),h=c in l;if(d===void 0&&(!h||qn(l,c)?.writable)&&(d=o(()=>{var m=ma(h?l[c]:wi),y=nr(m);return y}),i.set(c,d)),d!==void 0){var v=r(d);return v===wi?void 0:v}return Reflect.get(l,c,u)},getOwnPropertyDescriptor(l,c){var u=Reflect.getOwnPropertyDescriptor(l,c);if(u&&"value"in u){var d=i.get(c);d&&(u.value=r(d))}else if(u===void 0){var h=i.get(c),v=h?.v;if(h!==void 0&&v!==wi)return{enumerable:!0,configurable:!0,value:v,writable:!0}}return u},has(l,c){if(c===Un)return!0;var u=i.get(c),d=u!==void 0&&u.v!==wi||Reflect.has(l,c);if(u!==void 0||ne!==null&&(!d||qn(l,c)?.writable)){u===void 0&&(u=o(()=>{var v=d?ma(l[c]):wi,m=nr(v);return m}),i.set(c,u));var h=r(u);if(h===wi)return!1}return d},set(l,c,u,d){var h=i.get(c),v=c in l;if(s&&c==="length")for(var m=u;m<h.v;m+=1){var y=i.get(m+"");y!==void 0?x(y,wi):m in l&&(y=o(()=>nr(wi)),i.set(m+"",y))}if(h===void 0)(!v||qn(l,c)?.writable)&&(h=o(()=>nr(void 0)),x(h,ma(u)),i.set(c,h));else{v=h.v!==wi;var _=o(()=>ma(u));x(h,_)}var S=Reflect.getOwnPropertyDescriptor(l,c);if(S?.set&&S.set.call(d,u),!v){if(s&&typeof c=="string"){var T=i.get("length"),I=Number(c);Number.isInteger(I)&&I>=T.v&&x(T,I+1)}Uo(n)}return!0},ownKeys(l){r(n);var c=Reflect.ownKeys(l).filter(h=>{var v=i.get(h);return v===void 0||v.v!==wi});for(var[u,d]of i)d.v!==wi&&!(u in l)&&c.push(u);return c},setPrototypeOf(){mb()}})}function wp(t){try{if(t!==null&&typeof t=="object"&&Un in t)return t[Un]}catch{}return t}function Zb(t,e){return Object.is(wp(t),wp(e))}var _c,Cm,$m,Om;function Qb(){if(_c===void 0){_c=window,Cm=/Firefox/.test(navigator.userAgent);var t=Element.prototype,e=Node.prototype,i=Text.prototype;$m=qn(e,"firstChild").get,Om=qn(e,"nextSibling").get,gp(t)&&(t[_d]=void 0,t[vm]=null,t[gd]=void 0,t.__e=void 0),gp(i)&&(i[yd]=void 0)}}function Yn(t=""){return document.createTextNode(t)}function Ua(t){return $m.call(t)}function Xo(t){return Om.call(t)}function g(t,e){return Ua(t)}function it(t,e=!1){{var i=Ua(t);return i instanceof Comment&&i.data===""?Xo(i):i}}function b(t,e=1,i=!1){let s=t;for(;e--;)s=Xo(s);return s}function tx(t){t.textContent=""}function Nm(){return!1}function Fm(t,e,i){return e==null||e===gm?i?document.createElement(t,{is:i}):document.createElement(t):i?document.createElementNS(e,t,{is:i}):document.createElementNS(e,t)}function ex(t,e){if(e){const i=document.body;t.autofocus=!0,Wn(()=>{document.activeElement===i&&t.focus()})}}let Sp=!1;function ix(){Sp||(Sp=!0,document.addEventListener("reset",t=>{Promise.resolve().then(()=>{if(!t.defaultPrevented)for(const e of t.target.elements)e[Jl]?.()})},{capture:!0}))}function Dc(t){var e=ge,i=ne;tn(null),xs(null);try{return t()}finally{tn(e),xs(i)}}function Dm(t,e,i,s=i){t.addEventListener(e,()=>Dc(i));const n=t[Jl];n?t[Jl]=()=>{n(),s(!0)}:t[Jl]=()=>s(!0),ix()}function Lm(t){ne===null&&(ge===null&&fb(),db()),Xn&&ub()}function sx(t,e){var i=e.last;i===null?e.last=e.first=t:(i.next=t,t.prev=i,e.last=t)}function dn(t,e){var i=ne;i!==null&&(i.f&ts)!==0&&(t|=ts);var s={ctx:je,deps:null,nodes:null,f:t|Ni|Qs,first:null,fn:e,last:null,next:null,parent:i,b:i&&i.b,prev:null,teardown:null,wv:0,ac:null};se?.register_created_effect(s);var n=s;if((t&ka)!==0)va!==null?va.push(s):gr.ensure().schedule(s);else if(e!==null){try{Jr(s)}catch(o){throw Di(s),o}n.deps===null&&n.teardown===null&&n.nodes===null&&n.first===n.last&&(n.f&Na)===0&&(n=n.first,(t&nn)!==0&&(t&Yr)!==0&&n!==null&&(n.f|=Yr))}if(n!==null&&(n.parent=i,i!==null&&sx(n,i),ge!==null&&(ge.f&Ri)!==0&&(t&_r)===0)){var a=ge;(a.effects??=[]).push(n)}return s}function af(){return ge!==null&&!an}function La(t){const e=dn(Ko,null);return li(e,ki),e.teardown=t,e}function wd(t){Lm();var e=ne.f,i=!ge&&(e&cn)!==0&&je!==null&&!je.i;if(i){var s=je;(s.e??=[]).push(t)}else return Rm(t)}function Rm(t){return dn(ka|hm,t)}function nx(t){return Lm(),dn(Ko|hm,t)}function rx(t){gr.ensure();const e=dn(_r|Na,t);return(i={})=>new Promise(s=>{i.outro?Rr(e,()=>{Di(e),s(void 0)}):(Di(e),s(void 0))})}function Lc(t){return dn(ka,t)}function ce(t,e){var i=je,s={effect:null,ran:!1,deps:t};i.l.$.push(s),s.effect=Ra(()=>{if(t(),!s.ran){s.ran=!0;var n=ne;try{xs(n.parent),k(e)}finally{xs(n)}}})}function kr(){var t=je;Ra(()=>{for(var e of t.l.$){e.deps();var i=e.effect;(i.f&ki)!==0&&i.deps!==null&&li(i,un),Va(i)&&Jr(i),e.ran=!1}})}function ax(t){return dn(ya|Na,t)}function Ra(t,e=0){return dn(Ko|e,t)}function K(t,e=[],i=[],s=[]){Em(s,e,i,n=>{dn(Ko,()=>{t(...n.map(r))})})}function Jo(t,e=0){var i=dn(nn|e,t);return i}function Vm(t,e=0){var i=dn(tf|e,t);return i}function fs(t){return dn(cn|Na,t)}function Hm(t){var e=t.teardown;if(e!==null){const i=Xn,s=ge;kp(!0),tn(null);try{e.call(null)}finally{kp(i),tn(s)}}}function of(t,e=!1){var i=t.first;for(t.first=t.last=null;i!==null;){const n=i.ac;n!==null&&Dc(()=>{n.abort(Nc)});var s=i.next;(i.f&_r)!==0?i.parent=null:Di(i,e),i=s}}function ox(t){for(var e=t.first;e!==null;){var i=e.next;(e.f&cn)===0&&Di(e),e=i}}function Di(t,e=!0){var i=!1;(e||(t.f&rb)!==0)&&t.nodes!==null&&t.nodes.end!==null&&(lx(t.nodes.start,t.nodes.end),i=!0),t.f|=md,of(t,e&&!i),Co(t,0);var s=t.nodes&&t.nodes.t;if(s!==null)for(const a of s)a.stop();Hm(t),t.f^=md,t.f|=Ls;var n=t.parent;n!==null&&n.first!==null&&jm(t),t.next=t.prev=t.teardown=t.ctx=t.deps=t.fn=t.nodes=t.ac=t.b=null}function lx(t,e){for(;t!==null;){var i=t===e?null:Xo(t);t.remove(),t=i}}function jm(t){var e=t.parent,i=t.prev,s=t.next;i!==null&&(i.next=s),s!==null&&(s.prev=i),e!==null&&(e.first===t&&(e.first=s),e.last===t&&(e.last=i))}function Rr(t,e,i=!0){var s=[];Gm(t,s,!0);var n=()=>{i&&Di(t),e&&e()},a=s.length;if(a>0){var o=()=>--a||n();for(var l of s)l.out(o)}else n()}function Gm(t,e,i){if((t.f&ts)===0){t.f^=ts;var s=t.nodes&&t.nodes.t;if(s!==null)for(const l of s)(l.is_global||i)&&e.push(l);for(var n=t.first;n!==null;){var a=n.next;if((n.f&_r)===0){var o=(n.f&Yr)!==0||(n.f&cn)!==0&&(t.f&nn)!==0;Gm(n,e,o?i:!1)}n=a}}}function gc(t){qm(t,!0)}function qm(t,e){if((t.f&ts)!==0){t.f^=ts,(t.f&ki)===0&&(li(t,Ni),gr.ensure().schedule(t));for(var i=t.first;i!==null;){var s=i.next,n=(i.f&Yr)!==0||(i.f&cn)!==0;qm(i,n?e:!1),i=s}var a=t.nodes&&t.nodes.t;if(a!==null)for(const o of a)(o.is_global||e)&&o.in()}}function lf(t,e){if(t.nodes)for(var i=t.nodes.start,s=t.nodes.end;i!==null;){var n=i===s?null:Xo(i);e.append(i),i=n}}let ha=null;function cx(t){var e=ha;try{if(ha=new Set,k(t),e!==null)for(var i of ha)e.add(i);return ha}finally{ha=e}}function yn(t){for(var e of cx(t))Xr(e,e.v)}let Ql=!1,Xn=!1;function kp(t){Xn=t}let ge=null,an=!1;function tn(t){ge=t}let ne=null;function xs(t){ne=t}let Tn=null;function Wm(t){ge!==null&&(Tn??=new Set).add(t)}let ds=null,$s=0,Ks=null;function ux(t){Ks=t}let Ym=1,Fr=0,Vr=Fr;function Ep(t){Vr=t}function Km(){return++Ym}function Va(t){var e=t.f;if((e&Ni)!==0)return!0;if(e&Ri&&(t.f&=~Kr),(e&un)!==0){for(var i=t.deps,s=i.length,n=0;n<s;n++){var a=i[n];if(Va(a)&&Um(a),a.wv>t.wv)return!0}(e&Qs)!==0&&rn===null&&li(t,ki)}return!1}function Xm(t,e,i=!0){var s=t.reactions;if(s!==null&&!(Tn!==null&&Tn.has(t)))for(var n=0;n<s.length;n++){var a=s[n];(a.f&Ri)!==0?Xm(a,e,!1):e===a&&(i?li(a,Ni):(a.f&ki)!==0&&li(a,un),rf(a))}}function Jm(t){var e=ds,i=$s,s=Ks,n=ge,a=Tn,o=je,l=an,c=Vr,u=t.f;ds=null,$s=0,Ks=null,ge=(u&(cn|_r))===0?t:null,Tn=null,Ea(t.ctx),an=!1,Vr=++Fr,t.ac!==null&&(Dc(()=>{t.ac.abort(Nc)}),t.ac=null);try{t.f|=pc;var d=t.fn,h=d();t.f|=Oa;var v=t.deps,m=se?.is_fork;if(ds!==null){var y;if(m||Co(t,$s),v!==null&&$s>0)for(v.length=$s+ds.length,y=0;y<ds.length;y++)v[$s+y]=ds[y];else t.deps=v=ds;if(af()&&(t.f&Qs)!==0)for(y=$s;y<v.length;y++)(v[y].reactions??=[]).push(t)}else!m&&v!==null&&$s<v.length&&(Co(t,$s),v.length=$s);if(Da()&&Ks!==null&&!an&&v!==null&&(t.f&(Ri|un|Ni))===0)for(y=0;y<Ks.length;y++)Xm(Ks[y],t);if(n!==null&&n!==t){if(Fr++,n.deps!==null)for(let _=0;_<i;_+=1)n.deps[_].rv=Fr;if(e!==null)for(const _ of e)_.rv=Fr;Ks!==null&&(s===null?s=Ks:s.push(...Ks))}return(t.f&pr)!==0&&(t.f^=pr),h}catch(_){return wm(_)}finally{t.f^=pc,ds=e,$s=i,Ks=s,ge=n,Tn=a,Ea(o),an=l,Vr=c}}function dx(t,e){let i=e.reactions;if(i!==null){var s=Z0.call(i,t);if(s!==-1){var n=i.length-1;n===0?i=e.reactions=null:(i[s]=i[n],i.pop())}}if(i===null&&(e.f&Ri)!==0&&(ds===null||!fc.call(ds,e))){var a=e;(a.f&Qs)!==0&&(a.f^=Qs,a.f&=~Kr),a.v!==wi&&ef(a),Wb(a),Co(a,0)}}function Co(t,e){var i=t.deps;if(i!==null)for(var s=e;s<i.length;s++)dx(t,i[s])}function Jr(t){var e=t.f;if((e&Ls)===0){li(t,ki);var i=ne,s=Ql;ne=t,Ql=!0;try{(e&(nn|tf))!==0?ox(t):of(t),Hm(t);var n=Jm(t);t.teardown=typeof n=="function"?n:null,t.wv=Ym;var a;um&&$b&&(t.f&Ni)!==0&&t.deps}finally{Ql=s,ne=i}}}async function fx(){await Promise.resolve(),Kb()}function r(t){var e=t.f,i=(e&Ri)!==0;if(ha?.add(t),ge!==null&&!an){var s=ne!==null&&(ne.f&Ls)!==0;if(!s&&(Tn===null||!Tn.has(t))){var n=ge.deps;if((ge.f&pc)!==0)t.rv<Fr&&(t.rv=Fr,ds===null&&n!==null&&n[$s]===t?$s++:ds===null?ds=[t]:ds.push(t));else{ge.deps??=[],fc.call(ge.deps,t)||ge.deps.push(t);var a=t.reactions;a===null?t.reactions=[ge]:fc.call(a,ge)||a.push(ge)}}}if(Xn&&Lr.has(t))return Lr.get(t);if(i){var o=t;if(Xn){var l=o.v;return((o.f&ki)===0&&o.reactions!==null||Qm(o))&&(l=sf(o)),Lr.set(o,l),l}var c=(o.f&Qs)===0&&!an&&ge!==null&&(Ql||(ge.f&Qs)!==0),u=(o.f&Oa)===0;Va(o)&&(c&&(o.f|=Qs),Um(o)),c&&!u&&(Tm(o),Zm(o))}if(rn?.has(t))return rn.get(t);if((t.f&pr)!==0)throw t.v;return t.v}function Zm(t){if(t.f|=Qs,t.deps!==null)for(const e of t.deps)(e.reactions??=[]).push(t),(e.f&Ri)!==0&&(e.f&Qs)===0&&(Tm(e),Zm(e))}function Qm(t){if(t.v===wi)return!0;if(t.deps===null)return!1;for(const e of t.deps)if(Lr.has(e)||(e.f&Ri)!==0&&Qm(e))return!0;return!1}function k(t){var e=an;try{return an=!0,t()}finally{an=e}}function Wt(t){if(!(typeof t!="object"||!t||t instanceof EventTarget)){if(Un in t)Sd(t);else if(!Array.isArray(t))for(let e in t){const i=t[e];typeof i=="object"&&i&&Un in i&&Sd(i)}}}function Sd(t,e=new Set){if(typeof t=="object"&&t!==null&&!(t instanceof EventTarget)&&!e.has(t)){e.add(t),t instanceof Date&&t.getTime();for(let s in t)try{Sd(t[s],e)}catch{}const i=Qd(t);if(i!==Object.prototype&&i!==Array.prototype&&i!==Map.prototype&&i!==Set.prototype&&i!==Date.prototype){const s=dm(i);for(let n in s){const a=s[n].get;if(a)try{a.call(t)}catch{}}}}}function hx(t){return t.endsWith("capture")&&t!=="gotpointercapture"&&t!=="lostpointercapture"}const px=["beforeinput","click","change","dblclick","contextmenu","focusin","focusout","input","keydown","keyup","mousedown","mousemove","mouseout","mouseover","mouseup","pointerdown","pointermove","pointerout","pointerover","pointerup","touchend","touchmove","touchstart"];function vx(t){return px.includes(t)}const mx={formnovalidate:"formNoValidate",ismap:"isMap",nomodule:"noModule",playsinline:"playsInline",readonly:"readOnly",defaultvalue:"defaultValue",defaultchecked:"defaultChecked",srcobject:"srcObject",novalidate:"noValidate",allowfullscreen:"allowFullscreen",disablepictureinpicture:"disablePictureInPicture",disableremoteplayback:"disableRemotePlayback"};function _x(t){return t=t.toLowerCase(),mx[t]??t}const gx=["touchstart","touchmove"];function yx(t){return gx.includes(t)}const bo=Symbol("events"),t_=new Set,kd=new Set;function e_(t,e,i,s={}){function n(a){if(s.capture||Ed.call(e,a),!a.cancelBubble)return Dc(()=>i?.call(this,a))}return t.startsWith("pointer")||t.startsWith("touch")||t==="wheel"?Wn(()=>{e.addEventListener(t,n,s)}):e.addEventListener(t,n,s),n}function B(t,e,i,s,n){var a={capture:s,passive:n},o=e_(t,e,i,a);(e===document.body||e===window||e===document||e instanceof HTMLMediaElement)&&La(()=>{e.removeEventListener(t,o,a)})}function bx(t,e,i){(e[bo]??={})[t]=i}function xx(t){for(var e=0;e<t.length;e++)t_.add(t[e]);for(var i of kd)i(t)}let Bp=null;function Ed(t){var e=this,i=e.ownerDocument,s=t.type,n=t.composedPath?.()||[],a=n[0]||t.target;Bp=t;var o=0,l=Bp===t&&t[bo];if(l){var c=n.indexOf(l);if(c!==-1&&(e===document||e===window)){t[bo]=e;return}var u=n.indexOf(e);if(u===-1)return;c<=u&&(o=c)}if(a=n[o]||t.target,a!==e){Q0(t,"currentTarget",{configurable:!0,get(){return a||i}});var d=ge,h=ne;tn(null),xs(null);try{for(var v,m=[];a!==null&&a!==e;){try{var y=a[bo]?.[s];y!=null&&(!a.disabled||t.target===a)&&y.call(a,t)}catch(_){v?m.push(_):v=_}if(t.cancelBubble)break;o++,a=o<n.length?n[o]:null}if(v){for(let _ of m)queueMicrotask(()=>{throw _});throw v}}finally{t[bo]=e,delete t.currentTarget,tn(d),xs(h)}}}const wx=globalThis?.window?.trustedTypes&&globalThis.window.trustedTypes.createPolicy("svelte-trusted-html",{createHTML:t=>t});function Sx(t){return wx?.createHTML(t)??t}function i_(t){var e=Fm("template");return e.innerHTML=Sx(t.replaceAll("<!>","<!---->")),e.content}function $o(t,e){var i=ne;i.nodes===null&&(i.nodes={start:t,end:e,a:null,t:null})}function V(t,e){var i=(e&Ub)!==0,s=(e&Tb)!==0,n,a=!t.startsWith("<!>");return()=>{n===void 0&&(n=i_(a?t:"<!>"+t),i||(n=Ua(n)));var o=s||Cm?document.importNode(n,!0):n.cloneNode(!0);if(i){var l=Ua(o),c=o.lastChild;$o(l,c)}else $o(o,o);return o}}function kx(t,e,i="svg"){var s=!t.startsWith("<!>"),n=`<${i}>${s?t:"<!>"+t}</${i}>`,a;return()=>{if(!a){var o=i_(n),l=Ua(o);a=Ua(l)}var c=a.cloneNode(!0);return $o(c,c),c}}function s_(t,e){return kx(t,e,"svg")}function It(){var t=document.createDocumentFragment(),e=document.createComment(""),i=Yn();return t.append(e,i),$o(e,i),t}function A(t,e){t!==null&&t.before(e)}function rt(t,e){var i=e==null?"":typeof e=="object"?`${e}`:e;i!==(t[yd]??=t.nodeValue)&&(t[yd]=i,t.nodeValue=`${i}`)}function Ex(t,e){return Bx(t,e)}const Il=new Map;function Bx(t,{target:e,anchor:i,props:s={},events:n,context:a,intro:o=!0,transformError:l}){Qb();var c=void 0,u=rx(()=>{var d=i??e.appendChild(Yn());Vb(d,{pending:()=>{}},m=>{An({});var y=je;a&&(y.c=a),n&&(s.$$events=n),c=t(m,s)||{},zn()},l);var h=new Set,v=m=>{for(var y=0;y<m.length;y++){var _=m[y];if(!h.has(_)){h.add(_);var S=yx(_);for(const C of[e,document]){var T=Il.get(C);T===void 0&&(T=new Map,Il.set(C,T));var I=T.get(_);I===void 0?(C.addEventListener(_,Ed,{passive:S}),T.set(_,1)):T.set(_,I+1)}}}};return v(Oc(t_)),kd.add(v),()=>{for(var m of h)for(const S of[e,document]){var y=Il.get(S),_=y.get(m);--_==0?(S.removeEventListener(m,Ed),y.delete(m),y.size===0&&Il.delete(S)):y.set(m,_)}kd.delete(v),d!==i&&d.parentNode?.removeChild(d)}});return Ux.set(c,u),c}let Ux=new WeakMap;class cf{anchor;#t=new Map;#a=new Map;#e=new Map;#l=new Set;#s=!0;constructor(e,i=!0){this.anchor=e,this.#s=i}#r=e=>{if(this.#t.has(e)){var i=this.#t.get(e),s=this.#a.get(i);if(s)gc(s),this.#l.delete(i);else{var n=this.#e.get(i);n&&(gc(n.effect),this.#a.set(i,n.effect),this.#e.delete(i),n.fragment.lastChild.remove(),this.anchor.before(n.fragment),s=n.effect)}for(const[a,o]of this.#t){if(this.#t.delete(a),a===e)break;const l=this.#e.get(o);l&&(Di(l.effect),this.#e.delete(o))}for(const[a,o]of this.#a){if(a===i||this.#l.has(a))continue;const l=()=>{if(Array.from(this.#t.values()).includes(a)){var u=document.createDocumentFragment();lf(o,u),u.append(Yn()),this.#e.set(a,{effect:o,fragment:u})}else Di(o);this.#l.delete(a),this.#a.delete(a)};this.#s||!s?(this.#l.add(a),Rr(o,l,!1)):l()}}};#i=e=>{this.#t.delete(e);const i=Array.from(this.#t.values());for(const[s,n]of this.#e)i.includes(s)||(Di(n.effect),this.#e.delete(s))};ensure(e,i){var s=se,n=Nm();if(i&&!this.#a.has(e)&&!this.#e.has(e))if(n){var a=document.createDocumentFragment(),o=Yn();a.append(o),this.#e.set(e,{effect:fs(()=>i(o)),fragment:a})}else this.#a.set(e,fs(()=>i(this.anchor)));if(this.#t.set(s,e),n){for(const[l,c]of this.#a)l===e?s.unskip_effect(c):s.skip_effect(c);for(const[l,c]of this.#e)l===e?s.unskip_effect(c.effect):s.skip_effect(c.effect);s.oncommit(this.#r),s.ondiscard(this.#i)}else this.#r(s)}}function tt(t,e,i=!1){var s=new cf(t),n=i?Yr:0;function a(o,l){s.ensure(o,l)}Jo(()=>{var o=!1;e((l,c=0)=>{o=!0,a(c,l)}),o||a(-1,null)},n)}const Tx=Symbol("NaN");function Px(t,e,i){var s=new cf(t),n=!Da();Jo(()=>{var a=e();a!==a&&(a=Tx),n&&a!==null&&typeof a=="object"&&(a={}),s.ensure(a,i)})}function ve(t,e){return e}function Ax(t,e,i){for(var s=[],n=e.length,a,o=e.length,l=0;l<n;l++){let h=e[l];Rr(h,()=>{if(a){if(a.pending.delete(h),a.done.add(h),a.pending.size===0){var v=t.outrogroups;Bd(t,Oc(a.done)),v.delete(a),v.size===0&&(t.outrogroups=null)}}else o-=1},!1)}if(o===0){var c=s.length===0&&i!==null;if(c){var u=i,d=u.parentNode;tx(d),d.append(u),t.items.clear()}Bd(t,e,!c)}else a={pending:new Set(e),done:new Set},(t.outrogroups??=new Set).add(a)}function Bd(t,e,i=!0){var s;if(t.pending.size>0){s=new Set;for(const o of t.pending.values())for(const l of o)s.add(t.items.get(l).e)}for(var n=0;n<e.length;n++){var a=e[n];if(s?.has(a)){a.f|=En;const o=document.createDocumentFragment();lf(a,o)}else Di(e[n],i)}}var Up;function ue(t,e,i,s,n,a=null){var o=t,l=new Map,c=(e&mm)!==0;if(c){var u=t;o=u.appendChild(Yn())}var d=null,h=cs(()=>{var C=i();return $c(C)?C:C==null?[]:Oc(C)}),v,m=new Map,y=!0;function _(C){(I.effect.f&Ls)===0&&(I.pending.delete(C),I.fallback=d,zx(I,v,o,e,s),d!==null&&(v.length===0?(d.f&En)===0?gc(d):(d.f^=En,xo(d,null,o)):Rr(d,()=>{d=null})))}function S(C){I.pending.delete(C)}var T=Jo(()=>{v=r(h);for(var C=v.length,$=new Set,M=se,D=Nm(),F=0;F<C;F+=1){var L=v[F],P=s(L,F),j=y?null:l.get(P);j?(j.v&&Xr(j.v,L),j.i&&Xr(j.i,F),D&&M.unskip_effect(j.e)):(j=Mx(l,y?o:Up??=Yn(),L,P,F,n,e,i),y||(j.e.f|=En),l.set(P,j)),$.add(P)}if(C===0&&a&&!d&&(y?d=fs(()=>a(o)):(d=fs(()=>a(Up??=Yn())),d.f|=En)),C>$.size&&cb(),!y)if(m.set(M,$),D){for(const[_t,ft]of l)$.has(_t)||M.skip_effect(ft.e);M.oncommit(_),M.ondiscard(S)}else _(M);r(h)}),I={effect:T,items:l,pending:m,outrogroups:null,fallback:d};y=!1}function oo(t){for(;t!==null&&(t.f&cn)===0;)t=t.next;return t}function zx(t,e,i,s,n){var a=(s&xb)!==0,o=e.length,l=t.items,c=oo(t.effect.first),u,d=null,h,v=[],m=[],y,_,S,T;if(a)for(T=0;T<o;T+=1)y=e[T],_=n(y,T),S=l.get(_).e,(S.f&En)===0&&(S.nodes?.a?.measure(),(h??=new Set).add(S));for(T=0;T<o;T+=1){if(y=e[T],_=n(y,T),S=l.get(_).e,t.outrogroups!==null)for(const j of t.outrogroups)j.pending.delete(S),j.done.delete(S);if((S.f&ts)!==0&&(gc(S),a&&(S.nodes?.a?.unfix(),(h??=new Set).delete(S))),(S.f&En)!==0)if(S.f^=En,S===c)xo(S,null,i);else{var I=d?d.next:c;S===t.effect.last&&(t.effect.last=S.prev),S.prev&&(S.prev.next=S.next),S.next&&(S.next.prev=S.prev),rr(t,d,S),rr(t,S,I),xo(S,I,i),d=S,v=[],m=[],c=oo(d.next);continue}if(S!==c){if(u!==void 0&&u.has(S)){if(v.length<m.length){var C=m[0],$;d=C.prev;var M=v[0],D=v[v.length-1];for($=0;$<v.length;$+=1)xo(v[$],C,i);for($=0;$<m.length;$+=1)u.delete(m[$]);rr(t,M.prev,D.next),rr(t,d,M),rr(t,D,C),c=C,d=D,T-=1,v=[],m=[]}else u.delete(S),xo(S,c,i),rr(t,S.prev,S.next),rr(t,S,d===null?t.effect.first:d.next),rr(t,d,S),d=S;continue}for(v=[],m=[];c!==null&&c!==S;)(u??=new Set).add(c),m.push(c),c=oo(c.next);if(c===null)continue}(S.f&En)===0&&v.push(S),d=S,c=oo(S.next)}if(t.outrogroups!==null){for(const j of t.outrogroups)j.pending.size===0&&(Bd(t,Oc(j.done)),t.outrogroups?.delete(j));t.outrogroups.size===0&&(t.outrogroups=null)}if(c!==null||u!==void 0){var F=[];if(u!==void 0)for(S of u)(S.f&ts)===0&&F.push(S);for(;c!==null;)(c.f&ts)===0&&c!==t.fallback&&F.push(c),c=oo(c.next);var L=F.length;if(L>0){var P=(s&mm)!==0&&o===0?i:null;if(a){for(T=0;T<L;T+=1)F[T].nodes?.a?.measure();for(T=0;T<L;T+=1)F[T].nodes?.a?.fix()}Ax(t,F,P)}}a&&Wn(()=>{if(h!==void 0)for(S of h)S.nodes?.a?.apply()})}function Mx(t,e,i,s,n,a,o,l){var c=(o&yb)!==0?(o&wb)===0?R(i,!1,!1):yr(i):null,u=(o&bb)!==0?yr(n):null;return{v:c,i:u,e:fs(()=>(a(e,c??i,u??n,l),()=>{t.delete(s)}))}}function xo(t,e,i){if(t.nodes)for(var s=t.nodes.start,n=t.nodes.end,a=e&&(e.f&En)===0?e.nodes.start:i;s!==null;){var o=Xo(s);if(a.before(s),s===n)return;s=o}}function rr(t,e,i){e===null?t.effect.first=i:e.next=i,i===null?t.effect.last=e:i.prev=e}function Dt(t,e,i,s,n){var a=e.$$slots?.[i],o=!1;a===!0&&(a=e.children,o=!0),a===void 0||a(t,o?()=>s:s)}function Ix(t,e,i,s,n,a){var o=null,l=t,c=new cf(l,!1);Jo(()=>{const u=e()||null;var d=Pb;if(u===null){c.ensure(null,null);return}return c.ensure(u,h=>{if(u){if(o=Fm(u,d),$o(o,o),s){var v=null,m=o.appendChild(Yn());s(o,m),v?.remove()}ne.nodes.end=o,h.before(o)}}),()=>{}},Yr),La(()=>{})}function Cx(t,e){var i=void 0,s;Vm(()=>{i!==(i=e())&&(s&&(Di(s),s=null),i&&(s=fs(()=>{Lc(()=>i(t))})))})}function n_(t){var e,i,s="";if(typeof t=="string"||typeof t=="number")s+=t;else if(typeof t=="object")if(Array.isArray(t)){var n=t.length;for(e=0;e<n;e++)t[e]&&(i=n_(t[e]))&&(s&&(s+=" "),s+=i)}else for(i in t)t[i]&&(s&&(s+=" "),s+=i);return s}function $x(){for(var t,e,i=0,s="",n=arguments.length;i<n;i++)(t=arguments[i])&&(e=n_(t))&&(s&&(s+=" "),s+=e);return s}function Ox(t){return typeof t=="object"?$x(t):t??""}const Tp=[...`
2
+ \r\f \v\uFEFF`];function Nx(t,e,i){var s=t==null?"":""+t;if(e&&(s=s?s+" "+e:e),i){for(var n of Object.keys(i))if(i[n])s=s?s+" "+n:n;else if(s.length)for(var a=n.length,o=0;(o=s.indexOf(n,o))>=0;){var l=o+a;(o===0||Tp.includes(s[o-1]))&&(l===s.length||Tp.includes(s[l]))?s=(o===0?"":s.substring(0,o))+s.substring(l+1):o=l}}return s===""?null:s}function Pp(t,e=!1){var i=e?" !important;":";",s="";for(var n of Object.keys(t)){var a=t[n];a!=null&&a!==""&&(s+=" "+n+": "+a+i)}return s}function Fu(t){return t[0]!=="-"||t[1]!=="-"?t.toLowerCase():t}function Fx(t,e){if(e){var i="",s,n;if(Array.isArray(e)?(s=e[0],n=e[1]):s=e,t){t=String(t).replaceAll(/\s*\/\*.*?\*\/\s*/g,"").trim();var a=!1,o=0,l=!1,c=[];s&&c.push(...Object.keys(s).map(Fu)),n&&c.push(...Object.keys(n).map(Fu));var u=0,d=-1;const _=t.length;for(var h=0;h<_;h++){var v=t[h];if(l?v==="/"&&t[h-1]==="*"&&(l=!1):a?a===v&&(a=!1):v==="/"&&t[h+1]==="*"?l=!0:v==='"'||v==="'"?a=v:v==="("?o++:v===")"&&o--,!l&&a===!1&&o===0){if(v===":"&&d===-1)d=h;else if(v===";"||h===_-1){if(d!==-1){var m=Fu(t.substring(u,d).trim());if(!c.includes(m)){v!==";"&&h++;var y=t.substring(u,h).trim();i+=" "+y+";"}}u=h+1,d=-1}}}}return s&&(i+=Pp(s)),n&&(i+=Pp(n,!0)),i=i.trim(),i===""?null:i}return t==null?null:String(t)}function $t(t,e,i,s,n,a){var o=t[_d];if(o!==i||o===void 0){var l=Nx(i,s,a);l==null?t.removeAttribute("class"):e?t.className=l:t.setAttribute("class",l),t[_d]=i}else if(a&&n!==a)for(var c in a){var u=!!a[c];(n==null||u!==!!n[c])&&t.classList.toggle(c,u)}return a}function Du(t,e={},i,s){for(var n in i){var a=i[n];e[n]!==a&&(i[n]==null?t.style.removeProperty(n):t.style.setProperty(n,a,s))}}function pe(t,e,i,s){var n=t[gd];if(n!==e){var a=Fx(e,s);a==null?t.removeAttribute("style"):t.style.cssText=a,t[gd]=e}else s&&(Array.isArray(s)?(Du(t,i?.[0],s[0]),Du(t,i?.[1],s[1],"important")):Du(t,i,s));return s}function Kn(t,e,i=!1){if(t.multiple){if(e==null)return;if(!$c(e))return Mb();for(var s of t.options)s.selected=e.includes(To(s));return}for(s of t.options){var n=To(s);if(Zb(n,e)){s.selected=!0;return}}(!i||e!==void 0)&&(t.selectedIndex=-1)}function Hr(t){var e=new MutationObserver(()=>{Kn(t,t.__value)});e.observe(t,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["value"]}),La(()=>{e.disconnect()})}function Dx(t,e,i=e){var s=new WeakSet,n=!0;Dm(t,"change",a=>{var o=a?"[selected]":":checked",l;if(t.multiple)l=[].map.call(t.querySelectorAll(o),To);else{var c=t.querySelector(o)??t.querySelector("option:not([disabled])");l=c&&To(c)}i(l),t.__value=l,se!==null&&s.add(se)}),Lc(()=>{var a=e();if(t===document.activeElement){var o=se;if(s.has(o))return}if(Kn(t,a,n),n&&a===void 0){var l=t.querySelector(":checked");l!==null&&(a=To(l),i(a))}t.__value=a,n=!1}),Hr(t)}function To(t){return"__value"in t?t.__value:t.value}const lo=Symbol("class"),co=Symbol("style"),r_=Symbol("is custom element"),a_=Symbol("is html"),Lx=Fc?"input":"INPUT",Rx=Fc?"option":"OPTION",Vx=Fc?"select":"SELECT",Hx=Fc?"progress":"PROGRESS";function le(t,e){var i=Rc(t);i.value===(i.value=e??void 0)||t.value===e&&(e!==0||t.nodeName!==Hx)||(t.value=e??"")}function Oo(t,e){var i=Rc(t);i.checked!==(i.checked=e??void 0)&&(t.checked=e)}function jx(t,e){e?t.hasAttribute("selected")||t.setAttribute("selected",""):t.removeAttribute("selected")}function Q(t,e,i,s){var n=Rc(t);n[e]!==(n[e]=i)&&(e==="loading"&&(t[ab]=i),i==null?t.removeAttribute(e):typeof i!="string"&&o_(t).includes(e)?t[e]=i:t.setAttribute(e,i))}function Gx(t,e,i,s,n=!1,a=!1){var o=Rc(t),l=o[r_],c=!o[a_],u=e||{},d=t.nodeName===Rx;for(var h in e)h in i||(i[h]=null);i.class?i.class=Ox(i.class):i[lo]&&(i.class=null),i[co]&&(i.style??=null);var v=o_(t);if(t.nodeName===Lx&&"type"in i&&("value"in i||"__value"in i)){var m=i.type;(m!==u.type||m===void 0&&t.hasAttribute("type"))&&(u.type=m,Q(t,"type",m))}for(const M in i){let D=i[M];if(d&&M==="value"&&D==null){t.value=t.__value="",u[M]=D;continue}if(M==="class"){var y=t.namespaceURI==="http://www.w3.org/1999/xhtml";$t(t,y,D,s,e?.[lo],i[lo]),u[M]=D,u[lo]=i[lo];continue}if(M==="style"){pe(t,D,e?.[co],i[co]),u[M]=D,u[co]=i[co];continue}var _=u[M];if(!(D===_&&!(D===void 0&&t.hasAttribute(M)))){u[M]=D;var S=M[0]+M[1];if(S!=="$$")if(S==="on"){const F={},L="$$"+M;let P=M.slice(2);var T=vx(P);if(hx(P)&&(P=P.slice(0,-7),F.capture=!0),!T&&_){if(D!=null)continue;t.removeEventListener(P,u[L],F),u[L]=null}if(T)bx(P,t,D),xx([P]);else if(D!=null){let j=function(_t){u[M].call(this,_t)};var $=j;u[L]=e_(P,t,j,F)}}else if(M==="style")Q(t,M,D);else if(M==="autofocus")ex(t,!!D);else if(!l&&(M==="__value"||M==="value"&&D!=null))t.value=t.__value=D;else if(M==="selected"&&d)jx(t,D);else{var I=M;c||(I=_x(I));var C=I==="defaultValue"||I==="defaultChecked";if(D==null&&!l&&!C)if(o[M]=null,I==="value"||I==="checked"){let F=t;const L=e===void 0;if(I==="value"){let P=F.defaultValue;F.removeAttribute(I),F.defaultValue=P,F.value=F.__value=L?P:null}else{let P=F.defaultChecked;F.removeAttribute(I),F.defaultChecked=P,F.checked=L?P:!1}}else t.removeAttribute(M);else C||v.includes(I)&&(l||typeof D!="string")?(t[I]=D,I in o&&(o[I]=wi)):typeof D!="function"&&Q(t,I,D)}}}return u}function Ap(t,e,i=[],s=[],n=[],a,o=!1,l=!1){Em(n,i,s,c=>{var u=void 0,d={},h=t.nodeName===Vx,v=!1;if(Vm(()=>{var y=e(...c.map(r)),_=Gx(t,u,y,a,o,l);v&&h&&"value"in y&&Kn(t,y.value);for(let T of Object.getOwnPropertySymbols(d))y[T]||Di(d[T]);for(let T of Object.getOwnPropertySymbols(y)){var S=y[T];T.description===Ab&&(!u||S!==u[T])&&(d[T]&&Di(d[T]),d[T]=fs(()=>Cx(t,()=>S))),_[T]=S}u=_}),h){var m=t;Lc(()=>{Kn(m,u.value,!0),Hr(m)})}v=!0})}function Rc(t){return t[vm]??={[r_]:t.nodeName.includes("-"),[a_]:t.namespaceURI===gm}}var zp=new Map;function o_(t){var e=t.getAttribute("is")||t.nodeName,i=zp.get(e);if(i)return i;zp.set(e,i=[]);for(var s,n=t,a=Element.prototype;a!==n;){s=dm(n);for(var o in s)s[o].set&&o!=="innerHTML"&&o!=="textContent"&&o!=="innerText"&&i.push(o);n=Qd(n)}return i}function qi(t,e,i=e){var s=new WeakSet;Dm(t,"input",async n=>{var a=n?t.defaultValue:t.value;if(a=Lu(t)?Ru(a):a,i(a),se!==null&&s.add(se),await fx(),a!==(a=e())){var o=t.selectionStart,l=t.selectionEnd,c=t.value.length;if(t.value=a??"",l!==null){var u=t.value.length;o===l&&l===c&&u>c?(t.selectionStart=u,t.selectionEnd=u):(t.selectionStart=o,t.selectionEnd=Math.min(l,u))}}}),k(e)==null&&t.value&&(i(Lu(t)?Ru(t.value):t.value),se!==null&&s.add(se)),Ra(()=>{var n=e();if(t===document.activeElement){var a=se;if(s.has(a))return}Lu(t)&&n===Ru(t.value)||t.type==="date"&&!n&&!t.value||n!==t.value&&(t.value=n??"")})}function Lu(t){var e=t.type;return e==="number"||e==="range"}function Ru(t){return t===""?null:+t}function qx(t,e,i){var s=qn(t,e);s&&s.set&&(t[e]=i,La(()=>{t[e]=null}))}function Vu(t,e){return t===e||t?.[Un]===e}function Xs(t={},e,i,s){var n=je.r,a=ne;return Lc(()=>{var o,l;return Ra(()=>{o=l,l=[],k(()=>{Vu(i(...l),t)||(e(t,...l),o&&Vu(i(...o),t)&&e(null,...o))})}),()=>{let c=a;for(;c!==n&&c.parent!==null&&c.parent.f&md;)c=c.parent;const u=()=>{l&&Vu(i(...l),t)&&e(null,...l)},d=c.teardown;c.teardown=()=>{u(),d?.()}}}),t}function Mp(t,e,i,s,n){var a=()=>{s(i[t])};i.addEventListener(e,a),n?Ra(()=>{i[t]=n()}):a(),(i===document.body||i===window||i===document)&&La(()=>{i.removeEventListener(e,a)})}function Pi(t){return function(...e){var i=e[0];return i.stopPropagation(),t?.apply(this,e)}}function Hu(t){return function(...e){var i=e[0];return i.preventDefault(),t?.apply(this,e)}}function tr(t=!1){const e=je,i=e.l.u;if(!i)return;let s=()=>Wt(e.s);if(t){let n=0,a={};const o=Ba(()=>{let l=!1;const c=e.s;for(const u in c)c[u]!==a[u]&&(a[u]=c[u],l=!0);return l&&n++,n});s=()=>r(o)}i.b.length&&nx(()=>{Ip(e,s),pd(i.b)}),wd(()=>{const n=k(()=>i.m.map(sb));return()=>{for(const a of n)typeof a=="function"&&a()}}),i.a.length&&wd(()=>{Ip(e,s),pd(i.a)})}function Ip(t,e){if(t.l.s)for(const i of t.l.s)r(i);e()}function Cl(t,e){var i=t.$$events?.[e.type],s=$c(i)?i.slice():i==null?[]:[i];for(var n of s)n.call(this,e)}const Wx={get(t,e){if(!t.exclude.includes(e))return r(t.version),e in t.special?t.special[e]():t.props[e]},set(t,e,i){if(!(e in t.special)){var s=ne;try{xs(t.parent_effect),t.special[e]=ci({get[e](){return t.props[e]}},e,_m)}finally{xs(s)}}return t.special[e](i),xp(t.version),!0},getOwnPropertyDescriptor(t,e){if(!t.exclude.includes(e)&&e in t.props)return{enumerable:!0,configurable:!0,value:t.props[e]}},deleteProperty(t,e){return t.exclude.includes(e)||(t.exclude.push(e),xp(t.version)),!0},has(t,e){return t.exclude.includes(e)?!1:e in t.props},ownKeys(t){return Reflect.ownKeys(t.props).filter(e=>!t.exclude.includes(e))}};function Ot(t,e){return new Proxy({props:t,exclude:e,special:{},version:yr(0),parent_effect:ne},Wx)}const Yx={get(t,e){let i=t.props.length;for(;i--;){let s=t.props[i];if(ao(s)&&(s=s()),typeof s=="object"&&s!==null&&e in s)return s[e]}},set(t,e,i){let s=t.props.length;for(;s--;){let n=t.props[s];ao(n)&&(n=n());const a=qn(n,e);if(a&&a.set)return a.set(i),!0}return!1},getOwnPropertyDescriptor(t,e){let i=t.props.length;for(;i--;){let s=t.props[i];if(ao(s)&&(s=s()),typeof s=="object"&&s!==null&&e in s){const n=qn(s,e);return n&&!n.configurable&&(n.configurable=!0),n}}},has(t,e){if(e===Un||e===pm)return!1;for(let i of t.props)if(ao(i)&&(i=i()),i!=null&&e in i)return!0;return!1},ownKeys(t){const e=[];for(let i of t.props)if(ao(i)&&(i=i()),!!i){for(const s in i)e.includes(s)||e.push(s);for(const s of Object.getOwnPropertySymbols(i))e.includes(s)||e.push(s)}return e}};function Lt(...t){return new Proxy({props:t},Yx)}function ci(t,e,i,s){var n=!Fa||(i&kb)!==0,a=(i&Eb)!==0,o=(i&Bb)!==0,l=s,c=!0,u=void 0,d=()=>o&&n?(u??=Ba(s),r(u)):(c&&(c=!1,l=o?k(s):s),l);let h;if(a){var v=Un in t||pm in t;h=qn(t,e)?.set??(v&&e in t?$=>t[e]=$:void 0)}var m,y=!1;a?[m,y]=Db(()=>t[e]):m=t[e],m===void 0&&s!==void 0&&(m=d(),h&&(n&&pb(),h(m)));var _;if(n?_=()=>{var $=t[e];return $===void 0?d():(c=!0,$)}:_=()=>{var $=t[e];return $!==void 0&&(l=void 0),$===void 0?l:$},n&&(i&_m)===0)return _;if(h){var S=t.$$legacy;return(function($,M){return arguments.length>0?((!n||!M||S||y)&&h(M?_():$),$):_()})}var T=!1,I=((i&Sb)!==0?Ba:cs)(()=>(T=!1,_()));a&&r(I);var C=ne;return(function($,M){if(arguments.length>0){const D=M?r(I):n&&a?ma($):$;return x(I,D),T=!0,l!==void 0&&(l=D),$}return Xn&&T||(C.f&Ls)!==0?I.v:r(I)})}function Vc(t){je===null&&ob(),Fa&&je.l!==null?Kx(je).m.push(t):wd(()=>{const e=k(t);if(typeof e=="function")return e})}function Kx(t){var e=t.l;return e.u??={a:[],b:[],m:[]}}const l_="motionly.onboarding.complete.v1";function Xx(t,e,i,s="/"){return c_(t,s).replace(/\/$/,"")==="/editor"||i&&!e?"editor":"onboarding"}function on(t="",e="/"){return`${e.endsWith("/")?e:`${e}/`}${t.replace(/^\/+/,"")}`}function c_(t,e="/"){const i=e==="/"?"":e.replace(/\/$/,"");return t.startsWith(i)?t.slice(i.length)||"/":t}const Jx="5";typeof window<"u"&&((window.__svelte??={}).v??=new Set).add(Jx);Ob();/**
3
+ * @license lucide-svelte v1.0.1 - ISC
4
+ *
5
+ * ISC License
6
+ *
7
+ * Copyright (c) 2026 Lucide Icons and Contributors
8
+ *
9
+ * Permission to use, copy, modify, and/or distribute this software for any
10
+ * purpose with or without fee is hereby granted, provided that the above
11
+ * copyright notice and this permission notice appear in all copies.
12
+ *
13
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
14
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
15
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
16
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
17
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
18
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
19
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
20
+ *
21
+ * ---
22
+ *
23
+ * The following Lucide icons are derived from the Feather project:
24
+ *
25
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
26
+ *
27
+ * The MIT License (MIT) (for the icons listed above)
28
+ *
29
+ * Copyright (c) 2013-present Cole Bemis
30
+ *
31
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
32
+ * of this software and associated documentation files (the "Software"), to deal
33
+ * in the Software without restriction, including without limitation the rights
34
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
35
+ * copies of the Software, and to permit persons to whom the Software is
36
+ * furnished to do so, subject to the following conditions:
37
+ *
38
+ * The above copyright notice and this permission notice shall be included in all
39
+ * copies or substantial portions of the Software.
40
+ *
41
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
42
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
43
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
44
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
45
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
46
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
47
+ * SOFTWARE.
48
+ *
49
+ */const Zx={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":2,"stroke-linecap":"round","stroke-linejoin":"round"};/**
50
+ * @license lucide-svelte v1.0.1 - ISC
51
+ *
52
+ * ISC License
53
+ *
54
+ * Copyright (c) 2026 Lucide Icons and Contributors
55
+ *
56
+ * Permission to use, copy, modify, and/or distribute this software for any
57
+ * purpose with or without fee is hereby granted, provided that the above
58
+ * copyright notice and this permission notice appear in all copies.
59
+ *
60
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
61
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
62
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
63
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
64
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
65
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
66
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
67
+ *
68
+ * ---
69
+ *
70
+ * The following Lucide icons are derived from the Feather project:
71
+ *
72
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
73
+ *
74
+ * The MIT License (MIT) (for the icons listed above)
75
+ *
76
+ * Copyright (c) 2013-present Cole Bemis
77
+ *
78
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
79
+ * of this software and associated documentation files (the "Software"), to deal
80
+ * in the Software without restriction, including without limitation the rights
81
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
82
+ * copies of the Software, and to permit persons to whom the Software is
83
+ * furnished to do so, subject to the following conditions:
84
+ *
85
+ * The above copyright notice and this permission notice shall be included in all
86
+ * copies or substantial portions of the Software.
87
+ *
88
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
89
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
90
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
91
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
92
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
93
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
94
+ * SOFTWARE.
95
+ *
96
+ */const Qx=t=>{for(const e in t)if(e.startsWith("aria-")||e==="role"||e==="title")return!0;return!1};/**
97
+ * @license lucide-svelte v1.0.1 - ISC
98
+ *
99
+ * ISC License
100
+ *
101
+ * Copyright (c) 2026 Lucide Icons and Contributors
102
+ *
103
+ * Permission to use, copy, modify, and/or distribute this software for any
104
+ * purpose with or without fee is hereby granted, provided that the above
105
+ * copyright notice and this permission notice appear in all copies.
106
+ *
107
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
108
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
109
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
110
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
111
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
112
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
113
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
114
+ *
115
+ * ---
116
+ *
117
+ * The following Lucide icons are derived from the Feather project:
118
+ *
119
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
120
+ *
121
+ * The MIT License (MIT) (for the icons listed above)
122
+ *
123
+ * Copyright (c) 2013-present Cole Bemis
124
+ *
125
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
126
+ * of this software and associated documentation files (the "Software"), to deal
127
+ * in the Software without restriction, including without limitation the rights
128
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
129
+ * copies of the Software, and to permit persons to whom the Software is
130
+ * furnished to do so, subject to the following conditions:
131
+ *
132
+ * The above copyright notice and this permission notice shall be included in all
133
+ * copies or substantial portions of the Software.
134
+ *
135
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
136
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
137
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
138
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
139
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
140
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
141
+ * SOFTWARE.
142
+ *
143
+ */const Cp=(...t)=>t.filter((e,i,s)=>!!e&&e.trim()!==""&&s.indexOf(e)===i).join(" ").trim();var tw=s_("<svg><!><!></svg>");function Rt(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]),s=Ot(i,["name","color","size","strokeWidth","absoluteStrokeWidth","iconNode"]);An(e,!1);let n=ci(e,"name",8,void 0),a=ci(e,"color",8,"currentColor"),o=ci(e,"size",8,24),l=ci(e,"strokeWidth",8,2),c=ci(e,"absoluteStrokeWidth",8,!1),u=ci(e,"iconNode",24,()=>[]);tr();var d=tw();Ap(d,(m,y,_)=>({...Zx,...m,...s,width:o(),height:o(),stroke:a(),"stroke-width":y,class:_}),[()=>Qx(s)?void 0:{"aria-hidden":"true"},()=>(Wt(c()),Wt(l()),Wt(o()),k(()=>c()?Number(l())*24/Number(o()):l())),()=>(Wt(Cp),Wt(n()),Wt(i),k(()=>Cp("lucide-icon","lucide",n()?`lucide-${n()}`:"",i.class)))]);var h=g(d);ue(h,1,u,ve,(m,y)=>{var _=us(()=>nb(r(y),2));let S=()=>r(_)[0],T=()=>r(_)[1];var I=It(),C=it(I);Ix(C,S,!0,($,M)=>{Ap($,()=>({...T()}))}),A(m,I)});var v=b(h);Dt(v,e,"default",{}),A(t,d),zn()}function $p(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
144
+ * @license lucide-svelte v1.0.1 - ISC
145
+ *
146
+ * ISC License
147
+ *
148
+ * Copyright (c) 2026 Lucide Icons and Contributors
149
+ *
150
+ * Permission to use, copy, modify, and/or distribute this software for any
151
+ * purpose with or without fee is hereby granted, provided that the above
152
+ * copyright notice and this permission notice appear in all copies.
153
+ *
154
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
155
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
156
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
157
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
158
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
159
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
160
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
161
+ *
162
+ * ---
163
+ *
164
+ * The following Lucide icons are derived from the Feather project:
165
+ *
166
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
167
+ *
168
+ * The MIT License (MIT) (for the icons listed above)
169
+ *
170
+ * Copyright (c) 2013-present Cole Bemis
171
+ *
172
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
173
+ * of this software and associated documentation files (the "Software"), to deal
174
+ * in the Software without restriction, including without limitation the rights
175
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
176
+ * copies of the Software, and to permit persons to whom the Software is
177
+ * furnished to do so, subject to the following conditions:
178
+ *
179
+ * The above copyright notice and this permission notice shall be included in all
180
+ * copies or substantial portions of the Software.
181
+ *
182
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
183
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
184
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
185
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
186
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
187
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
188
+ * SOFTWARE.
189
+ *
190
+ */const s=[["rect",{width:"6",height:"14",x:"2",y:"5",rx:"2"}],["rect",{width:"6",height:"10",x:"16",y:"7",rx:"2"}],["path",{d:"M12 2v20"}]];Rt(t,Lt({name:"align-horizontal-justify-center"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function Op(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
191
+ * @license lucide-svelte v1.0.1 - ISC
192
+ *
193
+ * ISC License
194
+ *
195
+ * Copyright (c) 2026 Lucide Icons and Contributors
196
+ *
197
+ * Permission to use, copy, modify, and/or distribute this software for any
198
+ * purpose with or without fee is hereby granted, provided that the above
199
+ * copyright notice and this permission notice appear in all copies.
200
+ *
201
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
202
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
203
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
204
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
205
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
206
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
207
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
208
+ *
209
+ * ---
210
+ *
211
+ * The following Lucide icons are derived from the Feather project:
212
+ *
213
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
214
+ *
215
+ * The MIT License (MIT) (for the icons listed above)
216
+ *
217
+ * Copyright (c) 2013-present Cole Bemis
218
+ *
219
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
220
+ * of this software and associated documentation files (the "Software"), to deal
221
+ * in the Software without restriction, including without limitation the rights
222
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
223
+ * copies of the Software, and to permit persons to whom the Software is
224
+ * furnished to do so, subject to the following conditions:
225
+ *
226
+ * The above copyright notice and this permission notice shall be included in all
227
+ * copies or substantial portions of the Software.
228
+ *
229
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
230
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
231
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
232
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
233
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
234
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
235
+ * SOFTWARE.
236
+ *
237
+ */const s=[["rect",{width:"6",height:"14",x:"2",y:"5",rx:"2"}],["rect",{width:"6",height:"10",x:"12",y:"7",rx:"2"}],["path",{d:"M22 2v20"}]];Rt(t,Lt({name:"align-horizontal-justify-end"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function Np(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
238
+ * @license lucide-svelte v1.0.1 - ISC
239
+ *
240
+ * ISC License
241
+ *
242
+ * Copyright (c) 2026 Lucide Icons and Contributors
243
+ *
244
+ * Permission to use, copy, modify, and/or distribute this software for any
245
+ * purpose with or without fee is hereby granted, provided that the above
246
+ * copyright notice and this permission notice appear in all copies.
247
+ *
248
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
249
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
250
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
251
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
252
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
253
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
254
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
255
+ *
256
+ * ---
257
+ *
258
+ * The following Lucide icons are derived from the Feather project:
259
+ *
260
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
261
+ *
262
+ * The MIT License (MIT) (for the icons listed above)
263
+ *
264
+ * Copyright (c) 2013-present Cole Bemis
265
+ *
266
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
267
+ * of this software and associated documentation files (the "Software"), to deal
268
+ * in the Software without restriction, including without limitation the rights
269
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
270
+ * copies of the Software, and to permit persons to whom the Software is
271
+ * furnished to do so, subject to the following conditions:
272
+ *
273
+ * The above copyright notice and this permission notice shall be included in all
274
+ * copies or substantial portions of the Software.
275
+ *
276
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
277
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
278
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
279
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
280
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
281
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
282
+ * SOFTWARE.
283
+ *
284
+ */const s=[["rect",{width:"6",height:"14",x:"6",y:"5",rx:"2"}],["rect",{width:"6",height:"10",x:"16",y:"7",rx:"2"}],["path",{d:"M2 2v20"}]];Rt(t,Lt({name:"align-horizontal-justify-start"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function Fp(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
285
+ * @license lucide-svelte v1.0.1 - ISC
286
+ *
287
+ * ISC License
288
+ *
289
+ * Copyright (c) 2026 Lucide Icons and Contributors
290
+ *
291
+ * Permission to use, copy, modify, and/or distribute this software for any
292
+ * purpose with or without fee is hereby granted, provided that the above
293
+ * copyright notice and this permission notice appear in all copies.
294
+ *
295
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
296
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
297
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
298
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
299
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
300
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
301
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
302
+ *
303
+ * ---
304
+ *
305
+ * The following Lucide icons are derived from the Feather project:
306
+ *
307
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
308
+ *
309
+ * The MIT License (MIT) (for the icons listed above)
310
+ *
311
+ * Copyright (c) 2013-present Cole Bemis
312
+ *
313
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
314
+ * of this software and associated documentation files (the "Software"), to deal
315
+ * in the Software without restriction, including without limitation the rights
316
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
317
+ * copies of the Software, and to permit persons to whom the Software is
318
+ * furnished to do so, subject to the following conditions:
319
+ *
320
+ * The above copyright notice and this permission notice shall be included in all
321
+ * copies or substantial portions of the Software.
322
+ *
323
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
324
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
325
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
326
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
327
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
328
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
329
+ * SOFTWARE.
330
+ *
331
+ */const s=[["rect",{width:"14",height:"6",x:"5",y:"16",rx:"2"}],["rect",{width:"10",height:"6",x:"7",y:"2",rx:"2"}],["path",{d:"M2 12h20"}]];Rt(t,Lt({name:"align-vertical-justify-center"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function Dp(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
332
+ * @license lucide-svelte v1.0.1 - ISC
333
+ *
334
+ * ISC License
335
+ *
336
+ * Copyright (c) 2026 Lucide Icons and Contributors
337
+ *
338
+ * Permission to use, copy, modify, and/or distribute this software for any
339
+ * purpose with or without fee is hereby granted, provided that the above
340
+ * copyright notice and this permission notice appear in all copies.
341
+ *
342
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
343
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
344
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
345
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
346
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
347
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
348
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
349
+ *
350
+ * ---
351
+ *
352
+ * The following Lucide icons are derived from the Feather project:
353
+ *
354
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
355
+ *
356
+ * The MIT License (MIT) (for the icons listed above)
357
+ *
358
+ * Copyright (c) 2013-present Cole Bemis
359
+ *
360
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
361
+ * of this software and associated documentation files (the "Software"), to deal
362
+ * in the Software without restriction, including without limitation the rights
363
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
364
+ * copies of the Software, and to permit persons to whom the Software is
365
+ * furnished to do so, subject to the following conditions:
366
+ *
367
+ * The above copyright notice and this permission notice shall be included in all
368
+ * copies or substantial portions of the Software.
369
+ *
370
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
371
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
372
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
373
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
374
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
375
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
376
+ * SOFTWARE.
377
+ *
378
+ */const s=[["rect",{width:"14",height:"6",x:"5",y:"12",rx:"2"}],["rect",{width:"10",height:"6",x:"7",y:"2",rx:"2"}],["path",{d:"M2 22h20"}]];Rt(t,Lt({name:"align-vertical-justify-end"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function Lp(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
379
+ * @license lucide-svelte v1.0.1 - ISC
380
+ *
381
+ * ISC License
382
+ *
383
+ * Copyright (c) 2026 Lucide Icons and Contributors
384
+ *
385
+ * Permission to use, copy, modify, and/or distribute this software for any
386
+ * purpose with or without fee is hereby granted, provided that the above
387
+ * copyright notice and this permission notice appear in all copies.
388
+ *
389
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
390
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
391
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
392
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
393
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
394
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
395
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
396
+ *
397
+ * ---
398
+ *
399
+ * The following Lucide icons are derived from the Feather project:
400
+ *
401
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
402
+ *
403
+ * The MIT License (MIT) (for the icons listed above)
404
+ *
405
+ * Copyright (c) 2013-present Cole Bemis
406
+ *
407
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
408
+ * of this software and associated documentation files (the "Software"), to deal
409
+ * in the Software without restriction, including without limitation the rights
410
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
411
+ * copies of the Software, and to permit persons to whom the Software is
412
+ * furnished to do so, subject to the following conditions:
413
+ *
414
+ * The above copyright notice and this permission notice shall be included in all
415
+ * copies or substantial portions of the Software.
416
+ *
417
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
418
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
419
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
420
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
421
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
422
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
423
+ * SOFTWARE.
424
+ *
425
+ */const s=[["rect",{width:"14",height:"6",x:"5",y:"16",rx:"2"}],["rect",{width:"10",height:"6",x:"7",y:"6",rx:"2"}],["path",{d:"M2 2h20"}]];Rt(t,Lt({name:"align-vertical-justify-start"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function ar(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
426
+ * @license lucide-svelte v1.0.1 - ISC
427
+ *
428
+ * ISC License
429
+ *
430
+ * Copyright (c) 2026 Lucide Icons and Contributors
431
+ *
432
+ * Permission to use, copy, modify, and/or distribute this software for any
433
+ * purpose with or without fee is hereby granted, provided that the above
434
+ * copyright notice and this permission notice appear in all copies.
435
+ *
436
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
437
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
438
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
439
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
440
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
441
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
442
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
443
+ *
444
+ * ---
445
+ *
446
+ * The following Lucide icons are derived from the Feather project:
447
+ *
448
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
449
+ *
450
+ * The MIT License (MIT) (for the icons listed above)
451
+ *
452
+ * Copyright (c) 2013-present Cole Bemis
453
+ *
454
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
455
+ * of this software and associated documentation files (the "Software"), to deal
456
+ * in the Software without restriction, including without limitation the rights
457
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
458
+ * copies of the Software, and to permit persons to whom the Software is
459
+ * furnished to do so, subject to the following conditions:
460
+ *
461
+ * The above copyright notice and this permission notice shall be included in all
462
+ * copies or substantial portions of the Software.
463
+ *
464
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
465
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
466
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
467
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
468
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
469
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
470
+ * SOFTWARE.
471
+ *
472
+ */const s=[["path",{d:"M5 12h14"}],["path",{d:"m12 5 7 7-7 7"}]];Rt(t,Lt({name:"arrow-right"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function ew(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
473
+ * @license lucide-svelte v1.0.1 - ISC
474
+ *
475
+ * ISC License
476
+ *
477
+ * Copyright (c) 2026 Lucide Icons and Contributors
478
+ *
479
+ * Permission to use, copy, modify, and/or distribute this software for any
480
+ * purpose with or without fee is hereby granted, provided that the above
481
+ * copyright notice and this permission notice appear in all copies.
482
+ *
483
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
484
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
485
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
486
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
487
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
488
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
489
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
490
+ *
491
+ * ---
492
+ *
493
+ * The following Lucide icons are derived from the Feather project:
494
+ *
495
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
496
+ *
497
+ * The MIT License (MIT) (for the icons listed above)
498
+ *
499
+ * Copyright (c) 2013-present Cole Bemis
500
+ *
501
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
502
+ * of this software and associated documentation files (the "Software"), to deal
503
+ * in the Software without restriction, including without limitation the rights
504
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
505
+ * copies of the Software, and to permit persons to whom the Software is
506
+ * furnished to do so, subject to the following conditions:
507
+ *
508
+ * The above copyright notice and this permission notice shall be included in all
509
+ * copies or substantial portions of the Software.
510
+ *
511
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
512
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
513
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
514
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
515
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
516
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
517
+ * SOFTWARE.
518
+ *
519
+ */const s=[["path",{d:"M12 7v14"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z"}]];Rt(t,Lt({name:"book-open"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function u_(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
520
+ * @license lucide-svelte v1.0.1 - ISC
521
+ *
522
+ * ISC License
523
+ *
524
+ * Copyright (c) 2026 Lucide Icons and Contributors
525
+ *
526
+ * Permission to use, copy, modify, and/or distribute this software for any
527
+ * purpose with or without fee is hereby granted, provided that the above
528
+ * copyright notice and this permission notice appear in all copies.
529
+ *
530
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
531
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
532
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
533
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
534
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
535
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
536
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
537
+ *
538
+ * ---
539
+ *
540
+ * The following Lucide icons are derived from the Feather project:
541
+ *
542
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
543
+ *
544
+ * The MIT License (MIT) (for the icons listed above)
545
+ *
546
+ * Copyright (c) 2013-present Cole Bemis
547
+ *
548
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
549
+ * of this software and associated documentation files (the "Software"), to deal
550
+ * in the Software without restriction, including without limitation the rights
551
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
552
+ * copies of the Software, and to permit persons to whom the Software is
553
+ * furnished to do so, subject to the following conditions:
554
+ *
555
+ * The above copyright notice and this permission notice shall be included in all
556
+ * copies or substantial portions of the Software.
557
+ *
558
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
559
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
560
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
561
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
562
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
563
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
564
+ * SOFTWARE.
565
+ *
566
+ */const s=[["path",{d:"M12 8V4H8"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2"}],["path",{d:"M2 14h2"}],["path",{d:"M20 14h2"}],["path",{d:"M15 13v2"}],["path",{d:"M9 13v2"}]];Rt(t,Lt({name:"bot"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function iw(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
567
+ * @license lucide-svelte v1.0.1 - ISC
568
+ *
569
+ * ISC License
570
+ *
571
+ * Copyright (c) 2026 Lucide Icons and Contributors
572
+ *
573
+ * Permission to use, copy, modify, and/or distribute this software for any
574
+ * purpose with or without fee is hereby granted, provided that the above
575
+ * copyright notice and this permission notice appear in all copies.
576
+ *
577
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
578
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
579
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
580
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
581
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
582
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
583
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
584
+ *
585
+ * ---
586
+ *
587
+ * The following Lucide icons are derived from the Feather project:
588
+ *
589
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
590
+ *
591
+ * The MIT License (MIT) (for the icons listed above)
592
+ *
593
+ * Copyright (c) 2013-present Cole Bemis
594
+ *
595
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
596
+ * of this software and associated documentation files (the "Software"), to deal
597
+ * in the Software without restriction, including without limitation the rights
598
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
599
+ * copies of the Software, and to permit persons to whom the Software is
600
+ * furnished to do so, subject to the following conditions:
601
+ *
602
+ * The above copyright notice and this permission notice shall be included in all
603
+ * copies or substantial portions of the Software.
604
+ *
605
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
606
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
607
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
608
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
609
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
610
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
611
+ * SOFTWARE.
612
+ *
613
+ */const s=[["path",{d:"M20 6 9 17l-5-5"}]];Rt(t,Lt({name:"check"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function sw(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
614
+ * @license lucide-svelte v1.0.1 - ISC
615
+ *
616
+ * ISC License
617
+ *
618
+ * Copyright (c) 2026 Lucide Icons and Contributors
619
+ *
620
+ * Permission to use, copy, modify, and/or distribute this software for any
621
+ * purpose with or without fee is hereby granted, provided that the above
622
+ * copyright notice and this permission notice appear in all copies.
623
+ *
624
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
625
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
626
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
627
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
628
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
629
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
630
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
631
+ *
632
+ * ---
633
+ *
634
+ * The following Lucide icons are derived from the Feather project:
635
+ *
636
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
637
+ *
638
+ * The MIT License (MIT) (for the icons listed above)
639
+ *
640
+ * Copyright (c) 2013-present Cole Bemis
641
+ *
642
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
643
+ * of this software and associated documentation files (the "Software"), to deal
644
+ * in the Software without restriction, including without limitation the rights
645
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
646
+ * copies of the Software, and to permit persons to whom the Software is
647
+ * furnished to do so, subject to the following conditions:
648
+ *
649
+ * The above copyright notice and this permission notice shall be included in all
650
+ * copies or substantial portions of the Software.
651
+ *
652
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
653
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
654
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
655
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
656
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
657
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
658
+ * SOFTWARE.
659
+ *
660
+ */const s=[["path",{d:"m6 9 6 6 6-6"}]];Rt(t,Lt({name:"chevron-down"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function nw(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
661
+ * @license lucide-svelte v1.0.1 - ISC
662
+ *
663
+ * ISC License
664
+ *
665
+ * Copyright (c) 2026 Lucide Icons and Contributors
666
+ *
667
+ * Permission to use, copy, modify, and/or distribute this software for any
668
+ * purpose with or without fee is hereby granted, provided that the above
669
+ * copyright notice and this permission notice appear in all copies.
670
+ *
671
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
672
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
673
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
674
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
675
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
676
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
677
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
678
+ *
679
+ * ---
680
+ *
681
+ * The following Lucide icons are derived from the Feather project:
682
+ *
683
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
684
+ *
685
+ * The MIT License (MIT) (for the icons listed above)
686
+ *
687
+ * Copyright (c) 2013-present Cole Bemis
688
+ *
689
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
690
+ * of this software and associated documentation files (the "Software"), to deal
691
+ * in the Software without restriction, including without limitation the rights
692
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
693
+ * copies of the Software, and to permit persons to whom the Software is
694
+ * furnished to do so, subject to the following conditions:
695
+ *
696
+ * The above copyright notice and this permission notice shall be included in all
697
+ * copies or substantial portions of the Software.
698
+ *
699
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
700
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
701
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
702
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
703
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
704
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
705
+ * SOFTWARE.
706
+ *
707
+ */const s=[["circle",{cx:"12",cy:"12",r:"10"}],["path",{d:"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"}],["path",{d:"M12 17h.01"}]];Rt(t,Lt({name:"circle-question-mark"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function $l(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
708
+ * @license lucide-svelte v1.0.1 - ISC
709
+ *
710
+ * ISC License
711
+ *
712
+ * Copyright (c) 2026 Lucide Icons and Contributors
713
+ *
714
+ * Permission to use, copy, modify, and/or distribute this software for any
715
+ * purpose with or without fee is hereby granted, provided that the above
716
+ * copyright notice and this permission notice appear in all copies.
717
+ *
718
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
719
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
720
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
721
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
722
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
723
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
724
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
725
+ *
726
+ * ---
727
+ *
728
+ * The following Lucide icons are derived from the Feather project:
729
+ *
730
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
731
+ *
732
+ * The MIT License (MIT) (for the icons listed above)
733
+ *
734
+ * Copyright (c) 2013-present Cole Bemis
735
+ *
736
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
737
+ * of this software and associated documentation files (the "Software"), to deal
738
+ * in the Software without restriction, including without limitation the rights
739
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
740
+ * copies of the Software, and to permit persons to whom the Software is
741
+ * furnished to do so, subject to the following conditions:
742
+ *
743
+ * The above copyright notice and this permission notice shall be included in all
744
+ * copies or substantial portions of the Software.
745
+ *
746
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
747
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
748
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
749
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
750
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
751
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
752
+ * SOFTWARE.
753
+ *
754
+ */const s=[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"}]];Rt(t,Lt({name:"copy"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function rw(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
755
+ * @license lucide-svelte v1.0.1 - ISC
756
+ *
757
+ * ISC License
758
+ *
759
+ * Copyright (c) 2026 Lucide Icons and Contributors
760
+ *
761
+ * Permission to use, copy, modify, and/or distribute this software for any
762
+ * purpose with or without fee is hereby granted, provided that the above
763
+ * copyright notice and this permission notice appear in all copies.
764
+ *
765
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
766
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
767
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
768
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
769
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
770
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
771
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
772
+ *
773
+ * ---
774
+ *
775
+ * The following Lucide icons are derived from the Feather project:
776
+ *
777
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
778
+ *
779
+ * The MIT License (MIT) (for the icons listed above)
780
+ *
781
+ * Copyright (c) 2013-present Cole Bemis
782
+ *
783
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
784
+ * of this software and associated documentation files (the "Software"), to deal
785
+ * in the Software without restriction, including without limitation the rights
786
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
787
+ * copies of the Software, and to permit persons to whom the Software is
788
+ * furnished to do so, subject to the following conditions:
789
+ *
790
+ * The above copyright notice and this permission notice shall be included in all
791
+ * copies or substantial portions of the Software.
792
+ *
793
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
794
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
795
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
796
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
797
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
798
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
799
+ * SOFTWARE.
800
+ *
801
+ */const s=[["path",{d:"M12 15V3"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}],["path",{d:"m7 10 5 5 5-5"}]];Rt(t,Lt({name:"download"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function ju(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
802
+ * @license lucide-svelte v1.0.1 - ISC
803
+ *
804
+ * ISC License
805
+ *
806
+ * Copyright (c) 2026 Lucide Icons and Contributors
807
+ *
808
+ * Permission to use, copy, modify, and/or distribute this software for any
809
+ * purpose with or without fee is hereby granted, provided that the above
810
+ * copyright notice and this permission notice appear in all copies.
811
+ *
812
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
813
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
814
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
815
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
816
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
817
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
818
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
819
+ *
820
+ * ---
821
+ *
822
+ * The following Lucide icons are derived from the Feather project:
823
+ *
824
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
825
+ *
826
+ * The MIT License (MIT) (for the icons listed above)
827
+ *
828
+ * Copyright (c) 2013-present Cole Bemis
829
+ *
830
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
831
+ * of this software and associated documentation files (the "Software"), to deal
832
+ * in the Software without restriction, including without limitation the rights
833
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
834
+ * copies of the Software, and to permit persons to whom the Software is
835
+ * furnished to do so, subject to the following conditions:
836
+ *
837
+ * The above copyright notice and this permission notice shall be included in all
838
+ * copies or substantial portions of the Software.
839
+ *
840
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
841
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
842
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
843
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
844
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
845
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
846
+ * SOFTWARE.
847
+ *
848
+ */const s=[["circle",{cx:"12",cy:"12",r:"1"}],["circle",{cx:"19",cy:"12",r:"1"}],["circle",{cx:"5",cy:"12",r:"1"}]];Rt(t,Lt({name:"ellipsis"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function yc(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
849
+ * @license lucide-svelte v1.0.1 - ISC
850
+ *
851
+ * ISC License
852
+ *
853
+ * Copyright (c) 2026 Lucide Icons and Contributors
854
+ *
855
+ * Permission to use, copy, modify, and/or distribute this software for any
856
+ * purpose with or without fee is hereby granted, provided that the above
857
+ * copyright notice and this permission notice appear in all copies.
858
+ *
859
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
860
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
861
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
862
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
863
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
864
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
865
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
866
+ *
867
+ * ---
868
+ *
869
+ * The following Lucide icons are derived from the Feather project:
870
+ *
871
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
872
+ *
873
+ * The MIT License (MIT) (for the icons listed above)
874
+ *
875
+ * Copyright (c) 2013-present Cole Bemis
876
+ *
877
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
878
+ * of this software and associated documentation files (the "Software"), to deal
879
+ * in the Software without restriction, including without limitation the rights
880
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
881
+ * copies of the Software, and to permit persons to whom the Software is
882
+ * furnished to do so, subject to the following conditions:
883
+ *
884
+ * The above copyright notice and this permission notice shall be included in all
885
+ * copies or substantial portions of the Software.
886
+ *
887
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
888
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
889
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
890
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
891
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
892
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
893
+ * SOFTWARE.
894
+ *
895
+ */const s=[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143"}],["path",{d:"m2 2 20 20"}]];Rt(t,Lt({name:"eye-off"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function No(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
896
+ * @license lucide-svelte v1.0.1 - ISC
897
+ *
898
+ * ISC License
899
+ *
900
+ * Copyright (c) 2026 Lucide Icons and Contributors
901
+ *
902
+ * Permission to use, copy, modify, and/or distribute this software for any
903
+ * purpose with or without fee is hereby granted, provided that the above
904
+ * copyright notice and this permission notice appear in all copies.
905
+ *
906
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
907
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
908
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
909
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
910
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
911
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
912
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
913
+ *
914
+ * ---
915
+ *
916
+ * The following Lucide icons are derived from the Feather project:
917
+ *
918
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
919
+ *
920
+ * The MIT License (MIT) (for the icons listed above)
921
+ *
922
+ * Copyright (c) 2013-present Cole Bemis
923
+ *
924
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
925
+ * of this software and associated documentation files (the "Software"), to deal
926
+ * in the Software without restriction, including without limitation the rights
927
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
928
+ * copies of the Software, and to permit persons to whom the Software is
929
+ * furnished to do so, subject to the following conditions:
930
+ *
931
+ * The above copyright notice and this permission notice shall be included in all
932
+ * copies or substantial portions of the Software.
933
+ *
934
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
935
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
936
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
937
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
938
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
939
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
940
+ * SOFTWARE.
941
+ *
942
+ */const s=[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0"}],["circle",{cx:"12",cy:"12",r:"3"}]];Rt(t,Lt({name:"eye"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function aw(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
943
+ * @license lucide-svelte v1.0.1 - ISC
944
+ *
945
+ * ISC License
946
+ *
947
+ * Copyright (c) 2026 Lucide Icons and Contributors
948
+ *
949
+ * Permission to use, copy, modify, and/or distribute this software for any
950
+ * purpose with or without fee is hereby granted, provided that the above
951
+ * copyright notice and this permission notice appear in all copies.
952
+ *
953
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
954
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
955
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
956
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
957
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
958
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
959
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
960
+ *
961
+ * ---
962
+ *
963
+ * The following Lucide icons are derived from the Feather project:
964
+ *
965
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
966
+ *
967
+ * The MIT License (MIT) (for the icons listed above)
968
+ *
969
+ * Copyright (c) 2013-present Cole Bemis
970
+ *
971
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
972
+ * of this software and associated documentation files (the "Software"), to deal
973
+ * in the Software without restriction, including without limitation the rights
974
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
975
+ * copies of the Software, and to permit persons to whom the Software is
976
+ * furnished to do so, subject to the following conditions:
977
+ *
978
+ * The above copyright notice and this permission notice shall be included in all
979
+ * copies or substantial portions of the Software.
980
+ *
981
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
982
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
983
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
984
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
985
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
986
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
987
+ * SOFTWARE.
988
+ *
989
+ */const s=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5"}],["path",{d:"M10 12.5 8 15l2 2.5"}],["path",{d:"m14 12.5 2 2.5-2 2.5"}]];Rt(t,Lt({name:"file-code"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function Ol(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
990
+ * @license lucide-svelte v1.0.1 - ISC
991
+ *
992
+ * ISC License
993
+ *
994
+ * Copyright (c) 2026 Lucide Icons and Contributors
995
+ *
996
+ * Permission to use, copy, modify, and/or distribute this software for any
997
+ * purpose with or without fee is hereby granted, provided that the above
998
+ * copyright notice and this permission notice appear in all copies.
999
+ *
1000
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
1001
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
1002
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
1003
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
1004
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
1005
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
1006
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1007
+ *
1008
+ * ---
1009
+ *
1010
+ * The following Lucide icons are derived from the Feather project:
1011
+ *
1012
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
1013
+ *
1014
+ * The MIT License (MIT) (for the icons listed above)
1015
+ *
1016
+ * Copyright (c) 2013-present Cole Bemis
1017
+ *
1018
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
1019
+ * of this software and associated documentation files (the "Software"), to deal
1020
+ * in the Software without restriction, including without limitation the rights
1021
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
1022
+ * copies of the Software, and to permit persons to whom the Software is
1023
+ * furnished to do so, subject to the following conditions:
1024
+ *
1025
+ * The above copyright notice and this permission notice shall be included in all
1026
+ * copies or substantial portions of the Software.
1027
+ *
1028
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1029
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1030
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1031
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1032
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
1033
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
1034
+ * SOFTWARE.
1035
+ *
1036
+ */const s=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5"}],["circle",{cx:"10",cy:"12",r:"2"}],["path",{d:"m20 17-1.296-1.296a2.41 2.41 0 0 0-3.408 0L9 22"}]];Rt(t,Lt({name:"file-image"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function Rp(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
1037
+ * @license lucide-svelte v1.0.1 - ISC
1038
+ *
1039
+ * ISC License
1040
+ *
1041
+ * Copyright (c) 2026 Lucide Icons and Contributors
1042
+ *
1043
+ * Permission to use, copy, modify, and/or distribute this software for any
1044
+ * purpose with or without fee is hereby granted, provided that the above
1045
+ * copyright notice and this permission notice appear in all copies.
1046
+ *
1047
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
1048
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
1049
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
1050
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
1051
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
1052
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
1053
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1054
+ *
1055
+ * ---
1056
+ *
1057
+ * The following Lucide icons are derived from the Feather project:
1058
+ *
1059
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
1060
+ *
1061
+ * The MIT License (MIT) (for the icons listed above)
1062
+ *
1063
+ * Copyright (c) 2013-present Cole Bemis
1064
+ *
1065
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
1066
+ * of this software and associated documentation files (the "Software"), to deal
1067
+ * in the Software without restriction, including without limitation the rights
1068
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
1069
+ * copies of the Software, and to permit persons to whom the Software is
1070
+ * furnished to do so, subject to the following conditions:
1071
+ *
1072
+ * The above copyright notice and this permission notice shall be included in all
1073
+ * copies or substantial portions of the Software.
1074
+ *
1075
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1076
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1077
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1078
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1079
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
1080
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
1081
+ * SOFTWARE.
1082
+ *
1083
+ */const s=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5"}],["path",{d:"M10 9H8"}],["path",{d:"M16 13H8"}],["path",{d:"M16 17H8"}]];Rt(t,Lt({name:"file-text"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function ow(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
1084
+ * @license lucide-svelte v1.0.1 - ISC
1085
+ *
1086
+ * ISC License
1087
+ *
1088
+ * Copyright (c) 2026 Lucide Icons and Contributors
1089
+ *
1090
+ * Permission to use, copy, modify, and/or distribute this software for any
1091
+ * purpose with or without fee is hereby granted, provided that the above
1092
+ * copyright notice and this permission notice appear in all copies.
1093
+ *
1094
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
1095
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
1096
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
1097
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
1098
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
1099
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
1100
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1101
+ *
1102
+ * ---
1103
+ *
1104
+ * The following Lucide icons are derived from the Feather project:
1105
+ *
1106
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
1107
+ *
1108
+ * The MIT License (MIT) (for the icons listed above)
1109
+ *
1110
+ * Copyright (c) 2013-present Cole Bemis
1111
+ *
1112
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
1113
+ * of this software and associated documentation files (the "Software"), to deal
1114
+ * in the Software without restriction, including without limitation the rights
1115
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
1116
+ * copies of the Software, and to permit persons to whom the Software is
1117
+ * furnished to do so, subject to the following conditions:
1118
+ *
1119
+ * The above copyright notice and this permission notice shall be included in all
1120
+ * copies or substantial portions of the Software.
1121
+ *
1122
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1123
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1124
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1125
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1126
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
1127
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
1128
+ * SOFTWARE.
1129
+ *
1130
+ */const s=[["path",{d:"m3 7 5 5-5 5V7"}],["path",{d:"m21 7-5 5 5 5V7"}],["path",{d:"M12 20v2"}],["path",{d:"M12 14v2"}],["path",{d:"M12 8v2"}],["path",{d:"M12 2v2"}]];Rt(t,Lt({name:"flip-horizontal-2"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function d_(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
1131
+ * @license lucide-svelte v1.0.1 - ISC
1132
+ *
1133
+ * ISC License
1134
+ *
1135
+ * Copyright (c) 2026 Lucide Icons and Contributors
1136
+ *
1137
+ * Permission to use, copy, modify, and/or distribute this software for any
1138
+ * purpose with or without fee is hereby granted, provided that the above
1139
+ * copyright notice and this permission notice appear in all copies.
1140
+ *
1141
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
1142
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
1143
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
1144
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
1145
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
1146
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
1147
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1148
+ *
1149
+ * ---
1150
+ *
1151
+ * The following Lucide icons are derived from the Feather project:
1152
+ *
1153
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
1154
+ *
1155
+ * The MIT License (MIT) (for the icons listed above)
1156
+ *
1157
+ * Copyright (c) 2013-present Cole Bemis
1158
+ *
1159
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
1160
+ * of this software and associated documentation files (the "Software"), to deal
1161
+ * in the Software without restriction, including without limitation the rights
1162
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
1163
+ * copies of the Software, and to permit persons to whom the Software is
1164
+ * furnished to do so, subject to the following conditions:
1165
+ *
1166
+ * The above copyright notice and this permission notice shall be included in all
1167
+ * copies or substantial portions of the Software.
1168
+ *
1169
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1170
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1171
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1172
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1173
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
1174
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
1175
+ * SOFTWARE.
1176
+ *
1177
+ */const s=[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2"}]];Rt(t,Lt({name:"folder-open"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function lw(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
1178
+ * @license lucide-svelte v1.0.1 - ISC
1179
+ *
1180
+ * ISC License
1181
+ *
1182
+ * Copyright (c) 2026 Lucide Icons and Contributors
1183
+ *
1184
+ * Permission to use, copy, modify, and/or distribute this software for any
1185
+ * purpose with or without fee is hereby granted, provided that the above
1186
+ * copyright notice and this permission notice appear in all copies.
1187
+ *
1188
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
1189
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
1190
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
1191
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
1192
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
1193
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
1194
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1195
+ *
1196
+ * ---
1197
+ *
1198
+ * The following Lucide icons are derived from the Feather project:
1199
+ *
1200
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
1201
+ *
1202
+ * The MIT License (MIT) (for the icons listed above)
1203
+ *
1204
+ * Copyright (c) 2013-present Cole Bemis
1205
+ *
1206
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
1207
+ * of this software and associated documentation files (the "Software"), to deal
1208
+ * in the Software without restriction, including without limitation the rights
1209
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
1210
+ * copies of the Software, and to permit persons to whom the Software is
1211
+ * furnished to do so, subject to the following conditions:
1212
+ *
1213
+ * The above copyright notice and this permission notice shall be included in all
1214
+ * copies or substantial portions of the Software.
1215
+ *
1216
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1217
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1218
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1219
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1220
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
1221
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
1222
+ * SOFTWARE.
1223
+ *
1224
+ */const s=[["path",{d:"M3 14h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-7a9 9 0 0 1 18 0v7a2 2 0 0 1-2 2h-1a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2h3"}]];Rt(t,Lt({name:"headphones"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function Nl(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
1225
+ * @license lucide-svelte v1.0.1 - ISC
1226
+ *
1227
+ * ISC License
1228
+ *
1229
+ * Copyright (c) 2026 Lucide Icons and Contributors
1230
+ *
1231
+ * Permission to use, copy, modify, and/or distribute this software for any
1232
+ * purpose with or without fee is hereby granted, provided that the above
1233
+ * copyright notice and this permission notice appear in all copies.
1234
+ *
1235
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
1236
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
1237
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
1238
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
1239
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
1240
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
1241
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1242
+ *
1243
+ * ---
1244
+ *
1245
+ * The following Lucide icons are derived from the Feather project:
1246
+ *
1247
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
1248
+ *
1249
+ * The MIT License (MIT) (for the icons listed above)
1250
+ *
1251
+ * Copyright (c) 2013-present Cole Bemis
1252
+ *
1253
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
1254
+ * of this software and associated documentation files (the "Software"), to deal
1255
+ * in the Software without restriction, including without limitation the rights
1256
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
1257
+ * copies of the Software, and to permit persons to whom the Software is
1258
+ * furnished to do so, subject to the following conditions:
1259
+ *
1260
+ * The above copyright notice and this permission notice shall be included in all
1261
+ * copies or substantial portions of the Software.
1262
+ *
1263
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1264
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1265
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1266
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1267
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
1268
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
1269
+ * SOFTWARE.
1270
+ *
1271
+ */const s=[["path",{d:"M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z"}],["path",{d:"M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12"}],["path",{d:"M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17"}]];Rt(t,Lt({name:"layers"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function cw(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
1272
+ * @license lucide-svelte v1.0.1 - ISC
1273
+ *
1274
+ * ISC License
1275
+ *
1276
+ * Copyright (c) 2026 Lucide Icons and Contributors
1277
+ *
1278
+ * Permission to use, copy, modify, and/or distribute this software for any
1279
+ * purpose with or without fee is hereby granted, provided that the above
1280
+ * copyright notice and this permission notice appear in all copies.
1281
+ *
1282
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
1283
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
1284
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
1285
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
1286
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
1287
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
1288
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1289
+ *
1290
+ * ---
1291
+ *
1292
+ * The following Lucide icons are derived from the Feather project:
1293
+ *
1294
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
1295
+ *
1296
+ * The MIT License (MIT) (for the icons listed above)
1297
+ *
1298
+ * Copyright (c) 2013-present Cole Bemis
1299
+ *
1300
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
1301
+ * of this software and associated documentation files (the "Software"), to deal
1302
+ * in the Software without restriction, including without limitation the rights
1303
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
1304
+ * copies of the Software, and to permit persons to whom the Software is
1305
+ * furnished to do so, subject to the following conditions:
1306
+ *
1307
+ * The above copyright notice and this permission notice shall be included in all
1308
+ * copies or substantial portions of the Software.
1309
+ *
1310
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1311
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1312
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1313
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1314
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
1315
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
1316
+ * SOFTWARE.
1317
+ *
1318
+ */const s=[["path",{d:"m12 15 4 4"}],["path",{d:"M2.352 10.648a1.205 1.205 0 0 0 0 1.704l2.296 2.296a1.205 1.205 0 0 0 1.704 0l6.029-6.029a1 1 0 1 1 3 3l-6.029 6.029a1.205 1.205 0 0 0 0 1.704l2.296 2.296a1.205 1.205 0 0 0 1.704 0l6.365-6.367A1 1 0 0 0 8.716 4.282z"}],["path",{d:"m5 8 4 4"}]];Rt(t,Lt({name:"magnet"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function Vp(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
1319
+ * @license lucide-svelte v1.0.1 - ISC
1320
+ *
1321
+ * ISC License
1322
+ *
1323
+ * Copyright (c) 2026 Lucide Icons and Contributors
1324
+ *
1325
+ * Permission to use, copy, modify, and/or distribute this software for any
1326
+ * purpose with or without fee is hereby granted, provided that the above
1327
+ * copyright notice and this permission notice appear in all copies.
1328
+ *
1329
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
1330
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
1331
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
1332
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
1333
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
1334
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
1335
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1336
+ *
1337
+ * ---
1338
+ *
1339
+ * The following Lucide icons are derived from the Feather project:
1340
+ *
1341
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
1342
+ *
1343
+ * The MIT License (MIT) (for the icons listed above)
1344
+ *
1345
+ * Copyright (c) 2013-present Cole Bemis
1346
+ *
1347
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
1348
+ * of this software and associated documentation files (the "Software"), to deal
1349
+ * in the Software without restriction, including without limitation the rights
1350
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
1351
+ * copies of the Software, and to permit persons to whom the Software is
1352
+ * furnished to do so, subject to the following conditions:
1353
+ *
1354
+ * The above copyright notice and this permission notice shall be included in all
1355
+ * copies or substantial portions of the Software.
1356
+ *
1357
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1358
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1359
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1360
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1361
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
1362
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
1363
+ * SOFTWARE.
1364
+ *
1365
+ */const s=[["path",{d:"M15 3h6v6"}],["path",{d:"m21 3-7 7"}],["path",{d:"m3 21 7-7"}],["path",{d:"M9 21H3v-6"}]];Rt(t,Lt({name:"maximize-2"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function uw(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
1366
+ * @license lucide-svelte v1.0.1 - ISC
1367
+ *
1368
+ * ISC License
1369
+ *
1370
+ * Copyright (c) 2026 Lucide Icons and Contributors
1371
+ *
1372
+ * Permission to use, copy, modify, and/or distribute this software for any
1373
+ * purpose with or without fee is hereby granted, provided that the above
1374
+ * copyright notice and this permission notice appear in all copies.
1375
+ *
1376
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
1377
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
1378
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
1379
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
1380
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
1381
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
1382
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1383
+ *
1384
+ * ---
1385
+ *
1386
+ * The following Lucide icons are derived from the Feather project:
1387
+ *
1388
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
1389
+ *
1390
+ * The MIT License (MIT) (for the icons listed above)
1391
+ *
1392
+ * Copyright (c) 2013-present Cole Bemis
1393
+ *
1394
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
1395
+ * of this software and associated documentation files (the "Software"), to deal
1396
+ * in the Software without restriction, including without limitation the rights
1397
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
1398
+ * copies of the Software, and to permit persons to whom the Software is
1399
+ * furnished to do so, subject to the following conditions:
1400
+ *
1401
+ * The above copyright notice and this permission notice shall be included in all
1402
+ * copies or substantial portions of the Software.
1403
+ *
1404
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1405
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1406
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1407
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1408
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
1409
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
1410
+ * SOFTWARE.
1411
+ *
1412
+ */const s=[["path",{d:"M5 12h14"}]];Rt(t,Lt({name:"minus"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function da(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
1413
+ * @license lucide-svelte v1.0.1 - ISC
1414
+ *
1415
+ * ISC License
1416
+ *
1417
+ * Copyright (c) 2026 Lucide Icons and Contributors
1418
+ *
1419
+ * Permission to use, copy, modify, and/or distribute this software for any
1420
+ * purpose with or without fee is hereby granted, provided that the above
1421
+ * copyright notice and this permission notice appear in all copies.
1422
+ *
1423
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
1424
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
1425
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
1426
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
1427
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
1428
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
1429
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1430
+ *
1431
+ * ---
1432
+ *
1433
+ * The following Lucide icons are derived from the Feather project:
1434
+ *
1435
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
1436
+ *
1437
+ * The MIT License (MIT) (for the icons listed above)
1438
+ *
1439
+ * Copyright (c) 2013-present Cole Bemis
1440
+ *
1441
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
1442
+ * of this software and associated documentation files (the "Software"), to deal
1443
+ * in the Software without restriction, including without limitation the rights
1444
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
1445
+ * copies of the Software, and to permit persons to whom the Software is
1446
+ * furnished to do so, subject to the following conditions:
1447
+ *
1448
+ * The above copyright notice and this permission notice shall be included in all
1449
+ * copies or substantial portions of the Software.
1450
+ *
1451
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1452
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1453
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1454
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1455
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
1456
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
1457
+ * SOFTWARE.
1458
+ *
1459
+ */const s=[["circle",{cx:"8",cy:"18",r:"4"}],["path",{d:"M12 18V2l7 4"}]];Rt(t,Lt({name:"music-2"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function dw(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
1460
+ * @license lucide-svelte v1.0.1 - ISC
1461
+ *
1462
+ * ISC License
1463
+ *
1464
+ * Copyright (c) 2026 Lucide Icons and Contributors
1465
+ *
1466
+ * Permission to use, copy, modify, and/or distribute this software for any
1467
+ * purpose with or without fee is hereby granted, provided that the above
1468
+ * copyright notice and this permission notice appear in all copies.
1469
+ *
1470
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
1471
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
1472
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
1473
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
1474
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
1475
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
1476
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1477
+ *
1478
+ * ---
1479
+ *
1480
+ * The following Lucide icons are derived from the Feather project:
1481
+ *
1482
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
1483
+ *
1484
+ * The MIT License (MIT) (for the icons listed above)
1485
+ *
1486
+ * Copyright (c) 2013-present Cole Bemis
1487
+ *
1488
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
1489
+ * of this software and associated documentation files (the "Software"), to deal
1490
+ * in the Software without restriction, including without limitation the rights
1491
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
1492
+ * copies of the Software, and to permit persons to whom the Software is
1493
+ * furnished to do so, subject to the following conditions:
1494
+ *
1495
+ * The above copyright notice and this permission notice shall be included in all
1496
+ * copies or substantial portions of the Software.
1497
+ *
1498
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1499
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1500
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1501
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1502
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
1503
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
1504
+ * SOFTWARE.
1505
+ *
1506
+ */const s=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2"}],["path",{d:"M9 3v18"}],["path",{d:"m16 15-3-3 3-3"}]];Rt(t,Lt({name:"panel-left-close"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function fw(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
1507
+ * @license lucide-svelte v1.0.1 - ISC
1508
+ *
1509
+ * ISC License
1510
+ *
1511
+ * Copyright (c) 2026 Lucide Icons and Contributors
1512
+ *
1513
+ * Permission to use, copy, modify, and/or distribute this software for any
1514
+ * purpose with or without fee is hereby granted, provided that the above
1515
+ * copyright notice and this permission notice appear in all copies.
1516
+ *
1517
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
1518
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
1519
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
1520
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
1521
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
1522
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
1523
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1524
+ *
1525
+ * ---
1526
+ *
1527
+ * The following Lucide icons are derived from the Feather project:
1528
+ *
1529
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
1530
+ *
1531
+ * The MIT License (MIT) (for the icons listed above)
1532
+ *
1533
+ * Copyright (c) 2013-present Cole Bemis
1534
+ *
1535
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
1536
+ * of this software and associated documentation files (the "Software"), to deal
1537
+ * in the Software without restriction, including without limitation the rights
1538
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
1539
+ * copies of the Software, and to permit persons to whom the Software is
1540
+ * furnished to do so, subject to the following conditions:
1541
+ *
1542
+ * The above copyright notice and this permission notice shall be included in all
1543
+ * copies or substantial portions of the Software.
1544
+ *
1545
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1546
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1547
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1548
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1549
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
1550
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
1551
+ * SOFTWARE.
1552
+ *
1553
+ */const s=[["rect",{x:"14",y:"3",width:"5",height:"18",rx:"1"}],["rect",{x:"5",y:"3",width:"5",height:"18",rx:"1"}]];Rt(t,Lt({name:"pause"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function hw(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
1554
+ * @license lucide-svelte v1.0.1 - ISC
1555
+ *
1556
+ * ISC License
1557
+ *
1558
+ * Copyright (c) 2026 Lucide Icons and Contributors
1559
+ *
1560
+ * Permission to use, copy, modify, and/or distribute this software for any
1561
+ * purpose with or without fee is hereby granted, provided that the above
1562
+ * copyright notice and this permission notice appear in all copies.
1563
+ *
1564
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
1565
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
1566
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
1567
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
1568
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
1569
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
1570
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1571
+ *
1572
+ * ---
1573
+ *
1574
+ * The following Lucide icons are derived from the Feather project:
1575
+ *
1576
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
1577
+ *
1578
+ * The MIT License (MIT) (for the icons listed above)
1579
+ *
1580
+ * Copyright (c) 2013-present Cole Bemis
1581
+ *
1582
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
1583
+ * of this software and associated documentation files (the "Software"), to deal
1584
+ * in the Software without restriction, including without limitation the rights
1585
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
1586
+ * copies of the Software, and to permit persons to whom the Software is
1587
+ * furnished to do so, subject to the following conditions:
1588
+ *
1589
+ * The above copyright notice and this permission notice shall be included in all
1590
+ * copies or substantial portions of the Software.
1591
+ *
1592
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1593
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1594
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1595
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1596
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
1597
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
1598
+ * SOFTWARE.
1599
+ *
1600
+ */const s=[["path",{d:"m12 9-8.414 8.414A2 2 0 0 0 3 18.828v1.344a2 2 0 0 1-.586 1.414A2 2 0 0 1 3.828 21h1.344a2 2 0 0 0 1.414-.586L15 12"}],["path",{d:"m18 9 .4.4a1 1 0 1 1-3 3l-3.8-3.8a1 1 0 1 1 3-3l.4.4 3.4-3.4a1 1 0 1 1 3 3z"}],["path",{d:"m2 22 .414-.414"}]];Rt(t,Lt({name:"pipette"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function pw(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
1601
+ * @license lucide-svelte v1.0.1 - ISC
1602
+ *
1603
+ * ISC License
1604
+ *
1605
+ * Copyright (c) 2026 Lucide Icons and Contributors
1606
+ *
1607
+ * Permission to use, copy, modify, and/or distribute this software for any
1608
+ * purpose with or without fee is hereby granted, provided that the above
1609
+ * copyright notice and this permission notice appear in all copies.
1610
+ *
1611
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
1612
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
1613
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
1614
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
1615
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
1616
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
1617
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1618
+ *
1619
+ * ---
1620
+ *
1621
+ * The following Lucide icons are derived from the Feather project:
1622
+ *
1623
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
1624
+ *
1625
+ * The MIT License (MIT) (for the icons listed above)
1626
+ *
1627
+ * Copyright (c) 2013-present Cole Bemis
1628
+ *
1629
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
1630
+ * of this software and associated documentation files (the "Software"), to deal
1631
+ * in the Software without restriction, including without limitation the rights
1632
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
1633
+ * copies of the Software, and to permit persons to whom the Software is
1634
+ * furnished to do so, subject to the following conditions:
1635
+ *
1636
+ * The above copyright notice and this permission notice shall be included in all
1637
+ * copies or substantial portions of the Software.
1638
+ *
1639
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1640
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1641
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1642
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1643
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
1644
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
1645
+ * SOFTWARE.
1646
+ *
1647
+ */const s=[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z"}]];Rt(t,Lt({name:"play"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function tc(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
1648
+ * @license lucide-svelte v1.0.1 - ISC
1649
+ *
1650
+ * ISC License
1651
+ *
1652
+ * Copyright (c) 2026 Lucide Icons and Contributors
1653
+ *
1654
+ * Permission to use, copy, modify, and/or distribute this software for any
1655
+ * purpose with or without fee is hereby granted, provided that the above
1656
+ * copyright notice and this permission notice appear in all copies.
1657
+ *
1658
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
1659
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
1660
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
1661
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
1662
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
1663
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
1664
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1665
+ *
1666
+ * ---
1667
+ *
1668
+ * The following Lucide icons are derived from the Feather project:
1669
+ *
1670
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
1671
+ *
1672
+ * The MIT License (MIT) (for the icons listed above)
1673
+ *
1674
+ * Copyright (c) 2013-present Cole Bemis
1675
+ *
1676
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
1677
+ * of this software and associated documentation files (the "Software"), to deal
1678
+ * in the Software without restriction, including without limitation the rights
1679
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
1680
+ * copies of the Software, and to permit persons to whom the Software is
1681
+ * furnished to do so, subject to the following conditions:
1682
+ *
1683
+ * The above copyright notice and this permission notice shall be included in all
1684
+ * copies or substantial portions of the Software.
1685
+ *
1686
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1687
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1688
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1689
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1690
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
1691
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
1692
+ * SOFTWARE.
1693
+ *
1694
+ */const s=[["path",{d:"M5 12h14"}],["path",{d:"M12 5v14"}]];Rt(t,Lt({name:"plus"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function vw(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
1695
+ * @license lucide-svelte v1.0.1 - ISC
1696
+ *
1697
+ * ISC License
1698
+ *
1699
+ * Copyright (c) 2026 Lucide Icons and Contributors
1700
+ *
1701
+ * Permission to use, copy, modify, and/or distribute this software for any
1702
+ * purpose with or without fee is hereby granted, provided that the above
1703
+ * copyright notice and this permission notice appear in all copies.
1704
+ *
1705
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
1706
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
1707
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
1708
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
1709
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
1710
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
1711
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1712
+ *
1713
+ * ---
1714
+ *
1715
+ * The following Lucide icons are derived from the Feather project:
1716
+ *
1717
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
1718
+ *
1719
+ * The MIT License (MIT) (for the icons listed above)
1720
+ *
1721
+ * Copyright (c) 2013-present Cole Bemis
1722
+ *
1723
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
1724
+ * of this software and associated documentation files (the "Software"), to deal
1725
+ * in the Software without restriction, including without limitation the rights
1726
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
1727
+ * copies of the Software, and to permit persons to whom the Software is
1728
+ * furnished to do so, subject to the following conditions:
1729
+ *
1730
+ * The above copyright notice and this permission notice shall be included in all
1731
+ * copies or substantial portions of the Software.
1732
+ *
1733
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1734
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1735
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1736
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1737
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
1738
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
1739
+ * SOFTWARE.
1740
+ *
1741
+ */const s=[["path",{d:"m15 14 5-5-5-5"}],["path",{d:"M20 9H9.5A5.5 5.5 0 0 0 4 14.5A5.5 5.5 0 0 0 9.5 20H13"}]];Rt(t,Lt({name:"redo-2"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function mw(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
1742
+ * @license lucide-svelte v1.0.1 - ISC
1743
+ *
1744
+ * ISC License
1745
+ *
1746
+ * Copyright (c) 2026 Lucide Icons and Contributors
1747
+ *
1748
+ * Permission to use, copy, modify, and/or distribute this software for any
1749
+ * purpose with or without fee is hereby granted, provided that the above
1750
+ * copyright notice and this permission notice appear in all copies.
1751
+ *
1752
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
1753
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
1754
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
1755
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
1756
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
1757
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
1758
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1759
+ *
1760
+ * ---
1761
+ *
1762
+ * The following Lucide icons are derived from the Feather project:
1763
+ *
1764
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
1765
+ *
1766
+ * The MIT License (MIT) (for the icons listed above)
1767
+ *
1768
+ * Copyright (c) 2013-present Cole Bemis
1769
+ *
1770
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
1771
+ * of this software and associated documentation files (the "Software"), to deal
1772
+ * in the Software without restriction, including without limitation the rights
1773
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
1774
+ * copies of the Software, and to permit persons to whom the Software is
1775
+ * furnished to do so, subject to the following conditions:
1776
+ *
1777
+ * The above copyright notice and this permission notice shall be included in all
1778
+ * copies or substantial portions of the Software.
1779
+ *
1780
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1781
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1782
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1783
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1784
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
1785
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
1786
+ * SOFTWARE.
1787
+ *
1788
+ */const s=[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7"}]];Rt(t,Lt({name:"save"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function _w(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
1789
+ * @license lucide-svelte v1.0.1 - ISC
1790
+ *
1791
+ * ISC License
1792
+ *
1793
+ * Copyright (c) 2026 Lucide Icons and Contributors
1794
+ *
1795
+ * Permission to use, copy, modify, and/or distribute this software for any
1796
+ * purpose with or without fee is hereby granted, provided that the above
1797
+ * copyright notice and this permission notice appear in all copies.
1798
+ *
1799
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
1800
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
1801
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
1802
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
1803
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
1804
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
1805
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1806
+ *
1807
+ * ---
1808
+ *
1809
+ * The following Lucide icons are derived from the Feather project:
1810
+ *
1811
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
1812
+ *
1813
+ * The MIT License (MIT) (for the icons listed above)
1814
+ *
1815
+ * Copyright (c) 2013-present Cole Bemis
1816
+ *
1817
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
1818
+ * of this software and associated documentation files (the "Software"), to deal
1819
+ * in the Software without restriction, including without limitation the rights
1820
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
1821
+ * copies of the Software, and to permit persons to whom the Software is
1822
+ * furnished to do so, subject to the following conditions:
1823
+ *
1824
+ * The above copyright notice and this permission notice shall be included in all
1825
+ * copies or substantial portions of the Software.
1826
+ *
1827
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1828
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1829
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1830
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1831
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
1832
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
1833
+ * SOFTWARE.
1834
+ *
1835
+ */const s=[["circle",{cx:"6",cy:"6",r:"3"}],["path",{d:"M8.12 8.12 12 12"}],["path",{d:"M20 4 8.12 15.88"}],["circle",{cx:"6",cy:"18",r:"3"}],["path",{d:"M14.8 14.8 20 20"}]];Rt(t,Lt({name:"scissors"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function gw(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
1836
+ * @license lucide-svelte v1.0.1 - ISC
1837
+ *
1838
+ * ISC License
1839
+ *
1840
+ * Copyright (c) 2026 Lucide Icons and Contributors
1841
+ *
1842
+ * Permission to use, copy, modify, and/or distribute this software for any
1843
+ * purpose with or without fee is hereby granted, provided that the above
1844
+ * copyright notice and this permission notice appear in all copies.
1845
+ *
1846
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
1847
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
1848
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
1849
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
1850
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
1851
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
1852
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1853
+ *
1854
+ * ---
1855
+ *
1856
+ * The following Lucide icons are derived from the Feather project:
1857
+ *
1858
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
1859
+ *
1860
+ * The MIT License (MIT) (for the icons listed above)
1861
+ *
1862
+ * Copyright (c) 2013-present Cole Bemis
1863
+ *
1864
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
1865
+ * of this software and associated documentation files (the "Software"), to deal
1866
+ * in the Software without restriction, including without limitation the rights
1867
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
1868
+ * copies of the Software, and to permit persons to whom the Software is
1869
+ * furnished to do so, subject to the following conditions:
1870
+ *
1871
+ * The above copyright notice and this permission notice shall be included in all
1872
+ * copies or substantial portions of the Software.
1873
+ *
1874
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1875
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1876
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1877
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1878
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
1879
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
1880
+ * SOFTWARE.
1881
+ *
1882
+ */const s=[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z"}],["path",{d:"m21.854 2.147-10.94 10.939"}]];Rt(t,Lt({name:"send"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function f_(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
1883
+ * @license lucide-svelte v1.0.1 - ISC
1884
+ *
1885
+ * ISC License
1886
+ *
1887
+ * Copyright (c) 2026 Lucide Icons and Contributors
1888
+ *
1889
+ * Permission to use, copy, modify, and/or distribute this software for any
1890
+ * purpose with or without fee is hereby granted, provided that the above
1891
+ * copyright notice and this permission notice appear in all copies.
1892
+ *
1893
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
1894
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
1895
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
1896
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
1897
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
1898
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
1899
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1900
+ *
1901
+ * ---
1902
+ *
1903
+ * The following Lucide icons are derived from the Feather project:
1904
+ *
1905
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
1906
+ *
1907
+ * The MIT License (MIT) (for the icons listed above)
1908
+ *
1909
+ * Copyright (c) 2013-present Cole Bemis
1910
+ *
1911
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
1912
+ * of this software and associated documentation files (the "Software"), to deal
1913
+ * in the Software without restriction, including without limitation the rights
1914
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
1915
+ * copies of the Software, and to permit persons to whom the Software is
1916
+ * furnished to do so, subject to the following conditions:
1917
+ *
1918
+ * The above copyright notice and this permission notice shall be included in all
1919
+ * copies or substantial portions of the Software.
1920
+ *
1921
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1922
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1923
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1924
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1925
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
1926
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
1927
+ * SOFTWARE.
1928
+ *
1929
+ */const s=[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915"}],["circle",{cx:"12",cy:"12",r:"3"}]];Rt(t,Lt({name:"settings"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function yw(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
1930
+ * @license lucide-svelte v1.0.1 - ISC
1931
+ *
1932
+ * ISC License
1933
+ *
1934
+ * Copyright (c) 2026 Lucide Icons and Contributors
1935
+ *
1936
+ * Permission to use, copy, modify, and/or distribute this software for any
1937
+ * purpose with or without fee is hereby granted, provided that the above
1938
+ * copyright notice and this permission notice appear in all copies.
1939
+ *
1940
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
1941
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
1942
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
1943
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
1944
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
1945
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
1946
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1947
+ *
1948
+ * ---
1949
+ *
1950
+ * The following Lucide icons are derived from the Feather project:
1951
+ *
1952
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
1953
+ *
1954
+ * The MIT License (MIT) (for the icons listed above)
1955
+ *
1956
+ * Copyright (c) 2013-present Cole Bemis
1957
+ *
1958
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
1959
+ * of this software and associated documentation files (the "Software"), to deal
1960
+ * in the Software without restriction, including without limitation the rights
1961
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
1962
+ * copies of the Software, and to permit persons to whom the Software is
1963
+ * furnished to do so, subject to the following conditions:
1964
+ *
1965
+ * The above copyright notice and this permission notice shall be included in all
1966
+ * copies or substantial portions of the Software.
1967
+ *
1968
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1969
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1970
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1971
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1972
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
1973
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
1974
+ * SOFTWARE.
1975
+ *
1976
+ */const s=[["path",{d:"M17.971 4.285A2 2 0 0 1 21 6v12a2 2 0 0 1-3.029 1.715l-9.997-5.998a2 2 0 0 1-.003-3.432z"}],["path",{d:"M3 20V4"}]];Rt(t,Lt({name:"skip-back"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function jn(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
1977
+ * @license lucide-svelte v1.0.1 - ISC
1978
+ *
1979
+ * ISC License
1980
+ *
1981
+ * Copyright (c) 2026 Lucide Icons and Contributors
1982
+ *
1983
+ * Permission to use, copy, modify, and/or distribute this software for any
1984
+ * purpose with or without fee is hereby granted, provided that the above
1985
+ * copyright notice and this permission notice appear in all copies.
1986
+ *
1987
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
1988
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
1989
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
1990
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
1991
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
1992
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
1993
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1994
+ *
1995
+ * ---
1996
+ *
1997
+ * The following Lucide icons are derived from the Feather project:
1998
+ *
1999
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
2000
+ *
2001
+ * The MIT License (MIT) (for the icons listed above)
2002
+ *
2003
+ * Copyright (c) 2013-present Cole Bemis
2004
+ *
2005
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
2006
+ * of this software and associated documentation files (the "Software"), to deal
2007
+ * in the Software without restriction, including without limitation the rights
2008
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
2009
+ * copies of the Software, and to permit persons to whom the Software is
2010
+ * furnished to do so, subject to the following conditions:
2011
+ *
2012
+ * The above copyright notice and this permission notice shall be included in all
2013
+ * copies or substantial portions of the Software.
2014
+ *
2015
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
2016
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
2017
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
2018
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
2019
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
2020
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2021
+ * SOFTWARE.
2022
+ *
2023
+ */const s=[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z"}],["path",{d:"M20 2v4"}],["path",{d:"M22 4h-4"}],["circle",{cx:"4",cy:"20",r:"2"}]];Rt(t,Lt({name:"sparkles"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function Gu(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
2024
+ * @license lucide-svelte v1.0.1 - ISC
2025
+ *
2026
+ * ISC License
2027
+ *
2028
+ * Copyright (c) 2026 Lucide Icons and Contributors
2029
+ *
2030
+ * Permission to use, copy, modify, and/or distribute this software for any
2031
+ * purpose with or without fee is hereby granted, provided that the above
2032
+ * copyright notice and this permission notice appear in all copies.
2033
+ *
2034
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
2035
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
2036
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
2037
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
2038
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
2039
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
2040
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
2041
+ *
2042
+ * ---
2043
+ *
2044
+ * The following Lucide icons are derived from the Feather project:
2045
+ *
2046
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
2047
+ *
2048
+ * The MIT License (MIT) (for the icons listed above)
2049
+ *
2050
+ * Copyright (c) 2013-present Cole Bemis
2051
+ *
2052
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
2053
+ * of this software and associated documentation files (the "Software"), to deal
2054
+ * in the Software without restriction, including without limitation the rights
2055
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
2056
+ * copies of the Software, and to permit persons to whom the Software is
2057
+ * furnished to do so, subject to the following conditions:
2058
+ *
2059
+ * The above copyright notice and this permission notice shall be included in all
2060
+ * copies or substantial portions of the Software.
2061
+ *
2062
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
2063
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
2064
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
2065
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
2066
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
2067
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2068
+ * SOFTWARE.
2069
+ *
2070
+ */const s=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2"}]];Rt(t,Lt({name:"square"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function bw(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
2071
+ * @license lucide-svelte v1.0.1 - ISC
2072
+ *
2073
+ * ISC License
2074
+ *
2075
+ * Copyright (c) 2026 Lucide Icons and Contributors
2076
+ *
2077
+ * Permission to use, copy, modify, and/or distribute this software for any
2078
+ * purpose with or without fee is hereby granted, provided that the above
2079
+ * copyright notice and this permission notice appear in all copies.
2080
+ *
2081
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
2082
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
2083
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
2084
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
2085
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
2086
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
2087
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
2088
+ *
2089
+ * ---
2090
+ *
2091
+ * The following Lucide icons are derived from the Feather project:
2092
+ *
2093
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
2094
+ *
2095
+ * The MIT License (MIT) (for the icons listed above)
2096
+ *
2097
+ * Copyright (c) 2013-present Cole Bemis
2098
+ *
2099
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
2100
+ * of this software and associated documentation files (the "Software"), to deal
2101
+ * in the Software without restriction, including without limitation the rights
2102
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
2103
+ * copies of the Software, and to permit persons to whom the Software is
2104
+ * furnished to do so, subject to the following conditions:
2105
+ *
2106
+ * The above copyright notice and this permission notice shall be included in all
2107
+ * copies or substantial portions of the Software.
2108
+ *
2109
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
2110
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
2111
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
2112
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
2113
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
2114
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2115
+ * SOFTWARE.
2116
+ *
2117
+ */const s=[["path",{d:"M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z"}]];Rt(t,Lt({name:"star"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function wo(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
2118
+ * @license lucide-svelte v1.0.1 - ISC
2119
+ *
2120
+ * ISC License
2121
+ *
2122
+ * Copyright (c) 2026 Lucide Icons and Contributors
2123
+ *
2124
+ * Permission to use, copy, modify, and/or distribute this software for any
2125
+ * purpose with or without fee is hereby granted, provided that the above
2126
+ * copyright notice and this permission notice appear in all copies.
2127
+ *
2128
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
2129
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
2130
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
2131
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
2132
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
2133
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
2134
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
2135
+ *
2136
+ * ---
2137
+ *
2138
+ * The following Lucide icons are derived from the Feather project:
2139
+ *
2140
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
2141
+ *
2142
+ * The MIT License (MIT) (for the icons listed above)
2143
+ *
2144
+ * Copyright (c) 2013-present Cole Bemis
2145
+ *
2146
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
2147
+ * of this software and associated documentation files (the "Software"), to deal
2148
+ * in the Software without restriction, including without limitation the rights
2149
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
2150
+ * copies of the Software, and to permit persons to whom the Software is
2151
+ * furnished to do so, subject to the following conditions:
2152
+ *
2153
+ * The above copyright notice and this permission notice shall be included in all
2154
+ * copies or substantial portions of the Software.
2155
+ *
2156
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
2157
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
2158
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
2159
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
2160
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
2161
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2162
+ * SOFTWARE.
2163
+ *
2164
+ */const s=[["path",{d:"M10 11v6"}],["path",{d:"M14 11v6"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"}],["path",{d:"M3 6h18"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"}]];Rt(t,Lt({name:"trash-2"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function Fl(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
2165
+ * @license lucide-svelte v1.0.1 - ISC
2166
+ *
2167
+ * ISC License
2168
+ *
2169
+ * Copyright (c) 2026 Lucide Icons and Contributors
2170
+ *
2171
+ * Permission to use, copy, modify, and/or distribute this software for any
2172
+ * purpose with or without fee is hereby granted, provided that the above
2173
+ * copyright notice and this permission notice appear in all copies.
2174
+ *
2175
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
2176
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
2177
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
2178
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
2179
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
2180
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
2181
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
2182
+ *
2183
+ * ---
2184
+ *
2185
+ * The following Lucide icons are derived from the Feather project:
2186
+ *
2187
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
2188
+ *
2189
+ * The MIT License (MIT) (for the icons listed above)
2190
+ *
2191
+ * Copyright (c) 2013-present Cole Bemis
2192
+ *
2193
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
2194
+ * of this software and associated documentation files (the "Software"), to deal
2195
+ * in the Software without restriction, including without limitation the rights
2196
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
2197
+ * copies of the Software, and to permit persons to whom the Software is
2198
+ * furnished to do so, subject to the following conditions:
2199
+ *
2200
+ * The above copyright notice and this permission notice shall be included in all
2201
+ * copies or substantial portions of the Software.
2202
+ *
2203
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
2204
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
2205
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
2206
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
2207
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
2208
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2209
+ * SOFTWARE.
2210
+ *
2211
+ */const s=[["path",{d:"M12 4v16"}],["path",{d:"M4 7V5a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v2"}],["path",{d:"M9 20h6"}]];Rt(t,Lt({name:"type"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function xw(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
2212
+ * @license lucide-svelte v1.0.1 - ISC
2213
+ *
2214
+ * ISC License
2215
+ *
2216
+ * Copyright (c) 2026 Lucide Icons and Contributors
2217
+ *
2218
+ * Permission to use, copy, modify, and/or distribute this software for any
2219
+ * purpose with or without fee is hereby granted, provided that the above
2220
+ * copyright notice and this permission notice appear in all copies.
2221
+ *
2222
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
2223
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
2224
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
2225
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
2226
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
2227
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
2228
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
2229
+ *
2230
+ * ---
2231
+ *
2232
+ * The following Lucide icons are derived from the Feather project:
2233
+ *
2234
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
2235
+ *
2236
+ * The MIT License (MIT) (for the icons listed above)
2237
+ *
2238
+ * Copyright (c) 2013-present Cole Bemis
2239
+ *
2240
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
2241
+ * of this software and associated documentation files (the "Software"), to deal
2242
+ * in the Software without restriction, including without limitation the rights
2243
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
2244
+ * copies of the Software, and to permit persons to whom the Software is
2245
+ * furnished to do so, subject to the following conditions:
2246
+ *
2247
+ * The above copyright notice and this permission notice shall be included in all
2248
+ * copies or substantial portions of the Software.
2249
+ *
2250
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
2251
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
2252
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
2253
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
2254
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
2255
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2256
+ * SOFTWARE.
2257
+ *
2258
+ */const s=[["path",{d:"M9 14 4 9l5-5"}],["path",{d:"M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11"}]];Rt(t,Lt({name:"undo-2"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function qu(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
2259
+ * @license lucide-svelte v1.0.1 - ISC
2260
+ *
2261
+ * ISC License
2262
+ *
2263
+ * Copyright (c) 2026 Lucide Icons and Contributors
2264
+ *
2265
+ * Permission to use, copy, modify, and/or distribute this software for any
2266
+ * purpose with or without fee is hereby granted, provided that the above
2267
+ * copyright notice and this permission notice appear in all copies.
2268
+ *
2269
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
2270
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
2271
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
2272
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
2273
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
2274
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
2275
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
2276
+ *
2277
+ * ---
2278
+ *
2279
+ * The following Lucide icons are derived from the Feather project:
2280
+ *
2281
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
2282
+ *
2283
+ * The MIT License (MIT) (for the icons listed above)
2284
+ *
2285
+ * Copyright (c) 2013-present Cole Bemis
2286
+ *
2287
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
2288
+ * of this software and associated documentation files (the "Software"), to deal
2289
+ * in the Software without restriction, including without limitation the rights
2290
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
2291
+ * copies of the Software, and to permit persons to whom the Software is
2292
+ * furnished to do so, subject to the following conditions:
2293
+ *
2294
+ * The above copyright notice and this permission notice shall be included in all
2295
+ * copies or substantial portions of the Software.
2296
+ *
2297
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
2298
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
2299
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
2300
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
2301
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
2302
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2303
+ * SOFTWARE.
2304
+ *
2305
+ */const s=[["path",{d:"M12 3v12"}],["path",{d:"m17 8-5-5-5 5"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}]];Rt(t,Lt({name:"upload"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function Mr(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
2306
+ * @license lucide-svelte v1.0.1 - ISC
2307
+ *
2308
+ * ISC License
2309
+ *
2310
+ * Copyright (c) 2026 Lucide Icons and Contributors
2311
+ *
2312
+ * Permission to use, copy, modify, and/or distribute this software for any
2313
+ * purpose with or without fee is hereby granted, provided that the above
2314
+ * copyright notice and this permission notice appear in all copies.
2315
+ *
2316
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
2317
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
2318
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
2319
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
2320
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
2321
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
2322
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
2323
+ *
2324
+ * ---
2325
+ *
2326
+ * The following Lucide icons are derived from the Feather project:
2327
+ *
2328
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
2329
+ *
2330
+ * The MIT License (MIT) (for the icons listed above)
2331
+ *
2332
+ * Copyright (c) 2013-present Cole Bemis
2333
+ *
2334
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
2335
+ * of this software and associated documentation files (the "Software"), to deal
2336
+ * in the Software without restriction, including without limitation the rights
2337
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
2338
+ * copies of the Software, and to permit persons to whom the Software is
2339
+ * furnished to do so, subject to the following conditions:
2340
+ *
2341
+ * The above copyright notice and this permission notice shall be included in all
2342
+ * copies or substantial portions of the Software.
2343
+ *
2344
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
2345
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
2346
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
2347
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
2348
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
2349
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2350
+ * SOFTWARE.
2351
+ *
2352
+ */const s=[["path",{d:"m16 13 5.223 3.482a.5.5 0 0 0 .777-.416V7.87a.5.5 0 0 0-.752-.432L16 10.5"}],["rect",{x:"2",y:"6",width:"14",height:"12",rx:"2"}]];Rt(t,Lt({name:"video"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function ww(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
2353
+ * @license lucide-svelte v1.0.1 - ISC
2354
+ *
2355
+ * ISC License
2356
+ *
2357
+ * Copyright (c) 2026 Lucide Icons and Contributors
2358
+ *
2359
+ * Permission to use, copy, modify, and/or distribute this software for any
2360
+ * purpose with or without fee is hereby granted, provided that the above
2361
+ * copyright notice and this permission notice appear in all copies.
2362
+ *
2363
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
2364
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
2365
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
2366
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
2367
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
2368
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
2369
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
2370
+ *
2371
+ * ---
2372
+ *
2373
+ * The following Lucide icons are derived from the Feather project:
2374
+ *
2375
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
2376
+ *
2377
+ * The MIT License (MIT) (for the icons listed above)
2378
+ *
2379
+ * Copyright (c) 2013-present Cole Bemis
2380
+ *
2381
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
2382
+ * of this software and associated documentation files (the "Software"), to deal
2383
+ * in the Software without restriction, including without limitation the rights
2384
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
2385
+ * copies of the Software, and to permit persons to whom the Software is
2386
+ * furnished to do so, subject to the following conditions:
2387
+ *
2388
+ * The above copyright notice and this permission notice shall be included in all
2389
+ * copies or substantial portions of the Software.
2390
+ *
2391
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
2392
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
2393
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
2394
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
2395
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
2396
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2397
+ * SOFTWARE.
2398
+ *
2399
+ */const s=[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z"}],["path",{d:"M16 9a5 5 0 0 1 0 6"}],["path",{d:"M19.364 18.364a9 9 0 0 0 0-12.728"}]];Rt(t,Lt({name:"volume-2"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function Sw(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
2400
+ * @license lucide-svelte v1.0.1 - ISC
2401
+ *
2402
+ * ISC License
2403
+ *
2404
+ * Copyright (c) 2026 Lucide Icons and Contributors
2405
+ *
2406
+ * Permission to use, copy, modify, and/or distribute this software for any
2407
+ * purpose with or without fee is hereby granted, provided that the above
2408
+ * copyright notice and this permission notice appear in all copies.
2409
+ *
2410
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
2411
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
2412
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
2413
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
2414
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
2415
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
2416
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
2417
+ *
2418
+ * ---
2419
+ *
2420
+ * The following Lucide icons are derived from the Feather project:
2421
+ *
2422
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
2423
+ *
2424
+ * The MIT License (MIT) (for the icons listed above)
2425
+ *
2426
+ * Copyright (c) 2013-present Cole Bemis
2427
+ *
2428
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
2429
+ * of this software and associated documentation files (the "Software"), to deal
2430
+ * in the Software without restriction, including without limitation the rights
2431
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
2432
+ * copies of the Software, and to permit persons to whom the Software is
2433
+ * furnished to do so, subject to the following conditions:
2434
+ *
2435
+ * The above copyright notice and this permission notice shall be included in all
2436
+ * copies or substantial portions of the Software.
2437
+ *
2438
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
2439
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
2440
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
2441
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
2442
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
2443
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2444
+ * SOFTWARE.
2445
+ *
2446
+ */const s=[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z"}],["line",{x1:"22",x2:"16",y1:"9",y2:"15"}],["line",{x1:"16",x2:"22",y1:"9",y2:"15"}]];Rt(t,Lt({name:"volume-x"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function Dl(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
2447
+ * @license lucide-svelte v1.0.1 - ISC
2448
+ *
2449
+ * ISC License
2450
+ *
2451
+ * Copyright (c) 2026 Lucide Icons and Contributors
2452
+ *
2453
+ * Permission to use, copy, modify, and/or distribute this software for any
2454
+ * purpose with or without fee is hereby granted, provided that the above
2455
+ * copyright notice and this permission notice appear in all copies.
2456
+ *
2457
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
2458
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
2459
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
2460
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
2461
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
2462
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
2463
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
2464
+ *
2465
+ * ---
2466
+ *
2467
+ * The following Lucide icons are derived from the Feather project:
2468
+ *
2469
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
2470
+ *
2471
+ * The MIT License (MIT) (for the icons listed above)
2472
+ *
2473
+ * Copyright (c) 2013-present Cole Bemis
2474
+ *
2475
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
2476
+ * of this software and associated documentation files (the "Software"), to deal
2477
+ * in the Software without restriction, including without limitation the rights
2478
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
2479
+ * copies of the Software, and to permit persons to whom the Software is
2480
+ * furnished to do so, subject to the following conditions:
2481
+ *
2482
+ * The above copyright notice and this permission notice shall be included in all
2483
+ * copies or substantial portions of the Software.
2484
+ *
2485
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
2486
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
2487
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
2488
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
2489
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
2490
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2491
+ * SOFTWARE.
2492
+ *
2493
+ */const s=[["path",{d:"m21.64 3.64-1.28-1.28a1.21 1.21 0 0 0-1.72 0L2.36 18.64a1.21 1.21 0 0 0 0 1.72l1.28 1.28a1.2 1.2 0 0 0 1.72 0L21.64 5.36a1.2 1.2 0 0 0 0-1.72"}],["path",{d:"m14 7 3 3"}],["path",{d:"M5 6v4"}],["path",{d:"M19 14v4"}],["path",{d:"M10 2v2"}],["path",{d:"M7 8H3"}],["path",{d:"M21 16h-4"}],["path",{d:"M11 3H9"}]];Rt(t,Lt({name:"wand-sparkles"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function Sn(t,e){const i=Ot(e,["children","$$slots","$$events","$$legacy"]);/**
2494
+ * @license lucide-svelte v1.0.1 - ISC
2495
+ *
2496
+ * ISC License
2497
+ *
2498
+ * Copyright (c) 2026 Lucide Icons and Contributors
2499
+ *
2500
+ * Permission to use, copy, modify, and/or distribute this software for any
2501
+ * purpose with or without fee is hereby granted, provided that the above
2502
+ * copyright notice and this permission notice appear in all copies.
2503
+ *
2504
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
2505
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
2506
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
2507
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
2508
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
2509
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
2510
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
2511
+ *
2512
+ * ---
2513
+ *
2514
+ * The following Lucide icons are derived from the Feather project:
2515
+ *
2516
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
2517
+ *
2518
+ * The MIT License (MIT) (for the icons listed above)
2519
+ *
2520
+ * Copyright (c) 2013-present Cole Bemis
2521
+ *
2522
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
2523
+ * of this software and associated documentation files (the "Software"), to deal
2524
+ * in the Software without restriction, including without limitation the rights
2525
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
2526
+ * copies of the Software, and to permit persons to whom the Software is
2527
+ * furnished to do so, subject to the following conditions:
2528
+ *
2529
+ * The above copyright notice and this permission notice shall be included in all
2530
+ * copies or substantial portions of the Software.
2531
+ *
2532
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
2533
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
2534
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
2535
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
2536
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
2537
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2538
+ * SOFTWARE.
2539
+ *
2540
+ */const s=[["path",{d:"M18 6 6 18"}],["path",{d:"m6 6 12 12"}]];Rt(t,Lt({name:"x"},()=>i,{get iconNode(){return s},children:(n,a)=>{var o=It(),l=it(o);Dt(l,e,"default",{}),A(n,o)},$$slots:{default:!0}}))}function Ta(t){const e="#motionly-filename=",i=t.lastIndexOf(e);if(i>=0)return Wu(t.slice(i+e.length));if(t.startsWith("data:"))return"";if(t.startsWith("motionly-local:"))return Wu(t.slice(15).split(/[?#]/,1)[0]??"");const n=(t.split(/[?#]/,1)[0]??t).split(/[\\/]/).pop()??"";return Wu(n)}function Wu(t){try{return decodeURIComponent(t)}catch{return t}}function kw(t,e){return`${t.split("#",1)[0]}#motionly-filename=${encodeURIComponent(e)}`}function Ew(t,e){const i=(s,n)=>Math.max(s,n)/Math.max(1,Math.min(s,n));return i(t.width,e.width)>1.5||i(t.height,e.height)>1.5||!!t.size&&!!e.size&&i(t.size,e.size)>2}const Po="motionly.ai.settings.v1",Yu="motionly.ai.history.v1",Bw=`Context:
2541
+ You are Motionly Assistant inside a browser-based motion graphics editor. You cannot open repository files or links. The syntax contract below is the authoritative subset of AGENTS.md and the write-motionly skill. Motionly saves editable projects as plain .motion source.
2542
+
2543
+ Objective:
2544
+ Given the request, conversation, current project, and available assets, plan distinct shots and return one complete valid .motion project. When refining, update the full current project instead of returning a fragment. Use one focal subject per shot, deliberate exits, and restrained motion. Avoid accidental overlap, repeated fade-only scenes, and constant camera drift.
2545
+ Behave like an experienced motion designer: establish hierarchy, stagger entrances, hold text long enough to read, make exits faster than entrances, and use transitions only when the story changes. Prefer editable native SVG or overlay artwork for logos, icons, diagrams, badges, line art, illustrations, and UI graphics. Preserve an imported asset's animation only when the user asks for it.
2546
+
2547
+ Mandatory syntax contract:
2548
+ - A project has one canvas block: canvas { ... }. Optional camera uses camera { ... }.
2549
+ - Import assets exactly as: import "path" as alias
2550
+ - Render an imported asset with its alias directly: alias { ... }
2551
+ - Text is: text name { ... }. Other built-in elements are only: overlay name { ... } and effect name { ... }.
2552
+ - NEVER write image name { ... }, asset name { ... }, video name { ... }, scene name { ... }, group name { ... }, rect name { ... }, or layer name { ... }. Those block types do not exist.
2553
+ - Explicit animations use a top-level animate TARGET block with nested from and to blocks, followed by duration, delay, and easing properties.
2554
+ - Put every block body on multiple lines and every property on its own line. Do not use JSON, CSS syntax, colons, semicolons, commas, arrays, or equals signs.
2555
+ - Quote text values and import paths. Names and aliases are single words without spaces.
2556
+ - Use size, never fontSize. Explicit animate blocks use easing. Preset option lists use ease.
2557
+ - Valid common properties: value, center, cover, x, y, width, height, scale, rotation, originX, originY, skewX, skewY, opacity, blur, brightness, contrast, saturation, hue, grayscale, sepia, invert, mask, maskInvert, maskVisible, shadow, size, weight, tracking, color, fill, stroke, strokeWidth, layer, animation, textAnimation, backgroundEffect.
2558
+ - Valid layers: background, hero, supporting, content, details, text, effects.
2559
+ - Preserve asset aspect ratio by setting width OR height, not both.
2560
+ - Use only paths listed under Available local assets. Do not invent imports or placeholder paths.
2561
+ - Paths beginning motionly-local: are uploaded browser assets. Copy those paths and aliases exactly; Motionly restores their encoded bytes when loading.
2562
+ - Presets are string property values, for example: animation "maskReveal(delay 1s duration 800ms direction down exitAt 5s exitDuration 450ms ease power3.out)"
2563
+ - Text presets: keynoteText, wordReveal, charReveal, splitReveal, blurReveal, fadeUp, slideIn, scaleText, typewriter, maskReveal, gradientReveal.
2564
+ - Object and transition presets: softReveal, maskReveal, dynamicSlide, shapeWipe, irisWipe, drawSVG, sceneExit, scaleReveal. Use drawSVG only for simple stroked SVG artwork.
2565
+ - Animate local SVG focus moves with the asset's x, y, scale, rotation, originX, and originY. Do not move the global camera when only one SVG should push in, pull back, or pan.
2566
+ - MP4, WebM, MOV, GIF, animated SVG, and Lottie imports are animated assets. Never describe them as unsupported or replace them with still images. Animated SVG uses real-time Canvas playback; disclose that exact frame seeking is unavailable and CSS keyframes may differ from browser DOM playback.
2567
+ - Camera presets go inside camera as cameraAnimation. Prefer slowPush, pan, pull, or one speedZoom at a meaningful transition.
2568
+ - Keyframes must be percentage blocks nested inside a keyframes block, which is nested inside animate TARGET.
2569
+ - Project audio is audio "path" { start 0s }. Keep it on the bottom audio track and preserve its start offset.
2570
+ - Persistent timeline rows use track NAME { ... }; imported media clips use clip ALIAS { track NAME start 0s duration 5s trimIn 0s trimOut 0s }.
2571
+ - Every visual track behaves as a simple layer: content types do not restrict placement, gaps/overlaps are allowed, and edits do not ripple neighboring clips.
2572
+ - Preserve existing track, start, duration, mask, and keyframe data unless the requested change requires editing it.
2573
+
2574
+ Minimal valid example:
2575
+ canvas {
2576
+ size 1920x1080
2577
+ fps 60
2578
+ duration 5s
2579
+ background #050608
2580
+ }
2581
+
2582
+ import "/assets/logo.svg" as logo
2583
+
2584
+ logo {
2585
+ center
2586
+ layer hero
2587
+ width 240
2588
+ opacity 0
2589
+ }
2590
+
2591
+ text title {
2592
+ value "Make it move."
2593
+ center
2594
+ layer text
2595
+ y 180
2596
+ size 72
2597
+ color #ffffff
2598
+ opacity 1
2599
+ textAnimation "keynoteText(split words stagger 80ms duration 750ms delay 1s ease power3.out)"
2600
+ }
2601
+
2602
+ animate logo {
2603
+ from {
2604
+ opacity 0
2605
+ y 80
2606
+ }
2607
+ to {
2608
+ opacity 1
2609
+ y 0
2610
+ }
2611
+ duration 800ms
2612
+ delay 0s
2613
+ easing power3.out
2614
+ }
2615
+
2616
+ Before answering, silently verify balanced braces, one property per line, every imported visual uses alias { ... }, every animate target exists, no forbidden block keyword appears, required copy is exact, timing covers the complete canvas, and tracks/keyframes survive as editable source.
2617
+
2618
+ Style and tone:
2619
+ Concise, clean, helpful, and collaborative for users who may not know .motion syntax. Prefer power3.out and entrances around 650ms to 1s.
2620
+
2621
+ Response format:
2622
+ Give one short explanation, then exactly one fenced \`\`\`motion code block containing the complete project. Do not emit any other fenced blocks.`;function lr(t){const e=t.trim();return e.startsWith("sk-ant-")?"anthropic":e.startsWith("sk-or-")?"openrouter":e.startsWith("AIza")||e.startsWith("AQ.")?"gemini":e.startsWith("hf_")?"huggingface":e.startsWith("sk-proj-")||e.startsWith("sk-")?"openai":null}function Uw(t){return/```motion\s*([\s\S]*?)```/i.exec(t)?.[1]?.trim()||void 0}function Tw(t,e){return p_(t,e,i=>`motionly-local:${encodeURIComponent(Ta(i.path)||i.name)}`)}function h_(t,e){for(const i of e.filter(s=>s.path.startsWith("data:"))){const s=new Set([i.name,encodeURIComponent(Ta(i.path)||i.name)]);for(const n of s)t=t.replaceAll(`"motionly-local:${n}"`,`"${i.path}"`)}return p_(t,e,i=>i.path)}function p_(t,e,i){for(const s of e.filter(n=>n.path.startsWith("data:"))){const n=s.name.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");t=t.replace(new RegExp(`(import\\s+)"[^"\\n]*"(\\s+as\\s+${n}(?=\\s|$))`,"g"),(a,o,l)=>`${o}"${i(s)}"${l}`)}return t}function uf(t){const e=new URL(t);if(e.protocol!=="https:"&&e.protocol!=="http:")throw new Error("Base URL must use http or https.");return/\/chat\/completions\/?$/.test(e.pathname)?e.href.replace(/\/$/,""):`${e.href.replace(/\/$/,"")}/chat/completions`}async function Pw(t,e,i,s,n=""){const a=`${Bw}
2623
+
2624
+ Current project:
2625
+ \`\`\`motion
2626
+ ${Tw(i,s)}
2627
+ \`\`\`
2628
+
2629
+ Available local assets:
2630
+ ${s.length?s.map(o=>`- ${o.name}: ${o.path.startsWith("data:")?`motionly-local:${o.name}`:o.path} (${o.type})`).join(`
2631
+ `):"- None"}${n.trim()?`
2632
+
2633
+ ${n.trim()}`:""}`;return t.provider==="anthropic"?zw(t,e,a):Aw(t,e,a)}async function Aw(t,e,i){const s={openai:"https://api.openai.com/v1/chat/completions",openrouter:"https://openrouter.ai/api/v1/chat/completions",gemini:"https://generativelanguage.googleapis.com/v1beta/openai/chat/completions",huggingface:"https://router.huggingface.co/v1/chat/completions"},n={openai:"gpt-5.4-mini",openrouter:"openrouter/auto",gemini:"gemini-2.5-flash",huggingface:"openai/gpt-oss-120b:fastest"},a=t.provider==="openai"||t.provider==="openrouter"||t.provider==="gemini"||t.provider==="huggingface"?t.provider:null,o=a?s[a]:uf(t.baseUrl),l=t.model.trim()||(a?n[a]:""),c={method:"POST",headers:{Authorization:`Bearer ${t.apiKey}`,"Content-Type":"application/json",...t.provider==="openrouter"?{"X-OpenRouter-Title":"Motionly"}:{}},body:JSON.stringify({...l?{model:l}:{},messages:[{role:"system",content:i},...e.map(({role:m,content:y})=>({role:m,content:y}))]})};let u=await fetch(o,c);t.provider==="gemini"&&u.status===503&&(await new Promise(m=>setTimeout(m,800)),u=await fetch(o,c));const d=await u.text();let h={};try{h=JSON.parse(d)}catch{h.message=d}if(!u.ok){const m=t.provider==="gemini"&&u.status===503?"Google Gemini is temporarily unavailable (503). Try again shortly or switch providers.":`Provider request failed (${u.status}).`,y=typeof h.error=="string"?h.error:h.error?.message;throw new Error(y||h.message||m)}const v=h.choices?.[0]?.message?.content?.trim();if(!v)throw new Error("The provider returned an empty response.");return v}async function zw(t,e,i){const s=await fetch("https://api.anthropic.com/v1/messages",{method:"POST",headers:{"x-api-key":t.apiKey,"anthropic-version":"2023-06-01","anthropic-dangerous-direct-browser-access":"true","Content-Type":"application/json"},body:JSON.stringify({model:t.model.trim()||"claude-sonnet-4-6",max_tokens:8192,system:i,messages:e.map(({role:o,content:l})=>({role:o,content:l}))})}),n=await s.json();if(!s.ok)throw new Error(n.error?.message||`Anthropic request failed (${s.status}).`);const a=n.content?.filter(o=>o.type==="text").map(o=>o.text??"").join(`
2634
+ `).trim();if(!a)throw new Error("Anthropic returned an empty response.");return a}var Mw=V("<i></i>"),Iw=V(`<div class="title-row svelte-qg4u95"><h1 class="svelte-qg4u95">Welcome to Motionly</h1><span class="beta svelte-qg4u95">Beta</span></div> <p class="notice svelte-qg4u95">We're early in beta—you may run into bugs or rough edges. Thanks for being here while we sort them out.</p> <p class="svelte-qg4u95">Motionly is an AI-native motion graphics editor where AI-assisted workflows create editable animation projects that you can refine visually. Edit timing, assets, animations, and layouts through a timeline and canvas editor before exporting the final result.</p> <p class="svelte-qg4u95">Underneath, every project is a plain, readable <code class="svelte-qg4u95">.motion</code> file. What AI makes is a starting point you can actually direct.</p> <div class="actions end svelte-qg4u95"><button class="primary svelte-qg4u95" type="button">Continue <!></button></div>`,1),Cw=V('<select class="provider-chip svelte-qg4u95" aria-label="AI provider"><option class="svelte-qg4u95">OpenAI</option><option class="svelte-qg4u95">Anthropic</option><option class="svelte-qg4u95">OpenRouter</option><option class="svelte-qg4u95">Google Gemini</option><option class="svelte-qg4u95">Hugging Face</option><option class="svelte-qg4u95">Custom endpoint</option></select>'),$w=V('<label class="custom-toggle svelte-qg4u95"><input type="checkbox" class="svelte-qg4u95"/> Custom endpoint</label>'),Ow=V('<p class="warning svelte-qg4u95">Kiro keys work with Kiro CLI, not a documented browser chat endpoint. Use another provider or a compatible custom gateway.</p>'),Nw=V('<div class="field svelte-qg4u95"><label for="welcome-base-url" class="svelte-qg4u95">Base URL</label><input id="welcome-base-url" placeholder="http://localhost:11434/v1" class="svelte-qg4u95"/></div>'),Fw=V(`<div class="field svelte-qg4u95"><label for="welcome-model" class="svelte-qg4u95">Model <span class="svelte-qg4u95">(optional)</span></label><input id="welcome-model" placeholder="Exact model ID" class="svelte-qg4u95"/><small class="svelte-qg4u95">Leave blank to use Motionly's default for this provider.</small></div>`),Dw=V('<p class="error svelte-qg4u95"> </p>'),Lw=V('<h1 class="svelte-qg4u95">Connect your AI provider</h1> <p class="svelte-qg4u95">AI features are Bring Your Own Key (BYOK). Motionly does not host or proxy AI requests; your browser sends prompts directly to your chosen provider.</p> <div class="field svelte-qg4u95"><label for="welcome-api-key" class="svelte-qg4u95">API key</label> <div class="key-field svelte-qg4u95"><input id="welcome-api-key" placeholder="Paste API key" autocomplete="off" class="svelte-qg4u95"/> <button type="button" class="svelte-qg4u95"><!></button></div></div> <!> <!> <!> <!> <p class="privacy svelte-qg4u95">Your key is stored locally in your browser and never sent to our servers.</p> <!> <div class="actions split svelte-qg4u95"><button class="text-button svelte-qg4u95" type="button">Back</button><button class="primary svelte-qg4u95" type="button">Continue <!></button></div> <button class="skip svelte-qg4u95" type="button">Skip for now</button> <small class="skip-note svelte-qg4u95">You can always add this later from the AI Assistant panel in the editor.</small>',1),Rw=V('<h1 class="svelte-qg4u95">Start with one solid preset</h1> <p class="svelte-qg4u95">Motionly currently ships with one preset to explore while the editor is in beta. More purposeful presets are coming.</p> <div class="preset svelte-qg4u95"><img alt="Motionly preset preview" class="svelte-qg4u95"/><div class="svelte-qg4u95"><strong class="svelte-qg4u95">Motionly</strong><span class="svelte-qg4u95">A complete editable project to inspect, remix, and learn from.</span></div></div> <div class="loop svelte-qg4u95"><span class="svelte-qg4u95">Describe or choose a preset</span><!><span class="svelte-qg4u95">Get editable `.motion`</span><!><span class="svelte-qg4u95">Refine visually</span><!><span class="svelte-qg4u95">Export</span></div> <div class="actions split svelte-qg4u95"><button class="text-button svelte-qg4u95" type="button">Back</button><button class="primary svelte-qg4u95" type="button">Continue <!></button></div>',1),Vw=V('<img class="hero-icon svelte-qg4u95" alt=""/> <h1 class="svelte-qg4u95">Build Motionly with us</h1> <p class="svelte-qg4u95">Motionly is open source. Follow progress, report rough edges, contribute directly on GitHub, or support the launch on Product Hunt.</p> <div class="community-links svelte-qg4u95"><a class="community-link svelte-qg4u95" href="https://github.com/COPPSARY/Motionly" target="_blank" rel="noreferrer"><img alt="" class="svelte-qg4u95"/> Contribute on GitHub</a> <a class="product-hunt-badge svelte-qg4u95" href="https://www.producthunt.com/products/motionly?embed=true&amp;utm_source=badge-featured&amp;utm_medium=badge&amp;utm_campaign=badge-motionly" target="_blank" rel="noopener noreferrer" aria-label="View Motionly on Product Hunt"><img alt="Motionly - Motionly is an AI-native motion graphics editor. | Product Hunt" width="250" height="54" src="https://api.producthunt.com/widgets/embed-image/v1/featured.svg?post_id=1197499&amp;theme=dark&amp;t=1784188075155" class="svelte-qg4u95"/></a></div> <div class="actions split svelte-qg4u95"><button class="text-button svelte-qg4u95" type="button">Back</button><button class="primary svelte-qg4u95" type="button">Continue <!></button></div>',1),Hw=V(`<img class="final-logo svelte-qg4u95" alt=""/> <h1 class="svelte-qg4u95">Ready when you are.</h1> <p class="svelte-qg4u95">Start from the preset, describe an idea to the Assistant, or build visually from scratch.</p> <button class="primary final svelte-qg4u95" type="button">Let's create something together <!></button>`,1),jw=V('<div class="step-content svelte-qg4u95"><!></div>'),Gw=V('<main class="onboarding svelte-qg4u95"><div class="brand svelte-qg4u95"><img alt="" class="svelte-qg4u95"/><span class="svelte-qg4u95">Motionly</span></div> <section class="step-card svelte-qg4u95" aria-live="polite"><div class="progress svelte-qg4u95"><span class="svelte-qg4u95"> </span> <div class="dots svelte-qg4u95"></div></div> <!></section></main>');function qw(t,e){An(e,!1);const i=R(),s=R(),n=on("logo.svg"),a=on("github.svg"),o=on("preset/motionly/motionly-preset.gif");let l=R(1),c=R(""),u=R("openai"),d=R(""),h=R(""),v=R(!1),m=R(!1),y=R("");Vc(()=>{try{const ct=localStorage.getItem(Po);if(!ct)return;const X=JSON.parse(ct);x(c,X.apiKey??""),x(u,lr(r(c))??X.provider??"openai"),x(d,X.baseUrl??""),x(h,X.model??""),x(v,r(u)==="custom")}catch{x(y,"Saved provider settings could not be read.")}});function _(){const ct=lr(r(c));ct&&(r(u)!==ct&&x(h,""),x(u,ct),x(v,!1))}function S(ct){const X=ct.currentTarget.value;X!==r(u)&&x(h,""),x(u,X),x(v,r(u)==="custom")}function T(ct){x(v,ct.currentTarget.checked),x(u,r(v)?"custom":r(i)??"openai")}function I(){if(x(y,""),!r(c).trim()){x(y,"Paste an API key or skip this step for now.");return}if(!r(i)&&r(u)!=="custom"){x(y,r(s)?"Kiro keys authenticate Kiro CLI, not a documented browser chat endpoint.":"Choose Custom endpoint for this key format.");return}if(r(u)==="custom")try{uf(r(d))}catch(ct){x(y,ct instanceof Error?ct.message:"Enter a valid Base URL.");return}localStorage.setItem(Po,JSON.stringify({apiKey:r(c).trim(),provider:r(u),baseUrl:r(d).trim(),model:r(h).trim()})),x(l,3)}function C(){localStorage.setItem(l_,"true"),window.location.assign(on("editor"))}ce(()=>r(c),()=>{x(i,lr(r(c)))}),ce(()=>r(c),()=>{x(s,r(c).trim().startsWith("ksk_"))}),kr(),tr();var $=Gw(),M=g($),D=g(M),F=b(M,2),L=g(F),P=g(L),j=g(P),_t=b(P,2);ue(_t,4,()=>[1,2,3,4,5],ve,(ct,X)=>{var O=Mw();let z;K(()=>z=$t(O,1,"svelte-qg4u95",null,z,{active:X===r(l),complete:X<r(l)})),A(ct,O)});var ft=b(L,2);Px(ft,()=>r(l),ct=>{var X=jw(),O=g(X);{var z=te=>{var re=Iw(),ke=b(it(re),8),Vt=g(ke),ot=b(g(Vt));ar(ot,{size:15}),B("click",Vt,()=>x(l,2)),A(te,re)},Et=te=>{var re=Lw(),ke=b(it(re),4),Vt=b(g(ke),2),ot=g(Vt),mi=b(ot,2),bt=g(mi);{var Ke=St=>{yc(St,{size:15})},be=St=>{No(St,{size:15})};tt(bt,St=>{r(m)?St(Ke):St(be,-1)})}var Ue=b(ke,2);{var ht=St=>{var fe=It(),ni=it(fe);{var is=Es=>{var ri=Cw(),ss=g(ri);ss.value=ss.__value="openai";var Gs=b(ss);Gs.value=Gs.__value="anthropic";var Hi=b(Gs);Hi.value=Hi.__value="openrouter";var gi=b(Hi);gi.value=gi.__value="gemini";var Mi=b(gi);Mi.value=Mi.__value="huggingface";var Ae=b(Mi);Ae.value=Ae.__value="custom";var Bs;Hr(ri),K(()=>{Bs!==(Bs=r(u))&&(ri.value=(ri.__value=r(u))??"",Kn(ri,r(u)))}),B("change",ri,S),A(Es,ri)},js=Es=>{var ri=$w(),ss=g(ri);K(()=>Oo(ss,r(v))),B("change",ss,T),A(Es,ri)};tt(ni,Es=>{r(i)||r(v)?Es(is):Es(js,-1)})}A(St,fe)},Jt=us(()=>(r(c),k(()=>r(c).trim())));tt(Ue,St=>{r(Jt)&&St(ht)})}var _i=b(Ue,2);{var zi=St=>{var fe=Ow();A(St,fe)};tt(_i,St=>{r(s)&&St(zi)})}var vt=b(_i,2);{var qe=St=>{var fe=Nw(),ni=b(g(fe));qi(ni,()=>r(d),is=>x(d,is)),A(St,fe)};tt(vt,St=>{r(v)&&St(qe)})}var es=b(vt,2);{var ks=St=>{var fe=Fw(),ni=b(g(fe));qi(ni,()=>r(h),is=>x(h,is)),A(St,fe)},Ct=us(()=>(r(c),r(i),r(v),k(()=>r(c).trim()&&(r(i)||r(v)))));tt(es,St=>{r(Ct)&&St(ks)})}var yt=b(es,4);{var de=St=>{var fe=Dw(),ni=g(fe);K(()=>rt(ni,r(y))),A(St,fe)};tt(yt,St=>{r(y)&&St(de)})}var Oe=b(yt,2),Mt=g(Oe),at=b(Mt),Ht=b(g(at));ar(Ht,{size:15});var ie=b(Oe,2);K(()=>{Q(ot,"type",r(m)?"text":"password"),Q(mi,"title",r(m)?"Hide key":"Show key")}),qi(ot,()=>r(c),St=>x(c,St)),B("input",ot,_),B("click",mi,()=>x(m,!r(m))),B("click",Mt,()=>x(l,1)),B("click",at,I),B("click",ie,()=>x(l,3)),A(te,re)},gt=te=>{var re=Rw(),ke=b(it(re),4),Vt=g(ke),ot=b(ke,2),mi=b(g(ot));ar(mi,{size:14});var bt=b(mi,2);ar(bt,{size:14});var Ke=b(bt,2);ar(Ke,{size:14});var be=b(ot,2),Ue=g(be),ht=b(Ue),Jt=b(g(ht));ar(Jt,{size:15}),K(()=>Q(Vt,"src",o)),B("click",Ue,()=>x(l,2)),B("click",ht,()=>x(l,4)),A(te,re)},$e=te=>{var re=Vw(),ke=it(re),Vt=b(ke,6),ot=g(Vt),mi=g(ot),bt=b(Vt,2),Ke=g(bt),be=b(Ke),Ue=b(g(be));ar(Ue,{size:15}),K(()=>{Q(ke,"src",a),Q(mi,"src",a)}),B("click",Ke,()=>x(l,3)),B("click",be,()=>x(l,5)),A(te,re)},Ge=te=>{var re=Hw(),ke=it(re),Vt=b(ke,6),ot=b(g(Vt));ar(ot,{size:15}),K(()=>Q(ke,"src",n)),B("click",Vt,C),A(te,re)};tt(O,te=>{r(l)===1?te(z):r(l)===2?te(Et,1):r(l)===3?te(gt,2):r(l)===4?te($e,3):te(Ge,-1)})}A(ct,X)}),K(()=>{Q(D,"src",n),Q(L,"aria-label",`Step ${r(l)} of 5`),rt(j,`Step ${r(l)??""} of 5`)}),A(t,$),zn()}function Ww(t){return{type:"Program",body:t}}function Yw(t){return{type:"Canvas",properties:t}}function Kw(t,e){return{type:"Import",path:t,name:e}}function Xw(t){return{type:"Camera",properties:t}}function Hp(t,e,i){return{type:"Element",kind:t,name:e,properties:i}}function Jw(t,e){return{type:"Animation",target:t,...e}}function Zw(t,e){return{type:"Sequence",name:t,properties:e}}function Qw(t,e){return{type:"Track",name:t,properties:e}}function t2(t){const e=[];let i=0,s=1,n=1;for(;i<t.length;){const a=t[i];if(a===`
2635
+ `){e.push(uo("Newline",`
2636
+ `,s,n)),i+=1,s+=1,n=1;continue}if(/\s/.test(a)){i+=1,n+=1;continue}if(a==="/"&&t[i+1]==="/"){for(;i<t.length&&t[i]!==`
2637
+ `;)i+=1,n+=1;continue}if(a==="{"||a==="}"){const c=a==="{"?"LeftBrace":"RightBrace";e.push(uo(c,a,s,n)),i+=1,n+=1;continue}if(a==='"'){const c=n;let u="";for(i+=1,n+=1;i<t.length&&t[i]!=='"';){if(t[i]==="\\"&&i+1<t.length){const d=t[i+1];u+=d==="n"?`
2638
+ `:d,i+=2,n+=2;continue}u+=t[i],i+=1,n+=1}if(t[i]!=='"')throw new Error(`Unterminated string at ${s}:${c}`);i+=1,n+=1,e.push(uo("String",u,s,c));continue}const o=n;let l="";for(;i<t.length&&!/\s/.test(t[i])&&t[i]!=="{"&&t[i]!=="}";)l+=t[i],i+=1,n+=1;e.push(uo("Word",l,s,o))}return e.push(uo("EOF","",s,n)),e}function uo(t,e,i,s){return{type:t,value:e,line:i,column:s}}const e2=new Set(["image","text","overlay","effect"]),i2=new Set(["background","backgroundEffect","blur","brightness","contrast","saturation","hue","grayscale","sepia","invert","mask","maskInvert","maskVisible","center","clip","color","cover","fill","effect","font","fps","height","gridSize","gridThickness","layer","animation","cameraAnimation","textAnimation","opacity","originX","originY","parent","path","pathProgress","revealProgress","offset","intensity","rotation","radius","radiusX","radiusY","scale","skewX","skewY","shadow","size","shape","source","stroke","strokeWidth","tracking","track","role","content","label","hidden","muted","order","start","duration","trimIn","trimOut","volume","mute","transitionIn","transitionInDuration","transitionOut","transitionOutDuration","value","weight","width","x","x2","y","y2","zoom"]);function jp(t){return new s2(t2(t)).parseProgram()}class s2{tokens;index;constructor(e){this.tokens=e,this.index=0}parseProgram(){const e=[];for(;!this.check("EOF")&&(this.skipNewlines(),!this.check("EOF"));)e.push(this.parseStatement());return Ww(e)}parseStatement(){const e=this.peek();if(this.matchWord("canvas"))return Yw(this.parseBlockProperties());if(this.matchWord("camera"))return Xw(this.parseBlockProperties());if(this.matchWord("audio")){const i=this.consume("String","Expected audio path").value;this.skipNewlines();const s=this.check("LeftBrace")?this.parseBlockProperties():{};return{type:"Audio",path:i,properties:s}}if(e.type==="Word"&&e.value==="track"&&this.tokens[this.index+1]?.type==="Word"){this.advance();const i=this.consume("Word","Expected track name").value;return Qw(i,this.parseBlockProperties())}if(this.matchWord("clip"))return{type:"Clip",assetName:this.consume("Word","Expected clip asset name").value,properties:this.parseBlockProperties()};if(this.matchWord("sequence")){const i=this.consume("Word","Expected sequence name").value;return Zw(i,this.parseBlockProperties())}if(this.matchWord("import")){const i=this.consume("String","Expected import path").value;this.consumeWord("as",'Expected "as" in import');const s=this.consume("Word","Expected import alias").value;return this.skipNewlines(),Kw(i,s)}if(this.matchWord("animate")){const i=this.consume("Word","Expected animation target").value;return Jw(i,this.parseAnimationBody())}if(e.type==="Word"){const i=this.advance().value;if(e2.has(i)&&this.check("Word")){const s=this.consume("Word",`Expected ${i} name`).value;return Hp(i,s,this.parseBlockProperties())}return Hp("asset",i,this.parseBlockProperties())}throw this.error(e,`Unexpected token "${e.value}"`)}parseAnimationBody(){this.consume("LeftBrace","Expected animation block");const e={from:{},to:{},keyframes:[],delay:0,duration:1,easing:"soft"};for(;!this.check("RightBrace")&&!this.check("EOF")&&(this.skipNewlines(),!this.check("RightBrace"));){if(this.matchWord("from")){e.from=this.parseBlockProperties();continue}if(this.matchWord("to")){e.to=this.parseBlockProperties();continue}if(this.matchWord("keyframes")){e.keyframes=this.parseKeyframes();continue}const i=this.consume("Word","Expected animation property").value,s=this.collectLineValues();e[i]=s.join(" ")}return this.consume("RightBrace","Expected end of animation block"),this.skipNewlines(),e}parseKeyframes(){this.consume("LeftBrace","Expected keyframes block");const e=[];for(;!this.check("RightBrace")&&!this.check("EOF")&&(this.skipNewlines(),!this.check("RightBrace"));){const i=this.consume("Word","Expected keyframe offset"),s=i.value.endsWith("%")?Number.parseFloat(i.value)/100:Number.parseFloat(i.value),n=this.parseBlockProperties(),a=typeof n.ease=="string"?n.ease:typeof n.easing=="string"?n.easing:void 0;delete n.ease,delete n.easing,e.push({offset:s,properties:n,...a?{easing:a}:{}})}return this.consume("RightBrace","Expected end of keyframes block"),e.sort((i,s)=>i.offset-s.offset)}parseBlockProperties(){this.consume("LeftBrace","Expected block");const e={};for(;!this.check("RightBrace")&&!this.check("EOF")&&(this.skipNewlines(),!this.check("RightBrace"));){const i=this.consume("Word","Expected property name").value;if(["center","cover","clip","maskInvert","maskVisible","mute","hidden","muted"].includes(i)&&(this.check("Newline")||this.check("RightBrace"))){e[i]=!0,this.skipNewlines();continue}const s=!["animation","textAnimation","cameraAnimation","backgroundEffect"].includes(i);e[i]=this.collectLineValues({stopAtPropertyName:s}).join(" ")}return this.consume("RightBrace","Expected end of block"),this.skipNewlines(),e}collectLineValues(e={}){const i=[];for(;!this.check("Newline")&&!this.check("RightBrace")&&!this.check("EOF")&&!(e.stopAtPropertyName&&i.length>0&&this.check("Word")&&i2.has(this.peek().value));)i.push(this.advance().value);return this.skipNewlines(),i}skipNewlines(){for(;this.check("Newline");)this.advance()}match(e){return this.check(e)?(this.advance(),!0):!1}matchWord(e){return!this.check("Word")||this.peek().value!==e?!1:(this.advance(),!0)}consume(e,i){if(this.check(e))return this.advance();throw this.error(this.peek(),i)}consumeWord(e,i){if(this.check("Word")&&this.peek().value===e)return this.advance();throw this.error(this.peek(),i)}check(e){return this.peek().type===e}advance(){const e=this.tokens[this.index];return e?(this.index++,e):this.tokens[this.tokens.length-1]}peek(){const e=this.tokens[this.index];return e||this.tokens[this.tokens.length-1]}error(e,i){const s=new Error(`${i} at ${e.line}:${e.column}`);return s.line=e.line,s.column=e.column,s.token=e,s}}function bc(t){return String(t).trim()}function Hc(t){const e=String(t).trim();return e.endsWith("ms")?Number.parseFloat(e)/1e3:(e.endsWith("s"),Number.parseFloat(e))}function n2(t){const e=String(t).trim().match(/^(\d+(?:\.\d+)?)\s*x\s*(\d+(?:\.\d+)?)$/);if(!e)throw new Error(`Invalid size "${t}"`);return{width:Number(e[1]),height:Number(e[2])}}function r2(t){if(typeof t=="number")return t;const e=String(t).trim();if(e==="true")return!0;if(e==="false")return!1;const i=Number(e);return Number.isNaN(i)?e:i}function Fo(t,e=0,i=1){return Math.min(i,Math.max(e,t))}const a2=new Set(["duration","delay","start","trimIn","trimOut","transitionInDuration","transitionOutDuration"]),o2=new Set(["x","y","width","height","scale","originX","originY","skewX","skewY","rotation","opacity","pathProgress","revealProgress","blur","brightness","contrast","saturation","hue","grayscale","sepia","invert","shadow","size","intensity","offset","overscan","radius","radiusX","radiusY","weight","tracking","strokeWidth","x2","y2","zoom"]),l2=new Set(["background","color","fill","stroke"]);function c2(t){const e=t.size?n2(String(t.size)):{width:1920,height:1080};return{width:e.width,height:e.height,fps:Number(t.fps??60),duration:t.duration?Hc(t.duration):5,background:t.background?bc(t.background):"#000"}}function u2(t={}){return{x:Number.parseFloat(String(t.x??0)),y:Number.parseFloat(String(t.y??0)),zoom:Number.parseFloat(String(t.zoom??1)),rotation:Number.parseFloat(String(t.rotation??0))}}function Ao(t){const e={};for(const[i,s]of Object.entries(t))e[i]=hs(i,s);return e}function hs(t,e){return a2.has(t)?Hc(e):o2.has(t)?Number.parseFloat(String(e)):l2.has(t)?bc(e):r2(e)}function d2(t){const e={x:0,y:0,width:null,height:null,scale:1,rotation:0,originX:.5,originY:.5,opacity:1,blur:0,brightness:1,contrast:1,saturation:1,hue:0,grayscale:0,sepia:0,invert:0,shadow:0,layer:"content",center:!1,cover:!1};return t==="text"?{...e,value:"",font:"Inter, SF Pro Display, Segoe UI, Arial, sans-serif",size:64,weight:600,color:"#fff",tracking:0}:t==="image"?{...e,source:""}:t==="overlay"?{...e,parent:"",shape:"rect",fill:"#000",stroke:"none",strokeWidth:4,radius:48,radiusX:48,radiusY:48,x2:0,y2:0,path:"",value:"",font:"Inter, SF Pro Display, Segoe UI, Arial, sans-serif",size:48,weight:700,clip:!1,opacity:0,layer:"effects"}:t==="effect"?{...e,effect:"gradientMotion",opacity:0,offset:0,intensity:1,layer:"background"}:e}function ln(t){const e=String(t??"").trim(),i=e.match(/^([A-Za-z][\w-]*)(?:\((.*)\))?$/);return i?{name:i[1],options:f2(i[2]??"")}:{name:e,options:{}}}function f2(t){const e={},i=t.replace(/[,:]/g," ").split(/\s+/).map(s=>s.trim()).filter(Boolean);for(let s=0;s<i.length;s+=2){const n=i[s],a=i[s+1];if(!n||a==null)break;e[n]=h2(n,a)}return e}function h2(t,e){if(["delay","duration","stagger","exitAt","exitDuration"].includes(t))return Hc(e);const i=Number(e);return Number.isNaN(i)?e:i}const p2={comma:",",none:"",space:" "};function Gp(t){if(!Number.isFinite(t)||Number.isInteger(t))return 0;const e=String(t).toLowerCase();if(e.includes("e-")){const[i,s]=e.split("e-");return(i?.split(".")[1]?.length??0)+Number(s??0)}return e.split(".")[1]?.length??0}function v2(t){const e=String(t??"").trim();return p2[e.toLowerCase()]??e}function m2(t,e="",i=0){const s=Number(t);if(!Number.isFinite(s))return String(t??"");const n=Math.max(0,Math.min(20,Math.floor(i))),a=new Intl.NumberFormat("en-US",{useGrouping:!!e,minimumFractionDigits:n,maximumFractionDigits:n}).format(s);return e?a.replace(/,/g,e):a}const _2=new Set(["splitReveal","blurReveal","fadeUp","slideIn","scaleText","typewriter","maskReveal","charReveal","wordReveal","gradientReveal","keynoteText","countUp"]),g2=new Set(["heroLogo","productPanel","softReveal","sceneExit","springIn","bounceIn","float","pulse","drawSVG","shapeWipe","irisWipe","maskReveal","dynamicSlide","scaleReveal","morph","rotateReveal","productReveal","appleHero","startupLaunch","highlight-circle-reveal","animated-arrow-point","callout-text-pop","spotlight-mask"]);function y2(t){const e=[],i=[],s=[];for(const n of t.elements){const a=n.properties,o=a.animation,l=a.textAnimation,c=ln(o).name==="countUp"?o:l??o;if(n.kind==="text"&&c&&w2(c)){if(ln(c).name==="countUp"){const v=b2(n,c);s.push(v.element),i.push(v.animation);continue}const h=E2(n,c);s.push(k2(n)),e.push(...h.elements),i.push(...h.animations);continue}if(a.backgroundEffect){const h=U2(n);e.push(...h.elements),i.push(...h.animations)}const d=a.animation;if(d&&S2(d)){const h=ln(d).name;s.push({...n,properties:{...n.properties,...h==="drawSVG"?{pathProgress:0}:{},...["highlight-circle-reveal","animated-arrow-point"].includes(h)?{pathProgress:0}:{},...h==="spotlight-mask"?{revealProgress:0}:{},...["shapeWipe","irisWipe","maskReveal"].includes(h)?{revealProgress:0,revealStyle:h==="irisWipe"?"iris":"linear"}:{},...["shapeWipe","maskReveal"].includes(h)?{revealDirection:String(ln(d).options.direction??"right")}:{}}}),i.push(...B2(n))}else s.push(n)}return{...t,elements:[...s,...e],animations:[...i,...t.animations]}}function b2(t,e){const{options:i}=ln(e),s=t.properties,n=fo(i.from,0),a=fo(i.to,fo(s.value,0)),o=String(i.direction??"up").toLowerCase(),l=o==="down"?a:n,c=o==="down"?n:a;return{element:{...t,properties:{...t.properties,value:l,countSeparator:v2(i.separator),countDecimals:Math.max(Gp(n),Gp(a)),countTo:a}},animation:{target:t.id,from:{value:l},to:{value:c},keyframes:[],delay:fo(i.delay,0),duration:Math.max(.001,fo(i.duration,2)),easing:String(i.ease??i.easing??"power3.out")}}}function fo(t,e){const i=Number(t);return Number.isFinite(i)?i:e}function x2(t){const{name:e,options:i}=ln(t),s=i.delay??0,n=i.duration??5,a=i.ease??"smooth";return e==="slowPush"||e==="push"||e==="productReveal"||e==="appleHero"?[{target:"camera",from:{zoom:i.from??1,x:i.xFrom??0,y:i.yFrom??0,rotation:0},to:{zoom:i.to??1.05,x:i.xTo??0,y:i.yTo??-10,rotation:0},keyframes:[],delay:s,duration:n,easing:a}]:e==="pan"?[{target:"camera",from:{x:i.from??-80,y:0},to:{x:i.to??80,y:0},keyframes:[],delay:s,duration:n,easing:a}]:e==="pull"?[{target:"camera",from:{zoom:i.from??1.06},to:{zoom:i.to??1},keyframes:[],delay:s,duration:n,easing:a}]:e==="speedZoom"?[{target:"camera",from:{},to:{},keyframes:[{offset:0,properties:{zoom:i.from??1,x:i.xFrom??0,y:i.yFrom??0}},{offset:.55,properties:{zoom:i.peak??1.12,x:i.xPeak??0,y:i.yPeak??0}},{offset:1,properties:{zoom:i.to??1.02,x:i.xTo??0,y:i.yTo??0}}],delay:s,duration:n,easing:i.ease??"power3.out"}]:[]}function w2(t){return _2.has(ln(t).name)}function S2(t){return g2.has(ln(t).name)}function k2(t){return{...t,properties:{...t.properties,opacity:0}}}function E2(t,e){const{name:i,options:s}=ln(e),n=s.split??z2(i),a=t.properties,o=T2(String(a.value??""),n),l=s.stagger??(n==="chars"?.035:.09),c=s.delay??0,u=s.duration??1.2,d=m_(s.ease??"power3.out"),v=P2(o,a,n).map((y,_)=>({...t,id:`${t.id}__${n}_${_}`,properties:{...t.properties,value:y.value,x:a.x+y.x,textGroup:t.id,textGroupX:a.x??0,textSplit:n,y:a.y,center:!0,opacity:0,blur:v_(i),scale:i==="scaleText"?.94:a.scale,tracking:0}})),m=v.map((y,_)=>{const S=y.properties;return{target:y.id,from:M2(i,S),to:qp(i,S),keyframes:[],delay:c+_*l,duration:u,easing:d}});return s.exitAt!=null&&m.push(...v.map((y,_)=>{const S=y.properties;return{target:y.id,from:qp(i,S),to:{opacity:0,y:S.y-30,blur:i==="blurReveal"?6:0},keyframes:[],delay:s.exitAt+_*Math.min(l,.018),duration:s.exitDuration??.9,easing:"ease-out"}})),{elements:v,animations:m}}function B2(t){const e=t.id,i=t.properties,{name:s,options:n}=ln(i.animation),a=n.delay??0,o=n.duration??(s==="float"?4:1.2),l=m_(n.ease??(s==="springIn"||s==="bounceIn"?"spring":"ease-out"));if(s==="highlight-circle-reveal"||s==="animated-arrow-point")return[Zi(e,a,o,n.ease??"power3.out",{opacity:1,pathProgress:0},{opacity:i.opacity||1,pathProgress:1})];if(s==="callout-text-pop"){const c=i.x??0,u=i.y??0,d=i.scale??1;return[Zi(e,a,o,n.ease??"power3.out",{opacity:0,x:c,y:u+(n.yFrom??18),scale:d*.84},{opacity:i.opacity||1,x:c,y:u,scale:d})]}if(s==="spotlight-mask")return[Zi(e,a,o,n.ease??"power3.out",{opacity:1,revealProgress:0},{opacity:i.opacity||1,revealProgress:1})];if(s==="heroLogo")return[Zi(e,a,o,n.ease??"soft-spring",{opacity:0,scale:n.from??.82,y:n.yFrom??i.y+34,rotation:n.rotationFrom??-1.5},{opacity:1,scale:n.to??i.scale,y:n.yTo??i.y,rotation:i.rotation})];if(s==="productPanel")return[Zi(e,a,o,n.ease??"ease-out",{opacity:0,scale:n.from??.965,x:n.xFrom??i.x,y:n.yFrom??i.y+34},{opacity:i.opacity||1,scale:n.to??i.scale,x:i.x,y:i.y})];if(s==="softReveal"){const c=n.opacity??(i.opacity||1),u=i.x??0,d=i.y??0,h=i.scale??1,v=[Zi(e,a,o,n.ease??"power3.out",{opacity:0,x:u+(n.xFrom??0),y:d+(n.yFrom??24),scale:n.from??h*.98,blur:n.blur??0},{opacity:c,x:u,y:d,scale:h,blur:0})];return n.exitAt!=null&&v.push(Zi(e,n.exitAt,n.exitDuration??.55,n.exitEase??"power2.in",{opacity:c,x:u,y:d,scale:h,blur:0},{opacity:0,x:u+(n.xExit??0),y:d+(n.yExit??0),scale:n.exitScale??h,blur:n.exitBlur??0})),v}if(s==="sceneExit")return[Zi(e,a,o,n.ease??"ease-out",{opacity:i.opacity||1,scale:i.scale,x:i.x,y:i.y},{opacity:0,scale:n.to??.98,x:n.xTo??i.x,y:n.yTo??i.y-28})];if(s==="float")return[{target:e,from:{},to:{},keyframes:[{offset:0,properties:{y:n.y??0}},{offset:.5,properties:{y:n.yTo??-14}},{offset:1,properties:{y:n.y??0}}],delay:a,duration:o,easing:"smooth"}];if(s==="pulse")return[{target:e,from:{},to:{},keyframes:[{offset:0,properties:{scale:1}},{offset:.5,properties:{scale:n.to??1.035}},{offset:1,properties:{scale:1}}],delay:a,duration:o,easing:"smooth"}];if(s==="rotateReveal")return[Zi(e,a,o,l,{opacity:0,scale:.94,rotation:i.rotation-4},{opacity:1,scale:i.scale,rotation:i.rotation})];if(s==="drawSVG")return[Zi(e,a,o,l,{opacity:1,pathProgress:0,scale:i.scale*.98},{opacity:i.opacity||1,pathProgress:1,scale:i.scale})];if(s==="shapeWipe"||s==="irisWipe")return[Zi(e,a,o,n.ease??"power3.out",{opacity:1,revealProgress:0},{opacity:1,revealProgress:1})];if(s==="maskReveal"){const c=i.opacity||1,u=[Zi(e,a,o,n.ease??"power3.out",{opacity:1,revealProgress:0},{opacity:c,revealProgress:1})];return n.exitAt!=null&&u.push(Zi(e,n.exitAt,n.exitDuration??.6,n.exitEase??"power2.in",{opacity:c,revealProgress:1},{opacity:0,revealProgress:0})),u}if(s==="dynamicSlide"){const c=i.x??0,u=i.y??0,d=i.scale??1,h=i.opacity||1,v=String(n.direction??"left"),m=n.distance??180,y=v==="left"?m:v==="right"?-m:0,_=v==="up"?m:v==="down"?-m:0,S=y?Math.sign(y)*4:0,T=[{target:e,from:{},to:{},keyframes:[{offset:0,properties:{opacity:0,x:c+y,y:u+_,scale:d*.94,skewX:S}},{offset:.82,properties:{opacity:h,x:c-y*.04,y:u-_*.04,scale:d*1.01,skewX:-S*.12}},{offset:1,properties:{opacity:h,x:c,y:u,scale:d,skewX:0}}],delay:a,duration:o,easing:n.ease??"power3.out"}];return n.exitAt!=null&&T.push(Zi(e,n.exitAt,n.exitDuration??.55,n.exitEase??"power2.in",{opacity:h,x:c,y:u,scale:d,skewX:0},{opacity:0,x:c-y*.7,y:u-_*.7,scale:d*.97,skewX:-S*.5})),T}return[Zi(e,a,o,l,{opacity:0,scale:n.from??.8,y:n.yFrom??i.y+36},{opacity:1,scale:n.to??i.scale,y:n.yTo??i.y})]}function U2(t){const e=t.properties,{name:i,options:s}=ln(e.backgroundEffect),n=s.duration??12,a=s.opacity??(i==="noise"?.035:.2),o={...t,id:`${t.id}__${i}`,kind:"effect",assetName:null,asset:null,properties:{...t.properties,...s,layer:"background",effect:i,opacity:a,offset:0,intensity:s.intensity??1}};return{elements:[o],animations:[{target:o.id,from:{offset:0},to:{offset:1},keyframes:[],delay:s.delay??0,duration:n,easing:"linear"}]}}function Zi(t,e,i,s,n,a){return{target:t,from:n,to:a,keyframes:[],delay:e,duration:i,easing:s}}function T2(t,e){return e==="words"?t.trim().split(/\s+/).filter(i=>i.length>0):Array.from(t)}function P2(t,e,i){if(i==="words"){const o=t.map(d=>d.length*e.size*.52),l=e.size*.34;let u=-(o.reduce((d,h)=>d+h,0)+l*(t.length-1))/2;return t.map((d,h)=>{const v=o[h],m=u+v/2;return u+=v+l,{value:d,x:m}})}const s=t.map(o=>A2(o,e,i));let a=-s.reduce((o,l)=>o+l,0)/2;return t.map((o,l)=>{const c=s[l],u=a+c/2;return a+=c,{value:o,x:u}})}function A2(t,e,i){return i==="words"?t.length*e.size*.52+e.size*.34:e.size*.54+(e.tracking??0)}function z2(t){return t==="keynoteText"||t==="wordReveal"||t==="blurReveal"?"words":"chars"}function v_(t){return t==="keynoteText"?0:t==="blurReveal"||t==="gradientReveal"?10:0}function M2(t,e){return t==="keynoteText"?{opacity:0,y:e.y+26,scale:.99}:t==="scaleText"?{opacity:0,scale:.92,y:e.y+8}:t==="slideIn"?{opacity:1,x:e.x-36}:t==="maskReveal"?{opacity:0,y:e.y+24}:{opacity:0,y:e.y+38,blur:v_(t)}}function qp(t,e){return t==="slideIn"?{opacity:e.opacity||1,x:e.x}:{opacity:e.opacity||1,y:e.y,blur:0,scale:e.scale||1}}function m_(t){return t==="power3.out"||t==="power2.out"?"ease-out":t}const Wp={background:0,hero:10,supporting:20,content:30,details:40,text:50,effects:60};function Yp(t){const e=t.body.find(m=>m.type==="Canvas"),i=t.body.find(m=>m.type==="Camera"),s=t.body.find(m=>m.type==="Audio"),n=c2(e&&"properties"in e?e.properties:{}),a=u2(i&&"properties"in i?i.properties:{}),o=D2(t),l=new Map,c=[],u=[],d=[];for(const m of t.body){if(m.type==="Import"&&l.set(m.name,{name:m.name,path:m.path,type:R2(m.path)}),m.type==="Element"){const y=m.kind==="asset"?m.name:m.kind==="image"?String(m.properties.source??""):null,_=y?l.get(y)??null:null,S=Ao(m.properties);c.push({id:m.name,kind:m.kind,assetName:_?y:null,asset:_,properties:{...d2(m.kind),...S,...m.kind==="overlay"&&S.parent&&!m.properties.layer?{layer:"details"}:{}}})}if(m.type==="Animation"&&u.push(F2(m,o)),m.type==="Clip"){const y=l.get(m.assetName)??null,_=Ao(m.properties);d.push({id:`clip_${m.assetName}_${d.length}`,assetName:m.assetName,asset:y,track:_.track??1,start:hs("start",_.start??0),duration:hs("duration",_.duration??5),trimIn:hs("trimIn",_.trimIn??0),trimOut:hs("trimOut",_.trimOut??0),transitionIn:_.transitionIn==="crossfade"?"crossfade":void 0,transitionInDuration:hs("transitionInDuration",_.transitionInDuration??0),transitionOut:_.transitionOut==="crossfade"?"crossfade":void 0,transitionOutDuration:hs("transitionOutDuration",_.transitionOutDuration??0),volume:_.volume!==void 0?Number(_.volume):1,mute:!!(_.mute??!1),sourceOrder:d.length})}}i&&"properties"in i&&i.properties.cameraAnimation&&u.push(...x2(i.properties.cameraAnimation));const h=$2(t,d,c,!!s),v=y2({canvas:n,camera:a,sequences:Array.from(o.values()),imports:Array.from(l.values()),elements:c,animations:u,tracks:h,clips:d,audio:s&&"path"in s?s.path:void 0,audioStart:s?hs("start",s.properties.start??0):0});return V2(v.elements),v.elements.sort((m,y)=>Kp(m.properties.layer)-Kp(y.properties.layer)),v}const I2=new Set(["main","overlay","audio"]),C2=new Set(["primary","video","image","text","effect","audio","mixed"]);function $2(t,e,i,s){const n=[],a=new Set;let o="";for(const c of t.body.filter(u=>u.type==="Track")){if(c.type!=="Track")continue;if(a.has(c.name))throw new Error(`Duplicate track declaration "${c.name}".`);const u=String(c.properties.role??"overlay");if(!I2.has(u))throw new Error(`Track "${c.name}" has unsupported role "${u}".`);if(u==="main"&&o)throw new Error(`Only one main track is allowed ("${o}" and "${c.name}").`);u==="main"&&(o=c.name);const d=u==="main"?"primary":u==="audio"?"audio":"mixed",h=String(c.properties.content??d);if(!C2.has(h))throw new Error(`Track "${c.name}" has unsupported content "${h}".`);if(u==="audio"&&h!=="audio")throw new Error(`Audio track "${c.name}" must use content audio.`);a.add(c.name),n.push({id:c.name,label:String(c.properties.label??O2(u,n.length)),role:u,content:h,hidden:!!hs("hidden",c.properties.hidden??!1),muted:!!hs("muted",c.properties.muted??!1),order:Number(c.properties.order??n.length),declared:!0})}const l=(c,u,d,h)=>{const v=n.find(y=>y.id===c);if(v)return v;const m={id:c,label:h,role:u,content:d,hidden:!1,muted:!1,order:n.length,declared:!1};return n.push(m),a.add(c),m};for(const c of e){const u=String(c.track),d=c.asset?.type==="video"?"video":"image",v=!n.some(m=>m.role==="main")&&(u==="1"||u==="main")?"main":"overlay";l(u,v,v==="main"?"primary":d,v==="main"?"Main Track":`${d==="video"?"Video":"Image"} Overlay`)}for(const c of i){const u=c.properties.track;if(u==null||u==="")continue;const d=c.kind==="text"?"text":c.kind==="effect"||c.kind==="overlay"?"effect":c.asset?.type==="video"?"video":"image";l(String(u),"overlay",d,N2(d))}return n.some(c=>c.role==="main")||n.unshift({id:"main",label:"Main Track",role:"main",content:"primary",hidden:!1,muted:!1,order:-1,declared:!1}),s&&!n.some(c=>c.role==="audio")&&l("legacy-audio","audio","audio","Audio"),n.sort((c,u)=>c.order-u.order)}function O2(t,e){return t==="main"?"Main Track":t==="audio"?e>0?`Audio ${e+1}`:"Audio":`Overlay ${e+1}`}function N2(t){return t==="text"?"Text Overlay":t==="video"?"Video Overlay":t==="image"?"Image Overlay":t==="effect"?"Effects Overlay":t==="audio"?"Audio":"Overlay"}function F2(t,e){const i=L2(t,e);return{target:t.target,from:Ao(t.from??{}),to:Ao(t.to??{}),keyframes:(t.keyframes??[]).map(s=>({offset:s.offset,properties:Ao(s.properties),...s.easing?{easing:String(s.easing)}:{}})),delay:hs("delay",t.delay??0)+i,duration:hs("duration",t.duration??1),easing:String(t.easing??"soft"),sequence:t.sequence}}function D2(t){const e=new Map;for(const i of t.body.filter(s=>s.type==="Sequence")){if(i.type!=="Sequence")continue;const s=hs("delay",i.properties.delay??0),n=hs("delay",i.properties.gap??0),a=String(i.properties.items??"").split(/\s+/).filter(Boolean);e.set(i.name,{name:i.name,delay:s,gap:n,items:a})}return e}function L2(t,e){if(!t.sequence)return 0;const i=e.get(String(t.sequence));if(!i)return 0;const s=i.items.indexOf(t.target);return i.delay+Math.max(0,s)*i.gap}function Kp(t){return Wp[t]??Wp.content}function R2(t){const e=t.toLowerCase(),i=Ta(t).toLowerCase(),s=e.split(/[?#]/,1)[0]??e;return e.startsWith("data:video/")||/\.(mp4|webm|mov|m4v)$/.test(i||s)?"video":e.startsWith("data:application/zip+dotlottie")||(i||s).endsWith(".lottie")?"lottie":e.startsWith("data:image/svg+xml")||(i||s).endsWith(".svg")?"svg":"image"}function V2(t){const e=new Map(t.map(i=>[i.id,i]));for(const i of t){const s=String(i.properties.mask??"");if(!s||s==="none")continue;if(s===i.id)throw new Error(`Layer "${i.id}" cannot mask itself`);const n=e.get(s);if(!n)throw new Error(`Mask layer "${s}" referenced by "${i.id}" does not exist`);const a=String(n.properties.mask??"");if(a&&a!=="none")throw new Error(`Nested layer masks are not supported: "${i.id}" -> "${s}"`)}}function Hn(t){if(t===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function __(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e}/*!
2639
+ * GSAP 3.15.0
2640
+ * https://gsap.com
2641
+ *
2642
+ * @license Copyright 2008-2026, GreenSock. All rights reserved.
2643
+ * Subject to the terms at https://gsap.com/standard-license
2644
+ * @author: Jack Doyle, jack@greensock.com
2645
+ */var Rs={autoSleep:120,force3D:"auto",nullTargetWarn:1,units:{lineHeight:""}},Do={duration:.5,overwrite:!1,delay:0},df,Li,Je,Js=1e8,Re=1/Js,Ud=Math.PI*2,H2=Ud/4,j2=0,g_=Math.sqrt,G2=Math.cos,q2=Math.sin,Fi=function(e){return typeof e=="string"},ui=function(e){return typeof e=="function"},Jn=function(e){return typeof e=="number"},ff=function(e){return typeof e>"u"},Pn=function(e){return typeof e=="object"},_s=function(e){return e!==!1},hf=function(){return typeof window<"u"},Ll=function(e){return ui(e)||Fi(e)},y_=typeof ArrayBuffer=="function"&&ArrayBuffer.isView||function(){},Yi=Array.isArray,W2=/random\([^)]+\)/g,Y2=/,\s*/g,Xp=/(?:-?\.?\d|\.)+/gi,b_=/[-+=.]*\d+[.e\-+]*\d*[e\-+]*\d*/g,_a=/[-+=.]*\d+[.e-]*\d*[a-z%]*/g,Ku=/[-+=.]*\d+\.?\d*(?:e-|e\+)?\d*/gi,x_=/[+-]=-?[.\d]+/,K2=/[^,'"\[\]\s]+/gi,X2=/^[+\-=e\s\d]*\d+[.\d]*([a-z]*|%)\s*$/i,ii,wn,Td,pf,Vs={},xc={},w_,S_=function(e){return(xc=Pa(e,Vs))&&ws},vf=function(e,i){return console.warn("Invalid property",e,"set to",i,"Missing plugin? gsap.registerPlugin()")},Lo=function(e,i){return!i&&console.warn(e)},k_=function(e,i){return e&&(Vs[e]=i)&&xc&&(xc[e]=i)||Vs},Ro=function(){return 0},J2={suppressEvents:!0,isStart:!0,kill:!1},ec={suppressEvents:!0,kill:!1},Z2={suppressEvents:!0},mf={},vr=[],Pd={},E_,Os={},Xu={},Jp=30,ic=[],_f="",gf=function(e){var i=e[0],s,n;if(Pn(i)||ui(i)||(e=[e]),!(s=(i._gsap||{}).harness)){for(n=ic.length;n--&&!ic[n].targetTest(i););s=ic[n]}for(n=e.length;n--;)e[n]&&(e[n]._gsap||(e[n]._gsap=new W_(e[n],s)))||e.splice(n,1);return e},jr=function(e){return e._gsap||gf(Zs(e))[0]._gsap},B_=function(e,i,s){return(s=e[i])&&ui(s)?e[i]():ff(s)&&e.getAttribute&&e.getAttribute(i)||s},gs=function(e,i){return(e=e.split(",")).forEach(i)||e},vi=function(e){return Math.round(e*1e5)/1e5||0},ei=function(e){return Math.round(e*1e7)/1e7||0},ba=function(e,i){var s=i.charAt(0),n=parseFloat(i.substr(2));return e=parseFloat(e),s==="+"?e+n:s==="-"?e-n:s==="*"?e*n:e/n},Q2=function(e,i){for(var s=i.length,n=0;e.indexOf(i[n])<0&&++n<s;);return n<s},wc=function(){var e=vr.length,i=vr.slice(0),s,n;for(Pd={},vr.length=0,s=0;s<e;s++)n=i[s],n&&n._lazy&&(n.render(n._lazy[0],n._lazy[1],!0)._lazy=0)},yf=function(e){return!!(e._initted||e._startAt||e.add)},U_=function(e,i,s,n){vr.length&&!Li&&wc(),e.render(i,s,!!(Li&&i<0&&yf(e))),vr.length&&!Li&&wc()},T_=function(e){var i=parseFloat(e);return(i||i===0)&&(e+"").match(K2).length<2?i:Fi(e)?e.trim():e},P_=function(e){return e},Hs=function(e,i){for(var s in i)s in e||(e[s]=i[s]);return e},tS=function(e){return function(i,s){for(var n in s)n in i||n==="duration"&&e||n==="ease"||(i[n]=s[n])}},Pa=function(e,i){for(var s in i)e[s]=i[s];return e},Zp=function t(e,i){for(var s in i)s!=="__proto__"&&s!=="constructor"&&s!=="prototype"&&(e[s]=Pn(i[s])?t(e[s]||(e[s]={}),i[s]):i[s]);return e},Sc=function(e,i){var s={},n;for(n in e)n in i||(s[n]=e[n]);return s},zo=function(e){var i=e.parent||ii,s=e.keyframes?tS(Yi(e.keyframes)):Hs;if(_s(e.inherit))for(;i;)s(e,i.vars.defaults),i=i.parent||i._dp;return e},eS=function(e,i){for(var s=e.length,n=s===i.length;n&&s--&&e[s]===i[s];);return s<0},A_=function(e,i,s,n,a){var o=e[n],l;if(a)for(l=i[a];o&&o[a]>l;)o=o._prev;return o?(i._next=o._next,o._next=i):(i._next=e[s],e[s]=i),i._next?i._next._prev=i:e[n]=i,i._prev=o,i.parent=i._dp=e,i},jc=function(e,i,s,n){s===void 0&&(s="_first"),n===void 0&&(n="_last");var a=i._prev,o=i._next;a?a._next=o:e[s]===i&&(e[s]=o),o?o._prev=a:e[n]===i&&(e[n]=a),i._next=i._prev=i.parent=null},br=function(e,i){e.parent&&(!i||e.parent.autoRemoveChildren)&&e.parent.remove&&e.parent.remove(e),e._act=0},Gr=function(e,i){if(e&&(!i||i._end>e._dur||i._start<0))for(var s=e;s;)s._dirty=1,s=s.parent;return e},iS=function(e){for(var i=e.parent;i&&i.parent;)i._dirty=1,i.totalDuration(),i=i.parent;return e},Ad=function(e,i,s,n){return e._startAt&&(Li?e._startAt.revert(ec):e.vars.immediateRender&&!e.vars.autoRevert||e._startAt.render(i,!0,n))},sS=function t(e){return!e||e._ts&&t(e.parent)},Qp=function(e){return e._repeat?Aa(e._tTime,e=e.duration()+e._rDelay)*e:0},Aa=function(e,i){var s=Math.floor(e=ei(e/i));return e&&s===e?s-1:s},kc=function(e,i){return(e-i._start)*i._ts+(i._ts>=0?0:i._dirty?i.totalDuration():i._tDur)},Gc=function(e){return e._end=ei(e._start+(e._tDur/Math.abs(e._ts||e._rts||Re)||0))},qc=function(e,i){var s=e._dp;return s&&s.smoothChildTiming&&e._ts&&(e._start=ei(s._time-(e._ts>0?i/e._ts:((e._dirty?e.totalDuration():e._tDur)-i)/-e._ts)),Gc(e),s._dirty||Gr(s,e)),e},z_=function(e,i){var s;if((i._time||!i._dur&&i._initted||i._start<e._time&&(i._dur||!i.add))&&(s=kc(e.rawTime(),i),(!i._dur||Zo(0,i.totalDuration(),s)-i._tTime>Re)&&i.render(s,!0)),Gr(e,i)._dp&&e._initted&&e._time>=e._dur&&e._ts){if(e._dur<e.duration())for(s=e;s._dp;)s.rawTime()>=0&&s.totalTime(s._tTime),s=s._dp;e._zTime=-Re}},kn=function(e,i,s,n){return i.parent&&br(i),i._start=ei((Jn(s)?s:s||e!==ii?Ys(e,s,i):e._time)+i._delay),i._end=ei(i._start+(i.totalDuration()/Math.abs(i.timeScale())||0)),A_(e,i,"_first","_last",e._sort?"_start":0),zd(i)||(e._recent=i),n||z_(e,i),e._ts<0&&qc(e,e._tTime),e},M_=function(e,i){return(Vs.ScrollTrigger||vf("scrollTrigger",i))&&Vs.ScrollTrigger.create(i,e)},I_=function(e,i,s,n,a){if(xf(e,i,a),!e._initted)return 1;if(!s&&e._pt&&!Li&&(e._dur&&e.vars.lazy!==!1||!e._dur&&e.vars.lazy)&&E_!==Ns.frame)return vr.push(e),e._lazy=[a,n],1},nS=function t(e){var i=e.parent;return i&&i._ts&&i._initted&&!i._lock&&(i.rawTime()<0||t(i))},zd=function(e){var i=e.data;return i==="isFromStart"||i==="isStart"},rS=function(e,i,s,n){var a=e.ratio,o=i<0||!i&&(!e._start&&nS(e)&&!(!e._initted&&zd(e))||(e._ts<0||e._dp._ts<0)&&!zd(e))?0:1,l=e._rDelay,c=0,u,d,h;if(l&&e._repeat&&(c=Zo(0,e._tDur,i),d=Aa(c,l),e._yoyo&&d&1&&(o=1-o),d!==Aa(e._tTime,l)&&(a=1-o,e.vars.repeatRefresh&&e._initted&&e.invalidate())),o!==a||Li||n||e._zTime===Re||!i&&e._zTime){if(!e._initted&&I_(e,i,n,s,c))return;for(h=e._zTime,e._zTime=i||(s?Re:0),s||(s=i&&!h),e.ratio=o,e._from&&(o=1-o),e._time=0,e._tTime=c,u=e._pt;u;)u.r(o,u.d),u=u._next;i<0&&Ad(e,i,s,!0),e._onUpdate&&!s&&Fs(e,"onUpdate"),c&&e._repeat&&!s&&e.parent&&Fs(e,"onRepeat"),(i>=e._tDur||i<0)&&e.ratio===o&&(o&&br(e,1),!s&&!Li&&(Fs(e,o?"onComplete":"onReverseComplete",!0),e._prom&&e._prom()))}else e._zTime||(e._zTime=i)},aS=function(e,i,s){var n;if(s>i)for(n=e._first;n&&n._start<=s;){if(n.data==="isPause"&&n._start>i)return n;n=n._next}else for(n=e._last;n&&n._start>=s;){if(n.data==="isPause"&&n._start<i)return n;n=n._prev}},za=function(e,i,s,n){var a=e._repeat,o=ei(i)||0,l=e._tTime/e._tDur;return l&&!n&&(e._time*=o/e._dur),e._dur=o,e._tDur=a?a<0?1e10:ei(o*(a+1)+e._rDelay*a):o,l>0&&!n&&qc(e,e._tTime=e._tDur*l),e.parent&&Gc(e),s||Gr(e.parent,e),e},tv=function(e){return e instanceof ps?Gr(e):za(e,e._dur)},oS={_start:0,endTime:Ro,totalDuration:Ro},Ys=function t(e,i,s){var n=e.labels,a=e._recent||oS,o=e.duration()>=Js?a.endTime(!1):e._dur,l,c,u;return Fi(i)&&(isNaN(i)||i in n)?(c=i.charAt(0),u=i.substr(-1)==="%",l=i.indexOf("="),c==="<"||c===">"?(l>=0&&(i=i.replace(/=/,"")),(c==="<"?a._start:a.endTime(a._repeat>=0))+(parseFloat(i.substr(1))||0)*(u?(l<0?a:s).totalDuration()/100:1)):l<0?(i in n||(n[i]=o),n[i]):(c=parseFloat(i.charAt(l-1)+i.substr(l+1)),u&&s&&(c=c/100*(Yi(s)?s[0]:s).totalDuration()),l>1?t(e,i.substr(0,l-1),s)+c:o+c)):i==null?o:+i},Mo=function(e,i,s){var n=Jn(i[1]),a=(n?2:1)+(e<2?0:1),o=i[a],l,c;if(n&&(o.duration=i[1]),o.parent=s,e){for(l=o,c=s;c&&!("immediateRender"in l);)l=c.vars.defaults||{},c=_s(c.vars.inherit)&&c.parent;o.immediateRender=_s(l.immediateRender),e<2?o.runBackwards=1:o.startAt=i[a-1]}return new Si(i[0],o,i[a+1])},Er=function(e,i){return e||e===0?i(e):i},Zo=function(e,i,s){return s<e?e:s>i?i:s},Wi=function(e,i){return!Fi(e)||!(i=X2.exec(e))?"":i[1]},lS=function(e,i,s){return Er(s,function(n){return Zo(e,i,n)})},Md=[].slice,C_=function(e,i){return e&&Pn(e)&&"length"in e&&(!i&&!e.length||e.length-1 in e&&Pn(e[0]))&&!e.nodeType&&e!==wn},cS=function(e,i,s){return s===void 0&&(s=[]),e.forEach(function(n){var a;return Fi(n)&&!i||C_(n,1)?(a=s).push.apply(a,Zs(n)):s.push(n)})||s},Zs=function(e,i,s){return Je&&!i&&Je.selector?Je.selector(e):Fi(e)&&!s&&(Td||!Ma())?Md.call((i||pf).querySelectorAll(e),0):Yi(e)?cS(e,s):C_(e)?Md.call(e,0):e?[e]:[]},Id=function(e){return e=Zs(e)[0]||Lo("Invalid scope")||{},function(i){var s=e.current||e.nativeElement||e;return Zs(i,s.querySelectorAll?s:s===e?Lo("Invalid scope")||pf.createElement("div"):e)}},$_=function(e){return e.sort(function(){return .5-Math.random()})},O_=function(e){if(ui(e))return e;var i=Pn(e)?e:{each:e},s=qr(i.ease),n=i.from||0,a=parseFloat(i.base)||0,o={},l=n>0&&n<1,c=isNaN(n)||l,u=i.axis,d=n,h=n;return Fi(n)?d=h={center:.5,edges:.5,end:1}[n]||0:!l&&c&&(d=n[0],h=n[1]),function(v,m,y){var _=(y||i).length,S=o[_],T,I,C,$,M,D,F,L,P;if(!S){if(P=i.grid==="auto"?0:(i.grid||[1,Js])[1],!P){for(F=-Js;F<(F=y[P++].getBoundingClientRect().left)&&P<_;);P<_&&P--}for(S=o[_]=[],T=c?Math.min(P,_)*d-.5:n%P,I=P===Js?0:c?_*h/P-.5:n/P|0,F=0,L=Js,D=0;D<_;D++)C=D%P-T,$=I-(D/P|0),S[D]=M=u?Math.abs(u==="y"?$:C):g_(C*C+$*$),M>F&&(F=M),M<L&&(L=M);n==="random"&&$_(S),S.max=F-L,S.min=L,S.v=_=(parseFloat(i.amount)||parseFloat(i.each)*(P>_?_-1:u?u==="y"?_/P:P:Math.max(P,_/P))||0)*(n==="edges"?-1:1),S.b=_<0?a-_:a,S.u=Wi(i.amount||i.each)||0,s=s&&_<0?wS(s):s}return _=(S[v]-S.min)/S.max||0,ei(S.b+(s?s(_):_)*S.v)+S.u}},Cd=function(e){var i=Math.pow(10,((e+"").split(".")[1]||"").length);return function(s){var n=ei(Math.round(parseFloat(s)/e)*e*i);return(n-n%1)/i+(Jn(s)?0:Wi(s))}},N_=function(e,i){var s=Yi(e),n,a;return!s&&Pn(e)&&(n=s=e.radius||Js,e.values?(e=Zs(e.values),(a=!Jn(e[0]))&&(n*=n)):e=Cd(e.increment)),Er(i,s?ui(e)?function(o){return a=e(o),Math.abs(a-o)<=n?a:o}:function(o){for(var l=parseFloat(a?o.x:o),c=parseFloat(a?o.y:0),u=Js,d=0,h=e.length,v,m;h--;)a?(v=e[h].x-l,m=e[h].y-c,v=v*v+m*m):v=Math.abs(e[h]-l),v<u&&(u=v,d=h);return d=!n||u<=n?e[d]:o,a||d===o||Jn(o)?d:d+Wi(o)}:Cd(e))},F_=function(e,i,s,n){return Er(Yi(e)?!i:s===!0?!!(s=0):!n,function(){return Yi(e)?e[~~(Math.random()*e.length)]:(s=s||1e-5)&&(n=s<1?Math.pow(10,(s+"").length-2):1)&&Math.floor(Math.round((e-s/2+Math.random()*(i-e+s*.99))/s)*s*n)/n})},uS=function(){for(var e=arguments.length,i=new Array(e),s=0;s<e;s++)i[s]=arguments[s];return function(n){return i.reduce(function(a,o){return o(a)},n)}},dS=function(e,i){return function(s){return e(parseFloat(s))+(i||Wi(s))}},fS=function(e,i,s){return L_(e,i,0,1,s)},D_=function(e,i,s){return Er(s,function(n){return e[~~i(n)]})},hS=function t(e,i,s){var n=i-e;return Yi(e)?D_(e,t(0,e.length),i):Er(s,function(a){return(n+(a-e)%n)%n+e})},pS=function t(e,i,s){var n=i-e,a=n*2;return Yi(e)?D_(e,t(0,e.length-1),i):Er(s,function(o){return o=(a+(o-e)%a)%a||0,e+(o>n?a-o:o)})},Vo=function(e){return e.replace(W2,function(i){var s=i.indexOf("[")+1,n=i.substring(s||7,s?i.indexOf("]"):i.length-1).split(Y2);return F_(s?n:+n[0],s?0:+n[1],+n[2]||1e-5)})},L_=function(e,i,s,n,a){var o=i-e,l=n-s;return Er(a,function(c){return s+((c-e)/o*l||0)})},vS=function t(e,i,s,n){var a=isNaN(e+i)?0:function(m){return(1-m)*e+m*i};if(!a){var o=Fi(e),l={},c,u,d,h,v;if(s===!0&&(n=1)&&(s=null),o)e={p:e},i={p:i};else if(Yi(e)&&!Yi(i)){for(d=[],h=e.length,v=h-2,u=1;u<h;u++)d.push(t(e[u-1],e[u]));h--,a=function(y){y*=h;var _=Math.min(v,~~y);return d[_](y-_)},s=i}else n||(e=Pa(Yi(e)?[]:{},e));if(!d){for(c in i)bf.call(l,e,c,"get",i[c]);a=function(y){return kf(y,l)||(o?e.p:e)}}}return Er(s,a)},ev=function(e,i,s){var n=e.labels,a=Js,o,l,c;for(o in n)l=n[o]-i,l<0==!!s&&l&&a>(l=Math.abs(l))&&(c=o,a=l);return c},Fs=function(e,i,s){var n=e.vars,a=n[i],o=Je,l=e._ctx,c,u,d;if(a)return c=n[i+"Params"],u=n.callbackScope||e,s&&vr.length&&wc(),l&&(Je=l),d=c?a.apply(u,c):a.call(u),Je=o,d},So=function(e){return br(e),e.scrollTrigger&&e.scrollTrigger.kill(!!Li),e.progress()<1&&Fs(e,"onInterrupt"),e},ga,R_=[],V_=function(e){if(e)if(e=!e.name&&e.default||e,hf()||e.headless){var i=e.name,s=ui(e),n=i&&!s&&e.init?function(){this._props=[]}:e,a={init:Ro,render:kf,add:bf,kill:MS,modifier:zS,rawVars:0},o={targetTest:0,get:0,getSetter:Sf,aliases:{},register:0};if(Ma(),e!==n){if(Os[i])return;Hs(n,Hs(Sc(e,a),o)),Pa(n.prototype,Pa(a,Sc(e,o))),Os[n.prop=i]=n,e.targetTest&&(ic.push(n),mf[i]=1),i=(i==="css"?"CSS":i.charAt(0).toUpperCase()+i.substr(1))+"Plugin"}k_(i,n),e.register&&e.register(ws,n,ys)}else R_.push(e)},Le=255,ko={aqua:[0,Le,Le],lime:[0,Le,0],silver:[192,192,192],black:[0,0,0],maroon:[128,0,0],teal:[0,128,128],blue:[0,0,Le],navy:[0,0,128],white:[Le,Le,Le],olive:[128,128,0],yellow:[Le,Le,0],orange:[Le,165,0],gray:[128,128,128],purple:[128,0,128],green:[0,128,0],red:[Le,0,0],pink:[Le,192,203],cyan:[0,Le,Le],transparent:[Le,Le,Le,0]},Ju=function(e,i,s){return e+=e<0?1:e>1?-1:0,(e*6<1?i+(s-i)*e*6:e<.5?s:e*3<2?i+(s-i)*(2/3-e)*6:i)*Le+.5|0},H_=function(e,i,s){var n=e?Jn(e)?[e>>16,e>>8&Le,e&Le]:0:ko.black,a,o,l,c,u,d,h,v,m,y;if(!n){if(e.substr(-1)===","&&(e=e.substr(0,e.length-1)),ko[e])n=ko[e];else if(e.charAt(0)==="#"){if(e.length<6&&(a=e.charAt(1),o=e.charAt(2),l=e.charAt(3),e="#"+a+a+o+o+l+l+(e.length===5?e.charAt(4)+e.charAt(4):"")),e.length===9)return n=parseInt(e.substr(1,6),16),[n>>16,n>>8&Le,n&Le,parseInt(e.substr(7),16)/255];e=parseInt(e.substr(1),16),n=[e>>16,e>>8&Le,e&Le]}else if(e.substr(0,3)==="hsl"){if(n=y=e.match(Xp),!i)c=+n[0]%360/360,u=+n[1]/100,d=+n[2]/100,o=d<=.5?d*(u+1):d+u-d*u,a=d*2-o,n.length>3&&(n[3]*=1),n[0]=Ju(c+1/3,a,o),n[1]=Ju(c,a,o),n[2]=Ju(c-1/3,a,o);else if(~e.indexOf("="))return n=e.match(b_),s&&n.length<4&&(n[3]=1),n}else n=e.match(Xp)||ko.transparent;n=n.map(Number)}return i&&!y&&(a=n[0]/Le,o=n[1]/Le,l=n[2]/Le,h=Math.max(a,o,l),v=Math.min(a,o,l),d=(h+v)/2,h===v?c=u=0:(m=h-v,u=d>.5?m/(2-h-v):m/(h+v),c=h===a?(o-l)/m+(o<l?6:0):h===o?(l-a)/m+2:(a-o)/m+4,c*=60),n[0]=~~(c+.5),n[1]=~~(u*100+.5),n[2]=~~(d*100+.5)),s&&n.length<4&&(n[3]=1),n},j_=function(e){var i=[],s=[],n=-1;return e.split(mr).forEach(function(a){var o=a.match(_a)||[];i.push.apply(i,o),s.push(n+=o.length+1)}),i.c=s,i},iv=function(e,i,s){var n="",a=(e+n).match(mr),o=i?"hsla(":"rgba(",l=0,c,u,d,h;if(!a)return e;if(a=a.map(function(v){return(v=H_(v,i,1))&&o+(i?v[0]+","+v[1]+"%,"+v[2]+"%,"+v[3]:v.join(","))+")"}),s&&(d=j_(e),c=s.c,c.join(n)!==d.c.join(n)))for(u=e.replace(mr,"1").split(_a),h=u.length-1;l<h;l++)n+=u[l]+(~c.indexOf(l)?a.shift()||o+"0,0,0,0)":(d.length?d:a.length?a:s).shift());if(!u)for(u=e.split(mr),h=u.length-1;l<h;l++)n+=u[l]+a[l];return n+u[h]},mr=(function(){var t="(?:\\b(?:(?:rgb|rgba|hsl|hsla)\\(.+?\\))|\\B#(?:[0-9a-f]{3,4}){1,2}\\b",e;for(e in ko)t+="|"+e+"\\b";return new RegExp(t+")","gi")})(),mS=/hsl[a]?\(/,G_=function(e){var i=e.join(" "),s;if(mr.lastIndex=0,mr.test(i))return s=mS.test(i),e[1]=iv(e[1],s),e[0]=iv(e[0],s,j_(e[1])),!0},Ho,Ns=(function(){var t=Date.now,e=500,i=33,s=t(),n=s,a=1e3/240,o=a,l=[],c,u,d,h,v,m,y=function _(S){var T=t()-n,I=S===!0,C,$,M,D;if((T>e||T<0)&&(s+=T-i),n+=T,M=n-s,C=M-o,(C>0||I)&&(D=++h.frame,v=M-h.time*1e3,h.time=M=M/1e3,o+=C+(C>=a?4:a-C),$=1),I||(c=u(_)),$)for(m=0;m<l.length;m++)l[m](M,v,D,S)};return h={time:0,frame:0,tick:function(){y(!0)},deltaRatio:function(S){return v/(1e3/(S||60))},wake:function(){w_&&(!Td&&hf()&&(wn=Td=window,pf=wn.document||{},Vs.gsap=ws,(wn.gsapVersions||(wn.gsapVersions=[])).push(ws.version),S_(xc||wn.GreenSockGlobals||!wn.gsap&&wn||{}),R_.forEach(V_)),d=typeof requestAnimationFrame<"u"&&requestAnimationFrame,c&&h.sleep(),u=d||function(S){return setTimeout(S,o-h.time*1e3+1|0)},Ho=1,y(2))},sleep:function(){(d?cancelAnimationFrame:clearTimeout)(c),Ho=0,u=Ro},lagSmoothing:function(S,T){e=S||1/0,i=Math.min(T||33,e)},fps:function(S){a=1e3/(S||240),o=h.time*1e3+a},add:function(S,T,I){var C=T?function($,M,D,F){S($,M,D,F),h.remove(C)}:S;return h.remove(S),l[I?"unshift":"push"](C),Ma(),C},remove:function(S,T){~(T=l.indexOf(S))&&l.splice(T,1)&&m>=T&&m--},_listeners:l},h})(),Ma=function(){return!Ho&&Ns.wake()},ye={},_S=/^[\d.\-M][\d.\-,\s]/,gS=/["']/g,yS=function(e){for(var i={},s=e.substr(1,e.length-3).split(":"),n=s[0],a=1,o=s.length,l,c,u;a<o;a++)c=s[a],l=a!==o-1?c.lastIndexOf(","):c.length,u=c.substr(0,l),i[n]=isNaN(u)?u.replace(gS,"").trim():+u,n=c.substr(l+1).trim();return i},bS=function(e){var i=e.indexOf("(")+1,s=e.indexOf(")"),n=e.indexOf("(",i);return e.substring(i,~n&&n<s?e.indexOf(")",s+1):s)},xS=function(e){var i=(e+"").split("("),s=ye[i[0]];return s&&i.length>1&&s.config?s.config.apply(null,~e.indexOf("{")?[yS(i[1])]:bS(e).split(",").map(T_)):ye._CE&&_S.test(e)?ye._CE("",e):s},wS=function(e){return function(i){return 1-e(1-i)}},qr=function(e,i){return e&&(ui(e)?e:ye[e]||xS(e))||i},ea=function(e,i,s,n){s===void 0&&(s=function(c){return 1-i(1-c)}),n===void 0&&(n=function(c){return c<.5?i(c*2)/2:1-i((1-c)*2)/2});var a={easeIn:i,easeOut:s,easeInOut:n},o;return gs(e,function(l){ye[l]=Vs[l]=a,ye[o=l.toLowerCase()]=s;for(var c in a)ye[o+(c==="easeIn"?".in":c==="easeOut"?".out":".inOut")]=ye[l+"."+c]=a[c]}),a},q_=function(e){return function(i){return i<.5?(1-e(1-i*2))/2:.5+e((i-.5)*2)/2}},Zu=function t(e,i,s){var n=i>=1?i:1,a=(s||(e?.3:.45))/(i<1?i:1),o=a/Ud*(Math.asin(1/n)||0),l=function(d){return d===1?1:n*Math.pow(2,-10*d)*q2((d-o)*a)+1},c=e==="out"?l:e==="in"?function(u){return 1-l(1-u)}:q_(l);return a=Ud/a,c.config=function(u,d){return t(e,u,d)},c},Qu=function t(e,i){i===void 0&&(i=1.70158);var s=function(o){return o?--o*o*((i+1)*o+i)+1:0},n=e==="out"?s:e==="in"?function(a){return 1-s(1-a)}:q_(s);return n.config=function(a){return t(e,a)},n};gs("Linear,Quad,Cubic,Quart,Quint,Strong",function(t,e){var i=e<5?e+1:e;ea(t+",Power"+(i-1),e?function(s){return Math.pow(s,i)}:function(s){return s},function(s){return 1-Math.pow(1-s,i)},function(s){return s<.5?Math.pow(s*2,i)/2:1-Math.pow((1-s)*2,i)/2})});ye.Linear.easeNone=ye.none=ye.Linear.easeIn;ea("Elastic",Zu("in"),Zu("out"),Zu());(function(t,e){var i=1/e,s=2*i,n=2.5*i,a=function(l){return l<i?t*l*l:l<s?t*Math.pow(l-1.5/e,2)+.75:l<n?t*(l-=2.25/e)*l+.9375:t*Math.pow(l-2.625/e,2)+.984375};ea("Bounce",function(o){return 1-a(1-o)},a)})(7.5625,2.75);ea("Expo",function(t){return Math.pow(2,10*(t-1))*t+t*t*t*t*t*t*(1-t)});ea("Circ",function(t){return-(g_(1-t*t)-1)});ea("Sine",function(t){return t===1?1:-G2(t*H2)+1});ea("Back",Qu("in"),Qu("out"),Qu());ye.SteppedEase=ye.steps=Vs.SteppedEase={config:function(e,i){e===void 0&&(e=1);var s=1/e,n=e+(i?0:1),a=i?1:0,o=1-Re;return function(l){return((n*Zo(0,o,l)|0)+a)*s}}};Do.ease=ye["quad.out"];gs("onComplete,onUpdate,onStart,onRepeat,onReverseComplete,onInterrupt",function(t){return _f+=t+","+t+"Params,"});var W_=function(e,i){this.id=j2++,e._gsap=this,this.target=e,this.harness=i,this.get=i?i.get:B_,this.set=i?i.getSetter:Sf},jo=(function(){function t(i){this.vars=i,this._delay=+i.delay||0,(this._repeat=i.repeat===1/0?-2:i.repeat||0)&&(this._rDelay=i.repeatDelay||0,this._yoyo=!!i.yoyo||!!i.yoyoEase),this._ts=1,za(this,+i.duration,1,1),this.data=i.data,Je&&(this._ctx=Je,Je.data.push(this)),Ho||Ns.wake()}var e=t.prototype;return e.delay=function(s){return s||s===0?(this.parent&&this.parent.smoothChildTiming&&this.startTime(this._start+s-this._delay),this._delay=s,this):this._delay},e.duration=function(s){return arguments.length?this.totalDuration(this._repeat>0?s+(s+this._rDelay)*this._repeat:s):this.totalDuration()&&this._dur},e.totalDuration=function(s){return arguments.length?(this._dirty=0,za(this,this._repeat<0?s:(s-this._repeat*this._rDelay)/(this._repeat+1))):this._tDur},e.totalTime=function(s,n){if(Ma(),!arguments.length)return this._tTime;var a=this._dp;if(a&&a.smoothChildTiming&&this._ts){for(qc(this,s),!a._dp||a.parent||z_(a,this);a&&a.parent;)a.parent._time!==a._start+(a._ts>=0?a._tTime/a._ts:(a.totalDuration()-a._tTime)/-a._ts)&&a.totalTime(a._tTime,!0),a=a.parent;!this.parent&&this._dp.autoRemoveChildren&&(this._ts>0&&s<this._tDur||this._ts<0&&s>0||!this._tDur&&!s)&&kn(this._dp,this,this._start-this._delay)}return(this._tTime!==s||!this._dur&&!n||this._initted&&Math.abs(this._zTime)===Re||!this._initted&&this._dur&&s||!s&&!this._initted&&(this.add||this._ptLookup))&&(this._ts||(this._pTime=s),U_(this,s,n)),this},e.time=function(s,n){return arguments.length?this.totalTime(Math.min(this.totalDuration(),s+Qp(this))%(this._dur+this._rDelay)||(s?this._dur:0),n):this._time},e.totalProgress=function(s,n){return arguments.length?this.totalTime(this.totalDuration()*s,n):this.totalDuration()?Math.min(1,this._tTime/this._tDur):this.rawTime()>=0&&this._initted?1:0},e.progress=function(s,n){return arguments.length?this.totalTime(this.duration()*(this._yoyo&&!(this.iteration()&1)?1-s:s)+Qp(this),n):this.duration()?Math.min(1,this._time/this._dur):this.rawTime()>0?1:0},e.iteration=function(s,n){var a=this.duration()+this._rDelay;return arguments.length?this.totalTime(this._time+(s-1)*a,n):this._repeat?Aa(this._tTime,a)+1:1},e.timeScale=function(s,n){if(!arguments.length)return this._rts===-Re?0:this._rts;if(this._rts===s)return this;var a=this.parent&&this._ts?kc(this.parent._time,this):this._tTime;return this._rts=+s||0,this._ts=this._ps||s===-Re?0:this._rts,this.totalTime(Zo(-Math.abs(this._delay),this.totalDuration(),a),n!==!1),Gc(this),iS(this)},e.paused=function(s){return arguments.length?(this._ps!==s&&(this._ps=s,s?(this._pTime=this._tTime||Math.max(-this._delay,this.rawTime()),this._ts=this._act=0):(Ma(),this._ts=this._rts,this.totalTime(this.parent&&!this.parent.smoothChildTiming?this.rawTime():this._tTime||this._pTime,this.progress()===1&&Math.abs(this._zTime)!==Re&&(this._tTime-=Re)))),this):this._ps},e.startTime=function(s){if(arguments.length){this._start=ei(s);var n=this.parent||this._dp;return n&&(n._sort||!this.parent)&&kn(n,this,this._start-this._delay),this}return this._start},e.endTime=function(s){return this._start+(_s(s)?this.totalDuration():this.duration())/Math.abs(this._ts||1)},e.rawTime=function(s){var n=this.parent||this._dp;return n?s&&(!this._ts||this._repeat&&this._time&&this.totalProgress()<1)?this._tTime%(this._dur+this._rDelay):this._ts?kc(n.rawTime(s),this):this._tTime:this._tTime},e.revert=function(s){s===void 0&&(s=Z2);var n=Li;return Li=s,yf(this)&&(this.timeline&&this.timeline.revert(s),this.totalTime(-.01,s.suppressEvents)),this.data!=="nested"&&s.kill!==!1&&this.kill(),Li=n,this},e.globalTime=function(s){for(var n=this,a=arguments.length?s:n.rawTime();n;)a=n._start+a/(Math.abs(n._ts)||1),n=n._dp;return!this.parent&&this._sat?this._sat.globalTime(s):a},e.repeat=function(s){return arguments.length?(this._repeat=s===1/0?-2:s,tv(this)):this._repeat===-2?1/0:this._repeat},e.repeatDelay=function(s){if(arguments.length){var n=this._time;return this._rDelay=s,tv(this),n?this.time(n):this}return this._rDelay},e.yoyo=function(s){return arguments.length?(this._yoyo=s,this):this._yoyo},e.seek=function(s,n){return this.totalTime(Ys(this,s),_s(n))},e.restart=function(s,n){return this.play().totalTime(s?-this._delay:0,_s(n)),this._dur||(this._zTime=-Re),this},e.play=function(s,n){return s!=null&&this.seek(s,n),this.reversed(!1).paused(!1)},e.reverse=function(s,n){return s!=null&&this.seek(s||this.totalDuration(),n),this.reversed(!0).paused(!1)},e.pause=function(s,n){return s!=null&&this.seek(s,n),this.paused(!0)},e.resume=function(){return this.paused(!1)},e.reversed=function(s){return arguments.length?(!!s!==this.reversed()&&this.timeScale(-this._rts||(s?-Re:0)),this):this._rts<0},e.invalidate=function(){return this._initted=this._act=0,this._zTime=-Re,this},e.isActive=function(){var s=this.parent||this._dp,n=this._start,a;return!!(!s||this._ts&&this._initted&&s.isActive()&&(a=s.rawTime(!0))>=n&&a<this.endTime(!0)-Re)},e.eventCallback=function(s,n,a){var o=this.vars;return arguments.length>1?(n?(o[s]=n,a&&(o[s+"Params"]=a),s==="onUpdate"&&(this._onUpdate=n)):delete o[s],this):o[s]},e.then=function(s){var n=this,a=n._prom;return new Promise(function(o){var l=ui(s)?s:P_,c=function(){var d=n.then;n.then=null,a&&a(),ui(l)&&(l=l(n))&&(l.then||l===n)&&(n.then=d),o(l),n.then=d};n._initted&&n.totalProgress()===1&&n._ts>=0||!n._tTime&&n._ts<0?c():n._prom=c})},e.kill=function(){So(this)},t})();Hs(jo.prototype,{_time:0,_start:0,_end:0,_tTime:0,_tDur:0,_dirty:0,_repeat:0,_yoyo:!1,parent:null,_initted:!1,_rDelay:0,_ts:1,_dp:0,ratio:0,_zTime:-Re,_prom:0,_ps:!1,_rts:1});var ps=(function(t){__(e,t);function e(s,n){var a;return s===void 0&&(s={}),a=t.call(this,s)||this,a.labels={},a.smoothChildTiming=!!s.smoothChildTiming,a.autoRemoveChildren=!!s.autoRemoveChildren,a._sort=_s(s.sortChildren),ii&&kn(s.parent||ii,Hn(a),n),s.reversed&&a.reverse(),s.paused&&a.paused(!0),s.scrollTrigger&&M_(Hn(a),s.scrollTrigger),a}var i=e.prototype;return i.to=function(n,a,o){return Mo(0,arguments,this),this},i.from=function(n,a,o){return Mo(1,arguments,this),this},i.fromTo=function(n,a,o,l){return Mo(2,arguments,this),this},i.set=function(n,a,o){return a.duration=0,a.parent=this,zo(a).repeatDelay||(a.repeat=0),a.immediateRender=!!a.immediateRender,new Si(n,a,Ys(this,o),1),this},i.call=function(n,a,o){return kn(this,Si.delayedCall(0,n,a),o)},i.staggerTo=function(n,a,o,l,c,u,d){return o.duration=a,o.stagger=o.stagger||l,o.onComplete=u,o.onCompleteParams=d,o.parent=this,new Si(n,o,Ys(this,c)),this},i.staggerFrom=function(n,a,o,l,c,u,d){return o.runBackwards=1,zo(o).immediateRender=_s(o.immediateRender),this.staggerTo(n,a,o,l,c,u,d)},i.staggerFromTo=function(n,a,o,l,c,u,d,h){return l.startAt=o,zo(l).immediateRender=_s(l.immediateRender),this.staggerTo(n,a,l,c,u,d,h)},i.render=function(n,a,o){var l=this._time,c=this._dirty?this.totalDuration():this._tDur,u=this._dur,d=n<=0?0:ei(n),h=this._zTime<0!=n<0&&(this._initted||!u),v,m,y,_,S,T,I,C,$,M,D,F;if(this!==ii&&d>c&&n>=0&&(d=c),d!==this._tTime||o||h){if(l!==this._time&&u&&(d+=this._time-l,n+=this._time-l),v=d,$=this._start,C=this._ts,T=!C,h&&(u||(l=this._zTime),(n||!a)&&(this._zTime=n)),this._repeat){if(D=this._yoyo,S=u+this._rDelay,this._repeat<-1&&n<0)return this.totalTime(S*100+n,a,o);if(v=ei(d%S),d===c?(_=this._repeat,v=u):(M=ei(d/S),_=~~M,_&&_===M&&(v=u,_--),v>u&&(v=u)),M=Aa(this._tTime,S),!l&&this._tTime&&M!==_&&this._tTime-M*S-this._dur<=0&&(M=_),D&&_&1&&(v=u-v,F=1),_!==M&&!this._lock){var L=D&&M&1,P=L===(D&&_&1);if(_<M&&(L=!L),l=L?0:d%u?u:d,this._lock=1,this.render(l||(F?0:ei(_*S)),a,!u)._lock=0,this._tTime=d,!a&&this.parent&&Fs(this,"onRepeat"),this.vars.repeatRefresh&&!F&&(this.invalidate()._lock=1,M=_),l&&l!==this._time||T!==!this._ts||this.vars.onRepeat&&!this.parent&&!this._act)return this;if(u=this._dur,c=this._tDur,P&&(this._lock=2,l=L?u:-1e-4,this.render(l,!0),this.vars.repeatRefresh&&!F&&this.invalidate()),this._lock=0,!this._ts&&!T)return this}}if(this._hasPause&&!this._forcing&&this._lock<2&&(I=aS(this,ei(l),ei(v)),I&&(d-=v-(v=I._start))),this._tTime=d,this._time=v,this._act=!!C,this._initted||(this._onUpdate=this.vars.onUpdate,this._initted=1,this._zTime=n,l=0),!l&&d&&u&&!a&&!M&&(Fs(this,"onStart"),this._tTime!==d))return this;if(v>=l&&n>=0)for(m=this._first;m;){if(y=m._next,(m._act||v>=m._start)&&m._ts&&I!==m){if(m.parent!==this)return this.render(n,a,o);if(m.render(m._ts>0?(v-m._start)*m._ts:(m._dirty?m.totalDuration():m._tDur)+(v-m._start)*m._ts,a,o),v!==this._time||!this._ts&&!T){I=0,y&&(d+=this._zTime=-Re);break}}m=y}else{m=this._last;for(var j=n<0?n:v;m;){if(y=m._prev,(m._act||j<=m._end)&&m._ts&&I!==m){if(m.parent!==this)return this.render(n,a,o);if(m.render(m._ts>0?(j-m._start)*m._ts:(m._dirty?m.totalDuration():m._tDur)+(j-m._start)*m._ts,a,o||Li&&yf(m)),v!==this._time||!this._ts&&!T){I=0,y&&(d+=this._zTime=j?-Re:Re);break}}m=y}}if(I&&!a&&(this.pause(),I.render(v>=l?0:-Re)._zTime=v>=l?1:-1,this._ts))return this._start=$,Gc(this),this.render(n,a,o);this._onUpdate&&!a&&Fs(this,"onUpdate",!0),(d===c&&this._tTime>=this.totalDuration()||!d&&l)&&($===this._start||Math.abs(C)!==Math.abs(this._ts))&&(this._lock||((n||!u)&&(d===c&&this._ts>0||!d&&this._ts<0)&&br(this,1),!a&&!(n<0&&!l)&&(d||l||!c)&&(Fs(this,d===c&&n>=0?"onComplete":"onReverseComplete",!0),this._prom&&!(d<c&&this.timeScale()>0)&&this._prom())))}return this},i.add=function(n,a){var o=this;if(Jn(a)||(a=Ys(this,a,n)),!(n instanceof jo)){if(Yi(n))return n.forEach(function(l){return o.add(l,a)}),this;if(Fi(n))return this.addLabel(n,a);if(ui(n))n=Si.delayedCall(0,n);else return this}return this!==n?kn(this,n,a):this},i.getChildren=function(n,a,o,l){n===void 0&&(n=!0),a===void 0&&(a=!0),o===void 0&&(o=!0),l===void 0&&(l=-Js);for(var c=[],u=this._first;u;)u._start>=l&&(u instanceof Si?a&&c.push(u):(o&&c.push(u),n&&c.push.apply(c,u.getChildren(!0,a,o)))),u=u._next;return c},i.getById=function(n){for(var a=this.getChildren(1,1,1),o=a.length;o--;)if(a[o].vars.id===n)return a[o]},i.remove=function(n){return Fi(n)?this.removeLabel(n):ui(n)?this.killTweensOf(n):(n.parent===this&&jc(this,n),n===this._recent&&(this._recent=this._last),Gr(this))},i.totalTime=function(n,a){return arguments.length?(this._forcing=1,!this._dp&&this._ts&&(this._start=ei(Ns.time-(this._ts>0?n/this._ts:(this.totalDuration()-n)/-this._ts))),t.prototype.totalTime.call(this,n,a),this._forcing=0,this):this._tTime},i.addLabel=function(n,a){return this.labels[n]=Ys(this,a),this},i.removeLabel=function(n){return delete this.labels[n],this},i.addPause=function(n,a,o){var l=Si.delayedCall(0,a||Ro,o);return l.data="isPause",this._hasPause=1,kn(this,l,Ys(this,n))},i.removePause=function(n){var a=this._first;for(n=Ys(this,n);a;)a._start===n&&a.data==="isPause"&&br(a),a=a._next},i.killTweensOf=function(n,a,o){for(var l=this.getTweensOf(n,o),c=l.length;c--;)ur!==l[c]&&l[c].kill(n,a);return this},i.getTweensOf=function(n,a){for(var o=[],l=Zs(n),c=this._first,u=Jn(a),d;c;)c instanceof Si?Q2(c._targets,l)&&(u?(!ur||c._initted&&c._ts)&&c.globalTime(0)<=a&&c.globalTime(c.totalDuration())>a:!a||c.isActive())&&o.push(c):(d=c.getTweensOf(l,a)).length&&o.push.apply(o,d),c=c._next;return o},i.tweenTo=function(n,a){a=a||{};var o=this,l=Ys(o,n),c=a,u=c.startAt,d=c.onStart,h=c.onStartParams,v=c.immediateRender,m,y=Si.to(o,Hs({ease:a.ease||"none",lazy:!1,immediateRender:!1,time:l,overwrite:"auto",duration:a.duration||Math.abs((l-(u&&"time"in u?u.time:o._time))/o.timeScale())||Re,onStart:function(){if(o.pause(),!m){var S=a.duration||Math.abs((l-(u&&"time"in u?u.time:o._time))/o.timeScale());y._dur!==S&&za(y,S,0,1).render(y._time,!0,!0),m=1}d&&d.apply(y,h||[])}},a));return v?y.render(0):y},i.tweenFromTo=function(n,a,o){return this.tweenTo(a,Hs({startAt:{time:Ys(this,n)}},o))},i.recent=function(){return this._recent},i.nextLabel=function(n){return n===void 0&&(n=this._time),ev(this,Ys(this,n))},i.previousLabel=function(n){return n===void 0&&(n=this._time),ev(this,Ys(this,n),1)},i.currentLabel=function(n){return arguments.length?this.seek(n,!0):this.previousLabel(this._time+Re)},i.shiftChildren=function(n,a,o){o===void 0&&(o=0);var l=this._first,c=this.labels,u;for(n=ei(n);l;)l._start>=o&&(l._start+=n,l._end+=n),l=l._next;if(a)for(u in c)c[u]>=o&&(c[u]+=n);return Gr(this)},i.invalidate=function(n){var a=this._first;for(this._lock=0;a;)a.invalidate(n),a=a._next;return t.prototype.invalidate.call(this,n)},i.clear=function(n){n===void 0&&(n=!0);for(var a=this._first,o;a;)o=a._next,this.remove(a),a=o;return this._dp&&(this._time=this._tTime=this._pTime=0),n&&(this.labels={}),Gr(this)},i.totalDuration=function(n){var a=0,o=this,l=o._last,c=Js,u,d,h;if(arguments.length)return o.timeScale((o._repeat<0?o.duration():o.totalDuration())/(o.reversed()?-n:n));if(o._dirty){for(h=o.parent;l;)u=l._prev,l._dirty&&l.totalDuration(),d=l._start,d>c&&o._sort&&l._ts&&!o._lock?(o._lock=1,kn(o,l,d-l._delay,1)._lock=0):c=d,d<0&&l._ts&&(a-=d,(!h&&!o._dp||h&&h.smoothChildTiming)&&(o._start+=ei(d/o._ts),o._time-=d,o._tTime-=d),o.shiftChildren(-d,!1,-1/0),c=0),l._end>a&&l._ts&&(a=l._end),l=u;za(o,o===ii&&o._time>a?o._time:a,1,1),o._dirty=0}return o._tDur},e.updateRoot=function(n){if(ii._ts&&(U_(ii,kc(n,ii)),E_=Ns.frame),Ns.frame>=Jp){Jp+=Rs.autoSleep||120;var a=ii._first;if((!a||!a._ts)&&Rs.autoSleep&&Ns._listeners.length<2){for(;a&&!a._ts;)a=a._next;a||Ns.sleep()}}},e})(jo);Hs(ps.prototype,{_lock:0,_hasPause:0,_forcing:0});var SS=function(e,i,s,n,a,o,l){var c=new ys(this._pt,e,i,0,1,Q_,null,a),u=0,d=0,h,v,m,y,_,S,T,I;for(c.b=s,c.e=n,s+="",n+="",(T=~n.indexOf("random("))&&(n=Vo(n)),o&&(I=[s,n],o(I,e,i),s=I[0],n=I[1]),v=s.match(Ku)||[];h=Ku.exec(n);)y=h[0],_=n.substring(u,h.index),m?m=(m+1)%5:_.substr(-5)==="rgba("&&(m=1),y!==v[d++]&&(S=parseFloat(v[d-1])||0,c._pt={_next:c._pt,p:_||d===1?_:",",s:S,c:y.charAt(1)==="="?ba(S,y)-S:parseFloat(y)-S,m:m&&m<4?Math.round:0},u=Ku.lastIndex);return c.c=u<n.length?n.substring(u,n.length):"",c.fp=l,(x_.test(n)||T)&&(c.e=0),this._pt=c,c},bf=function(e,i,s,n,a,o,l,c,u,d){ui(n)&&(n=n(a||0,e,o));var h=e[i],v=s!=="get"?s:ui(h)?u?e[i.indexOf("set")||!ui(e["get"+i.substr(3)])?i:"get"+i.substr(3)](u):e[i]():h,m=ui(h)?u?TS:J_:wf,y;if(Fi(n)&&(~n.indexOf("random(")&&(n=Vo(n)),n.charAt(1)==="="&&(y=ba(v,n)+(Wi(v)||0),(y||y===0)&&(n=y))),!d||v!==n||$d)return!isNaN(v*n)&&n!==""?(y=new ys(this._pt,e,i,+v||0,n-(v||0),typeof h=="boolean"?AS:Z_,0,m),u&&(y.fp=u),l&&y.modifier(l,this,e),this._pt=y):(!h&&!(i in e)&&vf(i,n),SS.call(this,e,i,v,n,m,c||Rs.stringFilter,u))},kS=function(e,i,s,n,a){if(ui(e)&&(e=Io(e,a,i,s,n)),!Pn(e)||e.style&&e.nodeType||Yi(e)||y_(e))return Fi(e)?Io(e,a,i,s,n):e;var o={},l;for(l in e)o[l]=Io(e[l],a,i,s,n);return o},Y_=function(e,i,s,n,a,o){var l,c,u,d;if(Os[e]&&(l=new Os[e]).init(a,l.rawVars?i[e]:kS(i[e],n,a,o,s),s,n,o)!==!1&&(s._pt=c=new ys(s._pt,a,e,0,1,l.render,l,0,l.priority),s!==ga))for(u=s._ptLookup[s._targets.indexOf(a)],d=l._props.length;d--;)u[l._props[d]]=c;return l},ur,$d,xf=function t(e,i,s){var n=e.vars,a=n.ease,o=n.startAt,l=n.immediateRender,c=n.lazy,u=n.onUpdate,d=n.runBackwards,h=n.yoyoEase,v=n.keyframes,m=n.autoRevert,y=e._dur,_=e._startAt,S=e._targets,T=e.parent,I=T&&T.data==="nested"?T.vars.targets:S,C=e._overwrite==="auto"&&!df,$=e.timeline,M=n.easeReverse||h,D,F,L,P,j,_t,ft,ct,X,O,z,Et,gt;if($&&(!v||!a)&&(a="none"),e._ease=qr(a,Do.ease),e._rEase=M&&(qr(M)||e._ease),e._from=!$&&!!n.runBackwards,e._from&&(e.ratio=1),!$||v&&!n.stagger){if(ct=S[0]?jr(S[0]).harness:0,Et=ct&&n[ct.prop],D=Sc(n,mf),_&&(_._zTime<0&&_.progress(1),i<0&&d&&l&&!m?_.render(-1,!0):_.revert(d&&y?ec:J2),_._lazy=0),o){if(br(e._startAt=Si.set(S,Hs({data:"isStart",overwrite:!1,parent:T,immediateRender:!0,lazy:!_&&_s(c),startAt:null,delay:0,onUpdate:u&&function(){return Fs(e,"onUpdate")},stagger:0},o))),e._startAt._dp=0,e._startAt._sat=e,i<0&&(Li||!l&&!m)&&e._startAt.revert(ec),l&&y&&i<=0&&s<=0){i&&(e._zTime=i);return}}else if(d&&y&&!_){if(i&&(l=!1),L=Hs({overwrite:!1,data:"isFromStart",lazy:l&&!_&&_s(c),immediateRender:l,stagger:0,parent:T},D),Et&&(L[ct.prop]=Et),br(e._startAt=Si.set(S,L)),e._startAt._dp=0,e._startAt._sat=e,i<0&&(Li?e._startAt.revert(ec):e._startAt.render(-1,!0)),e._zTime=i,!l)t(e._startAt,Re,Re);else if(!i)return}for(e._pt=e._ptCache=0,c=y&&_s(c)||c&&!y,F=0;F<S.length;F++){if(j=S[F],ft=j._gsap||gf(S)[F]._gsap,e._ptLookup[F]=O={},Pd[ft.id]&&vr.length&&wc(),z=I===S?F:I.indexOf(j),ct&&(X=new ct).init(j,Et||D,e,z,I)!==!1&&(e._pt=P=new ys(e._pt,j,X.name,0,1,X.render,X,0,X.priority),X._props.forEach(function($e){O[$e]=P}),X.priority&&(_t=1)),!ct||Et)for(L in D)Os[L]&&(X=Y_(L,D,e,z,j,I))?X.priority&&(_t=1):O[L]=P=bf.call(e,j,L,"get",D[L],z,I,0,n.stringFilter);e._op&&e._op[F]&&e.kill(j,e._op[F]),C&&e._pt&&(ur=e,ii.killTweensOf(j,O,e.globalTime(i)),gt=!e.parent,ur=0),e._pt&&c&&(Pd[ft.id]=1)}_t&&tg(e),e._onInit&&e._onInit(e)}e._onUpdate=u,e._initted=(!e._op||e._pt)&&!gt,v&&i<=0&&$.render(Js,!0,!0)},ES=function(e,i,s,n,a,o,l,c){var u=(e._pt&&e._ptCache||(e._ptCache={}))[i],d,h,v,m;if(!u)for(u=e._ptCache[i]=[],v=e._ptLookup,m=e._targets.length;m--;){if(d=v[m][i],d&&d.d&&d.d._pt)for(d=d.d._pt;d&&d.p!==i&&d.fp!==i;)d=d._next;if(!d)return $d=1,e.vars[i]="+=0",xf(e,l),$d=0,c?Lo(i+" not eligible for reset. Try splitting into individual properties"):1;u.push(d)}for(m=u.length;m--;)h=u[m],d=h._pt||h,d.s=(n||n===0)&&!a?n:d.s+(n||0)+o*d.c,d.c=s-d.s,h.e&&(h.e=vi(s)+Wi(h.e)),h.b&&(h.b=d.s+Wi(h.b))},BS=function(e,i){var s=e[0]?jr(e[0]).harness:0,n=s&&s.aliases,a,o,l,c;if(!n)return i;a=Pa({},i);for(o in n)if(o in a)for(c=n[o].split(","),l=c.length;l--;)a[c[l]]=a[o];return a},US=function(e,i,s,n){var a=i.ease||n||"power1.inOut",o,l;if(Yi(i))l=s[e]||(s[e]=[]),i.forEach(function(c,u){return l.push({t:u/(i.length-1)*100,v:c,e:a})});else for(o in i)l=s[o]||(s[o]=[]),o==="ease"||l.push({t:parseFloat(e),v:i[o],e:a})},Io=function(e,i,s,n,a){return ui(e)?e.call(i,s,n,a):Fi(e)&&~e.indexOf("random(")?Vo(e):e},K_=_f+"repeat,repeatDelay,yoyo,repeatRefresh,yoyoEase,easeReverse,autoRevert",X_={};gs(K_+",id,stagger,delay,duration,paused,scrollTrigger",function(t){return X_[t]=1});var Si=(function(t){__(e,t);function e(s,n,a,o){var l;typeof n=="number"&&(a.duration=n,n=a,a=null),l=t.call(this,o?n:zo(n))||this;var c=l.vars,u=c.duration,d=c.delay,h=c.immediateRender,v=c.stagger,m=c.overwrite,y=c.keyframes,_=c.defaults,S=c.scrollTrigger,T=n.parent||ii,I=(Yi(s)||y_(s)?Jn(s[0]):"length"in n)?[s]:Zs(s),C,$,M,D,F,L,P,j;if(l._targets=I.length?gf(I):Lo("GSAP target "+s+" not found. https://gsap.com",!Rs.nullTargetWarn)||[],l._ptLookup=[],l._overwrite=m,y||v||Ll(u)||Ll(d)){n=l.vars;var _t=n.easeReverse||n.yoyoEase;if(C=l.timeline=new ps({data:"nested",defaults:_||{},targets:T&&T.data==="nested"?T.vars.targets:I}),C.kill(),C.parent=C._dp=Hn(l),C._start=0,v||Ll(u)||Ll(d)){if(D=I.length,P=v&&O_(v),Pn(v))for(F in v)~K_.indexOf(F)&&(j||(j={}),j[F]=v[F]);for($=0;$<D;$++)M=Sc(n,X_),M.stagger=0,_t&&(M.easeReverse=_t),j&&Pa(M,j),L=I[$],M.duration=+Io(u,Hn(l),$,L,I),M.delay=(+Io(d,Hn(l),$,L,I)||0)-l._delay,!v&&D===1&&M.delay&&(l._delay=d=M.delay,l._start+=d,M.delay=0),C.to(L,M,P?P($,L,I):0),C._ease=ye.none;C.duration()?u=d=0:l.timeline=0}else if(y){zo(Hs(C.vars.defaults,{ease:"none"})),C._ease=qr(y.ease||n.ease||"none");var ft=0,ct,X,O;if(Yi(y))y.forEach(function(z){return C.to(I,z,">")}),C.duration();else{M={};for(F in y)F==="ease"||F==="easeEach"||US(F,y[F],M,y.easeEach);for(F in M)for(ct=M[F].sort(function(z,Et){return z.t-Et.t}),ft=0,$=0;$<ct.length;$++)X=ct[$],O={ease:X.e,duration:(X.t-($?ct[$-1].t:0))/100*u},O[F]=X.v,C.to(I,O,ft),ft+=O.duration;C.duration()<u&&C.to({},{duration:u-C.duration()})}}u||l.duration(u=C.duration())}else l.timeline=0;return m===!0&&!df&&(ur=Hn(l),ii.killTweensOf(I),ur=0),kn(T,Hn(l),a),n.reversed&&l.reverse(),n.paused&&l.paused(!0),(h||!u&&!y&&l._start===ei(T._time)&&_s(h)&&sS(Hn(l))&&T.data!=="nested")&&(l._tTime=-Re,l.render(Math.max(0,-d)||0)),S&&M_(Hn(l),S),l}var i=e.prototype;return i.render=function(n,a,o){var l=this._time,c=this._tDur,u=this._dur,d=n<0,h=n>c-Re&&!d?c:n<Re?0:n,v,m,y,_,S,T,I,C;if(!u)rS(this,n,a,o);else if(h!==this._tTime||!n||o||!this._initted&&this._tTime||this._startAt&&this._zTime<0!==d||this._lazy){if(v=h,C=this.timeline,this._repeat){if(_=u+this._rDelay,this._repeat<-1&&d)return this.totalTime(_*100+n,a,o);if(v=ei(h%_),h===c?(y=this._repeat,v=u):(S=ei(h/_),y=~~S,y&&y===S?(v=u,y--):v>u&&(v=u)),T=this._yoyo&&y&1,T&&(v=u-v),S=Aa(this._tTime,_),v===l&&!o&&this._initted&&y===S)return this._tTime=h,this;y!==S&&this.vars.repeatRefresh&&!T&&!this._lock&&v!==_&&this._initted&&(this._lock=o=1,this.render(ei(_*y),!0).invalidate()._lock=0)}if(!this._initted){if(I_(this,d?n:v,o,a,h))return this._tTime=0,this;if(l!==this._time&&!(o&&this.vars.repeatRefresh&&y!==S))return this;if(u!==this._dur)return this.render(n,a,o)}if(this._rEase){var $=v<l;if($!==this._inv){var M=$?l:u-l;this._inv=$,this._from&&(this.ratio=1-this.ratio),this._invRatio=this.ratio,this._invTime=l,this._invRecip=M?($?-1:1)/M:0,this._invScale=$?-this.ratio:1-this.ratio,this._invEase=$?this._rEase:this._ease}this.ratio=I=this._invRatio+this._invScale*this._invEase((v-this._invTime)*this._invRecip)}else this.ratio=I=this._ease(v/u);if(this._from&&(this.ratio=I=1-I),this._tTime=h,this._time=v,!this._act&&this._ts&&(this._act=1,this._lazy=0),!l&&h&&!a&&!S&&(Fs(this,"onStart"),this._tTime!==h))return this;for(m=this._pt;m;)m.r(I,m.d),m=m._next;C&&C.render(n<0?n:C._dur*C._ease(v/this._dur),a,o)||this._startAt&&(this._zTime=n),this._onUpdate&&!a&&(d&&Ad(this,n,a,o),Fs(this,"onUpdate")),this._repeat&&y!==S&&this.vars.onRepeat&&!a&&this.parent&&Fs(this,"onRepeat"),(h===this._tDur||!h)&&this._tTime===h&&(d&&!this._onUpdate&&Ad(this,n,!0,!0),(n||!u)&&(h===this._tDur&&this._ts>0||!h&&this._ts<0)&&br(this,1),!a&&!(d&&!l)&&(h||l||T)&&(Fs(this,h===c?"onComplete":"onReverseComplete",!0),this._prom&&!(h<c&&this.timeScale()>0)&&this._prom()))}return this},i.targets=function(){return this._targets},i.invalidate=function(n){return(!n||!this.vars.runBackwards)&&(this._startAt=0),this._pt=this._op=this._onUpdate=this._lazy=this.ratio=0,this._ptLookup=[],this.timeline&&this.timeline.invalidate(n),t.prototype.invalidate.call(this,n)},i.resetTo=function(n,a,o,l,c){Ho||Ns.wake(),this._ts||this.play();var u=Math.min(this._dur,(this._dp._time-this._start)*this._ts),d;return this._initted||xf(this,u),d=this._ease(u/this._dur),ES(this,n,a,o,l,d,u,c)?this.resetTo(n,a,o,l,1):(qc(this,0),this.parent||A_(this._dp,this,"_first","_last",this._dp._sort?"_start":0),this.render(0))},i.kill=function(n,a){if(a===void 0&&(a="all"),!n&&(!a||a==="all"))return this._lazy=this._pt=0,this.parent?So(this):this.scrollTrigger&&this.scrollTrigger.kill(!!Li),this;if(this.timeline){var o=this.timeline.totalDuration();return this.timeline.killTweensOf(n,a,ur&&ur.vars.overwrite!==!0)._first||So(this),this.parent&&o!==this.timeline.totalDuration()&&za(this,this._dur*this.timeline._tDur/o,0,1),this}var l=this._targets,c=n?Zs(n):l,u=this._ptLookup,d=this._pt,h,v,m,y,_,S,T;if((!a||a==="all")&&eS(l,c))return a==="all"&&(this._pt=0),So(this);for(h=this._op=this._op||[],a!=="all"&&(Fi(a)&&(_={},gs(a,function(I){return _[I]=1}),a=_),a=BS(l,a)),T=l.length;T--;)if(~c.indexOf(l[T])){v=u[T],a==="all"?(h[T]=a,y=v,m={}):(m=h[T]=h[T]||{},y=a);for(_ in y)S=v&&v[_],S&&((!("kill"in S.d)||S.d.kill(_)===!0)&&jc(this,S,"_pt"),delete v[_]),m!=="all"&&(m[_]=1)}return this._initted&&!this._pt&&d&&So(this),this},e.to=function(n,a){return new e(n,a,arguments[2])},e.from=function(n,a){return Mo(1,arguments)},e.delayedCall=function(n,a,o,l){return new e(a,0,{immediateRender:!1,lazy:!1,overwrite:!1,delay:n,onComplete:a,onReverseComplete:a,onCompleteParams:o,onReverseCompleteParams:o,callbackScope:l})},e.fromTo=function(n,a,o){return Mo(2,arguments)},e.set=function(n,a){return a.duration=0,a.repeatDelay||(a.repeat=0),new e(n,a)},e.killTweensOf=function(n,a,o){return ii.killTweensOf(n,a,o)},e})(jo);Hs(Si.prototype,{_targets:[],_lazy:0,_startAt:0,_op:0,_onInit:0});gs("staggerTo,staggerFrom,staggerFromTo",function(t){Si[t]=function(){var e=new ps,i=Md.call(arguments,0);return i.splice(t==="staggerFromTo"?5:4,0,0),e[t].apply(e,i)}});var wf=function(e,i,s){return e[i]=s},J_=function(e,i,s){return e[i](s)},TS=function(e,i,s,n){return e[i](n.fp,s)},PS=function(e,i,s){return e.setAttribute(i,s)},Sf=function(e,i){return ui(e[i])?J_:ff(e[i])&&e.setAttribute?PS:wf},Z_=function(e,i){return i.set(i.t,i.p,Math.round((i.s+i.c*e)*1e6)/1e6,i)},AS=function(e,i){return i.set(i.t,i.p,!!(i.s+i.c*e),i)},Q_=function(e,i){var s=i._pt,n="";if(!e&&i.b)n=i.b;else if(e===1&&i.e)n=i.e;else{for(;s;)n=s.p+(s.m?s.m(s.s+s.c*e):Math.round((s.s+s.c*e)*1e4)/1e4)+n,s=s._next;n+=i.c}i.set(i.t,i.p,n,i)},kf=function(e,i){for(var s=i._pt;s;)s.r(e,s.d),s=s._next},zS=function(e,i,s,n){for(var a=this._pt,o;a;)o=a._next,a.p===n&&a.modifier(e,i,s),a=o},MS=function(e){for(var i=this._pt,s,n;i;)n=i._next,i.p===e&&!i.op||i.op===e?jc(this,i,"_pt"):i.dep||(s=1),i=n;return!s},IS=function(e,i,s,n){n.mSet(e,i,n.m.call(n.tween,s,n.mt),n)},tg=function(e){for(var i=e._pt,s,n,a,o;i;){for(s=i._next,n=a;n&&n.pr>i.pr;)n=n._next;(i._prev=n?n._prev:o)?i._prev._next=i:a=i,(i._next=n)?n._prev=i:o=i,i=s}e._pt=a},ys=(function(){function t(i,s,n,a,o,l,c,u,d){this.t=s,this.s=a,this.c=o,this.p=n,this.r=l||Z_,this.d=c||this,this.set=u||wf,this.pr=d||0,this._next=i,i&&(i._prev=this)}var e=t.prototype;return e.modifier=function(s,n,a){this.mSet=this.mSet||this.set,this.set=IS,this.m=s,this.mt=a,this.tween=n},t})();gs(_f+"parent,duration,ease,delay,overwrite,runBackwards,startAt,yoyo,immediateRender,repeat,repeatDelay,data,paused,reversed,lazy,callbackScope,stringFilter,id,yoyoEase,stagger,inherit,repeatRefresh,keyframes,autoRevert,scrollTrigger,easeReverse",function(t){return mf[t]=1});Vs.TweenMax=Vs.TweenLite=Si;Vs.TimelineLite=Vs.TimelineMax=ps;ii=new ps({sortChildren:!1,defaults:Do,autoRemoveChildren:!0,id:"root",smoothChildTiming:!0});Rs.stringFilter=G_;var Wr=[],sc={},CS=[],sv=0,$S=0,td=function(e){return(sc[e]||CS).map(function(i){return i()})},Od=function(){var e=Date.now(),i=[];e-sv>2&&(td("matchMediaInit"),Wr.forEach(function(s){var n=s.queries,a=s.conditions,o,l,c,u;for(l in n)o=wn.matchMedia(n[l]).matches,o&&(c=1),o!==a[l]&&(a[l]=o,u=1);u&&(s.revert(),c&&i.push(s))}),td("matchMediaRevert"),i.forEach(function(s){return s.onMatch(s,function(n){return s.add(null,n)})}),sv=e,td("matchMedia"))},eg=(function(){function t(i,s){this.selector=s&&Id(s),this.data=[],this._r=[],this.isReverted=!1,this.id=$S++,i&&this.add(i)}var e=t.prototype;return e.add=function(s,n,a){ui(s)&&(a=n,n=s,s=ui);var o=this,l=function(){var u=Je,d=o.selector,h;return u&&u!==o&&u.data.push(o),a&&(o.selector=Id(a)),Je=o,h=n.apply(o,arguments),ui(h)&&o._r.push(h),Je=u,o.selector=d,o.isReverted=!1,h};return o.last=l,s===ui?l(o,function(c){return o.add(null,c)}):s?o[s]=l:l},e.ignore=function(s){var n=Je;Je=null,s(this),Je=n},e.getTweens=function(){var s=[];return this.data.forEach(function(n){return n instanceof t?s.push.apply(s,n.getTweens()):n instanceof Si&&!(n.parent&&n.parent.data==="nested")&&s.push(n)}),s},e.clear=function(){this._r.length=this.data.length=0},e.kill=function(s,n){var a=this;if(s?(function(){for(var l=a.getTweens(),c=a.data.length,u;c--;)u=a.data[c],u.data==="isFlip"&&(u.revert(),u.getChildren(!0,!0,!1).forEach(function(d){return l.splice(l.indexOf(d),1)}));for(l.map(function(d){return{g:d._dur||d._delay||d._sat&&!d._sat.vars.immediateRender?d.globalTime(0):-1/0,t:d}}).sort(function(d,h){return h.g-d.g||-1/0}).forEach(function(d){return d.t.revert(s)}),c=a.data.length;c--;)u=a.data[c],u instanceof ps?u.data!=="nested"&&(u.scrollTrigger&&u.scrollTrigger.revert(),u.kill()):!(u instanceof Si)&&u.revert&&u.revert(s);a._r.forEach(function(d){return d(s,a)}),a.isReverted=!0})():this.data.forEach(function(l){return l.kill&&l.kill()}),this.clear(),n)for(var o=Wr.length;o--;)Wr[o].id===this.id&&Wr.splice(o,1)},e.revert=function(s){this.kill(s||{})},t})(),OS=(function(){function t(i){this.contexts=[],this.scope=i,Je&&Je.data.push(this)}var e=t.prototype;return e.add=function(s,n,a){Pn(s)||(s={matches:s});var o=new eg(0,a||this.scope),l=o.conditions={},c,u,d;Je&&!o.selector&&(o.selector=Je.selector),this.contexts.push(o),n=o.add("onMatch",n),o.queries=s;for(u in s)u==="all"?d=1:(c=wn.matchMedia(s[u]),c&&(Wr.indexOf(o)<0&&Wr.push(o),(l[u]=c.matches)&&(d=1),c.addListener?c.addListener(Od):c.addEventListener("change",Od)));return d&&n(o,function(h){return o.add(null,h)}),this},e.revert=function(s){this.kill(s||{})},e.kill=function(s){this.contexts.forEach(function(n){return n.kill(s,!0)})},t})(),Ec={registerPlugin:function(){for(var e=arguments.length,i=new Array(e),s=0;s<e;s++)i[s]=arguments[s];i.forEach(function(n){return V_(n)})},timeline:function(e){return new ps(e)},getTweensOf:function(e,i){return ii.getTweensOf(e,i)},getProperty:function(e,i,s,n){Fi(e)&&(e=Zs(e)[0]);var a=jr(e||{}).get,o=s?P_:T_;return s==="native"&&(s=""),e&&(i?o((Os[i]&&Os[i].get||a)(e,i,s,n)):function(l,c,u){return o((Os[l]&&Os[l].get||a)(e,l,c,u))})},quickSetter:function(e,i,s){if(e=Zs(e),e.length>1){var n=e.map(function(d){return ws.quickSetter(d,i,s)}),a=n.length;return function(d){for(var h=a;h--;)n[h](d)}}e=e[0]||{};var o=Os[i],l=jr(e),c=l.harness&&(l.harness.aliases||{})[i]||i,u=o?function(d){var h=new o;ga._pt=0,h.init(e,s?d+s:d,ga,0,[e]),h.render(1,h),ga._pt&&kf(1,ga)}:l.set(e,c);return o?u:function(d){return u(e,c,s?d+s:d,l,1)}},quickTo:function(e,i,s){var n,a=ws.to(e,Hs((n={},n[i]="+=0.1",n.paused=!0,n.stagger=0,n),s||{})),o=function(c,u,d){return a.resetTo(i,c,u,d)};return o.tween=a,o},isTweening:function(e){return ii.getTweensOf(e,!0).length>0},defaults:function(e){return e&&e.ease&&(e.ease=qr(e.ease,Do.ease)),Zp(Do,e||{})},config:function(e){return Zp(Rs,e||{})},registerEffect:function(e){var i=e.name,s=e.effect,n=e.plugins,a=e.defaults,o=e.extendTimeline;(n||"").split(",").forEach(function(l){return l&&!Os[l]&&!Vs[l]&&Lo(i+" effect requires "+l+" plugin.")}),Xu[i]=function(l,c,u){return s(Zs(l),Hs(c||{},a),u)},o&&(ps.prototype[i]=function(l,c,u){return this.add(Xu[i](l,Pn(c)?c:(u=c)&&{},this),u)})},registerEase:function(e,i){ye[e]=qr(i)},parseEase:function(e,i){return arguments.length?qr(e,i):ye},getById:function(e){return ii.getById(e)},exportRoot:function(e,i){e===void 0&&(e={});var s=new ps(e),n,a;for(s.smoothChildTiming=_s(e.smoothChildTiming),ii.remove(s),s._dp=0,s._time=s._tTime=ii._time,n=ii._first;n;)a=n._next,(i||!(!n._dur&&n instanceof Si&&n.vars.onComplete===n._targets[0]))&&kn(s,n,n._start-n._delay),n=a;return kn(ii,s,0),s},context:function(e,i){return e?new eg(e,i):Je},matchMedia:function(e){return new OS(e)},matchMediaRefresh:function(){return Wr.forEach(function(e){var i=e.conditions,s,n;for(n in i)i[n]&&(i[n]=!1,s=1);s&&e.revert()})||Od()},addEventListener:function(e,i){var s=sc[e]||(sc[e]=[]);~s.indexOf(i)||s.push(i)},removeEventListener:function(e,i){var s=sc[e],n=s&&s.indexOf(i);n>=0&&s.splice(n,1)},utils:{wrap:hS,wrapYoyo:pS,distribute:O_,random:F_,snap:N_,normalize:fS,getUnit:Wi,clamp:lS,splitColor:H_,toArray:Zs,selector:Id,mapRange:L_,pipe:uS,unitize:dS,interpolate:vS,shuffle:$_},install:S_,effects:Xu,ticker:Ns,updateRoot:ps.updateRoot,plugins:Os,globalTimeline:ii,core:{PropTween:ys,globals:k_,Tween:Si,Timeline:ps,Animation:jo,getCache:jr,_removeLinkedListItem:jc,reverting:function(){return Li},context:function(e){return e&&Je&&(Je.data.push(e),e._ctx=Je),Je},suppressOverwrites:function(e){return df=e}}};gs("to,from,fromTo,delayedCall,set,killTweensOf",function(t){return Ec[t]=Si[t]});Ns.add(ps.updateRoot);ga=Ec.to({},{duration:0});var NS=function(e,i){for(var s=e._pt;s&&s.p!==i&&s.op!==i&&s.fp!==i;)s=s._next;return s},FS=function(e,i){var s=e._targets,n,a,o;for(n in i)for(a=s.length;a--;)o=e._ptLookup[a][n],o&&(o=o.d)&&(o._pt&&(o=NS(o,n)),o&&o.modifier&&o.modifier(i[n],e,s[a],n))},ed=function(e,i){return{name:e,headless:1,rawVars:1,init:function(n,a,o){o._onInit=function(l){var c,u;if(Fi(a)&&(c={},gs(a,function(d){return c[d]=1}),a=c),i){c={};for(u in a)c[u]=i(a[u]);a=c}FS(l,a)}}}},ws=Ec.registerPlugin({name:"attr",init:function(e,i,s,n,a){var o,l,c;this.tween=s;for(o in i)c=e.getAttribute(o)||"",l=this.add(e,"setAttribute",(c||0)+"",i[o],n,a,0,0,o),l.op=o,l.b=c,this._props.push(o)},render:function(e,i){for(var s=i._pt;s;)Li?s.set(s.t,s.p,s.b,s):s.r(e,s.d),s=s._next}},{name:"endArray",headless:1,init:function(e,i){for(var s=i.length;s--;)this.add(e,s,e[s]||0,i[s],0,0,0,0,0,1)}},ed("roundProps",Cd),ed("modifiers"),ed("snap",N_))||Ec;Si.version=ps.version=ws.version="3.15.0";w_=1;hf()&&Ma();ye.Power0;ye.Power1;ye.Power2;ye.Power3;ye.Power4;ye.Linear;ye.Quad;ye.Cubic;ye.Quart;ye.Quint;ye.Strong;ye.Elastic;ye.Back;ye.SteppedEase;ye.Bounce;ye.Sine;ye.Expo;ye.Circ;/*!
2646
+ * CSSPlugin 3.15.0
2647
+ * https://gsap.com
2648
+ *
2649
+ * Copyright 2008-2026, GreenSock. All rights reserved.
2650
+ * Subject to the terms at https://gsap.com/standard-license
2651
+ * @author: Jack Doyle, jack@greensock.com
2652
+ */var nv,dr,xa,Ef,Dr,rv,Bf,DS=function(){return typeof window<"u"},Zn={},Or=180/Math.PI,wa=Math.PI/180,fa=Math.atan2,av=1e8,Uf=/([A-Z])/g,LS=/(left|right|width|margin|padding|x)/i,RS=/[\s,\(]\S/,Bn={autoAlpha:"opacity,visibility",scale:"scaleX,scaleY",alpha:"opacity"},Nd=function(e,i){return i.set(i.t,i.p,Math.round((i.s+i.c*e)*1e4)/1e4+i.u,i)},VS=function(e,i){return i.set(i.t,i.p,e===1?i.e:Math.round((i.s+i.c*e)*1e4)/1e4+i.u,i)},HS=function(e,i){return i.set(i.t,i.p,e?Math.round((i.s+i.c*e)*1e4)/1e4+i.u:i.b,i)},jS=function(e,i){return i.set(i.t,i.p,e===1?i.e:e?Math.round((i.s+i.c*e)*1e4)/1e4+i.u:i.b,i)},GS=function(e,i){var s=i.s+i.c*e;i.set(i.t,i.p,~~(s+(s<0?-.5:.5))+i.u,i)},ig=function(e,i){return i.set(i.t,i.p,e?i.e:i.b,i)},sg=function(e,i){return i.set(i.t,i.p,e!==1?i.b:i.e,i)},qS=function(e,i,s){return e.style[i]=s},WS=function(e,i,s){return e.style.setProperty(i,s)},YS=function(e,i,s){return e._gsap[i]=s},KS=function(e,i,s){return e._gsap.scaleX=e._gsap.scaleY=s},XS=function(e,i,s,n,a){var o=e._gsap;o.scaleX=o.scaleY=s,o.renderTransform(a,o)},JS=function(e,i,s,n,a){var o=e._gsap;o[i]=s,o.renderTransform(a,o)},si="transform",bs=si+"Origin",ZS=function t(e,i){var s=this,n=this.target,a=n.style,o=n._gsap;if(e in Zn&&a){if(this.tfm=this.tfm||{},e!=="transform")e=Bn[e]||e,~e.indexOf(",")?e.split(",").forEach(function(l){return s.tfm[l]=Gn(n,l)}):this.tfm[e]=o.x?o[e]:Gn(n,e),e===bs&&(this.tfm.zOrigin=o.zOrigin);else return Bn.transform.split(",").forEach(function(l){return t.call(s,l,i)});if(this.props.indexOf(si)>=0)return;o.svg&&(this.svgo=n.getAttribute("data-svg-origin"),this.props.push(bs,i,"")),e=si}(a||i)&&this.props.push(e,i,a[e])},ng=function(e){e.translate&&(e.removeProperty("translate"),e.removeProperty("scale"),e.removeProperty("rotate"))},QS=function(){var e=this.props,i=this.target,s=i.style,n=i._gsap,a,o;for(a=0;a<e.length;a+=3)e[a+1]?e[a+1]===2?i[e[a]](e[a+2]):i[e[a]]=e[a+2]:e[a+2]?s[e[a]]=e[a+2]:s.removeProperty(e[a].substr(0,2)==="--"?e[a]:e[a].replace(Uf,"-$1").toLowerCase());if(this.tfm){for(o in this.tfm)n[o]=this.tfm[o];n.svg&&(n.renderTransform(),i.setAttribute("data-svg-origin",this.svgo||"")),a=Bf(),(!a||!a.isStart)&&!s[si]&&(ng(s),n.zOrigin&&s[bs]&&(s[bs]+=" "+n.zOrigin+"px",n.zOrigin=0,n.renderTransform()),n.uncache=1)}},rg=function(e,i){var s={target:e,props:[],revert:QS,save:ZS};return e._gsap||ws.core.getCache(e),i&&e.style&&e.nodeType&&i.split(",").forEach(function(n){return s.save(n)}),s},ag,Fd=function(e,i){var s=dr.createElementNS?dr.createElementNS((i||"http://www.w3.org/1999/xhtml").replace(/^https/,"http"),e):dr.createElement(e);return s&&s.style?s:dr.createElement(e)},Ds=function t(e,i,s){var n=getComputedStyle(e);return n[i]||n.getPropertyValue(i.replace(Uf,"-$1").toLowerCase())||n.getPropertyValue(i)||!s&&t(e,Ia(i)||i,1)||""},ov="O,Moz,ms,Ms,Webkit".split(","),Ia=function(e,i,s){var n=i||Dr,a=n.style,o=5;if(e in a&&!s)return e;for(e=e.charAt(0).toUpperCase()+e.substr(1);o--&&!(ov[o]+e in a););return o<0?null:(o===3?"ms":o>=0?ov[o]:"")+e},Dd=function(){DS()&&window.document&&(nv=window,dr=nv.document,xa=dr.documentElement,Dr=Fd("div")||{style:{}},Fd("div"),si=Ia(si),bs=si+"Origin",Dr.style.cssText="border-width:0;line-height:0;position:absolute;padding:0",ag=!!Ia("perspective"),Bf=ws.core.reverting,Ef=1)},lv=function(e){var i=e.ownerSVGElement,s=Fd("svg",i&&i.getAttribute("xmlns")||"http://www.w3.org/2000/svg"),n=e.cloneNode(!0),a;n.style.display="block",s.appendChild(n),xa.appendChild(s);try{a=n.getBBox()}catch{}return s.removeChild(n),xa.removeChild(s),a},cv=function(e,i){for(var s=i.length;s--;)if(e.hasAttribute(i[s]))return e.getAttribute(i[s])},og=function(e){var i,s;try{i=e.getBBox()}catch{i=lv(e),s=1}return i&&(i.width||i.height)||s||(i=lv(e)),i&&!i.width&&!i.x&&!i.y?{x:+cv(e,["x","cx","x1"])||0,y:+cv(e,["y","cy","y1"])||0,width:0,height:0}:i},lg=function(e){return!!(e.getCTM&&(!e.parentNode||e.ownerSVGElement)&&og(e))},xr=function(e,i){if(i){var s=e.style,n;i in Zn&&i!==bs&&(i=si),s.removeProperty?(n=i.substr(0,2),(n==="ms"||i.substr(0,6)==="webkit")&&(i="-"+i),s.removeProperty(n==="--"?i:i.replace(Uf,"-$1").toLowerCase())):s.removeAttribute(i)}},fr=function(e,i,s,n,a,o){var l=new ys(e._pt,i,s,0,1,o?sg:ig);return e._pt=l,l.b=n,l.e=a,e._props.push(s),l},uv={deg:1,rad:1,turn:1},tk={grid:1,flex:1},wr=function t(e,i,s,n){var a=parseFloat(s)||0,o=(s+"").trim().substr((a+"").length)||"px",l=Dr.style,c=LS.test(i),u=e.tagName.toLowerCase()==="svg",d=(u?"client":"offset")+(c?"Width":"Height"),h=100,v=n==="px",m=n==="%",y,_,S,T;if(n===o||!a||uv[n]||uv[o])return a;if(o!=="px"&&!v&&(a=t(e,i,s,"px")),T=e.getCTM&&lg(e),(m||o==="%")&&(Zn[i]||~i.indexOf("adius")))return y=T?e.getBBox()[c?"width":"height"]:e[d],vi(m?a/y*h:a/100*y);if(l[c?"width":"height"]=h+(v?o:n),_=n!=="rem"&&~i.indexOf("adius")||n==="em"&&e.appendChild&&!u?e:e.parentNode,T&&(_=(e.ownerSVGElement||{}).parentNode),(!_||_===dr||!_.appendChild)&&(_=dr.body),S=_._gsap,S&&m&&S.width&&c&&S.time===Ns.time&&!S.uncache)return vi(a/S.width*h);if(m&&(i==="height"||i==="width")){var I=e.style[i];e.style[i]=h+n,y=e[d],I?e.style[i]=I:xr(e,i)}else(m||o==="%")&&!tk[Ds(_,"display")]&&(l.position=Ds(e,"position")),_===e&&(l.position="static"),_.appendChild(Dr),y=Dr[d],_.removeChild(Dr),l.position="absolute";return c&&m&&(S=jr(_),S.time=Ns.time,S.width=_[d]),vi(v?y*a/h:y&&a?h/y*a:0)},Gn=function(e,i,s,n){var a;return Ef||Dd(),i in Bn&&i!=="transform"&&(i=Bn[i],~i.indexOf(",")&&(i=i.split(",")[0])),Zn[i]&&i!=="transform"?(a=qo(e,n),a=i!=="transformOrigin"?a[i]:a.svg?a.origin:Uc(Ds(e,bs))+" "+a.zOrigin+"px"):(a=e.style[i],(!a||a==="auto"||n||~(a+"").indexOf("calc("))&&(a=Bc[i]&&Bc[i](e,i,s)||Ds(e,i)||B_(e,i)||(i==="opacity"?1:0))),s&&!~(a+"").trim().indexOf(" ")?wr(e,i,a,s)+s:a},ek=function(e,i,s,n){if(!s||s==="none"){var a=Ia(i,e,1),o=a&&Ds(e,a,1);o&&o!==s?(i=a,s=o):i==="borderColor"&&(s=Ds(e,"borderTopColor"))}var l=new ys(this._pt,e.style,i,0,1,Q_),c=0,u=0,d,h,v,m,y,_,S,T,I,C,$,M;if(l.b=s,l.e=n,s+="",n+="",n.substring(0,6)==="var(--"&&(n=Ds(e,n.substring(4,n.indexOf(")")))),n==="auto"&&(_=e.style[i],e.style[i]=n,n=Ds(e,i)||n,_?e.style[i]=_:xr(e,i)),d=[s,n],G_(d),s=d[0],n=d[1],v=s.match(_a)||[],M=n.match(_a)||[],M.length){for(;h=_a.exec(n);)S=h[0],I=n.substring(c,h.index),y?y=(y+1)%5:(I.substr(-5)==="rgba("||I.substr(-5)==="hsla(")&&(y=1),S!==(_=v[u++]||"")&&(m=parseFloat(_)||0,$=_.substr((m+"").length),S.charAt(1)==="="&&(S=ba(m,S)+$),T=parseFloat(S),C=S.substr((T+"").length),c=_a.lastIndex-C.length,C||(C=C||Rs.units[i]||$,c===n.length&&(n+=C,l.e+=C)),$!==C&&(m=wr(e,i,_,C)||0),l._pt={_next:l._pt,p:I||u===1?I:",",s:m,c:T-m,m:y&&y<4||i==="zIndex"?Math.round:0});l.c=c<n.length?n.substring(c,n.length):""}else l.r=i==="display"&&n==="none"?sg:ig;return x_.test(n)&&(l.e=0),this._pt=l,l},dv={top:"0%",bottom:"100%",left:"0%",right:"100%",center:"50%"},ik=function(e){var i=e.split(" "),s=i[0],n=i[1]||"50%";return(s==="top"||s==="bottom"||n==="left"||n==="right")&&(e=s,s=n,n=e),i[0]=dv[s]||s,i[1]=dv[n]||n,i.join(" ")},sk=function(e,i){if(i.tween&&i.tween._time===i.tween._dur){var s=i.t,n=s.style,a=i.u,o=s._gsap,l,c,u;if(a==="all"||a===!0)n.cssText="",c=1;else for(a=a.split(","),u=a.length;--u>-1;)l=a[u],Zn[l]&&(c=1,l=l==="transformOrigin"?bs:si),xr(s,l);c&&(xr(s,si),o&&(o.svg&&s.removeAttribute("transform"),n.scale=n.rotate=n.translate="none",qo(s,1),o.uncache=1,ng(n)))}},Bc={clearProps:function(e,i,s,n,a){if(a.data!=="isFromStart"){var o=e._pt=new ys(e._pt,i,s,0,0,sk);return o.u=n,o.pr=-10,o.tween=a,e._props.push(s),1}}},Go=[1,0,0,1,0,0],cg={},ug=function(e){return e==="matrix(1, 0, 0, 1, 0, 0)"||e==="none"||!e},fv=function(e){var i=Ds(e,si);return ug(i)?Go:i.substr(7).match(b_).map(vi)},Tf=function(e,i){var s=e._gsap||jr(e),n=e.style,a=fv(e),o,l,c,u;return s.svg&&e.getAttribute("transform")?(c=e.transform.baseVal.consolidate().matrix,a=[c.a,c.b,c.c,c.d,c.e,c.f],a.join(",")==="1,0,0,1,0,0"?Go:a):(a===Go&&!e.offsetParent&&e!==xa&&!s.svg&&(c=n.display,n.display="block",o=e.parentNode,(!o||!e.offsetParent&&!e.getBoundingClientRect().width)&&(u=1,l=e.nextElementSibling,xa.appendChild(e)),a=fv(e),c?n.display=c:xr(e,"display"),u&&(l?o.insertBefore(e,l):o?o.appendChild(e):xa.removeChild(e))),i&&a.length>6?[a[0],a[1],a[4],a[5],a[12],a[13]]:a)},Ld=function(e,i,s,n,a,o){var l=e._gsap,c=a||Tf(e,!0),u=l.xOrigin||0,d=l.yOrigin||0,h=l.xOffset||0,v=l.yOffset||0,m=c[0],y=c[1],_=c[2],S=c[3],T=c[4],I=c[5],C=i.split(" "),$=parseFloat(C[0])||0,M=parseFloat(C[1])||0,D,F,L,P;s?c!==Go&&(F=m*S-y*_)&&(L=$*(S/F)+M*(-_/F)+(_*I-S*T)/F,P=$*(-y/F)+M*(m/F)-(m*I-y*T)/F,$=L,M=P):(D=og(e),$=D.x+(~C[0].indexOf("%")?$/100*D.width:$),M=D.y+(~(C[1]||C[0]).indexOf("%")?M/100*D.height:M)),n||n!==!1&&l.smooth?(T=$-u,I=M-d,l.xOffset=h+(T*m+I*_)-T,l.yOffset=v+(T*y+I*S)-I):l.xOffset=l.yOffset=0,l.xOrigin=$,l.yOrigin=M,l.smooth=!!n,l.origin=i,l.originIsAbsolute=!!s,e.style[bs]="0px 0px",o&&(fr(o,l,"xOrigin",u,$),fr(o,l,"yOrigin",d,M),fr(o,l,"xOffset",h,l.xOffset),fr(o,l,"yOffset",v,l.yOffset)),e.setAttribute("data-svg-origin",$+" "+M)},qo=function(e,i){var s=e._gsap||new W_(e);if("x"in s&&!i&&!s.uncache)return s;var n=e.style,a=s.scaleX<0,o="px",l="deg",c=getComputedStyle(e),u=Ds(e,bs)||"0",d,h,v,m,y,_,S,T,I,C,$,M,D,F,L,P,j,_t,ft,ct,X,O,z,Et,gt,$e,Ge,te,re,ke,Vt,ot;return d=h=v=_=S=T=I=C=$=0,m=y=1,s.svg=!!(e.getCTM&&lg(e)),c.translate&&((c.translate!=="none"||c.scale!=="none"||c.rotate!=="none")&&(n[si]=(c.translate!=="none"?"translate3d("+(c.translate+" 0 0").split(" ").slice(0,3).join(", ")+") ":"")+(c.rotate!=="none"?"rotate("+c.rotate+") ":"")+(c.scale!=="none"?"scale("+c.scale.split(" ").join(",")+") ":"")+(c[si]!=="none"?c[si]:"")),n.scale=n.rotate=n.translate="none"),F=Tf(e,s.svg),s.svg&&(s.uncache?(gt=e.getBBox(),u=s.xOrigin-gt.x+"px "+(s.yOrigin-gt.y)+"px",Et=""):Et=!i&&e.getAttribute("data-svg-origin"),Ld(e,Et||u,!!Et||s.originIsAbsolute,s.smooth!==!1,F)),M=s.xOrigin||0,D=s.yOrigin||0,F!==Go&&(_t=F[0],ft=F[1],ct=F[2],X=F[3],d=O=F[4],h=z=F[5],F.length===6?(m=Math.sqrt(_t*_t+ft*ft),y=Math.sqrt(X*X+ct*ct),_=_t||ft?fa(ft,_t)*Or:0,I=ct||X?fa(ct,X)*Or+_:0,I&&(y*=Math.abs(Math.cos(I*wa))),s.svg&&(d-=M-(M*_t+D*ct),h-=D-(M*ft+D*X))):(ot=F[6],ke=F[7],Ge=F[8],te=F[9],re=F[10],Vt=F[11],d=F[12],h=F[13],v=F[14],L=fa(ot,re),S=L*Or,L&&(P=Math.cos(-L),j=Math.sin(-L),Et=O*P+Ge*j,gt=z*P+te*j,$e=ot*P+re*j,Ge=O*-j+Ge*P,te=z*-j+te*P,re=ot*-j+re*P,Vt=ke*-j+Vt*P,O=Et,z=gt,ot=$e),L=fa(-ct,re),T=L*Or,L&&(P=Math.cos(-L),j=Math.sin(-L),Et=_t*P-Ge*j,gt=ft*P-te*j,$e=ct*P-re*j,Vt=X*j+Vt*P,_t=Et,ft=gt,ct=$e),L=fa(ft,_t),_=L*Or,L&&(P=Math.cos(L),j=Math.sin(L),Et=_t*P+ft*j,gt=O*P+z*j,ft=ft*P-_t*j,z=z*P-O*j,_t=Et,O=gt),S&&Math.abs(S)+Math.abs(_)>359.9&&(S=_=0,T=180-T),m=vi(Math.sqrt(_t*_t+ft*ft+ct*ct)),y=vi(Math.sqrt(z*z+ot*ot)),L=fa(O,z),I=Math.abs(L)>2e-4?L*Or:0,$=Vt?1/(Vt<0?-Vt:Vt):0),s.svg&&(Et=e.getAttribute("transform"),s.forceCSS=e.setAttribute("transform","")||!ug(Ds(e,si)),Et&&e.setAttribute("transform",Et))),Math.abs(I)>90&&Math.abs(I)<270&&(a?(m*=-1,I+=_<=0?180:-180,_+=_<=0?180:-180):(y*=-1,I+=I<=0?180:-180)),i=i||s.uncache,s.x=d-((s.xPercent=d&&(!i&&s.xPercent||(Math.round(e.offsetWidth/2)===Math.round(-d)?-50:0)))?e.offsetWidth*s.xPercent/100:0)+o,s.y=h-((s.yPercent=h&&(!i&&s.yPercent||(Math.round(e.offsetHeight/2)===Math.round(-h)?-50:0)))?e.offsetHeight*s.yPercent/100:0)+o,s.z=v+o,s.scaleX=vi(m),s.scaleY=vi(y),s.rotation=vi(_)+l,s.rotationX=vi(S)+l,s.rotationY=vi(T)+l,s.skewX=I+l,s.skewY=C+l,s.transformPerspective=$+o,(s.zOrigin=parseFloat(u.split(" ")[2])||!i&&s.zOrigin||0)&&(n[bs]=Uc(u)),s.xOffset=s.yOffset=0,s.force3D=Rs.force3D,s.renderTransform=s.svg?rk:ag?dg:nk,s.uncache=0,s},Uc=function(e){return(e=e.split(" "))[0]+" "+e[1]},id=function(e,i,s){var n=Wi(i);return vi(parseFloat(i)+parseFloat(wr(e,"x",s+"px",n)))+n},nk=function(e,i){i.z="0px",i.rotationY=i.rotationX="0deg",i.force3D=0,dg(e,i)},Ir="0deg",ho="0px",Cr=") ",dg=function(e,i){var s=i||this,n=s.xPercent,a=s.yPercent,o=s.x,l=s.y,c=s.z,u=s.rotation,d=s.rotationY,h=s.rotationX,v=s.skewX,m=s.skewY,y=s.scaleX,_=s.scaleY,S=s.transformPerspective,T=s.force3D,I=s.target,C=s.zOrigin,$="",M=T==="auto"&&e&&e!==1||T===!0;if(C&&(h!==Ir||d!==Ir)){var D=parseFloat(d)*wa,F=Math.sin(D),L=Math.cos(D),P;D=parseFloat(h)*wa,P=Math.cos(D),o=id(I,o,F*P*-C),l=id(I,l,-Math.sin(D)*-C),c=id(I,c,L*P*-C+C)}S!==ho&&($+="perspective("+S+Cr),(n||a)&&($+="translate("+n+"%, "+a+"%) "),(M||o!==ho||l!==ho||c!==ho)&&($+=c!==ho||M?"translate3d("+o+", "+l+", "+c+") ":"translate("+o+", "+l+Cr),u!==Ir&&($+="rotate("+u+Cr),d!==Ir&&($+="rotateY("+d+Cr),h!==Ir&&($+="rotateX("+h+Cr),(v!==Ir||m!==Ir)&&($+="skew("+v+", "+m+Cr),(y!==1||_!==1)&&($+="scale("+y+", "+_+Cr),I.style[si]=$||"translate(0, 0)"},rk=function(e,i){var s=i||this,n=s.xPercent,a=s.yPercent,o=s.x,l=s.y,c=s.rotation,u=s.skewX,d=s.skewY,h=s.scaleX,v=s.scaleY,m=s.target,y=s.xOrigin,_=s.yOrigin,S=s.xOffset,T=s.yOffset,I=s.forceCSS,C=parseFloat(o),$=parseFloat(l),M,D,F,L,P;c=parseFloat(c),u=parseFloat(u),d=parseFloat(d),d&&(d=parseFloat(d),u+=d,c+=d),c||u?(c*=wa,u*=wa,M=Math.cos(c)*h,D=Math.sin(c)*h,F=Math.sin(c-u)*-v,L=Math.cos(c-u)*v,u&&(d*=wa,P=Math.tan(u-d),P=Math.sqrt(1+P*P),F*=P,L*=P,d&&(P=Math.tan(d),P=Math.sqrt(1+P*P),M*=P,D*=P)),M=vi(M),D=vi(D),F=vi(F),L=vi(L)):(M=h,L=v,D=F=0),(C&&!~(o+"").indexOf("px")||$&&!~(l+"").indexOf("px"))&&(C=wr(m,"x",o,"px"),$=wr(m,"y",l,"px")),(y||_||S||T)&&(C=vi(C+y-(y*M+_*F)+S),$=vi($+_-(y*D+_*L)+T)),(n||a)&&(P=m.getBBox(),C=vi(C+n/100*P.width),$=vi($+a/100*P.height)),P="matrix("+M+","+D+","+F+","+L+","+C+","+$+")",m.setAttribute("transform",P),I&&(m.style[si]=P)},ak=function(e,i,s,n,a){var o=360,l=Fi(a),c=parseFloat(a)*(l&&~a.indexOf("rad")?Or:1),u=c-n,d=n+u+"deg",h,v;return l&&(h=a.split("_")[1],h==="short"&&(u%=o,u!==u%(o/2)&&(u+=u<0?o:-o)),h==="cw"&&u<0?u=(u+o*av)%o-~~(u/o)*o:h==="ccw"&&u>0&&(u=(u-o*av)%o-~~(u/o)*o)),e._pt=v=new ys(e._pt,i,s,n,u,VS),v.e=d,v.u="deg",e._props.push(s),v},hv=function(e,i){for(var s in i)e[s]=i[s];return e},ok=function(e,i,s){var n=hv({},s._gsap),a="perspective,force3D,transformOrigin,svgOrigin",o=s.style,l,c,u,d,h,v,m,y;n.svg?(u=s.getAttribute("transform"),s.setAttribute("transform",""),o[si]=i,l=qo(s,1),xr(s,si),s.setAttribute("transform",u)):(u=getComputedStyle(s)[si],o[si]=i,l=qo(s,1),o[si]=u);for(c in Zn)u=n[c],d=l[c],u!==d&&a.indexOf(c)<0&&(m=Wi(u),y=Wi(d),h=m!==y?wr(s,c,u,y):parseFloat(u),v=parseFloat(d),e._pt=new ys(e._pt,l,c,h,v-h,Nd),e._pt.u=y||0,e._props.push(c));hv(l,n)};gs("padding,margin,Width,Radius",function(t,e){var i="Top",s="Right",n="Bottom",a="Left",o=(e<3?[i,s,n,a]:[i+a,i+s,n+s,n+a]).map(function(l){return e<2?t+l:"border"+l+t});Bc[e>1?"border"+t:t]=function(l,c,u,d,h){var v,m;if(arguments.length<4)return v=o.map(function(y){return Gn(l,y,u)}),m=v.join(" "),m.split(v[0]).length===5?v[0]:m;v=(d+"").split(" "),m={},o.forEach(function(y,_){return m[y]=v[_]=v[_]||v[(_-1)/2|0]}),l.init(c,m,h)}});var fg={name:"css",register:Dd,targetTest:function(e){return e.style&&e.nodeType},init:function(e,i,s,n,a){var o=this._props,l=e.style,c=s.vars.startAt,u,d,h,v,m,y,_,S,T,I,C,$,M,D,F,L,P;Ef||Dd(),this.styles=this.styles||rg(e),L=this.styles.props,this.tween=s;for(_ in i)if(_!=="autoRound"&&(d=i[_],!(Os[_]&&Y_(_,i,s,n,e,a)))){if(m=typeof d,y=Bc[_],m==="function"&&(d=d.call(s,n,e,a),m=typeof d),m==="string"&&~d.indexOf("random(")&&(d=Vo(d)),y)y(this,e,_,d,s)&&(F=1);else if(_.substr(0,2)==="--")u=(getComputedStyle(e).getPropertyValue(_)+"").trim(),d+="",mr.lastIndex=0,mr.test(u)||(S=Wi(u),T=Wi(d),T?S!==T&&(u=wr(e,_,u,T)+T):S&&(d+=S)),this.add(l,"setProperty",u,d,n,a,0,0,_),o.push(_),L.push(_,0,l[_]);else if(m!=="undefined"){if(c&&_ in c?(u=typeof c[_]=="function"?c[_].call(s,n,e,a):c[_],Fi(u)&&~u.indexOf("random(")&&(u=Vo(u)),Wi(u+"")||u==="auto"||(u+=Rs.units[_]||Wi(Gn(e,_))||""),(u+"").charAt(1)==="="&&(u=Gn(e,_))):u=Gn(e,_),v=parseFloat(u),I=m==="string"&&d.charAt(1)==="="&&d.substr(0,2),I&&(d=d.substr(2)),h=parseFloat(d),_ in Bn&&(_==="autoAlpha"&&(v===1&&Gn(e,"visibility")==="hidden"&&h&&(v=0),L.push("visibility",0,l.visibility),fr(this,l,"visibility",v?"inherit":"hidden",h?"inherit":"hidden",!h)),_!=="scale"&&_!=="transform"&&(_=Bn[_],~_.indexOf(",")&&(_=_.split(",")[0]))),C=_ in Zn,C){if(this.styles.save(_),P=d,m==="string"&&d.substring(0,6)==="var(--"){if(d=Ds(e,d.substring(4,d.indexOf(")"))),d.substring(0,5)==="calc("){var j=e.style.perspective;e.style.perspective=d,d=Ds(e,"perspective"),j?e.style.perspective=j:xr(e,"perspective")}h=parseFloat(d)}if($||(M=e._gsap,M.renderTransform&&!i.parseTransform||qo(e,i.parseTransform),D=i.smoothOrigin!==!1&&M.smooth,$=this._pt=new ys(this._pt,l,si,0,1,M.renderTransform,M,0,-1),$.dep=1),_==="scale")this._pt=new ys(this._pt,M,"scaleY",M.scaleY,(I?ba(M.scaleY,I+h):h)-M.scaleY||0,Nd),this._pt.u=0,o.push("scaleY",_),_+="X";else if(_==="transformOrigin"){L.push(bs,0,l[bs]),d=ik(d),M.svg?Ld(e,d,0,D,0,this):(T=parseFloat(d.split(" ")[2])||0,T!==M.zOrigin&&fr(this,M,"zOrigin",M.zOrigin,T),fr(this,l,_,Uc(u),Uc(d)));continue}else if(_==="svgOrigin"){Ld(e,d,1,D,0,this);continue}else if(_ in cg){ak(this,M,_,v,I?ba(v,I+d):d);continue}else if(_==="smoothOrigin"){fr(this,M,"smooth",M.smooth,d);continue}else if(_==="force3D"){M[_]=d;continue}else if(_==="transform"){ok(this,d,e);continue}}else _ in l||(_=Ia(_)||_);if(C||(h||h===0)&&(v||v===0)&&!RS.test(d)&&_ in l)S=(u+"").substr((v+"").length),h||(h=0),T=Wi(d)||(_ in Rs.units?Rs.units[_]:S),S!==T&&(v=wr(e,_,u,T)),this._pt=new ys(this._pt,C?M:l,_,v,(I?ba(v,I+h):h)-v,!C&&(T==="px"||_==="zIndex")&&i.autoRound!==!1?GS:Nd),this._pt.u=T||0,C&&P!==d?(this._pt.b=u,this._pt.e=P,this._pt.r=jS):S!==T&&T!=="%"&&(this._pt.b=u,this._pt.r=HS);else if(_ in l)ek.call(this,e,_,u,I?I+d:d);else if(_ in e)this.add(e,_,u||e[_],I?I+d:d,n,a);else if(_!=="parseTransform"){vf(_,d);continue}C||(_ in l?L.push(_,0,l[_]):typeof e[_]=="function"?L.push(_,2,e[_]()):L.push(_,1,u||e[_])),o.push(_)}}F&&tg(this)},render:function(e,i){if(i.tween._time||!Bf())for(var s=i._pt;s;)s.r(e,s.d),s=s._next;else i.styles.revert()},get:Gn,aliases:Bn,getSetter:function(e,i,s){var n=Bn[i];return n&&n.indexOf(",")<0&&(i=n),i in Zn&&i!==bs&&(e._gsap.x||Gn(e,"x"))?s&&rv===s?i==="scale"?KS:YS:(rv=s||{})&&(i==="scale"?XS:JS):e.style&&!ff(e.style[i])?qS:~i.indexOf("-")?WS:Sf(e,i)},core:{_removeProperty:xr,_getMatrix:Tf}};ws.utils.checkPrefix=Ia;ws.core.getStyleSaver=rg;(function(t,e,i,s){var n=gs(t+","+e+","+i,function(a){Zn[a]=1});gs(e,function(a){Rs.units[a]="deg",cg[a]=1}),Bn[n[13]]=t+","+e,gs(s,function(a){var o=a.split(":");Bn[o[1]]=n[o[0]]})})("x,y,z,scale,scaleX,scaleY,xPercent,yPercent","rotation,rotationX,rotationY,skewX,skewY","transform,transformOrigin,svgOrigin,force3D,smoothOrigin,transformPerspective","0:translateX,1:translateY,2:translateZ,8:rotate,8:rotationZ,8:rotateZ,9:rotateX,10:rotateY");gs("x,y,z,top,right,bottom,left,width,height,fontSize,padding,margin,perspective",function(t){Rs.units[t]="px"});ws.registerPlugin(fg);var Rd=ws.registerPlugin(fg)||ws;Rd.core.Tween;const lk={ease:"power3.out",smooth:"power3.out","ease-out":"power3.out",easeOut:"power3.out",expo:"expo.out",expoOut:"expo.out",softSpring:"back.out(1.05)","soft-spring":"back.out(1.05)",spring:"elastic.out(0.55, 0.42)",bounceOut:"bounce.out"};function Tc(t,e){const i=Fo(t,0,1);if(i===0||i===1)return i;const s=lk[String(e??"power3.out")]??String(e??"power3.out");if(s.startsWith("cubic-bezier("))return ck(s,i);const n=Rd.parseEase(s)??Rd.parseEase("power3.out");return Fo(n(i),0,1.04)}function ck(t,e){const i=t.match(/^cubic-bezier\(([^)]+)\)$/)?.[1]?.split(",").map(v=>Number(v.trim()));if(!i||i.length!==4||i.some(v=>!Number.isFinite(v)))return Tc(e,"power3.out");const[s,n,a,o]=i;if(s<0||s>1||a<0||a>1)return Tc(e,"power3.out");const l=(v,m,y)=>{const _=1-y;return 3*_*_*y*v+3*_*y*y*m+y*y*y},c=(v,m,y)=>3*(1-y)*(1-y)*v+6*(1-y)*y*(m-v)+3*y*y*(1-m);let u=e;for(let v=0;v<8;v+=1){const m=l(s,a,u)-e;if(Math.abs(m)<1e-7)return l(n,o,u);const y=c(s,a,u);if(Math.abs(y)<1e-7)break;const _=u-m/y;if(_<0||_>1)break;u=_}let d=0,h=1;u=e;for(let v=0;v<24;v+=1){const m=l(s,a,u);if(Math.abs(m-e)<1e-7)break;m<e?d=u:h=u,u=(d+h)/2}return l(n,o,u)}function hg(t,e,i){return i<=0?t:i>=1?e:typeof t=="number"&&typeof e=="number"?t+(e-t)*i:pv(t)&&pv(e)?uk(t,e,i):i<1?t:e}function pv(t){return typeof t=="string"&&(t.startsWith("#")||t.startsWith("rgb"))}function uk(t,e,i){const s=vv(t),n=vv(e);if(!s||!n)return i<1?bc(t):bc(e);const a=Math.round(s.r+(n.r-s.r)*i),o=Math.round(s.g+(n.g-s.g)*i),l=Math.round(s.b+(n.b-s.b)*i),c=s.a+(n.a-s.a)*i;return`rgba(${a}, ${o}, ${l}, ${c.toFixed(3)})`}function vv(t){const e=String(t).trim();if(e.startsWith("#")){const n=e.slice(1);if(n.length===3)return{r:Number.parseInt(n[0]+n[0],16),g:Number.parseInt(n[1]+n[1],16),b:Number.parseInt(n[2]+n[2],16),a:1};if(n.length===6)return{r:Number.parseInt(n.slice(0,2),16),g:Number.parseInt(n.slice(2,4),16),b:Number.parseInt(n.slice(4,6),16),a:1}}const i=e.match(/^rgba?\(([^)]+)\)$/);if(!i)return null;const s=i[1].split(",").map(n=>Number.parseFloat(n.trim()));return{r:s[0]??0,g:s[1]??0,b:s[2]??0,a:s[3]??1}}const mv=new WeakMap,_v=new WeakMap;function pg(t,e){const i=dk(t),s=vk(t,i,e),n=i.regularElements.filter(o=>fk(o,e)).map(o=>{let l=Vd(o,i.animationsByTarget.get(o.id)??[],e);return o.asset&&(l={...l,mediaTime:Math.max(0,e)}),{...o,render:l}}),a=i.orderedClips.filter(o=>{const l=o.transitionOut==="crossfade"?o.transitionOutDuration:0;return e>=o.start&&e<o.start+o.duration+l});for(const o of a){if(!o.asset)continue;const l=i.elementsByAsset.get(o.assetName),c=l?Vd(l,i.animationsByTarget.get(l.id)??[],e):{x:0,y:0,scale:1,rotation:0,opacity:1,center:!0,cover:!1,layer:"content"},u=o.start+o.duration;let d=1;o.transitionIn==="crossfade"&&o.transitionInDuration>0&&(d*=Fo((e-o.start)/o.transitionInDuration)),o.transitionOut==="crossfade"&&o.transitionOutDuration>0&&e>=u&&(d*=1-Fo((e-u)/o.transitionOutDuration));const h=Number(c.opacity??1),v={id:o.id,kind:"asset",assetName:o.assetName,asset:o.asset,properties:l?.properties??{},render:{...c,opacity:h*d,mediaTime:Math.max(0,o.trimIn+e-o.start),mediaTrimOut:o.trimOut,mediaVolume:o.volume??1,mediaMuted:(i.tracksById.get(String(o.track))?.muted??!1)||(o.mute??!1)}};n.push(v)}return n.sort((o,l)=>gv(i,o)-gv(i,l)),{canvas:t.canvas,camera:s,elements:n}}function dk(t){const e=mv.get(t);if(e)return e;const i=new Map;for(const o of t.animations){const l=i.get(o.target);l?l.push(o):i.set(o.target,[o])}const s=new Map(t.tracks.map(o=>[o.id,o])),n=new Map;for(const o of t.elements)o.kind==="asset"&&o.assetName&&!n.has(o.assetName)&&n.set(o.assetName,o);const a={animationsByTarget:i,clippedAssets:new Set(t.clips.map(o=>o.assetName)),clipsById:new Map(t.clips.map(o=>[o.id,o])),elementsByAsset:n,orderedClips:[],regularElements:[],tracksById:s};return a.regularElements=t.elements.filter(o=>(o.kind!=="asset"||!o.assetName||!a.clippedAssets.has(o.assetName))&&hk(a,o)),a.orderedClips=t.clips.filter(o=>{const l=a.tracksById.get(String(o.track));return l?.role!=="audio"&&!l?.hidden}).sort((o,l)=>Pc(a,o.track)-Pc(a,l.track)||o.sourceOrder-l.sourceOrder),mv.set(t,a),a}function Pc(t,e){const i=t.tracksById.get(String(e));return i?i.role==="main"?0:100+i.order:pk(e)}function fk(t,e){const i=t.properties;if(i.start===void 0||i.duration===void 0)return!0;const s=Number(i.start),n=Number(i.duration);return!Number.isFinite(s)||!Number.isFinite(n)?!0:e>=s&&e<s+Math.max(0,n)}function hk(t,e){const i=e.properties.track;if(i===void 0)return!0;const s=t.tracksById.get(String(i));return s?.role!=="audio"&&!s?.hidden}function gv(t,e){const i=t.clipsById.get(e.id);if(i)return Pc(t,i.track);const s=e.render.track;return s!==void 0?Pc(t,String(s)):1e3}function pk(t){const e=Number(t);return Number.isFinite(e)?e:0}function vk(t,e,i){const s={id:"camera",properties:t.camera??{x:0,y:0,zoom:1,rotation:0}};return Vd(s,e.animationsByTarget.get(s.id)??[],i)}function Vd(t,e,i){if(e.length===0)return t.properties;let s={...t.properties};for(const n of e)s=mk(s,n,i);return s}function mk(t,e,i){const s=i-e.delay;if(s<0)return t;const n=Fo(s/e.duration);if(e.keyframes.length>0)return _k(t,e.keyframes,n,e.easing);if(s===0)return{...t,...e.from};const a=Tc(n,e.easing),o={...t};let l=_v.get(e);l||(l=[...new Set([...Object.keys(e.from),...Object.keys(e.to)])],_v.set(e,l));for(const c of l){const u=e.from[c]??t[c]??0,d=e.to[c]??t[c]??0;o[c]=hg(u,d,a)}return o}function _k(t,e,i,s){if(e.length===0)return t;const n=e[0],a=e[e.length-1];if(!n||!a)return t;if(i<=n.offset)return{...t,...n.properties};if(i>=a.offset)return{...t,...a.properties};const o={...t};let l=n,c=a;for(let m=0;m<e.length-1;m+=1){const y=e[m],_=e[m+1];if(!(!y||!_)&&i>=y.offset&&i<=_.offset){l=y,c=_;break}}const u=c.offset-l.offset||1,d=c.easing??s,h=Tc((i-l.offset)/u,d),v=new Set([...Object.keys(l.properties),...Object.keys(c.properties)]);for(const m of v){const y=l.properties[m]??t[m]??0,_=c.properties[m]??t[m]??0;o[m]=hg(y,_,h)}return o}const gk="modulepreload",yk=function(t){return"/"+t},yv={},Pf=function(e,i,s){let n=Promise.resolve();if(i&&i.length>0){let o=function(u){return Promise.all(u.map(d=>Promise.resolve(d).then(h=>({status:"fulfilled",value:h}),h=>({status:"rejected",reason:h}))))};document.getElementsByTagName("link");const l=document.querySelector("meta[property=csp-nonce]"),c=l?.nonce||l?.getAttribute("nonce");n=o(i.map(u=>{if(u=yk(u),u in yv)return;yv[u]=!0;const d=u.endsWith(".css"),h=d?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${u}"]${h}`))return;const v=document.createElement("link");if(v.rel=d?"stylesheet":gk,d||(v.as="script"),v.crossOrigin="",v.href=u,c&&v.setAttribute("nonce",c),document.head.appendChild(v),d)return new Promise((m,y)=>{v.addEventListener("load",m),v.addEventListener("error",()=>y(new Error(`Unable to preload CSS for ${u}`)))})}))}function a(o){const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=o,window.dispatchEvent(l),!l.defaultPrevented)throw o}return n.then(o=>{for(const l of o||[])l.status==="rejected"&&a(l.reason);return e().catch(a)})};var Dn={},sd={},Ln={},bv;function vg(){if(bv)return Ln;bv=1,Object.defineProperty(Ln,"__esModule",{value:!0}),Ln.loop=Ln.conditional=Ln.parse=void 0;var t=function s(n,a){var o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},l=arguments.length>3&&arguments[3]!==void 0?arguments[3]:o;if(Array.isArray(a))a.forEach(function(u){return s(n,u,o,l)});else if(typeof a=="function")a(n,o,l,s);else{var c=Object.keys(a)[0];Array.isArray(a[c])?(l[c]={},s(n,a[c],o,l[c])):l[c]=a[c](n,o,l,s)}return o};Ln.parse=t;var e=function(n,a){return function(o,l,c,u){a(o,l,c)&&u(o,n,l,c)}};Ln.conditional=e;var i=function(n,a){return function(o,l,c,u){for(var d=[],h=o.pos;a(o,l,c);){var v={};if(u(o,n,l,v),o.pos===h)break;h=o.pos,d.push(v)}return d}};return Ln.loop=i,Ln}var pi={},xv;function mg(){if(xv)return pi;xv=1,Object.defineProperty(pi,"__esModule",{value:!0}),pi.readBits=pi.readArray=pi.readUnsigned=pi.readString=pi.peekBytes=pi.readBytes=pi.peekByte=pi.readByte=pi.buildStream=void 0;var t=function(h){return{data:h,pos:0}};pi.buildStream=t;var e=function(){return function(h){return h.data[h.pos++]}};pi.readByte=e;var i=function(){var h=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0;return function(v){return v.data[v.pos+h]}};pi.peekByte=i;var s=function(h){return function(v){return v.data.subarray(v.pos,v.pos+=h)}};pi.readBytes=s;var n=function(h){return function(v){return v.data.subarray(v.pos,v.pos+h)}};pi.peekBytes=n;var a=function(h){return function(v){return Array.from(s(h)(v)).map(function(m){return String.fromCharCode(m)}).join("")}};pi.readString=a;var o=function(h){return function(v){var m=s(2)(v);return h?(m[1]<<8)+m[0]:(m[0]<<8)+m[1]}};pi.readUnsigned=o;var l=function(h,v){return function(m,y,_){for(var S=typeof v=="function"?v(m,y,_):v,T=s(h),I=new Array(S),C=0;C<S;C++)I[C]=T(m);return I}};pi.readArray=l;var c=function(h,v,m){for(var y=0,_=0;_<m;_++)y+=h[v+_]&&Math.pow(2,m-_-1);return y},u=function(h){return function(v){for(var m=e()(v),y=new Array(8),_=0;_<8;_++)y[7-_]=!!(m&1<<_);return Object.keys(h).reduce(function(S,T){var I=h[T];return I.length?S[T]=c(y,I.index,I.length):S[T]=y[I.index],S},{})}};return pi.readBits=u,pi}var wv;function bk(){return wv||(wv=1,(function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var e=vg(),i=mg(),s={blocks:function(v){for(var m=0,y=[],_=v.data.length,S=0,T=(0,i.readByte)()(v);T!==m&&T;T=(0,i.readByte)()(v)){if(v.pos+T>=_){var I=_-v.pos;y.push((0,i.readBytes)(I)(v)),S+=I;break}y.push((0,i.readBytes)(T)(v)),S+=T}for(var C=new Uint8Array(S),$=0,M=0;M<y.length;M++)C.set(y[M],$),$+=y[M].length;return C}},n=(0,e.conditional)({gce:[{codes:(0,i.readBytes)(2)},{byteSize:(0,i.readByte)()},{extras:(0,i.readBits)({future:{index:0,length:3},disposal:{index:3,length:3},userInput:{index:6},transparentColorGiven:{index:7}})},{delay:(0,i.readUnsigned)(!0)},{transparentColorIndex:(0,i.readByte)()},{terminator:(0,i.readByte)()}]},function(h){var v=(0,i.peekBytes)(2)(h);return v[0]===33&&v[1]===249}),a=(0,e.conditional)({image:[{code:(0,i.readByte)()},{descriptor:[{left:(0,i.readUnsigned)(!0)},{top:(0,i.readUnsigned)(!0)},{width:(0,i.readUnsigned)(!0)},{height:(0,i.readUnsigned)(!0)},{lct:(0,i.readBits)({exists:{index:0},interlaced:{index:1},sort:{index:2},future:{index:3,length:2},size:{index:5,length:3}})}]},(0,e.conditional)({lct:(0,i.readArray)(3,function(h,v,m){return Math.pow(2,m.descriptor.lct.size+1)})},function(h,v,m){return m.descriptor.lct.exists}),{data:[{minCodeSize:(0,i.readByte)()},s]}]},function(h){return(0,i.peekByte)()(h)===44}),o=(0,e.conditional)({text:[{codes:(0,i.readBytes)(2)},{blockSize:(0,i.readByte)()},{preData:function(v,m,y){return(0,i.readBytes)(y.text.blockSize)(v)}},s]},function(h){var v=(0,i.peekBytes)(2)(h);return v[0]===33&&v[1]===1}),l=(0,e.conditional)({application:[{codes:(0,i.readBytes)(2)},{blockSize:(0,i.readByte)()},{id:function(v,m,y){return(0,i.readString)(y.blockSize)(v)}},s]},function(h){var v=(0,i.peekBytes)(2)(h);return v[0]===33&&v[1]===255}),c=(0,e.conditional)({comment:[{codes:(0,i.readBytes)(2)},s]},function(h){var v=(0,i.peekBytes)(2)(h);return v[0]===33&&v[1]===254}),u=[{header:[{signature:(0,i.readString)(3)},{version:(0,i.readString)(3)}]},{lsd:[{width:(0,i.readUnsigned)(!0)},{height:(0,i.readUnsigned)(!0)},{gct:(0,i.readBits)({exists:{index:0},resolution:{index:1,length:3},sort:{index:4},size:{index:5,length:3}})},{backgroundColorIndex:(0,i.readByte)()},{pixelAspectRatio:(0,i.readByte)()}]},(0,e.conditional)({gct:(0,i.readArray)(3,function(h,v){return Math.pow(2,v.lsd.gct.size+1)})},function(h,v){return v.lsd.gct.exists}),{frames:(0,e.loop)([n,l,c,a,o],function(h){var v=(0,i.peekByte)()(h);return v===33||v===44})}],d=u;t.default=d})(sd)),sd}var po={},Sv;function xk(){if(Sv)return po;Sv=1,Object.defineProperty(po,"__esModule",{value:!0}),po.deinterlace=void 0;var t=function(i,s){for(var n=new Array(i.length),a=i.length/s,o=function(m,y){var _=i.slice(y*s,(y+1)*s);n.splice.apply(n,[m*s,s].concat(_))},l=[0,4,2,1],c=[8,8,4,2],u=0,d=0;d<4;d++)for(var h=l[d];h<a;h+=c[d])o(h,u),u++;return n};return po.deinterlace=t,po}var vo={},kv;function wk(){if(kv)return vo;kv=1,Object.defineProperty(vo,"__esModule",{value:!0}),vo.lzw=void 0;var t=function(i,s,n){var a=4096,o=-1,l=n,c,u,d,h,v,m,y,F,_,S,D,T,L,P,_t,j,I=new Array(n),C=new Array(a),$=new Array(a),M=new Array(a+1);for(T=i,u=1<<T,v=u+1,c=u+2,y=o,h=T+1,d=(1<<h)-1,_=0;_<u;_++)C[_]=0,$[_]=_;var D,F,L,P,j,_t;for(D=F=L=P=j=_t=0,S=0;S<l;){if(P===0){if(F<h){D+=s[_t]<<F,F+=8,_t++;continue}if(_=D&d,D>>=h,F-=h,_>c||_==v)break;if(_==u){h=T+1,d=(1<<h)-1,c=u+2,y=o;continue}if(y==o){M[P++]=$[_],y=_,L=_;continue}for(m=_,_==c&&(M[P++]=L,_=y);_>u;)M[P++]=$[_],_=C[_];L=$[_]&255,M[P++]=L,c<a&&(C[c]=y,$[c]=L,c++,(c&d)===0&&c<a&&(h++,d+=c)),y=m}P--,I[j++]=M[P],S++}for(S=j;S<l;S++)I[S]=0;return I};return vo.lzw=t,vo}var Ev;function Sk(){if(Ev)return Dn;Ev=1,Object.defineProperty(Dn,"__esModule",{value:!0}),Dn.decompressFrames=Dn.decompressFrame=Dn.parseGIF=void 0;var t=a(bk()),e=vg(),i=mg(),s=xk(),n=wk();function a(d){return d&&d.__esModule?d:{default:d}}var o=function(h){var v=new Uint8Array(h);return(0,e.parse)((0,i.buildStream)(v),t.default)};Dn.parseGIF=o;var l=function(h){for(var v=h.pixels.length,m=new Uint8ClampedArray(v*4),y=0;y<v;y++){var _=y*4,S=h.pixels[y],T=h.colorTable[S]||[0,0,0];m[_]=T[0],m[_+1]=T[1],m[_+2]=T[2],m[_+3]=S!==h.transparentIndex?255:0}return m},c=function(h,v,m){if(!h.image){console.warn("gif frame does not have associated image.");return}var y=h.image,_=y.descriptor.width*y.descriptor.height,S=(0,n.lzw)(y.data.minCodeSize,y.data.blocks,_);y.descriptor.lct.interlaced&&(S=(0,s.deinterlace)(S,y.descriptor.width));var T={pixels:S,dims:{top:h.image.descriptor.top,left:h.image.descriptor.left,width:h.image.descriptor.width,height:h.image.descriptor.height}};return y.descriptor.lct&&y.descriptor.lct.exists?T.colorTable=y.lct:T.colorTable=v,h.gce&&(T.delay=(h.gce.delay||10)*10,T.disposalType=h.gce.extras.disposal,h.gce.extras.transparentColorGiven&&(T.transparentIndex=h.gce.transparentColorIndex)),m&&(T.patch=l(T)),T};Dn.decompressFrame=c;var u=function(h,v){return h.frames.filter(function(m){return m.image}).map(function(m){return c(m,h.gct,v)})};return Dn.decompressFrames=u,Dn}var Bv=Sk();function Zr(t){return t?.motionlyType==="video"}function Uv(t){return t.motionlyType==="gif"||t.motionlyType==="lottie"||t.motionlyType==="svg"}function kk(t){return[...t.entries()].flatMap(([e,i])=>i.motionlyWarning?[`${e}: ${i.motionlyWarning}`]:[])}async function Ek(t,e=document.baseURI,i){const s=new Map;for(const a of t.imports){const o=Ta(a.path);a.path.startsWith("data:")&&o&&s.set(o,a.path)}const n=await Promise.all(t.imports.map(async a=>{try{const o=s.get(Ta(a.path))??a.path;return[a.name,await Bk(o,e,a.type)]}catch(o){return console.warn(`Could not load asset ${a.path}:`,o),i?.(a.name,o),null}}));return new Map(n.filter(a=>a!==null))}async function Bk(t,e,i){const s=new URL(t.startsWith("/")?`/${t.slice(1)}`:t,e).href,[n,a]=await Promise.all([i==="video"?Ak(s):i==="lottie"?zk(s):qk(s)?Mk(s):Tk(s,i==="svg"),Uk(s)]);return a&&(n.motionlySize=a),n}async function Uk(t){if(/^https?:/i.test(t))try{const e=await fetch(t,{method:"HEAD"}),i=Number(e.headers.get("content-length"));return e.ok&&Number.isFinite(i)&&i>0?i:void 0}catch{return}}async function Tk(t,e){const i=new Image;i.motionlyType="image",i.motionlySource=t,i.decoding="async",i.src=t;const s=i.decode(),n=e?fetch(t).then(a=>{if(!a.ok)throw new Error(`Asset request failed (${a.status})`);return a.text()}):null;if(n){const a=await n,o=Hk(a);if(o.animated)return Pk(t,a,o);i.motionlySvg=o}return await s,i}async function Pk(t,e,i){const s=document.createElement("canvas"),n=Math.min(1,2048/Math.max(1,i.width,i.height));s.width=Math.max(1,Math.round(i.width*n)),s.height=Math.max(1,Math.round(i.height*n)),s.src=t,s.motionlySource=t,s.motionlyType="svg",s.motionlyDuration=0,s.motionlySvg=i,s.motionlyWarning=/@keyframes\b|animation(?:-name)?\s*:/i.test(e)?"Animated SVG uses real-time Canvas playback. SMIL animation is rendered where supported, but CSS keyframes are not fully supported by the Canvas SVG runtime and may differ.":"Animated SVG uses real-time Canvas playback. Its internal SMIL timeline cannot be frame-seeked, so exact scrubbing and export use wall-clock playback.";const a=s.getContext("2d");if(!a)throw new Error("Could not create animated SVG render context");const{Canvg:o}=await Pf(async()=>{const{Canvg:d}=await import("./index-uMHqBndL.js");return{Canvg:d}},[]),l={enableRedraw:!0,ignoreDimensions:!0,ignoreMouse:!0,scaleWidth:s.width,scaleHeight:s.height},c=()=>o.fromString(a,e),u=c();return s.motionlyCanvg=u,await u.render(l),s.motionlyRestart=async()=>{s.motionlyCanvg?.stop(),a.clearRect(0,0,s.width,s.height);const d=c();s.motionlyCanvg=d,d.start(l)},s.motionlyResume=()=>s.motionlyCanvg?.start(l),s}async function Ak(t){const e=document.createElement("video");if(e.motionlyType="video",e.motionlySource=t,e.preload="auto",e.muted=!0,e.defaultMuted=!0,e.playsInline=!0,e.src=t,e.load(),e.readyState<HTMLMediaElement.HAVE_METADATA&&await Wo(e,"loadedmetadata"),e.readyState<HTMLMediaElement.HAVE_CURRENT_DATA&&await Wo(e,"loadeddata"),e.width=Math.max(1,e.videoWidth),e.height=Math.max(1,e.videoHeight),e.motionlyPreviewFrame=document.createElement("canvas"),e.motionlyPreviewFrame.width=e.width,e.motionlyPreviewFrame.height=e.height,Wk(t))try{const i=await fetch(t);if(!i.ok)throw new Error(`MP4 request failed (${i.status})`);const{demuxMp4:s}=await Pf(async()=>{const{demuxMp4:n}=await Promise.resolve().then(()=>wU);return{demuxMp4:n}},void 0);e.motionlyMp4=await s(await i.arrayBuffer())}catch(i){console.warn("Could not demux MP4 metadata:",i)}return e.motionlyDuration=e.motionlyMp4?.duration??await Vk(e),Af(e),e}async function zk(t){const e=document.createElement("canvas");e.width=512,e.height=512,e.src=t,e.motionlySource=t,e.motionlyType="lottie",e.motionlyDuration=0;const i=await fetch(t);if(!i.ok)throw new Error(`Lottie request failed (${i.status})`);const{DotLottie:s}=await Pf(async()=>{const{DotLottie:l}=await import("./index-bTggaIHQ.js");return{DotLottie:l}},[]),n=new s({canvas:e,data:await i.arrayBuffer(),autoplay:!1,loop:!0,useFrameInterpolation:!0,renderConfig:{autoResize:!1,devicePixelRatio:1,freezeOnOffscreen:!1}});e.motionlyLottie=n;try{await new Promise((l,c)=>{const u=()=>{h(),l()},d=v=>{h(),c(v.error)},h=()=>{n.removeEventListener("load",u),n.removeEventListener("loadError",d)};n.addEventListener("load",u),n.addEventListener("loadError",d),n.isLoaded&&u()})}catch(l){throw n.destroy(),l}const a=n.animationSize(),o=Math.min(1,2048/Math.max(1,a.width,a.height));return e.width=Math.max(1,Math.round(a.width*o)),e.height=Math.max(1,Math.round(a.height*o)),e.motionlyDuration=Math.max(0,n.duration),n.resize(),n.setFrame(0),e}async function Mk(t){const e=await fetch(t);if(!e.ok)throw new Error(`GIF request failed (${e.status})`);const i=Bv.parseGIF(await e.arrayBuffer()),s=Bv.decompressFrames(i,!0);if(!s.length)throw new Error("GIF contains no frames");const n=document.createElement("canvas");n.width=i.lsd.width,n.height=i.lsd.height,n.src=t,n.motionlySource=t,n.motionlyType="gif";const a=document.createElement("canvas");a.width=n.width,a.height=n.height;const o=a.getContext("2d"),l=document.createElement("canvas"),c=l.getContext("2d");if(!o||!c)throw new Error("Could not create GIF render context");const u=[];let d=0,h,v;for(const m of s){h?.disposalType===2?o.clearRect(h.dims.left,h.dims.top,h.dims.width,h.dims.height):h?.disposalType===3&&v&&o.putImageData(v,0,0),v=m.disposalType===3?o.getImageData(0,0,n.width,n.height):void 0,l.width=m.dims.width,l.height=m.dims.height;const y=c.createImageData(m.dims.width,m.dims.height);y.data.set(m.patch),c.putImageData(y,0,0),o.drawImage(l,m.dims.left,m.dims.top),d+=Math.max(.01,m.delay/1e3),u.push({endTime:d,bitmap:await createImageBitmap(a)}),h=m}return n.motionlyDuration=d,n.motionlyGif={frames:u,currentFrame:-1},gg(n,0),n}function Wo(t,e){return new Promise((i,s)=>{const n=()=>{t.removeEventListener(e,a),t.removeEventListener("error",o)},a=()=>{n(),i()},o=()=>{n(),s(t.error??new Error(`Video failed during ${e}`))};t.addEventListener(e,a,{once:!0}),t.addEventListener("error",o,{once:!0})})}const Ac=new WeakMap,hr=new WeakSet;function Ik(t,e,i=0){const s=Math.max(0,e-Math.max(0,i)-.001);return Math.max(0,Math.min(s,Number.isFinite(t)?t:0))}async function _g(t,e,i){const s=new Map;for(const l of t.elements){if(!l.assetName)continue;const c=e.get(l.assetName);!c||!Tv(c)||s.set(l.assetName,l.render)}const n=[],a=Ac.get(e)??new Set,o=new Set;for(const[l,c]of s){const u=e.get(l);if(!u||!Tv(u))continue;o.add(u);const d=Number(c.mediaTime??0),h=Math.max(0,Number(c.mediaTrimOut??0));if(Zr(u)){const v=Ik(d,u.motionlyDuration,h),m=!a.has(u),y=i.exact||m?1/1e3:.35;if(Math.abs(u.currentTime-v)>y){const _=Fk(u,v,i.exact===!0);n.push(i.playing?_.then(()=>u.paused?Pv(u):void 0):_)}else i.playing&&u.paused&&n.push(Pv(u));i.playing||(u.pause(),jd(u))}else Uv(u)&&u.motionlyLottie?Ok(u,d):Uv(u)&&u.motionlyGif?gg(u,d):Wc(u)&&(i.playing?i.playing&&!a.has(u)?hr.has(u)&&u.motionlyResume?(hr.delete(u),u.motionlyResume()):n.push(nc(u)):!u.motionlyCanvg&&!a.has(u)&&n.push(nc(u)):(u.motionlyCanvg?u.motionlyCanvg.stop():a.has(u)||n.push(nc(u)),hr.delete(u),o.delete(u)))}for(const l of a)o.has(l)||(Zr(l)&&(l.pause(),jd(l)),l.motionlyCanvg&&(l.motionlyCanvg.stop(),hr.delete(l)));Ac.set(e,o),await Promise.all(n)}function Hd(t){for(const e of t.values())Zr(e)&&(e.pause(),jd(e)),e.motionlyCanvg&&(e.motionlyCanvg.stop(),hr.add(e)),e.motionlyLottie?.pause();Ac.delete(t)}function nd(t){Hd(t);for(const e of t.values())e.motionlyCanvg?.stop(),hr.delete(e),e.motionlyLottie?.destroy(),e.motionlyGif?.frames.forEach(i=>i.bitmap.close())}async function Ck(t){Ac.delete(t);for(const e of t.values())hr.delete(e);await Promise.all([...t.values()].filter(Wc).map(e=>nc(e)))}function $k(t){return[...t.values()].some(Wc)}function Tv(t){return Zr(t)||t.motionlyType==="gif"||t.motionlyType==="lottie"||Wc(t)}function Wc(t){return!!t.motionlyRestart}function Ok(t,e){const i=t.motionlyLottie;if(!i||!i.totalFrames||!i.duration)return;const s=((Number.isFinite(e)?e:0)%i.duration+i.duration)%i.duration;i.setFrame(Math.min(i.totalFrames-1,s/i.duration*i.totalFrames))}function Nk(t,e){const i=t.at(-1)?.endTime??0;if(!i)return 0;const s=((Number.isFinite(e)?e:0)%i+i)%i,n=t.findIndex(a=>s<a.endTime);return n<0?Math.max(0,t.length-1):n}function gg(t,e){const i=t.motionlyGif;if(!i)return;const s=Nk(i.frames,e);if(s===i.currentFrame)return;const n=t.getContext("2d");n&&(n.clearRect(0,0,t.width,t.height),n.drawImage(i.frames[s].bitmap,0,0),i.currentFrame=s)}async function nc(t){if(hr.delete(t),t.motionlyRestart)return t.motionlyRestart();if(t.motionlyType!=="image")return;const e=t.motionlySource;t.src="",t.src=e,await t.decode()}function Pv(t){if(t.motionlyPlay)return t.motionlyPlay;Rk(t);const e=t.play().catch(()=>{});return t.motionlyPlay=e,e.finally(()=>{t.motionlyPlay===e&&(t.motionlyPlay=void 0)})}function Fk(t,e,i){if(t.motionlySeek&&!i)return t.motionlySeek;const n=(t.motionlySeek?.catch(()=>{})??Promise.resolve()).then(()=>Dk(t,e));return t.motionlySeek=n,n.finally(()=>{t.motionlySeek===n&&(t.motionlySeek=void 0)})}async function Dk(t,e){if(Math.abs(t.currentTime-e)>1/1e3){const i=Wo(t,"seeked");t.currentTime=e,await i,await Lk(t)}Af(t)}function Lk(t){return t.requestVideoFrameCallback?new Promise(e=>{let i=!1,s;const n=()=>{i||(i=!0,clearTimeout(a),e())},a=setTimeout(()=>{s!==void 0&&t.cancelVideoFrameCallback?.(s),n()},100);s=t.requestVideoFrameCallback(n)}):Promise.resolve()}function Rk(t){if(t.motionlyFramePumpActive)return;t.motionlyFramePumpActive=!0;const e=()=>{t.motionlyFramePumpActive&&(Af(t),t.requestVideoFrameCallback?(t.motionlyFrameCallbackType="rvfc",t.motionlyFrameCallback=t.requestVideoFrameCallback(e)):(t.motionlyFrameCallbackType="raf",t.motionlyFrameCallback=requestAnimationFrame(e)))};e()}function jd(t){t.motionlyFramePumpActive=!1,t.motionlyFrameCallback!==void 0&&(t.motionlyFrameCallbackType==="rvfc"?t.cancelVideoFrameCallback?.(t.motionlyFrameCallback):cancelAnimationFrame(t.motionlyFrameCallback),t.motionlyFrameCallback=void 0)}function Af(t){const e=t.motionlyPreviewFrame;if(!e||t.readyState<HTMLMediaElement.HAVE_CURRENT_DATA||t.seeking||!t.videoWidth||!t.videoHeight)return;const i=e.getContext("2d");if(i)try{i.drawImage(t,0,0,e.width,e.height)}catch{}}async function Vk(t){if(Number.isFinite(t.duration)&&t.duration>0)return t.duration;const e=Wo(t,"seeked");t.currentTime=Number.MAX_SAFE_INTEGER,await e;const i=t.duration,s=Wo(t,"seeked");return t.currentTime=0,await s,Number.isFinite(i)&&i>0?i:0}function Hk(t){const e=new DOMParser().parseFromString(t,"image/svg+xml").documentElement,i=e.getAttribute("viewBox")?.split(/\s+/).map(Number),s=i?.[2]??Number.parseFloat(e.getAttribute("width")??"1"),n=i?.[3]??Number.parseFloat(e.getAttribute("height")??"1"),a=Array.from(e.querySelectorAll("path[d]")).map((l,c)=>{const u=Gk(l),d=l.getAttribute("stroke")??u.stroke??"none",h=l.getAttribute("fill")??u.fill??"#000000";let v=s+n;try{v=l.getTotalLength()}catch{}return{d:l.getAttribute("d")??"",fill:h.startsWith("url(")?c?"#ffffff":"#8ab4ff":h,fillOpacity:Number.parseFloat(l.getAttribute("fill-opacity")??u.fillOpacity??"1"),stroke:d.startsWith("url(")?c?"#ffffff":"#8ab4ff":d,strokeWidth:Number.parseFloat(l.getAttribute("stroke-width")??u.strokeWidth??"1"),opacity:Number.parseFloat(l.getAttribute("stroke-opacity")??u.strokeOpacity??"1"),lineCap:l.getAttribute("stroke-linecap")||"butt",lineJoin:l.getAttribute("stroke-linejoin")||"miter",length:Math.max(1,v)}}),o=jk(t,e);return{width:s,height:n,animated:o,paths:a}}function jk(t,e){return!!(e?.querySelector("animate, animateMotion, animateTransform, set")||/<(?:animate|animateMotion|animateTransform|set)\b|@keyframes\b|animation(?:-name)?\s*:/i.test(t))}function Gk(t){const e=Object.fromEntries((t.getAttribute("style")??"").split(";").map(i=>i.split(":",2).map(s=>s.trim())).filter(i=>i.length===2&&!!i[0]));return{fill:e.fill??"",fillOpacity:e["fill-opacity"]??"",stroke:e.stroke??"",strokeOpacity:e["stroke-opacity"]??"",strokeWidth:e["stroke-width"]??""}}function qk(t){return t.startsWith("data:image/gif")||/\.gif(?:[?#]|$)/i.test(t)}function Wk(t){return/^data:video\/(?:mp4|quicktime)/i.test(t)||/\.(?:mp4|mov|m4v)(?:[?#]|$)/i.test(t)||/motionly-filename=[^#]*(?:mp4|mov|m4v)(?:[&#]|$)/i.test(t)}class yg{canvas;context;maskCanvas;maskContext;constructor(e){this.canvas=e;const i=e.getContext("2d",{alpha:!1});if(!i)throw new Error("Failed to get 2D rendering context");this.context=i,this.maskCanvas=e.ownerDocument.createElement("canvas");const s=this.maskCanvas.getContext("2d");if(!s)throw new Error("Failed to create mask rendering context");this.maskContext=s}resize(e,i){this.canvas.width!==e&&(this.canvas.width=e),this.canvas.height!==i&&(this.canvas.height=i),this.maskCanvas.width!==e&&(this.maskCanvas.width=e),this.maskCanvas.height!==i&&(this.maskCanvas.height=i)}render(e,i=new Map,s=1){const{canvas:n,camera:a,elements:o}=e,l=Math.max(.05,Math.min(1,Number.isFinite(s)?s:1));this.resize(Math.max(1,Math.round(n.width*l)),Math.max(1,Math.round(n.height*l)));const c=this.context;c.save(),c.setTransform(l,0,0,l,0,0),c.imageSmoothingEnabled=!0,c.imageSmoothingQuality="high",c.globalAlpha=1,c.filter="none",c.fillStyle=n.background,c.fillRect(0,0,n.width,n.height);const u=Yk(o),d=bg(u),h=new Map(u.map(v=>[v.id,v]));c.save(),Jk(c,n,a);for(const v of u)v.render.layer!=="effects"&&!d.has(v.id)&&zv(c,n,v,i,h,this.maskCanvas,this.maskContext);c.restore();for(const v of u)v.render.layer==="effects"&&!d.has(v.id)&&zv(c,n,v,i,h,this.maskCanvas,this.maskContext);c.restore()}measureText(e,i,s,n){return this.context.font=`${n} ${s}px ${i}`,this.context.measureText(e)}}function Yk(t){const e=new Map,i=[];for(const s of t){const n=s.properties,a=n.textGroup;if(!a||n.textSplit!=="words"){i.push(s);continue}e.has(a)||e.set(a,[]),e.get(a).push(s)}for(const s of e.values())i.push(...Kk(s));return i}function Kk(t){if(t.length===0)return t;const e=Xk(),i=t[0].render,s=i.textGroupX??0;e.font=`${i.weight} ${i.size}px ${i.font}`;const n=t.map(c=>{const u=c.render;return e.measureText(String(u.value)).width}),a=e.measureText(" ").width;let l=-(n.reduce((c,u)=>c+u,0)+a*(t.length-1))/2;return t.map((c,u)=>{const d=n[u],h=l+d/2;l+=d+a;const v=c.properties,m=c.render,y=v.x,_=m.x,S=typeof _=="number"&&typeof y=="number"?_-y:0;return{...c,render:{...c.render,x:s+h+S}}})}let rd;function Xk(){return typeof document>"u"?Av:(rd||(rd=document.createElement("canvas")),rd.getContext("2d")??Av)}const Av={font:"",measureText(t){const e=Number.parseFloat(this.font.match(/(\d+(?:\.\d+)?)px/)?.[1]??"16");return{width:String(t).length*e*.52}}};function Jk(t,e,i){const s=i,n=s.zoom??1,a=s.rotation??0,o=s.x??0,l=s.y??0;t.translate(e.width/2,e.height/2),t.scale(n,n),t.rotate(a*Math.PI/180),t.translate(-(e.width/2)-o,-(e.height/2)-l)}function bg(t){const e=new Set;for(const i of t){const s=i.render,n=String(s.mask??"");n&&n!=="none"&&s.maskVisible!==!0&&e.add(n)}return e}function zv(t,e,i,s,n,a,o){const l=i.render,c=String(l.mask??""),u=c&&c!=="none"?n.get(c):void 0;if(!u){ad(t,e,i,s,n);return}o.save(),o.setTransform(1,0,0,1,0,0),o.clearRect(0,0,a.width,a.height),o.restore(),o.save(),o.setTransform(t.getTransform()),o.globalAlpha=1,o.filter="none",o.globalCompositeOperation="source-over",ad(o,e,i,s,n),o.globalCompositeOperation=l.maskInvert===!0?"destination-out":"destination-in",ad(o,e,u,s,n),o.restore(),t.save(),t.setTransform(1,0,0,1,0,0),t.globalAlpha=1,t.filter="none",t.drawImage(a,0,0),t.restore()}function ad(t,e,i,s,n){const a=i.render,o=a.opacity;if(o<=0)return;t.save(),t.globalAlpha=o;const l=m4(a);l!=="none"&&(t.filter=l),i.kind==="text"?e4(t,e,a):i.kind==="overlay"?s4(t,e,a,s,n):i.kind==="effect"?l4(t,e,a):Zk(t,e,i,a,s),t.restore()}function Zk(t,e,i,s,n){const a=i.assetName;if(!a)return;const o=n.get(a);if(!o)return;const l=Zr(o)?o.motionlyPreviewFrame:o;if(!l?.width||!l.height)return;const c=wg(e,o,s);Sg(t,s);const u=s.rotation??0,d=s.scale??1,h=Sr(s.originX,.5),v=Sr(s.originY,.5),m=-c.width*h,y=-c.height*v;t.translate(c.x+c.width*h,c.y+c.height*v),t.rotate(u*Math.PI/180),zc(t,s),t.scale(d,d),o4(t,c.width,c.height,s,m,y);const _=s.pathProgress;if(typeof _=="number"&&o.motionlySvg?.paths.length)Qk(t,o,c,_,m,y,s);else if(o.motionlySvg?.paths.length&&!o.motionlySvg.animated&&(s.fill!==void 0||s.stroke!==void 0||s.strokeWidth!==void 0))t4(t,o.motionlySvg,c,m,y,s);else try{t.drawImage(l,m,y,c.width,c.height)}catch(S){if(!Zr(o))throw S}}function Qk(t,e,i,s,n,a,o){const l=e.motionlySvg;if(!l)return;const c=Math.max(0,Math.min(1,s)),u=Math.max(0,Math.min(1,(c-.72)/.28));if(u>0&&(t.save(),t.globalAlpha*=u,t.drawImage(e,n,a,i.width,i.height),t.restore()),c>=1)return;t.save(),t.translate(n,a),t.scale(i.width/l.width,i.height/l.height);const d=t.globalAlpha;for(const h of l.paths)h.stroke!=="none"&&(t.strokeStyle=String(o.stroke??h.stroke),t.globalAlpha=d*h.opacity,t.lineWidth=Sr(o.strokeWidth,h.strokeWidth),t.lineCap=h.lineCap,t.lineJoin=h.lineJoin,t.setLineDash([h.length,h.length]),t.lineDashOffset=h.length*(1-c),t.stroke(xg(h)));t.restore()}function t4(t,e,i,s,n,a){t.save(),t.translate(s,n),t.scale(i.width/e.width,i.height/e.height);const o=t.globalAlpha;for(const l of e.paths){const c=xg(l),u=String(a.fill??l.fill),d=String(a.stroke??l.stroke);u!=="none"&&(t.globalAlpha=o*l.fillOpacity,t.fillStyle=u,t.fill(c)),d!=="none"&&(t.globalAlpha=o*l.opacity,t.strokeStyle=d,t.lineWidth=Sr(a.strokeWidth,l.strokeWidth),t.lineCap=l.lineCap,t.lineJoin=l.lineJoin,t.stroke(c))}t.restore()}const Mv=new WeakMap;function xg(t){const e=Mv.get(t);if(e)return e;const i=new Path2D(t.d);return Mv.set(t,i),i}function e4(t,e,i){Sg(t,i),t.fillStyle=i.color??"#fff",t.font=`${i.weight} ${i.size}px ${i.font}`,t.textBaseline="middle",t.textAlign="center";const s=i.center,n=s?e.width/2+(i.x??0):i.x??0,a=s?e.height/2+(i.y??0):i.y??0,o=i.rotation??0,l=i.scale??1,c=typeof i.countDecimals=="number"?m2(i.value,String(i.countSeparator??""),i.countDecimals):String(i.value??""),u=i.tracking??0;t.translate(n,a),t.rotate(o*Math.PI/180),zc(t,i),t.scale(l,l),i4(t,c,0,0,u)}function i4(t,e,i,s,n){if(!n){t.fillText(e,i,s);return}const a=Array.from(e),o=a.map(u=>t.measureText(u).width),l=o.reduce((u,d)=>u+d,0)+n*(a.length-1);let c=i-l/2;t.textAlign="left";for(let u=0;u<a.length;u+=1){const d=a[u],h=o[u];d&&h!==void 0&&(t.fillText(d,c,s),c+=h+n)}}function s4(t,e,i,s,n){const a=String(i.parent??"");if(a){n4(t,e,i,a,s,n);return}t.fillStyle=i.fill??"#000";const o=i.revealProgress;if(typeof o=="number"){const l=Math.max(0,Math.min(1,o));if(i.revealStyle==="iris"){t.beginPath(),t.arc(e.width/2,e.height/2,Math.hypot(e.width,e.height)*l/2,0,Math.PI*2),t.fill();return}const c=String(i.revealDirection??"right");c==="left"?t.fillRect(e.width*(1-l),0,e.width*l,e.height):c==="up"?t.fillRect(0,e.height*(1-l),e.width,e.height*l):c==="down"?t.fillRect(0,0,e.width,e.height*l):t.fillRect(0,0,e.width*l,e.height);return}t.fillRect(0,0,e.width,e.height)}function n4(t,e,i,s,n,a){const o=a.get(s);if(!o||o.kind!=="image"&&o.kind!=="asset")return;const l=o.render,c=Number(l.opacity??1);if(c<=0)return;const u=o.assetName,d=u?n.get(u):void 0;if(!d)return;const h=wg(e,d,l),v=d.width||h.width,m=d.height||h.height,y=Number(l.rotation??0),_=Number(l.scale??1),S=Sr(l.originX,.5),T=Sr(l.originY,.5);t.save(),t.globalAlpha*=c,t.translate(h.x+h.width*S,h.y+h.height*T),t.rotate(y*Math.PI/180),zc(t,l),t.scale(_,_),t.translate(-h.width*S,-h.height*T),t.scale(h.width/v,h.height/m),i.clip&&(t.beginPath(),t.rect(0,0,v,m),t.clip());const I=Number(i.x??0),C=Number(i.y??0),$=Number(i.scale??1),M=Number(i.rotation??0),D=String(i.shape??"rect");t.translate(I,C),t.rotate(M*Math.PI/180),zc(t,i),t.scale($,$),r4(t,D,i,v,m,I,C),t.restore()}function r4(t,e,i,s,n,a,o){const l=String(i.fill??"none"),c=String(i.stroke??"none"),u=Number(i.strokeWidth??4),d=Number(i.width??120),h=Number(i.height??80),v=Number(i.radius??48),m=Number(i.radiusX??v),y=Number(i.radiusY??v),_=Math.max(0,Math.min(1,Number(i.pathProgress??1)));if(t.lineWidth=u,t.lineCap="round",t.lineJoin="round",l!=="none"&&(t.fillStyle=l),c!=="none"&&(t.strokeStyle=c),e==="text"){t.fillStyle=l==="none"?String(i.color??"#fff"):l,t.font=`${Number(i.weight??700)} ${Number(i.size??48)}px ${String(i.font??"sans-serif")}`,t.textAlign="center",t.textBaseline="middle",t.fillText(String(i.value??""),0,0);return}if(e==="arrow"||e==="line"){a4(t,i,_,e==="arrow");return}if(e==="spotlight"){const T=Math.max(0,Math.min(1,Number(i.revealProgress??1))),I=new Path2D;I.rect(-a,-o,s,n),I.ellipse(0,0,m*T,y*T,0,0,Math.PI*2),t.fillStyle=l==="none"?"rgba(0, 0, 0, 0.58)":l,t.fill(I,"evenodd");return}const S=new Path2D;if(e==="circle")S.arc(0,0,v,-Math.PI/2,-Math.PI/2+Math.PI*2*_);else if(e==="ellipse")S.ellipse(0,0,m,y,0,-Math.PI/2,-Math.PI/2+Math.PI*2*_);else if(e==="path"){const T=String(i.path??"");if(!T)return;const I=new Path2D(T);l!=="none"&&t.fill(I),c!=="none"&&t.stroke(I);return}else S.rect(-d/2,-h/2,d,h);l!=="none"&&_>=1&&t.fill(S),c!=="none"&&t.stroke(S)}function a4(t,e,i,s){const n=Number(e.x2??0),a=Number(e.y2??0),o=n*i,l=a*i;if(t.beginPath(),t.moveTo(0,0),t.lineTo(o,l),t.stroke(),!s||i<.92)return;const c=Math.atan2(a,n),u=Math.max(10,Number(e.strokeWidth??4)*3.5);t.beginPath(),t.moveTo(o,l),t.lineTo(o-u*Math.cos(c-Math.PI/6),l-u*Math.sin(c-Math.PI/6)),t.moveTo(o,l),t.lineTo(o-u*Math.cos(c+Math.PI/6),l-u*Math.sin(c+Math.PI/6)),t.stroke()}function zc(t,e){const i=Math.tan((e.skewX??0)*Math.PI/180),s=Math.tan((e.skewY??0)*Math.PI/180);(i||s)&&t.transform(1,s,i,1,0,0)}function o4(t,e,i,s,n=-e/2,a=-i/2){const o=s.revealProgress;if(typeof o!="number")return;const l=Math.max(0,Math.min(1,o)),c=String(s.revealDirection??"right");t.beginPath(),c==="left"?t.rect(n+e-e*l,a,e*l,i):c==="up"?t.rect(n,a+i-i*l,e,i*l):c==="down"?t.rect(n,a,e,i*l):t.rect(n,a,e*l,i),t.clip()}function l4(t,e,i){const s=i.effect;if(s==="noise"){p4(t,e,i);return}if(s==="grid"||s==="mesh"){d4(t,e,i);return}if(s==="rippleGrid"||s==="ripple-grid"){h4(t,e,i);return}if(s==="prism"){f4(t,e,i);return}c4(t,e,i)}function c4(t,e,i){const s=i.offset??0,n=i.effect??"gradientMotion",a=e.width*(.18+.68*s),o=e.height*(.32+.2*Math.sin(s*Math.PI*2)),l=t.createRadialGradient(a,o,0,a,o,e.width*.62),c=u4(n);l.addColorStop(0,c[0]),l.addColorStop(.42,c[1]),l.addColorStop(1,"rgba(0, 0, 0, 0)"),t.fillStyle=l,t.fillRect(0,0,e.width,e.height)}function u4(t){return t==="aurora"?["rgba(124, 247, 197, 0.32)","rgba(138, 180, 255, 0.2)"]:t==="codeGlow"?["rgba(88, 101, 242, 0.3)","rgba(124, 247, 197, 0.14)"]:t==="heroGlow"?["rgba(255, 255, 255, 0.18)","rgba(138, 180, 255, 0.18)"]:["rgba(124, 247, 197, 0.34)","rgba(138, 180, 255, 0.2)"]}function d4(t,e,i){const s=(i.offset??0)*48;t.strokeStyle="rgba(255, 255, 255, 0.055)",t.lineWidth=1;for(let n=-48+s;n<e.width+48;n+=48)t.beginPath(),t.moveTo(n,0),t.lineTo(n,e.height),t.stroke();for(let n=-48+s;n<e.height+48;n+=48)t.beginPath(),t.moveTo(0,n),t.lineTo(e.width,n),t.stroke()}function f4(t,e,i){const s=i.offset??0,n=i.intensity??1,a=e.width*(.5+Math.sin(s*Math.PI*2)*.08)+(i.x??0),o=e.height*(.54+Math.cos(s*Math.PI*2)*.04)+(i.y??0),l=e.height*.82,c=e.width*.32,u=s*Math.PI*2,d=t.createRadialGradient(a,o,0,a,o,e.width*.72);d.addColorStop(0,`rgba(138, 180, 255, ${.16*n})`),d.addColorStop(.42,`rgba(124, 247, 197, ${.08*n})`),d.addColorStop(1,"rgba(0, 0, 0, 0)"),t.fillStyle=d,t.fillRect(0,0,e.width,e.height),t.save(),t.translate(a,o),t.rotate(Math.sin(u)*.12);for(let v=0;v<7;v+=1){const m=v/6,y=-l*.42+m*l*.82,_=c*(1-Math.abs(m-.5)*1.35),S=170+Math.sin(u*1.8+v*.8)*80,T=(.17-v*.013)*n;t.beginPath(),t.moveTo(0,-l*.5),t.lineTo(-_,y),t.lineTo(0,l*.46),t.lineTo(_,y),t.closePath(),t.strokeStyle=`hsla(${S}, 92%, 72%, ${T})`,t.lineWidth=3+v*3.5,t.stroke()}const h=t.createLinearGradient(0,-l*.5,0,l*.5);h.addColorStop(0,`rgba(255, 255, 255, ${.18*n})`),h.addColorStop(.45,`rgba(138, 180, 255, ${.08*n})`),h.addColorStop(1,"rgba(124, 247, 197, 0)"),t.fillStyle=h,t.beginPath(),t.moveTo(0,-l*.48),t.lineTo(-c*.45,l*.28),t.lineTo(0,l*.48),t.lineTo(c*.45,l*.28),t.closePath(),t.fill(),t.restore()}function h4(t,e,i){const s=i.offset??0,n=i.intensity??1,a=i.gridSize??56,o=34*n,l=e.width/2,c=e.height/2,u=Math.hypot(l,c);t.lineWidth=i.gridThickness??1,t.strokeStyle=i.color??"rgba(255, 255, 255, 0.22)";for(let h=-a;h<=e.width+a;h+=a){t.beginPath();for(let v=0;v<=e.height;v+=18){const m=Math.hypot(h-l,v-c)/u,y=Math.sin(m*28-s*Math.PI*6)*o*(1-m);v===0?t.moveTo(h+y,v):t.lineTo(h+y,v)}t.stroke()}for(let h=-a;h<=e.height+a;h+=a){t.beginPath();for(let v=0;v<=e.width;v+=18){const m=Math.hypot(v-l,h-c)/u,y=Math.sin(m*28-s*Math.PI*6)*o*(1-m);v===0?t.moveTo(v,h+y):t.lineTo(v,h+y)}t.stroke()}const d=t.createRadialGradient(l,c,e.width*.18,l,c,e.width*.7);d.addColorStop(0,"rgba(0, 0, 0, 0)"),d.addColorStop(1,"rgba(0, 0, 0, 0.72)"),t.fillStyle=d,t.fillRect(0,0,e.width,e.height)}function p4(t,e,i){const n=Math.floor((i.offset??0)*60);t.fillStyle="rgba(255, 255, 255, 0.32)";for(let a=0;a<e.height;a+=6)for(let o=0;o<e.width;o+=6)v4(o,a,n)>.92&&t.fillRect(o,a,1,1)}function v4(t,e,i){const s=Math.sin(t*12.9898+e*78.233+i*37.719)*43758.5453;return s-Math.floor(s)}function wg(t,e,i){const s=e.width,n=e.height,a=i.cover,o=i.center,l=i.x??0,c=i.y??0,u=i.width,d=i.height;if(a){const _=i.overscan??1.18,S=Math.max(t.width/s,t.height/n)*_,T=s*S,I=n*S;return{x:(t.width-T)/2+l,y:(t.height-I)/2+c,width:T,height:I}}const h=u??(d?s*(d/n):s),v=d??n*(h/s),m=o?(t.width-h)/2+l:l,y=o?(t.height-v)/2+c:c;return{x:m,y,width:h,height:v}}function Sr(t,e){const i=typeof t=="number"?t:Number(t);return Number.isFinite(i)?i:e}function $r(t,e,i,s){return Math.min(s,Math.max(i,Sr(t,e)))}function m4(t){const e=[],i=$r(t.blur,0,0,100),s=$r(t.brightness,1,0,10),n=$r(t.contrast,1,0,10),a=$r(t.saturation,1,0,10),o=Sr(t.hue,0),l=$r(t.grayscale,0,0,1),c=$r(t.sepia,0,0,1),u=$r(t.invert,0,0,1);return i!==0&&e.push(`blur(${i}px)`),s!==1&&e.push(`brightness(${s})`),n!==1&&e.push(`contrast(${n})`),a!==1&&e.push(`saturate(${a})`),o!==0&&e.push(`hue-rotate(${o}deg)`),l!==0&&e.push(`grayscale(${l})`),c!==0&&e.push(`sepia(${c})`),u!==0&&e.push(`invert(${u})`),e.length?e.join(" "):"none"}function Sg(t,e){const i=e.shadow;if(!i){t.shadowBlur=0;return}t.shadowColor="rgba(0, 0, 0, 0.28)",t.shadowBlur=i,t.shadowOffsetY=i/3}var Iv=Object.defineProperty,kg=(t,e)=>{let i={};for(var s in t)Iv(i,s,{get:t[s],enumerable:!0});return Iv(i,Symbol.toStringTag,{value:"Module"}),i};const od=Math.pow(2,32),Ai=Math.pow(2,32)-1,_4=131072,g4=1024,y4=2048;var or=class Eg extends ArrayBuffer{constructor(e){super(e),this.fileStart=0,this.usedBytes=0}static fromArrayBuffer(e,i){const s=new Eg(e.byteLength);return new Uint8Array(s).set(new Uint8Array(e)),s.fileStart=i,s}},Qi=class Pe{static{this.ENDIANNESS=new Int8Array(new Int16Array([1]).buffer)[0]>0?2:1}constructor(e,i,s){this._byteLength=0,this.failurePosition=0,this._dynamicSize=1,this._byteOffset=i||0,e instanceof ArrayBuffer?this.buffer=or.fromArrayBuffer(e,0):e instanceof DataView?(this.dataView=e,i&&(this._byteOffset+=i)):this.buffer=new or(e||0),this.position=0,this.endianness=s||1}getPosition(){return this.position}_realloc(e){if(!this._dynamicSize)return;const i=this._byteOffset+this.position+e;let s=this._buffer.byteLength;if(i<=s){i>this._byteLength&&(this._byteLength=i);return}for(s<1&&(s=1);i>s;)s*=2;const n=new or(s),a=new Uint8Array(this._buffer);new Uint8Array(n,0,a.length).set(a),this.buffer=n,this._byteLength=i}_trimAlloc(){if(this._byteLength===this._buffer.byteLength)return;const e=new or(this._byteLength),i=new Uint8Array(e),s=new Uint8Array(this._buffer,0,i.length);i.set(s),this.buffer=e}get byteLength(){return this._byteLength-this._byteOffset}get buffer(){return this._trimAlloc(),this._buffer}set buffer(e){this._buffer=e,this._dataView=new DataView(e,this._byteOffset),this._byteLength=e.byteLength}get byteOffset(){return this._byteOffset}set byteOffset(e){this._byteOffset=e,this._dataView=new DataView(this._buffer,this._byteOffset),this._byteLength=this._buffer.byteLength}get dataView(){return this._dataView}set dataView(e){this._byteOffset=e.byteOffset,this._buffer=or.fromArrayBuffer(e.buffer,0),this._dataView=new DataView(this._buffer,this._byteOffset),this._byteLength=this._byteOffset+e.byteLength}seek(e){const i=Math.max(0,Math.min(this.byteLength,e));this.position=isNaN(i)||!isFinite(i)?0:i}isEof(){return this.position>=this._byteLength}#t(e){return Array.isArray(e)&&e.length===3&&e[0]==="[]"}mapUint8Array(e){this._realloc(e*1);const i=new Uint8Array(this._buffer,this.byteOffset+this.position,e);return this.position+=e*1,i}readInt32Array(e,i){e=e===void 0?this.byteLength-this.position/4:e;const s=new Int32Array(e);return Pe.memcpy(s.buffer,0,this.buffer,this.byteOffset+this.position,e*s.BYTES_PER_ELEMENT),Pe.arrayToNative(s,i??this.endianness),this.position+=s.byteLength,s}readInt16Array(e,i){e=e===void 0?this.byteLength-this.position/2:e;const s=new Int16Array(e);return Pe.memcpy(s.buffer,0,this.buffer,this.byteOffset+this.position,e*s.BYTES_PER_ELEMENT),Pe.arrayToNative(s,i??this.endianness),this.position+=s.byteLength,s}readInt8Array(e){e=e===void 0?this.byteLength-this.position:e;const i=new Int8Array(e);return Pe.memcpy(i.buffer,0,this.buffer,this.byteOffset+this.position,e*i.BYTES_PER_ELEMENT),this.position+=i.byteLength,i}readUint32Array(e,i){e=e===void 0?this.byteLength-this.position/4:e;const s=new Uint32Array(e);return Pe.memcpy(s.buffer,0,this.buffer,this.byteOffset+this.position,e*s.BYTES_PER_ELEMENT),Pe.arrayToNative(s,i??this.endianness),this.position+=s.byteLength,s}readUint16Array(e,i){e=e===void 0?this.byteLength-this.position/2:e;const s=new Uint16Array(e);return Pe.memcpy(s.buffer,0,this.buffer,this.byteOffset+this.position,e*s.BYTES_PER_ELEMENT),Pe.arrayToNative(s,i??this.endianness),this.position+=s.byteLength,s}readUint8Array(e){e=e===void 0?this.byteLength-this.position:e;const i=new Uint8Array(e);return Pe.memcpy(i.buffer,0,this.buffer,this.byteOffset+this.position,e*i.BYTES_PER_ELEMENT),this.position+=i.byteLength,i}readFloat64Array(e,i){e=e===void 0?this.byteLength-this.position/8:e;const s=new Float64Array(e);return Pe.memcpy(s.buffer,0,this.buffer,this.byteOffset+this.position,e*s.BYTES_PER_ELEMENT),Pe.arrayToNative(s,i??this.endianness),this.position+=s.byteLength,s}readFloat32Array(e,i){e=e===void 0?this.byteLength-this.position/4:e;const s=new Float32Array(e);return Pe.memcpy(s.buffer,0,this.buffer,this.byteOffset+this.position,e*s.BYTES_PER_ELEMENT),Pe.arrayToNative(s,i??this.endianness),this.position+=s.byteLength,s}readInt32(e){const i=this._dataView.getInt32(this.position,(e??this.endianness)===2);return this.position+=4,i}readInt16(e){const i=this._dataView.getInt16(this.position,(e??this.endianness)===2);return this.position+=2,i}readInt8(){const e=this._dataView.getInt8(this.position);return this.position+=1,e}readUint32(e){const i=this._dataView.getUint32(this.position,(e??this.endianness)===2);return this.position+=4,i}readUint16(e){const i=this._dataView.getUint16(this.position,(e??this.endianness)===2);return this.position+=2,i}readUint8(){const e=this._dataView.getUint8(this.position);return this.position+=1,e}readFloat32(e){const i=this._dataView.getFloat32(this.position,(e??this.endianness)===2);return this.position+=4,i}readFloat64(e){const i=this._dataView.getFloat64(this.position,(e??this.endianness)===2);return this.position+=8,i}static memcpy(e,i,s,n,a){const o=new Uint8Array(e,i,a),l=new Uint8Array(s,n,a);o.set(l)}static arrayToNative(e,i){return i===Pe.ENDIANNESS?e:this.flipArrayEndianness(e)}static nativeToEndian(e,i){return i&&Pe.ENDIANNESS===2?e:this.flipArrayEndianness(e)}static flipArrayEndianness(e){const i=new Uint8Array(e.buffer,e.byteOffset,e.byteLength);for(let s=0;s<e.byteLength;s+=e.BYTES_PER_ELEMENT)for(let n=s+e.BYTES_PER_ELEMENT-1,a=s;n>a;n--,a++){const o=i[a];i[a]=i[n],i[n]=o}return e}readString(e,i){return i===void 0||i==="ASCII"?Cv(this.mapUint8Array(e===void 0?this.byteLength-this.position:e)):new TextDecoder(i).decode(this.mapUint8Array(e))}readCString(e){let i=0;const s=this.byteLength-this.position,n=new Uint8Array(this._buffer,this._byteOffset+this.position),a=e!==void 0?Math.min(e,s):s;for(;i<a&&n[i]!==0;i++);const o=Cv(this.mapUint8Array(i));return e!==void 0?this.position+=a-i:i!==s&&(this.position+=1),o}readInt64(){return this.readInt32()*od+this.readUint32()}readUint64(){return this.readUint32()*od+this.readUint32()}readUint24(){return(this.readUint8()<<16)+(this.readUint8()<<8)+this.readUint8()}save(e){const i=new Blob([this.buffer]);if(typeof window<"u"&&typeof document<"u")if(window.URL&&URL.createObjectURL){const s=window.URL.createObjectURL(i),n=document.createElement("a");document.body.appendChild(n),n.setAttribute("href",s),n.setAttribute("download",e),n.setAttribute("target","_self"),n.click(),window.URL.revokeObjectURL(s),document.body.removeChild(n)}else throw new Error("DataStream.save: Can't create object URL.");return i}get dynamicSize(){return this._dynamicSize}set dynamicSize(e){e||this._trimAlloc(),this._dynamicSize=e}shift(e){const i=new or(this._byteLength-e),s=new Uint8Array(i),n=new Uint8Array(this._buffer,e,s.length);s.set(n),this.buffer=i,this.position-=e}writeInt32Array(e,i){if(this._realloc(e.length*4),e instanceof Int32Array&&this.byteOffset+this.position%e.BYTES_PER_ELEMENT===0)Pe.memcpy(this._buffer,this.byteOffset+this.position,e.buffer,0,e.byteLength),this.mapInt32Array(e.length,i);else for(let s=0;s<e.length;s++)this.writeInt32(e[s],i)}writeInt16Array(e,i){if(this._realloc(e.length*2),e instanceof Int16Array&&this.byteOffset+this.position%e.BYTES_PER_ELEMENT===0)Pe.memcpy(this._buffer,this.byteOffset+this.position,e.buffer,0,e.byteLength),this.mapInt16Array(e.length,i);else for(let s=0;s<e.length;s++)this.writeInt16(e[s],i)}writeInt8Array(e){if(this._realloc(e.length*1),e instanceof Int8Array&&this.byteOffset+this.position%e.BYTES_PER_ELEMENT===0)Pe.memcpy(this._buffer,this.byteOffset+this.position,e.buffer,0,e.byteLength),this.mapInt8Array(e.length);else for(let i=0;i<e.length;i++)this.writeInt8(e[i])}writeUint32Array(e,i){if(this._realloc(e.length*4),e instanceof Uint32Array&&this.byteOffset+this.position%e.BYTES_PER_ELEMENT===0)Pe.memcpy(this._buffer,this.byteOffset+this.position,e.buffer,0,e.byteLength),this.mapUint32Array(e.length,i);else for(let s=0;s<e.length;s++)this.writeUint32(e[s],i)}writeUint16Array(e,i){if(this._realloc(e.length*2),e instanceof Uint16Array&&this.byteOffset+this.position%e.BYTES_PER_ELEMENT===0)Pe.memcpy(this._buffer,this.byteOffset+this.position,e.buffer,0,e.byteLength),this.mapUint16Array(e.length,i);else for(let s=0;s<e.length;s++)this.writeUint16(e[s],i)}writeUint8Array(e){if(this._realloc(e.length*1),e instanceof Uint8Array&&this.byteOffset+this.position%e.BYTES_PER_ELEMENT===0)Pe.memcpy(this._buffer,this.byteOffset+this.position,e.buffer,0,e.byteLength),this.mapUint8Array(e.length);else for(let i=0;i<e.length;i++)this.writeUint8(e[i])}writeFloat64Array(e,i){if(this._realloc(e.length*8),e instanceof Float64Array&&this.byteOffset+this.position%e.BYTES_PER_ELEMENT===0)Pe.memcpy(this._buffer,this.byteOffset+this.position,e.buffer,0,e.byteLength),this.mapFloat64Array(e.length,i);else for(let s=0;s<e.length;s++)this.writeFloat64(e[s],i)}writeFloat32Array(e,i){if(this._realloc(e.length*4),e instanceof Float32Array&&this.byteOffset+this.position%e.BYTES_PER_ELEMENT===0)Pe.memcpy(this._buffer,this.byteOffset+this.position,e.buffer,0,e.byteLength),this.mapFloat32Array(e.length,i);else for(let s=0;s<e.length;s++)this.writeFloat32(e[s],i)}writeInt64(e,i){this._realloc(8),this._dataView.setBigInt64(this.position,BigInt(e),(i??this.endianness)===2),this.position+=8}writeInt32(e,i){this._realloc(4),this._dataView.setInt32(this.position,e,(i??this.endianness)===2),this.position+=4}writeInt16(e,i){this._realloc(2),this._dataView.setInt16(this.position,e,(i??this.endianness)===2),this.position+=2}writeInt8(e){this._realloc(1),this._dataView.setInt8(this.position,e),this.position+=1}writeUint32(e,i){this._realloc(4),this._dataView.setUint32(this.position,e,(i??this.endianness)===2),this.position+=4}writeUint16(e,i){this._realloc(2),this._dataView.setUint16(this.position,e,(i??this.endianness)===2),this.position+=2}writeUint8(e){this._realloc(1),this._dataView.setUint8(this.position,e),this.position+=1}writeFloat32(e,i){this._realloc(4),this._dataView.setFloat32(this.position,e,(i??this.endianness)===2),this.position+=4}writeFloat64(e,i){this._realloc(8),this._dataView.setFloat64(this.position,e,(i??this.endianness)===2),this.position+=8}writeUCS2String(e,i,s){s===void 0&&(s=e.length);let n;for(n=0;n<e.length&&n<s;n++)this.writeUint16(e.charCodeAt(n),i);for(;n<s;n++)this.writeUint16(0)}writeString(e,i,s){let n=0;if(i===void 0||i==="ASCII")if(s!==void 0){const a=Math.min(e.length,s);for(n=0;n<a;n++)this.writeUint8(e.charCodeAt(n));for(;n<s;n++)this.writeUint8(0)}else for(n=0;n<e.length;n++)this.writeUint8(e.charCodeAt(n));else this.writeUint8Array(new TextEncoder(i).encode(e.substring(0,s)))}writeCString(e,i){let s=0;if(i!==void 0){const n=Math.min(e.length,i);for(s=0;s<n;s++)this.writeUint8(e.charCodeAt(s));for(;s<i;s++)this.writeUint8(0)}else{for(s=0;s<e.length;s++)this.writeUint8(e.charCodeAt(s));this.writeUint8(0)}}writeStruct(e,i){for(let s=0;s<e.length;s++){const[n,a]=e[s],o=i[n];this.writeType(a,o,i)}}writeType(e,i,s){if(typeof e=="function")return e(this,i);if(typeof e=="object"&&!(e instanceof Array))return e.set(this,i,s);let n,a="ASCII";const o=this.position;let l=e;if(typeof e=="string"&&/:/.test(e)){const c=e.split(":");l=c[0],n=parseInt(c[1])}if(typeof l=="string"&&/,/.test(l)){const c=l.split(",");l=c[0],a=c[1]}switch(l){case"uint8":this.writeUint8(i);break;case"int8":this.writeInt8(i);break;case"uint16":this.writeUint16(i,this.endianness);break;case"int16":this.writeInt16(i,this.endianness);break;case"uint32":this.writeUint32(i,this.endianness);break;case"int32":this.writeInt32(i,this.endianness);break;case"float32":this.writeFloat32(i,this.endianness);break;case"float64":this.writeFloat64(i,this.endianness);break;case"uint16be":this.writeUint16(i,1);break;case"int16be":this.writeInt16(i,1);break;case"uint32be":this.writeUint32(i,1);break;case"int32be":this.writeInt32(i,1);break;case"float32be":this.writeFloat32(i,1);break;case"float64be":this.writeFloat64(i,1);break;case"uint16le":this.writeUint16(i,2);break;case"int16le":this.writeInt16(i,2);break;case"uint32le":this.writeUint32(i,2);break;case"int32le":this.writeInt32(i,2);break;case"float32le":this.writeFloat32(i,2);break;case"float64le":this.writeFloat64(i,2);break;case"cstring":this.writeCString(i,n);break;case"string":this.writeString(i,a,n);break;case"u16string":this.writeUCS2String(i,this.endianness,n);break;case"u16stringle":this.writeUCS2String(i,2,n);break;case"u16stringbe":this.writeUCS2String(i,1,n);break;default:if(this.#t(l)){const[,c]=l;for(let u=0;u<i.length;u++)this.writeType(c,i[u]);break}else{this.writeStruct(l,i);break}}n&&(this.position=o,this._realloc(n),this.position=o+n)}writeUint64(e){const i=Math.floor(e/od);this.writeUint32(i),this.writeUint32(e&4294967295)}writeUint24(e){this.writeUint8((e&16711680)>>16),this.writeUint8((e&65280)>>8),this.writeUint8(e&255)}adjustUint32(e,i){const s=this.position;this.seek(e),this.writeUint32(i),this.seek(s)}readStruct(e){const i={},s=this.position;for(let n=0;n<e.length;n+=1){const a=e[n][1],o=this.readType(a,i);if(!o){this.failurePosition===0&&(this.failurePosition=this.position),this.position=s;return}i[e[n][0]]=o}return i}readUCS2String(e,i){return String.fromCharCode.apply(void 0,this.readUint16Array(e,i))}readType(e,i){if(typeof e=="function")return e(this,i);if(typeof e=="object"&&!(e instanceof Array))return e.get(this,i);if(e instanceof Array&&e.length!==3)return this.readStruct(e);let s,n,a="ASCII";const o=this.position;let l=e;if(typeof l=="string"&&/:/.test(l)){const c=l.split(":");l=c[0],n=parseInt(c[1])}if(typeof l=="string"&&/,/.test(l)){const c=l.split(",");l=c[0],a=c[1]}switch(l){case"uint8":s=this.readUint8();break;case"int8":s=this.readInt8();break;case"uint16":s=this.readUint16(this.endianness);break;case"int16":s=this.readInt16(this.endianness);break;case"uint32":s=this.readUint32(this.endianness);break;case"int32":s=this.readInt32(this.endianness);break;case"float32":s=this.readFloat32(this.endianness);break;case"float64":s=this.readFloat64(this.endianness);break;case"uint16be":s=this.readUint16(1);break;case"int16be":s=this.readInt16(1);break;case"uint32be":s=this.readUint32(1);break;case"int32be":s=this.readInt32(1);break;case"float32be":s=this.readFloat32(1);break;case"float64be":s=this.readFloat64(1);break;case"uint16le":s=this.readUint16(2);break;case"int16le":s=this.readInt16(2);break;case"uint32le":s=this.readUint32(2);break;case"int32le":s=this.readInt32(2);break;case"float32le":s=this.readFloat32(2);break;case"float64le":s=this.readFloat64(2);break;case"cstring":s=this.readCString(n);break;case"string":s=this.readString(n,a);break;case"u16string":s=this.readUCS2String(n,this.endianness);break;case"u16stringle":s=this.readUCS2String(n,2);break;case"u16stringbe":s=this.readUCS2String(n,1);break;default:if(this.#t(l)){const[,c,u]=l,d=typeof u=="function"?u(i,this,l):typeof u=="string"&&i[u]!==void 0?parseInt(i[u]):typeof u=="number"?u:u==="*"?void 0:parseInt(u);if(typeof c=="string"){const h=c.replace(/(le|be)$/,"");let v;switch(/le$/.test(c)?v=2:/be$/.test(c)&&(v=1),h){case"uint8":s=this.readUint8Array(d);break;case"uint16":s=this.readUint16Array(d,v);break;case"uint32":s=this.readUint32Array(d,v);break;case"int8":s=this.readInt8Array(d);break;case"int16":s=this.readInt16Array(d,v);break;case"int32":s=this.readInt32Array(d,v);break;case"float32":s=this.readFloat32Array(d,v);break;case"float64":s=this.readFloat64Array(d,v);break;case"cstring":case"utf16string":case"string":if(d){s=new Array(d);for(let m=0;m<d;m++)s[m]=this.readType(c,i)}else for(s=[];!this.isEof();){const m=this.readType(c,i);if(!m)break;s.push(m)}break}}else if(d){s=new Array(d);for(let h=0;h<d;h++){const v=this.readType(c,i);if(!v)return;s[h]=v}}else for(s=[];;){const h=this.position;try{const v=this.readType(c,i);if(!v){this.position=h;break}s.push(v)}catch{this.position=h;break}}break}}return n&&(this.position=o+n),s}mapInt32Array(e,i){this._realloc(e*4);const s=new Int32Array(this._buffer,this.byteOffset+this.position,e);return Pe.arrayToNative(s,i??this.endianness),this.position+=e*4,s}mapInt16Array(e,i){this._realloc(e*2);const s=new Int16Array(this._buffer,this.byteOffset+this.position,e);return Pe.arrayToNative(s,i??this.endianness),this.position+=e*2,s}mapInt8Array(e,i){this._realloc(e*1);const s=new Int8Array(this._buffer,this.byteOffset+this.position,e);return this.position+=e*1,s}mapUint32Array(e,i){this._realloc(e*4);const s=new Uint32Array(this._buffer,this.byteOffset+this.position,e);return Pe.arrayToNative(s,i??this.endianness),this.position+=e*4,s}mapUint16Array(e,i){this._realloc(e*2);const s=new Uint16Array(this._buffer,this.byteOffset+this.position,e);return Pe.arrayToNative(s,i??this.endianness),this.position+=e*2,s}mapFloat64Array(e,i){this._realloc(e*8);const s=new Float64Array(this._buffer,this.byteOffset+this.position,e);return Pe.arrayToNative(s,i??this.endianness),this.position+=e*8,s}mapFloat32Array(e,i){this._realloc(e*4);const s=new Float32Array(this._buffer,this.byteOffset+this.position,e);return Pe.arrayToNative(s,i??this.endianness),this.position+=e*4,s}};function Cv(t){const e=[];for(let i=0;i<t.length;i++)e[i]=t[i];return String.fromCharCode.apply(void 0,e)}const Rl=new Date,rc=4,$v=3,Ov=2,Nv=1;let Rn=rc;const q={setLogLevel(t){t===this.debug?Rn=Nv:t===this.info?Rn=Ov:t===this.warn?Rn=$v:(this.error,Rn=rc)},debug(t,e){console.debug===void 0&&(console.debug=console.log),Nv>=Rn&&console.debug("["+q.getDurationString(new Date().getTime()-Rl.getTime(),1e3)+"]","["+t+"]",e)},log(t,e){this.debug(t.msg)},info(t,e){Ov>=Rn&&console.info("["+q.getDurationString(new Date().getTime()-Rl.getTime(),1e3)+"]","["+t+"]",e)},warn(t,e){$v>=Rn&&console.warn("["+q.getDurationString(new Date().getTime()-Rl.getTime(),1e3)+"]","["+t+"]",e)},error(t,e,i){i?.onError?i.onError(t,e):rc>=Rn&&console.error("["+q.getDurationString(new Date().getTime()-Rl.getTime(),1e3)+"]","["+t+"]",e)},getDurationString(t,e){let i;function s(c,u){const d=(""+c).split(".");for(;d[0].length<u;)d[0]="0"+d[0];return d.join(".")}t<0?(i=!0,t=-t):i=!1;let n=t/(e||1);const a=Math.floor(n/3600);n-=a*3600;const o=Math.floor(n/60);n-=o*60;let l=n*1e3;return n=Math.floor(n),l-=n*1e3,l=Math.floor(l),(i?"-":"")+a+":"+s(o,2)+":"+s(n,2)+"."+s(l,3)},printRanges(t){const e=t.length;if(e>0){let i="";for(let s=0;s<e;s++)s>0&&(i+=","),i+="["+q.getDurationString(t.start(s))+","+q.getDurationString(t.end(s))+"]";return i}else return"(empty)"}};function b4(t,e){q.debug("ArrayBuffer","Trying to create a new buffer of size: "+(t.byteLength+e.byteLength));const i=new Uint8Array(t.byteLength+e.byteLength);return i.set(new Uint8Array(t),0),i.set(new Uint8Array(e),t.byteLength),i.buffer}var ac=class extends Qi{constructor(t){super(new ArrayBuffer,0),this.buffers=[],this.bufferIndex=-1,t&&(this.insertBuffer(t),this.bufferIndex=0)}initialized(){if(this.bufferIndex>-1)return!0;if(this.buffers.length>0){const t=this.buffers[0];return t.fileStart===0?(this.buffer=t,this.bufferIndex=0,q.debug("MultiBufferStream","Stream ready for parsing"),!0):(q.warn("MultiBufferStream","The first buffer should have a fileStart of 0"),this.logBufferLevel(),!1)}else return q.warn("MultiBufferStream","No buffer to start parsing from"),this.logBufferLevel(),!1}reduceBuffer(t,e,i){const s=new Uint8Array(i);return s.set(new Uint8Array(t,e,i)),s.buffer.fileStart=t.fileStart+e,s.buffer.usedBytes=0,s.buffer}insertBuffer(t){let e=!0,i=0;for(;i<this.buffers.length;i++){const s=this.buffers[i];if(t.fileStart<=s.fileStart){if(t.fileStart===s.fileStart)if(t.byteLength>s.byteLength){this.buffers.splice(i,1),i--;continue}else q.warn("MultiBufferStream","Buffer (fileStart: "+t.fileStart+" - Length: "+t.byteLength+") already appended, ignoring");else t.fileStart+t.byteLength<=s.fileStart||(t=this.reduceBuffer(t,0,s.fileStart-t.fileStart)),q.debug("MultiBufferStream","Appending new buffer (fileStart: "+t.fileStart+" - Length: "+t.byteLength+")"),this.buffers.splice(i,0,t),i===0&&(this.buffer=t);e=!1;break}else if(t.fileStart<s.fileStart+s.byteLength){const n=s.fileStart+s.byteLength-t.fileStart,a=t.byteLength-n;if(a>0)t=this.reduceBuffer(t,n,a);else{e=!1;break}}}e&&(q.debug("MultiBufferStream","Appending new buffer (fileStart: "+t.fileStart+" - Length: "+t.byteLength+")"),this.buffers.push(t),i===0&&(this.buffer=t))}logBufferLevel(t){const e=[];let i="",s,n=0,a=0;for(let l=0;l<this.buffers.length;l++){const c=this.buffers[l];l===0?(s={start:c.fileStart,end:c.fileStart+c.byteLength},e.push(s),i+="["+s.start+"-"):s.end===c.fileStart?s.end=c.fileStart+c.byteLength:(s={start:c.fileStart,end:c.fileStart+c.byteLength},i+=e[e.length-1].end-1+"], ["+s.start+"-",e.push(s)),n+=c.usedBytes,a+=c.byteLength}e.length>0&&(i+=s.end-1+"]");const o=t?q.info:q.debug;this.buffers.length===0?o("MultiBufferStream","No more buffer in memory"):o("MultiBufferStream",""+this.buffers.length+" stored buffer(s) ("+n+"/"+a+" bytes), continuous ranges: "+i)}cleanBuffers(){for(let t=0;t<this.buffers.length;t++){const e=this.buffers[t];e.usedBytes===e.byteLength&&(q.debug("MultiBufferStream","Removing buffer #"+t),this.buffers.splice(t,1),t--)}}mergeNextBuffer(){if(this.bufferIndex+1<this.buffers.length){const t=this.buffers[this.bufferIndex+1];if(t.fileStart===this.buffer.fileStart+this.buffer.byteLength){const e=this.buffer.byteLength,i=this.buffer.usedBytes,s=this.buffer.fileStart;return this.buffers[this.bufferIndex]=b4(this.buffer,t),this.buffer=this.buffers[this.bufferIndex],this.buffers.splice(this.bufferIndex+1,1),this.buffer.usedBytes=i,this.buffer.fileStart=s,q.debug("ISOFile","Concatenating buffer for box parsing (length: "+e+"->"+this.buffer.byteLength+")"),!0}else return!1}else return!1}findPosition(t,e,i){let s=-1,n=t===!0?0:this.bufferIndex;for(;n<this.buffers.length;){const o=this.buffers[n];if(o&&o.fileStart<=e)s=n,i&&(o.fileStart+o.byteLength<=e?o.usedBytes=o.byteLength:o.usedBytes=e-o.fileStart,this.logBufferLevel());else break;n++}if(s===-1)return-1;const a=this.buffers[s];return a.fileStart+a.byteLength>=e?(q.debug("MultiBufferStream","Found position in existing buffer #"+s),s):-1}findEndContiguousBuf(t){const e=t!==void 0?t:this.bufferIndex;let i=this.buffers[e];if(this.buffers.length>e+1)for(let s=e+1;s<this.buffers.length;s++){const n=this.buffers[s];if(n.fileStart===i.fileStart+i.byteLength)i=n;else break}return i.fileStart+i.byteLength}getEndFilePositionAfter(t){const e=this.findPosition(!0,t,!1);return e!==-1?this.findEndContiguousBuf(e):t}addUsedBytes(t){this.buffer.usedBytes+=t,this.logBufferLevel()}setAllUsedBytes(){this.buffer.usedBytes=this.buffer.byteLength,this.logBufferLevel()}seek(t,e,i){const s=this.findPosition(e,t,i);return s!==-1?(this.buffer=this.buffers[s],this.bufferIndex=s,this.position=t-this.buffer.fileStart,q.debug("MultiBufferStream","Repositioning parser at buffer position: "+this.position),!0):(q.debug("MultiBufferStream","Position "+t+" not found in buffered data"),!1)}getPosition(){return this.bufferIndex===-1||this.buffers[this.bufferIndex]===void 0?0:this.buffers[this.bufferIndex].fileStart+this.position}getLength(){return this.byteLength}getEndPosition(){return this.bufferIndex===-1||this.buffers[this.bufferIndex]===void 0?0:this.buffers[this.bufferIndex].fileStart+this.byteLength}getAbsoluteEndPosition(){if(this.buffers.length===0)return 0;const t=this.buffers[this.buffers.length-1];return t.fileStart+t.byteLength}},mt=class{static{this.registryId=Symbol.for("BoxIdentifier")}#t;get type(){return this.constructor.fourcc??this.#t}set type(t){this.#t=t}constructor(t=0){this.size=t}addBox(t){return this.boxes||(this.boxes=[]),this.boxes.push(t),this[t.type+"s"]?this[t.type+"s"].push(t):this[t.type]=t,t}set(t,e){return this[t]=e,this}addEntry(t,e){const i=e||"entries";return this[i]||(this[i]=[]),this[i].push(t),this}writeHeader(t,e){if(this.size+=8,(this.size>Ai||this.original_size===1)&&(this.size+=8),this.type==="uuid"&&(this.size+=16),q.debug("BoxWriter","Writing box "+this.type+" of size: "+this.size+" at position "+t.getPosition()+(e||"")),this.original_size===0?t.writeUint32(0):this.size>Ai||this.original_size===1?t.writeUint32(1):(this.sizePosition=t.getPosition(),t.writeUint32(this.size)),t.writeString(this.type,void 0,4),this.type==="uuid"){const i=new Uint8Array(16);for(let s=0;s<16;s++)i[s]=parseInt(this.uuid.substring(s*2,s*2+2),16);t.writeUint8Array(i)}(this.size>Ai||this.original_size===1)&&(this.sizePosition=t.getPosition(),t.writeUint64(this.size))}write(t){if(this.type==="mdat"){const e=this;if(e.stream){this.size=e.stream.getAbsoluteEndPosition(),this.writeHeader(t);for(const i of e.stream.buffers){const s=new Uint8Array(i);t.writeUint8Array(s)}}else e.data&&(this.size=e.data.length,this.writeHeader(t),t.writeUint8Array(e.data))}else this.size=this.data?this.data.length:0,this.writeHeader(t),this.data&&t.writeUint8Array(this.data)}printHeader(t){this.size+=8,this.size>Ai&&(this.size+=8),this.type==="uuid"&&(this.size+=16),t.log(t.indent+"size:"+this.size),t.log(t.indent+"type:"+this.type)}print(t){this.printHeader(t)}parse(t){this.type!=="mdat"?this.data=t.readUint8Array(this.size-this.hdr_size):this.size===0?t.seek(t.getEndPosition()):t.seek(this.start+this.size)}parseDataAndRewind(t){this.data=t.readUint8Array(this.size-this.hdr_size),t.seek(this.start+this.hdr_size)}parseLanguage(t){this.language=t.readUint16();const e=[];e[0]=this.language>>10&31,e[1]=this.language>>5&31,e[2]=this.language&31,this.languageString=String.fromCharCode(e[0]+96,e[1]+96,e[2]+96)}computeSize(t){const e=t||new ac;this.write(e)}isEndOfBox(t){return t.getPosition()===this.start+this.size}},Z=class extends mt{constructor(...t){super(...t),this.flags=0,this.version=0}writeHeader(t){this.size+=4,super.writeHeader(t," v="+this.version+" f="+this.flags),t.writeUint8(this.version),t.writeUint24(this.flags)}printHeader(t){this.size+=4,super.printHeader(t),t.log(t.indent+"version:"+this.version),t.log(t.indent+"flags:"+this.flags)}parseDataAndRewind(t){this.parseFullHeader(t),this.data=t.readUint8Array(this.size-this.hdr_size),this.hdr_size-=4,t.seek(this.start+this.hdr_size)}parseFullHeader(t){this.version=t.readUint8(),this.flags=t.readUint24(),this.hdr_size+=4}parse(t){this.parseFullHeader(t),this.data=t.readUint8Array(this.size-this.hdr_size)}},Ei=class{static{this.registryId=Symbol.for("SampleGroupEntryIdentifier")}constructor(t){this.grouping_type=t}write(t){t.writeUint8Array(this.data)}parse(t){q.warn("BoxParser",`Unknown sample group type: '${this.grouping_type}'`),this.data=t.readUint8Array(this.description_length)}},x4=class extends Z{parse(t){this.parseFullHeader(t),this.track_group_id=t.readUint32()}},w4=class extends mt{constructor(t,e,i,s,n){super(e),this.box_name=i,this.hdr_size=s,this.start=n,this.type=t}parse(t){this.from_item_ID=t.readUint16();const e=t.readUint16();this.references=[];for(let i=0;i<e;i++)this.references[i]={to_item_ID:t.readUint16()}}},S4=class extends mt{constructor(t,e,i,s,n){super(e),this.box_name=i,this.hdr_size=s,this.start=n,this.type=t}parse(t){this.from_item_ID=t.readUint32();const e=t.readUint16();this.references=[];for(let i=0;i<e;i++)this.references[i]={to_item_ID:t.readUint32()}}},k4=class extends mt{constructor(t,e,i,s){super(e),this.hdr_size=i,this.start=s,this.type=t}parse(t){this.track_ids=t.readUint32Array((this.size-this.hdr_size)/4)}write(t){this.size=this.track_ids.length*4,this.writeHeader(t),t.writeUint32Array(this.track_ids)}};const Gd=["boxes","entries","references","subsamples","items","item_infos","extents","associations","subsegments","ranges","seekLists","seekPoints","esd","levels"],E4=["compatible_brands","matrix","opcolor","sample_counts","sample_deltas","first_chunk","samples_per_chunk","sample_sizes","chunk_offsets","sample_offsets","sample_description_index","sample_duration"];function B4(t,e){if(t&&!e)return!1;let i;for(i in t)if(!Gd.find(s=>s===i)){if(t[i]instanceof mt||e[i]instanceof mt)continue;if(typeof t[i]>"u"||typeof e[i]>"u")continue;if(typeof t[i]=="function"||typeof e[i]=="function")continue;if("subBoxNames"in t&&t.subBoxNames.indexOf(i.slice(0,4))>-1||"subBoxNames"in e&&e.subBoxNames.indexOf(i.slice(0,4))>-1)continue;if(i==="data"||i==="start"||i==="size"||i==="creation_time"||i==="modification_time")continue;if(E4.find(s=>s===i))continue;if(t[i]!==e[i])return!1}return!0}function Bg(t,e){if(!B4(t,e))return!1;for(let i=0;i<Gd.length;i++){const s=Gd[i];if(t[s]&&e[s]&&!Bg(t[s],e[s]))return!1}return!0}function zf(t){let e=t;for(;e;){if("registryId"in e)return e.registryId;e=Object.getPrototypeOf(e)}}const U4=t=>{const e=Symbol.for("SampleGroupEntryIdentifier");return zf(t)===e},T4=t=>{const e=Symbol.for("SampleEntryIdentifier");return zf(t)===e},P4=t=>{const e=Symbol.for("BoxIdentifier");return zf(t)===e},vs={uuid:{},sampleEntry:{},sampleGroupEntry:{},box:{}};function A4(t){const e={uuid:{},sampleEntry:{},sampleGroupEntry:{},box:{}};for(const[i,s]of Object.entries(t)){if(U4(s)){const n="grouping_type"in s?s.grouping_type:void 0;if(!n)throw new Error(`SampleGroupEntry class ${i} does not have a valid static grouping_type. Please ensure it is defined correctly.`);if(n in e.sampleGroupEntry)throw new Error(`SampleGroupEntry class ${i} has a grouping_type that is already registered. Please ensure it is unique.`);e.sampleGroupEntry[n]=s;continue}if(T4(s)){const n="fourcc"in s?s.fourcc:void 0;if(!n)throw new Error(`SampleEntry class ${i} does not have a valid static fourcc. Please ensure it is defined correctly.`);if(n in e.sampleEntry)throw new Error(`SampleEntry class ${i} has a fourcc that is already registered. Please ensure it is unique.`);e.sampleEntry[n]=s;continue}if(P4(s)){const n="fourcc"in s?s.fourcc:void 0,a="uuid"in s?s.uuid:void 0;if(n==="uuid"){if(!a)throw new Error(`Box class ${i} has a fourcc of 'uuid' but does not have a valid uuid. Please ensure it is defined correctly.`);if(a in e.uuid)throw new Error(`Box class ${i} has a uuid that is already registered. Please ensure it is unique.`);e.uuid[a]=s;continue}e.box[n]=s;continue}throw new Error(`Box class ${i} does not have a valid static fourcc, uuid, or grouping_type. Please ensure it is defined correctly.`)}return vs.uuid={...e.uuid},vs.sampleEntry={...e.sampleEntry},vs.sampleGroupEntry={...e.sampleGroupEntry},vs.box={...e.box},vs}const Mc={};function z4(t){return Object.entries(t).forEach(([e,i])=>Mc[e]=i),Mc}function M4(t){return Qr(t)}function Qr(t){let e="";for(let i=0;i<16;i++){const s=t.readUint8().toString(16);e+=s.length===1?"0"+s:s}return e}function Mn(t,e,i){let s,n;const a=t.getPosition();let o=0,l;if(t.getEndPosition()-a<8)return q.debug("BoxParser","Not enough data in stream to parse the type and size of the box"),{code:0};if(i&&i<8)return q.debug("BoxParser","Not enough bytes left in the parent box to parse a new box"),{code:0};let c=t.readUint32();const u=t.readString(4);if(u.length!==4||!/^[\x20-\x7E]{4}$/.test(u))return q.error("BoxParser",`Invalid box type: '${u}'`),{code:-1,start:a,type:u};let d=u;if(q.debug("BoxParser","Found box of type '"+u+"' and size "+c+" at position "+a),o=8,u==="uuid"){if(t.getEndPosition()-t.getPosition()<16||i-o<16)return t.seek(a),q.debug("BoxParser","Not enough bytes left in the parent box to parse a UUID box"),{code:0};l=M4(t),o+=16,d=l}if(c===1){if(t.getEndPosition()-t.getPosition()<8||i&&i-o<8)return t.seek(a),q.warn("BoxParser",'Not enough data in stream to parse the extended size of the "'+u+'" box'),{code:0};n=c,c=t.readUint64(),o+=8}else if(c===0)if(i)c=i;else{if(u!=="mdat")return q.error("BoxParser","Unlimited box size not supported for type: '"+u+"'"),s=new mt(c),s.type=u,{code:1,box:s,size:s.size};c=t.getEndPosition()-a}if(c!==0&&c<o)return q.error("BoxParser","Box of type "+u+" has an invalid size "+c+" (too small to be a box)"),{code:0,type:u,size:c,hdr_size:o,start:a};if(c!==0&&i&&c>i)return q.error("BoxParser","Box of type '"+u+"' has a size "+c+" greater than its container size "+i),{code:0,type:u,size:c,hdr_size:o,start:a};if(c!==0&&a+c>t.getEndPosition())return t.seek(a),q.info("BoxParser","Not enough data in stream to parse the entire '"+u+"' box"),{code:0,type:u,size:c,hdr_size:o,start:a,original_size:n};if(e)return{code:1,type:u,size:c,hdr_size:o,start:a};u in vs.box?s=new vs.box[u](c):u!=="uuid"?(q.warn("BoxParser",`Unknown box type: '${u}'`),s=new mt(c),s.type=u,s.has_unparsed_data=!0):l in vs.uuid?s=new vs.uuid[l](c):(q.warn("BoxParser",`Unknown UUID box type: '${l}'`),s=new mt(c),s.type=u,s.uuid=l,s.has_unparsed_data=!0),s.original_size=n,s.hdr_size=o,s.start=a,s.write===mt.prototype.write&&s.type!=="mdat"&&(q.info("BoxParser","'"+d+"' box writing not yet implemented, keeping unparsed data in memory for later write"),s.parseDataAndRewind(t)),s.parse(t);const h=t.getPosition()-(s.start+s.size);return h<0?(q.warn("BoxParser","Parsing of box '"+d+"' did not read the entire indicated box data size (missing "+-h+" bytes), seeking forward"),t.seek(s.start+s.size)):h>0&&s.size!==0&&(q.error("BoxParser","Parsing of box '"+d+"' read "+h+" more bytes than the indicated box data size, seeking backwards"),t.seek(s.start+s.size)),{code:1,box:s,size:s.size}}var Be=class extends mt{write(t){if(this.size=0,this.writeHeader(t),this.boxes)for(let e=0;e<this.boxes.length;e++)this.boxes[e]&&(this.boxes[e].write(t),this.size+=this.boxes[e].size);q.debug("BoxWriter","Adjusting box "+this.type+" with new size "+this.size),t.adjustUint32(this.sizePosition,this.size)}print(t){this.printHeader(t);for(let e=0;e<this.boxes.length;e++)if(this.boxes[e]){const i=t.indent;t.indent+=" ",this.boxes[e].print(t),t.indent=i}}parse(t){let e;for(;t.getPosition()<this.start+this.size;)if(e=Mn(t,!1,this.size-(t.getPosition()-this.start)),e.code===1){const i=e.box;if(this.boxes||(this.boxes=[]),this.boxes.push(i),this.subBoxNames&&this.subBoxNames.indexOf(i.type)!==-1){const s=this.subBoxNames[this.subBoxNames.indexOf(i.type)]+"s";this[s]||(this[s]=[]),this[s].push(i)}else{const s=i.type!=="uuid"?i.type:i.uuid;this[s]?q.warn("ContainerBox",`Box of type ${s} already exists in container box ${this.type}.`):this[s]=i}}else return}},Qn=class extends Be{static{this.registryId=Symbol.for("SampleEntryIdentifier")}constructor(t,e,i){super(t),this.hdr_size=e,this.start=i}isVideo(){return!1}isAudio(){return!1}isSubtitle(){return!1}isMetadata(){return!1}isHint(){return!1}getCodec(){return this.type.replace(".","")}getWidth(){return""}getHeight(){return""}getChannelCount(){return""}getSampleRate(){return""}getSampleSize(){return""}parseHeader(t){t.readUint8Array(6),this.data_reference_index=t.readUint16(),this.hdr_size+=8}parse(t){this.parseHeader(t),this.data=t.readUint8Array(this.size-this.hdr_size)}parseDataAndRewind(t){this.parseHeader(t),this.data=t.readUint8Array(this.size-this.hdr_size),this.hdr_size-=8,t.seek(this.start+this.hdr_size)}parseFooter(t){super.parse(t)}writeHeader(t){this.size=8,super.writeHeader(t),t.writeUint8(0),t.writeUint8(0),t.writeUint8(0),t.writeUint8(0),t.writeUint8(0),t.writeUint8(0),t.writeUint16(this.data_reference_index)}writeFooter(t){if(this.boxes)for(let e=0;e<this.boxes.length;e++)this.boxes[e].write(t),this.size+=this.boxes[e].size;q.debug("BoxWriter","Adjusting box "+this.type+" with new size "+this.size),t.adjustUint32(this.sizePosition,this.size)}write(t){this.writeHeader(t),t.writeUint8Array(this.data),this.size+=this.data.length,q.debug("BoxWriter","Adjusting box "+this.type+" with new size "+this.size),t.adjustUint32(this.sizePosition,this.size)}},Fv=class extends Qn{},Ca=class extends Qn{isMetadata(){return!0}},ta=class extends Qn{isSubtitle(){return!0}},I4=class extends Qn{},Ze=class extends Qn{parse(t){this.parseHeader(t),t.readUint16(),t.readUint16(),t.readUint32Array(3),this.width=t.readUint16(),this.height=t.readUint16(),this.horizresolution=t.readUint32(),this.vertresolution=t.readUint32(),t.readUint32(),this.frame_count=t.readUint16();const e=Math.min(31,t.readUint8());this.compressorname=t.readString(e),e<31&&t.readString(31-e),this.depth=t.readUint16(),t.readUint16(),this.parseFooter(t)}isVideo(){return!0}getWidth(){return this.width}getHeight(){return this.height}write(t){this.writeHeader(t),this.size+=70,t.writeUint16(0),t.writeUint16(0),t.writeUint32(0),t.writeUint32(0),t.writeUint32(0),t.writeUint16(this.width),t.writeUint16(this.height),t.writeUint32(this.horizresolution),t.writeUint32(this.vertresolution),t.writeUint32(0),t.writeUint16(this.frame_count),t.writeUint8(Math.min(31,this.compressorname.length)),t.writeString(this.compressorname,void 0,31),t.writeUint16(this.depth),t.writeInt16(-1),this.writeFooter(t)}},Ss=class extends Qn{parse(t){this.parseHeader(t),this.version=t.readUint16(),t.readUint16(),t.readUint32(),this.channel_count=t.readUint16(),this.samplesize=t.readUint16(),t.readUint16(),t.readUint16(),this.samplerate=t.readUint32()/65536,t.isofile?.ftyp?.major_brand.includes("qt")&&(this.version===1?this.extensions=t.readUint8Array(16):this.version===2&&(this.extensions=t.readUint8Array(36))),this.parseFooter(t)}isAudio(){return!0}getChannelCount(){return this.channel_count}getSampleRate(){return this.samplerate}getSampleSize(){return this.samplesize}write(t){this.writeHeader(t),this.size+=20,t.writeUint32(0),t.writeUint32(0),t.writeUint16(this.channel_count),t.writeUint16(this.samplesize),t.writeUint16(0),t.writeUint16(0),t.writeUint32(this.samplerate<<16),this.writeFooter(t)}},Mf=class extends Qn{parse(t){this.parseHeader(t),this.parseFooter(t)}write(t){this.writeHeader(t),this.writeFooter(t)}},Dv=class extends Array{toString(){let t="<table class='inner-table'>";t+="<thead><tr><th>length</th><th>nalu_data</th></tr></thead>",t+="<tbody>";for(let e=0;e<this.length;e++){const i=this[e];t+="<tr>",t+="<td>"+i.length+"</td>",t+="<td>",t+=i.data.reduce(function(s,n){return s+n.toString(16).padStart(2,"0")},"0x"),t+="</td></tr>"}return t+="</tbody></table>",t}},Ug=class extends mt{constructor(...t){super(...t),this.box_name="AVCConfigurationBox"}static{this.fourcc="avcC"}parse(t){this.configurationVersion=t.readUint8(),this.AVCProfileIndication=t.readUint8(),this.profile_compatibility=t.readUint8(),this.AVCLevelIndication=t.readUint8(),this.lengthSizeMinusOne=t.readUint8()&3,this.nb_SPS_nalus=t.readUint8()&31;let e=this.size-this.hdr_size-6;this.SPS=new Dv;for(let i=0;i<this.nb_SPS_nalus;i++){const s=t.readUint16();this.SPS.push({length:s,data:t.readUint8Array(s)}),e-=2+s}this.nb_PPS_nalus=t.readUint8(),e--,this.PPS=new Dv;for(let i=0;i<this.nb_PPS_nalus;i++){const s=t.readUint16();this.PPS.push({length:s,data:t.readUint8Array(s)}),e-=2+s}e>0&&(this.ext=t.readUint8Array(e))}write(t){this.size=7;for(let e=0;e<this.SPS.length;e++)this.size+=2+this.SPS[e].length;for(let e=0;e<this.PPS.length;e++)this.size+=2+this.PPS[e].length;this.ext&&(this.size+=this.ext.length),this.writeHeader(t),t.writeUint8(this.configurationVersion),t.writeUint8(this.AVCProfileIndication),t.writeUint8(this.profile_compatibility),t.writeUint8(this.AVCLevelIndication),t.writeUint8(this.lengthSizeMinusOne+252),t.writeUint8(this.SPS.length+224);for(let e=0;e<this.SPS.length;e++)t.writeUint16(this.SPS[e].length),t.writeUint8Array(this.SPS[e].data);t.writeUint8(this.PPS.length);for(let e=0;e<this.PPS.length;e++)t.writeUint16(this.PPS[e].length),t.writeUint8Array(this.PPS[e].data);this.ext&&t.writeUint8Array(this.ext)}},oc=class extends mt{constructor(...t){super(...t),this.box_name="MediaDataBox"}static{this.fourcc="mdat"}},C4=class extends mt{constructor(...t){super(...t),this.box_name="ItemDataBox"}static{this.fourcc="idat"}},$4=class extends mt{constructor(...t){super(...t),this.box_name="FreeSpaceBox"}static{this.fourcc="free"}},O4=class extends mt{constructor(...t){super(...t),this.box_name="FreeSpaceBox"}static{this.fourcc="skip"}},Tg=class extends Z{constructor(...t){super(...t),this.box_name="HintMediaHeaderBox"}static{this.fourcc="hmhd"}},lc=class extends Z{constructor(...t){super(...t),this.box_name="NullMediaHeaderBox"}static{this.fourcc="nmhd"}},N4=class extends Z{constructor(...t){super(...t),this.box_name="ObjectDescriptorBox"}static{this.fourcc="iods"}},F4=class extends Z{constructor(...t){super(...t),this.box_name="XMLBox"}static{this.fourcc="xml "}},D4=class extends Z{constructor(...t){super(...t),this.box_name="BinaryXMLBox"}static{this.fourcc="bxml"}},L4=class extends Z{constructor(...t){super(...t),this.box_name="ItemProtectionBox",this.sinfs=[]}static{this.fourcc="ipro"}get protections(){return this.sinfs}},cc=class extends Be{constructor(...t){super(...t),this.box_name="MovieBox",this.traks=[],this.psshs=[],this.subBoxNames=["trak","pssh"]}static{this.fourcc="moov"}},Pg=class extends Be{constructor(...t){super(...t),this.box_name="TrackBox",this.samples=[]}static{this.fourcc="trak"}},R4=class extends Be{constructor(...t){super(...t),this.box_name="EditBox"}static{this.fourcc="edts"}},Ag=class extends Be{constructor(...t){super(...t),this.box_name="MediaBox"}static{this.fourcc="mdia"}},zg=class extends Be{constructor(...t){super(...t),this.box_name="MediaInformationBox"}static{this.fourcc="minf"}},Mg=class extends Be{constructor(...t){super(...t),this.box_name="DataInformationBox"}static{this.fourcc="dinf"}},Ig=class extends Be{constructor(...t){super(...t),this.box_name="SampleTableBox",this.sgpds=[],this.sbgps=[],this.subBoxNames=["sgpd","sbgp"]}static{this.fourcc="stbl"}},qd=class extends Be{constructor(...t){super(...t),this.box_name="MovieExtendsBox",this.trexs=[],this.subBoxNames=["trex"]}static{this.fourcc="mvex"}},Cg=class extends Be{constructor(...t){super(...t),this.box_name="MovieFragmentBox",this.trafs=[],this.subBoxNames=["traf"]}static{this.fourcc="moof"}},$g=class extends Be{constructor(...t){super(...t),this.box_name="TrackFragmentBox",this.truns=[],this.sgpds=[],this.sbgps=[],this.subBoxNames=["trun","sgpd","sbgp"]}static{this.fourcc="traf"}},V4=class extends Be{constructor(...t){super(...t),this.box_name="VTTCueBox"}static{this.fourcc="vttc"}},H4=class extends Be{constructor(...t){super(...t),this.box_name="MovieFragmentRandomAccessBox",this.tfras=[],this.subBoxNames=["tfra"]}static{this.fourcc="mfra"}},j4=class extends Be{constructor(...t){super(...t),this.box_name="AdditionalMetadataContainerBox"}static{this.fourcc="meco"}},G4=class extends Be{constructor(...t){super(...t),this.box_name="trackhintinformation",this.subBoxNames=["sdp ","rtp "]}static{this.fourcc="hnti"}},q4=class extends Be{constructor(...t){super(...t),this.box_name="hintstatisticsbox",this.maxrs=[],this.subBoxNames=["maxr"]}static{this.fourcc="hinf"}},W4=class extends Be{constructor(...t){super(...t),this.box_name="SubTrackBox"}static{this.fourcc="strk"}},Y4=class extends Be{constructor(...t){super(...t),this.box_name="SubTrackDefinitionBox"}static{this.fourcc="strd"}},K4=class extends Be{constructor(...t){super(...t),this.box_name="ProtectionSchemeInfoBox"}static{this.fourcc="sinf"}},X4=class extends Be{constructor(...t){super(...t),this.box_name="RestrictedSchemeInfoBox"}static{this.fourcc="rinf"}},J4=class extends Be{constructor(...t){super(...t),this.box_name="SchemeInformationBox"}static{this.fourcc="schi"}},Z4=class extends Be{constructor(...t){super(...t),this.box_name="TrackGroupBox"}static{this.fourcc="trgr"}},Q4=class extends Be{constructor(...t){super(...t),this.box_name="UserDataBox",this.kinds=[],this.strks=[],this.subBoxNames=["kind","strk"]}static{this.fourcc="udta"}},t3=class extends Be{constructor(...t){super(...t),this.box_name="ItemPropertiesBox",this.ipmas=[],this.subBoxNames=["ipma"]}static{this.fourcc="iprp"}},e3=class extends Be{constructor(...t){super(...t),this.box_name="ItemPropertyContainerBox",this.hvcCs=[],this.ispes=[],this.claps=[],this.irots=[],this.subBoxNames=["hvcC","ispe","clap","irot"]}static{this.fourcc="ipco"}},i3=class extends Be{constructor(...t){super(...t),this.box_name="GroupsListBox"}static{this.fourcc="grpl"}},s3=class extends Be{constructor(...t){super(...t),this.box_name="J2KHeaderInfoBox"}static{this.fourcc="j2kH"}},n3=class extends Be{constructor(...t){super(...t),this.box_name="ExtendedTypeBox",this.tycos=[],this.subBoxNames=["tyco"]}static{this.fourcc="etyp"}},r3=class extends Be{constructor(...t){super(...t),this.box_name="ProjectedOmniVideoBox",this.subBoxNames=["prfr"]}static{this.fourcc="povd"}},Og=class extends Z{constructor(...t){super(...t),this.box_name="DataReferenceBox"}static{this.fourcc="dref"}parse(t){this.parseFullHeader(t),this.entries=[];const e=t.readUint32();for(let i=0;i<e;i++){const s=Mn(t,!1,this.size-(t.getPosition()-this.start));if(s.code===1){const n=s.box;this.entries.push(n)}else return}}write(t){this.version=0,this.flags=0,this.size=4,this.writeHeader(t),t.writeUint32(this.entries.length);for(let e=0;e<this.entries.length;e++)this.entries[e].write(t),this.size+=this.entries[e].size;q.debug("BoxWriter","Adjusting box "+this.type+" with new size "+this.size),t.adjustUint32(this.sizePosition,this.size)}},Ng=class extends Z{constructor(...t){super(...t),this.box_name="ExtendedLanguageBox"}static{this.fourcc="elng"}parse(t){this.parseFullHeader(t),this.extended_language=t.readString(this.size-this.hdr_size)}write(t){this.version=0,this.flags=0,this.size=this.extended_language.length,this.writeHeader(t),t.writeString(this.extended_language)}},Fg=class extends mt{constructor(...t){super(...t),this.box_name="FileTypeBox"}static{this.fourcc="ftyp"}parse(t){let e=this.size-this.hdr_size;this.major_brand=t.readString(4),this.minor_version=t.readUint32();const i=String.fromCharCode(this.minor_version>>24,this.minor_version>>16&255,this.minor_version>>8&255,this.minor_version&255);i.match("[a-zA-Z0-9]{4}")&&(this.minor_version=i),e-=8,this.compatible_brands=[];let s=0;for(;e>=4;)this.compatible_brands[s]=t.readString(4),e-=4,s++}write(t){this.size=8+4*this.compatible_brands.length,this.writeHeader(t),t.writeString(this.major_brand,void 0,4),typeof this.minor_version=="number"?t.writeUint32(this.minor_version):t.writeString(this.minor_version,void 0,4);for(let e=0;e<this.compatible_brands.length;e++)t.writeString(this.compatible_brands[e],void 0,4)}},Dg=class extends Z{constructor(...t){super(...t),this.box_name="HandlerBox"}static{this.fourcc="hdlr"}parse(t){if(this.parseFullHeader(t),this.version===0&&(t.readUint32(),this.handler=t.readString(4),t.readUint32Array(3),!this.isEndOfBox(t))){const e=this.start+this.size-t.getPosition();this.name=t.readCString();const i=this.start+this.size-1;t.seek(i),t.readUint8()!==0&&e>1&&(q.info("BoxParser","Warning: hdlr name is not null-terminated, possibly length-prefixed string. Trimming first byte."),this.name=this.name.slice(1))}}write(t){this.size=20+this.name.length+1,this.version=0,this.flags=0,this.writeHeader(t),t.writeUint32(0),t.writeString(this.handler,void 0,4),t.writeUint32Array([0,0,0]),t.writeCString(this.name)}},Lg=class extends mt{constructor(...t){super(...t),this.box_name="HEVCConfigurationBox"}static{this.fourcc="hvcC"}parse(t){this.configurationVersion=t.readUint8();let e=t.readUint8();this.general_profile_space=e>>6,this.general_tier_flag=(e&32)>>5,this.general_profile_idc=e&31,this.general_profile_compatibility=t.readUint32(),this.general_constraint_indicator=t.readUint8Array(6),this.general_level_idc=t.readUint8(),this.min_spatial_segmentation_idc=t.readUint16()&4095,this.parallelismType=t.readUint8()&3,this.chroma_format_idc=t.readUint8()&3,this.bit_depth_luma_minus8=t.readUint8()&7,this.bit_depth_chroma_minus8=t.readUint8()&7,this.avgFrameRate=t.readUint16(),e=t.readUint8(),this.constantFrameRate=e>>6,this.numTemporalLayers=(e&13)>>3,this.temporalIdNested=(e&4)>>2,this.lengthSizeMinusOne=e&3,this.nalu_arrays=[];const i=t.readUint8();for(let s=0;s<i;s++){const n=[];this.nalu_arrays.push(n),e=t.readUint8(),n.completeness=(e&128)>>7,n.nalu_type=e&63;const a=t.readUint16();for(let o=0;o<a;o++){const l=t.readUint16();n.push({data:t.readUint8Array(l)})}}}write(t){this.size=23;for(let e=0;e<this.nalu_arrays.length;e++){this.size+=3;for(let i=0;i<this.nalu_arrays[e].length;i++)this.size+=2+this.nalu_arrays[e][i].data.length}this.writeHeader(t),t.writeUint8(this.configurationVersion),t.writeUint8((this.general_profile_space<<6)+(this.general_tier_flag<<5)+this.general_profile_idc),t.writeUint32(this.general_profile_compatibility),t.writeUint8Array(this.general_constraint_indicator),t.writeUint8(this.general_level_idc),t.writeUint16(this.min_spatial_segmentation_idc+(15<<24)),t.writeUint8(this.parallelismType+252),t.writeUint8(this.chroma_format_idc+252),t.writeUint8(this.bit_depth_luma_minus8+248),t.writeUint8(this.bit_depth_chroma_minus8+248),t.writeUint16(this.avgFrameRate),t.writeUint8((this.constantFrameRate<<6)+(this.numTemporalLayers<<3)+(this.temporalIdNested<<2)+this.lengthSizeMinusOne),t.writeUint8(this.nalu_arrays.length);for(let e=0;e<this.nalu_arrays.length;e++){t.writeUint8((this.nalu_arrays[e].completeness<<7)+this.nalu_arrays[e].nalu_type),t.writeUint16(this.nalu_arrays[e].length);for(let i=0;i<this.nalu_arrays[e].length;i++)t.writeUint16(this.nalu_arrays[e][i].data.length),t.writeUint8Array(this.nalu_arrays[e][i].data)}}},Rg=class extends Z{constructor(...t){super(...t),this.box_name="MediaHeaderBox"}static{this.fourcc="mdhd"}parse(t){this.parseFullHeader(t),this.version===1?(this.creation_time=t.readUint64(),this.modification_time=t.readUint64(),this.timescale=t.readUint32(),this.duration=t.readUint64()):(this.creation_time=t.readUint32(),this.modification_time=t.readUint32(),this.timescale=t.readUint32(),this.duration=t.readUint32()),this.parseLanguage(t),t.readUint16()}write(t){const e=this.modification_time>Ai||this.creation_time>Ai||this.duration>Ai||this.version===1;this.version=e?1:0,this.size=20,this.size+=e?12:0,this.flags=0,this.writeHeader(t),e?(t.writeUint64(this.creation_time),t.writeUint64(this.modification_time),t.writeUint32(this.timescale),t.writeUint64(this.duration)):(t.writeUint32(this.creation_time),t.writeUint32(this.modification_time),t.writeUint32(this.timescale),t.writeUint32(this.duration)),t.writeUint16(this.language),t.writeUint16(0)}},Vg=class extends Z{constructor(...t){super(...t),this.box_name="MovieExtendsHeaderBox"}static{this.fourcc="mehd"}parse(t){this.parseFullHeader(t),this.flags&1&&(q.warn("BoxParser","mehd box incorrectly uses flags set to 1, converting version to 1"),this.version=1),this.version===1?this.fragment_duration=t.readUint64():this.fragment_duration=t.readUint32()}write(t){const e=this.fragment_duration>Ai||this.version===1;this.version=e?1:0,this.size=4,this.size+=e?4:0,this.flags=0,this.writeHeader(t),e?t.writeUint64(this.fragment_duration):t.writeUint32(this.fragment_duration)}},a3=class extends Z{constructor(...t){super(...t),this.box_name="ItemInfoEntry"}static{this.fourcc="infe"}parse(t){if(this.parseFullHeader(t),(this.version===0||this.version===1)&&(this.item_ID=t.readUint16(),this.item_protection_index=t.readUint16(),this.item_name=t.readCString(),this.content_type=t.readCString(),this.isEndOfBox(t)||(this.content_encoding=t.readCString())),this.version===1){this.extension_type=t.readString(4),q.warn("BoxParser","Cannot parse extension type"),t.seek(this.start+this.size);return}this.version>=2&&(this.version===2?this.item_ID=t.readUint16():this.version===3&&(this.item_ID=t.readUint32()),this.item_protection_index=t.readUint16(),this.item_type=t.readString(4),this.item_name=t.readCString(),this.item_type==="mime"?(this.content_type=t.readCString(),this.content_encoding=t.readCString()):this.item_type==="uri "&&(this.item_uri_type=t.readCString()))}},o3=class extends Z{constructor(...t){super(...t),this.box_name="ItemInfoBox"}static{this.fourcc="iinf"}parse(t){this.parseFullHeader(t),this.version===0?this.entry_count=t.readUint16():this.entry_count=t.readUint32(),this.item_infos=[];for(let e=0;e<this.entry_count;e++){const i=Mn(t,!1,this.size-(t.getPosition()-this.start));if(i.code===1){const s=i.box;s.type==="infe"?this.item_infos[e]=s:q.error("BoxParser","Expected 'infe' box, got "+i.box.type,t.isofile)}else return}}},l3=class extends Z{constructor(...t){super(...t),this.box_name="ItemLocationBox"}static{this.fourcc="iloc"}parse(t){this.parseFullHeader(t);let e;e=t.readUint8(),this.offset_size=e>>4&15,this.length_size=e&15,e=t.readUint8(),this.base_offset_size=e>>4&15,this.version===1||this.version===2?this.index_size=e&15:this.index_size=0,this.items=[];let i=0;if(this.version<2)i=t.readUint16();else if(this.version===2)i=t.readUint32();else throw new Error("version of iloc box not supported");for(let s=0;s<i;s++){let n=0,a=0,o=0;if(this.version<2)n=t.readUint16();else if(this.version===2)n=t.readUint32();else throw new Error("version of iloc box not supported");this.version===1||this.version===2?a=t.readUint16()&15:a=0;const l=t.readUint16();switch(this.base_offset_size){case 0:o=0;break;case 4:o=t.readUint32();break;case 8:o=t.readUint64();break;default:throw new Error("Error reading base offset size")}const c=[],u=t.readUint16();for(let d=0;d<u;d++){let h=0,v=0,m=0;if(this.version===1||this.version===2)switch(this.index_size){case 0:h=0;break;case 4:h=t.readUint32();break;case 8:h=t.readUint64();break;default:throw new Error("Error reading extent index")}switch(this.offset_size){case 0:v=0;break;case 4:v=t.readUint32();break;case 8:v=t.readUint64();break;default:throw new Error("Error reading extent index")}switch(this.length_size){case 0:m=0;break;case 4:m=t.readUint32();break;case 8:m=t.readUint64();break;default:throw new Error("Error reading extent index")}c.push({extent_index:h,extent_length:m,extent_offset:v})}this.items.push({base_offset:o,construction_method:a,item_ID:n,data_reference_index:l,extents:c})}}};const c3={auxl:"Auxiliary image item",base:"Pre-derived image item base",cdsc:"Item describes referenced item",dimg:"Derived image item",dpnd:"Item coding dependency",eroi:"Region",evir:"EVC slice",exbl:"Scalable image item","fdl ":"File delivery",font:"Font item",iloc:"Item data location",mask:"Region mask",mint:"Data integrity",pred:"Predictively coded item",prem:"Pre-multiplied item",tbas:"HEVC tile track base item",text:"Text item",thmb:"Thumbnail image item"};var u3=class Hg extends Z{constructor(...e){super(...e),this.box_name="ItemReferenceBox",this.references=[]}static{this.fourcc="iref"}static{this.allowed_types=["auxl","base","cdsc","dimg","dpnd","eroi","evir","exbl","fdl ","font","iloc","mask","mint","pred","prem","tbas","text","thmb"]}parse(e){for(this.parseFullHeader(e),this.references=[];e.getPosition()<this.start+this.size;){const i=Mn(e,!0,this.size-(e.getPosition()-this.start));if(i.code===1){let s="Unknown item reference";Hg.allowed_types.includes(i.type)?s=c3[i.type]:q.warn("BoxParser",`Unknown item reference type: '${i.type}'`);const n=this.version===0?new w4(i.type,i.size,s,i.hdr_size,i.start):new S4(i.type,i.size,s,i.hdr_size,i.start);n.write===mt.prototype.write&&n.type!=="mdat"&&(q.warn("BoxParser",n.type+" box writing not yet implemented, keeping unparsed data in memory for later write"),n.parseDataAndRewind(e)),n.parse(e),this.references.push(n)}else return}}},d3=class extends Z{constructor(...t){super(...t),this.box_name="PrimaryItemBox"}static{this.fourcc="pitm"}parse(t){this.parseFullHeader(t),this.version===0?this.item_id=t.readUint16():this.item_id=t.readUint32()}},f3=class extends Z{constructor(...t){super(...t),this.box_name="MetaBox",this.isQT=!1}static{this.fourcc="meta"}parse(t){const e=t.getPosition();if(this.size>8){switch(t.readUint32(),t.readString(4)){case"hdlr":case"mhdr":case"keys":case"ilst":case"ctry":case"lang":this.isQT=!0;break}t.seek(e)}this.isQT||this.parseFullHeader(t),Be.prototype.parse.call(this,t)}},jg=class extends Z{constructor(...t){super(...t),this.box_name="MovieFragmentHeaderBox"}static{this.fourcc="mfhd"}parse(t){this.parseFullHeader(t),this.sequence_number=t.readUint32()}write(t){this.version=0,this.flags=0,this.size=4,this.writeHeader(t),t.writeUint32(this.sequence_number)}},Gg=class extends Z{constructor(...t){super(...t),this.box_name="MovieHeaderBox"}static{this.fourcc="mvhd"}parse(t){this.parseFullHeader(t),this.version===1?(this.creation_time=t.readUint64(),this.modification_time=t.readUint64(),this.timescale=t.readUint32(),this.duration=t.readUint64()):(this.creation_time=t.readUint32(),this.modification_time=t.readUint32(),this.timescale=t.readUint32(),this.duration=t.readUint32()),this.rate=t.readUint32(),this.volume=t.readUint16()>>8,t.readUint16(),t.readUint32Array(2),this.matrix=t.readInt32Array(9),t.readUint32Array(6),this.next_track_id=t.readUint32()}write(t){const e=this.modification_time>Ai||this.creation_time>Ai||this.duration>Ai||this.version===1;this.version=e?1:0,this.size=96,this.size+=e?12:0,this.flags=0,this.writeHeader(t),e?(t.writeUint64(this.creation_time),t.writeUint64(this.modification_time),t.writeUint32(this.timescale),t.writeUint64(this.duration)):(t.writeUint32(this.creation_time),t.writeUint32(this.modification_time),t.writeUint32(this.timescale),t.writeUint32(this.duration)),t.writeUint32(this.rate),t.writeUint16(this.volume<<8),t.writeUint16(0),t.writeUint32(0),t.writeUint32(0),t.writeInt32Array(this.matrix),t.writeUint32(0),t.writeUint32(0),t.writeUint32(0),t.writeUint32(0),t.writeUint32(0),t.writeUint32(0),t.writeUint32(this.next_track_id)}print(t){super.printHeader(t),t.log(t.indent+"creation_time: "+this.creation_time),t.log(t.indent+"modification_time: "+this.modification_time),t.log(t.indent+"timescale: "+this.timescale),t.log(t.indent+"duration: "+this.duration),t.log(t.indent+"rate: "+this.rate),t.log(t.indent+"volume: "+(this.volume>>8)),t.log(t.indent+"matrix: "+this.matrix.join(", ")),t.log(t.indent+"next_track_id: "+this.next_track_id)}},h3=class extends Ca{static{this.fourcc="mett"}parse(t){this.parseHeader(t),this.content_encoding=t.readCString(),this.mime_format=t.readCString(),this.parseFooter(t)}},p3=class extends Ca{static{this.fourcc="metx"}parse(t){this.parseHeader(t),this.content_encoding=t.readCString(),this.namespace=t.readCString(),this.schema_location=t.readCString(),this.parseFooter(t)}},v3=class extends mt{constructor(...t){super(...t),this.box_name="AV1CodecConfigurationBox"}static{this.fourcc="av1C"}parse(t){let e=t.readUint8();if((e>>7&1)!==1){q.error("BoxParser","av1C marker problem",t.isofile);return}if(this.version=e&127,this.version!==1){q.error("BoxParser","av1C version "+this.version+" not supported",t.isofile);return}if(e=t.readUint8(),this.seq_profile=e>>5&7,this.seq_level_idx_0=e&31,e=t.readUint8(),this.seq_tier_0=e>>7&1,this.high_bitdepth=e>>6&1,this.twelve_bit=e>>5&1,this.monochrome=e>>4&1,this.chroma_subsampling_x=e>>3&1,this.chroma_subsampling_y=e>>2&1,this.chroma_sample_position=e&3,e=t.readUint8(),this.reserved_1=e>>5&7,this.reserved_1!==0){q.error("BoxParser","av1C reserved_1 parsing problem",t.isofile);return}if(this.initial_presentation_delay_present=e>>4&1,this.initial_presentation_delay_present===1)this.initial_presentation_delay_minus_one=e&15;else if(this.reserved_2=e&15,this.reserved_2!==0){q.error("BoxParser","av1C reserved_2 parsing problem",t.isofile);return}const i=this.size-this.hdr_size-4;this.configOBUs=t.readUint8Array(i)}},m3=class extends Z{constructor(...t){super(...t),this.box_name="ElementaryStreamDescriptorBox"}static{this.fourcc="esds"}parse(t){this.parseFullHeader(t);const e=t.readUint8Array(this.size-this.hdr_size);if("MPEG4DescriptorParser"in Mc){const i=new Mc.MPEG4DescriptorParser;this.esd=i.parseOneDescriptor(new Qi(e.buffer,0))}}},_3=class extends Be{constructor(...t){super(...t),this.box_name="siDecompressionParamBox"}static{this.fourcc="wave"}},g3=class extends mt{constructor(...t){super(...t),this.box_name="LCEVCConfigurationBox"}static{this.fourcc="lvcC"}parse(t){if(this.configurationVersion=t.readUint8(),this.configurationVersion!==1){q.error("BoxParser","lvcC version "+this.configurationVersion+" not supported",t.isofile);return}this.LCEVCProfileIndication=t.readUint8(),this.LCEVCLevelIndication=t.readUint8();let e=t.readUint8();this.chroma_format_idc=e>>6&3,this.bit_depth_luma_minus8=e>>3&7,this.bit_depth_chroma_minus8=e&7,e=t.readUint8(),this.lengthSizeMinusOne=e>>6&3;let i=e&63;if(i!==63){q.error("BoxParser","lvcC reserved parsing problem",t.isofile);return}if(this.pic_width_in_luma_samples=t.readUint32(),this.pic_height_in_luma_samples=t.readUint32(),e=t.readUint8(),this.sc_in_stream=e>>7&1,this.gc_in_stream=e>>6&1,this.ai_in_stream=e>>5&1,i=e&31,i!==31){q.error("BoxParser","lvcC reserved parsing problem",t.isofile);return}this.nalu_arrays=[];const s=t.readUint8();for(let n=0;n<s;n++){const a=[];if(this.nalu_arrays.push(a),e=t.readUint8(),i=e>>6&3,i!==0){q.error("BoxParser","lvcC reserved parsing problem",t.isofile);return}a.nalu_type=e&63;const o=t.readUint16();for(let l=0;l<o;l++){const c=t.readUint16();a.push({data:t.readUint8Array(c)})}}}},y3=class extends Z{constructor(...t){super(...t),this.box_name="VPCodecConfigurationRecord"}static{this.fourcc="vpcC"}parse(t){if(this.parseFullHeader(t),this.version===1){this.profile=t.readUint8(),this.level=t.readUint8();const e=t.readUint8();this.bitDepth=e>>4,this.chromaSubsampling=e>>1&7,this.videoFullRangeFlag=e&1,this.colourPrimaries=t.readUint8(),this.transferCharacteristics=t.readUint8(),this.matrixCoefficients=t.readUint8(),this.codecIntializationDataSize=t.readUint16(),this.codecIntializationData=t.readUint8Array(this.codecIntializationDataSize)}else{this.profile=t.readUint8(),this.level=t.readUint8();let e=t.readUint8();this.bitDepth=e>>4&15,this.colorSpace=e&15,e=t.readUint8(),this.chromaSubsampling=e>>4&15,this.transferFunction=e>>1&7,this.videoFullRangeFlag=e&1,this.codecIntializationDataSize=t.readUint16(),this.codecIntializationData=t.readUint8Array(this.codecIntializationDataSize)}}},b3=class extends Z{constructor(...t){super(...t),this.box_name="VvcConfigurationBox"}static{this.fourcc="vvcC"}parse(t){this.parseFullHeader(t);const e={held_bits:void 0,num_held_bits:0,stream_read_1_bytes:function(a){this.held_bits=a.readUint8(),this.num_held_bits=8},stream_read_2_bytes:function(a){this.held_bits=a.readUint16(),this.num_held_bits=16},extract_bits:function(a){const o=this.held_bits>>this.num_held_bits-a&(1<<a)-1;return this.num_held_bits-=a,o}};if(e.stream_read_1_bytes(t),e.extract_bits(5),this.lengthSizeMinusOne=e.extract_bits(2),this.ptl_present_flag=e.extract_bits(1),this.ptl_present_flag){if(e.stream_read_2_bytes(t),this.ols_idx=e.extract_bits(9),this.num_sublayers=e.extract_bits(3),this.constant_frame_rate=e.extract_bits(2),this.chroma_format_idc=e.extract_bits(2),e.stream_read_1_bytes(t),this.bit_depth_minus8=e.extract_bits(3),e.extract_bits(5),e.stream_read_2_bytes(t),e.extract_bits(2),this.num_bytes_constraint_info=e.extract_bits(6),this.general_profile_idc=e.extract_bits(7),this.general_tier_flag=e.extract_bits(1),this.general_level_idc=t.readUint8(),e.stream_read_1_bytes(t),this.ptl_frame_only_constraint_flag=e.extract_bits(1),this.ptl_multilayer_enabled_flag=e.extract_bits(1),this.general_constraint_info=new Uint8Array(this.num_bytes_constraint_info),this.num_bytes_constraint_info){for(let a=0;a<this.num_bytes_constraint_info-1;a++){const o=e.extract_bits(6);e.stream_read_1_bytes(t);const l=e.extract_bits(2);this.general_constraint_info[a]=o<<2|l}this.general_constraint_info[this.num_bytes_constraint_info-1]=e.extract_bits(6)}else e.extract_bits(6);if(this.num_sublayers>1){e.stream_read_1_bytes(t),this.ptl_sublayer_present_mask=0;for(let a=this.num_sublayers-2;a>=0;--a){const o=e.extract_bits(1);this.ptl_sublayer_present_mask|=o<<a}for(let a=this.num_sublayers;a<=8&&this.num_sublayers>1;++a)e.extract_bits(1);this.sublayer_level_idc=[];for(let a=this.num_sublayers-2;a>=0;--a)this.ptl_sublayer_present_mask&1<<a&&(this.sublayer_level_idc[a]=t.readUint8())}if(this.ptl_num_sub_profiles=t.readUint8(),this.general_sub_profile_idc=[],this.ptl_num_sub_profiles)for(let a=0;a<this.ptl_num_sub_profiles;a++)this.general_sub_profile_idc.push(t.readUint32());this.max_picture_width=t.readUint16(),this.max_picture_height=t.readUint16(),this.avg_frame_rate=t.readUint16()}const i=12,s=13;this.nalu_arrays=[];const n=t.readUint8();for(let a=0;a<n;a++){const o=[];this.nalu_arrays.push(o),e.stream_read_1_bytes(t),o.completeness=e.extract_bits(1),e.extract_bits(2),o.nalu_type=e.extract_bits(5);let l=1;o.nalu_type!==s&&o.nalu_type!==i&&(l=t.readUint16());for(let c=0;c<l;c++){const u=t.readUint16();o.push({data:t.readUint8Array(u),length:u})}}}},x3=class extends mt{constructor(...t){super(...t),this.box_name="ColourInformationBox"}static{this.fourcc="colr"}parse(t){if(this.colour_type=t.readString(4),this.colour_type==="nclx"){this.colour_primaries=t.readUint16(),this.transfer_characteristics=t.readUint16(),this.matrix_coefficients=t.readUint16();const e=t.readUint8();this.full_range_flag=e>>7}else this.colour_type==="rICC"?this.ICC_profile=t.readUint8Array(this.size-4):this.colour_type==="prof"&&(this.ICC_profile=t.readUint8Array(this.size-4))}};function Sa(t,e){let i=Number(t).toString(16);for(e=typeof e>"u"?2:e;i.length<e;)i="0"+i;return i}var Yc=class extends Ze{getCodec(){const t=super.getCodec();return this.avcC?`${t}.${Sa(this.avcC.AVCProfileIndication)}${Sa(this.avcC.profile_compatibility)}${Sa(this.avcC.AVCLevelIndication)}`:t}},w3=class extends Yc{constructor(...t){super(...t),this.box_name="AVCSampleEntry"}static{this.fourcc="avc1"}},S3=class extends Yc{constructor(...t){super(...t),this.box_name="AVC2SampleEntry"}static{this.fourcc="avc2"}},k3=class extends Yc{constructor(...t){super(...t),this.box_name="AVCSampleEntry"}static{this.fourcc="avc3"}},E3=class extends Yc{constructor(...t){super(...t),this.box_name="AVC2SampleEntry"}static{this.fourcc="avc4"}},B3=class extends Ze{constructor(...t){super(...t),this.box_name="AV1SampleEntry"}static{this.fourcc="av01"}getCodec(){const t=super.getCodec(),e=this.av1C.seq_level_idx_0,i=e<10?"0"+e:e;let s;return this.av1C.seq_profile===2&&this.av1C.high_bitdepth===1?s=this.av1C.twelve_bit===1?"12":"10":this.av1C.seq_profile<=2&&(s=this.av1C.high_bitdepth===1?"10":"08"),t+"."+this.av1C.seq_profile+"."+i+(this.av1C.seq_tier_0?"H":"M")+"."+s}},U3=class extends Ze{static{this.fourcc="dav1"}},Kc=class extends Ze{getCodec(){let t=super.getCodec();if(this.hvcC){switch(t+=".",this.hvcC.general_profile_space){case 0:t+="";break;case 1:t+="A";break;case 2:t+="B";break;case 3:t+="C";break}t+=this.hvcC.general_profile_idc,t+=".";let e=this.hvcC.general_profile_compatibility,i=0;for(let a=0;a<32&&(i|=e&1,a!==31);a++)i<<=1,e>>=1;t+=Sa(i,0),t+=".",this.hvcC.general_tier_flag===0?t+="L":t+="H",t+=this.hvcC.general_level_idc;let s=!1,n="";for(let a=5;a>=0;a--)(this.hvcC.general_constraint_indicator[a]||s)&&(n="."+Sa(this.hvcC.general_constraint_indicator[a],0)+n,s=!0);t+=n}return t}},T3=class extends Kc{constructor(...t){super(...t),this.box_name="HEVCSampleEntry"}static{this.fourcc="hvc1"}},P3=class extends Kc{static{this.fourcc="hvc2"}},A3=class extends Kc{constructor(...t){super(...t),this.box_name="HEVCSampleEntry",this.colrs=[],this.subBoxNames=["colr"]}static{this.fourcc="hev1"}},z3=class extends Kc{static{this.fourcc="hev2"}},M3=class extends Ze{constructor(...t){super(...t),this.box_name="HEVCTileSampleSampleEntry"}static{this.fourcc="hvt1"}},I3=class extends Ze{constructor(...t){super(...t),this.box_name="LHEVCSampleEntry"}static{this.fourcc="lhe1"}},C3=class extends Ze{constructor(...t){super(...t),this.box_name="LHEVCSampleEntry"}static{this.fourcc="lhv1"}},$3=class extends Ze{constructor(...t){super(...t),this.box_name="LCEVCSampleEntry"}static{this.fourcc="lvc1"}getCodec(){let t=super.getCodec();return this.lvcC&&(t+=".",t+="vprf",t+=this.lvcC.LCEVCProfileIndication,t+=".",t+="vlev",t+=this.lvcC.LCEVCLevelIndication),t}},O3=class extends Ze{static{this.fourcc="dvh1"}},N3=class extends Ze{static{this.fourcc="dvhe"}},qg=class extends Ze{getCodec(){let t=super.getCodec();if(this.vvcC){t+="."+this.vvcC.general_profile_idc,this.vvcC.general_tier_flag?t+=".H":t+=".L",t+=this.vvcC.general_level_idc;let e="";if(this.vvcC.general_constraint_info){const i=[];let s=0;s|=this.vvcC.ptl_frame_only_constraint_flag<<7,s|=this.vvcC.ptl_multilayer_enabled_flag<<6;let n;for(let a=0;a<this.vvcC.general_constraint_info.length;++a)s|=this.vvcC.general_constraint_info[a]>>2&63,i.push(s),s&&(n=a),s=this.vvcC.general_constraint_info[a]>>2&3;if(n===void 0)e=".CA";else{e=".C";const a="ABCDEFGHIJKLMNOPQRSTUVWXYZ234567";let o=0,l=0;for(let c=0;c<=n;++c)for(o=o<<8|i[c],l+=8;l>=5;){const u=o>>l-5&31;e+=a[u],l-=5,o&=(1<<l)-1}l&&(o<<=5-l,e+=a[o&31])}}t+=e}return t}},F3=class extends qg{constructor(...t){super(...t),this.box_name="VvcSampleEntry"}static{this.fourcc="vvc1"}},D3=class extends qg{constructor(...t){super(...t),this.box_name="VvcSampleEntry"}static{this.fourcc="vvi1"}},L3=class extends Ze{constructor(...t){super(...t),this.box_name="VvcSampleEntry"}static{this.fourcc="vvs1"}},R3=class extends Ze{constructor(...t){super(...t),this.box_name="VvcNonVCLSampleEntry"}static{this.fourcc="vvcN"}},Wg=class extends Ze{getCodec(){const t=super.getCodec();let e=this.vpcC.level;e===0&&(e="00");let i=this.vpcC.bitDepth;return i===8&&(i="08"),`${t}.0${this.vpcC.profile}.${e}.${i}`}},V3=class extends Wg{static{this.fourcc="vp08"}},H3=class extends Wg{static{this.fourcc="vp09"}},j3=class extends Ze{static{this.fourcc="avs3"}},G3=class extends Ze{constructor(...t){super(...t),this.box_name="J2KSampleEntry"}static{this.fourcc="j2ki"}},q3=class extends Ze{static{this.fourcc="mjp2"}},W3=class extends Ze{static{this.fourcc="mjpg"}},Y3=class extends Ze{constructor(...t){super(...t),this.box_name="UncompressedVideoSampleEntry"}static{this.fourcc="uncv"}},K3=class extends Ze{constructor(...t){super(...t),this.box_name="MP4VisualSampleEntry"}static{this.fourcc="mp4v"}},Yg=class extends Ss{constructor(...t){super(...t),this.box_name="MP4AudioSampleEntry"}static{this.fourcc="mp4a"}getCodec(){const t=super.getCodec(),e=this.esds??this.wave?.esds;if(e&&e.esd){const i=e.esd.getOTI(),s=e.esd.getAudioConfig();return t+"."+Sa(i)+(s?"."+s:"")}else return t}},X3=class extends Ss{static{this.fourcc="m4ae"}},J3=class extends Ss{static{this.fourcc="ac-3"}},Z3=class extends Ss{static{this.fourcc="ac-4"}},Q3=class extends Ss{static{this.fourcc="ec-3"}},t5=class extends Ss{static{this.fourcc="Opus"}},e5=class extends Ss{static{this.fourcc="mha1"}},i5=class extends Ss{static{this.fourcc="mha2"}},s5=class extends Ss{static{this.fourcc="mhm1"}},n5=class extends Ss{static{this.fourcc="mhm2"}},r5=class extends Ss{static{this.fourcc="fLaC"}},a5=class extends Ze{static{this.fourcc="encv"}},o5=class extends Ss{static{this.fourcc="enca"}},l5=class extends ta{constructor(...t){super(...t),this.subBoxNames=["sinf"],this.sinfs=[]}static{this.fourcc="encu"}},c5=class extends Mf{constructor(...t){super(...t),this.subBoxNames=["sinf"],this.sinfs=[]}static{this.fourcc="encs"}},u5=class extends Mf{static{this.fourcc="mp4s"}},d5=class extends I4{constructor(...t){super(...t),this.subBoxNames=["sinf"],this.sinfs=[]}static{this.fourcc="enct"}},f5=class extends Ca{constructor(...t){super(...t),this.subBoxNames=["sinf"],this.sinfs=[]}static{this.fourcc="encm"}},h5=class extends Ze{constructor(...t){super(...t),this.box_name="RestrictedVideoSampleEntry"}static{this.fourcc="resv"}},p5=class extends ta{static{this.fourcc="sbtt"}parse(t){this.parseHeader(t),this.content_encoding=t.readCString(),this.mime_format=t.readCString(),this.parseFooter(t)}},Kg=class extends ta{static{this.fourcc="stpp"}parse(t){this.parseHeader(t),this.namespace=t.readCString(),this.schema_location=t.readCString(),this.auxiliary_mime_types=t.readCString(),this.parseFooter(t)}write(t){this.writeHeader(t),this.size+=this.namespace.length+1+this.schema_location.length+1+this.auxiliary_mime_types.length+1,t.writeCString(this.namespace),t.writeCString(this.schema_location),t.writeCString(this.auxiliary_mime_types),this.writeFooter(t)}},v5=class extends ta{static{this.fourcc="stxt"}parse(t){this.parseHeader(t),this.content_encoding=t.readCString(),this.mime_format=t.readCString(),this.parseFooter(t)}getCodec(){const t=super.getCodec();return this.mime_format?t+"."+this.mime_format:t}},m5=class extends ta{static{this.fourcc="tx3g"}parse(t){this.parseHeader(t),this.displayFlags=t.readUint32(),this.horizontal_justification=t.readInt8(),this.vertical_justification=t.readInt8(),this.bg_color_rgba=t.readUint8Array(4),this.box_record=t.readInt16Array(4),this.style_record=t.readUint8Array(12),this.parseFooter(t)}},_5=class extends Ca{static{this.fourcc="wvtt"}parse(t){this.parseHeader(t),this.parseFooter(t)}},g5=class extends Z{constructor(...t){super(...t),this.box_name="SampleToGroupBox"}static{this.fourcc="sbgp"}parse(t){this.parseFullHeader(t),this.grouping_type=t.readString(4),this.version===1?this.grouping_type_parameter=t.readUint32():this.grouping_type_parameter=0,this.entries=[];const e=t.readUint32();for(let i=0;i<e;i++)this.entries.push({sample_count:t.readInt32(),group_description_index:t.readInt32()})}write(t){this.grouping_type_parameter?this.version=1:this.version=0,this.flags=0,this.size=8+8*this.entries.length+(this.version===1?4:0),this.writeHeader(t),t.writeString(this.grouping_type,void 0,4),this.version===1&&t.writeUint32(this.grouping_type_parameter),t.writeUint32(this.entries.length);for(let e=0;e<this.entries.length;e++){const i=this.entries[e];t.writeInt32(i.sample_count),t.writeInt32(i.group_description_index)}}},y5=class extends Z{constructor(...t){super(...t),this.box_name="SampleDependencyTypeBox"}static{this.fourcc="sdtp"}parse(t){this.parseFullHeader(t);const e=this.size-this.hdr_size;this.is_leading=[],this.sample_depends_on=[],this.sample_is_depended_on=[],this.sample_has_redundancy=[];for(let i=0;i<e;i++){const s=t.readUint8();this.is_leading[i]=s>>6,this.sample_depends_on[i]=s>>4&3,this.sample_is_depended_on[i]=s>>2&3,this.sample_has_redundancy[i]=s&3}}},b5=class extends Z{constructor(...t){super(...t),this.box_name="SampleGroupDescriptionBox"}static{this.fourcc="sgpd"}parse(t){this.parseFullHeader(t),this.grouping_type=t.readString(4),q.debug("BoxParser","Found Sample Groups of type "+this.grouping_type),this.version===1?this.default_length=t.readUint32():this.default_length=0,this.version>=2&&(this.default_group_description_index=t.readUint32()),this.entries=[];const e=t.readUint32();for(let i=0;i<e;i++){let s;this.grouping_type in vs.sampleGroupEntry?s=new vs.sampleGroupEntry[this.grouping_type](this.grouping_type):s=new Ei(this.grouping_type),this.entries.push(s),this.version===1?this.default_length===0?s.description_length=t.readUint32():s.description_length=this.default_length:s.description_length=this.default_length,s.write===Ei.prototype.write&&(q.info("BoxParser","SampleGroup for type "+this.grouping_type+" writing not yet implemented, keeping unparsed data in memory for later write"),s.data=t.readUint8Array(s.description_length),t.seek(t.getPosition()-s.description_length)),s.parse(t)}}write(t){this.flags=0,this.size=12;for(let e=0;e<this.entries.length;e++){const i=this.entries[e];this.version===1&&(this.default_length===0&&(this.size+=4),this.size+=i.data.length)}this.writeHeader(t),t.writeString(this.grouping_type,void 0,4),this.version===1&&t.writeUint32(this.default_length),this.version>=2&&t.writeUint32(this.default_sample_description_index),t.writeUint32(this.entries.length);for(let e=0;e<this.entries.length;e++){const i=this.entries[e];this.version===1&&this.default_length===0&&t.writeUint32(i.description_length),i.write(t)}}},x5=class extends Z{constructor(...t){super(...t),this.box_name="CompressedSegmentIndexBox"}static{this.fourcc="sidx"}parse(t){this.parseFullHeader(t),this.reference_ID=t.readUint32(),this.timescale=t.readUint32(),this.version===0?(this.earliest_presentation_time=t.readUint32(),this.first_offset=t.readUint32()):(this.earliest_presentation_time=t.readUint64(),this.first_offset=t.readUint64()),t.readUint16(),this.references=[];const e=t.readUint16();for(let i=0;i<e;i++){const s=t.readUint32(),n=t.readUint32(),a=t.readUint32();this.references.push({reference_type:s>>31&1,referenced_size:s&2147483647,subsegment_duration:n,starts_with_SAP:a>>31&1,SAP_type:a>>28&7,SAP_delta_time:a&268435455})}}write(t){const e=this.earliest_presentation_time>Ai||this.first_offset>Ai||this.version===1;this.version=e?1:0,this.size=12+12*this.references.length,this.size+=e?16:8,this.flags=0,this.writeHeader(t),t.writeUint32(this.reference_ID),t.writeUint32(this.timescale),e?(t.writeUint64(this.earliest_presentation_time),t.writeUint64(this.first_offset)):(t.writeUint32(this.earliest_presentation_time),t.writeUint32(this.first_offset)),t.writeUint16(0),t.writeUint16(this.references.length);for(let i=0;i<this.references.length;i++){const s=this.references[i];t.writeUint32(s.reference_type<<31|s.referenced_size),t.writeUint32(s.subsegment_duration),t.writeUint32(s.starts_with_SAP<<31|s.SAP_type<<28|s.SAP_delta_time)}}},Xg=class extends Z{constructor(...t){super(...t),this.box_name="SoundMediaHeaderBox"}static{this.fourcc="smhd"}parse(t){this.parseFullHeader(t),this.balance=t.readUint16(),t.readUint16()}write(t){this.version=0,this.size=4,this.writeHeader(t),t.writeUint16(this.balance),t.writeUint16(0)}},Jg=class extends Z{constructor(...t){super(...t),this.box_name="ChunkOffsetBox"}static{this.fourcc="stco"}parse(t){this.parseFullHeader(t);const e=t.readUint32();if(this.chunk_offsets=[],this.version===0)for(let i=0;i<e;i++)this.chunk_offsets.push(t.readUint32())}write(t){this.version=0,this.flags=0,this.size=4+4*this.chunk_offsets.length,this.writeHeader(t),t.writeUint32(this.chunk_offsets.length),t.writeUint32Array(this.chunk_offsets)}unpack(t){for(let e=0;e<this.chunk_offsets.length;e++)t[e].offset=this.chunk_offsets[e]}},Zg=class extends Z{constructor(...t){super(...t),this.box_name="SubtitleMediaHeaderBox"}static{this.fourcc="sthd"}},Qg=class extends Z{constructor(...t){super(...t),this.box_name="SampleToChunkBox"}static{this.fourcc="stsc"}parse(t){this.parseFullHeader(t);const e=t.readUint32();if(this.first_chunk=[],this.samples_per_chunk=[],this.sample_description_index=[],this.version===0)for(let i=0;i<e;i++)this.first_chunk.push(t.readUint32()),this.samples_per_chunk.push(t.readUint32()),this.sample_description_index.push(t.readUint32())}write(t){this.version=0,this.flags=0,this.size=4+12*this.first_chunk.length,this.writeHeader(t),t.writeUint32(this.first_chunk.length);for(let e=0;e<this.first_chunk.length;e++)t.writeUint32(this.first_chunk[e]),t.writeUint32(this.samples_per_chunk[e]),t.writeUint32(this.sample_description_index[e])}unpack(t){let e=0,i=0;for(let s=0;s<this.first_chunk.length;s++)for(let n=0;n<(s+1<this.first_chunk.length?this.first_chunk[s+1]:1/0);n++){i++;for(let a=0;a<this.samples_per_chunk[s];a++){if(t[e])t[e].description_index=this.sample_description_index[s],t[e].chunk_index=i;else return;e++}}}},ty=class extends Z{constructor(...t){super(...t),this.box_name="SampleDescriptionBox"}static{this.fourcc="stsd"}parse(t){this.parseFullHeader(t),this.entries=[];const e=t.readUint32();for(let i=1;i<=e;i++){const s=Mn(t,!0,this.size-(t.getPosition()-this.start));if(s.code===1){let n;s.type in vs.sampleEntry?(n=new vs.sampleEntry[s.type](s.size),n.hdr_size=s.hdr_size,n.start=s.start):(q.warn("BoxParser",`Unknown sample entry type: '${s.type}'`),n=new Qn(s.size,s.hdr_size,s.start),n.type=s.type),n.write===Qn.prototype.write&&(q.info("BoxParser","SampleEntry "+n.type+" box writing not yet implemented, keeping unparsed data in memory for later write"),n.parseDataAndRewind(t)),n.parse(t),this.entries.push(n)}else return}}write(t){this.version=0,this.flags=0,this.size=0,this.writeHeader(t),t.writeUint32(this.entries.length),this.size+=4;for(let e=0;e<this.entries.length;e++)this.entries[e].write(t),this.size+=this.entries[e].size;q.debug("BoxWriter","Adjusting box "+this.type+" with new size "+this.size),t.adjustUint32(this.sizePosition,this.size)}},ey=class extends Z{constructor(...t){super(...t),this.box_name="SampleSizeBox"}static{this.fourcc="stsz"}parse(t){if(this.parseFullHeader(t),this.sample_sizes=[],this.version===0){this.sample_size=t.readUint32(),this.sample_count=t.readUint32();for(let e=0;e<this.sample_count;e++)this.sample_size===0?this.sample_sizes.push(t.readUint32()):this.sample_sizes[e]=this.sample_size}}write(t){let e=!0;this.version=0,this.flags=0,this.sample_sizes.length>0&&this.sample_size===0&&(e=!1),this.size=8,e||(this.size+=4*this.sample_sizes.length),this.writeHeader(t),t.writeUint32(this.sample_size),t.writeUint32(this.sample_sizes.length),e||t.writeUint32Array(this.sample_sizes)}unpack(t){for(let e=0;e<this.sample_sizes.length;e++)t[e].size=this.sample_sizes[e]}},iy=class extends Z{constructor(...t){super(...t),this.box_name="TimeToSampleBox",this.sample_counts=[],this.sample_deltas=[]}static{this.fourcc="stts"}parse(t){this.parseFullHeader(t);const e=t.readUint32();if(this.sample_counts.length=0,this.sample_deltas.length=0,this.version===0)for(let i=0;i<e;i++){this.sample_counts.push(t.readUint32());let s=t.readInt32();s<0&&(q.warn("BoxParser","File uses negative stts sample delta, using value 1 instead, sync may be lost!"),s=1),this.sample_deltas.push(s)}}write(t){this.version=0,this.flags=0,this.size=4+8*this.sample_counts.length,this.writeHeader(t),t.writeUint32(this.sample_counts.length);for(let e=0;e<this.sample_counts.length;e++)t.writeUint32(this.sample_counts[e]),t.writeUint32(this.sample_deltas[e])}unpack(t){let e=0;for(let i=0;i<this.sample_counts.length;i++)for(let s=0;s<this.sample_counts[i];s++)e===0?t[e].dts=0:t[e].dts=t[e-1].dts+this.sample_deltas[i],e++}},sy=class extends Z{constructor(...t){super(...t),this.box_name="TrackFragmentBaseMediaDecodeTimeBox"}static{this.fourcc="tfdt"}parse(t){this.parseFullHeader(t),this.version===1?this.baseMediaDecodeTime=t.readUint64():this.baseMediaDecodeTime=t.readUint32()}write(t){const e=this.baseMediaDecodeTime>Ai||this.version===1;this.version=e?1:0,this.size=4,this.size+=e?4:0,this.flags=0,this.writeHeader(t),e?t.writeUint64(this.baseMediaDecodeTime):t.writeUint32(this.baseMediaDecodeTime)}},ny=class extends Z{constructor(...t){super(...t),this.box_name="TrackFragmentHeaderBox"}static{this.fourcc="tfhd"}parse(t){this.parseFullHeader(t);let e=0;this.track_id=t.readUint32(),this.size-this.hdr_size>e&&this.flags&1?(this.base_data_offset=t.readUint64(),e+=8):this.base_data_offset=0,this.size-this.hdr_size>e&&this.flags&2?(this.default_sample_description_index=t.readUint32(),e+=4):this.default_sample_description_index=0,this.size-this.hdr_size>e&&this.flags&8?(this.default_sample_duration=t.readUint32(),e+=4):this.default_sample_duration=0,this.size-this.hdr_size>e&&this.flags&16?(this.default_sample_size=t.readUint32(),e+=4):this.default_sample_size=0,this.size-this.hdr_size>e&&this.flags&32?(this.default_sample_flags=t.readUint32(),e+=4):this.default_sample_flags=0}write(t){this.version=0,this.size=4,this.flags&1&&(this.size+=8),this.flags&2&&(this.size+=4),this.flags&8&&(this.size+=4),this.flags&16&&(this.size+=4),this.flags&32&&(this.size+=4),this.writeHeader(t),t.writeUint32(this.track_id),this.flags&1&&t.writeUint64(this.base_data_offset),this.flags&2&&t.writeUint32(this.default_sample_description_index),this.flags&8&&t.writeUint32(this.default_sample_duration),this.flags&16&&t.writeUint32(this.default_sample_size),this.flags&32&&t.writeUint32(this.default_sample_flags)}},ry=class extends Z{constructor(...t){super(...t),this.box_name="TrackHeaderBox",this.layer=0,this.alternate_group=0}static{this.fourcc="tkhd"}parse(t){this.parseFullHeader(t),this.version===1?(this.creation_time=t.readUint64(),this.modification_time=t.readUint64(),this.track_id=t.readUint32(),t.readUint32(),this.duration=t.readUint64()):(this.creation_time=t.readUint32(),this.modification_time=t.readUint32(),this.track_id=t.readUint32(),t.readUint32(),this.duration=t.readUint32()),t.readUint32Array(2),this.layer=t.readInt16(),this.alternate_group=t.readInt16(),this.volume=t.readInt16()>>8,t.readUint16(),this.matrix=t.readInt32Array(9),this.width=t.readUint32(),this.height=t.readUint32()}write(t){const e=this.modification_time>Ai||this.creation_time>Ai||this.duration>Ai||this.version===1;this.version=e?1:0,this.size=80,this.size+=e?12:0,this.flags=this.flags??3,this.writeHeader(t),e?(t.writeUint64(this.creation_time),t.writeUint64(this.modification_time),t.writeUint32(this.track_id),t.writeUint32(0),t.writeUint64(this.duration)):(t.writeUint32(this.creation_time),t.writeUint32(this.modification_time),t.writeUint32(this.track_id),t.writeUint32(0),t.writeUint32(this.duration)),t.writeUint32Array([0,0]),t.writeInt16(this.layer),t.writeInt16(this.alternate_group),t.writeInt16(this.volume<<8),t.writeInt16(0),t.writeInt32Array(this.matrix),t.writeUint32(this.width),t.writeUint32(this.height)}print(t){super.printHeader(t),t.log(t.indent+"creation_time: "+this.creation_time),t.log(t.indent+"modification_time: "+this.modification_time),t.log(t.indent+"track_id: "+this.track_id),t.log(t.indent+"duration: "+this.duration),t.log(t.indent+"volume: "+(this.volume>>8)),t.log(t.indent+"matrix: "+this.matrix.join(", ")),t.log(t.indent+"layer: "+this.layer),t.log(t.indent+"alternate_group: "+this.alternate_group),t.log(t.indent+"width: "+this.width),t.log(t.indent+"height: "+this.height)}},Wd=class extends Z{constructor(...t){super(...t),this.box_name="TrackExtendsBox"}static{this.fourcc="trex"}parse(t){this.parseFullHeader(t),this.track_id=t.readUint32(),this.default_sample_description_index=t.readUint32(),this.default_sample_duration=t.readUint32(),this.default_sample_size=t.readUint32(),this.default_sample_flags=t.readUint32()}write(t){this.version=0,this.flags=0,this.size=20,this.writeHeader(t),t.writeUint32(this.track_id),t.writeUint32(this.default_sample_description_index),t.writeUint32(this.default_sample_duration),t.writeUint32(this.default_sample_size),t.writeUint32(this.default_sample_flags)}},ay=class extends Z{constructor(...t){super(...t),this.box_name="TrackRunBox",this.sample_duration=[],this.sample_size=[],this.sample_flags=[],this.sample_composition_time_offset=[]}static{this.fourcc="trun"}parse(t){this.parseFullHeader(t);let e=0;if(this.sample_count=t.readUint32(),e+=4,this.size-this.hdr_size>e&&this.flags&1?(this.data_offset=t.readInt32(),e+=4):this.data_offset=0,this.size-this.hdr_size>e&&this.flags&4?(this.first_sample_flags=t.readUint32(),e+=4):this.first_sample_flags=0,this.sample_duration=[],this.sample_size=[],this.sample_flags=[],this.sample_composition_time_offset=[],this.size-this.hdr_size>e)for(let i=0;i<this.sample_count;i++)this.flags&256&&(this.sample_duration[i]=t.readUint32()),this.flags&512&&(this.sample_size[i]=t.readUint32()),this.flags&1024&&(this.sample_flags[i]=t.readUint32()),this.flags&2048&&(this.version===0?this.sample_composition_time_offset[i]=t.readUint32():this.sample_composition_time_offset[i]=t.readInt32())}write(t){this.size=4,this.flags&1&&(this.size+=4),this.flags&4&&(this.size+=4),this.flags&256&&(this.size+=4*this.sample_duration.length),this.flags&512&&(this.size+=4*this.sample_size.length),this.flags&1024&&(this.size+=4*this.sample_flags.length),this.flags&2048&&(this.size+=4*this.sample_composition_time_offset.length),this.writeHeader(t),t.writeUint32(this.sample_count),this.flags&1&&(this.data_offset_position=t.getPosition(),t.writeInt32(this.data_offset)),this.flags&4&&t.writeUint32(this.first_sample_flags);for(let e=0;e<this.sample_count;e++)this.flags&256&&t.writeUint32(this.sample_duration[e]),this.flags&512&&t.writeUint32(this.sample_size[e]),this.flags&1024&&t.writeUint32(this.sample_flags[e]),this.flags&2048&&(this.version===0?t.writeUint32(this.sample_composition_time_offset[e]):t.writeInt32(this.sample_composition_time_offset[e]))}},oy=class extends Z{constructor(...t){super(...t),this.box_name="DataEntryUrlBox"}static{this.fourcc="url "}parse(t){this.parseFullHeader(t),this.flags!==1&&(this.location=t.readCString())}write(t){this.version=0,this.location?(this.flags=0,this.size=this.location.length+1):(this.flags=1,this.size=0),this.writeHeader(t),this.location&&t.writeCString(this.location)}},ly=class extends Z{constructor(...t){super(...t),this.box_name="VideoMediaHeaderBox"}static{this.fourcc="vmhd"}parse(t){this.parseFullHeader(t),this.graphicsmode=t.readUint16(),this.opcolor=t.readUint16Array(3)}write(t){this.version=0,this.size=8,this.writeHeader(t),t.writeUint16(this.graphicsmode),t.writeUint16Array(this.opcolor)}},ld=class{constructor(t,e,i){this.grouping_type=t,this.grouping_type_parameter=e,this.sbgp=i,this.last_sample_in_run=-1,this.entry_index=-1}},w5=class xn{constructor(e,i=!0){this.boxes=[],this.mdats=[],this.moofs=[],this.isProgressive=!1,this.moovStartFound=!1,this.moovStartSent=!1,this.readySent=!1,this.sampleListBuilt=!1,this.fragmentedTracks=[],this.extractedTracks=[],this.isFragmentationInitialized=!1,this.sampleProcessingStarted=!1,this.nextMoofNumber=0,this.itemListBuilt=!1,this.sidxSent=!1,this.items=[],this.entity_groups=[],this.itemsDataSize=0,this.lastMoofIndex=0,this.samplesDataSize=0,this.lastBoxStartPosition=0,this.nextParsePosition=0,this.discardMdatData=!0,this.discardMdatData=i,e?(this.stream=e,this.parse()):this.stream=new ac,this.stream.isofile=this}setSegmentOptions(e,i,s){const{sizePerSegment:n=Number.MAX_SAFE_INTEGER,rapAlignement:a=!0,normalizeAudioSampleEntriesForMSE:o=!0}=s;let l=s.nbSamples??s.nbSamplesPerFragment??1e3;const c=s.nbSamplesPerFragment??l;if(l<=0||c<=0||n<=0){q.error("ISOFile",`Invalid segment options: nbSamples=${l}, nbSamplesPerFragment=${c}, sizePerSegment=${n}`);return}if(l<c&&(q.warn("ISOFile",`nbSamples (${l}) is less than nbSamplesPerFragment (${c}), setting nbSamples to nbSamplesPerFragment`),l=c),this.fragmentedTracks.some(d=>d.nb_samples!==l)){q.error("ISOFile",`Cannot set segment options for track ${e}: nbSamples (${l}) does not match existing tracks`);return}const u=this.getTrackById(e);if(u){const d={id:e,user:i,trak:u,segmentStream:void 0,nb_samples:l,nb_samples_per_fragment:c,size_per_segment:n,rapAlignement:a,normalizeAudioSampleEntriesForMSE:o,state:{lastFragmentSampleNumber:0,lastSegmentSampleNumber:0,accumulatedSize:0}};this.fragmentedTracks.push(d),u.nextSample=0}this.discardMdatData&&q.warn("ISOFile","Segmentation options set but discardMdatData is true, samples will not be segmented")}unsetSegmentOptions(e){let i=-1;for(let s=0;s<this.fragmentedTracks.length;s++)this.fragmentedTracks[s].id===e&&(i=s);i>-1&&this.fragmentedTracks.splice(i,1)}setExtractionOptions(e,i,{nbSamples:s=1e3}={}){const n=this.getTrackById(e);n&&(this.extractedTracks.push({id:e,user:i,trak:n,nb_samples:s,samples:[]}),n.nextSample=0),this.discardMdatData&&q.warn("ISOFile","Extraction options set but discardMdatData is true, samples will not be extracted")}unsetExtractionOptions(e){let i=-1;for(let s=0;s<this.extractedTracks.length;s++)this.extractedTracks[s].id===e&&(i=s);i>-1&&this.extractedTracks.splice(i,1)}parse(){if(!(this.restoreParsePosition&&!this.restoreParsePosition()))for(;;)if(this.hasIncompleteMdat&&this.hasIncompleteMdat()){if(this.processIncompleteMdat())continue;return}else{this.saveParsePosition&&this.saveParsePosition();const i=Mn(this.stream,!1);if(i.code===0)if(this.processIncompleteBox){if(this.processIncompleteBox(i))continue;return}else return;else if(i.code===1){const s=i.box;if(this.boxes.push(s),s.type==="uuid")this[s.uuid]!==void 0&&q.warn("ISOFile","Duplicate Box of uuid: "+s.uuid+", overriding previous occurrence"),this[s.uuid]=s;else switch(s.type){case"mdat":this.mdats.push(s),this.transferMdatData(s);break;case"moof":this.moofs.push(s);break;case"free":case"skip":break;case"moov":this.moovStartFound=!0,this.mdats.length===0&&(this.isProgressive=!0);default:this[s.type]!==void 0?Array.isArray(this[s.type+"s"])?(q.info("ISOFile",`Found multiple boxes of type ${s.type} in ISOFile, adding to array`),this[s.type+"s"].push(s)):(q.warn("ISOFile",`Found multiple boxes of type ${s.type} but no array exists. Creating array dynamically.`),this[s.type+"s"]=[this[s.type],s]):(this[s.type]=s,Array.isArray(this[s.type+"s"])&&this[s.type+"s"].push(s));break}this.updateUsedBytes&&this.updateUsedBytes(s,i)}else if(i.code===-1){q.error("ISOFile",`Invalid data found while parsing box of type '${i.type}' at position ${i.start}. Aborting parsing.`,this);break}}}checkBuffer(e){if(!e)throw new Error("Buffer must be defined and non empty");return e.byteLength===0?(q.warn("ISOFile","Ignoring empty buffer (fileStart: "+e.fileStart+")"),this.stream.logBufferLevel(),!1):(q.info("ISOFile","Processing buffer (fileStart: "+e.fileStart+")"),e.usedBytes=0,this.stream.insertBuffer(e),this.stream.logBufferLevel(),this.stream.initialized()?!0:(q.warn("ISOFile","Not ready to start parsing"),!1))}appendBuffer(e,i){let s;if(this.checkBuffer(e))return this.parse(),this.moovStartFound&&!this.moovStartSent&&(this.moovStartSent=!0,this.onMoovStart&&this.onMoovStart()),this.moov?(this.sampleListBuilt||(this.buildSampleLists(),this.sampleListBuilt=!0),this.updateSampleLists(),this.onReady&&!this.readySent&&(this.readySent=!0,this.onReady(this.getInfo())),this.processSamples(i),this.nextSeekPosition?(s=this.nextSeekPosition,this.nextSeekPosition=void 0):s=this.nextParsePosition,this.stream.getEndFilePositionAfter&&(s=this.stream.getEndFilePositionAfter(s))):this.nextParsePosition?s=this.nextParsePosition:s=0,this.sidx&&this.onSidx&&!this.sidxSent&&(this.onSidx(this.sidx),this.sidxSent=!0),this.meta&&(this.flattenItemInfo&&!this.itemListBuilt&&(this.flattenItemInfo(),this.itemListBuilt=!0),this.processItems&&this.processItems(this.onItem)),this.stream.cleanBuffers&&(q.info("ISOFile","Done processing buffer (fileStart: "+e.fileStart+") - next buffer to fetch should have a fileStart position of "+s),this.stream.logBufferLevel(),this.stream.cleanBuffers(),this.stream.logBufferLevel(!0),q.info("ISOFile","Sample data size in memory: "+this.getAllocatedSampleDataSize())),s}getFragmentDuration(){const e=this.getBox("mvex");if(!e)return;if(e.mehd)return{num:e.mehd.fragment_duration,den:this.moov.mvhd.timescale};const i=this.getBoxes("trak",!1);let s={num:0,den:1};for(const n of i){const a=n.samples_duration,o=n.mdia.mdhd.timescale;a&&o&&a/o>s.num/s.den&&(s={num:a,den:o})}return s}getInfo(){if(!this.moov)return{hasMoov:!1,mime:""};const e=new Date("1904-01-01T00:00:00Z").getTime(),i=this.getBox("mvex")!==void 0,s={hasMoov:!0,duration:this.moov.mvhd.duration,timescale:this.moov.mvhd.timescale,isFragmented:i,fragment_duration:this.getFragmentDuration(),isProgressive:this.isProgressive,hasIOD:this.moov.iods!==void 0,brands:[this.ftyp.major_brand].concat(this.ftyp.compatible_brands),created:new Date(e+this.moov.mvhd.creation_time*1e3),modified:new Date(e+this.moov.mvhd.modification_time*1e3),tracks:[],audioTracks:[],videoTracks:[],subtitleTracks:[],metadataTracks:[],hintTracks:[],otherTracks:[],mime:""};for(let n=0;n<this.moov.traks.length;n++){const a=this.moov.traks[n],o=a.mdia.minf.stbl.stsd.entries[0],l=a.samples_size,c=a.mdia.mdhd.timescale,u=a.samples_duration,d={samples_duration:u,bitrate:l*8*c/u,size:l,timescale:c,alternate_group:a.tkhd.alternate_group,codec:o.getCodec(),created:new Date(e+a.tkhd.creation_time*1e3),cts_shift:a.mdia.minf.stbl.cslg,duration:a.mdia.mdhd.duration,id:a.tkhd.track_id,kind:a.udta&&a.udta.kinds.length?a.udta.kinds[0]:{schemeURI:"",value:""},language:a.mdia.elng?a.mdia.elng.extended_language:a.mdia.mdhd.languageString,layer:a.tkhd.layer,matrix:a.tkhd.matrix,modified:new Date(e+a.tkhd.modification_time*1e3),movie_duration:a.tkhd.duration,movie_timescale:s.timescale,name:a.mdia.hdlr.name,nb_samples:a.samples.length,references:[],track_height:a.tkhd.height/65536,track_width:a.tkhd.width/65536,volume:a.tkhd.volume};if(s.tracks.push(d),a.tref)for(let h=0;h<a.tref.references.length;h++)d.references.push({type:a.tref.references[h].type,track_ids:a.tref.references[h].track_ids});a.edts!==void 0&&a.edts.elst!==void 0&&(d.edits=a.edts.elst.entries),o instanceof Ss?(d.type="audio",s.audioTracks.push(d),d.audio={sample_rate:o.getSampleRate(),channel_count:o.getChannelCount(),sample_size:o.getSampleSize()}):o instanceof Ze?(d.type="video",s.videoTracks.push(d),d.video={width:o.getWidth(),height:o.getHeight()}):o instanceof ta?(d.type="subtitles",s.subtitleTracks.push(d)):o instanceof Fv?(d.type="metadata",s.hintTracks.push(d)):o instanceof Ca?(d.type="metadata",s.metadataTracks.push(d)):(d.type="metadata",s.otherTracks.push(d))}s.videoTracks&&s.videoTracks.length>0?s.mime+='video/mp4; codecs="':s.audioTracks&&s.audioTracks.length>0?s.mime+='audio/mp4; codecs="':s.mime+='application/mp4; codecs="';for(let n=0;n<s.tracks.length;n++)n!==0&&(s.mime+=","),s.mime+=s.tracks[n].codec;return s.mime+='"; profiles="',s.mime+=this.ftyp.compatible_brands.join(),s.mime+='"',s}setNextSeekPositionFromSample(e){e&&(this.nextSeekPosition?this.nextSeekPosition=Math.min(e.offset+e.alreadyRead,this.nextSeekPosition):this.nextSeekPosition=e.offset+e.alreadyRead)}processSamples(e){if(this.sampleProcessingStarted){if(this.isFragmentationInitialized&&this.onSegment!==void 0){const i=new Set;for(;i.size<this.fragmentedTracks.length&&this.fragmentedTracks.some(s=>s.trak.nextSample<s.trak.samples.length)&&this.sampleProcessingStarted;)for(const s of this.fragmentedTracks){const n=s.trak;if(!i.has(s.id)){const a=n.nextSample<n.samples.length?this.getSample(n,n.nextSample):void 0;if(!a){this.setNextSeekPositionFromSample(n.samples[n.nextSample]),i.add(s.id);continue}s.state.accumulatedSize+=a.size;const o=n.nextSample+1,l=o-s.state.lastFragmentSampleNumber>s.nb_samples_per_fragment,c=o-s.state.lastSegmentSampleNumber>s.nb_samples;let u=l||o%s.nb_samples_per_fragment===0,d=c||o%s.nb_samples===0,h=s.state.accumulatedSize>=s.size_per_segment;const v=!s.rapAlignement||a.is_sync,m=e||n.nextSample+1>=n.samples.length;if(m&&!v&&q.warn("ISOFile","Flushing track #"+s.id+" at sample #"+n.nextSample+" which is not a RAP, this may lead to playback issues"),u=u&&v,d=d&&v,h=h&&v,u||h||m){l?q.warn("ISOFile","Fragment on track #"+s.id+" is overdue, creating it with samples ["+s.state.lastFragmentSampleNumber+", "+n.nextSample+"]"):q.debug("ISOFile","Creating media fragment on track #"+s.id+" for samples ["+s.state.lastFragmentSampleNumber+", "+n.nextSample+"]");const y=this.createFragment(s.id,s.state.lastFragmentSampleNumber,n.nextSample,s.segmentStream);if(y)s.segmentStream=y,s.state.lastFragmentSampleNumber=n.nextSample+1;else{i.add(s.id);continue}}(d||h||m)&&(c?q.warn("ISOFile","Segment on track #"+s.id+" is overdue, sending it with samples ["+Math.max(0,n.nextSample-s.nb_samples)+", "+(n.nextSample-1)+"]"):q.info("ISOFile","Sending fragmented data on track #"+s.id+" for samples ["+Math.max(0,n.nextSample-s.nb_samples)+", "+(n.nextSample-1)+"]"),q.info("ISOFile","Sample data size in memory: "+this.getAllocatedSampleDataSize()),this.onSegment&&this.onSegment(s.id,s.user,s.segmentStream.buffer,n.nextSample+1,e||n.nextSample+1>=n.samples.length),s.segmentStream=void 0,s.state.accumulatedSize=0,s.state.lastSegmentSampleNumber=n.nextSample+1),n.nextSample++}}}if(this.onSamples!==void 0)for(let i=0;i<this.extractedTracks.length;i++){const s=this.extractedTracks[i],n=s.trak;for(;n.nextSample<n.samples.length&&this.sampleProcessingStarted;){q.debug("ISOFile","Exporting on track #"+s.id+" sample #"+n.nextSample);const a=this.getSample(n,n.nextSample);if(a)n.nextSample++,s.samples.push(a);else{this.setNextSeekPositionFromSample(n.samples[n.nextSample]);break}if((n.nextSample%s.nb_samples===0||n.nextSample>=n.samples.length)&&(q.debug("ISOFile","Sending samples on track #"+s.id+" for sample "+n.nextSample),this.onSamples&&this.onSamples(s.id,s.user,s.samples),s.samples=[],s!==this.extractedTracks[i]))break}}}}getBox(e){const i=this.getBoxes(e,!0);return i.length?i[0]:void 0}getBoxes(e,i){const s=[],n=a=>{a instanceof mt&&a.type&&a.type===e&&s.push(a);const o=[];a.boxes&&o.push(...a.boxes),a.entries&&o.push(...a.entries),a.item_infos&&o.push(...a.item_infos),a.references&&o.push(...a.references);for(const l of o){if(s.length&&i)return;n(l)}};return n(this),s}getTrackSamplesInfo(e){const i=this.getTrackById(e);if(i)return i.samples}getTrackSample(e,i){const s=this.getTrackById(e);return this.getSample(s,i)}releaseUsedSamples(e,i){let s=0;const n=this.getTrackById(e);n.lastValidSample||(n.lastValidSample=0);for(let a=n.lastValidSample;a<i;a++)s+=this.releaseSample(n,a);q.info("ISOFile","Track #"+e+" released samples up to "+i+" (released size: "+s+", remaining: "+this.samplesDataSize+")"),n.lastValidSample=i}start(){this.sampleProcessingStarted=!0,this.processSamples(!1)}stop(){this.sampleProcessingStarted=!1}flush(){q.info("ISOFile","Flushing remaining samples"),this.updateSampleLists(),this.processSamples(!0),this.stream.cleanBuffers(),this.stream.logBufferLevel(!0)}seekTrack(e,i,s){let n=0,a=0,o;if(s.samples.length===0)return q.info("ISOFile","No sample in track, cannot seek! Using time "+q.getDurationString(0,1)+" and offset: 0"),{offset:0,time:0};for(let c=0;c<s.samples.length;c++){const u=s.samples[c];if(c===0)a=0,o=u.timescale;else if(u.cts>e*u.timescale){a=c-1;break}i&&u.is_sync&&(n=c)}for(i&&(a=n),e=s.samples[a].cts,s.nextSample=a,this.resetFragmentedTrackStateAfterSeek(s,a),this.resetExtractedTrackStateAfterSeek(s);s.samples[a].alreadyRead===s.samples[a].size&&s.samples[a+1];)a++;const l=s.samples[a].offset+s.samples[a].alreadyRead;return q.info("ISOFile","Seeking to "+(i?"RAP":"")+" sample #"+s.nextSample+" on track "+s.tkhd.track_id+", time "+q.getDurationString(e,o)+" and offset: "+l),{offset:l,time:e/o}}resetFragmentedTrackStateAfterSeek(e,i){const s=this.fragmentedTracks.find(n=>n.trak===e);s&&(s.state.lastFragmentSampleNumber=i,s.state.lastSegmentSampleNumber=i,s.state.accumulatedSize=0,s.segmentStream=void 0)}resetExtractedTrackStateAfterSeek(e){const i=this.extractedTracks.find(s=>s.trak===e);i&&(i.samples=[])}getTrackDuration(e){if(!e.samples)return 1/0;const i=e.samples[e.samples.length-1];return(i.cts+i.duration)/i.timescale}seek(e,i){const s=this.moov;let n={offset:1/0,time:1/0};if(this.moov){for(let a=0;a<s.traks.length;a++){const o=s.traks[a];if(e>this.getTrackDuration(o))continue;const l=this.seekTrack(e,i,o);l.offset<n.offset&&(n.offset=l.offset),l.time<n.time&&(n.time=l.time)}return q.info("ISOFile","Seeking at time "+q.getDurationString(n.time,1)+" needs a buffer with a fileStart position of "+n.offset),n.offset===1/0?n={offset:this.nextParsePosition,time:0}:n.offset=this.stream.getEndFilePositionAfter(n.offset),q.info("ISOFile","Adjusted seek position (after checking data already in buffer): "+n.offset),n}else throw new Error("Cannot seek: moov not received!")}equal(e){let i=0;for(;i<this.boxes.length&&i<e.boxes.length;){const s=this.boxes[i],n=e.boxes[i];if(!Bg(s,n))return!1;i++}return!0}write(e){for(let i=0;i<this.boxes.length;i++)this.boxes[i].write(e)}createFragment(e,i,s,n){if(s<i)return q.warn("ISOFile",`Skipping fragment creation on track #${e}: invalid sample range [${i}, ${s}]`),n||new Qi;const a=[];for(let d=i;d<=s;d++){const h=this.getTrackById(e),v=this.getSample(h,d);if(!v){this.setNextSeekPositionFromSample(h.samples[d]);return}a.push(v)}const o=n||new Qi,l=this.createMoof(a);l.write(o),l.trafs[0].truns[0].data_offset=l.size+8,q.debug("MP4Box","Adjusting data_offset with new value "+l.trafs[0].truns[0].data_offset),o.adjustUint32(l.trafs[0].truns[0].data_offset_position,l.trafs[0].truns[0].data_offset);const c=new oc;c.stream=new ac;let u=0;for(const d of a)if(d.data){const h=or.fromArrayBuffer(d.data.buffer,u);c.stream.insertBuffer(h),u+=d.data.byteLength}return c.write(o),o}static writeInitializationSegment(e,i,s,n){q.debug("ISOFile","Generating initialization segment");const a=new Qi;e.write(a);const o=xn.normalizeAudioSampleEntriesForMSEFragmentedInit(i.traks,n);try{const l=i.addBox(new qd);if(s){const c=l.addBox(new Vg);c.fragment_duration=s}for(let c=0;c<i.traks.length;c++){const u=l.addBox(new Wd);u.track_id=i.traks[c].tkhd.track_id,u.default_sample_description_index=1,u.default_sample_duration=i.traks[c].samples[0]?.duration??0,u.default_sample_size=0,u.default_sample_flags=65536}i.write(a)}finally{for(let l=o.length-1;l>=0;l--)o[l]()}return a.buffer}save(e){const i=new Qi;return i.isofile=this,this.write(i),i.save(e)}getBuffer(){const e=new Qi;return e.isofile=this,this.write(e),e}static normalizeAudioSampleEntriesForMSEFragmentedInit(e,i){const s=[];for(const n of e)if(i?.has(n.tkhd.track_id))for(const a of n.mdia.minf.stbl.stsd?.entries??[]){if(!(a instanceof Yg))continue;const o=a.wave?.esds;if(a.esds||!o)continue;const l=a.esds,c=a.wave,u=a.boxes;s.push(()=>{a.esds=l,a.wave=c,a.boxes=u});const d=Array.isArray(a.boxes)?a.boxes.filter(h=>h?.type!=="wave"&&h?.type!=="esds"):[];a.esds=o,a.boxes=[...d,o],a.wave=void 0}return s}initializeSegmentation(e){if(this.onSegment||q.warn("MP4Box","No segmentation callback set!"),e!==void 0&&e!=="combined"&&e!=="per-track")throw new Error(`Invalid segmentation mode: ${e}`);this.isFragmentationInitialized||(this.isFragmentationInitialized=!0,this.resetTables());const i=[];for(const o of this.fragmentedTracks){const l=this.getTrackById(o.id);if(!l){q.warn("ISOFile",`Track with id ${o.id} not found, skipping fragmentation initialization`);continue}i.push({id:o.id,user:o.user,trak:l})}const s=this.moov?.mvex?.mehd?.fragment_duration,n=new Set(this.fragmentedTracks.filter(o=>o.normalizeAudioSampleEntriesForMSE!==!1).map(o=>o.id));if(e==="per-track")return i.map(({id:o,user:l,trak:c})=>{const u=new cc;return u.addBox(this.moov.mvhd),u.addBox(c),{id:o,user:l,buffer:xn.writeInitializationSegment(this.ftyp,u,s,n)}});const a=new cc;a.addBox(this.moov.mvhd);for(const o of i)a.addBox(o.trak);return{tracks:i.map(({id:o,user:l})=>({id:o,user:l})),buffer:xn.writeInitializationSegment(this.ftyp,a,s,n)}}resetTables(){this.initial_duration=this.moov.mvhd.duration,this.moov.mvhd.duration=0;for(let e=0;e<this.moov.traks.length;e++){const i=this.moov.traks[e];i.tkhd.duration=0,i.mdia.mdhd.duration=0;const s=i.mdia.minf.stbl.stco||i.mdia.minf.stbl.co64;s.chunk_offsets=[];const n=i.mdia.minf.stbl.stsc;n.first_chunk=[],n.samples_per_chunk=[],n.sample_description_index=[];const a=i.mdia.minf.stbl.stsz||i.mdia.minf.stbl.stz2;a.sample_sizes=[];const o=i.mdia.minf.stbl.stts;o.sample_counts=[],o.sample_deltas=[];const l=i.mdia.minf.stbl.ctts;l&&(l.sample_counts=[],l.sample_offsets=[]);const c=i.mdia.minf.stbl.stss,u=i.mdia.minf.stbl.boxes.indexOf(c);u!==-1&&(i.mdia.minf.stbl.boxes[u]=void 0)}}static initSampleGroups(e,i,s,n,a){i&&(i.sample_groups_info=[]),e.sample_groups_info||(e.sample_groups_info=[]);for(let o=0;o<s.length;o++){const l=s[o].grouping_type+"/"+s[o].grouping_type_parameter,c=new ld(s[o].grouping_type,s[o].grouping_type_parameter,s[o]);i&&(i.sample_groups_info[l]=c),e.sample_groups_info[l]||(e.sample_groups_info[l]=c);for(let u=0;u<n.length;u++)n[u].grouping_type===s[o].grouping_type&&(c.description=n[u],c.description.used=!0);if(a)for(let u=0;u<a.length;u++)a[u].grouping_type===s[o].grouping_type&&(c.fragment_description=a[u],c.fragment_description.used=!0,c.is_fragment=!0)}if(i){if(a){for(let o=0;o<a.length;o++)if(!a[o].used&&a[o].version>=2){const l=a[o].grouping_type+"/0",c=new ld(a[o].grouping_type,0);c.is_fragment=!0,i.sample_groups_info[l]||(i.sample_groups_info[l]=c)}}}else for(let o=0;o<n.length;o++)if(!n[o].used&&n[o].version>=2){const l=n[o].grouping_type+"/0",c=new ld(n[o].grouping_type,0);e.sample_groups_info[l]||(e.sample_groups_info[l]=c)}}static setSampleGroupProperties(e,i,s,n){i.sample_groups=[];for(const a in n)if(i.sample_groups[a]={grouping_type:n[a].grouping_type,grouping_type_parameter:n[a].grouping_type_parameter},s>=n[a].last_sample_in_run&&(n[a].last_sample_in_run<0&&(n[a].last_sample_in_run=0),n[a].entry_index++,n[a].entry_index<=n[a].sbgp.entries.length-1&&(n[a].last_sample_in_run+=n[a].sbgp.entries[n[a].entry_index].sample_count)),n[a].entry_index<=n[a].sbgp.entries.length-1?i.sample_groups[a].group_description_index=n[a].sbgp.entries[n[a].entry_index].group_description_index:i.sample_groups[a].group_description_index=-1,i.sample_groups[a].group_description_index!==0){let o;if(n[a].fragment_description?o=n[a].fragment_description:o=n[a].description,i.sample_groups[a].group_description_index>0){let l;i.sample_groups[a].group_description_index>65535?l=(i.sample_groups[a].group_description_index>>16)-1:l=i.sample_groups[a].group_description_index-1,o&&l>=0&&(i.sample_groups[a].description=o.entries[l])}else o&&o.version>=2&&o.default_group_description_index>0&&(i.sample_groups[a].description=o.entries[o.default_group_description_index-1])}}static process_sdtp(e,i,s){i&&(e?(i.is_leading=e.is_leading[s],i.depends_on=e.sample_depends_on[s],i.is_depended_on=e.sample_is_depended_on[s],i.has_redundancy=e.sample_has_redundancy[s]):(i.is_leading=0,i.depends_on=0,i.is_depended_on=0,i.has_redundancy=0))}buildSampleLists(){for(let e=0;e<this.moov.traks.length;e++)this.buildTrakSampleLists(this.moov.traks[e])}buildTrakSampleLists(e){let i,s,n,a,o,l;e.samples=[],e.samples_duration=0,e.samples_size=0;const c=e.mdia.minf.stbl.stco||e.mdia.minf.stbl.co64,u=e.mdia.minf.stbl.stsc,d=e.mdia.minf.stbl.stsz||e.mdia.minf.stbl.stz2,h=e.mdia.minf.stbl.stts,v=e.mdia.minf.stbl.ctts,m=e.mdia.minf.stbl.stss,y=e.mdia.minf.stbl.stsd,_=e.mdia.minf.stbl.subs,S=e.mdia.minf.stbl.stdp,T=e.mdia.minf.stbl.sbgps,I=e.mdia.minf.stbl.sgpds;let C=-1,$=-1,M=-1,D=-1,F=0,L=0,P=0;if(xn.initSampleGroups(e,void 0,T,I),!(typeof d>"u")){for(i=0;i<d.sample_sizes.length;i++){const j={number:i,track_id:e.tkhd.track_id,timescale:e.mdia.mdhd.timescale,alreadyRead:0,size:d.sample_sizes[i]};e.samples[i]=j,e.samples_size+=j.size,i===0?(n=1,s=0,j.chunk_index=n,j.chunk_run_index=s,l=u.samples_per_chunk[s],o=0,s+1<u.first_chunk.length?a=u.first_chunk[s+1]-1:a=1/0):i<l?(j.chunk_index=n,j.chunk_run_index=s):(n++,j.chunk_index=n,o=0,n<=a||(s++,s+1<u.first_chunk.length?a=u.first_chunk[s+1]-1:a=1/0),j.chunk_run_index=s,l+=u.samples_per_chunk[s]),j.description_index=u.sample_description_index[j.chunk_run_index]-1,j.description=y.entries[j.description_index],j.offset=c.chunk_offsets[j.chunk_index-1]+o,o+=j.size,i>C&&($++,C<0&&(C=0),C+=h.sample_counts[$]),i>0?(e.samples[i-1].duration=h.sample_deltas[$],e.samples_duration+=e.samples[i-1].duration,j.dts=e.samples[i-1].dts+e.samples[i-1].duration):j.dts=0,v?(i>=M&&(D++,M<0&&(M=0),M+=v.sample_counts[D]),j.cts=e.samples[i].dts+v.sample_offsets[D]):j.cts=j.dts,m?(i===m.sample_numbers[F]-1?(j.is_sync=!0,F++):(j.is_sync=!1,j.degradation_priority=0),_&&_.entries[L].sample_delta+P===i+1&&(j.subsamples=_.entries[L].subsamples,P+=_.entries[L].sample_delta,L++)):j.is_sync=!0,xn.process_sdtp(e.mdia.minf.stbl.sdtp,j,j.number),S?j.degradation_priority=S.priority[i]:j.degradation_priority=0,_&&_.entries[L].sample_delta+P===i&&(j.subsamples=_.entries[L].subsamples,P+=_.entries[L].sample_delta),(T.length>0||I.length>0)&&xn.setSampleGroupProperties(e,j,i,e.sample_groups_info)}i>0&&(e.samples[i-1].duration=Math.max(e.mdia.mdhd.duration-e.samples[i-1].dts,0),e.samples_duration+=e.samples[i-1].duration)}}updateSampleLists(){let e,i,s,n,a;if(this.moov!==void 0)for(;this.lastMoofIndex<this.moofs.length;){const o=this.moofs[this.lastMoofIndex];if(this.lastMoofIndex++,o.type==="moof"){const l=o;for(let c=0;c<l.trafs.length;c++){const u=l.trafs[c],d=this.getTrackById(u.tfhd.track_id),h=this.getTrexById(u.tfhd.track_id);u.tfhd.flags&2?e=u.tfhd.default_sample_description_index:e=h?h.default_sample_description_index:1,u.tfhd.flags&8?i=u.tfhd.default_sample_duration:i=h?h.default_sample_duration:0,u.tfhd.flags&16?s=u.tfhd.default_sample_size:s=h?h.default_sample_size:0,u.tfhd.flags&32?n=u.tfhd.default_sample_flags:n=h?h.default_sample_flags:0,u.sample_number=0,u.sbgps.length>0&&xn.initSampleGroups(d,u,u.sbgps,d.mdia.minf.stbl.sgpds,u.sgpds);for(let v=0;v<u.truns.length;v++){const m=u.truns[v];for(let y=0;y<m.sample_count;y++){const _=e-1;let S=n;m.flags&1024?S=m.sample_flags[y]:y===0&&m.flags&4&&(S=m.first_sample_flags);let T=s;m.flags&512&&(T=m.sample_size[y]),d.samples_size+=T;let I=i;m.flags&256&&(I=m.sample_duration[y]),d.samples_duration+=I;let C;d.first_traf_merged||y>0?C=d.samples[d.samples.length-1].dts+d.samples[d.samples.length-1].duration:(u.tfdt?C=u.tfdt.baseMediaDecodeTime:C=0,d.first_traf_merged=!0);let $=C;m.flags&2048&&($=C+m.sample_composition_time_offset[y]);const M=!!(u.tfhd.flags&1),D=!!(u.tfhd.flags&131072),F=!!(m.flags&1);let L=0;M?L=u.tfhd.base_data_offset:D||v===0?L=l.start:L=a;let P;v===0&&y===0?F?P=L+m.data_offset:P=L:P=a,a=P+T;const j=u.sample_number;u.sample_number++;const _t={cts:$,description_index:_,description:d.mdia.minf.stbl.stsd.entries[_],dts:C,duration:I,moof_number:this.lastMoofIndex,number_in_traf:j,number:d.samples.length,offset:P,size:T,timescale:d.mdia.mdhd.timescale,track_id:d.tkhd.track_id,is_sync:!(S>>16&1),is_leading:S>>26&3,depends_on:S>>24&3,is_depended_on:S>>22&3,has_redundancy:S>>20&3,degradation_priority:S&65535};u.first_sample_index=d.samples.length,d.samples.push(_t),(u.sbgps.length>0||u.sgpds.length>0||d.mdia.minf.stbl.sbgps.length>0||d.mdia.minf.stbl.sgpds.length>0)&&xn.setSampleGroupProperties(d,_t,_t.number_in_traf,u.sample_groups_info)}}if(u.subs){d.has_fragment_subsamples=!0;let v=u.first_sample_index;for(let m=0;m<u.subs.entries.length;m++){v+=u.subs.entries[m].sample_delta;const y=d.samples[v-1];y.subsamples=u.subs.entries[m].subsamples}}}}}}getSample(e,i){const s=e.samples[i];if(this.moov){if(!s.data)s.data=new Uint8Array(s.size),s.alreadyRead=0,this.samplesDataSize+=s.size,q.debug("ISOFile","Allocating sample #"+i+" on track #"+e.tkhd.track_id+" of size "+s.size+" (total: "+this.samplesDataSize+")");else if(s.alreadyRead===s.size)return s;for(;;){let n=this.stream,a=n.findPosition(!0,s.offset+s.alreadyRead,!1),o,l;if(a>-1)o=n.buffers[a],l=o.fileStart;else for(const c of this.mdats){if(!c.stream){q.debug("ISOFile","mdat stream not yet fully read for #"+this.mdats.indexOf(c)+" mdat");continue}if(a=c.stream.findPosition(!0,s.offset+s.alreadyRead-c.start-c.hdr_size,!1),a>-1){n=c.stream,o=c.stream.buffers[a],l=c.start+c.hdr_size+o.fileStart;break}}if(o){const c=o.byteLength-(s.offset+s.alreadyRead-l);if(s.size-s.alreadyRead<=c)return q.debug("ISOFile","Getting sample #"+i+" data (alreadyRead: "+s.alreadyRead+" offset: "+(s.offset+s.alreadyRead-l)+" read size: "+(s.size-s.alreadyRead)+" full size: "+s.size+")"),Qi.memcpy(s.data.buffer,s.alreadyRead,o,s.offset+s.alreadyRead-l,s.size-s.alreadyRead),o.usedBytes+=s.size-s.alreadyRead,n.logBufferLevel(),s.alreadyRead=s.size,s;if(c===0)return;q.debug("ISOFile","Getting sample #"+i+" partial data (alreadyRead: "+s.alreadyRead+" offset: "+(s.offset+s.alreadyRead-l)+" read size: "+c+" full size: "+s.size+")"),Qi.memcpy(s.data.buffer,s.alreadyRead,o,s.offset+s.alreadyRead-l,c),s.alreadyRead+=c,o.usedBytes+=c,n.logBufferLevel()}else return}}}releaseSample(e,i){const s=e.samples[i];return s.data?(this.samplesDataSize-=s.size,s.data=void 0,s.alreadyRead=0,s.size):0}getAllocatedSampleDataSize(){return this.samplesDataSize}getCodecs(){let e="";for(let i=0;i<this.moov.traks.length;i++){const s=this.moov.traks[i];i>0&&(e+=","),e+=s.mdia.minf.stbl.stsd.entries[0].getCodec()}return e}getTrexById(e){if(!(!this.moov||!this.moov.mvex))for(let i=0;i<this.moov.mvex.trexs.length;i++){const s=this.moov.mvex.trexs[i];if(s.track_id===e)return s}}getTrackById(e){if(this.moov)for(let i=0;i<this.moov.traks.length;i++){const s=this.moov.traks[i];if(s.tkhd.track_id===e)return s}}flattenItemInfo(){const e=this.items,i=this.entity_groups,s=this.meta;if(!(!s||!s.hdlr||!s.iinf)){for(let n=0;n<s.iinf.item_infos.length;n++){const a=s.iinf.item_infos[n].item_ID;e[a]={id:a,name:s.iinf.item_infos[n].item_name,ref_to:[],content_type:s.iinf.item_infos[n].content_type,content_encoding:s.iinf.item_infos[n].content_encoding,item_uri_type:s.iinf.item_infos[n].item_uri_type,type:s.iinf.item_infos[n].item_type?s.iinf.item_infos[n].item_type:"mime",protection:s.iinf.item_infos[n].item_protection_index>0?s.ipro.protections[s.iinf.item_infos[n].item_protection_index-1]:void 0}}if(s.grpl)for(let n=0;n<s.grpl.boxes.length;n++){const a=s.grpl.boxes[n];i[a.group_id]={id:a.group_id,entity_ids:a.entity_ids,type:a.type}}if(s.iloc)for(let n=0;n<s.iloc.items.length;n++){const a=s.iloc.items[n],o=e[a.item_ID];a.data_reference_index!==0&&(q.warn("Item storage with reference to other files: not supported"),o.source=s.dinf.boxes[a.data_reference_index-1]),o.extents=[],o.size=0;for(let l=0;l<a.extents.length;l++)o.extents[l]={offset:a.extents[l].extent_offset+a.base_offset,length:a.extents[l].extent_length,alreadyRead:0},a.construction_method===1&&(o.extents[l].offset+=s.idat.start+s.idat.hdr_size),o.size+=o.extents[l].length}if(s.pitm){const n=s.pitm.item_id;e[n]?e[n].primary=!0:q.warn("ISOFile","Primary item_id #"+n+" does not exist in items")}if(s.iref)for(let n=0;n<s.iref.references.length;n++){const a=s.iref.references[n];for(let o=0;o<a.references.length;o++)e[a.from_item_ID].ref_to.push({type:a.type,id:a.references[o]})}if(s.iprp)for(let n=0;n<s.iprp.ipmas.length;n++){const a=s.iprp.ipmas[n];for(let o=0;o<a.associations.length;o++){const l=a.associations[o],c=e[l.id]??i[l.id];if(c){c.properties===void 0&&(c.properties={boxes:[]});for(let u=0;u<l.props.length;u++){const d=l.props[u];if(d.property_index>0&&d.property_index-1<s.iprp.ipco.boxes.length){const h=s.iprp.ipco.boxes[d.property_index-1];c.properties[h.type]=h,c.properties.boxes.push(h)}}}}}}}getItem(e){if(!this.meta)return;const i=this.items[e];if(!i.data&&i.size)i.data=new Uint8Array(i.size),i.alreadyRead=0,this.itemsDataSize+=i.size,q.debug("ISOFile","Allocating item #"+e+" of size "+i.size+" (total: "+this.itemsDataSize+")");else if(i.alreadyRead===i.size)return i;for(let s=0;s<i.extents.length;s++){const n=i.extents[s];if(n.alreadyRead!==n.length){const a=this.stream.findPosition(!0,n.offset+n.alreadyRead,!1);if(a>-1){const o=this.stream.buffers[a],l=o.byteLength-(n.offset+n.alreadyRead-o.fileStart);if(n.length-n.alreadyRead<=l)q.debug("ISOFile","Getting item #"+e+" extent #"+s+" data (alreadyRead: "+n.alreadyRead+" offset: "+(n.offset+n.alreadyRead-o.fileStart)+" read size: "+(n.length-n.alreadyRead)+" full extent size: "+n.length+" full item size: "+i.size+")"),Qi.memcpy(i.data.buffer,i.alreadyRead,o,n.offset+n.alreadyRead-o.fileStart,n.length-n.alreadyRead),(!this.parsingMdat||this.discardMdatData)&&(o.usedBytes+=n.length-n.alreadyRead),this.stream.logBufferLevel(),i.alreadyRead+=n.length-n.alreadyRead,n.alreadyRead=n.length;else{q.debug("ISOFile","Getting item #"+e+" extent #"+s+" partial data (alreadyRead: "+n.alreadyRead+" offset: "+(n.offset+n.alreadyRead-o.fileStart)+" read size: "+l+" full extent size: "+n.length+" full item size: "+i.size+")"),Qi.memcpy(i.data.buffer,i.alreadyRead,o,n.offset+n.alreadyRead-o.fileStart,l),n.alreadyRead+=l,i.alreadyRead+=l,(!this.parsingMdat||this.discardMdatData)&&(o.usedBytes+=l),this.stream.logBufferLevel();return}}else return}}if(i.alreadyRead===i.size)return i}releaseItem(e){const i=this.items[e];if(i.data){this.itemsDataSize-=i.size,i.data=void 0,i.alreadyRead=0;for(let s=0;s<i.extents.length;s++){const n=i.extents[s];n.alreadyRead=0}return i.size}else return 0}processItems(e){for(const i in this.items){const s=this.items[i];this.getItem(s.id),e&&!s.sent&&(e(s),s.sent=!0,s.data=void 0)}}hasItem(e){for(const i in this.items){const s=this.items[i];if(s.name===e)return s.id}return-1}getMetaHandler(){if(this.meta)return this.meta.hdlr.handler}getPrimaryItem(){if(this.meta&&this.meta.pitm)return this.getItem(this.meta.pitm.item_id)}itemToFragmentedTrackFile({itemId:e}={}){let i;if(e?i=this.getItem(e):i=this.getPrimaryItem(),!i)return;const s=new xn;s.discardMdatData=!1;const n={type:i.type,description_boxes:i.properties.boxes};i.properties.ispe&&(n.width=i.properties.ispe.image_width,n.height=i.properties.ispe.image_height);const a=s.addTrack(n);if(a)return s.addSample(a,i.data),s}processIncompleteBox(e){if(e.type==="mdat"){const i=new oc(e.size);return this.parsingMdat=i,this.boxes.push(i),this.mdats.push(i),i.start=e.start,i.hdr_size=e.hdr_size,i.original_size=e.original_size,this.stream.addUsedBytes(i.hdr_size),this.lastBoxStartPosition=i.start+i.size,this.stream.seek(i.start+i.size,!1,this.discardMdatData)?(this.transferMdatData(),this.parsingMdat=void 0,!0):(this.moovStartFound?this.nextParsePosition=this.stream.findEndContiguousBuf():this.nextParsePosition=i.start+i.size,!1)}else return e.type==="moov"&&(this.moovStartFound=!0,this.mdats.length===0&&(this.isProgressive=!0)),this.stream.mergeNextBuffer&&this.stream.mergeNextBuffer()?(this.nextParsePosition=this.stream.getEndPosition(),!0):(e.type?this.moovStartFound?this.nextParsePosition=this.stream.getEndPosition():this.nextParsePosition=this.stream.getPosition()+e.size:this.nextParsePosition=this.stream.getEndPosition(),!1)}hasIncompleteMdat(){return this.parsingMdat!==void 0}transferMdatData(e){const i=e??this.parsingMdat;if(this.discardMdatData){q.debug("ISOFile","Discarding 'mdat' data, not transferring it to the mdat box stream");return}if(!i){q.warn("ISOFile","Cannot transfer 'mdat' data, no mdat box is being parsed");return}const s=this.stream.findPosition(!0,i.start+i.hdr_size,!1),n=this.stream.findPosition(!0,i.start+i.size,!1);if(s===-1||n===-1){q.warn("ISOFile","Cannot transfer 'mdat' data, start or end buffer not found");return}i.stream=new ac;for(let a=s;a<=n;a++){const o=this.stream.buffers[a],l=a===s?i.start+i.hdr_size-o.fileStart:0,c=a===n?i.start+i.size-o.fileStart:o.byteLength;if(c>l){q.debug("ISOFile","Transferring 'mdat' data from buffer #"+a+" ("+l+" to "+c+")");const u=c-l,d=new or(u),h=i.stream.getAbsoluteEndPosition();Qi.memcpy(d,0,o,l,u),d.fileStart=h,i.stream.insertBuffer(d),o.usedBytes+=u}}}processIncompleteMdat(){const e=this.parsingMdat;return this.stream.seek(e.start+e.size,!1,this.discardMdatData)?(q.debug("ISOFile","Found 'mdat' end in buffered data"),this.transferMdatData(),this.parsingMdat=void 0,!0):(this.nextParsePosition=this.stream.findEndContiguousBuf(),!1)}restoreParsePosition(){return this.stream.seek(this.lastBoxStartPosition,!0,this.discardMdatData)}saveParsePosition(){this.lastBoxStartPosition=this.stream.getPosition()}updateUsedBytes(e,i){this.stream.addUsedBytes&&(e.type==="mdat"?(this.stream.addUsedBytes(e.hdr_size),this.discardMdatData&&this.stream.addUsedBytes(e.size-e.hdr_size)):this.stream.addUsedBytes(e.size))}addBox(e){return mt.prototype.addBox.call(this,e)}init(e={}){const i=this.addBox(new Fg);i.major_brand=e.brands&&e.brands[0]||"iso4",i.minor_version=0,i.compatible_brands=e.brands||["iso4"];const s=this.addBox(new cc);s.addBox(new qd);const n=s.addBox(new Gg);return n.timescale=e.timescale||600,n.rate=e.rate||65536,n.creation_time=0,n.modification_time=0,n.duration=e.duration||0,n.volume=e.width?0:256,n.matrix=[65536,0,0,0,65536,0,0,0,1073741824],n.next_track_id=1,this}addTrack(e={}){this.moov||this.init(e);const i=e||{};i.width=i.width||320,i.height=i.height||320,i.id=i.id||this.moov.mvhd.next_track_id,i.type=i.type||"avc1";const s=this.moov.addBox(new Pg);this.moov.mvhd.next_track_id=i.id+1;const n=s.addBox(new ry);n.flags=7,n.creation_time=0,n.modification_time=0,n.track_id=i.id,n.duration=i.duration||0,n.layer=i.layer||0,n.alternate_group=0,n.volume=1,n.matrix=[65536,0,0,0,65536,0,0,0,1073741824],n.width=i.width<<16,n.height=i.height<<16;const a=s.addBox(new Ag),o=a.addBox(new Rg);o.creation_time=0,o.modification_time=0,o.timescale=i.timescale||1,o.duration=i.media_duration||0,o.language=i.language||"und";const l=a.addBox(new Dg);l.handler=i.hdlr||"vide",l.name=i.name||"Track created with MP4Box.js";const c=a.addBox(new Ng);c.extended_language=i.language||"fr-FR";const u=a.addBox(new zg),d=vs.sampleEntry[i.type];if(!d)return;const h=new d;if(h.data_reference_index=1,h instanceof Ze){const $=h,M=u.addBox(new ly);M.graphicsmode=0,M.opcolor=[0,0,0],$.width=i.width,$.height=i.height,$.horizresolution=72<<16,$.vertresolution=72<<16,$.frame_count=1,$.compressorname=i.type+" Compressor",$.depth=24,i.avcDecoderConfigRecord?$.addBox(new Ug(i.avcDecoderConfigRecord.byteLength)).parse(new Qi(i.avcDecoderConfigRecord)):i.hevcDecoderConfigRecord&&$.addBox(new Lg(i.hevcDecoderConfigRecord.byteLength)).parse(new Qi(i.hevcDecoderConfigRecord))}else if(h instanceof Ss){const $=h,M=u.addBox(new Xg);M.balance=i.balance||0,$.channel_count=i.channel_count||2,$.samplesize=i.samplesize||16,$.samplerate=i.samplerate||65536}else h instanceof Fv?u.addBox(new Tg):h instanceof ta?(u.addBox(new Zg),h instanceof Kg&&(h.namespace=i.namespace||"nonamespace",h.schema_location=i.schema_location||"",h.auxiliary_mime_types=i.auxiliary_mime_types||"")):h instanceof Ca?u.addBox(new lc):h instanceof Mf?u.addBox(new lc):u.addBox(new lc);i.description&&h.addBox.call(h,i.description),i.description_boxes&&i.description_boxes.forEach(function($){h.addBox.call(h,$)});const v=u.addBox(new Mg).addBox(new Og),m=new oy;m.flags=1,v.addEntry(m);const y=u.addBox(new Ig);y.addBox(new ty).addEntry(h);const _=y.addBox(new iy);_.sample_counts=[],_.sample_deltas=[];const S=y.addBox(new Qg);S.first_chunk=[],S.samples_per_chunk=[],S.sample_description_index=[];const T=y.addBox(new Jg);T.chunk_offsets=[];const I=y.addBox(new ey);I.sample_sizes=[];const C=this.moov.mvex.addBox(new Wd);return C.track_id=i.id,C.default_sample_description_index=i.default_sample_description_index||1,C.default_sample_duration=i.default_sample_duration||0,C.default_sample_size=i.default_sample_size||0,C.default_sample_flags=i.default_sample_flags||0,this.buildTrakSampleLists(s),i.id}addSample(e,i,{sample_description_index:s,duration:n=1,cts:a=0,dts:o=0,is_sync:l=!1,is_leading:c=0,depends_on:u=0,is_depended_on:d=0,has_redundancy:h=0,degradation_priority:v=0,subsamples:m,offset:y=0}={}){const _=this.getTrackById(e);if(_===void 0)return;const S=s?s-1:0,T={number:_.samples.length,track_id:_.tkhd.track_id,timescale:_.mdia.mdhd.timescale,description_index:S,description:_.mdia.minf.stbl.stsd.entries[S],data:i,size:i.byteLength,alreadyRead:i.byteLength,duration:n,cts:a,dts:o,is_sync:l,is_leading:c,depends_on:u,is_depended_on:d,has_redundancy:h,degradation_priority:v,offset:y,subsamples:m};_.samples.push(T),_.samples_size+=T.size,_.samples_duration+=T.duration,_.first_dts===void 0&&(_.first_dts=o),this.processSamples();const I=this.addBox(this.createMoof([T]));I.computeSize(),I.trafs[0].truns[0].data_offset=I.size+8;const C=this.addBox(new oc);return C.data=new Uint8Array(i),T}createMoof(e){if(e.length===0)return;if(e.some(d=>d.track_id!==e[0].track_id))throw new Error("Cannot create moof for samples from different tracks: "+e.map(d=>d.track_id).join(", "));const i=e[0].track_id,s=this.getTrackById(i);if(!s)throw new Error("Cannot create moof for non-existing track: "+i);const n=new Cg,a=n.addBox(new jg);a.sequence_number=++this.nextMoofNumber;const o=n.addBox(new $g),l=o.addBox(new ny);l.track_id=i,l.flags=_4;const c=o.addBox(new sy);c.baseMediaDecodeTime=e[0].dts-(s.first_dts||0);const u=o.addBox(new ay);u.flags=769|g4|y4,u.data_offset=0,u.first_sample_flags=0,u.sample_count=e.length;for(const d of e){let h=0;d.is_sync?h=1<<25:h=65536,u.sample_duration.push(d.duration),u.sample_size.push(d.size),u.sample_flags.push(h),u.sample_composition_time_offset.push(d.cts-d.dts)}return n}print(e){e.indent="";for(let i=0;i<this.boxes.length;i++)this.boxes[i]&&this.boxes[i].print(e)}};function S5(t=!1,e){return new w5(e,!t)}var k5=class extends Z{constructor(...t){super(...t),this.box_name="EventMessageBox"}static{this.fourcc="emsg"}parse(t){this.parseFullHeader(t),this.version===1?(this.timescale=t.readUint32(),this.presentation_time=t.readUint64(),this.event_duration=t.readUint32(),this.id=t.readUint32(),this.scheme_id_uri=t.readCString(),this.value=t.readCString()):(this.scheme_id_uri=t.readCString(),this.value=t.readCString(),this.timescale=t.readUint32(),this.presentation_time_delta=t.readUint32(),this.event_duration=t.readUint32(),this.id=t.readUint32());let e=this.size-this.hdr_size-(16+(this.scheme_id_uri.length+1)+(this.value.length+1));this.version===1&&(e-=4),this.message_data=t.readUint8Array(e)}write(t){this.version=0,this.flags=0,this.size=16+this.message_data.length+(this.scheme_id_uri.length+1)+(this.value.length+1),this.writeHeader(t),t.writeCString(this.scheme_id_uri),t.writeCString(this.value),t.writeUint32(this.timescale),t.writeUint32(this.presentation_time_delta),t.writeUint32(this.event_duration),t.writeUint32(this.id),t.writeUint8Array(this.message_data)}},E5=class extends Z{constructor(...t){super(...t),this.box_name="CompressedSubsegmentIndexBox"}static{this.fourcc="ssix"}parse(t){this.parseFullHeader(t),this.subsegments=[];const e=t.readUint32();for(let i=0;i<e;i++){const s={};this.subsegments.push(s),s.ranges=[];const n=t.readUint32();for(let a=0;a<n;a++){const o={};s.ranges.push(o),o.level=t.readUint8(),o.range_size=t.readUint24()}}}},B5=class extends mt{constructor(...t){super(...t),this.box_name="SegmentTypeBox"}static{this.fourcc="styp"}parse(t){let e=this.size-this.hdr_size;this.major_brand=t.readString(4),this.minor_version=t.readUint32(),e-=8,this.compatible_brands=[];let i=0;for(;e>=4;)this.compatible_brands[i]=t.readString(4),e-=4,i++}write(t){this.size=8+4*this.compatible_brands.length,this.writeHeader(t),t.writeString(this.major_brand,void 0,4),t.writeUint32(this.minor_version);for(let e=0;e<this.compatible_brands.length;e++)t.writeString(this.compatible_brands[e],void 0,4)}},U5=kg({Descriptor:()=>ia,ES_Descriptor:()=>fy,MPEG4DescriptorParser:()=>M5});const cy=3,Ic=4,If=5,uy=6;var ia=class dy{constructor(e,i){this.tag=e,this.size=i,this.descs=[]}parse(e){this.data=e.readUint8Array(this.size)}findDescriptor(e){for(let i=0;i<this.descs.length;i++)if(this.descs[i].tag===e)return this.descs[i]}parseOneDescriptor(e){let i=0;const s=e.readUint8();let n=e.readUint8();for(;n&128;)i=(i<<7)+(n&127),n=e.readUint8();i=(i<<7)+(n&127),q.debug("Descriptor","Found "+(uc[s]||"Descriptor "+s)+", size "+i+" at position "+e.getPosition());const a=uc[s]?new z5[uc[s]](i):new dy(i);return a.parse(e),a}parseRemainingDescriptors(e){const i=e.getPosition();for(;e.getPosition()<i+this.size;){const s=this.parseOneDescriptor?.(e);this.descs.push(s)}}},fy=class extends ia{constructor(t){super(cy,t)}parse(t){if(this.ES_ID=t.readUint16(),this.flags=t.readUint8(),this.size-=3,this.flags&128?(this.dependsOn_ES_ID=t.readUint16(),this.size-=2):this.dependsOn_ES_ID=0,this.flags&64){const e=t.readUint8();this.URL=t.readString(e),this.size-=e+1}else this.URL="";this.flags&32?(this.OCR_ES_ID=t.readUint16(),this.size-=2):this.OCR_ES_ID=0,this.parseRemainingDescriptors(t)}getOTI(){const t=this.findDescriptor(Ic);return t?t.oti:0}getAudioConfig(){const t=this.findDescriptor(Ic);if(!t)return;const e=t.findDescriptor(If);if(e&&e.data){let i=(e.data[0]&248)>>3;return i===31&&e.data.length>=2&&(i=32+((e.data[0]&7)<<3)+((e.data[1]&224)>>5)),i}}},T5=class extends ia{constructor(t){super(Ic,t)}parse(t){this.oti=t.readUint8(),this.streamType=t.readUint8(),this.upStream=(this.streamType>>1&1)!==0,this.streamType=this.streamType>>>2,this.bufferSize=t.readUint24(),this.maxBitrate=t.readUint32(),this.avgBitrate=t.readUint32(),this.size-=13,this.parseRemainingDescriptors(t)}},P5=class extends ia{constructor(t){super(If,t)}},A5=class extends ia{constructor(t){super(uy,t)}};const z5={Descriptor:ia,ES_Descriptor:fy,DecoderConfigDescriptor:T5,DecoderSpecificInfo:P5,SLConfigDescriptor:A5},uc={[cy]:"ES_Descriptor",[Ic]:"DecoderConfigDescriptor",[If]:"DecoderSpecificInfo",[uy]:"SLConfigDescriptor"};var M5=class{constructor(){this.parseOneDescriptor=ia.prototype.parseOneDescriptor}getDescriptorName(t){return uc[t]}},I5=class extends mt{constructor(...t){super(...t),this.box_name="AV1LayeredImageIndexingProperty"}static{this.fourcc="a1lx"}parse(t){const e=((t.readUint8()&1)+1)*16;this.layer_size=[];for(let i=0;i<3;i++)e===16?this.layer_size[i]=t.readUint16():this.layer_size[i]=t.readUint32()}},C5=class extends mt{constructor(...t){super(...t),this.box_name="OperatingPointSelectorProperty"}static{this.fourcc="a1op"}parse(t){this.op_index=t.readUint8()}},$5=class extends Z{constructor(...t){super(...t),this.box_name="AuxiliaryTypeProperty"}static{this.fourcc="auxC"}parse(t){this.parseFullHeader(t),this.aux_type=t.readCString();const e=this.size-this.hdr_size-(this.aux_type.length+1);this.aux_subtype=t.readUint8Array(e)}},O5=class extends mt{constructor(...t){super(...t),this.box_name="BitRateBox"}static{this.fourcc="btrt"}parse(t){this.bufferSizeDB=t.readUint32(),this.maxBitrate=t.readUint32(),this.avgBitrate=t.readUint32()}},N5=class extends Z{constructor(...t){super(...t),this.box_name="CodingConstraintsBox"}static{this.fourcc="ccst"}parse(t){this.parseFullHeader(t);const e=t.readUint8();this.all_ref_pics_intra=(e&128)===128,this.intra_pred_used=(e&64)===64,this.max_ref_per_pic=(e&63)>>2,t.readUint24()}},F5=class extends mt{constructor(...t){super(...t),this.box_name="ComponentDefinitionBox"}static{this.fourcc="cdef"}parse(t){this.channel_count=t.readUint16(),this.channel_indexes=[],this.channel_types=[],this.channel_associations=[];for(let e=0;e<this.channel_count;e++)this.channel_indexes.push(t.readUint16()),this.channel_types.push(t.readUint16()),this.channel_associations.push(t.readUint16())}},D5=class extends mt{constructor(...t){super(...t),this.box_name="CleanApertureBox"}static{this.fourcc="clap"}parse(t){this.cleanApertureWidthN=t.readUint32(),this.cleanApertureWidthD=t.readUint32(),this.cleanApertureHeightN=t.readUint32(),this.cleanApertureHeightD=t.readUint32(),this.horizOffN=t.readUint32(),this.horizOffD=t.readUint32(),this.vertOffN=t.readUint32(),this.vertOffD=t.readUint32()}},L5=class extends mt{constructor(...t){super(...t),this.box_name="ContentLightLevelBox"}static{this.fourcc="clli"}parse(t){this.max_content_light_level=t.readUint16(),this.max_pic_average_light_level=t.readUint16()}},R5=class extends mt{constructor(...t){super(...t),this.box_name="CameraExtrinsicMatrixProperty"}static{this.fourcc="cmex"}parse(t){this.flags&1&&(this.pos_x=t.readInt32()),this.flags&2&&(this.pos_y=t.readInt32()),this.flags&4&&(this.pos_z=t.readInt32()),this.flags&8&&(this.version===0?this.flags&16?(this.quat_x=t.readInt32(),this.quat_y=t.readInt32(),this.quat_z=t.readInt32()):(this.quat_x=t.readInt16(),this.quat_y=t.readInt16(),this.quat_z=t.readInt16()):this.version),this.flags&32&&(this.id=t.readUint32())}},V5=class extends mt{constructor(...t){super(...t),this.box_name="CameraIntrinsicMatrixProperty"}static{this.fourcc="cmin"}parse(t){this.focal_length_x=t.readInt32(),this.principal_point_x=t.readInt32(),this.principal_point_y=t.readInt32(),this.flags&1&&(this.focal_length_y=t.readInt32(),this.skew_factor=t.readInt32())}},H5=class extends Z{constructor(...t){super(...t),this.box_name="CompressionConfigurationBox"}static{this.fourcc="cmpC"}parse(t){this.parseFullHeader(t),this.compression_type=t.readString(4),this.compressed_unit_type=t.readUint8()}},j5=class extends mt{constructor(...t){super(...t),this.box_name="ComponentDefinitionBox"}static{this.fourcc="cmpd"}parse(t){this.component_count=t.readUint32(),this.component_types=[],this.component_type_urls=[];for(let e=0;e<this.component_count;e++){const i=t.readUint16();this.component_types.push(i),i>=32768&&this.component_type_urls.push(t.readCString())}}},G5=class extends Z{constructor(...t){super(...t),this.box_name="ChunkLargeOffsetBox"}static{this.fourcc="co64"}parse(t){this.parseFullHeader(t);const e=t.readUint32();if(this.chunk_offsets=[],this.version===0)for(let i=0;i<e;i++)this.chunk_offsets.push(t.readUint64())}write(t){this.version=0,this.flags=0,this.size=4+8*this.chunk_offsets.length,this.writeHeader(t),t.writeUint32(this.chunk_offsets.length);for(let e=0;e<this.chunk_offsets.length;e++)t.writeUint64(this.chunk_offsets[e])}},q5=class extends Z{constructor(...t){super(...t),this.box_name="ContentLightLevelBox"}static{this.fourcc="CoLL"}parse(t){this.parseFullHeader(t),this.maxCLL=t.readUint16(),this.maxFALL=t.readUint16()}},W5=class{toString(){let t="centre_azimuth: ";return t+=this.centre_azimuth,t+=" (",t+=this.centre_azimuth*2**-16,t+="°), centre_elevation: ",t+=this.centre_elevation,t+=" (",t+=this.centre_elevation*2**-16,t+="°), centre_tilt: ",t+=this.centre_tilt,t+=" (",t+=this.centre_tilt*2**-16,t+="°)",this.range_included_flag&&(t+=", azimuth_range: ",t+=this.azimuth_range,t+=" (",t+=this.azimuth_range*2**-16,t+="°), elevation_range: ",t+=this.elevation_range,t+=" (",t+=this.elevation_range*2**-16,t+="°)"),this.interpolate_included_flag&&(t+=", interpolate: ",t+=this.interpolate),t}},Y5=class{toString(){let t="";return this.view_idc&&(t+="view_idc: ",t+=this.view_idc,t+=", "),t+="sphere_region: {",t+=this.sphere_region,t+="}",t}},K5=class extends Z{constructor(...t){super(...t),this.box_name="CoverageInformationBox"}static{this.fourcc="covi"}parse(t){this.parseFullHeader(t),this.coverage_shape_type=t.readUint8();const e=t.readUint8(),i=t.readInt8(),s=i&128;s&&(this.default_view_idc=(i&96)>>5),this.coverage_regions=new Array;for(let n=0;n<e;n++){const a=new Y5;s&&(a.view_idc=t.readUint8()>>6),a.sphere_region=this.parseSphereRegion(t,!0,!0),this.coverage_regions.push(a)}}parseSphereRegion(t,e,i){const s=new W5;return s.centre_azimuth=t.readInt32(),s.centre_elevation=t.readInt32(),s.centre_tilt=t.readInt32(),s.range_included_flag=e,e&&(s.azimuth_range=t.readUint32(),s.elevation_range=t.readUint32()),s.interpolate_included_flag=i,i&&(s.interpolate=(t.readUint8()&128)===128),s}},X5=class extends Z{constructor(...t){super(...t),this.box_name="CopyrightBox"}static{this.fourcc="cprt"}parse(t){this.parseFullHeader(t),this.parseLanguage(t),this.notice=t.readCString()}},J5=class extends Z{constructor(...t){super(...t),this.box_name="CompatibleSchemeTypeBox"}static{this.fourcc="csch"}parse(t){this.parseFullHeader(t),this.scheme_type=t.readString(4),this.scheme_version=t.readUint32(),this.flags&1&&(this.scheme_uri=t.readCString())}};const mo=2147483647;var Z5=class extends Z{constructor(...t){super(...t),this.box_name="CompositionToDecodeBox"}static{this.fourcc="cslg"}parse(t){this.parseFullHeader(t),this.version===0?(this.compositionToDTSShift=t.readInt32(),this.leastDecodeToDisplayDelta=t.readInt32(),this.greatestDecodeToDisplayDelta=t.readInt32(),this.compositionStartTime=t.readInt32(),this.compositionEndTime=t.readInt32()):this.version===1&&(this.compositionToDTSShift=t.readInt64(),this.leastDecodeToDisplayDelta=t.readInt64(),this.greatestDecodeToDisplayDelta=t.readInt64(),this.compositionStartTime=t.readInt64(),this.compositionEndTime=t.readInt64())}write(t){this.version=0,(this.compositionToDTSShift>mo||this.leastDecodeToDisplayDelta>mo||this.greatestDecodeToDisplayDelta>mo||this.compositionStartTime>mo||this.compositionEndTime>mo)&&(this.version=1),this.flags=0,this.version===0?(this.size=20,this.writeHeader(t),t.writeInt32(this.compositionToDTSShift),t.writeInt32(this.leastDecodeToDisplayDelta),t.writeInt32(this.greatestDecodeToDisplayDelta),t.writeInt32(this.compositionStartTime),t.writeInt32(this.compositionEndTime)):this.version===1&&(this.size=40,this.writeHeader(t),t.writeInt64(this.compositionToDTSShift),t.writeInt64(this.leastDecodeToDisplayDelta),t.writeInt64(this.greatestDecodeToDisplayDelta),t.writeInt64(this.compositionStartTime),t.writeInt64(this.compositionEndTime))}},Q5=class extends Z{constructor(...t){super(...t),this.box_name="CompositionOffsetBox"}static{this.fourcc="ctts"}parse(t){this.parseFullHeader(t);const e=t.readUint32();if(this.sample_counts=[],this.sample_offsets=[],this.version===0)for(let i=0;i<e;i++){this.sample_counts.push(t.readUint32());const s=t.readInt32();s<0&&q.warn("BoxParser","ctts box uses negative values without using version 1"),this.sample_offsets.push(s)}else if(this.version===1)for(let i=0;i<e;i++)this.sample_counts.push(t.readUint32()),this.sample_offsets.push(t.readInt32())}write(t){this.version=this.sample_offsets.some(e=>e<0)?1:0,this.flags=0,this.size=4+8*this.sample_counts.length,this.writeHeader(t),t.writeUint32(this.sample_counts.length);for(let e=0;e<this.sample_counts.length;e++)t.writeUint32(this.sample_counts[e]),this.version===1?t.writeInt32(this.sample_offsets[e]):t.writeUint32(this.sample_offsets[e])}unpack(t){let e=0;for(let i=0;i<this.sample_counts.length;i++)for(let s=0;s<this.sample_counts[i];s++)t[e].pts=t[e].dts+this.sample_offsets[i],e++}},tE=class extends mt{constructor(...t){super(...t),this.box_name="AC3SpecificBox"}static{this.fourcc="dac3"}parse(t){const e=t.readUint8(),i=t.readUint8(),s=t.readUint8();this.fscod=e>>6,this.bsid=e>>1&31,this.bsmod=(e&1)<<2|i>>6&3,this.acmod=i>>3&7,this.lfeon=i>>2&1,this.bit_rate_code=i&3|s>>5&7}},eE=class extends mt{constructor(...t){super(...t),this.box_name="EC3SpecificBox"}static{this.fourcc="dec3"}parse(t){const e=t.readUint16();this.data_rate=e>>3,this.num_ind_sub=e&7,this.ind_subs=[];for(let i=0;i<this.num_ind_sub+1;i++){const s=t.readUint8(),n=t.readUint8(),a=t.readUint8(),o={fscod:s>>6,bsid:s>>1&31,bsmod:(s&1)<<4|n>>4&15,acmod:n>>1&7,lfeon:n&1,num_dep_sub:a>>1&15};this.ind_subs.push(o),o.num_dep_sub>0&&(o.chan_loc=(a&1)<<8|t.readUint8())}}},iE=class extends Z{constructor(...t){super(...t),this.box_name="FLACSpecificBox"}static{this.fourcc="dfLa"}parse(t){this.parseFullHeader(t);const e=127,i=128,s=[],n=["STREAMINFO","PADDING","APPLICATION","SEEKTABLE","VORBIS_COMMENT","CUESHEET","PICTURE","RESERVED"];let a;do{a=t.readUint8();const o=Math.min(a&e,n.length-1);o?t.readUint8Array(t.readUint24()):(t.readUint8Array(13),this.samplerate=t.readUint32()>>12,t.readUint8Array(20)),s.push(n[o])}while(a&i);this.numMetadataBlocks=s.length+" ("+s.join(", ")+")"}},sE=class extends mt{constructor(...t){super(...t),this.box_name="hintimmediateBytesSent"}static{this.fourcc="dimm"}parse(t){this.bytessent=t.readUint64()}},nE=class extends mt{constructor(...t){super(...t),this.box_name="hintlongestpacket"}static{this.fourcc="dmax"}parse(t){this.time=t.readUint32()}},rE=class extends mt{constructor(...t){super(...t),this.box_name="hintmediaBytesSent"}static{this.fourcc="dmed"}parse(t){this.bytessent=t.readUint64()}},aE=class extends mt{constructor(...t){super(...t),this.box_name="OpusSpecificBox"}static{this.fourcc="dOps"}parse(t){if(this.Version=t.readUint8(),this.OutputChannelCount=t.readUint8(),this.PreSkip=t.readUint16(),this.InputSampleRate=t.readUint32(),this.OutputGain=t.readInt16(),this.ChannelMappingFamily=t.readUint8(),this.ChannelMappingFamily!==0){this.StreamCount=t.readUint8(),this.CoupledCount=t.readUint8(),this.ChannelMapping=[];for(let e=0;e<this.OutputChannelCount;e++)this.ChannelMapping[e]=t.readUint8()}}write(t){if(this.size=11,this.ChannelMappingFamily!==0&&(this.size+=2+this.OutputChannelCount),this.writeHeader(t),t.writeUint8(this.Version),t.writeUint8(this.OutputChannelCount),t.writeUint16(this.PreSkip),t.writeUint32(this.InputSampleRate),t.writeInt16(this.OutputGain),t.writeUint8(this.ChannelMappingFamily),this.ChannelMappingFamily!==0){t.writeUint8(this.StreamCount),t.writeUint8(this.CoupledCount);for(let e=0;e<this.OutputChannelCount;e++)t.writeUint8(this.ChannelMapping[e])}}},oE=class extends mt{constructor(...t){super(...t),this.box_name="hintrepeatedBytesSent"}static{this.fourcc="drep"}parse(t){this.bytessent=t.readUint64()}},lE=class extends Z{constructor(...t){super(...t),this.box_name="EditListBox"}static{this.fourcc="elst"}parse(t){this.parseFullHeader(t),this.entries=[];const e=t.readUint32();for(let i=0;i<e;i++){const s={segment_duration:this.version===1?t.readUint64():t.readUint32(),media_time:this.version===1?t.readInt64():t.readInt32(),media_rate_integer:t.readInt16(),media_rate_fraction:t.readInt16()};this.entries.push(s)}}write(t){const e=this.entries.some(i=>i.segment_duration>Ai||i.media_time>Ai)||this.version===1;this.version=e?1:0,this.size=4+12*this.entries.length,this.size+=e?8*this.entries.length:0,this.writeHeader(t),t.writeUint32(this.entries.length);for(let i=0;i<this.entries.length;i++){const s=this.entries[i];e?(t.writeUint64(s.segment_duration),t.writeInt64(s.media_time)):(t.writeUint32(s.segment_duration),t.writeInt32(s.media_time)),t.writeInt16(s.media_rate_integer),t.writeInt16(s.media_rate_fraction)}}},Vi=class extends Z{parse(t){this.parseFullHeader(t),this.group_id=t.readUint32(),this.num_entities_in_group=t.readUint32(),this.entity_ids=[];for(let e=0;e<this.num_entities_in_group;e++){const i=t.readUint32();this.entity_ids.push(i)}}},cE=class extends Vi{constructor(...t){super(...t),this.box_name="Auto exposure bracketing"}static{this.fourcc="aebr"}},uE=class extends Vi{constructor(...t){super(...t),this.box_name="Flash exposure information"}static{this.fourcc="afbr"}},dE=class extends Vi{constructor(...t){super(...t),this.box_name="Album collection"}static{this.fourcc="albc"}},fE=class extends Vi{constructor(...t){super(...t),this.box_name="Alternative entity"}static{this.fourcc="altr"}},hE=class extends Vi{constructor(...t){super(...t),this.box_name="Burst image"}static{this.fourcc="brst"}},pE=class extends Vi{constructor(...t){super(...t),this.box_name="Depth of field bracketing"}static{this.fourcc="dobr"}},vE=class extends Vi{constructor(...t){super(...t),this.box_name="Equivalent entity"}static{this.fourcc="eqiv"}},mE=class extends Vi{constructor(...t){super(...t),this.box_name="Favorites collection"}static{this.fourcc="favc"}},_E=class extends Vi{constructor(...t){super(...t),this.box_name="Focus bracketing"}static{this.fourcc="fobr"}},gE=class extends Vi{constructor(...t){super(...t),this.box_name="Image item with an audio track"}static{this.fourcc="iaug"}},yE=class extends Vi{constructor(...t){super(...t),this.box_name="Panorama"}static{this.fourcc="pano"}},bE=class extends Vi{constructor(...t){super(...t),this.box_name="Slideshow"}static{this.fourcc="slid"}},xE=class extends Vi{constructor(...t){super(...t),this.box_name="Stereo"}static{this.fourcc="ster"}},wE=class extends Vi{constructor(...t){super(...t),this.box_name="Time-synchronized capture"}static{this.fourcc="tsyn"}},SE=class extends Vi{constructor(...t){super(...t),this.box_name="White balance bracketing"}static{this.fourcc="wbbr"}},kE=class extends Vi{constructor(...t){super(...t),this.box_name="Progressive rendering"}static{this.fourcc="prgr"}},EE=class extends Vi{constructor(...t){super(...t),this.box_name="Image pyramid"}static{this.fourcc="pymd"}parse(t){this.parseFullHeader(t),this.group_id=t.readUint32(),this.num_entities_in_group=t.readUint32(),this.entity_ids=[];for(let e=0;e<this.num_entities_in_group;e++){const i=t.readUint32();this.entity_ids.push(i)}this.tile_size_x=t.readUint16(),this.tile_size_y=t.readUint16(),this.layer_binning=[],this.tiles_in_layer_column_minus1=[],this.tiles_in_layer_row_minus1=[];for(let e=0;e<this.num_entities_in_group;e++)this.layer_binning[e]=t.readUint16(),this.tiles_in_layer_row_minus1[e]=t.readUint16(),this.tiles_in_layer_column_minus1[e]=t.readUint16()}},BE=class extends mt{constructor(...t){super(...t),this.box_name="FieldHandlingBox"}static{this.fourcc="fiel"}parse(t){this.fieldCount=t.readUint8(),this.fieldOrdering=t.readUint8()}},UE=class extends mt{constructor(...t){super(...t),this.box_name="OriginalFormatBox"}static{this.fourcc="frma"}parse(t){this.data_format=t.readString(4)}},TE=class extends mt{constructor(...t){super(...t),this.box_name="ImageMirror"}static{this.fourcc="imir"}parse(t){const e=t.readUint8();this.reserved=e>>7,this.axis=e&1}},PE=class extends Z{constructor(...t){super(...t),this.box_name="ItemPropertyAssociationBox"}static{this.fourcc="ipma"}parse(t){this.parseFullHeader(t);const e=t.readUint32();this.associations=[];for(let i=0;i<e;i++){const s=this.version<1?t.readUint16():t.readUint32(),n=[],a=t.readUint8();for(let o=0;o<a;o++){const l=t.readUint8();n.push({essential:(l&128)>>7===1,property_index:this.flags&1?(l&127)<<8|t.readUint8():l&127})}this.associations.push({id:s,props:n})}}},AE=class extends mt{constructor(...t){super(...t),this.box_name="ImageRotation"}static{this.fourcc="irot"}parse(t){this.angle=t.readUint8()&3}},zE=class extends Z{constructor(...t){super(...t),this.box_name="ImageSpatialExtentsProperty"}static{this.fourcc="ispe"}parse(t){this.parseFullHeader(t),this.image_width=t.readUint32(),this.image_height=t.readUint32()}},ME=class extends Z{constructor(...t){super(...t),this.box_name="TAITimestampBox"}static{this.fourcc="itai"}parse(t){this.TAI_timestamp=t.readUint64();const e=t.readUint8();this.sychronization_state=e>>7&1,this.timestamp_generation_failure=e>>6&1,this.timestamp_is_modified=e>>5&1}},IE=class extends Z{constructor(...t){super(...t),this.box_name="KindBox"}static{this.fourcc="kind"}parse(t){this.parseFullHeader(t),this.schemeURI=t.readCString(),this.isEndOfBox(t)||(this.value=t.readCString())}write(t){this.version=0,this.flags=0,this.size=this.schemeURI.length+1+(this.value?this.value.length+1:0),this.writeHeader(t),t.writeCString(this.schemeURI),this.value&&t.writeCString(this.value)}},CE=class extends Z{constructor(...t){super(...t),this.box_name="LevelAssignmentBox"}static{this.fourcc="leva"}parse(t){this.parseFullHeader(t);const e=t.readUint8();this.levels=[];for(let i=0;i<e;i++){const s={};this.levels[i]=s,s.track_ID=t.readUint32();const n=t.readUint8();switch(s.padding_flag=n>>7,s.assignment_type=n&127,s.assignment_type){case 0:s.grouping_type=t.readString(4);break;case 1:s.grouping_type=t.readString(4),s.grouping_type_parameter=t.readUint32();break;case 2:break;case 3:break;case 4:s.sub_track_id=t.readUint32();break;default:q.warn("BoxParser",`Unknown level assignment type: ${s.assignment_type}`)}}}},$E=class extends mt{constructor(...t){super(...t),this.box_name="LHEVCConfigurationBox"}static{this.fourcc="lhvC"}parse(t){this.configurationVersion=t.readUint8(),this.min_spatial_segmentation_idc=t.readUint16()&4095,this.parallelismType=t.readUint8()&3;let e=t.readUint8();this.numTemporalLayers=(e&13)>>3,this.temporalIdNested=(e&4)>>2,this.lengthSizeMinusOne=e&3,this.nalu_arrays=[];const i=t.readUint8();for(let s=0;s<i;s++){const n=[];this.nalu_arrays.push(n),e=t.readUint8(),n.completeness=(e&128)>>7,n.nalu_type=e&63;const a=t.readUint16();for(let o=0;o<a;o++){const l=t.readUint16();n.push({data:t.readUint8Array(l)})}}}},OE=class extends mt{constructor(...t){super(...t),this.box_name="LayerSelectorProperty"}static{this.fourcc="lsel"}parse(t){this.layer_id=t.readUint16()}},NE=class extends mt{constructor(...t){super(...t),this.box_name="hintmaxrate"}static{this.fourcc="maxr"}parse(t){this.period=t.readUint32(),this.bytes=t.readUint32()}},Vl=class{constructor(t,e){this.x=t,this.y=e}toString(){return"("+this.x+","+this.y+")"}},FE=class extends mt{constructor(...t){super(...t),this.box_name="MasteringDisplayColourVolumeBox"}static{this.fourcc="mdcv"}parse(t){this.display_primaries=[],this.display_primaries[0]=new Vl(t.readUint16(),t.readUint16()),this.display_primaries[1]=new Vl(t.readUint16(),t.readUint16()),this.display_primaries[2]=new Vl(t.readUint16(),t.readUint16()),this.white_point=new Vl(t.readUint16(),t.readUint16()),this.max_display_mastering_luminance=t.readUint32(),this.min_display_mastering_luminance=t.readUint32()}},DE=class extends Z{constructor(...t){super(...t),this.box_name="MovieFragmentRandomAccessOffsetBox"}static{this.fourcc="mfro"}parse(t){this.parseFullHeader(t),this._size=t.readUint32()}},LE=class extends Z{constructor(...t){super(...t),this.box_name="MaskConfigurationProperty"}static{this.fourcc="mskC"}parse(t){this.parseFullHeader(t),this.bits_per_pixel=t.readUint8()}},RE=class extends mt{constructor(...t){super(...t),this.box_name="hintPacketsSent"}static{this.fourcc="npck"}parse(t){this.packetssent=t.readUint32()}},VE=class extends mt{constructor(...t){super(...t),this.box_name="hintPacketsSent"}static{this.fourcc="nump"}parse(t){this.packetssent=t.readUint64()}},HE=class{constructor(t,e){this.pad1=t,this.pad2=e}},jE=class extends Z{constructor(...t){super(...t),this.box_name="PaddingBitsBox"}static{this.fourcc="padb"}parse(t){this.parseFullHeader(t);const e=t.readUint32();this.padbits=[];for(let i=0;i<Math.floor((e+1)/2);i++){const s=t.readUint8(),n=(s&112)>>4,a=s&7;this.padbits.push(new HE(n,a))}}},GE=class extends mt{constructor(...t){super(...t),this.box_name="PixelAspectRatioBox"}static{this.fourcc="pasp"}parse(t){this.hSpacing=t.readUint32(),this.vSpacing=t.readUint32()}},qE=class extends mt{constructor(...t){super(...t),this.box_name="CuePayloadBox"}static{this.fourcc="payl"}parse(t){this.text=t.readString(this.size-this.hdr_size)}},WE=class extends mt{constructor(...t){super(...t),this.box_name="hintpayloadID"}static{this.fourcc="payt"}parse(t){this.payloadID=t.readUint32();const e=t.readUint8();this.rtpmap_string=t.readString(e)}},YE=class extends Z{constructor(...t){super(...t),this.box_name="ProgressiveDownloadInfoBox",this.rate=[],this.initial_delay=[]}static{this.fourcc="pdin"}parse(t){this.parseFullHeader(t);const e=(this.size-this.hdr_size)/8;for(let i=0;i<e;i++)this.rate[i]=t.readUint32(),this.initial_delay[i]=t.readUint32()}},KE=class extends Z{constructor(...t){super(...t),this.box_name="PixelInformationProperty"}static{this.fourcc="pixi"}parse(t){this.parseFullHeader(t),this.num_channels=t.readUint8(),this.bits_per_channels=[];for(let e=0;e<this.num_channels;e++)this.bits_per_channels[e]=t.readUint8()}},XE=class extends mt{constructor(...t){super(...t),this.box_name="hintlargestpacket"}static{this.fourcc="pmax"}parse(t){this.bytes=t.readUint32()}},JE=class extends Z{constructor(...t){super(...t),this.box_name="ProgressiveDerivedImageItemInformationProperty"}static{this.fourcc="prdi"}parse(t){if(this.parseFullHeader(t),this.step_count=t.readUint16(),this.item_count=[],this.flags&2)for(let e=0;e<this.step_count;e++)this.item_count[e]=t.readUint16()}},ZE=class extends Z{constructor(...t){super(...t),this.box_name="ProjectionFormatBox"}static{this.fourcc="prfr"}parse(t){this.parseFullHeader(t),this.projection_type=t.readUint8()&31}},QE=class extends Z{constructor(...t){super(...t),this.box_name="ProducerReferenceTimeBox"}static{this.fourcc="prft"}parse(t){this.parseFullHeader(t),this.ref_track_id=t.readUint32(),this.ntp_timestamp=t.readUint64(),this.version===0?this.media_time=t.readUint32():this.media_time=t.readUint64()}},tB=class extends Z{constructor(...t){super(...t),this.box_name="ProtectionSystemSpecificHeaderBox"}static{this.fourcc="pssh"}parse(t){if(this.parseFullHeader(t),this.system_id=Qr(t),this.kid=[],this.version>0){const i=t.readUint32();for(let s=0;s<i;s++)this.kid[s]=Qr(t)}const e=t.readUint32();e>0&&(this.protection_data=t.readUint8Array(e))}},eB=class extends Z{constructor(...t){super(...t),this.box_name="TrackCleanApertureDimensionsBox"}static{this.fourcc="clef"}parse(t){this.parseFullHeader(t),this.width=t.readUint32(),this.height=t.readUint32()}};function iB(t,e){if(t===Eo.Types.UTF8)return new TextDecoder("utf-8").decode(e);const i=new DataView(e.buffer);if(t===Eo.Types.BE_UNSIGNED_INT){if(e.length===1)return i.getUint8(0);if(e.length===2)return i.getUint16(0,!1);if(e.length===4)return i.getUint32(0,!1);if(e.length===8)return i.getBigUint64(0,!1);throw new Error("Unsupported ITIF_TYPE_BE_UNSIGNED_INT length "+e.length)}else if(t===Eo.Types.BE_SIGNED_INT){if(e.length===1)return i.getInt8(0);if(e.length===2)return i.getInt16(0,!1);if(e.length===4)return i.getInt32(0,!1);if(e.length===8)return i.getBigInt64(0,!1);throw new Error("Unsupported ITIF_TYPE_BE_SIGNED_INT length "+e.length)}else if(t===Eo.Types.BE_FLOAT32)return i.getFloat32(0,!1);q.warn("DataBox","Unsupported or unimplemented itif data type: "+t)}var Eo=class extends mt{constructor(...t){super(...t),this.box_name="DataBox"}static{this.fourcc="data"}static{this.Types={RESERVED:0,UTF8:1,UTF16:2,SJIS:3,UTF8_SORT:4,UTF16_SORT:5,JPEG:13,PNG:14,BE_SIGNED_INT:21,BE_UNSIGNED_INT:22,BE_FLOAT32:23,BE_FLOAT64:24,BMP:27,QT_ATOM:28,BE_SIGNED_INT8:65,BE_SIGNED_INT16:66,BE_SIGNED_INT32:67,BE_FLOAT32_POINT:70,BE_FLOAT32_DIMENSIONS:71,BE_FLOAT32_RECT:72,BE_SIGNED_INT64:74,BE_UNSIGNED_INT8:75,BE_UNSIGNED_INT16:76,BE_UNSIGNED_INT32:77,BE_UNSIGNED_INT64:78,BE_FLOAT64_AFFINE_TRANSFORM:79}}parse(t){this.valueType=t.readUint32(),this.country=t.readUint16(),this.country>255&&(t.seek(t.getPosition()-2),this.countryString=t.readString(2)),this.language=t.readUint16(),this.language>255&&(t.seek(t.getPosition()-2),this.parseLanguage(t)),this.raw=t.readUint8Array(this.size-this.hdr_size-8),this.value=iB(this.valueType,this.raw)}},sB=class extends Z{constructor(...t){super(...t),this.box_name="TrackEncodedPixelsDimensionsBox"}static{this.fourcc="enof"}parse(t){this.parseFullHeader(t),this.width=t.readUint32(),this.height=t.readUint32()}},nB=class extends mt{constructor(...t){super(...t),this.box_name="IlstBox"}static{this.fourcc="ilst"}parse(t){this.list={};let e=this.size-this.hdr_size;for(;e>0;){const i=t.readUint32(),s=t.readUint32(),n=Mn(t,!1,i-8);n.code===1&&(this.list[s]=n.box),e-=i}}},rB=class extends Z{constructor(...t){super(...t),this.box_name="KeysBox"}static{this.fourcc="keys"}parse(t){this.parseFullHeader(t),this.count=t.readUint32(),this.keys={};for(let e=0;e<this.count;e++){const i=t.readUint32();this.keys[e+1]=t.readString(i-4)}}},aB=class extends Z{constructor(...t){super(...t),this.box_name="TrackProductionApertureDimensionsBox"}static{this.fourcc="prof"}parse(t){this.parseFullHeader(t),this.width=t.readUint32(),this.height=t.readUint32()}},oB=class extends Be{constructor(...t){super(...t),this.box_name="TrackApertureModeDimensionsBox",this.clefs=[],this.profs=[],this.enofs=[],this.subBoxNames=["clef","prof","enof"]}static{this.fourcc="tapt"}},lB=class extends mt{constructor(...t){super(...t),this.box_name="rtpmoviehintinformation"}static{this.fourcc="rtp "}parse(t){this.descriptionformat=t.readString(4),this.sdptext=t.readString(this.size-this.hdr_size-4)}},cB=class extends Z{constructor(...t){super(...t),this.box_name="SampleAuxiliaryInformationOffsetsBox"}static{this.fourcc="saio"}parse(t){this.parseFullHeader(t),this.flags&1&&(this.aux_info_type=t.readString(4),this.aux_info_type_parameter=t.readUint32()),this.entry_count=t.readUint32(),this.offset=[];for(let e=0;e<this.entry_count;e++)this.version===0?this.offset[e]=t.readUint32():this.offset[e]=t.readUint64()}},uB=class extends Z{constructor(...t){super(...t),this.box_name="SampleAuxiliaryInformationSizesBox"}static{this.fourcc="saiz"}parse(t){if(this.parseFullHeader(t),this.flags&1&&(this.aux_info_type=t.readString(4),this.aux_info_type_parameter=t.readUint32()),this.default_sample_info_size=t.readUint8(),this.sample_count=t.readUint32(),this.sample_info_size=[],this.default_sample_info_size===0)for(let e=0;e<this.sample_count;e++)this.sample_info_size[e]=t.readUint8()}},dB=class{constructor(t,e){this.bad_pixel_row=t,this.bad_pixel_column=e}toString(){return"[row: "+this.bad_pixel_row+", column: "+this.bad_pixel_column+"]"}},fB=class extends Z{constructor(...t){super(...t),this.box_name="SensorBadPixelsMapBox"}static{this.fourcc="sbpm"}parse(t){this.parseFullHeader(t),this.component_count=t.readUint16(),this.component_index=[];for(let i=0;i<this.component_count;i++)this.component_index.push(t.readUint16());const e=t.readUint8();this.correction_applied=(e&128)===128,this.num_bad_rows=t.readUint32(),this.num_bad_cols=t.readUint32(),this.num_bad_pixels=t.readUint32(),this.bad_rows=[],this.bad_columns=[],this.bad_pixels=[];for(let i=0;i<this.num_bad_rows;i++)this.bad_rows.push(t.readUint32());for(let i=0;i<this.num_bad_cols;i++)this.bad_columns.push(t.readUint32());for(let i=0;i<this.num_bad_pixels;i++){const s=t.readUint32(),n=t.readUint32();this.bad_pixels.push(new dB(s,n))}}},hB=class extends Z{constructor(...t){super(...t),this.box_name="SchemeTypeBox"}static{this.fourcc="schm"}parse(t){this.parseFullHeader(t),this.scheme_type=t.readString(4),this.scheme_version=t.readUint32(),this.flags&1&&(this.scheme_uri=t.readString(this.size-this.hdr_size-8))}},pB=class extends mt{constructor(...t){super(...t),this.box_name="rtptracksdphintinformation"}static{this.fourcc="sdp "}parse(t){this.sdptext=t.readString(this.size-this.hdr_size)}},vB=class extends Z{constructor(...t){super(...t),this.box_name="SampleEncryptionBox"}static{this.fourcc="senc"}},mB=class extends Z{constructor(...t){super(...t),this.box_name="SMPTE2086MasteringDisplayMetadataBox"}static{this.fourcc="SmDm"}parse(t){this.parseFullHeader(t),this.primaryRChromaticity_x=t.readUint16(),this.primaryRChromaticity_y=t.readUint16(),this.primaryGChromaticity_x=t.readUint16(),this.primaryGChromaticity_y=t.readUint16(),this.primaryBChromaticity_x=t.readUint16(),this.primaryBChromaticity_y=t.readUint16(),this.whitePointChromaticity_x=t.readUint16(),this.whitePointChromaticity_y=t.readUint16(),this.luminanceMax=t.readUint32(),this.luminanceMin=t.readUint32()}},_B=class extends Z{constructor(...t){super(...t),this.box_name="SamplingRateBox"}static{this.fourcc="srat"}parse(t){this.parseFullHeader(t),this.sampling_rate=t.readUint32()}},gB=class extends Z{constructor(...t){super(...t),this.box_name="DegradationPriorityBox"}static{this.fourcc="stdp"}parse(t){this.parseFullHeader(t);const e=(this.size-this.hdr_size)/2;this.priority=[];for(let i=0;i<e;i++)this.priority[i]=t.readUint16()}},yB=class extends Z{constructor(...t){super(...t),this.box_name="SubTrackInformationBox"}static{this.fourcc="stri"}parse(t){this.parseFullHeader(t),this.switch_group=t.readUint16(),this.alternate_group=t.readUint16(),this.sub_track_id=t.readUint32();const e=(this.size-this.hdr_size-8)/4;this.attribute_list=[];for(let i=0;i<e;i++)this.attribute_list[i]=t.readUint32()}},bB=class extends Z{constructor(...t){super(...t),this.box_name="SubTrackSampleGroupBox"}static{this.fourcc="stsg"}parse(t){this.parseFullHeader(t),this.grouping_type=t.readUint32();const e=t.readUint16();this.group_description_index=[];for(let i=0;i<e;i++)this.group_description_index[i]=t.readUint32()}},xB=class extends Z{constructor(...t){super(...t),this.box_name="ShadowSyncSampleBox"}static{this.fourcc="stsh"}parse(t){this.parseFullHeader(t);const e=t.readUint32();if(this.shadowed_sample_numbers=[],this.sync_sample_numbers=[],this.version===0)for(let i=0;i<e;i++)this.shadowed_sample_numbers.push(t.readUint32()),this.sync_sample_numbers.push(t.readUint32())}write(t){this.version=0,this.flags=0,this.size=4+8*this.shadowed_sample_numbers.length,this.writeHeader(t),t.writeUint32(this.shadowed_sample_numbers.length);for(let e=0;e<this.shadowed_sample_numbers.length;e++)t.writeUint32(this.shadowed_sample_numbers[e]),t.writeUint32(this.sync_sample_numbers[e])}},wB=class extends Z{constructor(...t){super(...t),this.box_name="SyncSampleBox"}static{this.fourcc="stss"}parse(t){this.parseFullHeader(t);const e=t.readUint32();if(this.version===0){this.sample_numbers=[];for(let i=0;i<e;i++)this.sample_numbers.push(t.readUint32())}}write(t){this.version=0,this.flags=0,this.size=4+4*this.sample_numbers.length,this.writeHeader(t),t.writeUint32(this.sample_numbers.length),t.writeUint32Array(this.sample_numbers)}},SB=class extends Z{constructor(...t){super(...t),this.box_name="StereoVideoBox"}static{this.fourcc="stvi"}parse(t){this.parseFullHeader(t);const e=t.readUint32();this.single_view_allowed=e&3,this.stereo_scheme=t.readUint32();const i=t.readUint32();for(this.stereo_indication_type=t.readString(i),this.boxes=[];t.getPosition()<this.start+this.size;){const s=Mn(t,!1,this.size-(t.getPosition()-this.start));if(s.code===1){const n=s.box;this.boxes.push(n),this[n.type]=n}else return}}},kB=class extends Z{constructor(...t){super(...t),this.box_name="CompactSampleSizeBox"}static{this.fourcc="stz2"}parse(t){if(this.parseFullHeader(t),this.sample_sizes=[],this.version===0){this.reserved=t.readUint24(),this.field_size=t.readUint8();const e=t.readUint32();if(this.field_size===4)for(let i=0;i<e;i+=2){const s=t.readUint8();this.sample_sizes[i]=s>>4&15,this.sample_sizes[i+1]=s&15}else if(this.field_size===8)for(let i=0;i<e;i++)this.sample_sizes[i]=t.readUint8();else if(this.field_size===16)for(let i=0;i<e;i++)this.sample_sizes[i]=t.readUint16();else q.error("BoxParser","Error in length field in stz2 box",t.isofile)}}},EB=class extends Z{constructor(...t){super(...t),this.box_name="SubSampleInformationBox"}static{this.fourcc="subs"}parse(t){this.parseFullHeader(t);const e=t.readUint32();this.entries=[];let i;for(let s=0;s<e;s++){const n={};if(this.entries[s]=n,n.sample_delta=t.readUint32(),n.subsamples=[],i=t.readUint16(),i>0)for(let a=0;a<i;a++){const o={};n.subsamples.push(o),this.version===1?o.size=t.readUint32():o.size=t.readUint16(),o.priority=t.readUint8(),o.discardable=t.readUint8(),o.codec_specific_parameters=t.readUint32()}}}},BB=class extends Z{constructor(...t){super(...t),this.box_name="TAIClockInfoBox"}static{this.fourcc="taic"}parse(t){this.time_uncertainty=t.readUint64(),this.clock_resolution=t.readUint32(),this.clock_drift_rate=t.readInt32();const e=t.readUint8();this.clock_type=(e&192)>>6}},UB=class extends Z{constructor(...t){super(...t),this.box_name="TrackEncryptionBox"}static{this.fourcc="tenc"}parse(t){if(this.parseFullHeader(t),t.readUint8(),this.version===0)t.readUint8();else{const e=t.readUint8();this.default_crypt_byte_block=e>>4&15,this.default_skip_byte_block=e&15}this.default_isProtected=t.readUint8(),this.default_Per_Sample_IV_Size=t.readUint8(),this.default_KID=Qr(t),this.default_isProtected===1&&this.default_Per_Sample_IV_Size===0&&(this.default_constant_IV_size=t.readUint8(),this.default_constant_IV=t.readUint8Array(this.default_constant_IV_size))}},TB=class{},PB=class extends Z{constructor(...t){super(...t),this.box_name="TrackFragmentRandomAccessBox"}static{this.fourcc="tfra"}parse(t){this.parseFullHeader(t),this.track_ID=t.readUint32(),t.readUint24();const e=t.readUint8();this.length_size_of_traf_num=e>>4&3,this.length_size_of_trun_num=e>>2&3,this.length_size_of_sample_num=e&3,this.entries=[];const i=t.readUint32();for(let s=0;s<i;s++){const n=new TB;this.version===1?(n.time=t.readUint64(),n.moof_offset=t.readUint64()):(n.time=t.readUint32(),n.moof_offset=t.readUint32()),n.traf_number=t["readUint"+8*(this.length_size_of_traf_num+1)](),n.trun_number=t["readUint"+8*(this.length_size_of_trun_num+1)](),n.sample_delta=t["readUint"+8*(this.length_size_of_sample_num+1)](),this.entries.push(n)}}},AB=class extends mt{constructor(...t){super(...t),this.box_name="hintmaxrelativetime"}static{this.fourcc="tmax"}parse(t){this.time=t.readUint32()}},zB=class extends mt{constructor(...t){super(...t),this.box_name="hintminrelativetime"}static{this.fourcc="tmin"}parse(t){this.time=t.readUint32()}},MB=class extends mt{constructor(...t){super(...t),this.box_name="hintBytesSent"}static{this.fourcc="totl"}parse(t){this.bytessent=t.readUint32()}},IB=class extends mt{constructor(...t){super(...t),this.box_name="hintBytesSent"}static{this.fourcc="tpay"}parse(t){this.bytessent=t.readUint32()}},CB=class extends mt{constructor(...t){super(...t),this.box_name="hintBytesSent"}static{this.fourcc="tpyl"}parse(t){this.bytessent=t.readUint64()}},$B=class extends x4{static{this.fourcc="msrc"}},OB=class hy extends mt{constructor(...e){super(...e),this.box_name="TrackReferenceBox",this.references=[]}static{this.fourcc="tref"}static{this.allowed_types=["hint","cdsc","font","hind","vdep","vplx","subt","thmb","auxl","cdtg","shsc","aest"]}parse(e){for(;e.getPosition()<this.start+this.size;){const i=Mn(e,!0,this.size-(e.getPosition()-this.start));if(i.code===1){hy.allowed_types.includes(i.type)||q.warn("BoxParser",`Unknown track reference type: '${i.type}'`);const s=new k4(i.type,i.size,i.hdr_size,i.start);s.write===mt.prototype.write&&s.type!=="mdat"&&(q.info("BoxParser","TrackReference "+s.type+" box writing not yet implemented, keeping unparsed data in memory for later write"),s.parseDataAndRewind(e)),s.parse(e),this.references.push(s)}else return}}},NB=class extends Z{constructor(...t){super(...t),this.box_name="TrackExtensionPropertiesBox"}static{this.fourcc="trep"}parse(t){for(this.parseFullHeader(t),this.track_ID=t.readUint32(),this.boxes=[];t.getPosition()<this.start+this.size;){const e=Mn(t,!1,this.size-(t.getPosition()-this.start));if(e.code===1){const i=e.box;this.boxes.push(i)}else return}}},FB=class extends mt{constructor(...t){super(...t),this.box_name="hintBytesSent"}static{this.fourcc="trpy"}parse(t){this.bytessent=t.readUint64()}},DB=class extends Z{constructor(...t){super(...t),this.box_name="TrackSelectionBox"}static{this.fourcc="tsel"}parse(t){this.parseFullHeader(t),this.switch_group=t.readUint32();const e=(this.size-this.hdr_size-4)/4;this.attribute_list=[];for(let i=0;i<e;i++)this.attribute_list[i]=t.readUint32()}},LB=class extends Z{constructor(...t){super(...t),this.box_name="TextConfigBox"}static{this.fourcc="txtc"}parse(t){this.parseFullHeader(t),this.config=t.readCString()}},RB=class extends mt{constructor(...t){super(...t),this.box_name="TypeCombinationBox"}static{this.fourcc="tyco"}parse(t){const e=(this.size-this.hdr_size)/4;this.compatible_brands=[];for(let i=0;i<e;i++)this.compatible_brands[i]=t.readString(4)}},VB=class extends Z{constructor(...t){super(...t),this.box_name="UserDescriptionProperty"}static{this.fourcc="udes"}parse(t){this.parseFullHeader(t),this.lang=t.readCString(),this.name=t.readCString(),this.description=t.readCString(),this.tags=t.readCString()}},HB=class extends Z{constructor(...t){super(...t),this.box_name="UncompressedFrameConfigBox"}static{this.fourcc="uncC"}parse(t){if(this.parseFullHeader(t),this.profile=t.readString(4),this.version!==1){if(this.version===0){this.component_count=t.readUint32(),this.component_index=[],this.component_bit_depth_minus_one=[],this.component_format=[],this.component_align_size=[];for(let i=0;i<this.component_count;i++)this.component_index.push(t.readUint16()),this.component_bit_depth_minus_one.push(t.readUint8()),this.component_format.push(t.readUint8()),this.component_align_size.push(t.readUint8());this.sampling_type=t.readUint8(),this.interleave_type=t.readUint8(),this.block_size=t.readUint8();const e=t.readUint8();this.component_little_endian=e>>7&1,this.block_pad_lsb=e>>6&1,this.block_little_endian=e>>5&1,this.block_reversed=e>>4&1,this.pad_unknown=e>>3&1,this.pixel_size=t.readUint32(),this.row_align_size=t.readUint32(),this.tile_align_size=t.readUint32(),this.num_tile_cols_minus_one=t.readUint32(),this.num_tile_rows_minus_one=t.readUint32()}}}},jB=class extends Z{constructor(...t){super(...t),this.box_name="DataEntryUrnBox"}static{this.fourcc="urn "}parse(t){this.parseFullHeader(t),this.name=t.readCString(),this.size-this.hdr_size-this.name.length-1>0&&(this.location=t.readCString())}write(t){this.version=0,this.flags=0,this.size=this.name.length+1+(this.location?this.location.length+1:0),this.writeHeader(t),t.writeCString(this.name),this.location&&t.writeCString(this.location)}},GB=class extends mt{constructor(...t){super(...t),this.box_name="WebVTTConfigurationBox"}static{this.fourcc="vttC"}parse(t){this.text=t.readString(this.size-this.hdr_size)}},qB=class extends Z{constructor(...t){super(...t),this.box_name="VvcNALUConfigBox"}static{this.fourcc="vvnC"}parse(t){this.parseFullHeader(t);const e=t.readUint8();this.lengthSizeMinusOne=e&3}},WB=class extends Ei{static{this.grouping_type="alst"}parse(t){const e=t.readUint16();this.first_output_sample=t.readUint16(),this.sample_offset=[];for(let s=0;s<e;s++)this.sample_offset[s]=t.readUint32();const i=this.description_length-4-4*e;this.num_output_samples=[],this.num_total_samples=[];for(let s=0;s<i/4;s++)this.num_output_samples[s]=t.readUint16(),this.num_total_samples[s]=t.readUint16()}},YB=class extends Ei{static{this.grouping_type="avll"}parse(t){this.layerNumber=t.readUint8(),this.accurateStatisticsFlag=t.readUint8(),this.avgBitRate=t.readUint16(),this.avgFrameRate=t.readUint16()}},KB=class extends Ei{static{this.grouping_type="avss"}parse(t){this.subSequenceIdentifier=t.readUint16(),this.layerNumber=t.readUint8();const e=t.readUint8();this.durationFlag=e>>7,this.avgRateFlag=e>>6&1,this.durationFlag&&(this.duration=t.readUint32()),this.avgRateFlag&&(this.accurateStatisticsFlag=t.readUint8(),this.avgBitRate=t.readUint16(),this.avgFrameRate=t.readUint16()),this.dependency=[];const i=t.readUint8();for(let s=0;s<i;s++)this.dependency.push({subSeqDirectionFlag:t.readUint8(),layerNumber:t.readUint8(),subSequenceIdentifier:t.readUint16()})}},XB=class extends Ei{static{this.grouping_type="dtrt"}parse(t){q.warn("BoxParser","Sample Group type: "+this.grouping_type+" not fully parsed")}},JB=class extends Ei{static{this.grouping_type="mvif"}parse(t){q.warn("BoxParser","Sample Group type: "+this.grouping_type+" not fully parsed")}},ZB=class extends Ei{static{this.grouping_type="prol"}parse(t){this.roll_distance=t.readInt16()}},QB=class extends Ei{static{this.grouping_type="rap "}parse(t){const e=t.readUint8();this.num_leading_samples_known=e>>7,this.num_leading_samples=e&127}},tU=class extends Ei{static{this.grouping_type="rash"}parse(t){if(this.operation_point_count=t.readUint16(),this.description_length!==2+(this.operation_point_count===1?2:this.operation_point_count*6)+9)q.warn("BoxParser","Mismatch in "+this.grouping_type+" sample group length"),this.data=t.readUint8Array(this.description_length-2);else{if(this.operation_point_count===1)this.target_rate_share=t.readUint16();else{this.target_rate_share=[],this.available_bitrate=[];for(let e=0;e<this.operation_point_count;e++)this.available_bitrate[e]=t.readUint32(),this.target_rate_share[e]=t.readUint16()}this.maximum_bitrate=t.readUint32(),this.minimum_bitrate=t.readUint32(),this.discard_priority=t.readUint8()}}},eU=class extends Ei{static{this.grouping_type="roll"}parse(t){this.roll_distance=t.readInt16()}},iU=class extends Ei{static{this.grouping_type="scif"}parse(t){q.warn("BoxParser","Sample Group type: "+this.grouping_type+" not fully parsed")}},sU=class extends Ei{static{this.grouping_type="scnm"}parse(t){q.warn("BoxParser","Sample Group type: "+this.grouping_type+" not fully parsed")}},nU=class extends Ei{static{this.grouping_type="seig"}parse(t){this.reserved=t.readUint8();const e=t.readUint8();this.crypt_byte_block=e>>4,this.skip_byte_block=e&15,this.isProtected=t.readUint8(),this.Per_Sample_IV_Size=t.readUint8(),this.KID=Qr(t),this.constant_IV_size=0,this.constant_IV=0,this.isProtected===1&&this.Per_Sample_IV_Size===0&&(this.constant_IV_size=t.readUint8(),this.constant_IV=t.readUint8Array(this.constant_IV_size))}},rU=class extends Ei{static{this.grouping_type="stsa"}parse(t){q.warn("BoxParser","Sample Group type: "+this.grouping_type+" not fully parsed")}},aU=class extends Ei{static{this.grouping_type="sync"}parse(t){const e=t.readUint8();this.NAL_unit_type=e&63}},oU=class extends Ei{static{this.grouping_type="tele"}parse(t){const e=t.readUint8();this.level_independently_decodable=e>>7}},lU=class extends Ei{static{this.grouping_type="tsas"}parse(t){q.warn("BoxParser","Sample Group type: "+this.grouping_type+" not fully parsed")}},cU=class extends Ei{static{this.grouping_type="tscl"}parse(t){q.warn("BoxParser","Sample Group type: "+this.grouping_type+" not fully parsed")}},uU=class extends Ei{static{this.grouping_type="vipr"}parse(t){q.warn("BoxParser","Sample Group type: "+this.grouping_type+" not fully parsed")}},py=class extends mt{static{this.fourcc="uuid"}},Ha=class extends Z{static{this.fourcc="uuid"}},dU=class extends Ha{constructor(...t){super(...t),this.box_name="LiveServerManifestBox"}static{this.uuid="a5d40b30e81411ddba2f0800200c9a66"}parse(t){this.parseFullHeader(t),this.LiveServerManifest=t.readString(this.size-this.hdr_size).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")}},fU=class extends Ha{constructor(...t){super(...t),this.box_name="PiffProtectionSystemSpecificHeaderBox"}static{this.uuid="d08a4f1810f34a82b6c832d8aba183d3"}parse(t){this.parseFullHeader(t),this.system_id=Qr(t);const e=t.readUint32();e>0&&(this.data=t.readUint8Array(e))}},hU=class extends Ha{constructor(...t){super(...t),this.box_name="PiffSampleEncryptionBox"}static{this.uuid="a2394f525a9b4f14a2446c427c648df4"}},pU=class extends Ha{constructor(...t){super(...t),this.box_name="PiffTrackEncryptionBox"}static{this.uuid="8974dbce7be74c5184f97148f9882554"}parse(t){this.parseFullHeader(t),this.default_AlgorithmID=t.readUint24(),this.default_IV_size=t.readUint8(),this.default_KID=Qr(t)}},vU=class extends Ha{constructor(...t){super(...t),this.box_name="TfrfBox"}static{this.uuid="d4807ef2ca3946958e5426cb9e46a79f"}parse(t){this.parseFullHeader(t),this.fragment_count=t.readUint8(),this.entries=[];for(let e=0;e<this.fragment_count;e++){let i=0,s=0;this.version===1?(i=t.readUint64(),s=t.readUint64()):(i=t.readUint32(),s=t.readUint32()),this.entries.push({absolute_time:i,absolute_duration:s})}}},mU=class extends Ha{constructor(...t){super(...t),this.box_name="TfxdBox"}static{this.uuid="6d1d9b0542d544e680e2141daff757b2"}parse(t){this.parseFullHeader(t),this.version===1?(this.absolute_time=t.readUint64(),this.duration=t.readUint64()):(this.absolute_time=t.readUint32(),this.duration=t.readUint32())}},_U=class extends py{constructor(...t){super(...t),this.box_name="ItemContentIDProperty"}static{this.uuid="261ef3741d975bbaacbd9d2c8ea73522"}parse(t){this.content_id=t.readCString()}},gU=class extends py{constructor(...t){super(...t),this.box_name="ItemComponentContentIDProperty"}static{this.uuid="9db9dd6e373c5a4e811021fc83a911fd"}parse(t){this.number_of_components=t.readUint32(),this.content_ids=[];for(let e=0;e<this.number_of_components;e++){const i=t.readCString();this.content_ids.push(i)}}},yU=kg({CoLLBox:()=>q5,ItemComponentContentIDPropertyBox:()=>gU,ItemContentIDPropertyBox:()=>_U,OpusSampleEntry:()=>t5,SmDmBox:()=>mB,a1lxBox:()=>I5,a1opBox:()=>C5,ac_3SampleEntry:()=>J3,ac_4SampleEntry:()=>Z3,aebrBox:()=>cE,afbrBox:()=>uE,albcBox:()=>dE,alstSampleGroupEntry:()=>WB,altrBox:()=>fE,auxCBox:()=>$5,av01SampleEntry:()=>B3,av1CBox:()=>v3,avc1SampleEntry:()=>w3,avc2SampleEntry:()=>S3,avc3SampleEntry:()=>k3,avc4SampleEntry:()=>E3,avcCBox:()=>Ug,avllSampleGroupEntry:()=>YB,avs3SampleEntry:()=>j3,avssSampleGroupEntry:()=>KB,brstBox:()=>hE,btrtBox:()=>O5,bxmlBox:()=>D4,ccstBox:()=>N5,cdefBox:()=>F5,clapBox:()=>D5,clefBox:()=>eB,clliBox:()=>L5,cmexBox:()=>R5,cminBox:()=>V5,cmpCBox:()=>H5,cmpdBox:()=>j5,co64Box:()=>G5,colrBox:()=>x3,coviBox:()=>K5,cprtBox:()=>X5,cschBox:()=>J5,cslgBox:()=>Z5,cttsBox:()=>Q5,dOpsBox:()=>aE,dac3Box:()=>tE,dataBox:()=>Eo,dav1SampleEntry:()=>U3,dec3Box:()=>eE,dfLaBox:()=>iE,dimmBox:()=>sE,dinfBox:()=>Mg,dmax:()=>nE,dmedBox:()=>rE,dobrBox:()=>pE,drefBox:()=>Og,drepBox:()=>oE,dtrtSampleGroupEntry:()=>XB,dvh1SampleEntry:()=>O3,dvheSampleEntry:()=>N3,ec_3SampleEntry:()=>Q3,edtsBox:()=>R4,elngBox:()=>Ng,elstBox:()=>lE,emsgBox:()=>k5,encaSampleEntry:()=>o5,encmSampleEntry:()=>f5,encsSampleEntry:()=>c5,enctSampleEntry:()=>d5,encuSampleEntry:()=>l5,encvSampleEntry:()=>a5,enofBox:()=>sB,eqivBox:()=>vE,esdsBox:()=>m3,etypBox:()=>n3,fLaCSampleEntry:()=>r5,favcBox:()=>mE,fielBox:()=>BE,fobrBox:()=>_E,freeBox:()=>$4,frmaBox:()=>UE,ftypBox:()=>Fg,grplBox:()=>i3,hdlrBox:()=>Dg,hev1SampleEntry:()=>A3,hev2SampleEntry:()=>z3,hinfBox:()=>q4,hmhdBox:()=>Tg,hntiBox:()=>G4,hvc1SampleEntry:()=>T3,hvc2SampleEntry:()=>P3,hvcCBox:()=>Lg,hvt1SampleEntry:()=>M3,iaugBox:()=>gE,idatBox:()=>C4,iinfBox:()=>o3,ilocBox:()=>l3,ilstBox:()=>nB,imirBox:()=>TE,infeBox:()=>a3,iodsBox:()=>N4,ipcoBox:()=>e3,ipmaBox:()=>PE,iproBox:()=>L4,iprpBox:()=>t3,irefBox:()=>u3,irotBox:()=>AE,ispeBox:()=>zE,itaiBox:()=>ME,j2kHBox:()=>s3,j2kiSampleEntry:()=>G3,keysBox:()=>rB,kindBox:()=>IE,levaBox:()=>CE,lhe1SampleEntry:()=>I3,lhv1SampleEntry:()=>C3,lhvCBox:()=>$E,lselBox:()=>OE,lvc1SampleEntry:()=>$3,lvcCBox:()=>g3,m4aeSampleEntry:()=>X3,maxrBox:()=>NE,mdatBox:()=>oc,mdcvBox:()=>FE,mdhdBox:()=>Rg,mdiaBox:()=>Ag,mecoBox:()=>j4,mehdBox:()=>Vg,metaBox:()=>f3,mettSampleEntry:()=>h3,metxSampleEntry:()=>p3,mfhdBox:()=>jg,mfraBox:()=>H4,mfroBox:()=>DE,mha1SampleEntry:()=>e5,mha2SampleEntry:()=>i5,mhm1SampleEntry:()=>s5,mhm2SampleEntry:()=>n5,minfBox:()=>zg,mjp2SampleEntry:()=>q3,mjpgSampleEntry:()=>W3,moofBox:()=>Cg,moovBox:()=>cc,mp4aSampleEntry:()=>Yg,mp4sSampleEntry:()=>u5,mp4vSampleEntry:()=>K3,mskCBox:()=>LE,msrcTrackGroupTypeBox:()=>$B,mvexBox:()=>qd,mvhdBox:()=>Gg,mvifSampleGroupEntry:()=>JB,nmhdBox:()=>lc,npckBox:()=>RE,numpBox:()=>VE,padbBox:()=>jE,panoBox:()=>yE,paspBox:()=>GE,paylBox:()=>qE,paytBox:()=>WE,pdinBox:()=>YE,piffLsmBox:()=>dU,piffPsshBox:()=>fU,piffSencBox:()=>hU,piffTencBox:()=>pU,piffTfrfBox:()=>vU,piffTfxdBox:()=>mU,pitmBox:()=>d3,pixiBox:()=>KE,pmaxBox:()=>XE,povdBox:()=>r3,prdiBox:()=>JE,prfrBox:()=>ZE,prftBox:()=>QE,prgrBox:()=>kE,profBox:()=>aB,prolSampleGroupEntry:()=>ZB,psshBox:()=>tB,pymdBox:()=>EE,rapSampleGroupEntry:()=>QB,rashSampleGroupEntry:()=>tU,resvSampleEntry:()=>h5,rinfBox:()=>X4,rollSampleGroupEntry:()=>eU,rtp_Box:()=>lB,saioBox:()=>cB,saizBox:()=>uB,sbgpBox:()=>g5,sbpmBox:()=>fB,sbttSampleEntry:()=>p5,schiBox:()=>J4,schmBox:()=>hB,scifSampleGroupEntry:()=>iU,scnmSampleGroupEntry:()=>sU,sdp_Box:()=>pB,sdtpBox:()=>y5,seigSampleGroupEntry:()=>nU,sencBox:()=>vB,sgpdBox:()=>b5,sidxBox:()=>x5,sinfBox:()=>K4,skipBox:()=>O4,slidBox:()=>bE,smhdBox:()=>Xg,sratBox:()=>_B,ssixBox:()=>E5,stblBox:()=>Ig,stcoBox:()=>Jg,stdpBox:()=>gB,sterBox:()=>xE,sthdBox:()=>Zg,stppSampleEntry:()=>Kg,strdBox:()=>Y4,striBox:()=>yB,strkBox:()=>W4,stsaSampleGroupEntry:()=>rU,stscBox:()=>Qg,stsdBox:()=>ty,stsgBox:()=>bB,stshBox:()=>xB,stssBox:()=>wB,stszBox:()=>ey,sttsBox:()=>iy,stviBox:()=>SB,stxtSampleEntry:()=>v5,stypBox:()=>B5,stz2Box:()=>kB,subsBox:()=>EB,syncSampleGroupEntry:()=>aU,taicBox:()=>BB,taptBox:()=>oB,teleSampleGroupEntry:()=>oU,tencBox:()=>UB,tfdtBox:()=>sy,tfhdBox:()=>ny,tfraBox:()=>PB,tkhdBox:()=>ry,tmaxBox:()=>AB,tminBox:()=>zB,totlBox:()=>MB,tpayBox:()=>IB,tpylBox:()=>CB,trafBox:()=>$g,trakBox:()=>Pg,trefBox:()=>OB,trepBox:()=>NB,trexBox:()=>Wd,trgrBox:()=>Z4,trpyBox:()=>FB,trunBox:()=>ay,tsasSampleGroupEntry:()=>lU,tsclSampleGroupEntry:()=>cU,tselBox:()=>DB,tsynBox:()=>wE,tx3gSampleEntry:()=>m5,txtcBox:()=>LB,tycoBox:()=>RB,udesBox:()=>VB,udtaBox:()=>Q4,uncCBox:()=>HB,uncvSampleEntry:()=>Y3,urlBox:()=>oy,urnBox:()=>jB,viprSampleGroupEntry:()=>uU,vmhdBox:()=>ly,vp08SampleEntry:()=>V3,vp09SampleEntry:()=>H3,vpcCBox:()=>y3,vttCBox:()=>GB,vttcBox:()=>V4,vvc1SampleEntry:()=>F3,vvcCBox:()=>b3,vvcNSampleEntry:()=>R3,vvi1SampleEntry:()=>D3,vvnCBox:()=>qB,vvs1SampleEntry:()=>L3,waveBox:()=>_3,wbbrBox:()=>SE,wvttSampleEntry:()=>_5,xmlBox:()=>F4});A4(yU);z4(U5);function bU(t){return new Promise((e,i)=>{const s=S5();let n=!1;const a=l=>{n||(n=!0,i(new Error(l)))};s.onError=(l,c)=>a(`${l}: ${c}`),s.onReady=l=>{const c=l.videoTracks[0];if(!c)return a("MP4 contains no video track");const u=[];s.onSamples=(d,h,v)=>{u.push(...v),!(u.length<c.nb_samples||n)&&(n=!0,e({codec:c.codec,width:c.video?.width??c.track_width,height:c.video?.height??c.track_height,duration:c.duration/c.timescale,description:xU(s,c.id),samples:u}))},s.setExtractionOptions(c.id,void 0,{nbSamples:c.nb_samples}),s.start()};const o=t.slice(0);o.fileStart=0,s.appendBuffer(o,!0),s.flush()})}function xU(t,e){const i=t.getTrackById(e).mdia.minf.stbl.stsd.entries[0],s=i.avcC??i.hvcC??i.vpcC??i.av1C;if(!s)return;const n=new Qi;return s.write(n),new Uint8Array(n.buffer.slice(8))}class Xc{canvas;decoder;config;samples;frames=[];current;sampleIndex=0;lastTime=-1;decoderError;static async create(e){if(typeof VideoDecoder>"u")throw new Error("WebCodecs VideoDecoder is unavailable");const i={codec:e.codec,codedWidth:e.width,codedHeight:e.height,description:e.description},s=await VideoDecoder.isConfigSupported(i);if(!s.supported)throw new Error(`WebCodecs does not support ${e.codec}`);return new Xc(e,s.config??i)}constructor(e,i){this.samples=e.samples,this.config=i,this.canvas=document.createElement("canvas"),this.canvas.width=e.width,this.canvas.height=e.height,this.decoder=new VideoDecoder({output:s=>this.frames.push(s),error:s=>this.decoderError=s}),this.decoder.configure(i)}async renderAt(e){const i=Math.max(0,e)*1e6;for((this.lastTime<0||i<this.lastTime)&&this.restartAt(i),this.lastTime=i,await this.decodeThrough(i+25e4),this.frames.sort((n,a)=>n.timestamp-a.timestamp);this.frames[0]&&this.frames[0].timestamp<=i;)this.current?.close(),this.current=this.frames.shift();if(!this.current&&this.frames[0]&&(this.current=this.frames.shift()),!this.current)throw new Error("WebCodecs produced no video frame");const s=this.canvas.getContext("2d");if(!s)throw new Error("Could not create decoded video canvas");s.drawImage(this.current,0,0,this.canvas.width,this.canvas.height)}close(){this.current?.close(),this.frames.splice(0).forEach(e=>e.close()),this.decoder.close()}restartAt(e){this.current?.close(),this.current=void 0,this.frames.splice(0).forEach(s=>s.close()),this.decoder.reset(),this.decoder.configure(this.config);const i=e/1e6;this.sampleIndex=0;for(let s=0;s<this.samples.length;s+=1){const n=this.samples[s];if(n.cts/n.timescale>i)break;n.is_sync&&(this.sampleIndex=s)}}async decodeThrough(e){let i=0;for(;this.sampleIndex<this.samples.length;){const s=this.samples[this.sampleIndex],n=s.cts/s.timescale*1e6;if(i&&n>e)break;if(!s.data)throw new Error("MP4 sample data is unavailable");this.decoder.decode(new EncodedVideoChunk({type:s.is_sync?"key":"delta",timestamp:n,duration:s.duration/s.timescale*1e6,data:s.data})),this.sampleIndex+=1,i+=1}if(i&&await this.decoder.flush(),this.decoderError)throw this.decoderError}}const wU=Object.freeze(Object.defineProperty({__proto__:null,Mp4FrameSource:Xc,demuxMp4:bU},Symbol.toStringTag,{value:"Module"})),_o="/api/exports";function SU(t){return typeof document<"u"}async function kU(t){const{scene:e,assets:i,height:s,fps:n,audioUrl:a,onProgress:o}=t;return EU({scene:e,assets:i,height:s,fps:n,audioUrl:a,onProgress:o})}async function EU(t){const{scene:e,assets:i,height:s,fps:n,audioUrl:a,onProgress:o}=t,l=Math.round(s*e.canvas.width/e.canvas.height),c=document.createElement("canvas");c.width=l,c.height=s;const u=new yg(c),d=MU(e,l,s),h=TU(d.canvas.duration,n),v=await zU(_o,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({width:l,height:s,fps:n,duration:d.canvas.duration,totalFrames:h,hasAudio:!!a,audioStart:d.audioStart})}),m=await BU(i);try{const y=$k(m.assets);y&&await Ck(m.assets);const _=performance.now();let S=[],T=0;for(let $=0;$<h;$+=1){y&&await PU(_,$,n);const M=pg(d,$/n);await UU(M,m.sources),await _g(M,m.assets,{playing:!1,exact:!0}),u.render(M,m.assets);const D=await AU(c);S.push(dc(`${_o}/${v.id}/frames/${$}`,{method:"PUT",headers:{"content-type":"image/jpeg"},body:D}).then(()=>{T+=1,o?.(T/h*.8)})),S.length===4&&(await Promise.all(S),S=[]),$%4===0&&await vy(0)}if(await Promise.all(S),a){const $=await fetch(a);if(!$.ok)throw new Error(`Could not load audio (${$.status})`);await dc(`${_o}/${v.id}/audio`,{method:"PUT",headers:{"content-type":$.headers.get("content-type")??"application/octet-stream"},body:await $.blob()})}o?.(.85);const C=await(await dc(`${_o}/${v.id}/finish`,{method:"POST"})).blob();return o?.(1),C}catch(y){throw await fetch(`${_o}/${v.id}`,{method:"DELETE"}).catch(()=>{}),y}finally{m.sources.forEach(y=>y.close())}}async function BU(t){const e=new Map(t),i=new Map;if(typeof VideoDecoder>"u")return{assets:e,sources:i};for(const[s,n]of t){if(!n.motionlyMp4)continue;const a=await Xc.create(n.motionlyMp4),o=a.canvas;Object.assign(o,{motionlyType:"image",motionlySource:n.motionlySource}),e.set(s,o),i.set(s,a)}return{assets:e,sources:i}}async function UU(t,e){const i=new Map;for(const s of t.elements)s.assetName&&e.has(s.assetName)&&i.set(s.assetName,Number(s.render.mediaTime??0));await Promise.all([...i].flatMap(([s,n])=>{const a=e.get(s);return a?[a.renderAt(n)]:[]}))}function TU(t,e){return Math.max(1,Math.ceil(t*e))}async function PU(t,e,i){const s=t+e*1e3/i-performance.now();s>0&&await vy(s)}function AU(t){return new Promise((e,i)=>{t.toBlob(s=>{s?e(s):i(new Error("Could not capture an export frame"))},"image/jpeg",.95)})}async function dc(t,e){let i;try{i=await fetch(t,e)}catch{throw new Error("MP4 export requires the local Motionly server with ffmpeg installed")}if(!i.ok){const s=(await i.text()).trim();throw new Error(s||`MP4 export failed (${i.status})`)}return i}async function zU(t,e){const i=await dc(t,e);if(!(i.headers.get("content-type")??"").toLowerCase().includes("application/json"))throw new Error("MP4 export API is unavailable. Start Motionly with npx @coppsary/motionly dev and try again");return await i.json()}function MU(t,e,i){const s=e/t.canvas.width;return{...t,canvas:{...t.canvas,width:e,height:i},camera:go(t.camera,s),elements:t.elements.map(n=>({...n,properties:go(n.properties,s)})),animations:t.animations.map(n=>({...n,from:go(n.from,s),to:go(n.to,s),keyframes:n.keyframes.map(a=>({...a,properties:go(a.properties,s)}))}))}}function go(t,e){const i={...t};for(const s of["x","y","width","height","blur","shadow","size","tracking"]){const n=i[s];typeof n=="number"&&(i[s]=n*e)}return i}function vy(t){return new Promise(e=>setTimeout(e,t))}function Se(t){return t.body.map(IU).join(`
2653
+
2654
+ `)}function IU(t){if(t.type==="Canvas")return bn("canvas",t.properties);if(t.type==="Camera")return bn("camera",t.properties);if(t.type==="Audio"){const i=`audio "${Yd(t.path)}"`;return Object.keys(t.properties).length?bn(i,t.properties):i}if(t.type==="Clip")return bn(`clip ${t.assetName}`,t.properties);if(t.type==="Track")return bn(`track ${t.name}`,t.properties);if(t.type==="Import")return`import "${Yd(t.path)}" as ${t.name}`;if(t.type==="Sequence")return bn(`sequence ${t.name}`,t.properties);if(t.type==="Element")return bn(`${t.kind==="asset"?"":`${t.kind} `}${t.name}`.trim(),t.properties);if(t.type!=="Animation")return"";const e=[`animate ${t.target} {`];if(t.from&&Object.keys(t.from).length&&e.push(Hl(bn("from",t.from))),t.to&&Object.keys(t.to).length&&e.push(Hl(bn("to",t.to))),t.keyframes?.length){e.push(" keyframes {");for(const i of t.keyframes){const s=Number((i.offset*100).toFixed(3)),n=i.easing?{...i.properties,ease:i.easing}:i.properties;e.push(Hl(Hl(bn(`${s}%`,n))))}e.push(" }")}return t.delay!==void 0&&e.push(` delay ${Lv(t.delay)}`),t.duration!==void 0&&e.push(` duration ${Lv(t.duration)}`),t.easing&&e.push(` easing ${t.easing}`),e.push("}"),e.join(`
2655
+ `)}function bn(t,e){const i=[`${t} {`];for(const[s,n]of Object.entries(e))i.push(n===!0?` ${s}`:` ${s} ${CU(n)}`);return i.push("}"),i.join(`
2656
+ `)}function Hl(t){return t.split(`
2657
+ `).map(e=>` ${e}`).join(`
2658
+ `)}function CU(t){if(typeof t=="number")return Number.isInteger(t)?String(t):String(Number(t.toFixed(3)));const e=String(t);return/\s|"/.test(e)?`"${Yd(e)}"`:e}function Lv(t){return typeof t=="number"?`${Number(t.toFixed(3))}s`:String(t)}function Yd(t){return t.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\n/g,"\\n")}function $U(t,e){const i=[];for(const s of t){const n={element:s,range:e(s.id)},a=String((n.element.properties??{}).track??""),o=a?i.find(l=>l.trackId===a):void 0;if(o){o.items.push({...n,lane:0}),o.start=Math.min(o.start,n.range.start),o.end=Math.max(o.end,n.range.end);continue}i.push({kind:n.element.kind,trackId:a||`legacy-${n.element.id}`,items:[{...n,lane:0}],start:n.range.start,end:n.range.end,laneCount:1})}return i}function OU(t,e=[]){const i=new Map;for(const s of e)i.set(s.id,[]);for(const s of t)i.set(s.track,[...i.get(s.track)??[],s]);return Array.from(i,([s,n])=>{const a=[],o=n.map((c,u)=>({clip:c,sourceOrder:u})).sort((c,u)=>c.clip.start-u.clip.start||c.sourceOrder-u.sourceOrder).map(({clip:c})=>{let u=a.findIndex(d=>d<=c.start);return u<0&&(u=a.length),a[u]=c.start+c.duration,{clip:c,lane:u}}),l=e.find(c=>c.id===String(s))??null;return{track:s,metadata:l,clips:o,elements:[],laneCount:Math.max(1,a.length)}}).sort((s,n)=>!s.metadata&&!n.metadata?Number(n.track)-Number(s.track):Rv(s.metadata)-Rv(n.metadata))}function NU(t,e){const i=new Set(t.map(a=>String(a.track))),s=e.filter(a=>!i.has(a.trackId));return{clipTracks:t.map(a=>{const o=e.filter(d=>d.trackId===String(a.track)).flatMap(d=>d.items);if(o.length===0)return a;const l=[...a.clips.map(({clip:d})=>({type:"clip",id:d.id,start:d.start,end:d.start+d.duration})),...o.map(d=>({type:"element",id:d.element.id,start:d.range.start,end:d.range.end}))].sort((d,h)=>d.start-h.start||d.end-h.end),c=[],u=new Map;for(const d of l){let h=c.findIndex(v=>v<=d.start);h<0&&(h=c.length),c[h]=d.end,u.set(`${d.type}:${d.id}`,h)}return{...a,clips:a.clips.map(({clip:d})=>({clip:d,lane:u.get(`clip:${d.id}`)??0})),elements:o.map(d=>({item:d,lane:u.get(`element:${d.element.id}`)??0})),laneCount:Math.max(1,c.length)}}),elementLanes:s}}function Rv(t){return t?t.role==="audio"?1e6:t.order:9e3}function jl(t,e){return[t,t+e/2,t+e]}function Vv(t,e,i){let s=null;for(const n of t)for(const a of e){const o=a-n;Math.abs(o)>i||(!s||Math.abs(o)<Math.abs(s.delta))&&(s={delta:o,guide:a})}return s}function FU(t,e,i,s){const n=[0,i.width/2,i.width],a=[0,i.height/2,i.height];for(const c of e)n.push(...jl(c.x,c.width)),a.push(...jl(c.y,c.height));const o=Vv(jl(t.x,t.width),n,s),l=Vv(jl(t.y,t.height),a,s);return{rect:{...t,x:t.x+(o?.delta??0),y:t.y+(l?.delta??0)},guides:{vertical:o?.guide??null,horizontal:l?.guide??null}}}function DU(t,e,i){return i==="left"?{...t,x:0}:i==="center-x"?{...t,x:(e.width-t.width)/2}:i==="right"?{...t,x:e.width-t.width}:i==="top"?{...t,y:0}:i==="center-y"?{...t,y:(e.height-t.height)/2}:{...t,y:e.height-t.height}}function my(t){return Number.isFinite(t)?Math.min(1,Math.max(0,t)):0}function Kd(t){return[...t].sort((e,i)=>e.offset-i.offset)}function Hv(t,e={},i={}){return t?.length?t.map(s=>({...s,properties:{...s.properties}})):[{offset:0,properties:{...e}},{offset:1,properties:{...i}}]}function LU(t,e,i,s=1e-6){const n=my(e),a=t.find(o=>Math.abs(o.offset-n)<=s);return Kd(a?t.map(o=>o===a?{...o,offset:n,properties:{...o.properties,...i}}:{...o,properties:{...o.properties}}):[...t,{offset:n,properties:{...i}}])}function RU(t,e,i,s=1e-6){return t.map(n=>Math.abs(n.offset-e)<=s?{...n,properties:{...n.properties},easing:i||void 0}:{...n,properties:{...n.properties}})}function jv(t,e,i,s=1e-6){const n=t.findIndex(o=>Math.abs(o.offset-e)<=s);if(n<0)return t;const a=t.map((o,l)=>l===n?{...o,offset:my(i),properties:{...o.properties}}:{...o,properties:{...o.properties}});return Kd(a)}function Gv(t,e,i=1e-6){return t.filter(s=>Math.abs(s.offset-e)>i).map(s=>({...s,properties:{...s.properties}}))}const $a=1/60;function ms(t,e){return Number.isFinite(t)?t:e}function Yo(t){return Math.max(Number.EPSILON,ms(t??$a,$a))}function Jc(t){return{start:Math.max(0,ms(t.start,0)),duration:Math.max(0,ms(t.duration,0)),trimIn:Math.max(0,ms(t.trimIn,0)),trimOut:Math.max(0,ms(t.trimOut,0))}}function VU(t,e,i,s=5,n=$a){const a=Math.max(0,ms(i,0)),o=Math.min(a,Math.max(0,ms(t,0))),l=Math.max(Yo(n),ms(s,5)),c=Math.max(Yo(n),ms(e,0)>0?e:l);return{start:o,duration:c,timelineDuration:Math.max(a,o+c)}}function HU(t,e,i=Number.POSITIVE_INFINITY){const s=Jc(t),n=Math.max(0,ms(i,Number.POSITIVE_INFINITY)),a=Math.min(n,Math.max(0,ms(e,s.start)));return{...s,start:a}}function jU(t,e,i=$a){const s=Jc(t),n=Math.min(s.duration,Yo(i)),a=ms(e,s.start)-s.start,o=Math.min(s.duration-n,Math.max(-s.trimIn,a));return{...s,start:s.start+o,duration:s.duration-o,trimIn:s.trimIn+o}}function GU(t,e,i=$a){const s=Jc(t),n=Math.min(s.duration,Yo(i)),a=s.start+s.duration,o=ms(e,a)-a,l=Math.min(s.trimOut,Math.max(n-s.duration,o));return{...s,duration:s.duration+l,trimOut:s.trimOut-l}}function qU(t,e,i=$a){const s=Jc(t),n=Yo(i),a=ms(e,s.start)-s.start;return a<n||s.duration-a<n?null:[{...s,duration:a,trimOut:s.trimOut+s.duration-a},{...s,start:s.start+a,duration:s.duration-a,trimIn:s.trimIn+a}]}const _y=(t,e)=>String(t.track)===String(e.track);function WU(t,e=1/60){const i=[],s=new Map;for(const n of t){const a=String(n.track);s.set(a,[...s.get(a)??[],n])}for(const n of s.values()){const a=[...n].sort((o,l)=>o.start-l.start||o.sourceOrder-l.sourceOrder);for(const o of a){const l=o.start+o.duration,c=a.find(d=>d.id!==o.id&&Math.abs(d.start-l)<=e);if(!c||!_y(o,c))continue;const u=o.transitionOut==="crossfade"&&c.transitionIn==="crossfade";i.push({outgoing:o,incoming:c,at:l,type:u?"crossfade":null,duration:u?Math.min(o.transitionOutDuration,c.transitionInDuration):0})}}return i.sort((n,a)=>Number(n.outgoing.track)-Number(a.outgoing.track)||n.at-a.at)}function YU(t,e,i,s=1/60){const n=t.start+t.duration;if(!_y(t,e)||Math.abs(e.start-n)>s)return null;const a=Number.isFinite(i)?i:.5,o=Math.min(t.duration,e.duration);if(o<=0)return null;const l=Math.min(o,Math.max(Math.min(1/120,o),a));return{type:"crossfade",duration:l,outgoing:{transitionOut:"crossfade",transitionOutDuration:l},incoming:{transitionIn:"crossfade",transitionInDuration:l}}}function qv(){return{outgoing:["transitionOut","transitionOutDuration"],incoming:["transitionIn","transitionInDuration"]}}function Cc(t,e,i,s=1/60){const n=Math.max(0,e),a=Math.max(n+s,i);return{...t,start:`${n.toFixed(3)}s`,duration:`${(a-n).toFixed(3)}s`}}function KU(t,e,i,s,n,a=1/60){const o=t.body.find(c=>c.type==="Element"&&c.name===e);if(!o)return!1;const l=i-n;o.properties=Cc(o.properties,i,s,a);for(const c of t.body)c.type!=="Animation"||c.target!==e||(c.delay=`${(Hc(c.delay??0)+l).toFixed(3)}s`);return!0}function XU(t,e,i,s,n,a=1/60){if(i-s.start<a||s.end-i<a)return null;const o=t.body.find(v=>v.type==="Element"&&v.name===e);if(!o||t.body.some(v=>"name"in v&&v.name===n))return null;const l=t.body.find(v=>v.type==="Import"&&v.name===e),c={...o,properties:Cc(o.properties,s.start,i,a)},u={...o,name:n,properties:Cc(o.properties,i,s.end,a)},d=l?{...l,name:n}:null,h=[];for(const v of t.body){if(v===o){h.push(c),d&&h.push(d),h.push(u);continue}h.push(v),v.type==="Animation"&&v.target===e&&h.push(JU(v,n))}return{program:{...t,body:h},leftId:e,rightId:n}}function JU(t,e){return{...t,target:e,from:t.from?{...t.from}:void 0,to:t.to?{...t.to}:void 0,keyframes:t.keyframes?.map(i=>({...i,properties:{...i.properties}}))}}function ZU(t){return{past:[],present:t,future:[]}}function Gl(t,e,i=100){return e===t.present?t:{past:[...t.past,t.present].slice(-Math.max(1,i)),present:e,future:[]}}function QU(t){const e=t.past.at(-1);return e===void 0?t:{past:t.past.slice(0,-1),present:e,future:[t.present,...t.future]}}function tT(t){const e=t.future[0];return e===void 0?t:{past:[...t.past,t.present],present:e,future:t.future.slice(1)}}function eT(t,e=!1){const i=t.ctrlKey||t.metaKey,s=t.key.toLowerCase();return i?!t.altKey&&!t.shiftKey&&s==="s"?"save":!t.altKey&&!t.shiftKey&&!e&&s==="d"?"duplicate-selection":!t.altKey&&!e&&s==="z"?t.shiftKey?"redo":"undo":null:e||t.altKey?null:t.key===" "?"toggle-playback":t.key==="Delete"||t.key==="Backspace"?"delete-selection":t.key==="ArrowLeft"?"nudge-left":t.key==="ArrowRight"?"nudge-right":t.key==="ArrowUp"?"nudge-up":t.key==="ArrowDown"?"nudge-down":t.key==="Home"?"reset-playhead":t.key==="Escape"?"clear-selection":!t.shiftKey&&s==="s"?"split":null}function iT(t,e,i=24){const s=t.body.find(y=>y.type==="Element"&&y.name===e);if(!s)return null;const n=new Set(t.body.flatMap(y=>y.type==="Element"||y.type==="Import"?[y.name]:[])),a=`${e}_copy`;let o=a,l=2;for(;n.has(o);)o=`${a}_${l++}`;const c=t.body.find(y=>y.type==="Import"&&y.name===e),u={...s,name:o,properties:{...s.properties,x:Number(s.properties.x??0)+i,y:Number(s.properties.y??0)+i}},d=t.body.filter(y=>y.type==="Animation"&&y.target===e).map(y=>nT(y,o)),h=[...t.body],v=h.indexOf(s),m=[];return c&&m.push({...c,name:o}),m.push(u,...d),h.splice(v+1,0,...m),{program:{...t,body:h},id:o}}function sT(t,e,i,s,n){const o=t.body.filter(y=>y.type==="Clip")[e];if(!o)return null;const l=Math.max(0,i.duration),c=Math.max(0,s-l),u=Math.min(c,Math.max(0,i.start+n)),d={...o.properties};delete d.transitionIn,delete d.transitionInDuration,delete d.transitionOut,delete d.transitionOutDuration,d.start=`${u.toFixed(3)}s`;const h={...o,properties:d},v=[...t.body];v.splice(v.indexOf(o)+1,0,h);const m=e+1;return{program:{...t,body:v},id:`clip_${i.assetName}_${m}`}}function nT(t,e){return{...t,target:e,from:t.from?{...t.from}:void 0,to:t.to?{...t.to}:void 0,keyframes:t.keyframes?.map(i=>({...i,properties:{...i.properties}}))}}const gy=4096;function rT(t){return!Number.isFinite(t)||t<=0?64:Math.min(gy,Math.max(64,Math.ceil(t*80)))}async function aT(t,e,i=()=>!1){if(i()||t.length===0)return[];const s=Math.min(...t.map(l=>l.length));if(s===0)return[];const n=Math.min(s,gy,Math.max(1,Math.floor(e))),a=[];let o=0;for(let l=0;l<n;l+=1){if(l>0&&l%64===0&&(await new Promise(v=>setTimeout(v,0)),i()))return[];const c=Math.floor(l*s/n),u=Math.max(c+1,Math.floor((l+1)*s/n));let d=1,h=-1;for(const v of t)for(let m=c;m<u;m+=1){const y=v[m]??0;y<d&&(d=y),y>h&&(h=y)}o=Math.max(o,Math.abs(d),Math.abs(h)),a.push({min:d,max:h})}return o<=Number.EPSILON?a.map(()=>({min:0,max:0})):a.map(({min:l,max:c})=>({min:l/o,max:c/o}))}function oT(t,e=24){if(t.length===0)return"";const i=e/2,s=Math.max(0,i-1),n=(l,c)=>`${l+.5} ${(i-c*s).toFixed(2)}`,a=t.map((l,c)=>n(c,l.max)),o=t.map((l,c)=>n(c,l.min)).reverse();return`M${a.join("L")}L${o.join("L")}Z`}function cd(t,e,i,s,n){const a=t.find(c=>c.id===e);if(!a)return null;const o={...a,track:i.id},l=HU(o,s,n);return t.map(c=>c.id===e?{...o,...l}:c)}function lT(t,e){return t.filter(i=>i.id!==e)}function Wv(t,e,i,s,n){return t.map(a=>{if(a.id!==e)return a;const o=i==="start"?jU(a,s,n):GU(a,s,n);return{...a,...o}})}const cT=.25,uT=8;function dT(t){const e=Number.isFinite(t)?t:1;return Math.min(uT,Math.max(cT,e))}function fT(t,e,i){const s=Math.max(0,e),n=Number.isFinite(i)&&i>0?i:60,a=Math.max(0,Math.min(s,t));return Math.min(s,Math.round(a*n)/n)}function hT(t,e,i,s){const n=Math.max(0,i-e)/1e3;return Math.min(Math.max(0,s),Math.max(0,t)+n)}function pT(t,e,i,s,n){const a=t+Math.max(0,e),l=(i>0?a/i:0)*s-e;return Math.min(Math.max(0,s-n),Math.max(0,l))}const yy="motionly.ai.brand.v1",by="motionly.ai.skills.v1",vT=`Create or refine a polished, fully editable Motionly animation from this creative brief.
2659
+
2660
+ Audience and goal:
2661
+ [Who should see this, what should they understand, and what should they do next?]
2662
+
2663
+ Story:
2664
+ [Describe the message or progression. A rough beginning, middle, and end is enough.]
2665
+
2666
+ Assets (optional):
2667
+ [List required logos, screenshots, video, animated SVG/GIF, Lottie, photos, or illustrations. Say which existing animation must be preserved.]
2668
+
2669
+ Narration or script:
2670
+ [Paste narration, exact on-screen copy, or useful timestamps. Mark any wording that must remain verbatim.]
2671
+
2672
+ Brand direction:
2673
+ [Colors, typography, visual references, motion character, and anything to avoid.]
2674
+
2675
+ Important requirements:
2676
+ [Anything that must appear, must not change, or must be avoided.]
2677
+
2678
+ Infer sensible format, duration, pacing, timeline organization, and technical settings from the brief and available media. Prefer native editable SVG artwork and Motionly animation for logos, icons, diagrams, and illustrations unless an existing asset's animation must be preserved.`,Zc=[{id:"write-motionly",name:"write-motionly",description:"Author, retime, review, and repair Motionly .motion projects: storyboard shots, choose transitions and presets, sync visuals to narration, and validate composition.",instructions:`Inspect the request, current project, brand constraints, script, audio, and every relevant asset before editing. Probe media duration and dimensions instead of guessing.
2679
+ Storyboard distinct shots first. For each shot define purpose, time range, focal subject, supporting elements, entrance, readable hold, exit, and transition.
2680
+ Write the smallest valid .motion project that realizes the storyboard. Use predictable visual layers, keep audio on the bottom audio track, preserve aspect ratios, and keep supplied copy verbatim when requested.
2681
+ Synchronize entrances and exits to supplied narration timestamps. Prefer power3.out, restrained 650ms–1s entrances, deliberate exits, and one strong transition for a real scene change.
2682
+ Prefer native SVG and overlay primitives for logos, icons, diagrams, and vector illustrations. Animate the object itself with x, y, scale, rotation, skew, opacity, blur, fill, stroke, masks, and drawSVG rather than moving the global camera.
2683
+ Preserve requested MP4, WebM, MOV, GIF, animated SVG, and Lottie motion; never silently flatten animated media to a still.
2684
+ Do not invent syntax, presets, block types, or renderer features. Generated output must remain editable through Motionly's parser and visual controls.
2685
+ Run inspect:motion with the expected duration, review every empty-frame range, inspect representative scene/transition frames, and confirm parse/serialize/parse preserves timing, tracks, masks, and keyframes.`,path:".agents/skills/write-motionly/SKILL.md",reference:".agents/skills/write-motionly/references/motion-syntax.md"},{id:"motion-graphics",name:"motion-graphics",description:"Motion design principles for polished, professional animation: composition, timing, easing, and restrained transitions.",instructions:`Build each scene around one clear focal subject; keep supporting elements subordinate and spatially separated.
2686
+ Default to power3.out easing and entrances around 650ms–1s. Prefer subtle motion over flashy effects.
2687
+ Use staggered word reveals for important copy only, not every label.
2688
+ Mark story progression with scene/background changes and purposeful movement — avoid constant camera drift and repeated fade-only scenes.
2689
+ Give every element a deliberate exit; do not leave unrelated layers stacked indefinitely.
2690
+ Vary shot composition (full-frame type, editorial left/right, centered hero) rather than randomizing motion.`},{id:"svg-motion",name:"svg-motion",description:"Native editable SVG and vector animation for logos, icons, diagrams, illustrations, and UI graphics.",instructions:`Prefer creating editable SVG or Motionly overlay primitives over importing a pre-rendered animation unless the user asks to preserve an existing animation.
2691
+ Use drawSVG for simple stroked paths; combine fill/stroke color animation, masks, opacity, blur, scale, rotation, skew, and local x/y movement for richer reveals.
2692
+ For push-ins, pull-backs, and pans, animate the SVG element's own x, y, scale, rotation, and originX/originY. Do not move the global camera when only the artwork should move.
2693
+ Keep detailed artwork readable, preserve its aspect ratio, and stagger related vector layers as one intentional group.`},{id:"animated-assets",name:"animated-assets",description:"Correct import, timing, and export behavior for video, GIF, animated SVG, and Lottie assets.",instructions:`Treat MP4, WebM, MOV, GIF, animated SVG, and Lottie as animated media, never as static substitutes.
2694
+ Use timeline clips to set start, duration, trimIn, and trimOut. Keep transformations editable on the asset layer.
2695
+ Browser codec support controls MOV/video decoding. Animated SVG uses real-time Canvas playback and cannot be deterministically seeked; CSS keyframes may differ from browser DOM playback, so state that limitation when it applies.
2696
+ If an asset fails to decode, report the actual format/browser limitation instead of implying its animation rendered.`},{id:"motionly-rules",name:"motionly-rules",description:"Core Motionly product rules and .motion syntax: keep projects simple, visual, and valid. (Replaces per-project AGENTS.md.)",instructions:`Motionly is a visual motion graphics editor around .motion; .motion is the saved source format, not something users hand-write for normal work.
2697
+ Use only supported syntax and presets. Prefer properties: x, y, scale, rotation, opacity, blur, size, color, center, duration, delay, easing.
2698
+ Use size (not fontSize) and easing (not ease) in explicit animate blocks. Valid layers: background, hero, supporting, content, details, text, effects.
2699
+ Import assets as: import "path" as alias, and render them with alias { ... }. Never invent block types like image/asset/video/scene/group/rect/layer.
2700
+ Preserve imported asset aspect ratios (set width OR height). Avoid node graphs, plugin systems, and speculative complexity.`}];function xy(){return{name:"",logo:"",colors:[],typography:"",visualStyle:[],motionStyle:[],avoid:[]}}function ql(t,e){const i=e.map(s=>s.trim()).filter(Boolean);return i.length?`${t}:
2701
+ ${i.join(`
2702
+ `)}
2703
+ `:""}function Xd(t){if(t.markdownOverride&&t.markdownOverride.trim())return t.markdownOverride.trim()+`
2704
+ `;const e=["# Brand Profile",""],i=t.name.trim();i&&e.push(`Brand:
2705
+ ${i}
2706
+ `),t.logo.trim()&&e.push(`Logo:
2707
+ ${t.logo.trim()}
2708
+ `);const s=ql("Colors",t.colors);s&&e.push(s),t.typography.trim()&&e.push(`Typography:
2709
+ ${t.typography.trim()}
2710
+ `);const n=ql("Style",t.visualStyle);n&&e.push(n);const a=ql("Motion",t.motionStyle);a&&e.push(a);const o=ql("Avoid",t.avoid);return o&&e.push(o),e.join(`
2711
+ `).replace(/\n{3,}/g,`
2712
+
2713
+ `).trimEnd()+`
2714
+ `}function wy(t){return t?t.markdownOverride&&t.markdownOverride.trim()?!0:!!(t.name.trim()||t.logo.trim()||t.typography.trim()||t.colors.length||t.visualStyle.length||t.motionStyle.length||t.avoid.length):!1}function Jd(){return Object.fromEntries(Zc.map(t=>[t.id,!0]))}function Sy(t){const e=Jd();if(!t)return e;for(const i of Zc){const s=t[i.id];typeof s=="boolean"&&(e[i.id]=s)}return e}function ky(t){const e=Sy(t);return Zc.filter(i=>e[i.id])}function mT(t){const e=[];wy(t.brand)&&e.push(`Brand profile (BRAND.md):
2715
+ ${Xd(t.brand).trim()}`);for(const i of ky(t.skillState))e.push(`Skill: ${i.name}
2716
+ ${i.description}
2717
+ ${i.instructions.trim()}`);return e.length?`Additional project knowledge. Honor this brand identity and these enabled skills when generating .motion:
2718
+
2719
+ ${e.join(`
2720
+
2721
+ `)}`:""}function _T(t){const e=wy(t.brand),i=ky(t.skillState).length,s=t.assets.length,n=[`${i>0?"✓":"✗"} ${i} skill${i===1?"":"s"} enabled`,`${e?"✓":"✗"} Brand profile ${e?"loaded":"not set"}`,`${s>0?"✓":"✗"} ${s} asset${s===1?"":"s"} available`];return t.project&&n.push(`✓ Project ${t.project.width}x${t.project.height} · ${t.project.fps}fps · ${t.project.duration.toFixed(2)}s · ${t.project.elementCount} element${t.project.elementCount===1?"":"s"}`),{brandLoaded:e,enabledSkillCount:i,assetCount:s,lines:n}}function Ey(t){try{return localStorage.getItem(t)}catch{return null}}function By(t,e){try{localStorage.setItem(t,e)}catch{}}function Cf(){const t=Ey(yy);if(!t)return null;try{return{...xy(),...JSON.parse(t)}}catch{return null}}function gT(t){By(yy,JSON.stringify(t))}function Uy(){const t=Ey(by);if(!t)return Jd();try{return Sy(JSON.parse(t))}catch{return Jd()}}function yT(t){By(by,JSON.stringify(t))}var bT=V('<button type="button" class="icon-button svelte-lobal1" title="Clear chat"><!></button>'),xT=V('<select class="provider-chip svelte-lobal1" aria-label="AI provider"><option>Detected: OpenAI</option><option>Detected: Anthropic</option><option>Detected: OpenRouter</option><option>Detected: Google Gemini</option><option>Detected: Hugging Face</option><option>Custom endpoint</option></select>'),wT=V('<label class="custom-toggle svelte-lobal1"><input type="checkbox" class="svelte-lobal1"/> <span>Custom endpoint</span></label>'),ST=V('<p class="provider-warning svelte-lobal1">Detected: Kiro CLI key. Kiro does not document a direct browser/OpenAI-compatible chat endpoint, so this key cannot be sent directly. Use another provider key, or enable Custom endpoint if you have a compatible gateway.</p>'),kT=V('<p class="provider-note svelte-lobal1">Hugging Face tokens need “Make calls to Inference Providers” permission. Enter any compatible chat model ID below.</p>'),ET=V('<div class="field svelte-lobal1"><label for="motionly-ai-url" class="svelte-lobal1">Base URL</label> <input id="motionly-ai-url" placeholder="http://localhost:11434/v1" class="svelte-lobal1"/></div>'),BT=V(`<div class="field svelte-lobal1"><label for="motionly-ai-model" class="svelte-lobal1">Model <span class="svelte-lobal1">(optional)</span></label> <input id="motionly-ai-model" placeholder="Exact model ID" class="svelte-lobal1"/> <small class="svelte-lobal1">Leave blank to use Motionly's provider default.</small></div>`),Yv=V('<p class="error-message svelte-lobal1"> </p>'),UT=V('<button type="button" class="secondary-button danger svelte-lobal1">Remove key</button>'),TT=V('<div class="settings-view svelte-lobal1"><div class="svelte-lobal1"><h3 class="svelte-lobal1">Connect AI to Motionly</h3> <p class="svelte-lobal1">Motionly does not host or proxy AI requests. Your key lets this browser contact your provider directly and turn prompts into editable <code class="svelte-lobal1">.motion</code> projects. Any usage is billed by your provider.</p></div> <div class="field svelte-lobal1"><label for="motionly-ai-key" class="svelte-lobal1">API key</label> <div class="key-input svelte-lobal1"><input id="motionly-ai-key" placeholder="Paste API key" autocomplete="off" class="svelte-lobal1"/> <button type="button" class="svelte-lobal1"><!></button></div></div> <!> <!> <!> <!> <!> <p class="privacy-note svelte-lobal1">Your key is stored locally in your browser and never sent to our servers.</p> <p class="guide-note svelte-lobal1">See the <a href="https://motionly.mintlify.app/agents/ai-authoring" target="_blank" rel="noreferrer" class="svelte-lobal1">prompt guide</a> for templates and an introduction to the <code class="svelte-lobal1">write-motionly</code> skill.</p> <button type="button" class="copy-prompt-button svelte-lobal1"> </button> <!> <div class="settings-actions svelte-lobal1"><!> <button type="button" class="primary-button svelte-lobal1">Save &amp; continue</button></div></div>'),PT=V('<div class="empty-state assistant-empty-state svelte-lobal1"><span class="assistant-empty-icon svelte-lobal1"><!></span> <strong class="svelte-lobal1">Start with an idea</strong> <span class="svelte-lobal1">Describe a scene, animation, or change. Every result stays editable in Motionly.</span> <a class="assistant-guide-link svelte-lobal1" href="https://motionly.mintlify.app/agents/ai-authoring" target="_blank" rel="noreferrer">View prompting guide</a></div>'),AT=V('<p class="svelte-lobal1"> </p>'),zT=V('<button type="button" class="repair-button svelte-lobal1">Ask Assistant to Fix</button>'),MT=V('<pre class="svelte-lobal1"><code> </code></pre> <button type="button" class="load-button svelte-lobal1"> </button> <!>',1),IT=V('<article><div class="message-role svelte-lobal1"> </div> <!> <!></article>'),CT=V('<div class="thinking svelte-lobal1">Drafting your project…</div>'),$T=V("<!> <!>",1),OT=V('<button type="button" class="svelte-lobal1"> </button>'),NT=V('<div class="message-list svelte-lobal1" aria-live="polite"><!></div> <div class="composer-wrap svelte-lobal1"><!> <div class="suggestion-chips svelte-lobal1" aria-label="Prompt suggestions"></div> <div><span class="command-mark svelte-lobal1"><!></span> <textarea rows="1" placeholder="Ask Motionly to create or refine…" aria-label="Message Motionly Assistant" class="svelte-lobal1"></textarea> <button type="button" class="send-button svelte-lobal1" title="Send prompt (Enter)" aria-label="Send prompt"><!></button></div> <span class="composer-hint svelte-lobal1">Enter to send · Shift+Enter for a new line</span></div>',1),FT=V('<section class="ai-chat-panel svelte-lobal1" aria-label="Motionly Assistant"><header class="chat-header svelte-lobal1"><div class="chat-title svelte-lobal1"><!><span>Motionly Assistant</span></div> <div class="header-actions svelte-lobal1"><!> <button type="button" title="Assistant settings"><!></button> <button type="button" class="icon-button svelte-lobal1" title="Collapse assistant"><!></button></div></header> <!></section>');function DT(t,e){An(e,!1);const i=R(),s=R(),n=R();let a=ci(e,"project",8,""),o=ci(e,"assetList",24,()=>[]),l=ci(e,"onLoadMotion",8,()=>null),c=ci(e,"onCollapse",8,()=>{}),u=R(""),d=R("openai"),h=R(""),v=R(""),m=R(!1),y=R(!1),_=R(!0),S=R([]),T=R(""),I=R(!1),C=R(""),$=R(""),M=R(""),D="",F=R(!1),L=R(!1),P=R(),j=R();const _t=["Product intro","Soft text reveal","Scene transition"];Vc(()=>{try{const at=localStorage.getItem(Po);if(at){const ie=JSON.parse(at);x(u,ie.apiKey??""),x(d,lr(r(u))??ie.provider??"openai"),x(h,ie.baseUrl??""),x(v,ie.model??""),x(m,r(d)==="custom"),x(_,!r(u)||ie.provider!=="custom"&&!lr(r(u))),x(F,!!r(u)),r(u)&&ie.provider!=="custom"&&!lr(r(u))&&x(C,r(u).startsWith("ksk_")?"Kiro API keys work with Kiro CLI, not a documented browser chat endpoint.":"Choose Custom endpoint for this unrecognized key format.")}const Ht=localStorage.getItem(Yu);Ht&&x(S,JSON.parse(Ht))}catch{x(C,"Saved assistant settings could not be read.")}});function ft(){const at=lr(r(u));at&&(r(d)!==at&&x(v,""),x(d,at),x(m,!1))}function ct(at){const Ht=at.currentTarget.value;r(d)!==Ht&&x(v,""),x(d,Ht),x(m,r(d)==="custom")}function X(at){x(m,at.currentTarget.checked),x(d,r(m)?"custom":r(i)??"openai")}async function O(){try{await navigator.clipboard.writeText(vT),x(L,!0),setTimeout(()=>x(L,!1),1800)}catch{x(C,"Your browser blocked clipboard access. Open the prompt guide and copy the template there.")}}function z(){if(x(C,""),!r(u).trim()){x(C,"Enter an API key to continue.");return}if(!r(i)&&r(d)!=="custom"){x(C,r(s)?"Kiro API keys work with Kiro CLI. Use a supported provider key or configure a compatible gateway under Custom endpoint.":"Choose Custom endpoint and enter a compatible Base URL for this key format.");return}if(r(d)==="custom"){if(!r(h).trim()){x(C,"Enter the custom endpoint base URL.");return}try{uf(r(h))}catch(at){x(C,at instanceof Error?at.message:"Enter a valid base URL.");return}}localStorage.setItem(Po,JSON.stringify($e())),x(F,!0),x(_,!1)}function Et(){localStorage.removeItem(Po),x(u,""),x(h,""),x(v,""),x(d,"openai"),x(m,!1),x(F,!1),x(_,!0),x(C,"")}function gt(){x(S,[]),x($,""),localStorage.removeItem(Yu)}function $e(){return{apiKey:r(u).trim(),provider:r(d),baseUrl:r(h).trim(),model:r(v).trim()}}async function Ge(){const at=r(T).trim();if(!at||r(I))return;x(C,"");const Ht={id:crypto.randomUUID(),role:"user",content:at};x(S,[...r(S),Ht]),x(T,""),te(),re(),bt(),x(I,!0);try{const ie=mT({brand:Cf(),skillState:Uy(),assets:o()}),St=await Pw($e(),r(S),a(),o(),ie);x(S,[...r(S),{id:crypto.randomUUID(),role:"assistant",content:St,motion:Uw(St)}]),re(),bt()}catch(ie){x(C,ie instanceof Error?ie.message:"The assistant request failed.")}finally{x(I,!1)}}function te(){requestAnimationFrame(()=>{if(!r(P))return;De(P,r(P).style.height="auto");const at=Math.min(120,Math.max(38,r(P).scrollHeight));De(P,r(P).style.height=`${at}px`),De(P,r(P).style.overflowY=r(P).scrollHeight>120?"auto":"hidden")})}function re(){requestAnimationFrame(()=>{r(j)&&De(j,r(j).scrollTop=r(j).scrollHeight)})}function ke(at){x(T,at),te(),requestAnimationFrame(()=>r(P)?.focus())}function Vt(at){at.key==="Enter"&&!at.shiftKey&&(at.preventDefault(),Ge())}function ot(at){if(!at.motion)return;const Ht=l()(h_(at.motion,o()));x(C,Ht??""),x(M,Ht?at.id:""),D=Ht??"",Ht||x($,at.id)}function mi(){x(T,`Repair your last generated .motion project. Motionly's parser reported: ${D}. Return the corrected complete project using only the system prompt syntax.`),x(M,""),Ge()}function bt(){localStorage.setItem(Yu,JSON.stringify(r(S)))}function Ke(at){return at.replace(/```motion\s*[\s\S]*?```/gi,"").trim()}ce(()=>r(u),()=>{x(i,lr(r(u)))}),ce(()=>r(u),()=>{x(s,r(u).trim().startsWith("ksk_"))}),ce(()=>r(u),()=>{x(n,r(u).trim().startsWith("hf_"))}),kr(),tr();var be=FT(),Ue=g(be),ht=g(Ue),Jt=g(ht);u_(Jt,{size:16});var _i=b(ht,2),zi=g(_i);{var vt=at=>{var Ht=bT(),ie=g(Ht);wo(ie,{size:14}),B("click",Ht,gt),A(at,Ht)};tt(zi,at=>{r(S),r(_),k(()=>r(S).length&&!r(_))&&at(vt)})}var qe=b(zi,2);let es;var ks=g(qe);f_(ks,{size:15});var Ct=b(qe,2),yt=g(Ct);dw(yt,{size:15});var de=b(Ue,2);{var Oe=at=>{var Ht=TT(),ie=b(g(Ht),2),St=b(g(ie),2),fe=g(St),ni=b(fe,2),is=g(ni);{var js=Ut=>{yc(Ut,{size:15})},Es=Ut=>{No(Ut,{size:15})};tt(is,Ut=>{r(y)?Ut(js):Ut(Es,-1)})}var ri=b(ie,2);{var ss=Ut=>{var Te=It(),$i=it(Te);{var ns=yi=>{var bi=xT(),Ui=g(bi);Ui.value=Ui.__value="openai";var In=b(Ui);In.value=In.__value="anthropic";var Ts=b(In);Ts.value=Ts.__value="openrouter";var Br=b(Ts);Br.value=Br.__value="gemini";var hn=b(Br);hn.value=hn.__value="huggingface";var sa=b(hn);sa.value=sa.__value="custom";var sn;Hr(bi),K(()=>{sn!==(sn=r(d))&&(bi.value=(bi.__value=r(d))??"",Kn(bi,r(d)))}),B("change",bi,ct),A(yi,bi)},Bi=yi=>{var bi=wT(),Ui=g(bi);K(()=>Oo(Ui,r(m))),B("change",Ui,X),A(yi,bi)};tt($i,yi=>{r(i)||r(m)?yi(ns):yi(Bi,-1)})}A(Ut,Te)},Gs=us(()=>(r(u),k(()=>r(u).trim())));tt(ri,Ut=>{r(Gs)&&Ut(ss)})}var Hi=b(ri,2);{var gi=Ut=>{var Te=ST();A(Ut,Te)};tt(Hi,Ut=>{r(s)&&Ut(gi)})}var Mi=b(Hi,2);{var Ae=Ut=>{var Te=kT();A(Ut,Te)};tt(Mi,Ut=>{r(n)&&Ut(Ae)})}var Bs=b(Mi,2);{var ze=Ut=>{var Te=ET(),$i=b(g(Te),2);qi($i,()=>r(h),ns=>x(h,ns)),A(Ut,Te)};tt(Bs,Ut=>{r(m)&&Ut(ze)})}var Qe=b(Bs,2);{var Ii=Ut=>{var Te=BT(),$i=b(g(Te),2);qi($i,()=>r(v),ns=>x(v,ns)),A(Ut,Te)},Ci=us(()=>(r(u),r(i),r(m),k(()=>r(u).trim()&&(r(i)||r(m)))));tt(Qe,Ut=>{r(Ci)&&Ut(Ii)})}var er=b(Qe,6),ji=g(er),Me=b(er,2);{var Us=Ut=>{var Te=Yv(),$i=g(Te);K(()=>rt($i,r(C))),A(Ut,Te)};tt(Me,Ut=>{r(C)&&Ut(Us)})}var fn=b(Me,2),Gi=g(fn);{var Ki=Ut=>{var Te=UT();B("click",Te,Et),A(Ut,Te)};tt(Gi,Ut=>{r(F)&&Ut(Ki)})}var en=b(Gi,2);K(()=>{Q(fe,"type",r(y)?"text":"password"),Q(ni,"title",r(y)?"Hide key":"Show key"),rt(ji,r(L)?"Prompt Template Copied":"Copy Prompt Template")}),qi(fe,()=>r(u),Ut=>x(u,Ut)),B("input",fe,ft),B("click",ni,()=>x(y,!r(y))),B("click",er,O),B("click",en,z),A(at,Ht)},Mt=at=>{var Ht=NT(),ie=it(Ht),St=g(ie);{var fe=ze=>{var Qe=PT(),Ii=g(Qe),Ci=g(Ii);jn(Ci,{size:18}),A(ze,Qe)},ni=ze=>{var Qe=$T(),Ii=it(Qe);ue(Ii,1,()=>r(S),ji=>ji.id,(ji,Me)=>{var Us=IT();let fn;var Gi=g(Us),Ki=g(Gi),en=b(Gi,2);{var Ut=Bi=>{var yi=AT(),bi=g(yi);K(Ui=>rt(bi,Ui),[()=>(r(Me),k(()=>Ke(r(Me).content)))]),A(Bi,yi)},Te=us(()=>(r(Me),k(()=>Ke(r(Me).content))));tt(en,Bi=>{r(Te)&&Bi(Ut)})}var $i=b(en,2);{var ns=Bi=>{var yi=MT(),bi=it(yi),Ui=g(bi),In=g(Ui),Ts=b(bi,2),Br=g(Ts),hn=b(Ts,2);{var sa=sn=>{var Ur=zT();B("click",Ur,mi),A(sn,Ur)};tt(hn,sn=>{r(M),r(Me),k(()=>r(M)===r(Me).id)&&sn(sa)})}K(()=>{rt(In,(r(Me),k(()=>r(Me).motion))),rt(Br,(r($),r(Me),k(()=>r($)===r(Me).id?"Loaded":"Load into Editor")))}),B("click",Ts,()=>ot(r(Me))),A(Bi,yi)};tt($i,Bi=>{r(Me),k(()=>r(Me).motion)&&Bi(ns)})}K(()=>{fn=$t(Us,1,"message svelte-lobal1",null,fn,{user:r(Me).role==="user"}),rt(Ki,(r(Me),k(()=>r(Me).role==="user"?"You":"Assistant")))}),A(ji,Us)});var Ci=b(Ii,2);{var er=ji=>{var Me=CT();A(ji,Me)};tt(Ci,ji=>{r(I)&&ji(er)})}A(ze,Qe)};tt(St,ze=>{r(S),k(()=>r(S).length===0)?ze(fe):ze(ni,-1)})}Xs(ie,ze=>x(j,ze),()=>r(j));var is=b(ie,2),js=g(is);{var Es=ze=>{var Qe=Yv(),Ii=g(Qe);K(()=>rt(Ii,r(C))),A(ze,Qe)};tt(js,ze=>{r(C)&&ze(Es)})}var ri=b(js,2);ue(ri,5,()=>_t,ve,(ze,Qe)=>{var Ii=OT(),Ci=g(Ii);K(()=>rt(Ci,r(Qe))),B("click",Ii,()=>ke(r(Qe))),A(ze,Ii)});var ss=b(ri,2);let Gs;var Hi=g(ss),gi=g(Hi);jn(gi,{size:15});var Mi=b(Hi,2);Xs(Mi,ze=>x(P,ze),()=>r(P));var Ae=b(Mi,2),Bs=g(Ae);gw(Bs,{size:15}),K((ze,Qe)=>{Gs=$t(ss,1,"composer svelte-lobal1",null,Gs,ze),Ae.disabled=Qe},[()=>({"has-draft":!!r(T).trim()}),()=>(r(T),r(I),k(()=>!r(T).trim()||r(I)))]),qi(Mi,()=>r(T),ze=>x(T,ze)),B("input",Mi,te),B("keydown",Mi,Vt),B("click",Ae,Ge),A(at,Ht)};tt(de,at=>{r(_)?at(Oe):at(Mt,-1)})}K(()=>es=$t(qe,1,"icon-button svelte-lobal1",null,es,{active:r(_)})),B("click",qe,()=>x(_,!r(_))),B("click",Ct,function(...at){c()?.apply(this,at)}),A(t,be),zn()}var LT=V('<div><strong>File:</strong> <code class="svelte-1tw9x39"> </code></div>'),RT=V('<div><strong>Reference:</strong> <code class="svelte-1tw9x39"> </code></div>'),VT=V('<div class="skill-detail svelte-1tw9x39"><pre class="svelte-1tw9x39"> </pre> <!> <!></div>'),HT=V('<div class="skill-row svelte-1tw9x39"><div class="skill-main svelte-1tw9x39"><label class="skill-toggle svelte-1tw9x39"><input type="checkbox"/> <span class="skill-name svelte-1tw9x39"> </span></label> <button type="button" class="config-link svelte-1tw9x39"><!> </button></div> <p class="skill-desc svelte-1tw9x39"> </p> <!></div>'),jT=V('<div class="config-section svelte-1tw9x39"><h4 class="config-title svelte-1tw9x39">Skills</h4> <p class="config-desc svelte-1tw9x39">Enable the skills the assistant should follow. Enabled skills load their instructions into the assistant, replacing per-project AGENTS.md.</p> <!></div>'),GT=V("<div> </div>"),qT=V('<div class="config-section svelte-1tw9x39"><h4 class="config-title svelte-1tw9x39">AI Context Preview</h4> <p class="config-desc svelte-1tw9x39">What the assistant currently knows about this project.</p> <div class="context-card svelte-1tw9x39"><div class="context-heading svelte-1tw9x39">AI knows:</div> <!></div></div>'),WT=V('<div class="ai-config svelte-1tw9x39"><nav class="config-nav svelte-1tw9x39" aria-label="AI configuration sections"><button type="button"><!> Skills</button> <button type="button"><!> Context</button></nav> <div class="config-body svelte-1tw9x39"><!></div></div>');function YT(t,e){An(e,!1);const i=R();let s=ci(e,"assetList",24,()=>[]),n=ci(e,"projectInfo",8,null),a=R("skills"),o=R(Uy()),l=R("");function c(M){x(o,{...r(o),[M]:!r(o)[M]}),yT(r(o))}ce(()=>(r(o),Wt(s()),Wt(n())),()=>{x(i,_T({brand:Cf(),skillState:r(o),assets:s(),project:n()}))}),kr(),tr();var u=WT(),d=g(u),h=g(d);let v;var m=g(h);jn(m,{size:14});var y=b(h,2);let _;var S=g(y);No(S,{size:14});var T=b(d,2),I=g(T);{var C=M=>{var D=jT(),F=b(g(D),4);ue(F,1,()=>Zc,ve,(L,P)=>{var j=HT(),_t=g(j),ft=g(_t),ct=g(ft),X=b(ct,2),O=g(X),z=b(ft,2),Et=g(z);ew(Et,{size:13});var gt=b(Et),$e=b(_t,2),Ge=g($e),te=b($e,2);{var re=ke=>{var Vt=VT(),ot=g(Vt),mi=g(ot),bt=b(ot,2);{var Ke=ht=>{var Jt=LT(),_i=b(g(Jt),2),zi=g(_i);K(()=>rt(zi,(r(P),k(()=>r(P).path)))),A(ht,Jt)};tt(bt,ht=>{r(P),k(()=>r(P).path)&&ht(Ke)})}var be=b(bt,2);{var Ue=ht=>{var Jt=RT(),_i=b(g(Jt),2),zi=g(_i);K(()=>rt(zi,(r(P),k(()=>r(P).reference)))),A(ht,Jt)};tt(be,ht=>{r(P),k(()=>r(P).reference)&&ht(Ue)})}K(()=>rt(mi,(r(P),k(()=>r(P).instructions)))),A(ke,Vt)};tt(te,ke=>{r(l),r(P),k(()=>r(l)===r(P).id)&&ke(re)})}K(()=>{Oo(ct,(r(o),r(P),k(()=>r(o)[r(P).id]))),rt(O,(r(P),k(()=>r(P).name))),rt(gt,` ${r(l),r(P),k(()=>r(l)===r(P).id?"Hide":"Open instructions")??""}`),rt(Ge,(r(P),k(()=>r(P).description)))}),B("change",ct,()=>c(r(P).id)),B("click",z,()=>x(l,r(l)===r(P).id?"":r(P).id)),A(L,j)}),A(M,D)},$=M=>{var D=qT(),F=b(g(D),4),L=b(g(F),2);ue(L,1,()=>(r(i),k(()=>r(i).lines)),ve,(P,j)=>{var _t=GT();let ft;var ct=g(_t);K(X=>{ft=$t(_t,1,"context-line svelte-1tw9x39",null,ft,X),rt(ct,r(j))},[()=>({ok:r(j).startsWith("✓"),missing:r(j).startsWith("✗")})]),A(P,_t)}),A(M,D)};tt(I,M=>{r(a)==="skills"?M(C):r(a)==="context"&&M($,1)})}K(()=>{v=$t(h,1,"svelte-1tw9x39",null,v,{active:r(a)==="skills"}),_=$t(y,1,"svelte-1tw9x39",null,_,{active:r(a)==="context"})}),B("click",h,()=>x(a,"skills")),B("click",y,()=>x(a,"context")),A(t,u),zn()}var KT=V('<textarea class="config-textarea svelte-167vias" rows="16" spellcheck="false"></textarea> <button type="button" class="config-link danger svelte-167vias">Discard override & return to visual editor</button>',1),XT=V("<option> </option>"),JT=V('<span class="chip color-chip svelte-167vias"><span class="swatch svelte-167vias"></span> <button type="button" class="svelte-167vias"><!></button></span>'),Kv=V('<span class="chip svelte-167vias"> <button type="button" class="svelte-167vias"><!></button></span>'),ZT=V('<span class="chip avoid-chip svelte-167vias"> <button type="button" class="svelte-167vias"><!></button></span>'),QT=V('<label class="field svelte-167vias"><span class="field-label svelte-167vias">Brand name</span> <input class="config-input svelte-167vias" type="text" placeholder="Motionly"/></label> <label class="field svelte-167vias"><span class="field-label svelte-167vias">Logo</span> <select class="config-input svelte-167vias"><option>None</option><!></select></label> <div class="field svelte-167vias"><span class="field-label svelte-167vias">Brand colors</span> <div class="chip-row svelte-167vias"></div> <div class="inline-add svelte-167vias"><input class="color-input svelte-167vias" type="color" aria-label="Pick brand color"/> <input class="config-input svelte-167vias" type="text" placeholder="#4F8CFF"/> <button type="button" class="config-btn svelte-167vias"><!></button></div></div> <label class="field svelte-167vias"><span class="field-label svelte-167vias">Typography</span> <input class="config-input svelte-167vias" type="text" placeholder="Inter, Geist, system-ui"/></label> <div class="field svelte-167vias"><span class="field-label svelte-167vias">Visual style</span> <div class="chip-row svelte-167vias"></div> <input class="config-input svelte-167vias" type="text" placeholder="Minimal, Premium, Modern — press Enter"/></div> <div class="field svelte-167vias"><span class="field-label svelte-167vias">Motion style</span> <div class="chip-row svelte-167vias"></div> <input class="config-input svelte-167vias" type="text" placeholder="Smooth, Cinematic — press Enter"/></div> <div class="field svelte-167vias"><span class="field-label svelte-167vias">Things to avoid</span> <div class="chip-row svelte-167vias"></div> <input class="config-input svelte-167vias" type="text" placeholder="Overly flashy effects — press Enter"/></div> <div class="brand-preview svelte-167vias"><span class="field-label svelte-167vias"> </span> <pre class="svelte-167vias"> </pre></div>',1),tP=V('<div class="panel-content svelte-167vias"><div class="config-section svelte-167vias"><div class="config-title-row svelte-167vias"><h4 class="config-title svelte-167vias">Brand Profile</h4> <button type="button" class="config-link svelte-167vias"><!> </button></div> <p class="config-desc svelte-167vias">Define brand identity for AI-generated animations. Saved as BRAND.md and loaded into the assistant context.</p> <!></div></div>');function eP(t,e){An(e,!1);const i=R();let s=ci(e,"assetList",24,()=>[]),n=R(Cf()??xy()),a=R(!1),o=R(!1),l=R(""),c=R(""),u=R(""),d=R("#4F8CFF");function h(){x(n,{...r(n)}),gT(r(n)),x(o,!0),setTimeout(()=>x(o,!1),1600)}function v(){const ft=r(d).trim();!ft||r(n).colors.includes(ft)||(De(n,r(n).colors=[...r(n).colors,ft]),yn(()=>{s()}),h())}function m(ft){De(n,r(n).colors=r(n).colors.filter(ct=>ct!==ft)),yn(()=>{s()}),h()}function y(ft,ct){const X=ct.trim();!X||r(n)[ft].includes(X)||(De(n,r(n)[ft]=[...r(n)[ft],X]),yn(()=>{s()}),h())}function _(ft,ct){De(n,r(n)[ft]=r(n)[ft].filter(X=>X!==ct)),yn(()=>{s()}),h()}function S(ft,ct,X){ft.key==="Enter"&&(ft.preventDefault(),y(ct,ft.currentTarget.value),X())}function T(){r(a)||(De(n,r(n).markdownOverride=Xd({...r(n),markdownOverride:""})),yn(()=>{s()})),x(a,!r(a)),h()}function I(){De(n,r(n).markdownOverride=""),yn(()=>{s()}),x(a,!1),h()}ce(()=>r(n),()=>{x(i,Xd(r(n)))}),kr(),tr();var C=tP(),$=g(C),M=g($),D=b(g(M),2),F=g(D);aw(F,{size:13});var L=b(F),P=b(M,4);{var j=ft=>{var ct=KT(),X=it(ct),O=b(X,2);qi(X,()=>r(n).markdownOverride,z=>(De(n,r(n).markdownOverride=z),yn(()=>{s()}))),B("input",X,h),B("click",O,I),A(ft,ct)},_t=ft=>{var ct=QT(),X=it(ct),O=b(g(X),2),z=b(X,2),Et=b(g(z),2),gt=g(Et);gt.value=gt.__value="";var $e=b(gt);ue($e,1,s,ve,(Mt,at)=>{var Ht=XT(),ie=g(Ht),St={};K(()=>{rt(ie,`${r(at),k(()=>r(at).name)??""} (${r(at),k(()=>r(at).type)??""})`),St!==(St=(r(at),k(()=>r(at).name)))&&(Ht.value=(Ht.__value=(r(at),k(()=>r(at).name)))??"")}),A(Mt,Ht)});var Ge=b(z,2),te=b(g(Ge),2);ue(te,5,()=>(r(n),k(()=>r(n).colors)),ve,(Mt,at)=>{var Ht=JT(),ie=g(Ht),St=b(ie),fe=b(St),ni=g(fe);Sn(ni,{size:11}),K(()=>{pe(ie,`background:${r(at)}`),rt(St,`${r(at)??""} `),Q(fe,"aria-label",`Remove ${r(at)}`)}),B("click",fe,()=>m(r(at))),A(Mt,Ht)});var re=b(te,2),ke=g(re),Vt=b(ke,2),ot=b(Vt,2),mi=g(ot);tc(mi,{size:13});var bt=b(Ge,2),Ke=b(g(bt),2),be=b(bt,2),Ue=b(g(be),2);ue(Ue,5,()=>(r(n),k(()=>r(n).visualStyle)),ve,(Mt,at)=>{var Ht=Kv(),ie=g(Ht),St=b(ie),fe=g(St);Sn(fe,{size:11}),K(()=>{rt(ie,r(at)),Q(St,"aria-label",`Remove ${r(at)}`)}),B("click",St,()=>_("visualStyle",r(at))),A(Mt,Ht)});var ht=b(Ue,2),Jt=b(be,2),_i=b(g(Jt),2);ue(_i,5,()=>(r(n),k(()=>r(n).motionStyle)),ve,(Mt,at)=>{var Ht=Kv(),ie=g(Ht),St=b(ie),fe=g(St);Sn(fe,{size:11}),K(()=>{rt(ie,r(at)),Q(St,"aria-label",`Remove ${r(at)}`)}),B("click",St,()=>_("motionStyle",r(at))),A(Mt,Ht)});var zi=b(_i,2),vt=b(Jt,2),qe=b(g(vt),2);ue(qe,5,()=>(r(n),k(()=>r(n).avoid)),ve,(Mt,at)=>{var Ht=ZT(),ie=g(Ht),St=b(ie),fe=g(St);Sn(fe,{size:11}),K(()=>{rt(ie,r(at)),Q(St,"aria-label",`Remove ${r(at)}`)}),B("click",St,()=>_("avoid",r(at))),A(Mt,Ht)});var es=b(qe,2),ks=b(vt,2),Ct=g(ks),yt=g(Ct),de=b(Ct,2),Oe=g(de);K(()=>{rt(yt,`BRAND.md preview ${r(o)?"· saved":""}`),rt(Oe,r(i))}),qi(O,()=>r(n).name,Mt=>(De(n,r(n).name=Mt),yn(()=>{s()}))),B("input",O,h),Dx(Et,()=>r(n).logo,Mt=>(De(n,r(n).logo=Mt),yn(()=>{s()}))),B("change",Et,h),qi(ke,()=>r(d),Mt=>x(d,Mt)),qi(Vt,()=>r(d),Mt=>x(d,Mt)),B("click",ot,v),qi(Ke,()=>r(n).typography,Mt=>(De(n,r(n).typography=Mt),yn(()=>{s()}))),B("input",Ke,h),qi(ht,()=>r(l),Mt=>x(l,Mt)),B("keydown",ht,Mt=>S(Mt,"visualStyle",()=>x(l,""))),qi(zi,()=>r(c),Mt=>x(c,Mt)),B("keydown",zi,Mt=>S(Mt,"motionStyle",()=>x(c,""))),qi(es,()=>r(u),Mt=>x(u,Mt)),B("keydown",es,Mt=>S(Mt,"avoid",()=>x(u,""))),A(ft,ct)};tt(P,ft=>{r(a)?ft(j):ft(_t,-1)})}K(()=>rt(L,` ${r(a)?"Visual editor":"Edit Markdown"}`)),B("click",D,T),A(t,C),zn()}var iP=V('<button type="button"><!></button>'),sP=V('<div class="color-popover svelte-1mhl43o" role="dialog"><div class="picker-toolbar svelte-1mhl43o"><span class="toolbar-swatch svelte-1mhl43o"></span> <input class="hex-input svelte-1mhl43o" type="text" maxlength="7" spellcheck="false" aria-label="Hex color"/> <label class="custom-color svelte-1mhl43o" title="Choose a custom color" aria-label="Choose a custom color"><!> <input type="color" class="svelte-1mhl43o"/></label></div> <div class="palette-grid svelte-1mhl43o" aria-label="Color swatches"></div></div>'),nP=V('<div class="color-picker svelte-1mhl43o"><button type="button" class="color-trigger svelte-1mhl43o" aria-haspopup="dialog"><span class="trigger-swatch svelte-1mhl43o"></span> <span class="trigger-value svelte-1mhl43o"> </span> <!></button> <!></div>');function Wl(t,e){An(e,!1);const i=R();let s=ci(e,"value",8,"#ffffff"),n=ci(e,"ariaLabel",8,"Color"),a=ci(e,"onChange",8,()=>{}),o=R(),l=R(!1);const c=["#f8fafc","#d1d5db","#9ca3af","#6b7280","#374151","#1f2937","#111827","#030712","#fee2e2","#fecaca","#fca5a5","#f87171","#ef4444","#dc2626","#b91c1c","#7f1d1d","#ffedd5","#fed7aa","#fdba74","#fb923c","#f97316","#ea580c","#c2410c","#7c2d12","#fef3c7","#fde68a","#fcd34d","#fbbf24","#f59e0b","#d97706","#b45309","#78350f","#dcfce7","#bbf7d0","#86efac","#4ade80","#22c55e","#16a34a","#15803d","#14532d","#ccfbf1","#99f6e4","#5eead4","#2dd4bf","#14b8a6","#0d9488","#0f766e","#134e4a","#dbeafe","#bfdbfe","#93c5fd","#60a5fa","#3b82f6","#2563eb","#1d4ed8","#1e3a8a","#ede9fe","#ddd6fe","#c4b5fd","#a78bfa","#8b5cf6","#7c3aed","#6d28d9","#4c1d95","#fce7f3","#fbcfe8","#f9a8d4","#f472b6","#ec4899","#db2777","#be185d","#831843"];function u(D){const F=D.trim();return/^#[0-9a-f]{6}$/i.test(F)?F.toLowerCase():/^#[0-9a-f]{3}$/i.test(F)?`#${F.slice(1).split("").map(L=>`${L}${L}`).join("")}`.toLowerCase():"#ffffff"}function d(D){a()(u(D)),x(l,!1)}function h(D){const F=D.currentTarget,L=F.value.startsWith("#")?F.value:`#${F.value}`;/^#[0-9a-f]{3}([0-9a-f]{3})?$/i.test(L)?d(L):F.value=r(i).toUpperCase()}function v(D){r(l)&&r(o)&&!r(o).contains(D.target)&&x(l,!1)}function m(D){D.key==="Escape"&&x(l,!1)}ce(()=>Wt(s()),()=>{x(i,u(s()))}),kr(),tr();var y=nP();B("pointerdown",_c,v),B("keydown",_c,m);var _=g(y),S=g(_),T=b(S,2),I=g(T),C=b(T,2);sw(C,{size:13});var $=b(_,2);{var M=D=>{var F=sP(),L=g(F),P=g(L),j=b(P,2),_t=b(j,2),ft=g(_t);hw(ft,{size:14});var ct=b(ft,2),X=b(L,2);ue(X,5,()=>c,ve,(O,z)=>{var Et=iP();let gt;var $e=g(Et);{var Ge=te=>{iw(te,{size:11,strokeWidth:3})};tt($e,te=>{r(z)===r(i)&&te(Ge)})}K(te=>{gt=$t(Et,1,"palette-swatch svelte-1mhl43o",null,gt,{selected:r(z)===r(i)}),pe(Et,`background: ${r(z)}`),Q(Et,"aria-label",`Set color ${r(z)}`),Q(Et,"title",te)},[()=>(r(z),k(()=>r(z).toUpperCase()))]),B("click",Et,()=>d(r(z))),A(O,Et)}),K(O=>{Q(F,"aria-label",`${n()} palette`),pe(P,`background: ${r(i)}`),le(j,O),le(ct,r(i))},[()=>(r(i),k(()=>r(i).toUpperCase()))]),B("change",j,h),B("keydown",j,O=>O.key==="Enter"&&h(O)),B("input",ct,O=>d(O.currentTarget.value)),A(D,F)};tt($,D=>{r(l)&&D(M)})}Xs(y,D=>x(o,D),()=>r(o)),K(D=>{Q(_,"aria-label",n()),Q(_,"aria-expanded",r(l)),pe(S,`background: ${r(i)}`),rt(I,D)},[()=>(r(i),k(()=>r(i).toUpperCase()))]),B("click",_,()=>x(l,!r(l))),A(t,y),zn()}var rP=V('<button type="button"> </button>'),aP=V('<div class="rotation-row svelte-151emff" aria-label="Rotation controls"><div role="slider" tabindex="0" aria-valuemin="0" aria-valuemax="359"><span class="dial-arm svelte-151emff"><span class="dial-line svelte-151emff"></span></span> <span class="dial-center svelte-151emff"></span></div> <label class="angle-field svelte-151emff"><input type="number" min="0" max="359" aria-label="Rotation angle" class="svelte-151emff"/> <span class="svelte-151emff">°</span></label> <!> <button type="button" aria-label="Flip rotation" data-tooltip="Flip 180°"><!></button></div>');function Xv(t,e){An(e,!1);let i=ci(e,"value",8,0),s=ci(e,"ariaLabel",8,"Rotation"),n=ci(e,"onChange",8,()=>{}),a=R(),o=R(!1),l=R(!1),c=R(d(i())),u=R(r(c));function d(X){return(Math.round(X)%360+360)%360}function h(X){const O=d(X),z=d(Math.round(O/45)*45);return Math.min(Math.abs(O-z),360-Math.abs(O-z))<=3?z:O}function v(X,O=!0){x(c,d(X)),O&&x(l,!1),n()(r(c))}function m(X){const O=r(a).getBoundingClientRect(),z=X.clientX-O.left-O.width/2,Et=X.clientY-O.top-O.height/2;return h(Math.atan2(Et,z)*180/Math.PI+90)}function y(X){const O=m(X);O!==r(c)&&v(O)}function _(X){X.button===0&&(X.preventDefault(),x(o,!0),r(a).setPointerCapture(X.pointerId),y(X))}function S(X){r(o)&&y(X)}function T(X){x(o,!1),r(a).hasPointerCapture(X.pointerId)&&r(a).releasePointerCapture(X.pointerId)}function I(){x(l,!r(l)),v(r(c)+180,!1)}function C(X){let O=r(c);if(X.key==="ArrowRight"||X.key==="ArrowUp")O+=X.shiftKey?45:1;else if(X.key==="ArrowLeft"||X.key==="ArrowDown")O-=X.shiftKey?45:1;else if(X.key==="Home")O=0;else return;X.preventDefault(),v(O)}ce(()=>(Wt(i()),r(u),r(o)),()=>{const X=d(i());X!==r(u)&&(x(u,X),r(o)||x(c,X))}),kr(),tr();var $=aP(),M=g($);let D;var F=g(M);Xs(M,X=>x(a,X),()=>r(a));var L=b(M,2),P=g(L),j=b(L,2);ue(j,0,()=>[0,45,90,180],ve,(X,O)=>{var z=rP();let Et;var gt=g(z);K(()=>{Et=$t(z,1,"preset svelte-151emff",null,Et,{active:r(c)===O&&!r(l)}),rt(gt,`${O??""}°`)}),B("click",z,()=>v(O)),A(X,z)});var _t=b(j,2);let ft;var ct=g(_t);ow(ct,{size:14}),K(()=>{D=$t(M,1,"rotation-dial svelte-151emff",null,D,{dragging:r(o)}),Q(M,"aria-label",s()),Q(M,"aria-valuenow",r(c)),pe(F,`transform: rotate(${r(c)}deg)`),le(P,r(c)),ft=$t(_t,1,"preset flip svelte-151emff",null,ft,{active:r(l)})}),B("pointerdown",M,_),B("pointermove",M,S),B("pointerup",M,T),B("pointercancel",M,T),B("keydown",M,C),B("input",P,X=>v(Number(X.currentTarget.value))),B("click",_t,I),A(t,$),zn()}var oP=V('<div class="panel-header-actions svelte-1mvnu54"><input class="file-input svelte-1mvnu54" type="file" accept="image/*,video/*,.svg,.gif,.mp4,.webm,.mov,.m4v,.lottie" multiple=""/> <button type="button" class="header-icon-btn svelte-1mvnu54" title="Import media" aria-label="Import media"><!></button></div>'),Jv=V('<p class="asset-error svelte-1mvnu54"> </p>'),lP=V('<p class="status-label svelte-1mvnu54" role="status"><span class="svelte-1mvnu54"></span> Loading media previews…</p>'),cP=V('<div class="library-empty-state svelte-1mvnu54"><span class="library-empty-icon svelte-1mvnu54"><!></span> <strong class="svelte-1mvnu54">Add your first asset</strong> <span class="svelte-1mvnu54">Drop files here or choose them from your device.</span> <button type="button" class="import-media-button svelte-1mvnu54">Choose files</button> <small class="svelte-1mvnu54">Images, video, SVG, GIF and Lottie</small></div>'),uP=V('<div class="asset-folder svelte-1mvnu54"><div class="folder-header svelte-1mvnu54"><!> <span class="folder-title svelte-1mvnu54">Audio</span></div> <div class="folder-content svelte-1mvnu54"><div class="asset-item audio-asset svelte-1mvnu54" role="button" tabindex="0" draggable="true"><div class="asset-item-icon svelte-1mvnu54"><!></div> <div class="asset-item-info svelte-1mvnu54"><div class="asset-item-name svelte-1mvnu54"> </div> <div class="asset-item-path svelte-1mvnu54"> </div></div></div></div></div>'),dP=V('<video playsinline="" preload="metadata" class="svelte-1mvnu54"></video>',2),fP=V('<img class="svelte-1mvnu54"/>'),hP=V('<button type="button" class="asset-card svelte-1mvnu54"><div class="asset-thumbnail svelte-1mvnu54"><!></div> <div class="asset-info svelte-1mvnu54"><div class="asset-name svelte-1mvnu54"> </div></div></button>'),pP=V('<div class="asset-folder svelte-1mvnu54"><div class="folder-header svelte-1mvnu54"><!> <span class="folder-title svelte-1mvnu54">Media</span> <span class="folder-count svelte-1mvnu54"> </span></div> <div class="asset-grid svelte-1mvnu54"></div></div>'),vP=V('<div role="region" aria-label="Import media by dropping files"><!> <!> <!> <!> <!></div>'),mP=V('<button type="button" class="preset-card svelte-1mvnu54"><div class="preset-thumbnail svelte-1mvnu54"><img class="svelte-1mvnu54"/></div> <div class="preset-info svelte-1mvnu54"><div class="preset-name svelte-1mvnu54"> </div></div></button>'),_P=V('<div class="preset-grid svelte-1mvnu54"></div>'),gP=V('<div class="panel-header svelte-1mvnu54"><div class="panel-tabs svelte-1mvnu54"><button type="button">Assets</button> <button type="button">Presets</button></div> <!></div> <div class="panel-content svelte-1mvnu54"><!></div>',1),yP=V('<div class="audio-item audio-asset svelte-1mvnu54" role="button" tabindex="0" draggable="true"><!> <span> </span> <button class="icon-btn svelte-1mvnu54" title="Remove audio"><!></button></div>'),bP=V('<div class="library-empty-state svelte-1mvnu54"><span class="library-empty-icon svelte-1mvnu54"><!></span> <strong class="svelte-1mvnu54">Add an audio track</strong> <span class="svelte-1mvnu54">Drop audio here or choose a file from your device.</span> <button type="button" class="import-media-button svelte-1mvnu54">Choose audio</button> <small class="svelte-1mvnu54">MP3, WAV, M4A, AAC, FLAC, OGG and Opus · 50 MB max</small></div>'),xP=V('<div class="panel-header svelte-1mvnu54"><h3 class="panel-heading-title svelte-1mvnu54">Audio</h3> <div class="panel-header-actions svelte-1mvnu54"><button type="button" class="header-icon-btn svelte-1mvnu54" title="Import audio"><!></button></div></div> <div class="panel-content svelte-1mvnu54"><div role="region" aria-label="Import audio by dropping a file"><!> <!></div></div>',1),Zv=V('<button type="button"><span class="layer-icon svelte-1mvnu54"><!></span> <span class="layer-copy svelte-1mvnu54"><strong class="svelte-1mvnu54"> </strong> <small class="svelte-1mvnu54"> </small></span></button>'),wP=V('<div class="panel-header svelte-1mvnu54"><h3 class="panel-heading-title svelte-1mvnu54">Text</h3> <div class="panel-header-actions svelte-1mvnu54"><button type="button" class="header-icon-btn svelte-1mvnu54" title="Add text"><!></button></div></div> <div class="panel-content svelte-1mvnu54"><div class="layer-list svelte-1mvnu54"></div></div>',1),Yl=V('<button type="button" class="effect-item svelte-1mvnu54"><!> <span class="svelte-1mvnu54"> </span></button>'),SP=V('<div class="panel-header svelte-1mvnu54"><h3 class="panel-heading-title svelte-1mvnu54">Effects</h3></div> <div class="panel-content svelte-1mvnu54"><div class="effects-categories svelte-1mvnu54"><div class="effects-category svelte-1mvnu54"><div class="category-title svelte-1mvnu54">Text Effects</div> <div class="effects-list svelte-1mvnu54"></div></div> <div class="effects-category svelte-1mvnu54"><div class="category-title svelte-1mvnu54">Object Effects</div> <div class="effects-list svelte-1mvnu54"></div></div> <div class="effects-category svelte-1mvnu54"><div class="category-title svelte-1mvnu54">Clip Transitions</div> <p class="category-hint svelte-1mvnu54">Drag onto a cut between two touching clips.</p> <div class="effects-list svelte-1mvnu54"><button type="button" class="effect-item transition-effect-item svelte-1mvnu54" draggable="true" title="Fade the outgoing clip into the incoming clip"><!> <span class="svelte-1mvnu54"><strong class="svelte-1mvnu54">Crossfade</strong><small class="svelte-1mvnu54">Fade both clips</small></span></button></div></div> <div class="effects-category svelte-1mvnu54"><div class="category-title svelte-1mvnu54">Scene Transitions</div> <div class="effects-list svelte-1mvnu54"></div></div> <div class="effects-category svelte-1mvnu54"><div class="category-title svelte-1mvnu54">Camera</div> <div class="effects-list svelte-1mvnu54"></div></div></div></div>',1),kP=V('<div class="panel-header svelte-1mvnu54"><h3 class="panel-heading-title svelte-1mvnu54">Scenes</h3></div> <div class="panel-content svelte-1mvnu54"><p class="panel-description svelte-1mvnu54">Backgrounds, overlays, and full-canvas effects that define the visual context of your animation. Use scenes to create atmosphere, transitions, and environmental layers.</p> <div class="layer-list svelte-1mvnu54"></div></div>',1),EP=V('<div class="panel-header svelte-1mvnu54"><h3 class="panel-heading-title svelte-1mvnu54">AI Config</h3></div> <!>',1),BP=V('<div class="panel-header svelte-1mvnu54"><h3 class="panel-heading-title svelte-1mvnu54">Settings</h3></div> <!>',1),UP=V('<button type="button" class="assistant-expand svelte-1mvnu54" title="Open Motionly Assistant" aria-label="Open Motionly Assistant"><!></button>'),TP=V('<div class="stage-status svelte-1mvnu54" role="status"><span class="svelte-1mvnu54"></span> Preparing project media…</div>'),PP=V('<span class="snap-guide snap-guide-v svelte-1mvnu54"></span>'),AP=V('<span class="snap-guide snap-guide-h svelte-1mvnu54"></span>'),zP=V('<video controls="" autoplay="" playsinline="" class="svelte-1mvnu54"></video>',2),MP=V('<img alt="Asset preview" class="svelte-1mvnu54"/>'),IP=V('<div class="asset-preview-overlay svelte-1mvnu54"><!> <button type="button" class="asset-preview-close svelte-1mvnu54" aria-label="Close asset preview"><!></button></div>'),ud=V('<div class="error-banner svelte-1mvnu54"> </div>'),CP=V('<div class="selection-summary transition-summary svelte-1mvnu54"><span class="layer-icon svelte-1mvnu54"><!></span> <span class="svelte-1mvnu54"><strong class="svelte-1mvnu54">Crossfade</strong><small class="svelte-1mvnu54"> </small></span></div> <div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Duration</div> <div class="number-input-wrapper svelte-1mvnu54"><input class="number-input svelte-1mvnu54" type="number" min="0.05" step="0.05"/> <span class="input-suffix svelte-1mvnu54">s</span></div></div> <div class="transition-pair-copy svelte-1mvnu54"><span class="svelte-1mvnu54"><small class="svelte-1mvnu54">Outgoing</small><strong class="svelte-1mvnu54"> </strong></span> <span class="transition-pair-arrow svelte-1mvnu54">→</span> <span class="svelte-1mvnu54"><small class="svelte-1mvnu54">Incoming</small><strong class="svelte-1mvnu54"> </strong></span></div> <button type="button" class="timeline-command transition-remove svelte-1mvnu54">Remove transition</button>',1),Kl=V('<img alt="" class="svelte-1mvnu54"/>'),$P=V('<div class="property-group primary-align-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Align to canvas</div> <div class="property-align-actions flat-align-actions svelte-1mvnu54" aria-label="Align selected layer to canvas"><button type="button" title="Align left" aria-label="Align left" data-tooltip="Align left" class="svelte-1mvnu54"><!></button> <button type="button" title="Align horizontal center" aria-label="Align horizontal center" data-tooltip="Center horizontally" class="svelte-1mvnu54"><!></button> <button type="button" title="Align right" aria-label="Align right" data-tooltip="Align right" class="svelte-1mvnu54"><!></button> <button type="button" title="Align top" aria-label="Align top" data-tooltip="Align top" class="svelte-1mvnu54"><!></button> <button type="button" title="Align vertical center" aria-label="Align vertical center" data-tooltip="Center vertically" class="svelte-1mvnu54"><!></button> <button type="button" title="Align bottom" aria-label="Align bottom" data-tooltip="Align bottom" class="svelte-1mvnu54"><!></button></div></div>'),OP=V('<div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Text</div> <textarea class="text-input svelte-1mvnu54" rows="3"></textarea></div> <div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Font Size</div> <div class="number-input-wrapper svelte-1mvnu54"><input class="number-input svelte-1mvnu54" type="number" min="1"/> <button type="button" class="input-suffix scrubbable-suffix svelte-1mvnu54" aria-label="Font size: drag up or down to adjust" title="Drag up or down to adjust font size">px</button></div></div>',1),Qv=V('<div class="property-unavailable svelte-1mvnu54">Uses source media colors</div>'),NP=V('<div class="property-group svelte-1mvnu54"><div class="property-label-row svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Width</div> <button type="button" class="property-action svelte-1mvnu54">Original size</button></div> <div class="number-input-wrapper svelte-1mvnu54"><input class="number-input svelte-1mvnu54" type="number" min="1" step="1"/> <span class="input-suffix svelte-1mvnu54">px</span></div></div>'),FP=V('<div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">SVG Stroke Override</div> <!></div>'),DP=V('<div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Transform Origin</div> <div class="property-row svelte-1mvnu54"><div class="number-input-wrapper svelte-1mvnu54"><input class="number-input svelte-1mvnu54" type="number" min="0" max="1" step="0.05"/> <span class="input-suffix svelte-1mvnu54">x</span></div> <div class="number-input-wrapper svelte-1mvnu54"><input class="number-input svelte-1mvnu54" type="number" min="0" max="1" step="0.05"/> <span class="input-suffix svelte-1mvnu54">y</span></div></div></div> <div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Skew</div> <div class="property-row svelte-1mvnu54"><div class="number-input-wrapper svelte-1mvnu54"><input class="number-input svelte-1mvnu54" type="number" step="1"/> <span class="input-suffix svelte-1mvnu54">x°</span></div> <div class="number-input-wrapper svelte-1mvnu54"><input class="number-input svelte-1mvnu54" type="number" step="1"/> <span class="input-suffix svelte-1mvnu54">y°</span></div></div></div> <!>',1),dd=V("<option> </option>"),LP=V('<label class="toggle-row svelte-1mvnu54"><input type="checkbox" class="svelte-1mvnu54"/> <span>Invert alpha</span></label> <label class="toggle-row svelte-1mvnu54"><input type="checkbox" class="svelte-1mvnu54"/> <span>Show mask layer</span></label>',1),RP=V('<div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54"> </div> <div class="slider-control svelte-1mvnu54"><input class="custom-slider svelte-1mvnu54" type="range"/> <input class="slider-value-input svelte-1mvnu54" type="number"/></div></div>'),VP=V('<div class="section-title svelte-1mvnu54">Adjustments</div> <!>',1),HP=V('<div class="number-input-wrapper svelte-1mvnu54"><input class="number-input svelte-1mvnu54" type="number" min="0" max="100" step="0.1"/> <span class="input-suffix svelte-1mvnu54">%</span></div> <button type="button" class="icon-btn danger-btn svelte-1mvnu54" title="Delete selected keyframe"><!></button>',1),jP=V('<div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Keyframe easing (into this keyframe)</div> <select class="text-input svelte-1mvnu54"><option>Animation default</option><!></select></div>'),tm=V('<button type="button"> </button>'),GP=V('<div class="selection-summary svelte-1mvnu54"><span class="layer-icon svelte-1mvnu54"><!></span> <span class="svelte-1mvnu54"><strong class="svelte-1mvnu54"> </strong><small class="svelte-1mvnu54"> </small></span></div> <div class="primary-properties svelte-1mvnu54" aria-label="Primary properties"><!> <div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Position</div> <div class="property-row svelte-1mvnu54"><div class="number-input-wrapper svelte-1mvnu54"><input class="number-input svelte-1mvnu54" type="number"/> <button type="button" class="input-suffix scrubbable-suffix svelte-1mvnu54" aria-label="X position: drag up or down to adjust" title="Drag up or down to adjust X position">x</button></div> <div class="number-input-wrapper svelte-1mvnu54"><input class="number-input svelte-1mvnu54" type="number"/> <button type="button" class="input-suffix scrubbable-suffix svelte-1mvnu54" aria-label="Y position: drag up or down to adjust" title="Drag up or down to adjust Y position">y</button></div></div></div> <div class="property-group rotation-property svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Rotation</div> <!></div> <!> <div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Scale</div> <div class="slider-control svelte-1mvnu54"><input class="custom-slider svelte-1mvnu54" type="range" min="0" max="3" step="0.01" aria-label="Scale"/> <input class="slider-value-input svelte-1mvnu54" type="number" min="0" step="0.01" aria-label="Scale value"/></div></div> <div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Opacity</div> <div class="slider-control svelte-1mvnu54"><input class="custom-slider svelte-1mvnu54" type="range" min="0" max="1" step="0.01" aria-label="Opacity"/> <input class="slider-value-input svelte-1mvnu54" type="number" min="0" max="100" aria-label="Opacity percentage"/></div></div> <div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Color</div> <!></div> <div class="property-row timing-row svelte-1mvnu54"><div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Start Time</div> <div class="number-input-wrapper svelte-1mvnu54"><input class="number-input svelte-1mvnu54" type="number" min="0" step="0.01"/> <span class="input-suffix svelte-1mvnu54">s</span></div></div> <div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Duration</div> <div class="number-input-wrapper svelte-1mvnu54"><input class="number-input svelte-1mvnu54" type="number" step="0.01"/> <span class="input-suffix svelte-1mvnu54">s</span></div></div></div></div> <details class="more-options svelte-1mvnu54"><summary class="svelte-1mvnu54">More Options</summary> <div class="more-options-content svelte-1mvnu54"><!> <!> <div class="section-title svelte-1mvnu54">Layer Mask</div> <div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Use layer as alpha</div> <select class="text-input mask-select svelte-1mvnu54"><option>None</option><!></select></div> <!> <!> <div class="section-title svelte-1mvnu54">Keyframes</div> <div class="property-group keyframe-controls svelte-1mvnu54"><button type="button" class="timeline-command svelte-1mvnu54">◆ Add at playhead</button> <!></div> <!> <div class="section-title svelte-1mvnu54">Animation</div> <div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Preset</div> <div class="preset-cards svelte-1mvnu54"><button type="button">None</button> <button type="button">Fade</button> <button type="button">Rise</button> <button type="button">Scale</button> <button type="button">Blur</button> <button type="button">Drift</button></div></div> <div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Animation Duration</div> <div class="number-input-wrapper svelte-1mvnu54"><input class="number-input svelte-1mvnu54" type="number" min="0.1" step="0.1"/> <span class="input-suffix svelte-1mvnu54">s</span></div></div> <div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Animation Delay</div> <div class="number-input-wrapper svelte-1mvnu54"><input class="number-input svelte-1mvnu54" type="number" min="0" step="0.1"/> <span class="input-suffix svelte-1mvnu54">s</span></div></div> <div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Easing</div> <div class="easing-options svelte-1mvnu54"></div> <input class="text-input easing-input svelte-1mvnu54" type="text" placeholder="power3.out or cubic-bezier(...)" aria-label="Custom animation easing"/></div></div></details>',1),qP=V('<div class="selection-summary svelte-1mvnu54"><span class="layer-icon svelte-1mvnu54"><!></span> <span class="svelte-1mvnu54"><strong class="svelte-1mvnu54"> </strong><small class="svelte-1mvnu54">Timeline clip</small></span></div> <div class="primary-properties svelte-1mvnu54" aria-label="Primary properties"><div class="property-group primary-align-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Align to canvas</div> <div class="property-align-actions flat-align-actions svelte-1mvnu54" aria-label="Align selected layer to canvas"><button type="button" title="Align left" aria-label="Align left" data-tooltip="Align left" class="svelte-1mvnu54"><!></button> <button type="button" title="Align horizontal center" aria-label="Align horizontal center" data-tooltip="Center horizontally" class="svelte-1mvnu54"><!></button> <button type="button" title="Align right" aria-label="Align right" data-tooltip="Align right" class="svelte-1mvnu54"><!></button> <button type="button" title="Align top" aria-label="Align top" data-tooltip="Align top" class="svelte-1mvnu54"><!></button> <button type="button" title="Align vertical center" aria-label="Align vertical center" data-tooltip="Center vertically" class="svelte-1mvnu54"><!></button> <button type="button" title="Align bottom" aria-label="Align bottom" data-tooltip="Align bottom" class="svelte-1mvnu54"><!></button></div></div> <div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Position</div> <div class="property-row svelte-1mvnu54"><div class="number-input-wrapper svelte-1mvnu54"><input class="number-input svelte-1mvnu54" type="number"/> <button type="button" class="input-suffix scrubbable-suffix svelte-1mvnu54" aria-label="X position: drag up or down to adjust" title="Drag up or down to adjust X position">x</button></div> <div class="number-input-wrapper svelte-1mvnu54"><input class="number-input svelte-1mvnu54" type="number"/> <button type="button" class="input-suffix scrubbable-suffix svelte-1mvnu54" aria-label="Y position: drag up or down to adjust" title="Drag up or down to adjust Y position">y</button></div></div></div> <div class="property-group rotation-property svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Rotation</div> <!></div> <p class="shared-property-note svelte-1mvnu54">Visual changes apply to every clip using this source asset.</p> <div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Scale</div> <div class="slider-control svelte-1mvnu54"><input class="custom-slider svelte-1mvnu54" type="range" min="0.05" max="3" step="0.01" aria-label="Scale"/> <input class="slider-value-input svelte-1mvnu54" type="number" min="0.05" step="0.01" aria-label="Scale value"/></div></div> <div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Opacity</div> <div class="slider-control svelte-1mvnu54"><input class="custom-slider svelte-1mvnu54" type="range" min="0" max="1" step="0.01" aria-label="Opacity"/> <input class="slider-value-input svelte-1mvnu54" type="number" min="0" max="100" aria-label="Opacity percentage"/></div></div> <div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Color</div> <!></div> <div class="property-row timing-row svelte-1mvnu54"><div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Start Time</div> <div class="number-input-wrapper svelte-1mvnu54"><input class="number-input svelte-1mvnu54" type="number" min="0" step="0.01"/> <span class="input-suffix svelte-1mvnu54">s</span></div></div> <div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Duration</div> <div class="number-input-wrapper svelte-1mvnu54"><input class="number-input svelte-1mvnu54" type="number" min="0.05" step="0.05"/> <span class="input-suffix svelte-1mvnu54">s</span></div></div></div></div> <details class="more-options svelte-1mvnu54"><summary class="svelte-1mvnu54">More Options</summary> <div class="more-options-content svelte-1mvnu54"><button type="button" class="timeline-command clip-original-size svelte-1mvnu54">Original size</button> <div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Width</div> <div class="number-input-wrapper svelte-1mvnu54"><input class="number-input svelte-1mvnu54" type="number" min="1" step="1"/> <span class="input-suffix svelte-1mvnu54">px</span></div></div> <div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Track</div> <select class="text-input svelte-1mvnu54"></select></div> <div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Trim In</div> <div class="number-input-wrapper svelte-1mvnu54"><input class="number-input svelte-1mvnu54" type="number" min="0" step="0.01"/> <span class="input-suffix svelte-1mvnu54">s</span></div></div> <div class="property-group svelte-1mvnu54"><div class="property-label svelte-1mvnu54">Trim Out</div> <div class="number-input-wrapper svelte-1mvnu54"><input class="number-input svelte-1mvnu54" type="number" min="0" step="0.01"/> <span class="input-suffix svelte-1mvnu54">s</span></div></div> <button type="button" class="timeline-command svelte-1mvnu54">Split at playhead</button></div></details>',1),WP=V('<div class="properties-empty svelte-1mvnu54"><!><strong class="svelte-1mvnu54">Select a layer</strong><span class="svelte-1mvnu54">Choose an object on the canvas or timeline to edit its properties.</span></div>'),YP=V('<span class="audio-chip svelte-1mvnu54"><!> </span> <button class="icon-btn svelte-1mvnu54" title="Remove audio"><!></button>',1),KP=V('<button class="timeline-command svelte-1mvnu54" title="Attach audio"><!> Audio</button>'),XP=V('<button class="icon-btn svelte-1mvnu54" title="Duplicate selected layer (Ctrl/Cmd+D)" aria-label="Duplicate selected layer"><!></button> <button class="icon-btn danger-btn svelte-1mvnu54" title="Delete selected layer (Delete)"><!></button>',1),JP=V('<span class="ruler-tick svelte-1mvnu54"> </span>'),ZP=V('<span class="timeline-snap-guide svelte-1mvnu54"></span>'),QP=V('<span class="drop-indicator svelte-1mvnu54"></span>'),tA=V('<span class="track-controls svelte-1mvnu54"><button type="button"><!></button></span>'),eA=V('<span class="track-time svelte-1mvnu54"> </span>'),em=V('<span class="keyframe-marker drag-keyframe svelte-1mvnu54" aria-hidden="true"></span>'),im=V("<span></span> <!>",1),fd=V('<span class="clip-media video-clip-media svelte-1mvnu54"><!></span>'),hd=V('<span class="clip-media svelte-1mvnu54"></span>'),Xl=V('<span class="clip-text svelte-1mvnu54"> </span>'),sm=V('<span class="clip-color svelte-1mvnu54"></span>'),nm=V('<span><!> <button type="button" class="clip-select svelte-1mvnu54"></button> <button type="button" class="clip-action clip-duplicate svelte-1mvnu54" title="Duplicate layer (Ctrl/Cmd+D)"><!></button> <button type="button" class="clip-action clip-more svelte-1mvnu54" title="More options"><!></button> <button type="button" class="clip-action clip-delete svelte-1mvnu54" title="Delete layer (Delete)"><!></button> <button type="button" class="trim-handle trim-start svelte-1mvnu54"></button> <button type="button" class="trim-handle trim-end svelte-1mvnu54"></button></span>'),rm=V('<button type="button"></button>'),am=V('<!> <button type="button" class="keyframe-add svelte-1mvnu54" title="Add keyframe at playhead" aria-label="Add keyframe at playhead">+</button>',1),iA=V('<div><div><span class="track-thumb svelte-1mvnu54"><!></span> <span class="track-copy svelte-1mvnu54"><strong class="svelte-1mvnu54"> </strong> <small class="svelte-1mvnu54"> </small></span> <!></div> <div class="track-lane svelte-1mvnu54"><!> <!> <!></div></div>'),om=V('<button type="button"><!></button>'),sA=V('<span class="track-controls svelte-1mvnu54"><!> <!></span>'),nA=s_('<svg preserveAspectRatio="none" class="svelte-1mvnu54"><path class="svelte-1mvnu54"></path></svg>'),rA=V('<span><span aria-hidden="true"><!></span> <span class="clip-text audio-clip-label svelte-1mvnu54"> </span> <button type="button" class="clip-select svelte-1mvnu54"></button></span>'),aA=V('<span class="clip-trim-label svelte-1mvnu54"> </span>'),oA=V('<span><!> <!> <button type="button" class="clip-select svelte-1mvnu54"></button> <button type="button" class="clip-action clip-duplicate svelte-1mvnu54" title="Duplicate clip (Ctrl/Cmd+D)"><!></button> <button type="button" class="clip-action clip-more svelte-1mvnu54" title="More options"><!></button> <button type="button" class="trim-handle trim-start svelte-1mvnu54"></button> <button type="button" class="trim-handle trim-end svelte-1mvnu54"></button> <button type="button" class="clip-action clip-delete svelte-1mvnu54" title="Delete clip (Delete)"><!></button></span>'),lA=V('<div><div><span class="track-thumb svelte-1mvnu54"><!></span> <span class="track-copy svelte-1mvnu54"><strong class="svelte-1mvnu54"> </strong> <small class="svelte-1mvnu54"> </small></span> <!></div> <div class="track-lane svelte-1mvnu54"><!> <!> <!> <!> <!> <!></div></div>'),cA=V('<div class="timeline-empty svelte-1mvnu54"><!><span>No timeline layers yet. Add text or drag media here to begin.</span></div>'),uA=V('<div class="code-overlay svelte-1mvnu54"><div class="code-panel svelte-1mvnu54"><div class="code-header svelte-1mvnu54"><h3 class="svelte-1mvnu54">.motion source</h3> <button class="close-btn svelte-1mvnu54"><!></button></div> <textarea placeholder=".motion source" spellcheck="false" class="code-textarea svelte-1mvnu54"></textarea> <!></div></div>'),dA=V('<div class="delete-toast svelte-1mvnu54" role="status" aria-live="polite"><span> </span> <span class="toast-separator svelte-1mvnu54" aria-hidden="true">·</span> <button type="button" class="svelte-1mvnu54">Undo</button></div>'),fA=V('<div class="dialog-overlay svelte-1mvnu54" role="button" tabindex="-1"><div class="dialog svelte-1mvnu54" role="dialog" aria-labelledby="dialog-title" aria-modal="true" tabindex="0"><div class="dialog-header svelte-1mvnu54"><h3 id="dialog-title" class="svelte-1mvnu54">Load Preset</h3> <button type="button" class="dialog-close svelte-1mvnu54"><!></button></div> <div class="dialog-body svelte-1mvnu54"><p class="svelte-1mvnu54">Loading this preset will replace your current project and assets. Continue?</p></div> <div class="dialog-footer svelte-1mvnu54"><button type="button" class="dialog-btn secondary svelte-1mvnu54">Cancel</button> <button type="button" class="dialog-btn danger svelte-1mvnu54">Load Preset</button></div></div></div>'),hA=V('<div><div><nav class="nav-rail svelte-1mvnu54"><button type="button" title="Media / Assets" aria-label="Media / Assets" data-tooltip="Media"><!></button> <button type="button" title="Audio" aria-label="Audio" data-tooltip="Audio"><!></button> <button type="button" title="Text" aria-label="Text" data-tooltip="Text"><!></button> <button type="button" title="Effects" aria-label="Effects" data-tooltip="Effects"><!></button> <button type="button" title="Scenes" aria-label="Scenes" data-tooltip="Scenes"><!></button> <button type="button" title="AI Config" aria-label="AI Config" data-tooltip="AI Config"><!></button> <button type="button" title="Settings" aria-label="Settings" data-tooltip="Settings"><!></button></nav> <aside class="content-panel svelte-1mvnu54"><!></aside> <aside><!></aside> <main class="preview-container svelte-1mvnu54"><div class="stage-meta svelte-1mvnu54"><span> </span> <div class="stage-actions svelte-1mvnu54"><button type="button" class="meta-btn svelte-1mvnu54">Fit</button> <span> </span> <button type="button" class="icon-btn svelte-1mvnu54" title="Fullscreen preview"><!></button></div></div> <div class="stage svelte-1mvnu54"><!> <div class="canvas-shell svelte-1mvnu54"><canvas></canvas> <!> <!></div> <!></div> <!></main> <aside class="properties-panel svelte-1mvnu54"><div class="panel-title svelte-1mvnu54">Properties</div> <!></aside></div> <section class="timeline-panel svelte-1mvnu54"><button type="button" class="timeline-resizer svelte-1mvnu54" aria-label="Resize timeline" title="Drag to resize timeline"><span class="svelte-1mvnu54"></span></button> <div class="timeline-toolbar svelte-1mvnu54"><div class="playback-controls svelte-1mvnu54"><button class="control-btn svelte-1mvnu54" title="Go to start (Home)"><!></button> <button class="control-btn play-btn svelte-1mvnu54"><!></button> <span class="timecode svelte-1mvnu54"> </span> <span class="framecode svelte-1mvnu54"> </span></div> <div class="timeline-context svelte-1mvnu54"><!> <span class="svelte-1mvnu54"> </span></div> <div class="timeline-actions svelte-1mvnu54"><input class="file-input svelte-1mvnu54" type="file" accept="audio/*"/> <!> <!> <button class="icon-btn svelte-1mvnu54" title="Undo (Ctrl/Cmd+Z)"><!></button> <button class="icon-btn svelte-1mvnu54" title="Redo (Ctrl/Cmd+Shift+Z)"><!></button> <button class="icon-btn svelte-1mvnu54" title="Split selected clip at playhead (S)"><!></button> <button><!></button> <button class="icon-btn svelte-1mvnu54" title="Timeline zoom out"><!></button> <span class="timeline-zoom-value"> </span> <button class="icon-btn svelte-1mvnu54" title="Timeline zoom in"><!></button></div></div> <div role="region" aria-label="Timeline tracks"><div class="ruler-row svelte-1mvnu54"><div class="track-label ruler-label svelte-1mvnu54">Layers</div> <div class="ruler svelte-1mvnu54"><!> <span class="playhead-marker svelte-1mvnu54"></span> <!> <!> <input class="timeline-scrubber svelte-1mvnu54" type="range" min="0" aria-label="Timeline scrubber"/></div></div> <!> <!> <!></div> <audio class="svelte-1mvnu54"></audio></section> <button class="source-toggle svelte-1mvnu54">.motion</button> <!></div> <!> <!>',1);function pA(t,e){An(e,!1);const i=R(),s=R(),n=R(),a=R(),o=R(),l=R(),c=R(),u=R(),d=R(),h=R(),v=R(),m=R(),y=R(),_=R(),S=R(),T=R(),I=R(),C=R(),$=R(),M=R(),D=R(),F=R(),L=R();let P=ci(e,"code",12,""),j=ci(e,"onSave",8,()=>{}),_t=R(),ft=R(),ct=null,X=R(null),O=R(null),z=R(null),Et=R(null),gt=R(new Map),$e=R(!0),Ge="",te=0,re=R([]),ke=R([]),Vt=R(!1),ot=R(0),mi=0,bt=R(5),Ke=null,be=R(null),Ue=R({vertical:null,horizontal:null}),ht=R(null),Jt=R(null),_i=R(!1),zi=R(!1),vt=R(""),qe=R(.42),es=R(!1),ks=R(),Ct=R(),yt=R(),de="",Oe=R(""),Mt=R(0),at=null,Ht=0,ie="",St=0,fe=R(""),ni=R(0),is=R(!1),js=R(0),Es=R(1),ri=R(230),ss=!1,Gs=!1,Hi=R(""),gi=R(""),Mi=R(""),Ae=R("media"),Bs=R(!1),ze=R("assets"),Qe=R(!1),Ii="",Ci=R(null),er=0,ji=R(!1),Me=R(null),Us=R(!1),fn=R(null),Gi=R(null),Ki=R(null),en="",Ut=R(ZU(P())),Te=R(),$i=R(1),ns=R(!0),Bi=R(null),yi=R(null),bi=R(""),Ui=null,In=null,Ts=R(null);const Br=[{property:"blur",label:"Blur",min:0,max:40,step:.5,fallback:0},{property:"brightness",label:"Brightness",min:0,max:3,step:.01,fallback:1},{property:"contrast",label:"Contrast",min:0,max:3,step:.01,fallback:1},{property:"saturation",label:"Saturation",min:0,max:3,step:.01,fallback:1},{property:"hue",label:"Hue",min:-180,max:180,step:1,fallback:0},{property:"grayscale",label:"Grayscale",min:0,max:1,step:.01,fallback:0},{property:"sepia",label:"Sepia",min:0,max:1,step:.01,fallback:0},{property:"invert",label:"Invert",min:0,max:1,step:.01,fallback:0}],hn=[{name:"splitReveal",description:"Split character reveal",category:"text"},{name:"blurReveal",description:"Blur and fade reveal",category:"text"},{name:"fadeUp",description:"Fade up from bottom",category:"text"},{name:"slideIn",description:"Slide in from side",category:"text"},{name:"typewriter",description:"Typewriter effect",category:"text"},{name:"keynoteText",description:"Keynote-style text reveal",category:"text"},{name:"charReveal",description:"Character-by-character reveal",category:"text"},{name:"wordReveal",description:"Word-by-word reveal",category:"text"},{name:"heroLogo",description:"Hero logo entrance",category:"object"},{name:"softReveal",description:"Soft fade and scale reveal",category:"object"},{name:"springIn",description:"Spring entrance",category:"object"},{name:"float",description:"Floating motion",category:"object"},{name:"pulse",description:"Pulsing scale",category:"object"},{name:"drawSVG",description:"SVG path drawing",category:"object"},{name:"scaleReveal",description:"Scale up reveal",category:"object"},{name:"shapeWipe",description:"Directional wipe transition",category:"transition"},{name:"irisWipe",description:"Circular iris wipe",category:"transition"},{name:"maskReveal",description:"Masked reveal transition",category:"transition"},{name:"dynamicSlide",description:"Dynamic slide transition",category:"transition"},{name:"slowPush",description:"Slow camera push",category:"camera"},{name:"pan",description:"Camera pan",category:"camera"},{name:"speedZoom",description:"Speed zoom punch",category:"camera"}],sa=[{name:"Motionly",path:on("preset/motionly/motionly.motion"),gifPath:on("preset/motionly/motionly-preset.gif")}];Vc(()=>{ss=SU(),r(_t)&&(ct=new yg(r(_t)),Ff());const f=new ResizeObserver(na);r(ft)&&f.observe(r(ft)),requestAnimationFrame(na);const p=w=>{const U=!!w.target?.closest('input, textarea, select, button, a, [contenteditable="true"], [role="button"], [role="slider"]'),N=eT(w,U);if(!N||r(Qe)||(w.preventDefault(),w.repeat&&!N.startsWith("nudge-")))return;const W=w.shiftKey?10:1;switch(N){case"save":j()();break;case"undo":$f();break;case"redo":Of();break;case"toggle-playback":r(Vt)?rs():Df();break;case"delete-selection":Kf();break;case"duplicate-selection":Wf();break;case"nudge-left":sl(-W,0);break;case"nudge-right":sl(W,0);break;case"nudge-up":sl(0,-W);break;case"nudge-down":sl(0,W);break;case"split":vu();break;case"reset-playhead":Lf();break;case"clear-selection":r(Ci)?th():r(vt)&&(x(vt,""),x(Jt,null),x(Gi,null),pn(r(ot)));break}};return window.addEventListener("keydown",p),()=>{f.disconnect(),nd(r(gt)),Ht+=1,St+=1,de&&URL.revokeObjectURL(de),Ui&&clearTimeout(Ui),window.removeEventListener("keydown",p)}});function sn(){r(yi)===null&&x(yi,r(Ut).present)}function Ur(){if(r(yi)===null)return;const f=r(Ut).present,p=r(yi);x(yi,null),x(Ut,Gl({...r(Ut),present:p},f))}function $f(){ja();const f=QU(r(Ut));f!==r(Ut)&&(rs(),x(Ut,f),P(f.present))}function Of(){ja();const f=tT(r(Ut));f!==r(Ut)&&(rs(),x(Ut,f),P(f.present))}function Py(f){Ii=f,x(Qe,!0)}async function Nf(){if(Ii)try{const f=await fetch(Ii);if(!f.ok)throw new Error("Failed to load preset");P(await f.text()),x(Qe,!1),Ii="",x(vt,""),x(ot,0),r(Vt)&&rs()}catch(f){console.error("Failed to load preset:",f),x(X,f instanceof Error?f.message:"Failed to load preset"),x(Qe,!1)}}function Qo(){x(Qe,!1),Ii=""}function Ay(f){try{const p=h_(f,r(re)),w=jp(p);return Yp(w),r(Vt)&&rs(),x(vt,""),x(ot,0),P(p),null}catch(p){return p instanceof Error?p.message:"The generated project is not valid .motion source."}}function Ff(){try{if(x(X,null),x(O,jp(P())),x(z,Yp(r(O))),r(yt)&&De(yt,r(yt).muted=r(z).tracks.find(p=>p.role==="audio")?.muted??!1),Iy(r(z).imports),x(bt,r(z).canvas.duration),x(ot,Math.min(r(ot),r(bt))),r(vt)&&!r(z).elements.some(p=>p.id===r(vt))&&!r(z).clips.some(p=>p.id===r(vt))&&x(vt,""),r(z).audio){const p=r(z).audio;(!de||p!==ie)&&Ry(p)}else!r(z).audio&&de&&su();const f=r(z).imports.map(p=>`${p.name}:${p.path}`).join("|");f!==Ge&&(Ge=f,x($e,!1),My(r(z))),pn(r(ot))}catch(f){x(X,f instanceof Error?f.message:String(f)),console.error("Parse error:",f)}}async function pn(f,p=!1){if(!ct||!r(z))return;const w=pg(r(z),f),E=tl();x(Et,w);const U=++er,N=()=>{!ct||U!==er||(ct.render(w,r(gt),E),zy(E))};try{await _g(w,r(gt),{playing:p?!1:r(Vt),exact:p}),N()}catch(W){console.warn("Animated asset synchronization failed:",W)}}function zy(f=tl()){if(!r(_t)||!r(Et)||!r(vt))return;const p=r(Et).elements.filter(nt=>{const Pt=Ps(nt);return nt.id===r(vt)||Pt.textGroup===r(vt)}),w=p.filter(nt=>Number(Ps(nt).opacity??1)>.001),E=(w.length?w:p).map(oa);if(!E.length)return;const U=Math.min(...E.map(nt=>nt.x)),N=Math.min(...E.map(nt=>nt.y)),W=Math.max(...E.map(nt=>nt.x+nt.width)),H=Math.max(...E.map(nt=>nt.y+nt.height)),Y=r(_t).getContext("2d");if(!Y)return;const et=r(i)?.kind==="overlay"||r(i)?.kind==="effect"?3/r(qe):0,st=10/r(qe);if(Y.save(),Y.setTransform(f,0,0,f,0,0),Y.strokeStyle="#0a84ff",Y.lineWidth=2/r(qe),Y.setLineDash([8/r(qe),5/r(qe)]),Y.strokeRect(U+et,N+et,W-U-et*2,H-N-et*2),r(i)?.kind==="asset"||r(i)?.kind==="text"||r(s)){Y.setLineDash([]),Y.fillStyle="#0d1513";const nt=[[U,N],[W,N],[W,H],[U,H]];for(const[Pt,Gt]of nt)Y.fillRect(Pt-st/2,Gt-st/2,st,st),Y.strokeRect(Pt-st/2,Gt-st/2,st,st)}Y.restore()}async function My(f){const p=++te,w=r(gt),E=[];try{const U=await Ek(f,document.baseURI,(W,H)=>{const Y=H instanceof Error?H.message:String(H);E.push(`${W}: ${Y}`)});if(p!==te){nd(U);return}for(const W of f.imports){const H=w.get(W.name);!U.has(W.name)&&H&&U.set(W.name,H)}for(const[W,H]of w)U.get(W)!==H&&nd(new Map([[W,H]]));x(gt,U);const N=f.imports.filter(W=>!U.has(W.name));x(gi,[...E,...E.length||!N.length?[]:[`Could not load ${N.map(W=>W.name).join(", ")}.`],...kk(U)].join(" ")),x($e,!0),pn(r(ot),!0)}catch(U){if(p!==te)return;x($e,!0),x(gi,U instanceof Error?`Loading assets failed: ${U.message}`:"Loading assets failed."),console.warn("Asset load failed:",U)}}function Iy(f){const p=new Map(r(re).map(w=>[w.name,w]));for(const w of f)w.path.startsWith("data:")&&p.set(w.name,w);x(re,[...p.values()])}function Cy(f,p){return[...new Map([...f,...p].map(w=>[w.name,w])).values()]}function Df(){if(!r(z)||r(Vt))return;x(Vt,!0),mi=r(ot),Xf(r(ot));const f=r(z).canvas.fps;let p=r(ot),w=performance.now(),E=-1,U=0;async function N(W){if(!r(Vt))return;const H=!!(de&&r(yt)&&!r(yt).paused&&!r(yt).ended),Y=Qc(H?(r(z)?.audioStart??0)+r(yt).currentTime:hT(p,w,W,r(bt)));mi=Y,H?(p=Y,w=W):Xf(Y);const et=Math.round(Y*f);if(et!==E&&(E=et,await pn(Y),!r(Vt))){Hd(r(gt));return}if((W-U>=1e3/30||Y>=r(bt))&&(x(ot,Y),U=W),Y>=r(bt)){rs();return}Ke=requestAnimationFrame(N)}Ke=requestAnimationFrame(N)}function rs(){const f=r(Vt);x(Vt,!1),f&&x(ot,mi),r(yt)?.pause(),Hd(r(gt)),Ke&&(cancelAnimationFrame(Ke),Ke=null)}function Lf(){rs(),x(ot,0),il(),pn(r(ot),!0)}function Qc(f){return fT(f,r(bt),r(z)?.canvas.fps??60)}function $y(f){rs(),x(ot,Qc(Number(f.currentTarget.value))),il(),pn(r(ot),!0)}function tu(f){rs(),x(ot,Qc(f)),il(),pn(r(ot),!0)}function Oy(f){f.preventDefault();const p=f.clientY,w=r(ri),E=N=>{x(ri,Math.max(130,Math.min(window.innerHeight*.55,w+p-N.clientY))),na()},U=()=>{window.removeEventListener("pointermove",E),window.removeEventListener("pointerup",U)};window.addEventListener("pointermove",E),window.addEventListener("pointerup",U)}function Ny(f){f.key!=="ArrowUp"&&f.key!=="ArrowDown"||(f.preventDefault(),x(ri,Math.max(130,Math.min(window.innerHeight*.55,r(ri)+(f.key==="ArrowUp"?24:-24)))),requestAnimationFrame(na))}function na(){if(!r(ft)||!r(z))return;const f=tl(),p=r(ft).getBoundingClientRect(),w=Math.min((p.width-72)/r(C),(p.height-72)/r($),1);x(qe,Math.max(.08,Number(w.toFixed(3)))),!r(Vt)&&Math.abs(f-tl())>.01&&requestAnimationFrame(()=>pn(r(ot)))}function tl(){const f=typeof window>"u"?1:window.devicePixelRatio||1;return Math.min(1,Math.max(.08,r(qe)*Math.min(f,1.5)))}function Fy(){x(es,!r(es)),requestAnimationFrame(na)}function Rf(){x(zi,!r(zi))}function Vf(f){const p=Math.floor(f/60),w=Math.floor(f%60);return`${p}:${w.toString().padStart(2,"0")}`}function eu(f){return`${Vf(f)}.${Math.floor(f%1*10)}`}function Ps(f){return"render"in f?f.render:f.properties}function iu(f){if(f.asset?.path)return f.asset.path.split("/").pop()??"Asset";if(f.kind==="text"){const p=as(f,"value","Text");return p.length>24?`${p.slice(0,24)}...`:p}return f.kind==="overlay"?"Scene color":f.kind==="effect"?"Effect":"Layer"}function As(f){if(!r(z))return{start:0,end:r(bt)};const p=new Set(r(z).elements.filter(Y=>Y.id===f||Ps(Y).textGroup===f).map(Y=>Y.id)),w=[],E=[],U=r(z).elements.find(Y=>Y.id===f),N=U?Ps(U):{};if(typeof N.start=="number"&&typeof N.duration=="number"){const Y=Math.max(0,N.start);return{start:Y,end:Math.min(r(bt),Y+Math.max(0,N.duration))}}U&&jt(U,"opacity",1)>0&&w.push(0);for(const Y of r(z).animations.filter(et=>p.has(et.target))){if(Y.keyframes.length){const nt=Y.keyframes.filter(zt=>Number(zt.properties.opacity??0)>0);nt[0]&&w.push(Y.delay+nt[0].offset*Y.duration);const Pt=nt.at(-1),Gt=Pt&&Y.keyframes.find(zt=>zt.offset>Pt.offset&&Number(zt.properties.opacity??1)<=0);Gt&&E.push(Y.delay+Gt.offset*Y.duration);continue}const et=Number(Y.from.opacity??jt(U??null,"opacity",1)),st=Number(Y.to.opacity??et);st>0&&w.push(Y.delay),et>0&&st<=0&&E.push(Y.delay+Y.duration)}const W=w.length?Math.min(...w):0,H=E.length?Math.max(W,...E):r(bt);return{start:Math.max(0,W),end:Math.min(r(bt),H)}}function ti(f){return r(bt)>0?Math.max(0,Math.min(100,f/r(bt)*100)):0}async function Dy(f){const p=f.currentTarget;await Hf(p.files?.[0]),p.value=""}async function Ly(f){f.preventDefault(),x(ji,!1),await Hf(f.dataTransfer?.files[0])}async function Hf(f){if(!f||!r(O))return;if(x(Mi,""),!f.type.startsWith("audio/")&&!/\.(aac|flac|m4a|mp3|ogg|opus|wav)$/i.test(f.name)){x(Mi,`${f.name} is not a supported audio file.`);return}if(f.size>50*1024*1024){x(Mi,"Audio files must be 50 MB or smaller.");return}const p=++Ht,w=await nh(f);if(p!==Ht)return;de.startsWith("blob:")&&URL.revokeObjectURL(de),de=w,ie=w,x(Oe,f.name),x(Mt,0),De(yt,r(yt).src=de),De(yt,r(yt).muted=r(y)?.muted??!1),r(yt).load(),jf(f),De(O,r(O).body=r(O).body.filter(U=>U.type!=="Audio"));const E=r(O).body.findIndex(U=>U.type==="Import"||U.type==="Track"||U.type==="Element");r(O).body.splice(E<0?r(O).body.length:E,0,{type:"Audio",path:w,properties:{}}),P(Se(r(O)))}async function Ry(f){const p=++Ht;try{const w=await fetch(f);if(!w.ok)throw new Error("Failed to load audio");const E=await w.blob();if(p!==Ht)return;de.startsWith("blob:")&&URL.revokeObjectURL(de),de=URL.createObjectURL(E),ie=f,x(Oe,f.startsWith("data:audio/")?"Embedded audio":f.substring(f.lastIndexOf("/")+1)),x(Mt,0),r(yt)&&(De(yt,r(yt).src=de),r(yt).load()),jf(E)}catch(w){p===Ht&&console.error("Failed to load audio:",w)}}async function jf(f){const p=++St;x(fe,""),x(ni,0),x(is,!0);let w=null;try{const E=await f.arrayBuffer();if(p!==St)return;w=new AudioContext;const U=await w.decodeAudioData(E);if(p!==St)return;x(Mt,U.duration);const N=Array.from({length:U.numberOfChannels},(H,Y)=>U.getChannelData(Y)),W=await aT(N,rT(U.duration),()=>p!==St);if(p!==St)return;x(fe,oT(W)),x(ni,W.length)}catch(E){p===St&&console.warn("Could not generate audio waveform:",E)}finally{w&&await w.close().catch(()=>{}),p===St&&x(is,!1)}}function Vy(){St+=1,x(fe,""),x(ni,0),x(is,!1)}function su(){rs(),Ht+=1,Vy(),de.startsWith("blob:")&&URL.revokeObjectURL(de),de="",ie="",x(Oe,""),x(Mt,0),at=null,r(yt)&&r(yt).removeAttribute("src"),r(O)&&(De(O,r(O).body=r(O).body.filter(f=>f.type!=="Audio")),P(Se(r(O))))}async function Gf(f="motionly.mp4",p){if(!(!r(z)||Gs)){if(!ss){x(Hi,"MP4 export is not supported by this browser.");return}if(!r($e)){x(Hi,"Assets are still loading. Try export again in a moment.");return}rs(),Gs=!0,x(Hi,"");try{const w=await kU({scene:r(z),assets:r(gt),format:"mp4",height:r(z).canvas.height,fps:r(z).canvas.fps,audioUrl:de||void 0,onProgress:N=>{p?.(N)}}),E=URL.createObjectURL(w),U=document.createElement("a");U.href=E,U.download=f,U.click(),URL.revokeObjectURL(E)}catch(w){x(Hi,w instanceof Error?w.message:String(w))}finally{Gs=!1}}}function ja(){Ui&&clearTimeout(Ui),x(bi,""),Ui=null,In=null,x(Ts,null)}function qf(f,p,w){Ui&&clearTimeout(Ui),x(bi,f),In=p,x(Ts,w),Ui=setTimeout(ja,5e3)}function Hy(){const f=In;f&&(ja(),rs(),x(Ut,Gl(r(Ut),f)),P(f))}function Wf(){const f=r(z)?.clips.find(p=>p.id===r(vt));f?Yf(f.id):r(vt)&&nu(r(vt))}function nu(f){if(!r(O))return;const p=iT(r(O),f);p&&(x(O,p.program),x(vt,p.id),P(Se(r(O))))}function Yf(f){if(!r(O)||!r(z))return;const p=r(z).clips.findIndex(U=>U.id===f),w=r(z).clips[p];if(!w)return;const E=sT(r(O),p,w,r(bt),1/r(z).canvas.fps);E&&(x(O,E.program),x(vt,E.id),P(Se(r(O))))}function ru(f){if(!r(O))return;const p=P();De(O,r(O).body=r(O).body.filter(E=>!(E.type==="Element"&&E.name===f)&&!(E.type==="Animation"&&E.target===f))),x(vt,"");const w=Se(r(O));P(w),qf("Layer removed",p,w)}function Kf(){if(!r(O)||!r(vt))return;const f=r(vt);r(z)?.clips.some(p=>p.id===f)?rh(f):ru(f)}function el(f,p,w){f.preventDefault(),f.stopPropagation();const E=f.currentTarget.closest(".track-lane");if(!E)return;sn();const U=E.getBoundingClientRect(),N=H=>{const Y=(H.clientX-U.left)/U.width*r(bt);au(p,w,Ya(Y,U.width,p))},W=()=>{x(Bi,null),Ur(),window.removeEventListener("pointermove",N),window.removeEventListener("pointerup",W)};window.addEventListener("pointermove",N),window.addEventListener("pointerup",W)}function au(f,p,w){if(!r(O))return;const E=As(f),U=r(O).body.find(Y=>Y.type==="Element"&&Y.name===f);if(!U)return;const N=1/(r(z)?.canvas.fps??60),W=p==="start"?Math.min(w,E.end-N):E.start,H=p==="end"?Math.max(w,E.start+N):E.end;U.properties=Cc(U.properties,W,H,N),P(Se(r(O)))}function il(f=r(ot)){!de||!r(yt)||De(yt,r(yt).currentTime=Math.min(Math.max(0,f-(r(z)?.audioStart??0)),r(Mt)||f))}function Xf(f){if(!de||!r(yt)||!r(z))return;const p=f-r(z).audioStart;if(!(p<0||p>=(r(Mt)||Number.POSITIVE_INFINITY))&&(il(f),r(yt).paused&&!at)){const w=r(yt).play().catch(E=>{console.warn("Audio playback failed (this is normal if no user interaction yet):",E.message)});at=w,w.finally(()=>{at===w&&(at=null)})}}function jt(f,p,w){if(!f)return w;const E=Ps(f)[p];return typeof E=="number"?E:w}function as(f,p,w){if(!f)return w;const E=Ps(f)[p];return typeof E=="string"?E:w}function me(f,p){if(!r(O))return;const w=r(i)?.id??r(s)?.assetName;if(!w)return;const E=ou(w);E&&(E.properties={...E.properties,[f]:p},P(Se(r(O))))}function ir(f,p){return jt(r(i)??r(n),f,p)}function Ga(f,p,w,E=Number.NEGATIVE_INFINITY){if(f.key!=="ArrowUp"&&f.key!=="ArrowDown")return;f.preventDefault();const U=f.key==="ArrowUp"?1:-1,N=f.shiftKey?10:1;me(p,Math.max(E,Math.round(ir(p,w)+U*N)))}function qa(f,p,w,E=Number.NEGATIVE_INFINITY){if(f.button!==0)return;f.preventDefault();const U=f.currentTarget,N=f.clientY,W=ir(p,w),H=document.body.style.cursor,Y=document.body.style.userSelect;let et=W;U.setPointerCapture?.(f.pointerId),document.body.style.cursor="ns-resize",document.body.style.userSelect="none";const st=Pt=>{const Gt=Pt.shiftKey?.1:.5,zt=Math.max(E,Math.round(W+(N-Pt.clientY)*Gt));zt!==et&&(et=zt,me(p,zt))},nt=()=>{window.removeEventListener("pointermove",st),window.removeEventListener("pointerup",nt),window.removeEventListener("pointercancel",nt),U.hasPointerCapture?.(f.pointerId)&&U.releasePointerCapture(f.pointerId),document.body.style.cursor=H,document.body.style.userSelect=Y};window.addEventListener("pointermove",st),window.addEventListener("pointerup",nt),window.addEventListener("pointercancel",nt)}function ou(f){if(!r(O))return null;const p=r(O).body.find(E=>E.type==="Element"&&E.name===f);if(p)return p;if(!r(O).body.some(E=>E.type==="Import"&&E.name===f))return null;const w={type:"Element",kind:"asset",name:f,properties:{center:!0}};return r(O).body.push(w),w}function Jf(){if(!r(O))return;const f=r(i)?.kind==="asset"?r(i).id:r(s)?.assetName;if(!f)return;const p=ou(f);if(!p)return;const w={...p.properties};delete w.width,delete w.height,p.properties=w,P(Se(r(O)))}function lu(f,p){if(!r(O))return;const w=r(O).body.find(E=>E.type==="Element"&&E.name===f);w&&(w.properties={...w.properties,...p},P(Se(r(O))))}function sl(f,p){r(i)&&lu(r(i).id,{x:jt(r(i),"x",0)+f,y:jt(r(i),"y",0)+p})}function jy(f){if(!r(z)||!r(_t))return;const p=Qf(f),w=r(i)??r(Et)?.elements.find(H=>H.id===r(s)?.id);if(w&&(w.kind==="asset"||w.kind==="text")){const H=m1();if(H){const Y=[[H.x,H.y],[H.x+H.width,H.y],[H.x+H.width,H.y+H.height],[H.x,H.y+H.height]],et=16/r(qe);if(Y.some(([st,nt])=>Math.hypot(p.x-st,p.y-nt)<=et)){const st=H.x+H.width/2,nt=H.y+H.height/2;x(be,{mode:"resize",id:r(i)?.id??r(s)?.assetName??w.id,centerX:st,centerY:nt,startDistance:Math.max(1,Math.hypot(p.x-st,p.y-nt)),startScale:jt(w,"scale",1)}),r(_t).setPointerCapture(f.pointerId);return}}}const E=qy(p.x,p.y);if(!E){x(vt,""),pn(r(ot));return}rs();const U=as(E,"textGroup",E.id);vn(U,!1);const N=r(z).elements.find(H=>H.id===U);if(!N)return;const W=fh(N);x(be,{mode:"move",id:U,offsetX:p.x-W.x,offsetY:p.y-W.y,startX:jt(N,"x",0),startY:jt(N,"y",0)}),r(_t).setPointerCapture(f.pointerId)}function Gy(f){if(!r(be)||!r(z))return;const p=Qf(f),w=r(z).elements.find(Pt=>Pt.id===r(be)?.id);if(!w)return;if(r(be).mode==="resize"){const Pt=Math.hypot(p.x-r(be).centerX,p.y-r(be).centerY);lu(w.id,{scale:Number(Math.max(.05,r(be).startScale*Pt/r(be).startDistance).toFixed(3))});return}const E=hh(w);let U=p.x-r(be).offsetX-(E?r(z).canvas.width/2:0),N=p.y-r(be).offsetY-(E?r(z).canvas.height/2:0);if(f.shiftKey){const Pt=U-r(be).startX,Gt=N-r(be).startY;Math.abs(Pt)>=Math.abs(Gt)?N=r(be).startY:U=r(be).startX}const W=jt(w,"x",0),H=jt(w,"y",0),Y=oa(w),et={...Y,x:Y.x+U-W,y:Y.y+N-H},st=r(z).elements.filter(Pt=>Pt.id!==w.id&&!Pt.id.includes("__")).filter(Pt=>Pt.kind==="asset"||Pt.kind==="text").map(oa),nt=f.altKey||!r(ns)?{rect:et,guides:{vertical:null,horizontal:null}}:FU(et,st,r(z).canvas,6/Math.max(r(qe),.01));x(Ue,nt.guides),U+=nt.rect.x-et.x,N+=nt.rect.y-et.y,lu(w.id,{x:Math.round(U),y:Math.round(N)})}function Zf(f){x(be,null),x(Ue,{vertical:null,horizontal:null}),r(_t).hasPointerCapture(f.pointerId)&&r(_t).releasePointerCapture(f.pointerId)}function qs(f){const p=r(i)??r(n);if(!r(z)||!p)return;const w=oa(p),E=DU(w,r(z).canvas,f);me("x",Math.round(jt(p,"x",0)+E.x-w.x)),me("y",Math.round(jt(p,"y",0)+E.y-w.y))}function Qf(f){const p=r(_t).getBoundingClientRect();return{x:(f.clientX-p.left)/p.width*r(C),y:(f.clientY-p.top)/p.height*r($)}}function qy(f,p){if(!r(Et))return null;const w=bg(r(Et).elements);return r(Et).elements.filter(U=>!w.has(U.id)).filter(U=>U.kind==="text"||U.kind==="asset").filter(U=>jt(U,"opacity",1)>0).reverse().find(U=>{const N=oa(U);return f>=N.x&&f<=N.x+N.width&&p>=N.y&&p<=N.y+N.height})??null}function vn(f,p=!0){f!==r(vt)&&(x(Jt,null),x(_i,!1)),x(Gi,null),x(vt,f),p?tu(e1(f)):pn(r(ot))}function cu(f){vn(f,!1),x(_i,!0)}function Wy(f){const p=r(gt).get(f.name);p&&x(Ci,{src:mn(p,f.path),width:p.width,height:p.height,type:Zr(p)?"video":"image"})}function mn(f,p=""){if(!f)return p;if(f.motionlyType==="lottie")try{return f.toDataURL("image/png")}catch{return p}return f.motionlySource}function th(){x(Ci,null)}function Yy(f,p){const w=r(gt).get(p.name);if(!w||p.type==="video"&&!w.motionlyDuration){f.preventDefault(),x(gi,`${p.name} is still loading. Try again in a moment.`);return}x(Me,p),f.dataTransfer&&(f.dataTransfer.effectAllowed="copy",f.dataTransfer.setData("text/plain",p.name))}function Ky(){x(Me,null),x(Ki,null),en=""}function eh(f){x(Us,!0),f.dataTransfer&&(f.dataTransfer.effectAllowed="move",f.dataTransfer.setData("text/plain",r(Oe)))}function uu(){x(Us,!1),x(Ki,null),en=""}async function Xy(f){await sh(f.currentTarget.files),De(Ct,r(Ct).value="")}async function Jy(f){f.preventDefault(),x(ji,!1),await sh(f.dataTransfer?.files)}function nl(f){f.dataTransfer?.types.includes("Files")&&x(ji,!0)}function ih(f){f.currentTarget.contains(f.relatedTarget)||x(ji,!1)}async function sh(f){if(!r(O))return;const p=r(O);x(gi,"");const w=Array.from(f??[]);if(w.length){for(const E of w){const U=E.name.toLowerCase(),N=E.type.startsWith("image/")||U.endsWith(".svg"),W=E.type.startsWith("video/")||/\.(mp4|webm|mov|m4v)$/.test(U),H=E.type==="application/zip+dotlottie"||U.endsWith(".lottie");if(!N&&!W&&!H){x(gi,`${E.name} is not a supported image, SVG, GIF, video, or Lottie file.`);continue}const Y=W?1e8:H?5e7:1e7;if(E.size>Y){x(gi,`${E.name} is larger than ${W?"100":H?"50":"10"} MB.`);continue}let et="";try{et=kw(await nh(E),E.name)}catch(At){x(gi,At instanceof Error?At.message:`Could not read ${E.name}.`);continue}const st=p.body.filter(At=>At.type==="Import"&&Ta(At.path)===E.name);if(st.length){const At=st.map(pt=>r(gt).get(pt.name)).find(pt=>!!pt);let Nt;try{Nt=H?{width:0,height:0,size:E.size}:await Zy(E,W)}catch(pt){x(gi,pt instanceof Error?pt.message:`Could not inspect ${E.name}.`);continue}if(At&&Nt.width>0&&Nt.height>0&&Ew({width:At.width,height:At.height,size:At.motionlySize},Nt)&&!window.confirm(`${E.name} has very different size or dimensions from the current asset. Replace it anyway?`)){x(gi,`Kept the current ${E.name}.`);continue}for(const pt of st)pt.path=et;x(gi,`Matched ${E.name} to its existing import by filename.`);continue}const nt=new Set(p.body.flatMap(At=>At.type==="Import"?[At.name]:At.type==="Element"?[At.name]:[])),Pt=E.name.replace(/\.[^.]+$/,"").replace(/[^a-zA-Z0-9_]/g,"_").replace(/^[^a-zA-Z_]/,"asset_")||"asset";let Gt=Pt,zt=2;for(;nt.has(Gt);)Gt=`${Pt}_${zt++}`;p.body.push({type:"Import",path:et,name:Gt})}P(Se(p))}}async function Zy(f,p){const w=URL.createObjectURL(f);try{if(p){const U=document.createElement("video");return U.preload="metadata",U.src=w,await new Promise((N,W)=>{U.onloadedmetadata=()=>N(),U.onerror=()=>W(U.error??new Error(`Could not inspect ${f.name}.`))}),{width:U.videoWidth,height:U.videoHeight,size:f.size}}const E=new Image;return E.src=w,await E.decode(),{width:E.naturalWidth,height:E.naturalHeight,size:f.size}}finally{URL.revokeObjectURL(w)}}function nh(f){return new Promise((p,w)=>{const E=new FileReader;E.onload=()=>p(String(E.result)),E.onerror=()=>w(E.error??new Error(`Could not read ${f.name}.`)),E.readAsDataURL(f)})}function Qy(f){if(!r(Me)&&!r(Us))return;f.preventDefault(),f.dataTransfer&&(f.dataTransfer.dropEffect=r(Us)?"move":"copy");const w=f.currentTarget.querySelector(".ruler")?.getBoundingClientRect();if(!w)return;x(Ki,h1(f.clientX,w));const E=f.target.closest("[data-track]")?.dataset.track;r(Us)?en=r(y)?.id??"legacy-audio":en=E&&!Number.isNaN(Number(E))?Number(E):E||1}function t1(f){if(f.preventDefault(),!r(O)||r(Ki)===null)return;if(r(Us)){const st=r(O).body.find(nt=>nt.type==="Audio");st&&(st.properties={...st.properties,start:`${r(Ki).toFixed(3)}s`},P(Se(r(O)))),uu();return}if(!r(Me))return;const p=r(Me).name;ou(p);const w=1/(r(z)?.canvas.fps??60),E=r(gt).get(p),U=VU(r(Ki),E?.motionlyDuration??0,r(bt),5,w),{start:N,duration:W}=U;if(U.timelineDuration>r(bt)){const st=r(O).body.find(nt=>nt.type==="Canvas");st&&(st.properties={...st.properties,duration:`${U.timelineDuration.toFixed(3)}s`})}const H=String(en||r(m)),Y=Wa(H),et={type:"Clip",assetName:p,properties:{track:Y.id,start:`${N.toFixed(3)}s`,duration:`${W.toFixed(3)}s`,trimIn:"0s",trimOut:"0s"}};if(r(O).body.push(et),r(z)){const st=`clip_${p}_${r(z).clips.length}`,nt={id:st,assetName:p,asset:r(Me),track:Y.id,start:N,duration:W,trimIn:0,trimOut:0,transitionInDuration:0,transitionOutDuration:0,sourceOrder:r(z).clips.length},Pt=cd([...r(z).clips,nt],st,Y,N,U.timelineDuration);if(Pt){ra(Pt,!1);const Gt=Pt.find(zt=>zt.id===st);Gt&&(et.properties={...et.properties,track:Gt.track,start:`${Gt.start.toFixed(3)}s`})}}P(Se(r(O))),x(Me,null),x(Ki,null),en=""}function ra(f,p=!0){if(!(!r(O)||!r(z))){for(const w of r(z).clips){const E=f.find(N=>N.id===w.id);if(!E)continue;const U=_n(r(z).clips.findIndex(N=>N.id===w.id));U&&(U.properties={...U.properties,track:E.track,start:`${E.start.toFixed(3)}s`,duration:`${E.duration.toFixed(3)}s`,trimIn:`${E.trimIn.toFixed(3)}s`,trimOut:`${E.trimOut.toFixed(3)}s`})}p&&P(Se(r(O)))}}function rh(f){if(!r(O)||!r(z))return;const p=P(),w=_n(r(z).clips.findIndex(N=>N.id===f));if(!w)return;rl(f);const E=lT(r(z).clips,f);ra(E,!1),r(O).body.splice(r(O).body.indexOf(w),1),r(vt)===f&&x(vt,"");const U=Se(r(O));P(U),qf("Clip removed",p,U)}function e1(f){return r(z)?.clips.find(p=>p.id===f)?.start??As(f).start}function _n(f){return!r(O)||f<0?null:r(O).body.filter(p=>p.type==="Clip")[f]??null}function rl(f){if(!r(z))return;const p=r(_).filter(E=>E.type!==null&&(E.outgoing.id===f||E.incoming.id===f)),w=qv();for(const E of p){const U=_n(r(z).clips.findIndex(Y=>Y.id===E.outgoing.id)),N=_n(r(z).clips.findIndex(Y=>Y.id===E.incoming.id));if(!U||!N)continue;const W={...U.properties},H={...N.properties};for(const Y of w.outgoing)delete W[Y];for(const Y of w.incoming)delete H[Y];U.properties=W,N.properties=H}p.length>0&&x(Gi,null)}function ah(f){if(!r(O))return null;const p=r(O).body.find(U=>U.type==="Track"&&U.name===f.id);if(p)return p;const w={type:"Track",name:f.id,properties:{label:f.label,role:f.role,content:f.content,hidden:f.hidden,muted:f.muted,order:f.order}},E=r(O).body.findIndex(U=>U.type==="Element"||U.type==="Clip"||U.type==="Animation");return r(O).body.splice(E<0?r(O).body.length:E,0,w),w}function Wa(f){const p=r(z)?.tracks.find(U=>U.id===f);if(p?.declared)return p;const w=r(u).findIndex(U=>U.trackId===f),E={id:f,label:p?.label??`Layer ${f.replace(/^legacy-/,"")}`,role:p?.role??"overlay",content:p?.content??"mixed",hidden:p?.hidden??!1,muted:p?.muted??!1,order:w<0?p?.order??Math.max(0,...r(z)?.tracks.map(U=>U.order)??[])+1:9e3+w,declared:!0};return ah(E),E}function i1(){if(r(O))for(const f of r(u)){const p=Wa(f.trackId);for(const w of f.items){const E=r(O).body.find(U=>U.type==="Element"&&U.name===w.element.id);E&&(E.properties={...E.properties,track:p.id})}}}function du(f,p){const w=ah(f);!w||!r(O)||(w.properties={...w.properties,...p},f.id===r(y)?.id&&p.muted!==void 0&&r(yt)&&De(yt,r(yt).muted=p.muted),P(Se(r(O))))}function oh(f,p){if(!r(O)||!r(z))return;const w=_n(r(z).clips.findIndex(E=>E.id===f));w&&(["track","start","duration"].some(E=>E in p)&&rl(f),w.properties={...w.properties,...p},P(Se(r(O))))}function lh(f,p){if(!r(z)||!r(s))return;const w=Wa(f),E=cd(r(z).clips,r(s).id,w,p,r(bt));E&&ra(E)}function s1(f){if(!r(z)||!r(s))return;const p=r(s).start+Math.max(1/r(z).canvas.fps,f),w=Wv(r(z).clips,r(s).id,"end",p,1/r(z).canvas.fps);ra(w)}function n1(f){x(fn,"crossfade"),f.dataTransfer&&(f.dataTransfer.effectAllowed="copy",f.dataTransfer.setData("application/x-motionly-transition","crossfade"),f.dataTransfer.setData("text/plain","Crossfade"))}function r1(){x(fn,null)}function fu(f,p=f.duration||.5){if(!r(O)||!r(z))return;const w=YU(f.outgoing,f.incoming,p,1/r(z).canvas.fps);if(!w)return;const E=_n(r(z).clips.findIndex(N=>N.id===f.outgoing.id)),U=_n(r(z).clips.findIndex(N=>N.id===f.incoming.id));!E||!U||(E.properties={...E.properties,transitionOut:w.outgoing.transitionOut,transitionOutDuration:`${w.duration.toFixed(3)}s`},U.properties={...U.properties,transitionIn:w.incoming.transitionIn,transitionInDuration:`${w.duration.toFixed(3)}s`},x(vt,""),x(Gi,{outgoingId:f.outgoing.id,incomingId:f.incoming.id}),P(Se(r(O))))}function a1(f,p){f.preventDefault(),f.stopPropagation(),r(fn)&&(fu(p),x(fn,null))}function o1(f){if(!f.type){fu(f);return}x(vt,""),x(Gi,{outgoingId:f.outgoing.id,incomingId:f.incoming.id}),tu(f.at)}function l1(){if(!r(O)||!r(z)||!r(S))return;const f=_n(r(z).clips.findIndex(N=>N.id===r(S).outgoing.id)),p=_n(r(z).clips.findIndex(N=>N.id===r(S).incoming.id));if(!f||!p)return;const w=qv(),E={...f.properties},U={...p.properties};for(const N of w.outgoing)delete E[N];for(const N of w.incoming)delete U[N];f.properties=E,p.properties=U,x(Gi,null),P(Se(r(O)))}function hu(f){return document.querySelector(`.track-lane[data-track="${CSS.escape(f)}"]`)?.getBoundingClientRect()??null}function c1(f,p){return document.elementFromPoint(f,p)?.closest(".track-lane[data-track]")?.dataset.track??null}function aa(f){if(!r(ht)||!r(z))return;(Math.abs(f.clientX-r(ht).startClientX)>3||Math.abs(f.clientY-r(ht).startClientY)>3)&&De(ht,r(ht).moved=!0);const p=r(ht).kind==="audio"?r(ht).originTrackId:c1(f.clientX,f.clientY)??r(ht).originTrackId,w=hu(p);if(!w)return;const E=(f.clientX-w.left)/w.width*r(bt),U=Math.min(r(bt),Math.max(0,Ya(E-r(ht).grabOffset,w.width,r(ht).id)));x(ht,{...r(ht),ghostStart:U,ghostTrackId:p,valid:!0})}function u1(f,p){if(f.button!==0||!r(z))return;f.preventDefault(),f.stopPropagation(),vn(p.id,!1);const w=hu(String(p.track));if(!w)return;const E=(f.clientX-w.left)/w.width*r(bt);x(ht,{id:p.id,kind:"clip",duration:p.duration,grabOffset:E-p.start,originTrackId:String(p.track),startClientX:f.clientX,startClientY:f.clientY,ghostStart:p.start,ghostTrackId:String(p.track),valid:!0,moved:!1});try{f.currentTarget.setPointerCapture(f.pointerId)}catch{}const U=W=>aa(W),N=W=>{aa(W),window.removeEventListener("pointermove",U),window.removeEventListener("pointerup",N),window.removeEventListener("pointercancel",N),pu()};window.addEventListener("pointermove",U),window.addEventListener("pointerup",N),window.addEventListener("pointercancel",N)}function pu(){const f=r(ht);if(x(ht,null),x(Bi,null),!(!f||!r(z)||!f.moved||!f.valid)){if(f.kind==="audio"){const p=r(O)?.body.find(w=>w.type==="Audio");if(!p||!r(O))return;p.properties={...p.properties,start:`${f.ghostStart.toFixed(3)}s`},P(Se(r(O)));return}if(i1(),f.kind==="clip"){const p=Wa(f.ghostTrackId);sn(),rl(f.id);const w=cd(r(z).clips,f.id,p,f.ghostStart,r(bt));w&&ra(w),Ur();return}d1(f.id,f.ghostStart,f.ghostStart+f.duration,f.ghostTrackId)}}function d1(f,p,w,E){if(!r(O)||!r(z))return;const U=r(O).body.find(H=>H.type==="Element"&&H.name===f);if(!U)return;const N=Wa(E);sn();const W=As(f).start;r(i)?.id===f&&ol(),KU(r(O),f,p,w,W,1/r(z).canvas.fps),U.properties={...U.properties,track:N.id},P(Se(r(O))),Ur()}function ch(f,p){if(f.button!==0||!r(O)||!r(z))return;f.preventDefault(),f.stopPropagation(),vn(p.id,!1);const w=r(O).body.find(nt=>nt.type==="Element"&&nt.name===p.id);if(!w)return;const E=As(p.id),U=E.end-E.start,N=f.currentTarget.closest(".track-lane[data-track]"),W=N?.dataset.track??String(w.properties.track??r(z).tracks.find(nt=>nt.role==="overlay")?.id??r(m)),H=N?.getBoundingClientRect()??hu(W);if(!H)return;const Y=(f.clientX-H.left)/H.width*r(bt);x(ht,{id:p.id,kind:"element",duration:U,grabOffset:Y-E.start,originTrackId:W,startClientX:f.clientX,startClientY:f.clientY,ghostStart:E.start,ghostTrackId:W,valid:!0,moved:!1});try{f.currentTarget.setPointerCapture(f.pointerId)}catch{}const et=nt=>aa(nt),st=nt=>{aa(nt),window.removeEventListener("pointermove",et),window.removeEventListener("pointerup",st),window.removeEventListener("pointercancel",st),pu()};window.addEventListener("pointermove",et),window.addEventListener("pointerup",st),window.addEventListener("pointercancel",st)}function f1(f){if(f.button!==0||!r(z)||!r(y))return;f.preventDefault(),f.stopPropagation();const w=f.currentTarget.closest(".track-lane[data-track]")?.getBoundingClientRect();if(!w)return;const E=(f.clientX-w.left)/w.width*r(bt);x(ht,{id:"__audio__",kind:"audio",duration:r(Mt)||r(bt),grabOffset:E-r(z).audioStart,originTrackId:r(y).id,startClientX:f.clientX,startClientY:f.clientY,ghostStart:r(z).audioStart,ghostTrackId:r(y).id,valid:!0,moved:!1});const U=W=>aa(W),N=W=>{aa(W),window.removeEventListener("pointermove",U),window.removeEventListener("pointerup",N),window.removeEventListener("pointercancel",N),pu()};window.addEventListener("pointermove",U),window.addEventListener("pointerup",N),window.addEventListener("pointercancel",N)}function uh(f,p,w){if(f.button!==0)return;f.preventDefault(),f.stopPropagation(),vn(p.id,!1);const E=f.currentTarget.closest(".track-lane");if(!E)return;sn();const U=E.getBoundingClientRect(),N=1/(r(z)?.canvas.fps??60),W=Y=>{const et=(Y.clientX-U.left)/U.width*r(bt),st=Ya(et,U.width,p.id);if(!r(z))return;const nt=Wv(r(z).clips,p.id,w,st,N);ra(nt)},H=()=>{x(Bi,null),Ur(),window.removeEventListener("pointermove",W),window.removeEventListener("pointerup",H)};window.addEventListener("pointermove",W),window.addEventListener("pointerup",H)}function vu(){if(!r(O)||!r(z))return;if(r(s)){const N=r(z).clips.findIndex(Gt=>Gt.id===r(s).id),W=_n(N),H=qU(r(s),r(ot),1/r(z).canvas.fps);if(!W||!H)return;rl(r(s).id);const[Y,et]=H,st={...W.properties},nt=Gt=>({start:`${Gt.start.toFixed(3)}s`,duration:`${Gt.duration.toFixed(3)}s`,trimIn:`${Gt.trimIn.toFixed(3)}s`,trimOut:`${Gt.trimOut.toFixed(3)}s`});W.properties={...st,...nt(Y)};const Pt={type:"Clip",assetName:W.assetName,properties:{...st,...nt(et)}};r(O).body.splice(r(O).body.indexOf(W)+1,0,Pt),P(Se(r(O)));return}if(!r(i))return;const f=As(r(i).id);let p=`${r(i).id}_split`,w=2;const E=new Set(r(O).body.filter(N=>N.type==="Element").map(N=>N.name));for(;E.has(p);)p=`${r(i).id}_split_${w++}`;const U=XU(r(O),r(i).id,r(ot),f,p,1/r(z).canvas.fps);U&&(x(O,U.program),x(vt,U.rightId),P(Se(r(O))))}function h1(f,p){const w=(f-p.left)/p.width*r(bt);return Ya(w,p.width)}function Ya(f,p,w=""){const E=Math.max(0,Math.min(r(bt),f)),U=r(z)?.canvas.fps??60,N=Math.round(E*U)/U;if(!r(ns))return x(Bi,null),N;const W=[0,r(bt),r(ot)];for(const et of r(z)?.clips??[])et.id!==w&&W.push(et.start,et.start+et.duration);for(const et of r(u))for(const st of et.items)W.push(st.range.start,st.range.end);const H=W.reduce((et,st)=>Math.abs(st-E)<Math.abs(et-E)?st:et,0),Y=Math.abs(H-E)<=r(bt)*8/Math.max(1,p);return x(Bi,Y?H:null),Y?H:N}function mu(f,p){const w=r(Te)?.scrollWidth??r(F),E=r(Te)?.clientWidth??w,U=p??E/2,N=r(Te)?.scrollLeft??0;x($i,dT(f)),requestAnimationFrame(()=>{r(Te)&&De(Te,r(Te).scrollLeft=pT(N,U,w,r(Te).scrollWidth,E))})}function p1(f){if(!f.ctrlKey&&!f.metaKey)return;f.preventDefault();const p=r(Te).getBoundingClientRect();mu(r($i)*Math.exp(-f.deltaY*.002),f.clientX-p.left)}function dh(f,p){if(f?.role==="audio")return 1e6;if(f)return f.order;const w=r(u).findIndex(E=>E.trackId===p);return w<0?9e3:9e3+w}function v1(f){return f.kind==="text"?"Text":f.kind==="asset"?"Images & video":f.kind==="overlay"?"Scenes":"Effects"}function fh(f){const p=hh(f);return{x:(p?r(C)/2:0)+jt(f,"x",0),y:(p?r($)/2:0)+jt(f,"y",0)}}function oa(f){if(f.kind==="overlay"||f.kind==="effect")return{x:0,y:0,width:r(C),height:r($)};const p=fh(f),w=jt(f,"scale",1),E=_u(f)*w,U=_1(f)*w;return{x:p.x-E/2,y:p.y-U/2,width:E,height:U}}function m1(){if(!r(Et)||!r(vt))return null;const f=r(Et).elements.filter(H=>H.id===r(vt)||Ps(H).textGroup===r(vt));if(!f.length)return null;const p=f.filter(H=>Number(Ps(H).opacity??1)>.001),w=(p.length?p:f).map(oa),E=Math.min(...w.map(H=>H.x)),U=Math.min(...w.map(H=>H.y)),N=Math.max(...w.map(H=>H.x+H.width)),W=Math.max(...w.map(H=>H.y+H.height));return{x:E,y:U,width:N-E,height:W-U}}function _u(f){const p=jt(f,"width",0);return p>0?p:f.kind==="text"?Math.max(80,as(f,"value","").length*jt(f,"size",64)*.52):(f.assetName?r(gt).get(f.assetName):null)?.width??200}function _1(f){const p=jt(f,"height",0);if(p>0)return p;if(f.kind==="text")return jt(f,"size",64)*1.2;const w=jt(f,"width",0),E=f.assetName?r(gt).get(f.assetName):null;return E&&w>0?E.height*(w/E.width):E?.height??120}function hh(f){return!!Ps(f).center}function Tr(){return!r(O)||!r(i)?null:r(O).body.find(f=>f.type==="Animation"&&f.target===r(i).id)??null}const g1=[{value:"linear",label:"Linear"},{value:"power1.in",label:"Ease In"},{value:"power1.out",label:"Ease Out"},{value:"power1.inOut",label:"Ease In-Out"},{value:"power3.out",label:"Smooth Out"},{value:"power3.inOut",label:"Smooth In-Out"},{value:"back.out",label:"Back Out"},{value:"elastic.out",label:"Elastic Out"}];function al(){const f=Tr();return f?.keyframes?.length?f.keyframes.map(p=>({offset:p.offset,easing:p.easing})):f&&(Object.keys(f.from??{}).length>0||Object.keys(f.to??{}).length>0)?[{offset:0},{offset:1}]:r(a)?r(a).keyframes?.length?r(a).keyframes.map(p=>({offset:p.offset,easing:p.easing})):[{offset:0},{offset:1}]:[]}function ol(){if(!r(O)||!r(i))return null;const f=Tr();if(f)return f;const p=r(a);if(!p)return null;const w={type:"Animation",target:r(i).id,from:{...p.from??{}},to:{...p.to??{}},keyframes:(p.keyframes??[]).map(U=>({offset:U.offset,properties:{...U.properties},...U.easing?{easing:U.easing}:{}})),delay:p.delay??0,duration:p.duration??1,easing:p.easing??"power3.out"},E=r(O).body.find(U=>U.type==="Element"&&U.name===r(i).id);if(E){const U={...E.properties};delete U.animation,delete U.textAnimation,E.properties=U}return r(O).body.push(w),w}function ph(f){f.keyframes?.length||(f.keyframes=Hv(f.keyframes,f.from,f.to))}function y1(f){return f===null?"":Tr()?.keyframes?.find(w=>Math.abs(w.offset-f)<1e-6)?.easing??""}function b1(f){const p=ol();!r(O)||!p||r(Jt)===null||(ph(p),p.keyframes=RU(p.keyframes??[],r(Jt),f),P(Se(r(O))))}function vh(f,p){f.preventDefault(),f.stopPropagation();const w=Tr();!r(O)||!w?.keyframes?.length||(w.keyframes=Gv(w.keyframes,p),r(Jt)!==null&&Math.abs(r(Jt)-p)<1e-6&&x(Jt,null),P(Se(r(O))))}function Ka(f){return(r(a)?.delay??0)+f*(r(a)?.duration??1)}function mh(f){const p=r(Et)?.elements.find(N=>N.id===r(i)?.id),w=p?Ps(p):r(i)?Ps(r(i)):{},E=["x","y","scale","rotation","opacity","blur"],U=f?.length?f:E;return Object.fromEntries(U.filter(N=>typeof w[N]=="number"||typeof w[N]=="string").map(N=>[N,w[N]]))}function gu(){if(!r(O)||!r(i))return;let f=ol();if(f)f.keyframes=Hv(f.keyframes,f.from,f.to);else{const N=mh();f={type:"Animation",target:r(i).id,from:{},to:{},keyframes:[{offset:0,properties:{...N}},{offset:1,properties:{...N}}],delay:0,duration:r(bt),easing:"power3.out"},r(O).body.push(f)}const p=r(a)?.delay??Number(f.delay??0),w=r(a)?.duration??(Number(f.duration??r(bt))||r(bt)),E=Math.min(1,Math.max(0,(r(ot)-p)/Math.max(w,1e-6))),U=Array.from(new Set((f.keyframes??[]).flatMap(N=>Object.keys(N.properties))));f.keyframes=LU(f.keyframes??[],E,mh(U)),f.from={},f.to={},x(Jt,E),P(Se(r(O)))}function x1(){const f=Tr();!f||r(Jt)===null||(f.keyframes=Gv(f.keyframes??[],r(Jt)),x(Jt,null),P(Se(r(O))))}function _h(f,p){if(f.button!==0||!r(a))return;f.preventDefault(),f.stopPropagation();const w=f.currentTarget.closest(".track-lane");if(!w)return;const E=ol();E&&!E.keyframes?.length&&ph(E),P(Se(r(O)));const U=w.getBoundingClientRect(),N=r(a).delay,W=r(a).duration;let H=p;x(Jt,p),tu(Ka(p));const Y=st=>{const nt=(st.clientX-U.left)/U.width*r(bt),Pt=Ya(nt,U.width),Gt=Math.min(1,Math.max(0,(Pt-N)/Math.max(W,1e-6))),zt=Tr();zt&&(zt.keyframes=jv(zt.keyframes??[],H,Gt),H=Gt,x(Jt,Gt),P(Se(r(O))))},et=()=>{window.removeEventListener("pointermove",Y),window.removeEventListener("pointerup",et),window.removeEventListener("pointercancel",et)};window.addEventListener("pointermove",Y),window.addEventListener("pointerup",et),window.addEventListener("pointercancel",et)}function ll(f,p){if(!r(O)||!r(i))return;const w=gh(r(O),r(i).id);w[f]=p,P(Se(r(O)))}function w1(){if(!r(O))return;const f=S1("text");r(O).body.push({type:"Element",kind:"text",name:f,properties:{value:"New text",center:!0,y:(r(z)?.elements.length??0)*80,size:64,color:"#ffffff",opacity:1,start:"0s",duration:`${r(bt).toFixed(3)}s`,track:r(m)}}),x(vt,f),P(Se(r(O)))}function la(f){if(!(!r(O)||!r(i))){if(De(O,r(O).body=r(O).body.filter(p=>!(p.type==="Animation"&&p.target===r(i).id))),f!=="none"){const p=gh(r(O),r(i).id);f==="fade"&&(p.from={opacity:0},p.to={opacity:jt(r(i),"opacity",1)}),f==="rise"&&(p.from={opacity:0,y:jt(r(i),"y",0)+80},p.to={opacity:jt(r(i),"opacity",1),y:jt(r(i),"y",0)}),f==="scale"&&(p.from={opacity:0,scale:.85},p.to={opacity:jt(r(i),"opacity",1),scale:jt(r(i),"scale",1)}),f==="blur"&&(p.from={opacity:0,blur:12,y:jt(r(i),"y",0)+24},p.to={opacity:jt(r(i),"opacity",1),blur:0,y:jt(r(i),"y",0)}),f==="drift"&&(p.from={opacity:0,x:jt(r(i),"x",0)-90},p.to={opacity:jt(r(i),"opacity",1),x:jt(r(i),"x",0)}),p.duration=r(a)?.duration??1,p.delay=r(a)?.delay??0,p.easing=r(a)?.easing??"power3.out"}P(Se(r(O)))}}function Xa(f){const p=r(a)?.from;return p?f==="fade"?p.opacity===0&&p.y===void 0&&p.scale===void 0&&p.blur===void 0&&p.x===void 0:f==="rise"?p.opacity===0&&typeof p.y=="number":f==="scale"?p.opacity===0&&p.scale===.85:f==="blur"?typeof p.blur=="number"&&p.blur>0:f==="drift"?typeof p.x=="number":!1:!1}function Ja(f){return f.category==="camera"?!0:r(i)?f.category==="text"?r(i).kind==="text":f.category==="object"?r(i).kind==="asset":r(i).kind==="asset"||r(i).kind==="overlay":!1}function cl(f){if(!(!r(O)||!Ja(f))){if(f.category==="camera"){let p=r(O).body.find(w=>w.type==="Camera");p||(p={type:"Camera",properties:{}},r(O).body.push(p)),p.properties={...p.properties,cameraAnimation:`${f.name}(duration 1s ease power3.out)`}}else if(r(i)){const p=r(O).body.find(E=>E.type==="Element"&&E.name===r(i).id);if(!p)return;const w=f.category==="text"?"textAnimation":"animation";p.properties={...p.properties,[w]:`${f.name}(duration 800ms ease power3.out)`}}P(Se(r(O)))}}function gh(f,p){const w=f.body.find(U=>U.type==="Animation"&&U.target===p);if(w)return w;const E={type:"Animation",target:p,from:{opacity:0},to:{opacity:1},keyframes:[],delay:0,duration:1,easing:"soft"};return f.body.push(E),E}function S1(f){const p=new Set(r(z)?.elements.map(U=>U.id)??[]);let w=p.size+1,E=`${f}${w}`;for(;p.has(E);)w+=1,E=`${f}${w}`;return E}ce(()=>(Wt(P()),r(Ts),r(Ut),r(yi),Gl),()=>{P()&&(r(Ts)&&P()!==r(Ts)&&ja(),P()!==r(Ut).present&&x(Ut,r(yi)===null?Gl(r(Ut),P()):{...r(Ut),present:P(),future:[]}),Ff())}),ce(()=>(r(z),r(vt)),()=>{x(i,r(z)?.elements.find(f=>f.id===r(vt))??null)}),ce(()=>(r(z),r(vt)),()=>{x(s,r(z)?.clips.find(f=>f.id===r(vt))??null)}),ce(()=>(r(s),r(z),r(Et)),()=>{x(n,r(s)?r(z)?.elements.find(f=>f.id===r(s)?.assetName)??r(Et)?.elements.find(f=>f.id===r(s)?.id)??null:null)}),ce(()=>(r(z),r(i)),()=>{x(a,r(z)?.animations.find(f=>f.target===r(i)?.id)??null)}),ce(()=>(r(ht),r(vt)),()=>{x(o,r(ht)?.kind==="element"&&r(ht).id===r(vt)?r(ht).ghostStart-As(r(ht).id).start:0)}),ce(()=>r(z),()=>{x(l,r(z)?.elements.filter(f=>!f.id.includes("__"))??[])}),ce(()=>(r(l),r(z)),()=>{x(c,r(l).filter(f=>f.kind!=="asset"||!f.assetName||!r(z)?.clips.some(p=>p.assetName===f.assetName)))}),ce(()=>r(c),()=>{x(u,$U(r(c),As))}),ce(()=>(r(z),r(u)),()=>{x(d,NU(OU(r(z)?.clips??[],r(z)?.tracks??[]),r(u)))}),ce(()=>r(d),()=>{x(h,r(d).elementLanes)}),ce(()=>r(d),()=>{x(v,r(d).clipTracks)}),ce(()=>r(z),()=>{x(m,r(z)?.tracks.find(f=>f.role==="main")?.id??"main")}),ce(()=>r(z),()=>{x(y,r(z)?.tracks.find(f=>f.role==="audio")??null)}),ce(()=>(r(Mt),r(bt),r(z)),()=>{x(js,Math.min(r(Mt)||r(bt),Math.max(0,r(bt)-(r(z)?.audioStart??0))))}),ce(()=>(r(Mt),r(ni),r(js)),()=>{x(Es,r(Mt)>0?Math.max(1,r(ni)*r(js)/r(Mt)):Math.max(1,r(ni)))}),ce(()=>r(z),()=>{x(_,WU(r(z)?.clips??[],1/(r(z)?.canvas.fps??60)))}),ce(()=>(r(Gi),r(_)),()=>{x(S,r(Gi)?r(_).find(f=>f.outgoing.id===r(Gi)?.outgoingId&&f.incoming.id===r(Gi)?.incomingId&&f.type!==null)??null:null)}),ce(()=>r(bt),()=>{x(T,Array.from({length:7},(f,p)=>r(bt)*p/6))}),ce(()=>(r(ot),r(z)),()=>{x(I,Math.round(r(ot)*(r(z)?.canvas.fps??60)))}),ce(()=>(r(z),r(re)),()=>{x(ke,Cy(r(z)?.imports??[],r(re)))}),ce(()=>r(z),()=>{x(C,r(z)?.canvas.width??1920)}),ce(()=>r(z),()=>{x($,r(z)?.canvas.height??1080)}),ce(()=>(r(C),r($),r(z),r(bt),r(l)),()=>{x(M,{width:r(C),height:r($),fps:r(z)?.canvas.fps??60,duration:r(bt),elementCount:r(l).length})}),ce(()=>(r(C),r(qe),r($)),()=>{x(D,`width: ${Math.round(r(C)*r(qe))}px; aspect-ratio: ${r(C)} / ${r($)};`)}),ce(()=>(r(bt),r($i)),()=>{x(F,Math.max(820,220+r(bt)*100*r($i)))}),ce(()=>(Wt(P()),r(Jt)),()=>{x(L,P()&&r(Jt)!==null?y1(r(Jt)):"")}),kr();var k1={exportMp4:Gf};tr();var yh=hA(),ul=it(yh);let bh;var yu=g(ul);let xh;var wh=g(yu),dl=g(wh);let Sh;var E1=g(dl);d_(E1,{size:20});var fl=b(dl,2);let kh;var B1=g(fl);lw(B1,{size:20});var hl=b(fl,2);let Eh;var U1=g(hl);Fl(U1,{size:20});var pl=b(hl,2);let Bh;var T1=g(pl);Dl(T1,{size:20});var vl=b(pl,2);let Uh;var P1=g(vl);Nl(P1,{size:20});var ml=b(vl,2);let Th;var A1=g(ml);u_(A1,{size:20});var bu=b(ml,2);let Ph;var z1=g(bu);f_(z1,{size:20});var Ah=b(wh,2),M1=g(Ah);{var I1=f=>{var p=gP(),w=it(p),E=g(w),U=g(E);let N;var W=b(U,2);let H;var Y=b(E,2);{var et=zt=>{var At=oP(),Nt=g(At);Xs(Nt,ae=>x(Ct,ae),()=>r(Ct));var pt=b(Nt,2),qt=g(pt);tc(qt,{size:15}),B("change",Nt,Xy),B("click",pt,()=>r(Ct).click()),A(zt,At)};tt(Y,zt=>{r(ze)==="assets"&&zt(et)})}var st=b(w,2),nt=g(st);{var Pt=zt=>{var At=vP();let Nt;var pt=g(At);{var qt=Fe=>{var ai=Jv(),Bt=g(ai);K(()=>rt(Bt,r(gi))),A(Fe,ai)};tt(pt,Fe=>{r(gi)&&Fe(qt)})}var ae=b(pt,2);{var We=Fe=>{var ai=lP();A(Fe,ai)};tt(ae,Fe=>{r($e)||Fe(We)})}var di=b(ae,2);{var Ye=Fe=>{var ai=cP(),Bt=g(ai),ut=g(Bt);qu(ut,{size:18});var lt=b(Bt,6);B("click",lt,()=>r(Ct).click()),A(Fe,ai)};tt(di,Fe=>{r(z),k(()=>!r(z)?.audio&&r(z)?.imports.length===0)&&Fe(Ye)})}var Xi=b(di,2);{var gn=Fe=>{var ai=uP(),Bt=g(ai),ut=g(Bt);da(ut,{size:14});var lt=b(Bt,2),dt=g(lt),G=g(dt),Yt=g(G);da(Yt,{size:16});var kt=b(G,2),xt=g(kt),Kt=g(xt),Tt=b(xt,2),he=g(Tt);K(_e=>{Q(dt,"aria-label",`Drag ${r(Oe)||"audio"} to the timeline`),rt(Kt,_e),rt(he,(r(z),k(()=>r(z).audio)))},[()=>(r(z),k(()=>r(z).audio.substring(r(z).audio.lastIndexOf("/")+1)))]),B("dragstart",dt,eh),B("dragend",dt,uu),A(Fe,ai)};tt(Xi,Fe=>{r(z),k(()=>r(z)?.audio)&&Fe(gn)})}var zs=b(Xi,2);{var Ws=Fe=>{var ai=pP(),Bt=g(ai),ut=g(Bt);Ol(ut,{size:14});var lt=b(ut,4),dt=g(lt),G=b(Bt,2);ue(G,5,()=>(r(z),k(()=>r(z).imports)),ve,(Yt,kt)=>{var xt=hP(),Kt=g(xt),Tt=g(Kt);{var he=Ee=>{var Oi=dP();Oi.muted=!0,K(oe=>Q(Oi,"src",oe),[()=>(r(gt),r(kt),k(()=>mn(r(gt).get(r(kt).name),r(kt).path)))]),A(Ee,Oi)},_e=Ee=>{var Oi=fP();K(oe=>{Q(Oi,"src",oe),Q(Oi,"alt",(r(kt),k(()=>r(kt).name)))},[()=>(r(gt),r(kt),k(()=>mn(r(gt).get(r(kt).name),r(kt).path)))]),A(Ee,Oi)},we=Ee=>{Ol(Ee,{size:24})};tt(Tt,Ee=>{r(kt),k(()=>r(kt).type==="video")?Ee(he):(r(kt),k(()=>r(kt).path)?Ee(_e,1):Ee(we,-1))})}var xe=b(Kt,2),ee=g(xe),os=g(ee);K(Ee=>{Q(xt,"draggable",Ee),rt(os,(r(kt),k(()=>r(kt).name)))},[()=>(r(gt),r(kt),k(()=>r(gt).has(r(kt).name)))]),B("click",xt,()=>Wy(r(kt))),B("dragstart",xt,Ee=>Yy(Ee,r(kt))),B("dragend",xt,Ky),A(Yt,xt)}),K(()=>rt(dt,(r(z),k(()=>r(z).imports.length)))),A(Fe,ai)};tt(zs,Fe=>{r(z),k(()=>r(z)&&r(z).imports.length>0)&&Fe(Ws)})}K(()=>Nt=$t(At,1,"media-dropzone svelte-1mvnu54",null,Nt,{"drag-active":r(ji)})),B("dragenter",At,nl),B("dragover",At,Hu(nl)),B("dragleave",At,ih),B("drop",At,Jy),A(zt,At)},Gt=zt=>{var At=_P();ue(At,5,()=>sa,ve,(Nt,pt)=>{var qt=mP(),ae=g(qt),We=g(ae),di=b(ae,2),Ye=g(di),Xi=g(Ye);K(()=>{Q(We,"src",(r(pt),k(()=>r(pt).gifPath))),Q(We,"alt",(r(pt),k(()=>r(pt).name))),rt(Xi,(r(pt),k(()=>r(pt).name)))}),B("click",qt,()=>Py(r(pt).path)),A(Nt,qt)}),A(zt,At)};tt(nt,zt=>{r(ze)==="assets"?zt(Pt):r(ze)==="presets"&&zt(Gt,1)})}K(()=>{N=$t(U,1,"panel-tab svelte-1mvnu54",null,N,{active:r(ze)==="assets"}),H=$t(W,1,"panel-tab svelte-1mvnu54",null,H,{active:r(ze)==="presets"})}),B("click",U,()=>x(ze,"assets")),B("click",W,()=>x(ze,"presets")),A(f,p)},C1=f=>{var p=xP(),w=it(p),E=b(g(w),2),U=g(E),N=g(U);qu(N,{size:16});var W=b(w,2),H=g(W);let Y;var et=g(H);{var st=zt=>{var At=Jv(),Nt=g(At);K(()=>rt(Nt,r(Mi))),A(zt,At)};tt(et,zt=>{r(Mi)&&zt(st)})}var nt=b(et,2);{var Pt=zt=>{var At=yP(),Nt=g(At);da(Nt,{size:18});var pt=b(Nt,2),qt=g(pt),ae=b(pt,2),We=g(ae);wo(We,{size:14}),K(()=>{Q(At,"aria-label",`Drag ${r(Oe)} to the timeline`),rt(qt,r(Oe))}),B("click",ae,su),B("dragstart",At,eh),B("dragend",At,uu),A(zt,At)},Gt=zt=>{var At=bP(),Nt=g(At),pt=g(Nt);da(pt,{size:18});var qt=b(Nt,6);B("click",qt,()=>r(ks).click()),A(zt,At)};tt(nt,zt=>{r(Oe)?zt(Pt):zt(Gt,-1)})}K(()=>Y=$t(H,1,"media-dropzone svelte-1mvnu54",null,Y,{"drag-active":r(ji)})),B("click",U,()=>r(ks).click()),B("dragenter",H,nl),B("dragover",H,Hu(nl)),B("dragleave",H,ih),B("drop",H,Ly),A(f,p)},$1=f=>{var p=wP(),w=it(p),E=b(g(w),2),U=g(E),N=g(U);tc(N,{size:16});var W=b(w,2),H=g(W);ue(H,5,()=>(r(l),k(()=>r(l).filter(Y=>Y.kind==="text"))),ve,(Y,et)=>{var st=Zv();let nt;var Pt=g(st),Gt=g(Pt);Fl(Gt,{size:14});var zt=b(Pt,2),At=g(zt),Nt=g(At),pt=b(At,2),qt=g(pt);K(ae=>{nt=$t(st,1,"layer-row svelte-1mvnu54",null,nt,{selected:r(vt)===r(et).id}),rt(Nt,(r(et),k(()=>r(et).id))),rt(qt,ae)},[()=>(r(et),k(()=>iu(r(et))))]),B("click",st,()=>vn(r(et).id)),A(Y,st)}),B("click",U,w1),A(f,p)},O1=f=>{var p=SP(),w=b(it(p),2),E=g(w),U=g(E),N=b(g(U),2);ue(N,5,()=>k(()=>hn.filter(Nt=>Nt.category==="text")),ve,(Nt,pt)=>{var qt=Yl(),ae=g(qt);jn(ae,{size:14});var We=b(ae,2),di=g(We);K(Ye=>{Q(qt,"title",(r(pt),k(()=>r(pt).description))),qt.disabled=Ye,rt(di,(r(pt),k(()=>r(pt).name)))},[()=>(r(pt),k(()=>!Ja(r(pt))))]),B("click",qt,()=>cl(r(pt))),A(Nt,qt)});var W=b(U,2),H=b(g(W),2);ue(H,5,()=>k(()=>hn.filter(Nt=>Nt.category==="object")),ve,(Nt,pt)=>{var qt=Yl(),ae=g(qt);jn(ae,{size:14});var We=b(ae,2),di=g(We);K(Ye=>{Q(qt,"title",(r(pt),k(()=>r(pt).description))),qt.disabled=Ye,rt(di,(r(pt),k(()=>r(pt).name)))},[()=>(r(pt),k(()=>!Ja(r(pt))))]),B("click",qt,()=>cl(r(pt))),A(Nt,qt)});var Y=b(W,2),et=b(g(Y),4),st=g(et),nt=g(st);Dl(nt,{size:14});var Pt=b(Y,2),Gt=b(g(Pt),2);ue(Gt,5,()=>k(()=>hn.filter(Nt=>Nt.category==="transition")),ve,(Nt,pt)=>{var qt=Yl(),ae=g(qt);Dl(ae,{size:14});var We=b(ae,2),di=g(We);K(Ye=>{Q(qt,"title",(r(pt),k(()=>r(pt).description))),qt.disabled=Ye,rt(di,(r(pt),k(()=>r(pt).name)))},[()=>(r(pt),k(()=>!Ja(r(pt))))]),B("click",qt,()=>cl(r(pt))),A(Nt,qt)});var zt=b(Pt,2),At=b(g(zt),2);ue(At,5,()=>k(()=>hn.filter(Nt=>Nt.category==="camera")),ve,(Nt,pt)=>{var qt=Yl(),ae=g(qt);Vp(ae,{size:14});var We=b(ae,2),di=g(We);K(Ye=>{Q(qt,"title",(r(pt),k(()=>r(pt).description))),qt.disabled=Ye,rt(di,(r(pt),k(()=>r(pt).name)))},[()=>(r(pt),k(()=>!Ja(r(pt))))]),B("click",qt,()=>cl(r(pt))),A(Nt,qt)}),B("dragstart",st,n1),B("dragend",st,r1),A(f,p)},N1=f=>{var p=kP(),w=b(it(p),2),E=b(g(w),2);ue(E,5,()=>(r(l),k(()=>r(l).filter(U=>U.kind==="effect"||U.kind==="overlay"))),ve,(U,N)=>{var W=Zv();let H;var Y=g(W),et=g(Y);Gu(et,{size:14});var st=b(Y,2),nt=g(st),Pt=g(nt),Gt=b(nt,2),zt=g(Gt);K(At=>{H=$t(W,1,"layer-row svelte-1mvnu54",null,H,{selected:r(vt)===r(N).id}),rt(Pt,(r(N),k(()=>r(N).id))),rt(zt,At)},[()=>(r(N),k(()=>iu(r(N))))]),B("click",W,()=>vn(r(N).id)),A(U,W)}),A(f,p)},F1=f=>{var p=EP(),w=b(it(p),2);YT(w,{get assetList(){return r(ke)},get projectInfo(){return r(M)}}),A(f,p)},D1=f=>{var p=BP(),w=b(it(p),2);eP(w,{get assetList(){return r(ke)}}),A(f,p)};tt(M1,f=>{r(Ae)==="media"?f(I1):r(Ae)==="audio"?f(C1,1):r(Ae)==="text"?f($1,2):r(Ae)==="effects"?f(O1,3):r(Ae)==="scenes"?f(N1,4):r(Ae)==="ai"?f(F1,5):r(Ae)==="settings"&&f(D1,6)})}var xu=b(Ah,2);let zh;var L1=g(xu);{var R1=f=>{DT(f,{get project(){return P()},get assetList(){return r(ke)},onLoadMotion:Ay,onCollapse:()=>x(Bs,!1)})},V1=f=>{var p=UP(),w=g(p);jn(w,{size:16}),B("click",p,()=>x(Bs,!0)),A(f,p)};tt(L1,f=>{r(Bs)?f(R1):f(V1,-1)})}var Mh=b(xu,2),Ih=g(Mh),Ch=g(Ih),H1=g(Ch),j1=b(Ch,2),$h=g(j1),Oh=b($h,2),G1=g(Oh),Nh=b(Oh,2),q1=g(Nh);Vp(q1,{size:15});var wu=b(Ih,2),Fh=g(wu);{var W1=f=>{var p=TP();A(f,p)};tt(Fh,f=>{r($e)||f(W1)})}var Su=b(Fh,2),Cn=g(Su);let Dh;Xs(Cn,f=>x(_t,f),()=>r(_t));var Lh=b(Cn,2);{var Y1=f=>{var p=PP();K(()=>pe(p,(r(Ue),r(C),k(()=>`left: ${r(Ue).vertical/r(C)*100}%`)))),A(f,p)};tt(Lh,f=>{r(Ue),k(()=>r(Ue).vertical!==null)&&f(Y1)})}var K1=b(Lh,2);{var X1=f=>{var p=AP();K(()=>pe(p,(r(Ue),r($),k(()=>`top: ${r(Ue).horizontal/r($)*100}%`)))),A(f,p)};tt(K1,f=>{r(Ue),k(()=>r(Ue).horizontal!==null)&&f(X1)})}var J1=b(Su,2);{var Z1=f=>{var p=IP(),w=g(p);{var E=H=>{var Y=zP();Y.muted=!0,K(()=>Q(Y,"src",(r(Ci),k(()=>r(Ci).src)))),A(H,Y)},U=H=>{var Y=MP();K(()=>Q(Y,"src",(r(Ci),k(()=>r(Ci).src)))),A(H,Y)};tt(w,H=>{r(Ci),k(()=>r(Ci).type==="video")?H(E):H(U,-1)})}var N=b(w,2),W=g(N);Sn(W,{size:18}),B("click",N,th),A(f,p)};tt(J1,f=>{r(Ci)&&f(Z1)})}Xs(wu,f=>x(ft,f),()=>r(ft));var Q1=b(wu,2);{var t0=f=>{var p=ud(),w=g(p);K(()=>rt(w,r(X))),A(f,p)},e0=f=>{var p=ud(),w=g(p);K(()=>rt(w,r(Hi))),A(f,p)};tt(Q1,f=>{r(X)?f(t0):r(Hi)&&f(e0,1)})}var i0=b(Mh,2),s0=b(g(i0),2);{var n0=f=>{var p=CP(),w=it(p),E=g(w),U=g(E);Dl(U,{size:15});var N=b(E,2),W=b(g(N)),H=g(W),Y=b(w,2),et=b(g(Y),2),st=g(et),nt=b(Y,2),Pt=g(nt),Gt=b(g(Pt)),zt=g(Gt),At=b(Pt,4),Nt=b(g(At)),pt=g(Nt),qt=b(nt,2);K(ae=>{rt(H,`${r(S),k(()=>r(S).outgoing.assetName)??""} → ${r(S),k(()=>r(S).incoming.assetName)??""}`),Q(st,"max",ae),le(st,(r(S),k(()=>r(S).duration))),rt(zt,(r(S),k(()=>r(S).outgoing.assetName))),rt(pt,(r(S),k(()=>r(S).incoming.assetName)))},[()=>(r(S),k(()=>Math.min(r(S).outgoing.duration,r(S).incoming.duration)))]),B("change",st,ae=>fu(r(S),Number(ae.currentTarget.value))),B("click",qt,l1),A(f,p)},r0=f=>{var p=GP(),w=it(p),E=g(w),U=g(E);{var N=J=>{Mr(J,{size:15})},W=J=>{var Xt=Kl();K(Qt=>Q(Xt,"src",Qt),[()=>(r(gt),r(i),k(()=>mn(r(gt).get(r(i).assetName??""),r(i).asset.path)))]),A(J,Xt)},H=J=>{Fl(J,{size:15})},Y=J=>{Ol(J,{size:15})},et=J=>{jn(J,{size:15})},st=J=>{Gu(J,{size:15})};tt(U,J=>{r(i),k(()=>r(i).kind==="asset"&&r(i).asset?.type==="video")?J(N):(r(i),k(()=>r(i).kind==="asset"&&r(i).asset?.path)?J(W,1):(r(i),k(()=>r(i).kind==="text")?J(H,2):(r(i),k(()=>r(i).kind==="asset")?J(Y,3):(r(i),k(()=>r(i).kind==="effect")?J(et,4):J(st,-1)))))})}var nt=b(E,2),Pt=g(nt),Gt=g(Pt),zt=b(Pt),At=g(zt),Nt=b(w,2),pt=g(Nt);{var qt=J=>{var Xt=$P(),Qt=b(g(Xt),2),Ne=g(Qt),Zt=g(Ne);Np(Zt,{size:15});var Xe=b(Ne,2),Ce=g(Xe);$p(Ce,{size:15});var Ve=b(Xe,2),He=g(Ve);Op(He,{size:15});var xi=b(Ve,2),Ji=g(xi);Lp(Ji,{size:15});var ls=b(xi,2),Ar=g(ls);Fp(Ar,{size:15});var zr=b(ls,2),ro=g(zr);Dp(ro,{size:15}),B("click",Ne,()=>qs("left")),B("click",Xe,()=>qs("center-x")),B("click",Ve,()=>qs("right")),B("click",xi,()=>qs("top")),B("click",ls,()=>qs("center-y")),B("click",zr,()=>qs("bottom")),A(J,Xt)};tt(pt,J=>{r(i),k(()=>r(i).kind==="asset"||r(i).kind==="text")&&J(qt)})}var ae=b(pt,2),We=b(g(ae),2),di=g(We),Ye=g(di),Xi=b(Ye,2),gn=b(di,2),zs=g(gn),Ws=b(zs,2),Fe=b(ae,2),ai=b(g(Fe),2);{let J=cs(()=>k(()=>ir("rotation",0)));Xv(ai,{get value(){return r(J)},onChange:Xt=>me("rotation",Xt)})}var Bt=b(Fe,2);{var ut=J=>{var Xt=OP(),Qt=it(Xt),Ne=b(g(Qt),2),Zt=b(Qt,2),Xe=b(g(Zt),2),Ce=g(Xe),Ve=b(Ce,2);K((He,xi)=>{le(Ne,He),le(Ce,xi)},[()=>(r(i),k(()=>as(r(i),"value",""))),()=>(r(i),k(()=>jt(r(i),"size",72)))]),B("input",Ne,He=>me("value",He.currentTarget.value)),B("input",Ce,He=>me("size",Number(He.currentTarget.value))),B("pointerdown",Ve,He=>qa(He,"size",72,1)),B("keydown",Ve,He=>Ga(He,"size",72,1)),A(J,Xt)};tt(Bt,J=>{r(i),k(()=>r(i).kind==="text")&&J(ut)})}var lt=b(Bt,2),dt=b(g(lt),2),G=g(dt),Yt=b(G,2),kt=b(lt,2),xt=b(g(kt),2),Kt=g(xt),Tt=b(Kt,2),he=b(kt,2),_e=b(g(he),2);{var we=J=>{{let Xt=cs(()=>(r(i),k(()=>as(r(i),"color","#ffffff"))));Wl(J,{get value(){return r(Xt)},ariaLabel:"Text color",onChange:Qt=>me("color",Qt)})}},xe=J=>{{let Xt=cs(()=>(r(i),k(()=>as(r(i),"fill","#ffffff"))));Wl(J,{get value(){return r(Xt)},ariaLabel:"Layer color",onChange:Qt=>me("fill",Qt)})}},ee=J=>{var Xt=Qv();A(J,Xt)};tt(_e,J=>{r(i),k(()=>r(i).kind==="text")?J(we):(r(i),k(()=>r(i).kind==="overlay"||r(i).asset?.type==="svg")?J(xe,1):J(ee,-1))})}var os=b(he,2),Ee=g(os),Oi=b(g(Ee),2),oe=g(Oi),fi=b(Ee,2),Ti=b(g(fi),2),Ms=g(Ti),Ft=b(Nt,2),Ie=b(g(Ft),2),oi=g(Ie);{var On=J=>{var Xt=NP(),Qt=g(Xt),Ne=b(g(Qt),2),Zt=b(Qt,2),Xe=g(Zt);K(Ce=>le(Xe,Ce),[()=>(r(i),k(()=>jt(r(i),"width",_u(r(i)))))]),B("click",Ne,Jf),B("input",Xe,Ce=>me("width",Number(Ce.currentTarget.value))),A(J,Xt)};tt(oi,J=>{r(i),k(()=>r(i).kind==="asset")&&J(On)})}var Pr=b(oi,2);{var Pu=J=>{var Xt=DP(),Qt=it(Xt),Ne=b(g(Qt),2),Zt=g(Ne),Xe=g(Zt),Ce=b(Zt,2),Ve=g(Ce),He=b(Qt,2),xi=b(g(He),2),Ji=g(xi),ls=g(Ji),Ar=b(Ji,2),zr=g(Ar),ro=b(He,2);{var Iu=Cs=>{var zl=FP(),Cu=b(g(zl),2);{let $u=cs(()=>(r(i),k(()=>as(r(i),"stroke","#ffffff"))));Wl(Cu,{get value(){return r($u)},ariaLabel:"SVG stroke color",onChange:H0=>me("stroke",H0)})}A(Cs,zl)},V0=us(()=>(r(i),r(gt),k(()=>r(i).asset?.type==="svg"&&!r(gt).get(r(i).assetName??"")?.motionlySvg?.animated)));tt(ro,Cs=>{r(V0)&&Cs(Iu)})}K((Cs,zl,Cu,$u)=>{le(Xe,Cs),le(Ve,zl),le(ls,Cu),le(zr,$u)},[()=>(r(i),k(()=>jt(r(i),"originX",.5))),()=>(r(i),k(()=>jt(r(i),"originY",.5))),()=>(r(i),k(()=>jt(r(i),"skewX",0))),()=>(r(i),k(()=>jt(r(i),"skewY",0)))]),B("input",Xe,Cs=>me("originX",Number(Cs.currentTarget.value))),B("input",Ve,Cs=>me("originY",Number(Cs.currentTarget.value))),B("input",ls,Cs=>me("skewX",Number(Cs.currentTarget.value))),B("input",zr,Cs=>me("skewY",Number(Cs.currentTarget.value))),A(J,Xt)};tt(Pr,J=>{r(i),k(()=>r(i).kind==="asset")&&J(Pu)})}var Qa=b(Pr,4),Nn=b(g(Qa),2),to=g(Nn);to.value=to.__value="none";var wl=b(to);ue(wl,1,()=>(r(l),r(i),k(()=>r(l).filter(J=>J.id!==r(i)?.id))),ve,(J,Xt)=>{var Qt=dd(),Ne=g(Qt),Zt={};K(()=>{rt(Ne,(r(Xt),k(()=>r(Xt).id))),Zt!==(Zt=(r(Xt),k(()=>r(Xt).id)))&&(Qt.value=(Qt.__value=(r(Xt),k(()=>r(Xt).id)))??"")}),A(J,Qt)});var eo;Hr(Nn);var Fn=b(Qa,2);{var Sl=J=>{var Xt=LP(),Qt=it(Xt),Ne=g(Qt),Zt=b(Qt,2),Xe=g(Zt);K((Ce,Ve)=>{Oo(Ne,Ce),Oo(Xe,Ve)},[()=>(r(i),k(()=>!!Ps(r(i)).maskInvert)),()=>(r(i),k(()=>!!Ps(r(i)).maskVisible))]),B("change",Ne,Ce=>me("maskInvert",Ce.currentTarget.checked)),B("change",Xe,Ce=>me("maskVisible",Ce.currentTarget.checked)),A(J,Xt)},kl=us(()=>(r(i),k(()=>as(r(i),"mask","none")!=="none")));tt(Fn,J=>{r(kl)&&J(Sl)})}var El=b(Fn,2);{var Bl=J=>{var Xt=VP(),Qt=b(it(Xt),2);ue(Qt,1,()=>Br,ve,(Ne,Zt)=>{var Xe=RP(),Ce=g(Xe),Ve=g(Ce),He=b(Ce,2),xi=g(He),Ji=b(xi,2);K((ls,Ar)=>{rt(Ve,(r(Zt),k(()=>r(Zt).label))),Q(xi,"min",(r(Zt),k(()=>r(Zt).min))),Q(xi,"max",(r(Zt),k(()=>r(Zt).max))),Q(xi,"step",(r(Zt),k(()=>r(Zt).step))),le(xi,ls),Q(Ji,"min",(r(Zt),k(()=>r(Zt).min))),Q(Ji,"max",(r(Zt),k(()=>r(Zt).max))),Q(Ji,"step",(r(Zt),k(()=>r(Zt).step))),le(Ji,Ar)},[()=>(r(i),r(Zt),k(()=>jt(r(i),r(Zt).property,r(Zt).fallback))),()=>(r(i),r(Zt),k(()=>jt(r(i),r(Zt).property,r(Zt).fallback)))]),B("input",xi,ls=>me(r(Zt).property,Number(ls.currentTarget.value))),B("input",Ji,ls=>me(r(Zt).property,Number(ls.currentTarget.value))),A(Ne,Xe)}),A(J,Xt)};tt(El,J=>{r(i),k(()=>r(i).kind==="asset")&&J(Bl)})}var io=b(El,4),Ul=g(io),Tl=b(Ul,2);{var Pl=J=>{var Xt=HP(),Qt=it(Xt),Ne=g(Qt),Zt=b(Qt,2),Xe=g(Zt);wo(Xe,{size:14}),K(Ce=>le(Ne,Ce),[()=>(r(Jt),k(()=>Number((r(Jt)*100).toFixed(1))))]),B("change",Ne,Ce=>{const Ve=Tr();if(Ve&&r(Jt)!==null){const He=Math.min(1,Math.max(0,Number(Ce.currentTarget.value)/100));Ve.keyframes=jv(Ve.keyframes??[],r(Jt),He),x(Jt,He),P(Se(r(O)))}}),B("click",Zt,x1),A(J,Xt)};tt(Tl,J=>{r(Jt)!==null&&J(Pl)})}var wt=b(io,2);{var hi=J=>{var Xt=jP(),Qt=b(g(Xt),2),Ne=g(Qt);Ne.value=Ne.__value="";var Zt=b(Ne);ue(Zt,1,()=>g1,ve,(Ce,Ve)=>{var He=dd(),xi=g(He),Ji={};K(()=>{rt(xi,(r(Ve),k(()=>r(Ve).label))),Ji!==(Ji=(r(Ve),k(()=>r(Ve).value)))&&(He.value=(He.__value=(r(Ve),k(()=>r(Ve).value)))??"")}),A(Ce,He)});var Xe;Hr(Qt),K(()=>{Xe!==(Xe=r(L))&&(Qt.value=(Qt.__value=r(L))??"",Kn(Qt,r(L)))}),B("change",Qt,Ce=>b1(Ce.currentTarget.value)),A(J,Xt)};tt(wt,J=>{r(Jt)!==null&&J(hi)})}var Is=b(wt,4),so=b(g(Is),2),sr=g(so);let Al;var no=b(sr,2);let ca;var Au=b(no,2);let op;var zu=b(Au,2);let lp;var Mu=b(zu,2);let cp;var up=b(Mu,2);let dp;var fp=b(Is,2),D0=b(g(fp),2),hp=g(D0),pp=b(fp,2),L0=b(g(pp),2),vp=g(L0),R0=b(pp,2),mp=b(g(R0),2);ue(mp,4,()=>["soft","power3.out","linear","ease-out","spring","smooth"],ve,(J,Xt)=>{var Qt=tm();let Ne;var Zt=g(Qt);K(()=>{Ne=$t(Qt,1,"easing-option svelte-1mvnu54",null,Ne,{active:(r(a)?.easing??"soft")===Xt}),rt(Zt,Xt)}),B("click",Qt,()=>ll("easing",Xt)),A(J,Qt)});var _p=b(mp,2);K((J,Xt,Qt,Ne,Zt,Xe,Ce,Ve,He,xi,Ji,ls,Ar,zr,ro,Iu)=>{rt(Gt,(r(i),k(()=>r(i).id))),rt(At,J),le(Ye,Xt),le(zs,Qt),le(G,Ne),le(Yt,Zt),le(Kt,Xe),le(Tt,Ce),Q(oe,"max",r(bt)),le(oe,Ve),Q(Ms,"min",(r(z),k(()=>1/(r(z)?.canvas.fps??60)))),Q(Ms,"max",r(bt)),le(Ms,He),eo!==(eo=xi)&&(Nn.value=(Nn.__value=xi)??"",Kn(Nn,xi)),Al=$t(sr,1,"preset-option svelte-1mvnu54",null,Al,{active:!r(a)}),ca=$t(no,1,"preset-option svelte-1mvnu54",null,ca,Ji),op=$t(Au,1,"preset-option svelte-1mvnu54",null,op,ls),lp=$t(zu,1,"preset-option svelte-1mvnu54",null,lp,Ar),cp=$t(Mu,1,"preset-option svelte-1mvnu54",null,cp,zr),dp=$t(up,1,"preset-option svelte-1mvnu54",null,dp,ro),le(hp,(r(a),k(()=>r(a)?.duration??1))),le(vp,(r(a),k(()=>r(a)?.delay??0))),le(_p,Iu)},[()=>(r(i),k(()=>iu(r(i)))),()=>k(()=>ir("x",0)),()=>k(()=>ir("y",0)),()=>(r(i),k(()=>jt(r(i),"scale",1))),()=>(r(i),k(()=>jt(r(i),"scale",1).toFixed(2))),()=>(r(i),k(()=>jt(r(i),"opacity",1))),()=>(r(i),k(()=>Math.round(jt(r(i),"opacity",1)*100))),()=>(r(i),k(()=>As(r(i).id).start)),()=>(r(i),k(()=>As(r(i).id).end-As(r(i).id).start)),()=>(r(i),k(()=>as(r(i),"mask","none"))),()=>({active:Xa("fade")}),()=>({active:Xa("rise")}),()=>({active:Xa("scale")}),()=>({active:Xa("blur")}),()=>({active:Xa("drift")}),()=>(r(a),k(()=>String(r(a)?.easing??"soft")))]),B("input",Ye,J=>me("x",Number(J.currentTarget.value))),B("pointerdown",Xi,J=>qa(J,"x",0)),B("keydown",Xi,J=>Ga(J,"x",0)),B("input",zs,J=>me("y",Number(J.currentTarget.value))),B("pointerdown",Ws,J=>qa(J,"y",0)),B("keydown",Ws,J=>Ga(J,"y",0)),B("input",G,J=>me("scale",Number(J.currentTarget.value))),B("input",Yt,J=>me("scale",Number(J.currentTarget.value))),B("input",Kt,J=>me("opacity",Number(J.currentTarget.value))),B("input",Tt,J=>me("opacity",Number(J.currentTarget.value)/100)),B("change",oe,J=>au(r(i).id,"start",Number(J.currentTarget.value))),B("change",Ms,J=>au(r(i).id,"end",As(r(i).id).start+Number(J.currentTarget.value))),B("change",Nn,J=>me("mask",J.currentTarget.value)),B("click",Ul,gu),B("click",sr,()=>la("none")),B("click",no,()=>la("fade")),B("click",Au,()=>la("rise")),B("click",zu,()=>la("scale")),B("click",Mu,()=>la("blur")),B("click",up,()=>la("drift")),B("input",hp,J=>ll("duration",Number(J.currentTarget.value))),B("input",vp,J=>ll("delay",Number(J.currentTarget.value))),B("change",_p,J=>ll("easing",J.currentTarget.value)),Mp("open","toggle",Ft,J=>x(_i,J),()=>r(_i)),A(f,p)},a0=f=>{var p=qP(),w=it(p),E=g(w),U=g(E);{var N=wt=>{Mr(wt,{size:15})},W=wt=>{var hi=Kl();K(Is=>Q(hi,"src",Is),[()=>(r(gt),r(s),k(()=>mn(r(gt).get(r(s).assetName),r(s).asset.path)))]),A(wt,hi)},H=wt=>{Ol(wt,{size:15})};tt(U,wt=>{r(s),k(()=>r(s).asset?.type==="video")?wt(N):(r(s),k(()=>r(s).asset?.path)?wt(W,1):wt(H,-1))})}var Y=b(E,2),et=g(Y),st=g(et),nt=b(w,2),Pt=g(nt),Gt=b(g(Pt),2),zt=g(Gt),At=g(zt);Np(At,{size:15});var Nt=b(zt,2),pt=g(Nt);$p(pt,{size:15});var qt=b(Nt,2),ae=g(qt);Op(ae,{size:15});var We=b(qt,2),di=g(We);Lp(di,{size:15});var Ye=b(We,2),Xi=g(Ye);Fp(Xi,{size:15});var gn=b(Ye,2),zs=g(gn);Dp(zs,{size:15});var Ws=b(Pt,2),Fe=b(g(Ws),2),ai=g(Fe),Bt=g(ai),ut=b(Bt,2),lt=b(ai,2),dt=g(lt),G=b(dt,2),Yt=b(Ws,2),kt=b(g(Yt),2);{let wt=cs(()=>k(()=>ir("rotation",0)));Xv(kt,{get value(){return r(wt)},onChange:hi=>me("rotation",hi)})}var xt=b(Yt,4),Kt=b(g(xt),2),Tt=g(Kt),he=b(Tt,2),_e=b(xt,2),we=b(g(_e),2),xe=g(we),ee=b(xe,2),os=b(_e,2),Ee=b(g(os),2);{var Oi=wt=>{{let hi=cs(()=>(r(n),k(()=>as(r(n),"fill","#ffffff"))));Wl(wt,{get value(){return r(hi)},ariaLabel:"Clip color",onChange:Is=>me("fill",Is)})}},oe=wt=>{var hi=Qv();A(wt,hi)};tt(Ee,wt=>{r(n),k(()=>r(n)?.asset?.type==="svg")?wt(Oi):wt(oe,-1)})}var fi=b(os,2),Ti=g(fi),Ms=b(g(Ti),2),Ft=g(Ms),Ie=b(Ti,2),oi=b(g(Ie),2),On=g(oi),Pr=b(nt,2),Pu=b(g(Pr),2),Qa=g(Pu),Nn=b(Qa,2),to=b(g(Nn),2),wl=g(to),eo=b(Nn,2),Fn=b(g(eo),2);ue(Fn,5,()=>(r(z),r(s),k(()=>(r(z)?.tracks??[]).filter(wt=>wt.role!=="audio"&&(wt.role==="main"||wt.content===(r(s).asset?.type==="video"?"video":"image")||wt.content==="mixed")))),ve,(wt,hi)=>{var Is=dd(),so=g(Is),sr={};K(()=>{rt(so,`${r(hi),k(()=>r(hi).label)??""} · ${r(hi),k(()=>r(hi).role)??""}`),sr!==(sr=(r(hi),k(()=>r(hi).id)))&&(Is.value=(Is.__value=(r(hi),k(()=>r(hi).id)))??"")}),A(wt,Is)});var Sl;Hr(Fn);var kl=b(eo,2),El=b(g(kl),2),Bl=g(El),io=b(kl,2),Ul=b(g(io),2),Tl=g(Ul),Pl=b(io,2);K((wt,hi,Is,so,sr,Al,no,ca)=>{rt(st,(r(s),k(()=>r(s).assetName))),le(Bt,wt),le(dt,hi),le(Tt,Is),le(he,so),le(xe,sr),le(ee,Al),Q(Ft,"max",r(bt)),le(Ft,(r(s),k(()=>r(s).start))),Q(On,"max",r(bt)),le(On,(r(s),k(()=>r(s).duration))),le(wl,no),Sl!==(Sl=ca)&&(Fn.value=(Fn.__value=ca)??"",Kn(Fn,ca)),le(Bl,(r(s),k(()=>r(s).trimIn))),le(Tl,(r(s),k(()=>r(s).trimOut))),Pl.disabled=(r(ot),r(s),k(()=>r(ot)<=r(s).start||r(ot)>=r(s).start+r(s).duration))},[()=>k(()=>ir("x",0)),()=>k(()=>ir("y",0)),()=>(r(n),k(()=>jt(r(n),"scale",1))),()=>(r(n),k(()=>jt(r(n),"scale",1).toFixed(2))),()=>(r(n),k(()=>jt(r(n),"opacity",1))),()=>(r(n),k(()=>Math.round(jt(r(n),"opacity",1)*100))),()=>(r(n),r(gt),r(s),k(()=>r(n)?_u(r(n)):r(gt).get(r(s).assetName)?.width??200)),()=>(r(s),k(()=>String(r(s).track)))]),B("click",zt,()=>qs("left")),B("click",Nt,()=>qs("center-x")),B("click",qt,()=>qs("right")),B("click",We,()=>qs("top")),B("click",Ye,()=>qs("center-y")),B("click",gn,()=>qs("bottom")),B("input",Bt,wt=>me("x",Number(wt.currentTarget.value))),B("pointerdown",ut,wt=>qa(wt,"x",0)),B("keydown",ut,wt=>Ga(wt,"x",0)),B("input",dt,wt=>me("y",Number(wt.currentTarget.value))),B("pointerdown",G,wt=>qa(wt,"y",0)),B("keydown",G,wt=>Ga(wt,"y",0)),B("input",Tt,wt=>me("scale",Number(wt.currentTarget.value))),B("input",he,wt=>me("scale",Number(wt.currentTarget.value))),B("input",xe,wt=>me("opacity",Number(wt.currentTarget.value))),B("input",ee,wt=>me("opacity",Number(wt.currentTarget.value)/100)),B("change",Ft,wt=>lh(String(r(s).track),Number(wt.currentTarget.value))),B("change",On,wt=>s1(Number(wt.currentTarget.value))),B("click",Qa,Jf),B("input",wl,wt=>me("width",Number(wt.currentTarget.value))),B("change",Fn,wt=>lh(wt.currentTarget.value,r(s).start)),B("input",Bl,wt=>oh(r(s).id,{trimIn:`${Math.max(0,Number(wt.currentTarget.value))}s`})),B("input",Tl,wt=>oh(r(s).id,{trimOut:`${Math.max(0,Number(wt.currentTarget.value))}s`})),B("click",Pl,vu),Mp("open","toggle",Pr,wt=>x(_i,wt),()=>r(_i)),A(f,p)},o0=f=>{var p=WP(),w=g(p);jn(w,{size:20}),A(f,p)};tt(s0,f=>{r(S)?f(n0):r(i)?f(r0,1):r(s)?f(a0,2):f(o0,-1)})}var Rh=b(yu,2),ku=g(Rh),Vh=b(ku,2),Hh=g(Vh),Eu=g(Hh),l0=g(Eu);yw(l0,{size:17});var _l=b(Eu,2),c0=g(_l);{var u0=f=>{fw(f,{size:19})},d0=f=>{pw(f,{size:19})};tt(c0,f=>{r(Vt)?f(u0):f(d0,-1)})}var jh=b(_l,2),f0=g(jh),h0=b(jh,2),p0=g(h0),Gh=b(Hh,2),qh=g(Gh);Nl(qh,{size:14});var v0=b(qh,2),m0=g(v0),_0=b(Gh,2),Bu=g(_0);Xs(Bu,f=>x(ks,f),()=>r(ks));var Wh=b(Bu,2);{var g0=f=>{var p=YP(),w=it(p),E=g(w);da(E,{size:13});var U=b(E),N=b(w,2),W=g(N);wo(W,{size:14}),K(()=>rt(U,` ${r(Oe)??""}`)),B("click",N,su),A(f,p)},y0=f=>{var p=KP(),w=g(p);qu(w,{size:14}),B("click",p,()=>r(ks).click()),A(f,p)};tt(Wh,f=>{r(Oe)?f(g0):f(y0,-1)})}var Yh=b(Wh,2);{var b0=f=>{var p=XP(),w=it(p),E=g(w);$l(E,{size:14});var U=b(w,2),N=g(U);wo(N,{size:14}),B("click",w,Wf),B("click",U,Kf),A(f,p)};tt(Yh,f=>{(r(i)||r(s))&&f(b0)})}var gl=b(Yh,2),x0=g(gl);xw(x0,{size:14});var yl=b(gl,2),w0=g(yl);vw(w0,{size:14});var bl=b(yl,2),S0=g(bl);_w(S0,{size:14});var Za=b(bl,2);let Kh;var k0=g(Za);cw(k0,{size:15});var Uu=b(Za,2),E0=g(Uu);uw(E0,{size:15});var Xh=b(Uu,2),B0=g(Xh),Jh=b(Xh,2),U0=g(Jh);tc(U0,{size:15});var $n=b(Vh,2);let Zh;var Qh=g($n),T0=b(g(Qh),2),tp=g(T0);ue(tp,1,()=>r(T),ve,(f,p)=>{var w=JP(),E=g(w);K((U,N)=>{pe(w,U),rt(E,N)},[()=>(r(p),k(()=>`left: ${ti(r(p))}%`)),()=>(r(p),k(()=>Vf(r(p))))]),A(f,w)});var ep=b(tp,4);{var P0=f=>{var p=ZP();K(w=>pe(p,w),[()=>(r(Bi),k(()=>`left: ${ti(r(Bi))}%`))]),A(f,p)};tt(ep,f=>{r(Bi)!==null&&f(P0)})}var ip=b(ep,2);{var A0=f=>{var p=QP();K(w=>pe(p,w),[()=>(r(Ki),k(()=>`left: ${ti(r(Ki))}%`))]),A(f,p)};tt(ip,f=>{r(Ki)!==null&&f(A0)})}var xl=b(ip,2),sp=b(Qh,2);ue(sp,1,()=>r(h),ve,(f,p)=>{const w=cs(()=>(r(z),r(p),k(()=>r(z)?.tracks.find(Bt=>Bt.id===r(p).trackId))));var E=iA();let U;var N=g(E);let W;var H=g(N),Y=g(H);{var et=Bt=>{Mr(Bt,{size:12})},st=Bt=>{var ut=Kl();K(lt=>Q(ut,"src",lt),[()=>(r(gt),r(p),k(()=>mn(r(gt).get(r(p).items[0].element.assetName??""),r(p).items[0].element.asset.path)))]),A(Bt,ut)},nt=Bt=>{Fl(Bt,{size:12})},Pt=Bt=>{jn(Bt,{size:12})},Gt=Bt=>{Gu(Bt,{size:12})};tt(Y,Bt=>{r(p),k(()=>r(p).items[0].element.kind==="asset"&&r(p).items[0].element.asset?.type==="video")?Bt(et):(r(p),k(()=>r(p).items[0].element.kind==="asset"&&r(p).items[0].element.asset?.path)?Bt(st,1):(r(p),k(()=>r(p).kind==="text")?Bt(nt,2):(r(p),k(()=>r(p).kind==="effect")?Bt(Pt,3):Bt(Gt,-1))))})}var zt=b(H,2),At=g(zt),Nt=g(At),pt=b(At,2),qt=g(pt),ae=b(zt,2);{var We=Bt=>{var ut=tA(),lt=g(ut);let dt;var G=g(lt);{var Yt=xt=>{yc(xt,{size:13})},kt=xt=>{No(xt,{size:13})};tt(G,xt=>{Wt(r(w)),k(()=>r(w).hidden)?xt(Yt):xt(kt,-1)})}K(()=>{dt=$t(lt,1,"track-control svelte-1mvnu54",null,dt,{active:r(w).hidden}),Q(lt,"title",(Wt(r(w)),k(()=>r(w).hidden?"Show track":"Hide track")))}),B("click",lt,Pi(()=>du(r(w),{hidden:!r(w).hidden}))),A(Bt,ut)},di=Bt=>{var ut=eA(),lt=g(ut);K((dt,G)=>rt(lt,`${dt??""} - ${G??""}`),[()=>(r(p),k(()=>eu(r(p).start))),()=>(r(p),k(()=>eu(r(p).end)))]),A(Bt,ut)};tt(ae,Bt=>{r(w)?Bt(We):Bt(di,-1)})}var Ye=b(N,2),Xi=g(Ye);{var gn=Bt=>{var ut=im(),lt=it(ut);let dt;var G=b(lt,2);{var Yt=xt=>{var Kt=It(),Tt=it(Kt);ue(Tt,1,()=>k(al),ve,(he,_e)=>{var we=em();K(xe=>pe(we,xe),[()=>(r(_e),r(o),k(()=>`left: ${ti(Ka(r(_e).offset)+r(o))}%; top: 19.5px`))]),A(he,we)}),A(xt,Kt)},kt=us(()=>(r(ht),r(vt),r(p),k(()=>r(ht).kind==="element"&&r(ht).id===r(vt)&&!r(p).items.some(xt=>xt.element.id===r(vt)))));tt(G,xt=>{r(kt)&&xt(Yt)})}K(xt=>{dt=$t(lt,1,"clip-ghost svelte-1mvnu54",null,dt,{invalid:!r(ht).valid}),pe(lt,xt)},[()=>(r(ht),k(()=>`left: ${ti(r(ht).ghostStart)}%; width: ${Math.max(.8,ti(r(ht).duration))}%`))]),A(Bt,ut)};tt(Xi,Bt=>{r(ht),r(p),k(()=>r(ht)&&r(ht).ghostTrackId===r(p).trackId)&&Bt(gn)})}var zs=b(Xi,2);ue(zs,1,()=>(r(p),k(()=>r(p).items)),ve,(Bt,ut)=>{var lt=nm();let dt;var G=g(lt);{var Yt=oe=>{var fi=fd(),Ti=g(fi);Mr(Ti,{size:13}),A(oe,fi)},kt=oe=>{var fi=hd();K(Ti=>pe(fi,Ti),[()=>(r(gt),r(ut),k(()=>`background-image: url('${mn(r(gt).get(r(ut).element.assetName??""),r(ut).element.asset.path)}')`))]),A(oe,fi)},xt=oe=>{var fi=Xl(),Ti=g(fi);K(Ms=>rt(Ti,Ms),[()=>(r(ut),k(()=>as(r(ut).element,"value",r(ut).element.id)))]),A(oe,fi)},Kt=oe=>{var fi=sm();K(Ti=>pe(fi,Ti),[()=>(r(ut),k(()=>`background: ${as(r(ut).element,"fill","#34404e")}`))]),A(oe,fi)};tt(G,oe=>{r(ut),k(()=>r(ut).element.kind==="asset"&&r(ut).element.asset?.type==="video")?oe(Yt):(r(ut),k(()=>r(ut).element.kind==="asset"&&r(ut).element.asset?.path)?oe(kt,1):(r(ut),k(()=>r(ut).element.kind==="text")?oe(xt,2):(r(ut),k(()=>r(ut).element.kind==="overlay")&&oe(Kt,3))))})}var Tt=b(G,2),he=b(Tt,2),_e=g(he);$l(_e,{size:11});var we=b(he,2),xe=g(we);ju(xe,{size:11});var ee=b(we,2),os=g(ee);Sn(os,{size:11});var Ee=b(ee,2),Oi=b(Ee,2);K(oe=>{dt=$t(lt,1,"clip element-clip svelte-1mvnu54",null,dt,{"selected-clip":r(ut).element.id===r(vt)}),pe(lt,oe),Q(Tt,"aria-label",(r(ut),k(()=>`Select or move ${r(ut).element.id}`))),Q(he,"aria-label",(r(ut),k(()=>`Duplicate ${r(ut).element.id}`))),Q(we,"aria-label",(r(ut),k(()=>`Show more options for ${r(ut).element.id}`))),Q(ee,"aria-label",(r(ut),k(()=>`Delete ${r(ut).element.id}`))),Q(Ee,"aria-label",(r(ut),k(()=>`Trim start of ${r(ut).element.id}`))),Q(Oi,"aria-label",(r(ut),k(()=>`Trim end of ${r(ut).element.id}`)))},[()=>(r(ut),k(()=>`left: ${ti(r(ut).range.start)}%; width: ${Math.max(.8,ti(r(ut).range.end-r(ut).range.start))}%; top: ${6+r(ut).lane*34}px`))]),B("pointerdown",Tt,oe=>ch(oe,r(ut).element)),B("click",Tt,()=>vn(r(ut).element.id,!1)),B("click",he,Pi(()=>nu(r(ut).element.id))),B("click",we,Pi(()=>cu(r(ut).element.id))),B("click",ee,Pi(()=>ru(r(ut).element.id))),B("pointerdown",Ee,oe=>el(oe,r(ut).element.id,"start")),B("pointerdown",Oi,oe=>el(oe,r(ut).element.id,"end")),A(Bt,lt)});var Ws=b(zs,2);{var Fe=Bt=>{const ut=cs(()=>(r(p),r(vt),k(()=>r(p).items.find(Yt=>Yt.element.id===r(vt))?.lane??0)));var lt=am(),dt=it(lt);ue(dt,1,()=>k(al),ve,(Yt,kt)=>{var xt=rm();let Kt;K((Tt,he,_e,we)=>{Kt=$t(xt,1,"keyframe-marker svelte-1mvnu54",null,Kt,Tt),pe(xt,he),Q(xt,"title",_e),Q(xt,"aria-label",we)},[()=>({"selected-keyframe":r(Jt)!==null&&Math.abs(r(Jt)-r(kt).offset)<1e-6}),()=>(r(kt),r(o),Wt(r(ut)),k(()=>`left: ${ti(Ka(r(kt).offset)+r(o))}%; top: ${6+r(ut)*34+13.5}px`)),()=>(r(kt),k(()=>`Keyframe ${Math.round(r(kt).offset*100)}%${r(kt).easing?" · "+r(kt).easing:""} — drag to retime, right-click to delete`)),()=>(r(kt),k(()=>`Keyframe at ${Math.round(r(kt).offset*100)} percent`))]),B("pointerdown",xt,Tt=>_h(Tt,r(kt).offset)),B("contextmenu",xt,Tt=>vh(Tt,r(kt).offset)),A(Yt,xt)});var G=b(dt,2);K(Yt=>pe(G,Yt),[()=>(r(ot),Wt(r(ut)),k(()=>`left: ${ti(r(ot))}%; top: ${6+r(ut)*34+13.5}px`))]),B("pointerdown",G,Pi(function(Yt){Cl.call(this,e,Yt)})),B("click",G,Pi(gu)),A(Bt,lt)},ai=us(()=>(r(p),r(vt),r(ht),k(()=>r(p).items.some(Bt=>Bt.element.id===r(vt))&&!(r(ht)?.kind==="element"&&r(ht).id===r(vt)&&r(ht).ghostTrackId!==r(p).trackId))));tt(Ws,Bt=>{r(ai)&&Bt(Fe)})}K((Bt,ut,lt)=>{U=$t(E,1,"timeline-row svelte-1mvnu54",null,U,Bt),pe(E,ut),W=$t(N,1,"track-label svelte-1mvnu54",null,W,{"track-hidden":r(w)?.hidden}),rt(Nt,lt),rt(qt,`${r(p),k(()=>r(p).items.length)??""} ${r(p),k(()=>r(p).items.length===1?"element":"elements")??""}${r(p),k(()=>r(p).laneCount>1?` · ${r(p).laneCount} stacked`:"")??""}`),Q(Ye,"data-track",(r(p),k(()=>r(p).trackId))),pe(Ye,(r(p),k(()=>`min-height: ${r(p).laneCount*34+7}px`)))},[()=>({selected:r(p).items.some(Bt=>Bt.element.id===r(vt))}),()=>(r(p),Wt(r(w)),k(()=>`min-height: ${r(p).laneCount*34+8}px; order: ${dh(r(w),r(p).trackId)}`)),()=>(r(p),k(()=>v1(r(p))))]),A(f,E)});var np=b(sp,2);ue(np,1,()=>r(v),ve,(f,p)=>{var w=lA();let E;var U=g(w);let N;var W=g(U),H=g(W);{var Y=lt=>{da(lt,{size:12})},et=lt=>{Mr(lt,{size:12})},st=lt=>{var dt=Kl();K(G=>Q(dt,"src",G),[()=>(r(gt),r(p),k(()=>mn(r(gt).get(r(p).clips[0].clip.assetName),r(p).clips[0].clip.asset?.path)))]),A(lt,dt)},nt=lt=>{Nl(lt,{size:12})};tt(H,lt=>{r(p),k(()=>r(p).metadata?.role==="audio")?lt(Y):(r(p),k(()=>r(p).clips[0]?.clip.asset?.type==="video")?lt(et,1):(r(p),k(()=>r(p).clips[0]?.clip.asset?.path)?lt(st,2):lt(nt,-1)))})}var Pt=b(W,2),Gt=g(Pt),zt=g(Gt),At=b(Gt,2),Nt=g(At),pt=b(Pt,2);{var qt=lt=>{var dt=sA(),G=g(dt);{var Yt=Kt=>{var Tt=om();let he;var _e=g(Tt);{var we=ee=>{yc(ee,{size:13})},xe=ee=>{No(ee,{size:13})};tt(_e,ee=>{r(p),k(()=>r(p).metadata.hidden)?ee(we):ee(xe,-1)})}K(()=>{he=$t(Tt,1,"track-control svelte-1mvnu54",null,he,{active:r(p).metadata.hidden}),Q(Tt,"title",(r(p),k(()=>r(p).metadata.hidden?"Show track":"Hide track"))),Q(Tt,"aria-label",(r(p),k(()=>r(p).metadata.hidden?"Show track":"Hide track")))}),B("click",Tt,Pi(()=>du(r(p).metadata,{hidden:!r(p).metadata.hidden}))),A(Kt,Tt)};tt(G,Kt=>{r(p),k(()=>r(p).metadata.role!=="audio")&&Kt(Yt)})}var kt=b(G,2);{var xt=Kt=>{var Tt=om();let he;var _e=g(Tt);{var we=ee=>{Sw(ee,{size:13})},xe=ee=>{ww(ee,{size:13})};tt(_e,ee=>{r(p),k(()=>r(p).metadata.muted)?ee(we):ee(xe,-1)})}K(()=>{he=$t(Tt,1,"track-control svelte-1mvnu54",null,he,{active:r(p).metadata.muted}),Q(Tt,"title",(r(p),k(()=>r(p).metadata.muted?"Unmute track":"Mute track"))),Q(Tt,"aria-label",(r(p),k(()=>r(p).metadata.muted?"Unmute track":"Mute track")))}),B("click",Tt,Pi(()=>du(r(p).metadata,{muted:!r(p).metadata.muted}))),A(Kt,Tt)};tt(kt,Kt=>{r(p),k(()=>r(p).metadata.role==="audio"||r(p).metadata.role==="main"||r(p).metadata.content==="video")&&Kt(xt)})}A(lt,dt)};tt(pt,lt=>{r(p),k(()=>r(p).metadata)&&lt(qt)})}var ae=b(U,2),We=g(ae);{var di=lt=>{var dt=im(),G=it(dt);let Yt;var kt=b(G,2);{var xt=Tt=>{var he=It(),_e=it(he);ue(_e,1,()=>k(al),ve,(we,xe)=>{var ee=em();K(os=>pe(ee,os),[()=>(r(xe),r(o),k(()=>`left: ${ti(Ka(r(xe).offset)+r(o))}%; top: 19.5px`))]),A(we,ee)}),A(Tt,he)},Kt=us(()=>(r(ht),r(vt),r(p),k(()=>r(ht).kind==="element"&&r(ht).id===r(vt)&&!r(p).elements.some(({item:Tt})=>Tt.element.id===r(vt)))));tt(kt,Tt=>{r(Kt)&&Tt(xt)})}K(Tt=>{Yt=$t(G,1,"clip-ghost svelte-1mvnu54",null,Yt,{invalid:!r(ht).valid}),pe(G,Tt)},[()=>(r(ht),k(()=>`left: ${ti(r(ht).ghostStart)}%; width: ${Math.max(.8,ti(r(ht).duration))}%`))]),A(lt,dt)},Ye=us(()=>(r(ht),r(p),k(()=>r(ht)&&r(ht).ghostTrackId===String(r(p).track))));tt(We,lt=>{r(Ye)&&lt(di)})}var Xi=b(We,2);{var gn=lt=>{var dt=rA();let G;var Yt=g(dt);let kt;var xt=g(Yt);{var Kt=we=>{var xe=nA(),ee=g(xe);K(()=>{Q(xe,"viewBox",`0 0 ${r(Es)} 24`),Q(ee,"d",r(fe))}),A(we,xe)};tt(xt,we=>{r(fe)&&we(Kt)})}var Tt=b(Yt,2),he=g(Tt),_e=b(Tt,2);K(we=>{G=$t(dt,1,"clip audio-clip svelte-1mvnu54",null,G,{muted:r(y)?.muted}),pe(dt,we),kt=$t(Yt,1,"audio-waveform svelte-1mvnu54",null,kt,{loading:r(is)}),rt(he,r(Oe)),Q(_e,"aria-label",`Move audio ${r(Oe)}`)},[()=>(r(z),r(js),k(()=>`left: ${ti(r(z)?.audioStart??0)}%; width: ${ti(r(js))}%; top: 6px`))]),B("pointerdown",_e,f1),A(lt,dt)};tt(Xi,lt=>{r(p),r(y),r(Oe),k(()=>r(p).metadata?.id===r(y)?.id&&r(Oe))&&lt(gn)})}var zs=b(Xi,2);ue(zs,1,()=>(r(p),k(()=>r(p).elements)),ve,(lt,dt)=>{const G=cs(()=>(r(dt),k(()=>r(dt).item)));var Yt=nm();let kt;var xt=g(Yt);{var Kt=Ft=>{var Ie=fd(),oi=g(Ie);Mr(oi,{size:13}),A(Ft,Ie)},Tt=Ft=>{var Ie=hd();K(oi=>pe(Ie,oi),[()=>(r(gt),Wt(r(G)),k(()=>`background-image: url('${mn(r(gt).get(r(G).element.assetName??""),r(G).element.asset.path)}')`))]),A(Ft,Ie)},he=Ft=>{var Ie=Xl(),oi=g(Ie);K(On=>rt(oi,On),[()=>(Wt(r(G)),k(()=>as(r(G).element,"value",r(G).element.id)))]),A(Ft,Ie)},_e=Ft=>{var Ie=sm();K(oi=>pe(Ie,oi),[()=>(Wt(r(G)),k(()=>`background: ${as(r(G).element,"fill","#34404e")}`))]),A(Ft,Ie)},we=Ft=>{var Ie=Xl(),oi=g(Ie);K(()=>rt(oi,(Wt(r(G)),k(()=>r(G).element.id)))),A(Ft,Ie)};tt(xt,Ft=>{Wt(r(G)),k(()=>r(G).element.kind==="asset"&&r(G).element.asset?.type==="video")?Ft(Kt):(Wt(r(G)),k(()=>r(G).element.kind==="asset"&&r(G).element.asset?.path)?Ft(Tt,1):(Wt(r(G)),k(()=>r(G).element.kind==="text")?Ft(he,2):(Wt(r(G)),k(()=>r(G).element.kind==="overlay")?Ft(_e,3):Ft(we,-1))))})}var xe=b(xt,2),ee=b(xe,2),os=g(ee);$l(os,{size:11});var Ee=b(ee,2),Oi=g(Ee);ju(Oi,{size:11});var oe=b(Ee,2),fi=g(oe);Sn(fi,{size:11});var Ti=b(oe,2),Ms=b(Ti,2);K(Ft=>{kt=$t(Yt,1,"clip element-clip svelte-1mvnu54",null,kt,{"selected-clip":r(G).element.id===r(vt)}),pe(Yt,Ft),Q(xe,"aria-label",(Wt(r(G)),k(()=>`Select or move ${r(G).element.id}`))),Q(ee,"aria-label",(Wt(r(G)),k(()=>`Duplicate ${r(G).element.id}`))),Q(Ee,"aria-label",(Wt(r(G)),k(()=>`Show more options for ${r(G).element.id}`))),Q(oe,"aria-label",(Wt(r(G)),k(()=>`Delete ${r(G).element.id}`))),Q(Ti,"aria-label",(Wt(r(G)),k(()=>`Trim start of ${r(G).element.id}`))),Q(Ms,"aria-label",(Wt(r(G)),k(()=>`Trim end of ${r(G).element.id}`)))},[()=>(Wt(r(G)),r(dt),k(()=>`left: ${ti(r(G).range.start)}%; width: ${Math.max(.8,ti(r(G).range.end-r(G).range.start))}%; top: ${6+r(dt).lane*34}px`))]),B("pointerdown",xe,Ft=>ch(Ft,r(G).element)),B("click",xe,()=>vn(r(G).element.id,!1)),B("click",ee,Pi(()=>nu(r(G).element.id))),B("click",Ee,Pi(()=>cu(r(G).element.id))),B("click",oe,Pi(()=>ru(r(G).element.id))),B("pointerdown",Ti,Ft=>el(Ft,r(G).element.id,"start")),B("pointerdown",Ms,Ft=>el(Ft,r(G).element.id,"end")),A(lt,Yt)});var Ws=b(zs,2);{var Fe=lt=>{const dt=cs(()=>(r(p),r(vt),k(()=>r(p).elements.find(({item:xt})=>xt.element.id===r(vt))?.lane??0)));var G=am(),Yt=it(G);ue(Yt,1,()=>k(al),ve,(xt,Kt)=>{var Tt=rm();let he;K((_e,we,xe,ee)=>{he=$t(Tt,1,"keyframe-marker svelte-1mvnu54",null,he,_e),pe(Tt,we),Q(Tt,"title",xe),Q(Tt,"aria-label",ee)},[()=>({"selected-keyframe":r(Jt)!==null&&Math.abs(r(Jt)-r(Kt).offset)<1e-6}),()=>(r(Kt),r(o),Wt(r(dt)),k(()=>`left: ${ti(Ka(r(Kt).offset)+r(o))}%; top: ${6+r(dt)*34+13.5}px`)),()=>(r(Kt),k(()=>`Keyframe ${Math.round(r(Kt).offset*100)}%${r(Kt).easing?" · "+r(Kt).easing:""} — drag to retime, right-click to delete`)),()=>(r(Kt),k(()=>`Keyframe at ${Math.round(r(Kt).offset*100)} percent`))]),B("pointerdown",Tt,_e=>_h(_e,r(Kt).offset)),B("contextmenu",Tt,_e=>vh(_e,r(Kt).offset)),A(xt,Tt)});var kt=b(Yt,2);K(xt=>pe(kt,xt),[()=>(r(ot),Wt(r(dt)),k(()=>`left: ${ti(r(ot))}%; top: ${6+r(dt)*34+13.5}px`))]),B("pointerdown",kt,Pi(function(xt){Cl.call(this,e,xt)})),B("click",kt,Pi(gu)),A(lt,G)},ai=us(()=>(r(p),r(vt),r(ht),k(()=>r(p).elements.some(({item:lt})=>lt.element.id===r(vt))&&!(r(ht)?.kind==="element"&&r(ht).id===r(vt)&&r(ht).ghostTrackId!==String(r(p).track)))));tt(Ws,lt=>{r(ai)&&lt(Fe)})}var Bt=b(Ws,2);ue(Bt,1,()=>(r(p),k(()=>r(p).clips)),ve,(lt,dt)=>{const G=cs(()=>(r(dt),k(()=>r(dt).clip)));var Yt=oA();let kt;var xt=g(Yt);{var Kt=Ft=>{var Ie=fd(),oi=g(Ie);Mr(oi,{size:13}),A(Ft,Ie)},Tt=Ft=>{var Ie=hd();K(oi=>pe(Ie,oi),[()=>(r(gt),Wt(r(G)),k(()=>`background-image: url('${mn(r(gt).get(r(G).assetName),r(G).asset.path)}')`))]),A(Ft,Ie)},he=Ft=>{var Ie=Xl(),oi=g(Ie);K(()=>rt(oi,(Wt(r(G)),k(()=>r(G).assetName)))),A(Ft,Ie)};tt(xt,Ft=>{Wt(r(G)),k(()=>r(G).asset?.type==="video")?Ft(Kt):(Wt(r(G)),k(()=>r(G).asset?.path)?Ft(Tt,1):Ft(he,-1))})}var _e=b(xt,2);{var we=Ft=>{var Ie=aA(),oi=g(Ie);K((On,Pr)=>rt(oi,`↤ ${On??""}s · ${Pr??""}s ↦`),[()=>(Wt(r(G)),k(()=>r(G).trimIn.toFixed(2))),()=>(Wt(r(G)),k(()=>r(G).trimOut.toFixed(2)))]),A(Ft,Ie)};tt(_e,Ft=>{Wt(r(G)),k(()=>r(G).trimIn>0||r(G).trimOut>0)&&Ft(we)})}var xe=b(_e,2),ee=b(xe,2),os=g(ee);$l(os,{size:11});var Ee=b(ee,2),Oi=g(Ee);ju(Oi,{size:11});var oe=b(Ee,2),fi=b(oe,2),Ti=b(fi,2),Ms=g(Ti);Sn(Ms,{size:12}),K(Ft=>{kt=$t(Yt,1,"clip timeline-clip svelte-1mvnu54",null,kt,{"selected-clip":r(G).id===r(vt)}),pe(Yt,Ft),Q(xe,"aria-label",(Wt(r(G)),k(()=>`Select ${r(G).assetName} clip`))),Q(ee,"aria-label",(Wt(r(G)),k(()=>`Duplicate ${r(G).assetName} clip`))),Q(Ee,"aria-label",(Wt(r(G)),k(()=>`Show more options for ${r(G).assetName} clip`))),Q(oe,"aria-label",(Wt(r(G)),k(()=>`Trim start of ${r(G).assetName}`))),Q(fi,"aria-label",(Wt(r(G)),k(()=>`Trim end of ${r(G).assetName}`)))},[()=>(Wt(r(G)),r(dt),k(()=>`left: ${ti(r(G).start)}%; width: ${Math.max(.8,ti(r(G).duration))}%; top: ${6+r(dt).lane*34}px`))]),B("pointerdown",xe,Ft=>u1(Ft,r(G))),B("click",xe,()=>vn(r(G).id,!1)),B("click",ee,Pi(()=>Yf(r(G).id))),B("click",Ee,Pi(()=>cu(r(G).id))),B("pointerdown",oe,Ft=>uh(Ft,r(G),"start")),B("pointerdown",fi,Ft=>uh(Ft,r(G),"end")),B("click",Ti,Pi(()=>rh(r(G).id))),A(lt,Yt)});var ut=b(Bt,2);ue(ut,1,()=>(r(_),r(p),k(()=>r(_).filter(lt=>String(lt.outgoing.track)===String(r(p).track)))),ve,(lt,dt)=>{var G=tm();let Yt;var kt=g(G);K((xt,Kt)=>{Yt=$t(G,1,"transition-cut svelte-1mvnu54",null,Yt,{"has-transition":r(dt).type!==null,"drop-ready":r(fn)!==null,"selected-transition":r(S)?.outgoing.id===r(dt).outgoing.id&&r(S)?.incoming.id===r(dt).incoming.id}),pe(G,xt),Q(G,"title",Kt),Q(G,"aria-label",(r(dt),k(()=>r(dt).type?`Select crossfade between ${r(dt).outgoing.assetName} and ${r(dt).incoming.assetName}`:`Add transition between ${r(dt).outgoing.assetName} and ${r(dt).incoming.assetName}`))),rt(kt,(r(dt),k(()=>r(dt).type?"×":"+")))},[()=>(r(dt),k(()=>`left: ${ti(r(dt).at)}%`)),()=>(r(dt),k(()=>r(dt).type?`Crossfade · ${r(dt).duration.toFixed(2)}s`:"Drop a transition here"))]),B("dragover",G,Hu(Pi(function(xt){Cl.call(this,e,xt)}))),B("drop",G,xt=>a1(xt,r(dt))),B("click",G,Pi(()=>o1(r(dt)))),A(lt,G)}),K((lt,dt)=>{E=$t(w,1,"timeline-row clip-row svelte-1mvnu54",null,E,lt),pe(w,dt),N=$t(U,1,"track-label svelte-1mvnu54",null,N,{"track-hidden":r(p).metadata?.hidden}),rt(zt,(r(p),k(()=>r(p).metadata?.label??`Legacy Track ${r(p).track}`))),rt(Nt,`${r(p),k(()=>r(p).metadata?.role??"overlay")??""} · ${r(p),k(()=>r(p).clips.length+r(p).elements.length)??""} ${r(p),k(()=>r(p).clips.length+r(p).elements.length===1?"item":"items")??""}`),Q(ae,"data-track",(r(p),k(()=>r(p).track))),pe(ae,(r(p),k(()=>`min-height: ${r(p).laneCount*34+7}px`)))},[()=>({selected:r(p).clips.some(({clip:lt})=>lt.id===r(vt))||r(p).elements.some(({item:lt})=>lt.element.id===r(vt))}),()=>(r(p),k(()=>`min-height: ${r(p).laneCount*34+8}px; order: ${dh(r(p).metadata,String(r(p).track))}`))]),A(f,w)});var z0=b(np,2);{var M0=f=>{var p=cA(),w=g(p);Nl(w,{size:16}),A(f,p)},I0=us(()=>(r(h),r(v),r(Oe),k(()=>r(h).length===0&&r(v).every(f=>f.clips.length===0&&f.elements.length===0)&&!r(Oe))));tt(z0,f=>{r(I0)&&f(M0)})}Xs($n,f=>x(Te,f),()=>r(Te));var rp=b($n,2);Xs(rp,f=>x(yt,f),()=>r(yt));var Tu=b(Rh,2),C0=b(Tu,2);{var $0=f=>{var p=uA(),w=g(p),E=g(w),U=b(g(E),2),N=g(U);Sn(N,{size:20});var W=b(E,2),H=b(W,2);{var Y=et=>{var st=ud(),nt=g(st);K(()=>rt(nt,`⚠️ ${r(X)??""}`)),A(et,st)};tt(H,et=>{r(X)&&et(Y)})}B("click",U,Rf),qi(W,P),A(f,p)};tt(C0,f=>{r(zi)&&f($0)})}var ap=b(ul,2);{var O0=f=>{var p=dA(),w=g(p),E=g(w),U=b(w,4);K(()=>rt(E,r(bi))),B("click",U,Hy),A(f,p)};tt(ap,f=>{r(bi)&&f(O0)})}var N0=b(ap,2);{var F0=f=>{var p=fA(),w=g(p),E=g(w),U=b(g(E),2),N=g(U);Sn(N,{size:18});var W=b(E,4),H=g(W),Y=b(H,2);B("click",U,Qo),B("click",H,Qo),B("click",Y,Nf),B("click",w,Pi(function(et){Cl.call(this,e,et)})),B("keydown",w,et=>et.key==="Enter"&&Nf()),B("click",p,Qo),B("keydown",p,et=>et.key==="Escape"&&Qo()),A(f,p)};tt(N0,f=>{r(Qe)&&f(F0)})}return K((f,p,w,E,U,N)=>{bh=$t(ul,1,"motion-editor svelte-1mvnu54",null,bh,{fullscreen:r(es)}),pe(ul,`--timeline-height: ${r(ri)}px`),xh=$t(yu,1,"workbench svelte-1mvnu54",null,xh,{"chat-open":r(Bs)}),Sh=$t(dl,1,"nav-item svelte-1mvnu54",null,Sh,{active:r(Ae)==="media"}),kh=$t(fl,1,"nav-item svelte-1mvnu54",null,kh,{active:r(Ae)==="audio"}),Eh=$t(hl,1,"nav-item svelte-1mvnu54",null,Eh,{active:r(Ae)==="text"}),Bh=$t(pl,1,"nav-item svelte-1mvnu54",null,Bh,{active:r(Ae)==="effects"}),Uh=$t(vl,1,"nav-item svelte-1mvnu54",null,Uh,{active:r(Ae)==="scenes"}),Th=$t(ml,1,"nav-item svelte-1mvnu54",null,Th,{active:r(Ae)==="ai"}),Ph=$t(bu,1,"nav-item nav-settings svelte-1mvnu54",null,Ph,{active:r(Ae)==="settings"}),zh=$t(xu,1,"chat-drawer svelte-1mvnu54",null,zh,{collapsed:!r(Bs)}),rt(H1,`${r(C)??""} x ${r($)??""}`),rt(G1,`${f??""}%`),pe(Su,r(D)),Q(Cn,"width",r(C)),Q(Cn,"height",r($)),Dh=$t(Cn,1,"preview-canvas svelte-1mvnu54",null,Dh,p),Q(_l,"title",r(Vt)?"Pause (Space)":"Play (Space)"),rt(f0,w),rt(p0,`Frame ${r(I)??""}`),rt(m0,(r(i),r(s),k(()=>r(i)?.id??r(s)?.assetName??"Timeline"))),gl.disabled=(r(Ut),k(()=>r(Ut).past.length===0)),yl.disabled=(r(Ut),k(()=>r(Ut).future.length===0)),bl.disabled=E,Kh=$t(Za,1,"icon-btn svelte-1mvnu54",null,Kh,{active:r(ns)}),Q(Za,"title",r(ns)?"Disable smart snapping":"Enable smart snapping"),rt(B0,`${U??""}%`),Zh=$t($n,1,"timeline-scroll svelte-1mvnu54",null,Zh,{"drop-target":r(Me)!==null||r(Us)}),pe($n,N),Q(xl,"max",r(bt)),Q(xl,"step",(r(z),k(()=>1/(r(z)?.canvas.fps??60)))),le(xl,r(ot)),Q(Tu,"title",r(zi)?"Hide .motion source":"Show .motion source")},[()=>(r(qe),k(()=>Math.round(r(qe)*100))),()=>({dragging:!!r(be)}),()=>(r(ot),k(()=>eu(r(ot)))),()=>(r(s),r(ot),r(i),k(()=>!(r(s)&&r(ot)>r(s).start&&r(ot)<r(s).start+r(s).duration||r(i)&&r(ot)>As(r(i).id).start&&r(ot)<As(r(i).id).end))),()=>(r($i),k(()=>Math.round(r($i)*100))),()=>(r(F),r(ot),k(()=>`--timeline-content-width: ${r(F)}px; --playhead-position: ${ti(r(ot))}%`))]),B("click",dl,()=>x(Ae,"media")),B("click",fl,()=>x(Ae,"audio")),B("click",hl,()=>x(Ae,"text")),B("click",pl,()=>x(Ae,"effects")),B("click",vl,()=>x(Ae,"scenes")),B("click",ml,()=>x(Ae,"ai")),B("click",bu,()=>x(Ae,"settings")),B("click",$h,na),B("click",Nh,Fy),B("pointerdown",Cn,jy),B("pointermove",Cn,Gy),B("pointerup",Cn,Zf),B("pointercancel",Cn,Zf),B("pointerdown",ku,Oy),B("keydown",ku,Ny),B("click",Eu,Lf),B("click",_l,function(...f){(r(Vt)?rs:Df)?.apply(this,f)}),B("change",Bu,Dy),B("click",gl,$f),B("click",yl,Of),B("click",bl,vu),B("click",Za,()=>{x(ns,!r(ns)),x(Bi,null),x(Ue,{vertical:null,horizontal:null})}),B("click",Uu,()=>mu(r($i)/1.25)),B("click",Jh,()=>mu(r($i)*1.25)),B("input",xl,$y),B("dragover",$n,Qy),B("drop",$n,t1),B("dragleave",$n,()=>x(Ki,null)),B("wheel",$n,p1),B("loadedmetadata",rp,()=>x(Mt,r(yt).duration)),B("click",Tu,Rf),A(t,yh),qx(e,"exportMp4",Gf),zn(k1)}var vA=V('<strong class="svelte-18ujb4i"> </strong>'),mA=V('<img class="star-count svelte-18ujb4i" src="https://img.shields.io/github/stars/COPPSARY/Motionly?style=flat&amp;label=" alt="Stars"/>'),_A=V('<div class="app svelte-18ujb4i"><div class="top-bar svelte-18ujb4i"><div class="brand svelte-18ujb4i"><span class="logo-shell svelte-18ujb4i"><img alt="Motionly" class="logo svelte-18ujb4i"/></span> <h1 class="svelte-18ujb4i">Motionly</h1> <a class="product-hunt-badge svelte-18ujb4i" href="https://www.producthunt.com/products/motionly?embed=true&amp;utm_source=badge-featured&amp;utm_medium=badge&amp;utm_campaign=badge-motionly" target="_blank" rel="noopener noreferrer" aria-label="View Motionly on Product Hunt"><img alt="Motionly - Motionly is an AI-native motion graphics editor. | Product Hunt" width="250" height="54" src="https://api.producthunt.com/widgets/embed-image/v1/featured.svg?post_id=1197499&amp;theme=dark&amp;t=1784188075155" class="svelte-18ujb4i"/></a></div> <div class="file-info svelte-18ujb4i"><!> <span class="svelte-18ujb4i"> </span></div> <div class="actions svelte-18ujb4i"><input class="file-input svelte-18ujb4i" type="file" accept=".motion,text/plain"/> <button class="btn svelte-18ujb4i" title="Open .motion file"><!> <span class="action-label svelte-18ujb4i">Open</span></button> <button class="btn btn-primary svelte-18ujb4i" title="Save changes (Ctrl/Cmd+S)"><!> <span class="action-label svelte-18ujb4i">Save</span></button> <button class="btn export-action svelte-18ujb4i" title="Export MP4"><!> <span class="action-label svelte-18ujb4i"> </span></button> <a class="btn welcome-btn svelte-18ujb4i" title="View welcome guide" aria-label="View welcome guide"><!></a> <a class="btn github-btn svelte-18ujb4i" href="https://github.com/COPPSARY/Motionly" target="_blank" rel="noreferrer" title="Star Motionly on GitHub"><img alt="" class="svelte-18ujb4i"/> <!> <span class="action-label svelte-18ujb4i">Star</span> <!></a> <a class="btn docs-btn svelte-18ujb4i" href="https://motionly.mintlify.app/" target="_blank" rel="noreferrer" title="View Documentation" aria-label="View Documentation"><!> <span class="action-label svelte-18ujb4i">Documentation</span></a></div></div> <!></div>');function gA(t,e){An(e,!1);const i=on("logo.svg"),s=on("github.svg"),n=`canvas {
2722
+ size 1920x1080
2723
+ fps 60
2724
+ duration 5s
2725
+ background #020308
2726
+ }
2727
+
2728
+ text title {
2729
+ value "Motion graphics, written."
2730
+ center
2731
+ size 72
2732
+ color #ffffff
2733
+ opacity 1
2734
+ }
2735
+
2736
+ animate title {
2737
+ from {
2738
+ opacity 0
2739
+ y 80
2740
+ blur 10
2741
+ }
2742
+
2743
+ to {
2744
+ opacity 1
2745
+ y 0
2746
+ blur 0
2747
+ }
2748
+
2749
+ duration 1.2s
2750
+ easing power3.out
2751
+ }`;let a=R(n),o=R("untitled.motion"),l=R(),c=R(null),u=!1,d=null,h=Promise.resolve(),v=R(),m=R(!1),y=R(0),_=R(null);Vc(()=>(S(),F(),()=>{d&&clearTimeout(d)}));async function S(){try{let Ct=await fetch("/api/motion-project",{cache:"no-store"});if(Ct.ok&&Ct.headers.get("content-type")?.startsWith("text/plain")){x(a,await Ct.text()),x(o,Ct.headers.get("x-motionly-project-name")||"project.motion"),u=!0;return}}catch(Ct){console.warn(Ct)}x(a,n)}async function T(){const Ct=window.showOpenFilePicker;if(!Ct){r(l).click();return}try{const[yt]=await Ct.call(window,{multiple:!1,types:[{description:"Motionly project",accept:{"text/plain":[".motion"]}}]});if(!yt)return;const de=await yt.getFile();x(a,await de.text()),x(o,de.name),x(c,yt),u=!1}catch(yt){yt.name!=="AbortError"&&console.error(yt)}}async function I(){if(r(c)){await M(r(c),r(a));return}if(u){const Mt=await fetch("/api/motion-project",{method:"PUT",headers:{"content-type":"text/plain;charset=utf-8"},body:r(a)});if(!Mt.ok)throw new Error(`Could not save ${r(o)} (${Mt.status})`);return}const Ct=window.showSaveFilePicker;if(Ct)try{x(c,await Ct.call(window,{suggestedName:r(o).endsWith(".motion")?r(o):`${r(o)}.motion`,types:[{description:"Motionly project",accept:{"text/plain":[".motion"]}}]})),x(o,r(c).name),await M(r(c),r(a));return}catch(Mt){Mt.name!=="AbortError"&&console.error(Mt);return}const yt=new Blob([r(a)],{type:"text/plain;charset=utf-8"}),de=URL.createObjectURL(yt),Oe=document.createElement("a");Oe.href=de,Oe.download=r(o).endsWith(".motion")?r(o):`${r(o)}.motion`,Oe.click(),URL.revokeObjectURL(de)}async function C(Ct){const yt=Ct.currentTarget.files?.[0];yt&&(x(a,await yt.text()),x(o,yt.name),x(c,null),u=!1,De(l,r(l).value=""))}function $(Ct){r(c)&&(d&&clearTimeout(d),d=setTimeout(()=>{const yt=r(c);yt&&(h=h.then(()=>M(yt,Ct)).catch(console.error))},250))}async function M(Ct,yt){const de=await Ct.createWritable();await de.write(yt),await de.close()}async function D(){if(!(!r(v)||r(m))){x(m,!0),x(y,0);try{const Ct=r(o).replace(/\.motion$/i,"")||"motionly";await r(v).exportMp4(`${Ct}.mp4`,yt=>x(y,yt))}finally{x(m,!1)}}}async function F(){try{const Ct=await fetch("https://api.github.com/repos/COPPSARY/Motionly");if(!Ct.ok)return;const yt=await Ct.json();typeof yt.stargazers_count=="number"&&x(_,yt.stargazers_count)}catch{}}function L(Ct){return new Intl.NumberFormat("en",{notation:"compact",maximumFractionDigits:1}).format(Ct)}ce(()=>(r(c),r(a)),()=>{r(c)&&$(r(a))}),kr(),tr();var P=_A(),j=g(P),_t=g(j),ft=g(_t),ct=g(ft),X=b(_t,2),O=g(X);Rp(O,{size:16});var z=b(O,2),Et=g(z),gt=b(X,2),$e=g(gt);Xs($e,Ct=>x(l,Ct),()=>r(l));var Ge=b($e,2),te=g(Ge);d_(te,{size:18});var re=b(Ge,2),ke=g(re);mw(ke,{size:18});var Vt=b(re,2),ot=g(Vt);rw(ot,{size:18});var mi=b(ot,2),bt=g(mi),Ke=b(Vt,2),be=g(Ke);nw(be,{size:18});var Ue=b(Ke,2),ht=g(Ue),Jt=b(ht,2);bw(Jt,{size:14,fill:"currentColor"});var _i=b(Jt,4);{var zi=Ct=>{var yt=vA(),de=g(yt);K(Oe=>rt(de,Oe),[()=>(r(_),k(()=>L(r(_))))]),A(Ct,yt)},vt=Ct=>{var yt=mA();A(Ct,yt)};tt(_i,Ct=>{r(_)!==null?Ct(zi):Ct(vt,-1)})}var qe=b(Ue,2),es=g(qe);Rp(es,{size:18});var ks=b(j,2);Xs(pA(ks,{onSave:I,get code(){return r(a)},set code(Ct){x(a,Ct)},$$legacy:!0}),Ct=>x(v,Ct),()=>r(v)),K((Ct,yt)=>{Q(ct,"src",i),rt(Et,r(o)),Vt.disabled=r(m),rt(bt,Ct),Q(Ke,"href",yt),Q(Ue,"aria-label",r(_)===null?"Star Motionly on GitHub":`Star Motionly on GitHub, ${r(_)} stars`),Q(ht,"src",s)},[()=>(r(m),r(y),k(()=>r(m)?`Exporting ${Math.round(r(y)*100)}%`:"Export MP4")),()=>(Wt(on),k(()=>`${on()}?welcome=1`))]),B("change",$e,C),B("click",Ge,T),B("click",re,I),B("click",Vt,D),A(t,P),zn()}const yA=new URLSearchParams(location.search).get("welcome")==="1",bA=localStorage.getItem(l_)==="true",Ty=Xx(location.pathname,yA,bA,"/");Ty==="editor"&&c_(location.pathname).replace(/\/$/,"")!=="/editor"&&history.replaceState(null,"",on("editor"));J0({mode:"production"});Ex(Ty==="editor"?gA:qw,{target:document.body});
2752
+ //# sourceMappingURL=main-DJBtA-Cr.js.map